Tracing Requirements
with the Eclipse Requirements Modeling Framework




Michael Jastram
Formal Mind GmbH / University of Düsseldorf
J11.2
AGENDA

> Requirements & Tools Today
> Requirements Modeling Framework (RMF)
> Demo of ProR (GUI)
> Traceability
> Demo of Rodin Integration (Modeling)
> Outlook




                                          2
Is RMF for you?

          If …
                  … you consider requirements important
                  … you do Eclipse-based systems engineering
                  … Word, Excel, Wiki just doesn't cut it for requirements
                  … you are looking for an open, extensible requirements tool

          … then RMF may be what you were looking for
                                             the
                                   new  s via og
                               RMF l Minds bl
                                    a
                               Form wsletter:
                                      e
                                and n         d.co
                                                   m/
                                                in
                                            malm       ions
                                 http ://for subscript
                                              /
                                        letter
                                 news




Image: FreeDigitalPhotos.net                                                    3
Michael Jastram

> Cofounder Formal Mind GmbH
  Science for Systems Engineering

> Completing PhD program (University of Düsseldorf)
  Focus on Requirements / Formal Models

> Project Lead / Cofounder
  Eclipse Requirements Modeling Framework

> Chairman / Founder
  rheinjug (Java User Group Düsseldorf)




                                                      4
Requirements
Requirements and Requirements Tools Today
Why Requirements?




Image: dilbert.com   6
What are Requirements?

> “A condition or capability needed by a
  user to solve a problem or achieve an
  objective (...)”
                                     (IEEE)



> Requirements answer: What?


> Specification answers: How?




                                              7
A Few Approaches and Tooling
                                                            Light
              Heavy

             V-Modell XT       RUP/OpenUP   Scrum & Co    Ad Hoc


             Specialized        Text and    Web-based    Anything
             Tool chains         UML




Image: FreeDigitalPhotos.net                                        9
Requirements in different Fields

    > Requirements for Software (Web, Desktop, etc.)
      – Small number
      – Complement Models

    > Requirements for Embedded Systems
      – Large Number
      – Part of Contracts




Image: FreeDigitalPhotos.net                           10
Features of Requirements Tools

    > Like:
      – DOORS
      – Integrity
      – IRQA

    > Features
      – Requirements Text + Attributes
      – Various Attribute Types
         (Rich Text, Enumerations, OLE, etc.)
      – Hierarchical Document Structure
      – Traceability between Requirements
      – Versioning / Baselining

    > Analysis
Image: FreeDigitalPhotos.net                    11
RMF
The Eclipse Requirements Modeling Framework
RMF Overview


    > Framework for working with textual requirements

    > Based on ReqIF (Requirements Interchange Format)

    > Components: GUI (                    ) and Core

    > Extensible (Eclipse plug-ins / EMF)

    > Roots in academia

    > Designed for industry




Image: ddpavumba / FreeDigitalPhotos.net                 13
RMF History


> Initial Development ProR (Focus on GUI)
  April 2010 – June 2010

> Verde/itemis Collaboration (ReqIF Core)
  July 2010 – February 2011

> Eclipse Foundation Submission (RMF)
  March 2011 – November 2011

> Preperation for first Eclipse Integration Build
  December 2011 – January 2012

> Following the Roadmap
  February 2012 – present
                                                    Image: Salvatore Vuono / FreeDigitalPhotos.net   14
Image: dream designs / FreeDigitalPhotos.net


                                               RMF Architecture




15
ReqIF Top Level




16




     Taken from OMG ReqIF 1.0.1 Specifcation
     Image: FreeDigitalPhotos.net
ReqIF Content




Taken from OMG ReqIF 1.0.1 Specifcation   17
Image: FreeDigitalPhotos.net
ReqIF: Three Layers


> ReqIF Meta-Meta-Model
  – Unchangeable (OMG Standard)
   –   Used by Developer

> Information Meta-Model:
  – Structures for Capturing Requirements
   –   Used by Requirements Engineer

> Requirements Model:
  – The Actual Requirements
   –   Used by Stakeholders



                                            19
Demo 1
Of the ProR Tool (GUI of RMF)
Traceability
Connecting the dots within and beyond the requirements description
Why Traceability?


   > For reasoning (SysML: containment, derive, satisfy, verify, refine)


   > For change management


   > For project management


   > For test management


   > … and many more uses




                                                                           22
