SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Downloaden Sie, um offline zu lesen
Seminar: Requirements Engineering




  Model Driven User Requirement Specification using SysML


                                          Sabbir Ahmmed
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                        2
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   3
Outline
 ➔   Core of the Paper
 ➔   Case Study
 ➔   Conclusion
 ➔   Questions




01/10/12                 Sabbir Ahmmed   4
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                           5
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
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                        7
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
Real-time Systems (II)

 ➔   System failure? How bad it could be !!




01/10/12                         Sabbir Ahmmed   9
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
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                       11
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
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
Introducing SysML (III)

 ➔   SysML 1.2




01/10/12                  Sabbir Ahmmed    14
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
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                        16
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                      17
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         18
Core of the Paper (IV)

 ➔   Proposed approach




01/10/12                   Sabbir Ahmmed    19
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
Core of the Paper (VI)

 ➔   SysML Requirements Diagram and it's extensions




01/10/12                        Sabbir Ahmmed         21
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                          22
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
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
Case Study (II)




01/10/12        Sabbir Ahmmed   25
Case Study (III)




01/10/12        Sabbir Ahmmed   26
Case Study (IV)




01/10/12        Sabbir Ahmmed   27
Case Study (V)




01/10/12       Sabbir Ahmmed   28
Case Study (VI)




01/10/12        Sabbir Ahmmed   29
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                                      30
Questions




01/10/12     Sabbir Ahmmed   31

Weitere ähnliche Inhalte

Ähnlich wie Requirements Engineering

From use case to software architecture
From use case to software architectureFrom use case to software architecture
From use case to software architectureAhmad karawash
 
apidays London 2023 - Why and how to apply DDD to APIs, Radhouane Jrad, QBE E...
apidays London 2023 - Why and how to apply DDD to APIs, Radhouane Jrad, QBE E...apidays London 2023 - Why and how to apply DDD to APIs, Radhouane Jrad, QBE E...
apidays London 2023 - Why and how to apply DDD to APIs, Radhouane Jrad, QBE E...apidays
 
Software engineering principles in system software design
Software engineering principles in system software designSoftware engineering principles in system software design
Software engineering principles in system software designTech_MX
 
Victor Chang: Cloud computing business framework
Victor Chang: Cloud computing business frameworkVictor Chang: Cloud computing business framework
Victor Chang: Cloud computing business frameworkCBOD ANR project U-PSUD
 
Software Archaeology
Software ArchaeologySoftware Archaeology
Software ArchaeologyChris Bailey
 
Domain Modelling
Domain ModellingDomain Modelling
Domain Modellingkim.mens
 
The Impact of Cloud Computing on Predictive Analytics 7-29-09 v5
The Impact of Cloud Computing on Predictive Analytics 7-29-09 v5The Impact of Cloud Computing on Predictive Analytics 7-29-09 v5
The Impact of Cloud Computing on Predictive Analytics 7-29-09 v5Robert Grossman
 
[Sirius Day Eindhoven 2018] ASML's MDE Going Sirius
[Sirius Day Eindhoven 2018]  ASML's MDE Going Sirius[Sirius Day Eindhoven 2018]  ASML's MDE Going Sirius
[Sirius Day Eindhoven 2018] ASML's MDE Going SiriusObeo
 
MDD and modeling tools research
MDD and modeling tools researchMDD and modeling tools research
MDD and modeling tools researchRoger Xia
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models MohsinAli773
 
Simulation
SimulationSimulation
Simulationmarzia
 
CloudExpo NYC - Citrix Cloud Platforms Best Practices for Architecting Your C...
CloudExpo NYC - Citrix Cloud Platforms Best Practices for Architecting Your C...CloudExpo NYC - Citrix Cloud Platforms Best Practices for Architecting Your C...
CloudExpo NYC - Citrix Cloud Platforms Best Practices for Architecting Your C...mormullins
 
