Requirements Engineering - Basics in a nutshell

3,620 views

Published on

Lara Saitz, Head of Business Engineering and Process Management at axxessio presents the basics of requirements engineering in a nutshell

Published in: Business, Technology
  • Be the first to comment

Requirements Engineering - Basics in a nutshell

  1. 1. Requirements Engineering Basics – in a nutshell JANUARY 2014 LARA SAITZ
  2. 2. Requirements Engineering in a Nutshell - Summary Summary Requirements Engineering has been gaining in importance over the past couple years. Clearly specified and documented requirements are one of the key factors for successful projects. Not only do they provide a common understanding of the project scope, but a solid basis for development, quality management and testing. The following presentation will explain the requirement engineering basics and deliver a brief overview of the main tasks of a requirements engineer. In addition key techniques for requirements engineering are listed. 2
  3. 3. Requirements Engineering in a Nutshell - Basics Definition of Requirements Engineering Requirements engineering is a systematic and disciplined approach to the specification and management of requirements. Its main goals are: » Knowing the relevant requirements and achieving consensus among the stakeholders about these » Understanding and documenting the stakeholder‘s needs and desires » Specifying and managing requirements in order to reduce the risk of not meeting the stakeholder‘s needs and desires 3
  4. 4. Requirements Engineering in a Nutshell - Basics Definition of Requirement Requirements are defined as: » A need or desire perceived by a stakeholder » A capability or property that a system should have » A documented representation of a need, property or capability There are two different kinds of requirements: » functional » Functional requirements describe system characteristics » non-functional (also quality requirements or constraints) » Non-functional requirements describe quality, usability, performance and safety characteristics 4
  5. 5. Requirements Engineering in a Nutshell – RE Role Requirements Engineering as a Role Stakeholder communicates wishes and desires, validates documented requirements RE delivers documented and validated requirements, communicates customer Reqs to development Development checks technical feasibility, gives feedback on implementation RE delivers documented requirements, communicates technical issues to stakeholders The role of a requirements engineer can be described as an interface between the stakeholders and the development. 5
  6. 6. Requirements Engineering in a Nutshell – RE Tasks Requirements Elicitation During the phase „requirements elicitation“ the requirements engineer needs to identify possible requirement sources and choose the correct techniques in order to collect requirements. Requirement sources can be: » Stakeholders » Existing documents » Current systems Basic elicitation techniques are: » » » » » Workshops Interviews Brainstorming System Archeology Field Observation 6
  7. 7. Requirements Engineering in a Nutshell – RE Tasks Requirements Documentation In the phase „requirements documentation“ the requirements engineer documents all relevant information. This documentation can range from prose to diagrams with formal semantics. As the requirement documentation is the foundation for further communication between all parties involved in the project it is crucial to select the correct documentation technique for each project. These can be: » Requirements Catalogue » User Stories » Scope Document » Processes » UML Models 7
  8. 8. Requirements Engineering in a Nutshell – RE Tasks Requirements Validation In this phase the requirements engineer‘s goal is to validate the elicited and documented requirements. It is necessary to detect possible errors in the documentation as soon as possible, as they are the basis for development activities. Next to choosing the correct technique it is crucial to involve all relevant stakeholders in the validation process. Techniques for requirements validation are: » Inspections » General Reviews » Peer-Reviews » Walkthroughs » Proof of Concept (Prototyping) 8
  9. 9. Requirements Engineering in a Nutshell - Req Management Requirements Management Requirements management is an ongoing task over the entire software lifecycle. It involves: » Assuring the traceability of requirements. In the requirements management the traceability information is recorded, organized and maintained. This activity can be supported by giving each requirement a unique identifier. » Prioritizing requirements. This assures that the correct requirements are implemented at the right time. » Managing Requirements Changes. Over time requirements can change and even be rendered unnecessary. It is important to manage these changes systematically. 9
  10. 10. For further information on Requirements Engineering, feel free to contact us! Our Locations Headquarter Bonn Subsidiary Cologne Subsidiary Darmstadt Subsidiary Berne Kurfürstenallee 5 53177 Bonn Tel +49 228 – 76 36 31 0 Fax +49 228 –76 36 31 3 Wilhelmstraße 3 51143 Cologne Tel +49 22 03 – 91 22 0 Fax +49 22 03 – 91 22 23 Kasinostraße 60 64293 Darmstadt Tel +49 61 51 – 78 90 0 Fax +49 61 51 – 78 90 23 0 Frohbergweg 7 3012 Berne Tel +41 31 – 534 07 06 Fax +41 31 – 536 69 78

×