Image: FreeDigitalPhotos.net
Traceability: End or Means?


   > Traceability is not self-serving!


   > Outdated/missing/incorrect traceability can be
     worse than none!

   > Effective traceability needs integration




                                                      23
Image: FreeDigitalPhotos.net
An Academic Example


   > Approach developed as part of research


   > Traceability between requirements and formal specification


   > Goal: Achieve consistency between requirements and (partly formal)
     specification

   > Principle applies to other processes
     and integrations



          Hallerstede, Jastram, Ladenberger:
          “A Method and Tool for Tracing Requirements into Specifications”,
          Science of Computer Programming (Submitted), 2012
          http://www.stups.uni-duesseldorf.de/w/Special:Publication/HalJasLad2012
                                                                                    24
Image: FreeDigitalPhotos.net
Event-B


> Formalism / Method for discrete System
  Modeling

> State-based


> Support of invariants


> Proof Obligations for consistency of
  invariants

> Targeted at the embedded market


> Tools support via Rodin Platform
                                           25
Demo 2
Of the Integration of ProR (Requirements) and Rodin (Event-B Models)
The Future


    > RMF 0.3.0 got released on June 16th


    > Tool interoperability via ProSTEP implementor forum


    > Integration with Topcased planned (UML/SysML)


    > Protoypical Xtext Integration exists


    > Academic and commercial use being expanded


    > We eat our dogfood!


Image: FreeDigitalPhotos.net                                28
What's in for You?


    > Completes Eclipse tool chain for
      Systems Engineering

    > “Better than Word, cheaper than Doors”


    > Ready to be used


    > Interoperability thanks to ReqIF




Image: FreeDigitalPhotos.net                   29
Thank you!
Questions, Comments, and Constructive Criticism Welcome!



Requirements Modeling Framework
                                                                the
http://eclipse.com/rmf                                new  s via og
                                                  RMF l Minds bl
                                                       a
                                                  Form wsletter:
                                                         e
ProR GUI for Requirements                          and n         d.co
                                                                      m/
                                                                almin     ns
                                                       p://form ubscriptio
http://eclipse.com/rmf/pror                         htt     tter/s
                                                    n ewsle
Michael Jastram    http://formalmind.com
Formal Mind GmbH   michael@jastram.de

