Chapter 4 – Requirements Engineering Lecture 1 1Chapter 4 Requirements engineering.
Requirements Engineering
-
Upload
sabbir-ahmmed -
Category
Documents
-
view
432 -
download
2
description
Transcript of Requirements Engineering
Seminar: Requirements Engineering
Model Driven User Requirement Specification using SysML
Sabbir Ahmmed
01/10/12 Sabbir Ahmmed 2
Motivation➔ Increasing Complexity of Systems➔ Proposed approach to RE➔ State of the Art➔ Advantages➔ Challenges➔ Keywords - Requirements Engineering, Model-driven Engineering, SysML, UML
01/10/12 Sabbir Ahmmed 3
Outline➔ Few words about the Paper➔ Citations and Impact➔ Understanding Systems Engineering➔ Brief overview of Real-time Systems➔ Introduction to Model-driven Engineering➔ Role of UML in MDE➔ Introduction to SysML
01/10/12 Sabbir Ahmmed 4
Outline➔ Core of the Paper➔ Case Study➔ Conclusion➔ Questions
01/10/12 Sabbir Ahmmed 5
The Paper➔ “Model Driven User Requirement Specification using SysML”➔ It is an extended version of the paper “ Requirement Specification and Modeling through SysML (ISBN 1-4244-0991-8)”
➔ By: Michel dos Santos Soares and Jos Vrancken➔ Work done at: Next Generation Infrastructures Research Center of TU Delft, Netherlands➔ Appeared in: IEEE International Conference on Systems, Man and Cybernetics in 2007
01/10/12 Sabbir Ahmmed 6
Citations and Impact
➔ Moderate Citation
➔ 23 (37 main paper) citations in Google Scholar
➔ 9 citations in CiteSeerX (Searched with ISBN)
➔ 1,450 results in Google (Searched with ISBN)
01/10/12 Sabbir Ahmmed 7
Systems Engineering➔ “Systems engineering” is an approach and engineering discipline.
➔ Deals with complex systems.
➔ Realized through software and hardware solutions.
➔ Relies on modeling and simulation to evaluate the system.
➔ Modeling is a common practice.
➔ Heterogeneous team.
➔ Example: Avionic Systems
01/10/12 Sabbir Ahmmed 8
Real-time Systems (I)
➔ Subject to a "real-time constraint".
➔ Missing a deadline by milliseconds could be a total system failure.
➔ Often Mission and/or Safety critical.
➔ Normally failure is NOT an option.
➔ Dependable and fault tolerant.
➔ Example: Embedded System.
01/10/12 Sabbir Ahmmed 9
Real-time Systems (II)
➔ System failure? How bad it could be !!
01/10/12 Sabbir Ahmmed 10
Model-driven Engineering
Model has a graphical representation instead of only a textual one. ➔ In MDE models are the main artifact during system development. ➔ MDE addresses system complexity by intense use of models. ➔ MDE is a model-based approach (MBE).
01/10/12 Sabbir Ahmmed 11
Role of UML in MDE
➔ UML is the standard modeling language in software community.➔ A lingua franca in object-oriented analysis and design.➔ Serving it's purpose quite well since it's inception.➔ UML and it's extensions “UML profiles” are the current dominant graphical languages used in model-driven approaches (MDA, MDD, MDE).
➔ Limitations.
01/10/12 Sabbir Ahmmed 12
Introducing SysML (I)
➔Initiated in 2001 by the INCOSE (International Council on Systems Engineering)!!
07/2006 : SysML is officially adopted by the OMG
09/2007 : SysML v1.0
12/2008 : SysML v1.1
06/2010 : SysML v1.2 (current version)
01/10/12 Sabbir Ahmmed 13
Introducing SysML (II)
➔ SysML is based on UML and reuses a subset of UML2 (UML4SysML) ➔ Provides a vocabulary more suitable for systems engineering,➔ Involves modeling blocks instead of modeling classes.➔ A block encompasses software, hardware, data, processes, personnel and facilities.➔ Helps bridge the semantic gap between systems, software and other engineering disciplines.
01/10/12 Sabbir Ahmmed 14
Introducing SysML (III)
➔ SysML 1.2
01/10/12 Sabbir Ahmmed 15
Introducing SysML (IV)
➔ SysML also supports allocation tables.➔ These allocation tables support common kinds of allocations
➔ Requirements allocation,➔ Functional allocation, ➔ and Structural allocation.
➔ SysML defines new types of comments, introducing stereotypes !
01/10/12 Sabbir Ahmmed 16
Core of the Paper (I)
➔ Requirements for a System are a collection of needs expressed by stakeholders respecting some constraints under which the system must operate.
➔ Requirements can be classified in
➔User requirements vs Systems requirements
01/10/12 Sabbir Ahmmed 17
Core of the Paper (II)
➔ The process by which requirements for systems and software
products are gathered, analyzed, documented and managed through
out the development life-cycle is called Requirements Engineering
(RE).
➔ RE can be divided into two main groups of activities.
● Requirements Development
● Requirements Management
01/10/12 Sabbir Ahmmed 18
Core of the Paper (III)
➔ Requirements Documentation
➔Graphic-based➔Use cases ➔Limitations (functional vs non functional)
➔Purely textual➔User stories (XP)➔Limitations ( imprecision, ambiguity,....)
➔Combination of both
01/10/12 Sabbir Ahmmed 19
Core of the Paper (IV)
➔ Proposed approach
01/10/12 Sabbir Ahmmed 20
Core of the Paper (V)
➔ Proposed User Requirements Classification➔Functional➔Non-functional➔External (inputs into and outputs from the system)
01/10/12 Sabbir Ahmmed 21
Core of the Paper (VI)
➔ SysML Requirements Diagram and it's extensions
01/10/12 Sabbir Ahmmed 22
Core of the Paper (VII)
SysML Requirements Relationships SysML Requirements Table➔Hierarchy (copy)➔Derive (deriveReqt)➔Satisfy (satisfy)➔Verify (verify)➔Refine (refine)➔Trace (trace) Grouping Requirements
01/10/12 Sabbir Ahmmed 23
Core of the Paper (VIII)
➔ SysML Use Case Diagrams
➔Derived without important extensions from UML 2.0
➔Main difference is the more wide focus (not only software)
➔Diagrams are composed of
➔Actors
➔Use cases
➔Relationships
➔Communication (used to associate actors and use cases)
➔Generalization (from actor-to-actor/usecase-to-usecases)
➔Include and Extend (mechanism for event encapsulation)
01/10/12 Sabbir Ahmmed 24
Case Study (I)➔ Based on a document with 79 atomic requirements
➔ For a road traffic management system
➔ Requirements are based on a series of interviews and studies with stakeholders
➔Stakeholders were classified as:
➔the Road Users (1),
➔the Ministry of Transport, Public Works and Water Management (2),
➔the Traffic Managers (10),
➔The Traffic Management Center (8),
➔the Task, Scenario and Operator Manager (22),
➔the Operators (4),
➔the Designers of the Operator’s Supporting Functions (15),
➔and the Technical Quality Managers (17)
01/10/12 Sabbir Ahmmed 25
Case Study (II)
01/10/12 Sabbir Ahmmed 26
Case Study (III)
01/10/12 Sabbir Ahmmed 27
Case Study (IV)
01/10/12 Sabbir Ahmmed 28
Case Study (V)
01/10/12 Sabbir Ahmmed 29
Case Study (VI)
01/10/12 Sabbir Ahmmed 30
Conclusion
➔ SysML is a language, not a methodology!
➔ SysML can be easily understood by software community due to it's relation to UML2.
➔ SysML makes it possible to generate specifications in a single language for heterogeneous teams.
➔ Supported by wide range of contributors from industry, tool vendors and government agencies.
➔ Please refer to: http://www.sysml.org/
01/10/12 Sabbir Ahmmed 31
Questions