Introduction to Objects from a C++ Perspective
Analysis and design
Phase 3: Build the core
This
is the initial conversion from the rough design into a compiling and
executing body of code that can be tested, and especially that will
prove or disprove your architecture. This is not a one-pass process, but
rather the beginning of a series of steps that will iteratively build
the system, as you'll see in phase 4.
Your
goal is to find the core of your system architecture that needs to be
implemented in order to generate a running system, no matter how
incomplete that system is in this initial pass. You're creating a
framework that you can build upon with further iterations. You're also
performing the first of many system integrations and tests, and giving
the stakeholders feedback about what their system will look like and how
it is progressing. Ideally, you are also exposing some of the critical
risks. You'll probably also discover changes and improvements that can
be made to your original architecture – things you would not have
learned without implementing the system.
Part of building the system is the reality check that you get from testing against your requirements analysis and system specification (in whatever form they exist). Make sure that your tests verify the requirements and use cases. When the core of the system is stable, you're ready to move on and add more functionality.