a web-based tool for managing architectural design decisions

21
A Web-based Tool for Managing Architectural Design Decisions Rafael Capilla, Francisco Nava, Sandra Pérez Universidad Rey Juan Carlos de Madrid Juan C. Dueñas Universidad Politécnica de Madrid SPAIN

Upload: miyoko

Post on 12-Jan-2016

20 views

Category:

Documents


2 download

DESCRIPTION

A Web-based Tool for Managing Architectural Design Decisions. Rafael Capilla, Francisco Nava, Sandra Pérez Universidad Rey Juan Carlos de Madrid Juan C. Dueñas Universidad Politécnica de Madrid SPAIN. Motivation. Architectural decisions are sadly lost during - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: A Web-based Tool for Managing Architectural Design Decisions

A Web-based Tool for ManagingArchitectural Design Decisions

Rafael Capilla, Francisco Nava, Sandra Pérez Universidad Rey Juan Carlos de Madrid

Juan C. Dueñas Universidad Politécnica de Madrid

SPAIN

Rafael Capilla, Francisco Nava, Sandra Pérez Universidad Rey Juan Carlos de Madrid

Juan C. Dueñas Universidad Politécnica de Madrid

SPAIN

Page 2: A Web-based Tool for Managing Architectural Design Decisions

Architectural decisions are sadly lost during architectural construction processes.

The present viewpoints of the architecture generally do not include the design decisions explicitly as part of their architectural knowledge (AK).

Design decisions are not shared and/or reused.

It’s hard to recreat decisions when they haven’t been documented before.

To continue with the initial work presented at EWSA05.

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

MotivationMotivation

Page 3: A Web-based Tool for Managing Architectural Design Decisions

Changes on existing teams.

Traceability issues.

Explain the rationale by which the decisions were made.

Lost of Architectural Knowledge.

Lack of specific notation.

Existing ProblemsExisting Problems

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Page 4: A Web-based Tool for Managing Architectural Design Decisions

A. Jansen, J. Bosch (RUG)

Software architecture as a set of design decisions (Metamodels for a first class representation of DD. The Archium approach)

GRIFFIN Project (Vrije Universiteit, RUG)

Model notations, tools and methods to extract, represent and use architectural knowledge (AK)

P. Kruchten (University of British Columbia)

Building up and exploting architectural knowledge AK = Context + Assumptions + Decision + Design Taxonomy of DD (ontologies)U&SA project at the Human-Computer Interaction Institute &Software Engineering Institute at Carnegie Mellon

Some Current EffortsSome Current Efforts

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Page 5: A Web-based Tool for Managing Architectural Design Decisions

Software architecture: the Next Step (J. Bosch, EWSA 2004) Design decisions trees (A. Ran, J. kuusela, 1996) Architecture decisions: Demystifying Architecture

(J. Tyree, A. Ackerman, IEEE Software, 2005) WICSA 2005 papers The Decision View of Software Architecture (J.C. Dueñas, R. Capilla

EWSA 2005) Design rationale systems: Understanding the issues(J. Lee, IEEE Expert (12) 3, 1997) Explicit assumptions enrich architectural models (P. Lago, van Vliet

ICSE 2005) A Framework for documenting design decisions in product families

development (A. Alonso, G. Leon, J.C. Dueñas, A de la Puente, 3rd Conf. on Eng. Complex Computer Systems, 1997).

Others from the AI community, Knowledge Management area

Past and Current Related WorkPast and Current Related Work

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Page 6: A Web-based Tool for Managing Architectural Design Decisions

The Decision View in SA

A “new” architectural view for this viewpointfrom a technical perspective

A “4+1” + 1 view model compared to Kruchten’s approach

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Our PositionOur Position

The Decision View

Documentation Notation Process

CurrentSA

Views &Viewpoints

Stakeholders

Page 7: A Web-based Tool for Managing Architectural Design Decisions

Multiperspective support for different stakeholders

Visual representation (explicit graphical notation)

Complexity control to manage and organize the decision network

Groupware support for interaction between stakeholders

Chronological visualization

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Requirements for the Decision ViewRequirements for the Decision View

Page 8: A Web-based Tool for Managing Architectural Design Decisions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Software Architecture Construction: An Iterative Process

Software Architecture Construction: An Iterative Process

Reference Models

ArchitecturalPatterns &

Styles

Product / SystemArchitecture

SoftwareArchitectureReference

Architecture

Design DecisionsCustomization

Page 9: A Web-based Tool for Managing Architectural Design Decisions

Decision 1 Decision 2

Decision 3

Decision 4

Trace

1st Iteration 2nd Iteration

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Decisions Linked to Architectural ProductsDecisions Linked to Architectural Products

SWRequirements

Trace

Page 10: A Web-based Tool for Managing Architectural Design Decisions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Requirements for Tool SupportRequirements for Tool Support

Multiple projects and architectures Different categories of stakeholders Architecture iterations Support for design decisions (patterns, styles, others) Dependencies between decisions Alternative decisions Architecture visualization facilities Documentation generation Connection to functional and non-functional

requirements

Page 11: A Web-based Tool for Managing Architectural Design Decisions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Meta-model for the DD ProcessMeta-model for the DD Process

Page 12: A Web-based Tool for Managing Architectural Design Decisions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

The ADDSS ToolThe ADDSS Tool

First prototype at: http://sevilla.escet.urjc.es/~sperez/ADDSS/

Page 13: A Web-based Tool for Managing Architectural Design Decisions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

The ADDSS ToolThe ADDSS Tool Stored list of patterns and styles

o Pattern nameo Pattern descriptiono Image

Page 14: A Web-based Tool for Managing Architectural Design Decisions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

The ADDSS ToolThe ADDSS Tool Software requirementsadded by the user

Page 15: A Web-based Tool for Managing Architectural Design Decisions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

The ADDSS ToolThe ADDSS Tool Requirements are relatedto design decisions

Dependencies between decisions can be defined

Page 16: A Web-based Tool for Managing Architectural Design Decisions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

The ADDSS ToolThe ADDSS Tool Architecture construction seenas an iterative process

Thumbnail images of architectures

Page 17: A Web-based Tool for Managing Architectural Design Decisions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

The ADDSS ToolThe ADDSS Tool Architecture documentation (3 docs)

o Project (Architectures (Req, Iter, DD)) o Architecture (Req, Iterations, DD)o Iteration (DD, Req. for each DD)

Page 18: A Web-based Tool for Managing Architectural Design Decisions

ConlusionsConlusions

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

A first class of tools for supporting decisions explicitly

Tool support for an iterative and evolving process

A learning and recording process for understanding design decisions

Connection between requirements, decisions and architectures

A way by which we can recreate recorded decisions

Knowledge can be shared between the stakeholders

Page 19: A Web-based Tool for Managing Architectural Design Decisions

Support for different architecture views

Quality attributte specification

Queries and rules for reasoning about decisions

Discriminate types of dependencies

More detailed information for DD

Extend the proposed meta-model

Explicit notation for DD

Work for the Next Day After this ConferenceWork for the Next Day After this Conference

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

Page 20: A Web-based Tool for Managing Architectural Design Decisions

A brief note for peopleinterested in the tool

Please email us before ([email protected]) because we are changing the platform and improving some features

Temporarily use the following URL

http://triana.escet.urjc.es/ADDSS

Page 21: A Web-based Tool for Managing Architectural Design Decisions

Thank you for your time…