27
Reusing Modeling Elements in IV&V Thomas Otani Naval Postgraduate School 2009 NASA Independent Verification and Validation (IVV) Annual Workshop John Ryan Reuse Working Group Lead

Reusing Modeling Elements in IV&V

Embed Size (px)

DESCRIPTION

Reusing Modeling Elements in IV&V. Thomas Otani Naval Postgraduate School. John Ryan Reuse Working Group Lead. 2009 NASA Independent Verification and Validation (IVV) Annual Workshop. Outline. The IV&V Reuse Working Group The System Reference Model (SRM) Reuse in SRM - PowerPoint PPT Presentation

Citation preview

Page 1: Reusing Modeling Elements in IV&V

Reusing Modeling Elements in IV&V

Thomas Otani

Naval Postgraduate School

2009 NASA Independent Verification and Validation (IVV) Annual Workshop

John Ryan

Reuse Working Group Lead

Page 2: Reusing Modeling Elements in IV&V

Outline The IV&V Reuse Working Group The System Reference Model (SRM) Reuse in SRM Reusable Modeling Elements SRM Reuse Framework Intermediate Reuse Repository Conclusion

2009 IVV Annual Workshop 2Sept 15 - Reusing Modeling

Elements

Page 3: Reusing Modeling Elements in IV&V

The Reuse Working Group

Objectives Provide reusable modeling artifacts to support in

NASA IVV efforts to: Reduce labor cost and time of product deliverables Reduce duplication of modeling artifacts Increase scope, flexibility, and responsiveness Leverage previous understandings of systems and

behaviors

2009 IVV Annual Workshop 3Sept 15 - Reusing Modeling

Elements

Page 4: Reusing Modeling Elements in IV&V

The Reuse Working Group

Previous Goals Define the definition and attributes of reuse and use

artifacts Define how reuse integrates with the product lines Define the process and requirements for a Reuse

Repository

Current Goals To demonstrate the feasibility and value of reuse

through focused projects To increase the supply and availability of reusable

artifacts To increase community capability and interest to

leverage existing artifacts

2009 IVV Annual Workshop 4Sept 15 - Reusing Modeling

Elements

Page 5: Reusing Modeling Elements in IV&V

The Reuse Working Group

ScopeThe WG will define and recommend areas within modeling, validation, and verification activities for reuse, and will provide support (analytical, development, management, and training) to enable reuse within those activities across projects.

Focus on: Reuse of existing artifacts Reuse of newly developed artifacts derived from existing

artifacts Developing initial modeling, assertion, and report

templates Reuse of modeling artifacts (Initially) Reuse for science and exploration mission projects

2009 IVV Annual Workshop 5Sept 15 - Reusing Modeling

Elements

Page 6: Reusing Modeling Elements in IV&V

System Reference Model

We advocate the use of System Reference Model (SRM) for the IV&V team to capture its understanding of the problem domain The SRM contains

Written Use Cases UML artifacts and a set of formal assertions and accompanying test

scenarios to model precisely the required behavior of the system

2009 IVV Annual Workshop 6Sept 15 - Reusing Modeling

Elements

Page 7: Reusing Modeling Elements in IV&V

Executable SRMWe advocate that the SRM be executable for it to be truly useful

Executable SRM includes a computer-aided tool to validate behavior specifications

Software automation is the key to the successful validation (and verification) of the behaviors of complex systems

Traditional manual process is woefully inadequate in locating subtle errors in increasingly complex software-intensive systems of systems

2009 IVV Annual Workshop 7Sept 15 - Reusing Modeling

Elements

Page 8: Reusing Modeling Elements in IV&V

Reuse in SRM Two types of reuse in SRM:

Adoption Reuse An existing artifact (e.g. activity diagram) is reused

in another product Instantiation Reuse

A concrete artifact is created from a generic template

An idea of generic assertion template was presented at IEEE SSIRI 2008

2009 IVV Annual Workshop 8Sept 15 - Reusing Modeling

Elements

Page 9: Reusing Modeling Elements in IV&V

Sample Assertion Template

Resusing Modeling ElementsSept 15 - IVV Annual Workshop 9

Page 10: Reusing Modeling Elements in IV&V

