Requirements Engineering

809 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
809
On SlideShare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
21
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Requirements Engineering

  1. 1. Seminar: Requirements Engineering Model Driven User Requirement Specification using SysML Sabbir Ahmmed
  2. 2. Motivation ➔ Increasing Complexity of Systems ➔ Proposed approach to RE ➔ State of the Art ➔ Advantages ➔ Challenges ➔ Keywords - Requirements Engineering, Model-driven Engineering, SysML, UML01/10/12 Sabbir Ahmmed 2
  3. 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 SysML01/10/12 Sabbir Ahmmed 3
  4. 4. Outline ➔ Core of the Paper ➔ Case Study ➔ Conclusion ➔ Questions01/10/12 Sabbir Ahmmed 4
  5. 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 200701/10/12 Sabbir Ahmmed 5
  6. 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 6
  7. 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 Systems01/10/12 Sabbir Ahmmed 7
  8. 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 8
  9. 9. Real-time Systems (II) ➔ System failure? How bad it could be !!01/10/12 Sabbir Ahmmed 9
  10. 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 10
  11. 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 its purpose quite well since its inception. ➔ UML and its extensions “UML profiles” are the current dominant graphical languages used in model-driven approaches (MDA, MDD, MDE). ➔ Limitations.01/10/12 Sabbir Ahmmed 11
  12. 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 12
  13. 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 13
  14. 14. Introducing SysML (III) ➔ SysML 1.201/10/12 Sabbir Ahmmed 14
  15. 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 15
  16. 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 requirements01/10/12 Sabbir Ahmmed 16
  17. 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 Management01/10/12 Sabbir Ahmmed 17
  18. 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 both01/10/12 Sabbir Ahmmed 18
  19. 19. Core of the Paper (IV) ➔ Proposed approach01/10/12 Sabbir Ahmmed 19
  20. 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 20
  21. 21. Core of the Paper (VI) ➔ SysML Requirements Diagram and its extensions01/10/12 Sabbir Ahmmed 21
  22. 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 Requirements01/10/12 Sabbir Ahmmed 22
  23. 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 23
  24. 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 24
  25. 25. Case Study (II)01/10/12 Sabbir Ahmmed 25
  26. 26. Case Study (III)01/10/12 Sabbir Ahmmed 26
  27. 27. Case Study (IV)01/10/12 Sabbir Ahmmed 27
  28. 28. Case Study (V)01/10/12 Sabbir Ahmmed 28
  29. 29. Case Study (VI)01/10/12 Sabbir Ahmmed 29
  30. 30. Conclusion ➔ SysML is a language, not a methodology! ➔ SysML can be easily understood by software community due to its 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 30
  31. 31. Questions01/10/12 Sabbir Ahmmed 31

×