Component Specifications
(due Sunday night, as individual Canvas assignments submission)
- P3A.1 Phase 3 Plan (per person)
- Which component(s) will you design?
- What is your plan for negotiating its interface specifications with
the other members of your team?
- What problems to you expect to be most difficult, and what will
you need (beyond time) to address them?
- When will you have your first draft specifications, design, and
test plans available for review?
- Who will review your specifications, design, and test plan? When?
- P3A.2 Component Specifications (per person)
- Do you know what language your component(s) will be implemented in,
and have you settled on appropriate interface definition languages
(e.g. JavaDoc, PyDoc, Doxygen)?
- Can you, today, enumerate (w/o complete interface specifications),
all of your public entry points?
- Which of your public interfaces are obvious, and which need to be discussed?
- Can you, today, enumerate (w/o complete interface specifications),
all of the requests you will need to make from other components
and external services?
- Do you understand (and have you already written code that uses) all
of the external services you require?
- Have you started negotiating interfaces with the other components
you have to call? If so, do you have any concerns about their
adequacy?
- Given the above, do you see any other problems associated with writing
detailed interface specifications for all of your public methods?
- P3B Moving Forward
- Do you already understand (at a high level) how you plan to implement
each of your public methods?
- Do those implementations have sufficient observability and
controlability to give you confidence that you will be able
to thoroughly test them?
- Is it clear to you how you will use what testing framework to perform
that testing?