Wiley.com
Print this page Share
Textbook

Requirements Engineering: From System Goals to UML Models to Software Specifications

February 2009, ©2009
Requirements Engineering: From System Goals to UML Models to Software Specifications (EHEP000863) cover image

Description

The book presents both the current state of the art in requirements engineering and a systematic method for engineering high-quality requirements, broken down into four parts.  The first part introduces fundamental concepts and principles including the aim and scope of requirements engineering, the products and processes involved, requirements qualities to aim at and flaws to avoid, and the critical role of requirements engineering in system and software engineering.

The second part of the book is devoted to system modeling in the specific context of engineering requirements. It presents a multi-view modeling framework that integrates complementary techniques for modeling the system-as-is and the system-to-be. The third part of the book reviews goal-based reasoning techniques to support the various steps of the KAOS method. The fourth part of the book goes beyond requirements engineering to discuss the mapping from goal-oriented requirements to software specifications and to software architecture.

Online software will accompany the book and will add value to both classroom and self-study by enabling students to build models and specifications involved in the book’s exercises and case studies, helping them to discover the latest RE technology solutions. Instructor resources such as slides, figures and handouts are available from an accompanying website.

See More

Table of Contents

Foreword.

Preface.

Part I: Fundamentals of Requirements Engineering.

1. Setting the Scene.

1.1 What is requirements engineering?

1.2 Why engineer requirements?

1.3 Obstacles to good requirements engineering practice.

1.4 Agile development processes and requirements engineering.

Summary.

Notes and Further Reading.

Exercises.

2. Domain Analysis and Requirements Elicitation.

2.1 Identifying stakeholders and interacting with them.

2.2 Artefact-driven elicitation techniques.

2.3 Stakeholder-driven elicitation techniques.

2.4 Conclusion.

Summary.

Notes and Further Reading.

Exercises.

3. Requirements Evaluation.

3.1 Inconsistency management.

3.2 Risk analysis.

3.3 Evaluating alternative options for decision making.

3.4 Requirements prioritization.

3.5 Conclusion.

Summary.

Notes and Further Reading.

Exercises.

4. Requirements Specification and Documentation.

4.1 Free documentation in unrestricted natural language.

4.2 Disciplined documentation in structured natural language.

4.3 Use of diagrammatic notations.

4.4 Formal specification.

4.5 Conclusion.

Summary.

Notes and Further Reading.

Exercises.

5. Requirements Quality Assurance.

5.1 Requirements inspections and reviews.

5.2 Queries on a requirement database.

5.3 Requirements validation by specification animation.

5.4 Requirements verification through formal checks.

5.5 Conclusion.

Summary.

Notes and Further Reading.

Exercises.

6. Requirements Evolution.

6.1 The time-space dimensions of evolution: Revisions and variants.

6.2 Change anticipation.

6.3 Traceability management for evolution support.

6.4 Change control.

6.5 Runtime monitoring of requirements and assumptions for dynamic change.

6.6 Conclusion.

Summary.

Notes and Further Reading.

Exercises.

7. Goal-Orientation in Requirements Engineering.

7.1 What are goals?

7.2 The granularity of goals and their relationship to requirements and assumptions.

7.3 Goal types and categories.

7.4 The central role of goals in the requirements engineering process.

7.5 Where are goals coming from?

7.6 The relationship of goals to other requirements-related products and processes.

Summary.

Notes and Further Reading.

Exercises.

Part II: Building System Models for Requirements Engineering.

8. Moddeling System Objectives with Goal Diagrams.

8.1 Goal features as model annotations.

8.2 Goal refinement.

8.3 Representing conflicts among goals.

8.4 Connecting the goal model with other system views.

8.5 Modelling alternative options.

8.6 Goal diagrams as AND/OR graphs.

8.7 Documenting goal refinements and assignments with annotations.

8.8 Building goal models: Heuristic rules and reusable patterns.

Summary.

Notes and Further Reading.

Exercises.

9. Anticipating What Could Go Wrong: Risk Analysis on Goal Models.

9.1 Goal obstruction by obstacles.

9.2 Modelling obstacles.

9.3 Obstacle analysis for a more robust goal model.

