Eclipse idd2012 broerkens_bridgingthegapbetweentextualrequirementsandmodelbasedsoftwaredevelopmentwitheclipse
Upcoming SlideShare
Loading in...5
×
 

Eclipse idd2012 broerkens_bridgingthegapbetweentextualrequirementsandmodelbasedsoftwaredevelopmentwitheclipse

on

  • 278 views

In April 2011 the OMG has released the Requirements Interchange Format (ReqIF) specification, which standardizes the format for the exchange of textual requirements between different requirements ...

In April 2011 the OMG has released the Requirements Interchange Format (ReqIF) specification, which standardizes the format for the exchange of textual requirements between different requirements management tools.

The Eclipse Requirements Modeling Framework (RMF) project provides an open source implementation of this standard. The presentation gives a short overview over the new ReqIF standard and demonstrates the current implementation. Additionally, we will demonstrate two approaches for bridging the gap between textual requirements and models:

* The first approach will demonstrate how to explicitly model links between the textual requirements and the model elements using YAKINDU CReMa.

* In the second approach we will integrate models directly into the textual requirements by using textual domain specific languages and Eclipse Xtext.

Statistics

Views

Total Views
278
Views on SlideShare
277
Embed Views
1

Actions

Likes
0
Downloads
1
Comments
0

1 Embed 1

