Presented by: Thabet Kacem Spring 2010. Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.

Slides:



Advertisements
Similar presentations
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Advertisements

From Model-based to Model-driven Design of User Interfaces.
Software Architecture Frameworks A Family of Implementations Nikunj Mehta Computer Science Department University of Southern California Los Angeles, CA.
Architecture Representation
Overview of Prism-MW CS 795 / SWE 699 Sam Malek Spring 2010.
ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
Object-Oriented Software Development CS 3331 Fall 2009.
Alternative Software Life Cycle Models By Edward R. Corner vol. 2, chapter 8, pp Presented by: Gleyner Garden EEL6883 Software Engineering II.
Creating Domain-Specific Development Infrastructures George Edwards Computer Science Department University of Southern California.
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Architecture-driven Modeling and Analysis By David Garlan and Bradley Schmerl Presented by Charita Feldman.
1/18 CS 693/793 Lecture 09 Special Topics in Domain Specific Languages CS 693/793-1C Spring 2004 Mo, We, Fr 10:10 – 11:00 CH 430.
Π-Method: A Model-Driven Formal Method for Architecture- Centric Software Engineering By Flavio Oquendo Presented by: Sajith Wickramaratne.
Institute For Software Integrated Systems Vanderbilt University Applications of Model Integrated Computing to The Synchronous Language Signal Ethan Jackson.
A Model-Driven Framework for Architectural Evaluation of Mobile Software Systems George Edwards Dr. Nenad Medvidovic Center.
1 Software Architecture: a Roadmap David Garlen Roshanak Roshandel Yulong Liu.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
XTEAM: Automated Synthesis of Domain-Specific Code Generators George Edwards Introduction to the Center for Systems and Software Engineering.
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
Software Engineering Tools and Methods Presented by: Mohammad Enamur Rashid( ) Mohammad Rashim Uddin( ) Masud Ur Rahman( )
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Software Architecture premaster course 1.  Israa Mosatafa Islam  Neveen Adel Mohamed  Omnia Ibrahim Ahmed  Dr Hany Ammar 2.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
February Semantion Privately owned, founded in 2000 First commercial implementation of OASIS ebXML Registry and Repository.
Bridging the chasm between MDE and the world of compilation Nondini Das 1.
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Chapter 8 Architecture Analysis. 8 – Architecture Analysis 8.1 Analysis Techniques 8.2 Quantitative Analysis  Performance Views  Performance.
Software Models (Cont.) 9/22/2015ICS 413 – Software Engineering1 -Component-based software engineering -Formal Development Model.
Architecture-Based Runtime Software Evolution Peyman Oreizy, Nenad Medvidovic & Richard N. Taylor.
International Conference on Software Engineering 2007
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
Key Challenges for Modeling Language Creation by Demonstration Hyun Cho, Jeff Gray Department of Computer Science University of Alabama Jules White Bradley.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
Model-Driven Engineering for Development-Time QoS Validation of Component-based Software Systems James Hill, Sumant Tambe & Aniruddha Gokhale Vanderbilt.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
The roots of innovation Future and Emerging Technologies (FET) Future and Emerging Technologies (FET) The roots of innovation Proactive initiative on:
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
1 Introduction to Software Engineering Lecture 1.
Slide title In CAPITALS 50 pt Slide subtitle 32 pt Model based development for the RUNES component middleware platform Gabor Batori
Class 5 Architecture-Based Self-Healing Systems David Garlan Carnegie Mellon University.
1 5 Nov 2002 Risto Pohjonen, Juha-Pekka Tolvanen MetaCase Consulting AUTOMATED PRODUCTION OF FAMILY MEMBERS: LESSONS LEARNED.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
Performance evaluation of component-based software systems Seminar of Component Engineering course Rofideh hadighi 7 Jan 2010.
Toward a Semantic Anchoring Infrastructure for Domain-Specific Modeling Languages Kai Chen Janos Sztipanovits Sandeep Neema Matthew Emerson Sherif Abdelwahed.
MILAN: Technical Overview October 2, 2002 Akos Ledeczi MILAN Workshop Institute for Software Integrated.
Architecture Analysis Techniques
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
Software Deployment and Mobility. Introduction Deployment is the placing of software on the hardware where it is supposed to run. Redeployment / migration.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
16/11/ Semantic Web Services Language Requirements Presenter: Emilia Cimpian
Application Ontology Manager for Hydra IST Ján Hreňo Martin Sarnovský Peter Kostelník TU Košice.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Improving System Availability in Distributed Environments Sam Malek with Marija Mikic-Rakic Nels.
AUTOMATIC GENERATION OF MODEL TRAVERSALS FROM METAMODEL DEFINITIONS Authors: Tomaž Lukman, Marjan Mernik, Zekai Demirezen, Barrett Bryant, Jeff Gray ACM.
Introduction to Software Engineering 1. Software Engineering Failures – Complexity – Change 2. What is Software Engineering? – Using engineering approaches.
George Edwards Computer Science Department Center for Systems and Software Engineering University of Southern California
Aspect-oriented Code Generation Approaches Abid Mehmood & Dayang N. A. Jawawi Department of Software Engineering Faculty of Computer Science and Information.
Web Ontology Language for Service (OWL-S)
Embedded Systems Hardware/ Software Co-Development
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
Model-Driven Analysis Frameworks for Embedded Systems
The Extensible Tool-chain for Evaluation of Architectural Models
The Extensible Tool-chain for Evaluation of Architectural Models
Market-based Dynamic Task Allocation in Mobile Surveillance Systems
Automated Analysis and Code Generation for Domain-Specific Models
Presentation transcript:

