Requirements Flashcards
Good requirements are (Pressman): (6)
o Clear – one requirement per sentence o Correct o Verifiable – can be tested o Complete o Consistent o Traceable
5 reasons getting good requirements is hard to do:
Don’t know. Can’t communicate. Won’t agree. Fuckin Politics. Everything changes.
3 different types of requirements:
- Business Requirements
- User Requirements
a. Functional: What the user expects the system to do, input and outputs
b. Non Functional: Usability, legal requirements, security - Software Requirements
Process for requirements engineering: (Sommerville 4)
Elicitation: understanding the problem
Validation: all parties have to agree upon problem
Negotiation: and evolution
Specification: representation & documentation describing the problem
Specification Written Documents:
a. Use Templates: IEEE 830 Template or Volere Template
b. User requirements use natural language.
c. System requirements language more structured. May be used in legal contract.
Other types of specification documents:
prototypes(close ended, open ended), formal mathematical model, user scenarios (storyboard).
Elicitation: list 4 things to be aware of:
Stakeholder Diversity
Miscommunication
Use Variety of sources
Use Interviews, Surveys, Prototypes, JAD*
What is JAD?
(Joint Application Development) is a methodology that involves the client or end user in the design and development of an application, through a succession of collaborative workshops called JAD sessions.
Negotiation… over what:
Yourdon Identifies: Must have, Should have, Could have (MoSCoW).
Project management is needed because…
..software development is always subject to budget and schedule constraints.
What is the trade off triangle in project management:
Project scope, time, cost = (trade off triangle
PMBOK =
Project Management Body of Knowledge guide
SWEBOK =
Software Engineering Body Of Knowledge (IEEE version)
Use what when defining project scope?
WBS (Work Breakdown Structure): A tree like map of project by phase or product.
What is the critical path?
The critical path is the path that takes the longest to complete