Test Scenario PatternsThese are the types of test patterns that must accompany every assertion

Obvious Success Obvious Failure Event Repetitions Time-interval Repetitions Overlapping Time-interval Repetitions

Resusing Modeling ElementsSept 15 - IVV Annual Workshop 10

Page 11: Reusing Modeling Elements in IV&V

More Reusable Modeling Elements

Behavioral and structural products for conceptual system and subsystem views

Written Use Cases, Use Case Diagrams, Activity Diagrams, Sequence Diagrams, Communication Diagrams, State Diagrams, Class Diagrams

Goals, Constraints, External Actors/Stakeholders, Some Internal Actors, Actions/Functions

Reuse by Context: Subsystem, Behavior, Design Choices, Mission Characterizations

2009 IVV Annual Workshop 11Sept 15 - Reusing Modeling

Elements

Note: The actions/functions in Behavioral Diagrams may be reusable but not necessarily in the sequence defined in the diagrams

Page 12: Reusing Modeling Elements in IV&V

More Reusable Modeling Elements

SysGoals Product PBRA Products Assertions Behavioral and structural products associated with design subsystem component views Other Reports, References, Templates

2009 IVV Annual Workshop 12Sept 15 - Reusing Modeling

Elements

Page 13: Reusing Modeling Elements in IV&V

Example: SysGoals Product

Characterize/Classify Missions by:

Mission Type: Orbiter/Lander

Location/Destination: Earth Orbit, Non-Earth Planetary Orbit

Orbit Type: LEO, Polar, Geocentric, etc.

Number of Orbiters, Solo/Cluster

Overall Objectives and Science Requirements

Communication Signal Bands and Availability

Autonomous vs. Commanded Operations

Length of Mission

Launch and Landing Plans

Environment/Conditions

Environmental Limitations and Safety Precautions

Capabilities, Limitations, and Risks

2009 IVV Annual Workshop 13Sept 15 - Reusing Modeling

Elements

Page 14: Reusing Modeling Elements in IV&V

Modeling Reuse with Classifications

Identify Commonalities and Differences

Associate Goals to Characterizations

Associate Sub Goals to Characterizations

Develop Reusable SysGoal Products in respect to context by characterization

14Sept 15 - Reusing Modeling

Elements2009 IVV Annual Workshop

Common and Generic Goals,

Behaviors, Actions, Actors,

etc.

Common and Generic Goals,

Behaviors, Actions, Actors,

etc.

Additional and Specific Goals,

Behaviors, etc. for Classification

Additional and Specific Goals,

Behaviors, etc. for Classification

Page 15: Reusing Modeling Elements in IV&V

NEAP Project

2009 IVV Annual Workshop 15Sept 15 - Reusing Modeling

Elements

Page 16: Reusing Modeling Elements in IV&V

Reuse Process

16Sept 15 - Reusing Modeling

Elements2009 IVV Annual Workshop

ReuseRepository

ReuseRepository

Discovery

Packaging

Classification

Search

Validation

Adaptation/Integration

Page 17: Reusing Modeling Elements in IV&V

SRM Reuse FrameworkThree initial use cases to identify the actors and behaviors of the desired reuse library:

Add SRM artifacts to the reuse library Browse the reuse library Retrieve and reuse SRM artifacts

2009 IVV Annual Workshop 17Sept 15 - Reusing Modeling

Elements

Page 18: Reusing Modeling Elements in IV&V

Use Case: Add SRM Artifacts

2009 IVV Annual Workshop 18Sept 15 - Reusing Modeling

Elements

Page 19: Reusing Modeling Elements in IV&V

Use Case: Browse Artifacts

: SRM ReuseLibrary

browseLibrary()

: SRMModeler

browseOptions

choose(o: Option)ref [o == activity]

BrowseByActivity

ref [o == project]

BrowseByProject

ref [o == keyword]

BrowseByKeyword

ref [o == behaviorPattern]

BrowseByBehaviorPattern

2009 IVV Annual Workshop 19Sept 15 - Reusing Modeling

Elements

Page 20: Reusing Modeling Elements in IV&V

Use Case: Browse by Activity

: SRM ReuseLibrary

