Eclipse idd2012...

Post on 22-Jan-2015

162 views 0 download

description

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.

transcript

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

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 Eclipse IDD 2012

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

•  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.

Requirements and Traceability Motivation

Eclipse IDD 2012 3

Best practice standards have in common: Requirements management and traceability between development artifacts

Bring requirements into Eclipse

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

Bridging the gap between requirements management tools

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

ReqIF

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

•  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

Requirements Interchange Format (ReqIF) Overview

Eclipse IDD 2012 7

ReqIF … the “UML” for Requirements

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

ReqIF – Top Level Structure

Eclipse IDD 2012 8

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

ReqIF – Core Content

Eclipse IDD 2012 9

(1) Pool of Requirements „SpecObjects“

(2) „Specifications“ with hierarchy

(3) Linkage „SpecRelation“

(4) Meta data about Structure

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

Eclipse Requirements Modeling Framework (RMF) The Open Source Implementation of the OMG ReqIF standard

Eclipse IDD 2012 10

3rd Party Standard (OMG) Eclipse RMF Eclipse Platform

.reqif Exchange

Format Persistence

Requirements Capturing UI (RMF ReqIF ProR)

Implementation of ReqIF Metamodel (RMF ReqIf Core)

Eclipse Modeling Framework

erde

www.itea-verde.org www.deploy-project.eu

Core

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

•  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

Traceability Advantages – Process Visibility

NXP 12

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

•  Documentation of test coverage e.g.

•  System requirement are validated by system tests

•  Software Requirements are vaidated by software test

•  Architecture and Design is validated by integration tests

•  Code units are validated by unit tests

•  Documenation of requirements coverage

•  Are all requirements implemented and tested?

Traceability Advantages – Verification & Validation

NXP 13

Software Units

Test Specification of Software

Units

ENG.6.BP10

Software Requirements

ENG.6.BP9Software Detailed Design

ENG.6.BP8

Software Architectural

Design

ENG.5.BP9

ENG.5.BP10

System Architectural

Design

ENG.4.BP7

System Requirements

ENG.4.BP6

ENG.3.BP6

Customer Requirements

ENG.2.BP6

Software Integration Test

Specification

ENG.7.BP7

Software Test Specification

ENG.8.BP5

System Integration Test

SpecificationENG.9.BP7

System Test Specification

ENG.10.BP5

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

•  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)?

Traceability Advantages – Maintenance

NXP 14

change

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

•  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

Connecting Models with Requirements using Traceability Method: Documentation of Traces between Requirements and Models

Eclipse IDD 2012 15

Creation and maintenance should be as easy as possible

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

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

Connecting Models with Requirements using Traceability YAKINDU CReMa

Eclipse IDD 2012 16

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

Integration of Eclipse editors and (external) tools

Connecting Models with Requirements using Traceability YAKINDU CReMa Architecture

Eclipse IDD 2012 17

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

•  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:

Connecting Models with Requirements Method: Integrate Models into Requirements

Eclipse IDD 2012 18

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

•  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

Connecting Models with Requirements RMF Extension: Xtext Integration

Eclipse IDD 2012 19

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

20

Demo: YAKINDU RMF

Extensions

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

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

References

Eclipse IDD 2012 21

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

22

Questions ?

��������������������������

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

© itemis AG

itemis AG | Am Brambusch 15-24 | D-44536 Lünen | www.itemis.de

Mark Brörkens

Itemis AG

Ohlauer Straße 43

10999 Berlin

Mark.Broerkens@itemis.de