Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

17
Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France Maged Elaasar (Presenter) Senior Software Engineer, IBM [email protected] Jim Conallen Senior Software Engineer, IBM [email protected]

description

Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France. Maged Elaasar (Presenter) Senior Software Engineer, IBM [email protected] Jim Conallen Senior Software Engineer, IBM [email protected]. Design is a Key Phase of Development Lifecycle. - PowerPoint PPT Presentation

Transcript of Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

Page 1: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

Design Management: a Collabortive Design

Solution

ECMFA 2013

Montpellier, France

Maged Elaasar (Presenter)Senior Software Engineer, [email protected]

Jim ConallenSenior Software Engineer, [email protected]

Page 2: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

2Design is a Key Phase of Development Lifecycle

Reduces software development complexity

Identifies issues early in development lifecycle

Documents technical decisions for stakeholders

Accelerates implementations through model-driven development

Page 3: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

3Challenges for Design Tools Today

Designers work in silos unaware of team activities

Difficult to express designs in a suitable formalism

Difficult to share designs and get feedback from stakeholders

Difficult to work in parallel on design with other designers

Difficult to manage change and variability of design

Difficult to link designs to other lifecycle artifacts

Difficult to trace and analyze the impact of design changes

Difficult to create reports across multiple designs and lifecycle artifacts

Page 4: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

4Required Design Tool Features

CollaborativeTeam Access

Team Awareness

Lifecycle integration

Configuration management

Parallel development

Expressive Design Domains

Page 5: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

5

Rational Design Management (DM)

Design Management: a Collaborative Design Solution

RationalSoftwareArchitect

RationalRhapsody

DM

DM

RationalDesign

Management

Page 6: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

6Collaborative Team Access

Shared design respository with one or more clients

Access with role-based permissions

Search using keywords or queries

Browse elements and discover relationships

Collaborate by mark-up, comment, and review

RSA Client

Rhapsody Client

Web Client

Page 7: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

7Team Awareness

Provide a project overview dashboard as a mashup of widgets

Page 8: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

8Lifecycle Integration

Create links to other lifecycle artifacts

Preview link details and navigate to the linked artifact

Create reports and generate documents that cover linked artifacts

Analyze the impact of change to artifacts across the lifecycle

Page 9: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

9Configuration Management

Designs are organized into project

Designs evolve with change sets producing new versions

Design versions are recorded in one or more configurations A configuration can be changeable (workspace) or frozen (snapshot)

Configurations are organized in a hierarchy

Page 10: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

10Parallel Development

Support a traditional design process

Designer works in a private WS and delivers/rebases to intergration WS

Conflicts are resolved with compare/merge

Support an agile design process

More than one designer work in parallel in same WS

Minimize edit lock-out by maximizing design componentization

Page 11: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

11Expressive Design Domains

Structured Domains

UML, BPMN

Non Structured Domains

Sketches, Rich Text

Custom Domains Abstract syntax

Concrete syntax

Tool behavior

Page 12: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

12Design Management: Embracing Semantic Web

Semantic web makes it easier to build modern design tools

Representing designs with RDF

Defining design domains with OWL

Linking designs to lifecycle artifacts with OSLC

Page 13: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

13Representing Designs with RDF

Designs are represented as RDF graphs

Design integration (multi-classification, aliases)

Design extension (open world assumption)

Design modularization (multi-definition)

Separation of concerns

Parallel development

<rdf:Description rdf:about="#activity1"> <rdfs:label>Activity 1</rdfs:label> <rdf:type rdf:resource=“uml#Activity”/> <rdf:type rdf:resource=“bpmn#Activity”/></rdf:Description>

<rdf:Description rdf:about="#William"> <rdf:sameAs rdf:resource=“#Bill”/></rdf:Description>

<rdf:Description rdf:about=“people#Person"> <rdf:equivalentClass rdf:resource=“species#Human”/></rdf:Description>

<rdf:Description rdf:about=“#activity1"> <uml:isReadOnly>true</uml:isRealOnly> <notation:Diagram rdf:resource=“#Diagram1”/></rdf:Description>

Page 14: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

14Defining Design Domains with OWL

Design domains are defined with OWL ontologies that define

Syntax (some validation, reflective tooling)

Semantics (reasoning, consistency check)

Extra tooling annotations (e.g., componentization, cascade delete)

Generic mapping from/to MOF-defined metamodels

Support for mapping profiles (using multi-classification)

<rdf:Description rdf:about=“uml#context"> <rdfs:label>Context</rdfs:label> <rdf:type rdf:resource=“owl#ObjectProperty”/> <rdf:domain rdf:resource=“uml#Comment”/> <rdf:range rdf:resource=“uml#Namespace”/> <dmcore:cascadeDelete rdf:resource=“dmcore:cd-domain”/></rdf:Description>

<rdf:Description rdf:about=“uml#Comment"> <rdf:type rdf:resource=“owl#Class”/> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“uml#context”/> <owl:maxCardinality>1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdf:type rdf:resource=“dmcore:GraphType”/></rdf:Description>

<rdf:Description rdf:about=“#class1 "> <rdf:type rdf:resource=“uml#Class”/> <rdf:type rdf:resource=“sysml#Block”/> <sysml:isEncapsulated>true</sysml:isEncapsulated></rdf:Description>

Page 15: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

15Linking Designs to Lifecycle Artifacts with OSLC

DM adopts Open Services for Lifecycle Collaboration (OSLC)

Designs are represented using linked data (URI, RDF graph, etc.)

Designs have expected OSLC properties (e.g., dcterms:title)

Designs may use predefined link propeties (e.g.,dmoslc:validatedBy)

<rdf:Description rdf:about="http://company.org/dm/model/123#class1"> <rdf:type rdf:resource=“uml#Class”/> <dcterms:title>Class 1</dcterms:title> <dmoslc:validatedBy rdf:resource=“../testcase1”/></rdf:Description>

Page 16: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

16Contributions and Future Work

Described challenges facing software design tools today

Identified features that should help tools meet these challenges

Provided examples in the context of Design Management (DM) tool

Discussed how semantic web can help realize some of those features

Future work includes: Assess impact of DM on design team productivity through case studies

Define ways to define a rigorous design process

Support configurations across the lifecycle

Support automation of design migration due to domain evolution

Page 17: Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France

17

17