Presented by: Thabet Kacem Spring 2010

Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion Conclusion Future Work

Contributions Address the shortcoming of ADLs Propose a new conception of ADL within MDE paradigm Approach combines extensible modeling language within a framework enabling implementation of customized dynamic analysis at architectural level Approach was implemented in XTEAM which helped to accommodate both new modeling features and new architectural styles

Introduction Emergence of highly distributed, resource constrained and mobile computing environments Consequence: Complexity of software development increased difficulties to cope with network latency, security & unpredictable network topology Efforts went toward raising the level of abstraction for describing large scale software systems beyond OO concept ADL emerged to provide the architect with a higher level of architectural constructs

Introduction ADL has many problems: Focus on structural elements Rely on rigid formalisms Many crucial aspects of a system cannot be expressed MDE emerged as an approach to distributed software systems combining DSMLs with model transformers, analyzers and generators

Proposed Approach The approach combines extensible modeling languages with a model interpreter framework for rapid implementation of dynamic analysis at arch level Analysis provides information about the behavior & cross-cutting properties that help an architect to compare architectural alternatives and weigh tradeoffs XTEAM: Provides ADL extension for mobile systems Implements a set of dynamic analysis on top of the model interpreter framework

Proposed Approach Two requirements to success: Extensibility of the language to accommodate new domain-specific concepts Flexibility of tools to allow rapid implementation of new architectural analysis techniques

Related work GME: GME: tool implementing MDE paradigm that enables the creation of DSML and other related models

Related work MILAN: MILAN: compromises DSML for embedded systems based on a dataflow representation & a set of models to generate executable specs for simulation engines Automates the synthesis of software implementation for system models It provides highly accurate simulations Drawback: Drawback: suitable for signal processing systems but not efficient for large scale distributed architectures

Related work WML &CUTS: WML &CUTS: it’s a DSML that enables dynamic analysis of component-based architectures WML creates models that are transformed into XML- based inputs for CUTS Drawbacks: Drawbacks: WML performs syntactic translation not semantic The analysis is implemented in the emulator engine not the model interpreter It does not capture component behavior

Related work xADL: xADL: can accommodate new domain specific concepts. It is defined by XML schemas. Core Schema: standard constructs to all ADLs Extension Schema: new modeling elements that are written by domain experts Drawback: Drawback: xADL toolset is semantically agnostic then it cannot be extended to enforce semantic consistency

Related Work FSP: FSP: a modeling notation for capturing the behavior of software architectural constructs Allows construction of composite behavior Drawback: Drawback: It lacks research concerning the execution in heterogeneous environment, deployment and extensibility

Reconception of ADLs Key shortcomings for arch. Based approaches to software modeling: Inflexible notation with a narrow vocabulary Supporting tools that enable only a limited set of analysis Assumption: Assumption: Shortcomings can be addressed by representing ADL via domain specific language DSML and performing arch. Analysis via model interpreter

Reconception of ADLs Avoid the creation of ADL from scratch and use ADL composition and enhancement These concepts are present in XTEAM Model Interpreter framework allows the architect to implement custom analysis techniques without knowing details of semantic mapping Use the ‘hook’ methods implemented by architect where objects are arch. constructs defined in ADL extensions

Reconception of ADLs Two types of analysis techniques: Static: Static: relies on the formalism underlying models to provide info about system properties or possible errors Problem: Difficulty that system implementation must match the model so that the analysis can be relevant Dynamic: Dynamic: explores the behavior of the model-based arch. representations at runtime by executing them It is more useful in comparing high level design possibilities early in the development cycle and don’t rely on the experience of the architect

XTEAM Tool Chain XTEAM ADL: compose a structural ADL (xADL) with a behavioral ADL (FSP) Creates execution architecture representation Adds language extension to capture system change in order to help Model Interpreter to implement architectural analysis Semantic mapping is done by the Model Interpreter

XTEAM Tool Chain

Domain Specific ADL extension: Domain Specific ADL extension: Example: Energy consumption

XTEAM Tool Chain Mobile Application testbed used to illustrate the energy consumption:

XTEAM Tool Chain The energy consumption simulation generator allows to do some measurements that can be plotted in function of time

XTEAM Tool Chain Many factors affect energy consumption: Assignment of components to host or deployment architecture Determining a dynamic redeployment strategy when consumption values differ from expected values Many other ADL extensions exist in XTEAM: End to end latency Memory utilization Component reliability

Discussion Three cases where the approach is relevant Providing design rationale Weighing tradeoffs Understanding compositions of Off-the-shelf components Are these three cases enough to judge that the approach is reliable ? Is implementing the approach in XTEAM sufficient to say the approach is correct ?

Conclusion The paper presented a software arch-based approach to modeling & analysis of distributed architecture that leverage the domain specific extensibility provided by model-driven engineering Approach addressed shortcomings of ADL Deployed & evaluated on XTEAM Considered as an improvement over traditional ADL and other MDE tools

Future Work Use XTEAM in the context of real world security application in embedded & mobile devices Integrate XTEAM with Desi and Prism-MW Determine the exact class of analysis technologies