Jazoon12: Tracing Requirements with the Eclipse Requirements Modeling Framework

  • 1.
    Tracing Requirements with theEclipse Requirements Modeling Framework Michael Jastram Formal Mind GmbH / University of Düsseldorf J11.2
  • 2.
    AGENDA > Requirements &Tools Today > Requirements Modeling Framework (RMF) > Demo of ProR (GUI) > Traceability > Demo of Rodin Integration (Modeling) > Outlook 2
  • 3.
    Is RMF foryou? If … … you consider requirements important … you do Eclipse-based systems engineering … Word, Excel, Wiki just doesn't cut it for requirements … you are looking for an open, extensible requirements tool … then RMF may be what you were looking for the new s via og RMF l Minds bl a Form wsletter: e and n d.co m/ in malm ions http ://for subscript / letter news Image: FreeDigitalPhotos.net 3
  • 4.
    Michael Jastram > CofounderFormal Mind GmbH Science for Systems Engineering > Completing PhD program (University of Düsseldorf) Focus on Requirements / Formal Models > Project Lead / Cofounder Eclipse Requirements Modeling Framework > Chairman / Founder rheinjug (Java User Group Düsseldorf) 4
  • 5.
  • 6.
  • 7.
    What are Requirements? >“A condition or capability needed by a user to solve a problem or achieve an objective (...)” (IEEE) > Requirements answer: What? > Specification answers: How? 7
  • 8.
    A Few Approachesand Tooling Light Heavy V-Modell XT RUP/OpenUP Scrum & Co Ad Hoc Specialized Text and Web-based Anything Tool chains UML Image: FreeDigitalPhotos.net 9
  • 9.
    Requirements in differentFields > Requirements for Software (Web, Desktop, etc.) – Small number – Complement Models > Requirements for Embedded Systems – Large Number – Part of Contracts Image: FreeDigitalPhotos.net 10
  • 10.
    Features of RequirementsTools > Like: – DOORS – Integrity – IRQA > Features – Requirements Text + Attributes – Various Attribute Types (Rich Text, Enumerations, OLE, etc.) – Hierarchical Document Structure – Traceability between Requirements – Versioning / Baselining > Analysis Image: FreeDigitalPhotos.net 11
  • 11.
    RMF The Eclipse RequirementsModeling Framework
  • 12.
    RMF Overview > Framework for working with textual requirements > Based on ReqIF (Requirements Interchange Format) > Components: GUI ( ) and Core > Extensible (Eclipse plug-ins / EMF) > Roots in academia > Designed for industry Image: ddpavumba / FreeDigitalPhotos.net 13
  • 13.
    RMF History > InitialDevelopment ProR (Focus on GUI) April 2010 – June 2010 > Verde/itemis Collaboration (ReqIF Core) July 2010 – February 2011 > Eclipse Foundation Submission (RMF) March 2011 – November 2011 > Preperation for first Eclipse Integration Build December 2011 – January 2012 > Following the Roadmap February 2012 – present Image: Salvatore Vuono / FreeDigitalPhotos.net 14
  • 14.
    Image: dream designs/ FreeDigitalPhotos.net RMF Architecture 15
  • 15.
    ReqIF Top Level 16 Taken from OMG ReqIF 1.0.1 Specifcation Image: FreeDigitalPhotos.net
  • 16.
    ReqIF Content Taken fromOMG ReqIF 1.0.1 Specifcation 17 Image: FreeDigitalPhotos.net
  • 17.
    ReqIF: Three Layers >ReqIF Meta-Meta-Model – Unchangeable (OMG Standard) – Used by Developer > Information Meta-Model: – Structures for Capturing Requirements – Used by Requirements Engineer > Requirements Model: – The Actual Requirements – Used by Stakeholders 19
  • 18.
    Demo 1 Of theProR Tool (GUI of RMF)
  • 19.
    Traceability Connecting the dotswithin and beyond the requirements description
  • 20.
    Why Traceability? > For reasoning (SysML: containment, derive, satisfy, verify, refine) > For change management > For project management > For test management > … and many more uses 22 Image: FreeDigitalPhotos.net
  • 21.
    Traceability: End orMeans? > Traceability is not self-serving! > Outdated/missing/incorrect traceability can be worse than none! > Effective traceability needs integration 23 Image: FreeDigitalPhotos.net
  • 22.
    An Academic Example > Approach developed as part of research > Traceability between requirements and formal specification > Goal: Achieve consistency between requirements and (partly formal) specification > Principle applies to other processes and integrations Hallerstede, Jastram, Ladenberger: “A Method and Tool for Tracing Requirements into Specifications”, Science of Computer Programming (Submitted), 2012 http://www.stups.uni-duesseldorf.de/w/Special:Publication/HalJasLad2012 24 Image: FreeDigitalPhotos.net
  • 23.
    Event-B > Formalism /Method for discrete System Modeling > State-based > Support of invariants > Proof Obligations for consistency of invariants > Targeted at the embedded market > Tools support via Rodin Platform 25
  • 24.
    Demo 2 Of theIntegration of ProR (Requirements) and Rodin (Event-B Models)
  • 25.
    The Future > RMF 0.3.0 got released on June 16th > Tool interoperability via ProSTEP implementor forum > Integration with Topcased planned (UML/SysML) > Protoypical Xtext Integration exists > Academic and commercial use being expanded > We eat our dogfood! Image: FreeDigitalPhotos.net 28
  • 26.
    What's in forYou? > Completes Eclipse tool chain for Systems Engineering > “Better than Word, cheaper than Doors” > Ready to be used > Interoperability thanks to ReqIF Image: FreeDigitalPhotos.net 29
  • 27.
    Thank you! Questions, Comments,and Constructive Criticism Welcome! Requirements Modeling Framework the http://eclipse.com/rmf new s via og RMF l Minds bl a Form wsletter: e ProR GUI for Requirements and n d.co m/ almin ns p://form ubscriptio http://eclipse.com/rmf/pror htt tter/s n ewsle
  • 28.
    Michael Jastram http://formalmind.com Formal Mind GmbH michael@jastram.de