https://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Eclipse idd2012 broerkens_bridgingthegapbetweentextualrequirementsandmodelbasedsoftwaredevelopmentwitheclipse Eclipse idd2012 broerkens_bridgingthegapbetweentextualrequirementsandmodelbasedsoftwaredevelopmentwitheclipse Presentation Transcript

  • Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Bridging the gap between textual requirements Ÿ Ÿ and model based software development Ÿ Ÿ Ÿ Mark Brörkens | Eclipse IDD | 30.05.2012 | Berlin ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG
  • Agenda Ÿ Ÿ Ÿ§  Motivation Ÿ Ÿ Ÿ Ÿ§  Bring textual requirements into Eclipse Ÿ Ÿ Ÿ §  OMG Requirements Interchange Format (ReqIF) Ÿ Ÿ §  Eclipse Requirements Modeling Framework (RMF) Ÿ Ÿ §  Demo Ÿ Ÿ Ÿ Ÿ§  Connecting Models with Requirements Ÿ Ÿ §  Traceability Ÿ Ÿ §  Textual DSLs as part of textual requirements Ÿ Ÿ §  Demo Ÿ Ÿ 2ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • Requirements and TraceabilityMotivation Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ•  Standish Group study (1994): Ÿ Ÿ •  31 percent of software projects failed Ÿ Ÿ •  53 percent challenged by extreme budget overruns Ÿ Ÿ Ÿ Ÿ•  As a response: Industry process standards Ÿ Ÿ •  e.g. CMMI, ISO 26262, Do-178b Ÿ Ÿ •  documented best practices in order to improve development processes. Ÿ Ÿ Ÿ Ÿ Best practice standards have in common: Ÿ Requirements management and traceability Ÿ Ÿ between development artifacts Ÿ 3ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • Bring requirements into Eclipse
  • Bridging the gap between requirements management tools Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ © itemis AG
  • Ÿ Ÿ© itemis AG Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ ReqIF Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ
  • Requirements Interchange Format (ReqIF)Overview Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ•  Format to exchange requirements Ÿ Ÿ•  Developed by the German Automotive Industry Ÿ Ÿ•  First version in 2004 Ÿ Ÿ•  Now OMG standard Ÿ Ÿ•  Much more than a file format: a data model Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ ReqIF … the “UML” for Requirements Ÿ Ÿ Ÿ Ÿ 7ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • ReqIF – Top Level Structure Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ 8ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • ReqIF – Core Content Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ(1) (2) (3) (4) ŸPool of Requirements „Specifications“ Linkage Meta data Ÿ„SpecObjects“ with hierarchy „SpecRelation“ about Structure Ÿ Ÿ 9ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • Eclipse Requirements Modeling Framework (RMF)The Open Source Implementation of the OMG ReqIF standard Ÿ Ÿ Ÿ Ÿ Ÿ Requirements Capturing UI Ÿ (RMF ReqIF ProR) Ÿ Ÿ Ÿ .reqif Ÿ Implementation of ReqIF Metamodel Ÿ Exchange Persistence (RMF ReqIf Core) Ÿ Format Ÿ Ÿ Ÿ Ÿ Eclipse Modeling Framework Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ 3rd Party Standard (OMG) Eclipse RMF Eclipse Platform Ÿ Ÿ Ÿ 10ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • erdewww.itea-verde.org www.deploy-project.euCore
  • TraceabilityAdvantages – Process Visibility Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ •  Engineer Ÿ Ÿ •  access to contextual information. E.g. Ÿ Ÿ •  Intention of user for having a given feature Ÿ •  tests that were used to verify the functionality Ÿ Ÿ •  related artifacts Ÿ Ÿ •  avoid adding unneeded enhancements Ÿ Ÿ Ÿ Ÿ •  Customer / Accessor Ÿ Ÿ •  Demonstrate that a requirement is implemented and tested Ÿ Ÿ Ÿ Ÿ Ÿ 12ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG NXP
  • TraceabilityAdvantages – Verification & Validation Ÿ Ÿ Ÿ Ÿ Customer Requirements Ÿ Ÿ •  Documentation of test coverage e.g. ENG.2.BP6 Ÿ ENG.10.BP5 Ÿ System System Test Requirements Specification •  System requirement are validated by system tests Ÿ ENG.3.BP6 Ÿ System System ENG.9.BP7 •  Software Requirements are vaidated by software test Architectural Integration Test Design Specification ENG.4.BP6 ENG.4.BP7 Ÿ •  Architecture and Design is validated by integration tests Software Requirements ENG.8.BP5 Software Test Specification Ÿ Ÿ ENG.5.BP9 Software Architectural •  Code units are validated by unit tests Design ENG.5.BP10 ENG.7.BP7 Ÿ Ÿ ENG.6.BP9 Software Software Detailed Integration Test Ÿ Design Specification Ÿ ENG.6.BP8 Test Ÿ Software ENG.6.BP10 Specification Units of Software •  Documenation of requirements coverage Units Ÿ Ÿ •  Are all requirements implemented and tested? Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ 13ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG NXP
  • TraceabilityAdvantages – Maintenance Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ •  Determine impact of change Ÿ Ÿ •  Which artifacts need to be updated, retested, recertified, etc. Ÿ Ÿ Ÿ Ÿ •  In case a system contains a bug Ÿ Ÿ •  Allow finding related artifacts which might be involved in producing the error Ÿ Ÿ •  Assist while identifying the source (implementation, design, architecture, requirement)? Ÿ Ÿ Ÿ change Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ 14ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG NXP
  • Connecting Models with Requirements using TraceabilityMethod: Documentation of Traces between Requirements and Models Ÿ Ÿ Ÿ Ÿ•  Direct tool-based links Ÿ Ÿ (e.g. SysML) Ÿ Ÿ•  Naming conventions Ÿ Ÿ•  Implicit Ÿ (e.g. model based development, code generation) Ÿ Ÿ•  Traces in artifacts Ÿ (e.g. in comments of C-Code) Ÿ Ÿ Ÿ•  Traceability matrices Ÿ Ÿ•  Specialized tool that manages trace dependencies Ÿ Ÿ Ÿ Ÿ Creation and maintenance should be as easy as possible Ÿ Ÿ Ÿ 15ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • Connecting Models with Requirements using TraceabilityYAKINDU CReMa Ÿ Ÿ Ÿ Ÿ Ÿ ŸTraceability support deeply integrated into Eclipse Ÿ Ÿ•  Simple trace creation Ÿ Ÿ•  Interactive navigation of traces including opening of traced artifacts Ÿ•  immediate feedback if modification in model will break or modify a trace Ÿ Ÿ•  Automated trace updates in case of renaming, etc. Ÿ Ÿ•  Supports Eclipse based and non-Eclipse based Tools Ÿ Ÿ Ÿ ŸSupport for Report Generation Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ 16ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • Connecting Models with Requirements using TraceabilityYAKINDU CReMa Architecture Ÿ Ÿ Ÿ Ÿ Ÿ ŸIntegration of Eclipse editors and (external) tools Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ 17ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • Connecting Models with RequirementsMethod: Integrate Models into Requirements Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ•  Most Requirements Management Tools are great for managing requirements. Ÿ Ÿ•  However, the requirements text often only is a “text blob” Ÿ Ÿ •  Little support for ensuring the consistency of requirements. Ÿ Ÿ•  E.g.: Ÿ Ÿ •  “The wiper washer control shall enable the front wiper if it is raining” Ÿ Ÿ•  Textual DSL can assist creating consistent specifications using custom editors Ÿ Ÿ with syntax highlighting, tab completion, … Ÿ Ÿ•  E.g: Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ 18ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • Connecting Models with RequirementsRMF Extension: Xtext Integration Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ•  RMF ProR is highly extensible by “presentations” Ÿ Ÿ •  Each cell can have a custom editor Ÿ Ÿ •  E.g Xtext editors for one or more DSLs Ÿ Ÿ Ÿ Ÿ•  Requirements Management Tool becomes modeling tool Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ 19ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG Eclipse IDD 2012
  • Ÿ Ÿ Demo: Ÿ Ÿ Ÿ Ÿ Ÿ YAKINDU RMF Ÿ Ÿ Ÿ Ÿ Ÿ Extensions Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG
  • References Ÿ Ÿ Ÿ Ÿ Ÿl  OMG ReqIF specification Ÿ http://www.omg.org/spec/ReqIF/ Ÿ Ÿ Ÿl  Eclipse Requirements Modeling Framework Ÿ http://www.eclipse.org/rmf Ÿ Ÿl  YAKINDU Tools Ÿ http://www.yakindu.com Ÿ Ÿ Ÿl  Xtext Ÿ http://www.eclipse.org/Xtext/ Ÿ Ÿ Ÿ Ÿ Ÿl  Follow me on Twitter Ÿ http://twitter.com/MarkBroerkens Ÿ Ÿ Ÿ 21 Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ© itemis AG Eclipse IDD 2012
  • Ÿ Ÿ© itemis AG Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Questions ? Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ
  • Ÿ Ÿ Mark Brörkens Ÿ Itemis AG Ÿ Ÿ Ohlauer Straße 43 Ÿ 10999 Berlin Ÿ Ÿ Mark.Broerkens@itemis.de Ÿ Ÿ Ÿ Ÿ itemis AG | Am Brambusch 15-24 | D-44536 Lünen | www.itemis.de Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ Ÿ ŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸŸ© itemis AG