Professional Documents
Culture Documents
& Modeling
201980090170
1. Complete
2. Correct
3. Feasible
4. Necessary
Complete: Each requirement must contain all the information necessary for
the reader to understand it. In the case of functional requirements, this means
providing the information the developer needs to be able to implement it correctly.
If you know you’re lacking certain information, use TBD (to be determined) as a
standard flag to highlight these gaps, or log them in an issue-tracking system to
follow up on later. Resolve all TBDs in each portion of the requirements before the
developers proceed with construction of that portion.
Correct: Each requirement must accurately describe a capability that will meet
some stakeholder’s need and must clearly describe the functionality to be built.
You’ll have to go to the source of the requirement to check its correctness. This
might be a user who supplied the initial requirement, a higher-level system
requirement, a use case, a business rule, or another document. A low-level
requirement that conflicts with its parent is not correct. To assess the correctness of
user requirements, user representatives or their close surrogates should review
them.
2.2
For example, the client says: “I need an online store with a catalog of
products, an order form, a shopping cart, the ability to pay online,
information about the company, and contacts section”, while presenting an
image that has been formed in his or her mind. At the same time, the
developer can see the project 100% differently than the way the client sees
it. An SRS document helps develop a common vision of the project.
5. Requirment Modeling
Visual requirements models can help you identify missing, extraneous, and
inconsistent requirements. Given the limitations of human short-term
memory, analyzing a list of one thousand requirements for inconsistencies,
duplication, and extraneous requirements is nearly impossible. By the time
you reach the fifteenth requirement, you have likely forgotten the first few
that you read. You’re unlikely to find all of the errors simply by reviewing
the textual requirements. Visual requirements models described in this
book include:
■ Data flow diagrams (DFDs)
■ Process flow diagrams such as swimlane diagrams
■ State-transition diagrams (STDs) and state tables
■ Dialog maps
■ Decision tables and decision trees
■ Event-response tables
■ Feature trees (discussed in Chapter 5, “Establishing the business
requirements”)
■ Use case diagrams (discussed in Chapter 8, “Understanding user
requirements”)
■ Activity diagrams (also discussed in Chapter 8)
■ Entity-relationship diagrams (ERDs) (discussed in Chapter 13, “Specifying
data requirements”)
4.2