A Web-based Tool for Managing Architectural Design Decisions Rafael Capilla, Francisco Nava, Sandra Pérez Universidad Rey Juan Carlos de Madrid Juan C.

Slides:



Advertisements
Similar presentations
Workshop on Knowledge Technologies within the 6th Framework MayA. Gómez-Pérez Certifying Knowledge and Knowledge Technologies ( based on Sig3 activities.
Advertisements

Eindhoven Technische Universiteit What offers VR to the Designer Bauke de Vries Henri Achten.
2009 – E. Félix Security DSL Toward model-based security engineering: developing a security analysis DSML Véronique Normand, Edith Félix, Thales Research.
Domain Engineering Silvio Romero de Lemos Meira
Busines Process Management In Practice: Improving Quality Through a Joint Academia – Industry Effort Rafael Montes - TimeProcess Oscar Pastor – PROS- UPV.
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
IT Requirements Capture Process. Motivation for this seminar Discovering system requirements is hard. Formally testing use case conformance is hard. We.
Software Reuse SEII-Lecture 28
Outline About author. The problem that discussed in the article.
DiME 1 The ERP Paradigm for ALM Environments – An Experience Report Shai Koenig Comverse and The Open University of Israel June 2008.
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh 1 Requirements.
SeCoGIS - Bercellona, October 20, 2008 An ontology-based approach for the semantic modeling and reasoning on trajectories Miriam Baglioni Jose de Macedo.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter Chapter 7: Expert Systems and Artificial Intelligence Decision Support.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Managing Reuse Presented by: Aisha Al-Hammadi. Outline Introduction History. The technical and managerial advantages of Reusing Solutions. The main challenges.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Mining Behavior Models Wenke Lee College of Computing Georgia Institute of Technology.
1 درس مهندسي نيازمندي استاد دكتر عبداله زاده دانشجو خيرالنسا مرچانت RE in The Year 00: A Research Perspective.
ARCHITECTURAL MISMATCH Heather T. Kowalski September 5, 2000.
Tyutyunnick Pavel Stefan Puchner Steklov Institute St. Petersburg, Technical University.
Course Instructor: Aisha Azeem
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
A Survey of Software Architecture Viewpoint Models Nicholas May
Design, goal of design, design process in SE context, Process of design – Quality guidelines and attributes Evolution of software design process – Procedural,
1 Ivano Malavolta, University of L’aquila, Computer Science Department Ivano Malavolta DUALLy: an Eclipse platform for architectural languages interoperability.
Annual SERC Research Review - Student Presentation, October 5-6, Extending Model Based System Engineering to Utilize 3D Virtual Environments Peter.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
This chapter is extracted from Sommerville’s slides. Text book chapter
Exploring Personal CoreSpace For DataSpace Management Li Yukun and Xiaofeng Meng WAMDM Lab Renmin University of China.
“Enhancing Reuse with Information Hiding” ITT Proceedings of the Workshop on Reusability in Programming, 1983 Reprinted in Software Reusability, Volume.
1 WEB Engineering Introduction to Electronic Commerce COMM1Q.
Architecture-Based Runtime Software Evolution Peyman Oreizy, Nenad Medvidovic & Richard N. Taylor.
GEOGEBRA conference, Linz. JULY /12 Teaching Computer Aided Design with the use of Geogebra Francisco Pérez Universidad Politécnica de Madrid. Spain.
Requirements Elicitation. Who are the stakeholders in determining system requirements, and how does their viewpoint influence the process? How are non-technical.
HCI in Software Process Material from Authors of Human Computer Interaction Alan Dix, et al.
Exploring the Intentional Dimension during Software (Architecture) Design adding the “why” and the “who/where” to the “what” and the “how” Daniel Gross.
Personal Information Management Vitor R. Carvalho : Personalized Information Retrieval Carnegie Mellon University February 8 th 2005.
Basic Concepts Software Architecture. What is Software Architecture? Definition: – A software architecture is the set of principal design decisions about.
Agile User Stories Enriched with Usability ANA M. MORENO AND AGUSTÍN YAGÜE UNIVERSIDAD POLITECNICA DE MADRID MADRID, SPAIN
Chapter 7 System models.
Abstract We present two Model Driven Engineering (MDE) tools, namely the Eclipse Modeling Framework (EMF) and Umple. We identify the structure and characteristic.
Illustrations and Answers for TDT4252 exam, June
Model Checking and Model-Based Design Bruce H. Krogh Carnegie Mellon University.
System Context and Domain Analysis Abbas Rasoolzadegan.
Software Architectural Assumptions in Software Architecting Chen Yang a,b, Peng Liang a, Paris Avgeriou b a State Key Lab of Software Engineering, Wuhan.
1 Proposal Of A Generic Visual Critic Authoring Framework By: Norhayati Mohd.Ali PhD Candidate [1 st Year : PhD] Supervisors: Prof.John Grundy & Prof.John.
Chapter 6 – Architectural Design Lecture 1 1Chapter 6 Architectural design.
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
27/3/2008 1/16 A FRAMEWORK FOR REQUIREMENTS ENGINEERING PROCESS DEVELOPMENT (FRERE) Dr. Li Jiang School of Computer Science The.
ICT EMMSAD’05 13/ Assessing Business Process Modeling Languages Using a Generic Quality Framework Anna Gunhild Nysetvold* John Krogstie *, § IDI,
Towards a Glossary of Activities in the Ontology Engineering Field Mari Carmen Suárez-Figueroa and Asunción Gómez-Pérez {mcsuarez, Ontology.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Formal Specification: a Roadmap Axel van Lamsweerde published on ICSE (International Conference on Software Engineering) Jing Ai 10/28/2003.
1 Interaccion 2008, IX Congreso de Interacción Persona-Ordenador, Albacete, 9-12 June 2008 ECOOL: Generation of Collaborative Multiplatform Scenarios with.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
CS223: Software Engineering Lecture 14: Architectural Patterns.
Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
+ Informatics 122 Software Design II Lecture 13 Emily Navarro Duplication of course material for any commercial purpose without the explicit written permission.
Enabling Access Control and Privacy through Ontology Mohammad M. R. Chowdhury Dr. Josef Noll UniK - University Graduate Center, Norway Dr. Juan Miguel.
Page 1 An Overview of The COTS-Aware Requirements Engineering and Software Architecting Project (CARE/SA) The University of Texas at Dallas Department.
Elaboration popo.
Iterative design and prototyping
Collaboration Spotting: Visualisation of LHCb process data
Introduction to Software Engineering
Chapter 5 Architectural Design.
AI Discovery Template IBM Cloud Architecture Center
Presentation transcript:

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 Rafael Capilla, Francisco Nava, Sandra Pérez Universidad Rey Juan Carlos de Madrid Juan C. Dueñas Universidad Politécnica de Madrid SPAIN

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 Motivation

Changes on existing teams. Traceability issues. Explain the rationale by which the decisions were made. Lost of Architectural Knowledge. Lack of specific notation. Existing Problems R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

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 Efforts R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

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 Work R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

The Decision View in SA A “new” architectural view for this viewpoint from 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 Position The Decision View DocumentationNotationProcess Current SA Views & Viewpoints Stakeholders

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 View

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 Architectural Patterns & Styles Product / System Architecture Software Architecture Reference Architecture Design Decisions Customization

Decision 1Decision 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 Products SW Requirements Trace

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy Requirements 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

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy Meta-model for the DD Process

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy The ADDSS Tool First prototype at:

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy The ADDSS Tool Stored list of patterns and styles o Pattern name o Pattern description o Image

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy The ADDSS Tool Software requirements added by the user

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy The ADDSS Tool Requirements are related to design decisions Dependencies between decisions can be defined

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy The ADDSS Tool Architecture construction seen as an iterative process Thumbnail images of architectures

R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy The ADDSS Tool Architecture documentation (3 docs) o Project (Architectures (Req, Iter, DD)) o Architecture (Req, Iterations, DD) o Iteration (DD, Req. for each DD)

Conlusions 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

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 Conference R. Capilla, F. Nava, S. Pérez, J.C. Dueñas, ICSR9-SHARK’06, Torino, Italy

A brief note for people interested in the tool  Please us before ( ) because we are changing the platform and improving some features  Temporarily use the following URL

Thank you for your time…