Team Skill 6, Building the Right System, completes the transition from understanding the problem to implementing the solution system.
Designing and implementing the correct system is hard work. Transitioning from the world of requirements to the world of design requires changing paradigms from the world of natural language, text, and specifications to the world of software architecture and code. To assist the team with this challenge, we've described a specific technique that uses the requirements and use cases to directly drive the implementation architecture and design.
Testing systems of significant complexity is hard work, too. Once again, we've used the use-case workhorse to seed the testing activities, with each use case typically driving multiple test cases, thereby producing at least one test case for each scenario in the use case.
To assure that everything required for your project is present and accounted for, we've introduced traceability techniques that provide mechanisms for following from user needs to features and use cases, and from there into implementation and testing. In addition, these same techniques allow you to ferret out unnecessary or superfluous items that could change the behavior of the system in unanticipated ways.
A critical feature of building the right system is the matter of managing change. Change is a way of life; we can plan for change and manage it. Managing change helps us make sure that the system we built is the right system and, moreover, that it continues to be the right system over time.
And finally, we've confirmed that the purpose of an effective requirements process, all along , was simply to help assure a quality end result, and we've provided guidance and checklists to help your team assess requirements project quality within an iterative framework.