Post on 22-Jan-2015
description
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