Introduction to the Asset Description Metadata Schema Application Profile (AD...
Introduction to the Asset Description Metadata Schema Application Profile (AD...Introduction to the Asset Description Metadata Schema Application Profile (AD...
Introduction to the Asset Description Metadata Schema Application Profile (AD...European Commission
 
Model driven architecture
Model driven architectureModel driven architecture
Model driven architectureBiruk Mamo
 
Scenario based methods
Scenario based methodsScenario based methods
Scenario based methodsJoshuaU1
 
Survey on cloud simulator
Survey on cloud simulatorSurvey on cloud simulator
Survey on cloud simulatorHabibur Rahman
 

Ähnlich wie Requirements Engineering (20)

From use case to software architecture
From use case to software architectureFrom use case to software architecture
From use case to software architecture
 
apidays London 2023 - Why and how to apply DDD to APIs, Radhouane Jrad, QBE E...
apidays London 2023 - Why and how to apply DDD to APIs, Radhouane Jrad, QBE E...apidays London 2023 - Why and how to apply DDD to APIs, Radhouane Jrad, QBE E...
apidays London 2023 - Why and how to apply DDD to APIs, Radhouane Jrad, QBE E...
 
Software engineering principles in system software design
Software engineering principles in system software designSoftware engineering principles in system software design
Software engineering principles in system software design
 
From SADT to SysML
From SADT to SysMLFrom SADT to SysML
From SADT to SysML
 
Victor Chang: Cloud computing business framework
Victor Chang: Cloud computing business frameworkVictor Chang: Cloud computing business framework
Victor Chang: Cloud computing business framework
 
Software Archaeology
Software ArchaeologySoftware Archaeology
Software Archaeology
 
Domain Modelling
Domain ModellingDomain Modelling
Domain Modelling
 
The Impact of Cloud Computing on Predictive Analytics 7-29-09 v5
The Impact of Cloud Computing on Predictive Analytics 7-29-09 v5The Impact of Cloud Computing on Predictive Analytics 7-29-09 v5
The Impact of Cloud Computing on Predictive Analytics 7-29-09 v5
 
[Sirius Day Eindhoven 2018] ASML's MDE Going Sirius
[Sirius Day Eindhoven 2018]  ASML's MDE Going Sirius[Sirius Day Eindhoven 2018]  ASML's MDE Going Sirius
[Sirius Day Eindhoven 2018] ASML's MDE Going Sirius
 
Archimate Overview
Archimate OverviewArchimate Overview
Archimate Overview
 
MDD and modeling tools research
MDD and modeling tools researchMDD and modeling tools research
MDD and modeling tools research
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models
 
Simulation
SimulationSimulation
Simulation
 
CloudExpo NYC - Citrix Cloud Platforms Best Practices for Architecting Your C...
CloudExpo NYC - Citrix Cloud Platforms Best Practices for Architecting Your C...CloudExpo NYC - Citrix Cloud Platforms Best Practices for Architecting Your C...
CloudExpo NYC - Citrix Cloud Platforms Best Practices for Architecting Your C...
 
Introduction to the Asset Description Metadata Schema Application Profile (AD...
Introduction to the Asset Description Metadata Schema Application Profile (AD...Introduction to the Asset Description Metadata Schema Application Profile (AD...
Introduction to the Asset Description Metadata Schema Application Profile (AD...
 
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
 
Requirements engineering in agile
Requirements engineering in agileRequirements engineering in agile
Requirements engineering in agile
 
Model driven architecture
Model driven architectureModel driven architecture
Model driven architecture
 
Scenario based methods
Scenario based methodsScenario based methods
Scenario based methods
 
Survey on cloud simulator
Survey on cloud simulatorSurvey on cloud simulator
Survey on cloud simulator
 

Requirements Engineering

  • 1. Seminar: Requirements Engineering Model Driven User Requirement Specification using SysML 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 2
  • 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 3
  • 4. Outline ➔ Core of the Paper ➔ Case Study ➔ Conclusion ➔ Questions 01/10/12 Sabbir Ahmmed 4
  • 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 5
  • 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. 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 7
  • 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. Real-time Systems (II) ➔ System failure? How bad it could be !! 01/10/12 Sabbir Ahmmed 9
  • 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. 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 11
  • 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. 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. Introducing SysML (III) ➔ SysML 1.2 01/10/12 Sabbir Ahmmed 14
  • 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. 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 16
  • 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 17
  • 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 18
  • 19. Core of the Paper (IV) ➔ Proposed approach 01/10/12 Sabbir Ahmmed 19
  • 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. Core of the Paper (VI) ➔ SysML Requirements Diagram and it's extensions 01/10/12 Sabbir Ahmmed 21
  • 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 22
  • 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. 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. Case Study (II) 01/10/12 Sabbir Ahmmed 25
  • 26. Case Study (III) 01/10/12 Sabbir Ahmmed 26
  • 27. Case Study (IV) 01/10/12 Sabbir Ahmmed 27
  • 28. Case Study (V) 01/10/12 Sabbir Ahmmed 28
  • 29. Case Study (VI) 01/10/12 Sabbir Ahmmed 29
  • 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 30
  • 31. Questions 01/10/12 Sabbir Ahmmed 31