|
|
|
Requirement specifications must be developed in the business context. ideally a specification is based on the business owners view of the business as described by the business architecture. Often this is not possible or practical. It is however, essential that the system specification be developed inside a framework that ties back to the business. A significant percentage of all software development projects are eventually deemed failures because of the inability to recognize this fact. Indeed one classification between project managers is that some believe that a project is a technical problem and judge success on the ability to deliver a final operating product on budget, and on schedule with some agreed level of functionality. Other project managers understand that it is not about the project, it is about solving a business problem. John Zachman says "the system is the business". In the former case the business will find out what it does when the system is delivered, in the later, they know as it is defined. Implicitly many modeling approaches aimed at defining requirements fail because they fundamentally "assume the business", advertising themselves as "the" solution to requirements but addressing only the software (Zachman Row 3) part of the problem. Outline Requirements Specification In developing the requirements and doing analysis there are three schools. In the traditional schools, these are process driven and data driven. The other, more recent school is the object oriented school. Process and object oriented schools, while very powerful begin by assuming that the business understands itself, is rational and internally consistent; that there is no dissonance within the four walls of the operation. Because of this it is usually necessary to be "data driven", at least for a time until the semantics are resolved. If however the approach is object based is is usually necessary not only to go through the "data", but to understand the business classes, their responsibilities and how they all collaborate before tackling use cases and other fundamental deliverables.
Course: Defining and Managing Requirements
|
Copyright © Neil Kemp and Associates Ltd
|