Summary.

Notes and Further Reading.

Exercises.

10. Moddeling Conceptual Objects with Class Diagrams.

10.1 Representing domain concepts by conceptual objects.

10.2 Entities.

10.3 Associations.

10.4 Attributes.

10.5 Built-in associations for structuring object models.

10.6 More on class diagrams.

10.7 Heuristic rules for building object models.

Summary.

Notes and Further Reading.

Exercises.

11. Moddeling System Agents and Responsibilities.

11.1 What are agents?

11.2 Characterizing system agents.

11.3 Representing agent models.

11.4 Refinement of abstract agents.

11.5 Building agent models.

Summary..

Notes and Further Reading.

Exercises.

12. Moddeling System Operations.

12.1 What are operations?

12.2 Characterizing system operations.

12.3 Goal operationalization.

12.4 Goals, agents, objects and operations: The Sematic picture.

12.5 Representing operation models.

12.6 Building operation models.

Summary.

Notes and Further Reading.

Exercises.

13. Moddeling System Behaviors.

13.1 Modelling instance behaviours.

13.2 Modelling class behaviours.

13.3 Building behaviour models.

Summary.

Notes and Further Reading.

Exercises.

14. Integrating Multiple System Views.

14.1 A meta-model for view integration.

14.2 Inter-view consistency rules.

14.3 Grouping related view fragments into packages.

Summary.

Notes and Further Reading.

Exercises.

15. A Goal-Oriented Model Building Method in Action.

15.1 Modelling the system-as-is.

15.2 Modelling the system-to-be.

15.3 Handling model variants for product lines.

Summary.

Notes and Further Reading.

Exercises.

Part III: Reasoning About System Models.

16. Semi-Formal Reasoning for Model Analysis and Exploitation.

16.1 Query-based analysis of the model database.

16.2 Semi-formal analysis of goal-oriented models.

16.3 Reasoning about alternative options.

16.4 Model-driven generation of the requirements document.

16.5 Beyond RE: From goal-oriented requirements to software architecture.

Summary.

Notes and Further Reading.

Exercises.

17. Formal Specification of System Models.

17.1 A real-time temporal logic for specifying model annotations.

17.2 Specifying goals in the goal model.

17.3 Specifying descriptive properties in the object model.

17.4 Specifying operationalizations in the operation model.

17.5 Back to the system’s semantic picture.

Summary.

Notes and Further reading.

Exercises.

18. Formal Reasoning for Specification Construction and Analysis.

18.1 Checking goal refinements.

18.2 Deriving goal operationalizations.

18.3 Generating obstacles for risk analysis.

18.4 Generating anti-goals for security analysis.

18.5 Formal conflict analysis.

18.6 Synthesizing behaviour models for animation and model checking.

Summary.

Notes and Further Reading.

Exercise.

Bibliography.

Index..

Bibliography.

Requirements Document Generated from a Goal-Oriented Model.

Index.

See More

Author Information

Axel van Lamsweerde is Professor in the Department of Computing Science at the Université catholique de Louvain (UCL), Belgium. He recently received the ACM SIGSOFT Outstanding Research Award for "deep and lasting contributions to the theory and practice of requirements engineering".
See More

The Wiley Advantage

  • Fresh and unique technical approach
  • Authors work is pre-eminent in the field
  • Based on broadly applied KAOS method
  • Online resources to accompany the book will include: a limited version of the Objectiver tool, plus model fragments from the book to play with – enabling students to build models and specifications contained within the book. There will also be instructor resources available.
See More

Professor Reviews

An excellent book with plenty of information and examples on the topic.
Georgia Cosma, PA College, Larnaca
See More
Instructors Resources
Wiley Instructor Companion Site
Contact your Wiley Representative
Find Your Rep
See More
See Less
Purchase Options
Wiley E-Text   
Requirements Engineering: From System Goals to UML Models to Software Specifications
ISBN : 978EUDTE00270
712 pages
September 2010, ©2010
$46.50   BUY

Paperback   
Requirements Engineering: From System Goals to UML Models to Software Specifications
ISBN : 978-0-470-01270-3
712 pages
February 2009, ©2009
$62.95   BUY

Back to Top