: SRMModeler

sd BrowseByActivity

activity list

choose(c: Activity)

SRM pattern

choose(id: ArtifactId)

loop

artifact

loop [more artifacts]

[not done]

2009 IVV Annual Workshop 20Sept 15 - Reusing Modeling

Elements

Page 21: Reusing Modeling Elements in IV&V

Use Case: Retrieve and Reuse

: SRM ReuseLibrary

: SRMModeler

loop

import(id: ArtifactId)

attributeMappingGUI

loop

pairing(atr: Attribute, d: Data)

[more mapping]

[more import]

add(a: Artifact)

: Modeler Workspace

donePairing()

2009 IVV Annual Workshop 21Sept 15 - Reusing Modeling

Elements

Page 22: Reusing Modeling Elements in IV&V

Conceptual Model

SRMArtifact

BusinessGoal

BusinessProcess

ActivityDiagram

SequenceDiagram

Statechart

ConceptualModel

UseCase

Junit Test Case

StatechartAssertion

Activity

SRMPattern

AssertionPattern

SequencingBehavior

SRMReuseLibrary

ReuseLibrarian

SRMModeler

maintains uses0..*

contains

contains

contains

containscontains

contains

contains

contains

0..*

0..*

0..*

0..*

0..*

0..* 0..*

0..*1..*

0..*

0..*

0..*

0..*

0..*0..*

0..* 0..*

0..*

0..*

0..*

contains

0..*

0..*

0..*

ModelingProject

contains

contains

0..*

0..*

0..*0..*

0..*0..*

0..*

2009 IVV Annual Workshop 22Sept 15 - Reusing Modeling

Elements

Page 23: Reusing Modeling Elements in IV&V

Elements in the Prototype

SRMArtifact

BusinessGoal

BusinessProcess

ActivityDiagram

SequenceDiagram

Statechart

ConceptualModel

UseCase

Junit Test Case

StatechartAssertion

Activity

SRMPattern

AssertionPattern

SequencingBehavior

SRMReuseLibrary

ReuseLibrarian

SRMModeler

maintains uses0..*

contains

contains

contains

containscontains

contains

contains

contains

0..*

0..*

0..*

0..*

0..*

0..* 0..*

0..*1..*

0..*

0..*

0..*

0..*

0..*0..*

0..* 0..*

0..*

0..*

0..*

contains

0..*

0..*

0..*

ModelingProject

contains

contains

0..*

0..*

0..*0..*

0..*0..*

0..*

2009 IVV Annual Workshop 23Sept 15 - Reusing Modeling

Elements

Page 24: Reusing Modeling Elements in IV&V

Intermediate Reuse Repository

Reuse Working Group is using svn to control new reuse artifacts within a Together Project: The Reuse Repository

Working Group acts as current librarian to define or accept new reuse additionsThe Reuse Repository will provide different folder views to browse by: [contexts] Behavior Product Subsystem (associate reusable products) Design Component (associated reusable products) Project {All contexts may be further decomposed by

classifications}

2009 IVV Annual Workshop 24Sept 15 - Reusing Modeling

Elements

Page 25: Reusing Modeling Elements in IV&V

A Prototype Beyond svnEclipse plugin

Must integrate with other tools used by the IV&V team

First prototype will support

Only basic searches by id and name

Backend database is object-oriented

Artifacts maintained in the XML format

Sept 15 - IVV Annual Workshop 25Resusing Modeling Elements

Page 26: Reusing Modeling Elements in IV&V

Conclusion Short-term Goal

Implement the prototype Intermediate Reuse Repository using svn Evaluate the prototype for its effectiveness Promote the use of Intermediate Reuse Repository

with a pilot project Start the construction of a basic proof-of-concept

prototype that supports only a limited number of elements in the reuse conceptual model

Long-term Goal Meet the Objectives and Goals of the Reuse Working

Group Reuse (of modeling elements) becomes a fully

integrated aspect of the IV&V workflow

2009 IVV Annual Workshop 26Sept 15 - Reusing Modeling

Elements

Page 27: Reusing Modeling Elements in IV&V

Questions?

2009 IVV Annual Workshop 27Sept 15 - Reusing Modeling

Elements