Professional Documents
Culture Documents
Elicitation &
Negotiation
Management Documentation
Validation &
Verification
Requirements Engineering Activities
11
Requirements Documentation
If stakeholders attain consensus, their agreements have to
be refined and described in a requirements document in the
degree of detail and formality that is appropriate for a
project context.
The choice of the appropriate degree of detail and formality
depends on both the identified project risks and the
experience and skills of the expected readers.
Informal descriptions such as user stories, and semi-formal
descriptions such as use cases, are particularly relevant in
Web engineering.
Cont….
13
Requirements Management
Rather than being stable, requirements are subject to frequent changes.
Continuous changes of requirements and constraints are a major
characteristic of Web projects. Methods and tools for requirements
management support both the integration of new requirements and
changes to existing requirements. They also help in evaluating the
impact of changes by managing interdependencies among
requirements, and between requirements and other development
artifacts (traceability). Due to the difficulties of requirements
management for even moderately complex systems, tools are typically
used to support this task.
Specifics In Web Engineering
15
Multidisciplinary
Unavailability of stakeholders
Rapidly changing requirements & constraints
Unpredictable operational environment
Integration of legacy systems
Quality aspects
User interface quality
Content quality
Developer inexperience
Firm delivery dates
Multidisciplinarity
17
Risk Orientation
Risk management is at the heart of the analysis
process.
What are the greatest risks?
Integration issues with legacy systems
Expected vs. actual system quality
Inexperience of developers
How to mitigate risks?
Prototyping (to avoid IKIWISI)
Show changes to customer iteratively
Integrate existing systems sooner than later
Adapting – Requirement Types
31
Quality Requirements
Describe the level of quality of services and
capabilities
6 Types – defined by ISO/IEC standard 9126
Functionality
Reliability
Usability
Efficiency
Maintainability
Portability
Adapting – Requirement Types
33
Contents Requirements
Specify contents of a web application
System Environment Requirements
Describes how a web application is embedded in the
targeted environment
User Interface Requirements
Defines how a web application interacts with different
type of users
Evolution Requirements
Future capabilities or future security requirements etc.
Adapting – Documentation
34
Categories of Notation
Stories – Plain-language scenarios; understandable
to non-technical persons.
Itemized Requirements – Plain-language lists of
requirements
Formatted Requirements – Accurately-defined, but
allow for plain-language descriptions
Ex. Use case scenarios in UML
Formal Specifications – Written in a language that
uses a formally defined syntax and semantics
Adapting – Documentation
35
Requirements Elicitation
EasyWinWin (Briggs & Grunbacher, 2002)
Defines a set of activities of negotiation process
Group facilitation techniques used
Activities are: Review and expand negotiation;
brainstorm stakeholder interests; converge on win
conditions; a common glossary of terms; prioritize
win conditions; reveal issues and constraints;
identify issues, options; and negotiate agreements
Adapting – Tools
37
Requirements Validation
Online feedback (Web surveys)
Requirements Management
Database system – traceability, versioning
Challenges with Stakeholders
38
McConnell (1996)
Users don’t know what they want.
Lack of commitment.
Ever-expanding requirements.
Communication delays.
Users don’t take part in reviews.
Users don’t understand the technology.
Users don’t understand the process.