Build Your Career: Tutorials   



Requirements Engineering Primer

Christof Ebert, Vector Consulting Services
Total pages: 46
$29.00










Introduction


Requirements engineering (RE) is the disciplined and systematic approach to elicit, structure, specify, verify, analyze, evolve, and control requirements while considering user, technical, economic, and business-oriented needs and objectives. A requirement is a condition or capability needed by a user to solve a problem or achieve an objective or a condition or capability that must be met or possessed by a system or system component to satisfy a contract, standard, specification, or other formally imposed document. In simple terms, it's a requested need not yet implemented.

Different types of requirements are distinguished, following a refinement from external perspective to concrete product requirements — namely customer, business, or solution requirements; product, system, or marketing requirements; and component requirements. Requirements are parts of contracts, orders, project plans, test strategies, and so on. They serve as a base for defining, estimating, planning, executing, and monitoring projects. RE ensures that requirements are systematically developed and managed throughout the life cycle of a product or service from its inception until the end of its life.

Here, I've collected five articles that will introduce you to RE and its major steps, such as elicitation, specification, analysis, verification, and requirements management. Ian Sommerville's tutorial "Integrated Requirements Engineering" offers a concise introductory tutorial to RE concepts and how they relate to each other and to other software engineering disciplines. "Requirements Engineering as a Success Factor in Software Projects" from Hubert F. Hofmann and colleagues provides a study from different companies on lessons learned and best practices of RE and how they contribute to project success. Jonathan Lee and colleagues offer an early summary on requirements elicitation and specification with use cases and specific focus on covering methodology and experiences. "Requirements BEFORE the Requirements: Understanding the Upstream Impact" looks to the very early phases of RE and how they can be implemented most effectively to elicit requirements and define strategy. Finally, Brian Lawrence and colleagues' classic introductory article "Top Risks of Requirements Engineering" offers an insightful yet brief summary on major risks of RE and how they can be effectively handled in industry projects.

Keywords: software design, requirements elicitation, requirements engineering, upstream impact, software projects, integrated RE,



Table of Contents


Integrated Requirements Engineering: A Tutorial

Ian Sommerville, Lancaster University

Summary: This tutorial introduces the fundamental activities of requirements engineering and discusses recent developments that integrate it and system implementation.


Requirements Engineering as a Success Factor in Software Projects

Hubert F. Hofmann, General Motors
Franz Lehner, University of Regensburg

Summary: Based on their field study of 15 requirements engineering teams, the authors identify the RE practices that clearly contribute to project success, particularly in terms of team knowledge, resource allocation, and process.


Analyzing User Requirements by Use Cases: A Goal-Driven Approach

Jonathan Lee and Nien-Lin Xue, National Central University

Summary: Because there is no systematic way in existing use-case approaches to handle nonfunctional requirements, the authors propose an approach to analyze and evaluate use cases with goals and to structure use-case models.


Requirements BEFORE the Requirements: Understanding the Upstream Impact

Christof Ebert, Alcatel

Summary: While requirements engineering plays a key roll in selecting and managing requirements for a given project, the "upstream process" before the project start often remains vague. Only by integrating upstream ("roadmap") and downstream (project) requirements will projects be successful.


The Top Risks of Requirements Engineering

Brian Lawrence, Coyote Valley Software
Karl Wiegers, Process Impact
Christof Ebert, Alcatel

Summary: If a set of requirements, however expressed, doesn't accurately represent users' needs, it can lead a development team down the wrong path. So how are we led astray? The risk is greatest at several points.


Recommended Resources

 

Advertisement




Suggestions