POSAML: A Visual Language for Middleware Provisioning Dimple Kaul, Arundhati Kogekar, Aniruddha Gokhale ISIS, Dept.

Slides:



Advertisements
Similar presentations
Composable Metamodeling Environment Akos Ledeczi Institute for Software Integrated Systems Vanderbilt University
Advertisements

Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
High-confidence Software for Cyber Physical Systems Drexel University Philadephia, PA Vanderbilt University Nashville, Tennessee Aniruddha Gokhale *, Sherif.
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
Azad Madni Professor Director, SAE Program Viterbi School of Engineering Platform-based Engineering: Rapid, Risk-mitigated Development.
1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.
A Model-Driven Framework for Architectural Evaluation of Mobile Software Systems George Edwards Dr. Nenad Medvidovic Center.
DARPA Dr. Douglas C. Schmidt DARPA/ITO Towards Adaptive & Reflective Middleware for Combat Systems Wednesday, June 24, 2015 Authorized.
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc.
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
QoS-enabled middleware by Saltanat Mashirova. Distributed applications Distributed applications have distinctly different characteristics than conventional.
CoSMIC: An MDA Tool Suite for Application Deployment and Configuration Tao Lu, Emre Turkay Aniruddha Gokhale, Douglas Schmidt
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
© Drexel University Software Engineering Research Group (SERG) 1 Based on the paper by Philippe Kruchten from Rational Software.
Model Driven Techniques for Evaluating QoS of Middleware Configurations Arvind S. Krishna, Emre Turkay Andy Gokhale, & Douglas C. Schmidt Institute for.
Levels of Independence in Aspect-Oriented Modeling Workshop on Model-driven Approaches to Middleware Applications Development June 17, 2003 Jeff Gray,
An Introduction to Software Architecture
Introduction to MDA (Model Driven Architecture) CYT.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
RTAS MDES Workshop May Model-Based Integration of Reusable Component-Based Avionics Systems David Sharp Technical Fellow Phantom Works, Open System.
A Semantic Framework for DSLs Zekai Demirezen Advisor: Dr. Jeff Gray Doctoral Symposium OOPSLA 2009 Software Composition and Modeling Lab This work funded.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
Generative Middleware Specializations for Distributed, Real-time and Embedded Systems Institute for Software Integrated Systems Dept of EECS, Vanderbilt.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
R R R 1 Frameworks III Practical Issues. R R R 2 How to use Application Frameworks Application developed with Framework has 3 parts: –framework –concrete.
Replicators: Transformations to Address Model Scalability Jeff Gray, Yuehua Lin, Jing Zhang, Steve Nordstrom, Aniruddha Gokhale, Sandeep Neema, and Swapna.
HPEC’02 Workshop September 24-26, 2002, MIT Lincoln Labs Applying Model-Integrated Computing & DRE Middleware to High- Performance Embedded Computing Applications.
Model-Driven Engineering for Development-Time QoS Validation of Component-based Software Systems James Hill, Sumant Tambe & Aniruddha Gokhale Vanderbilt.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Performance Analysis of the Reactor Pattern in Network Services Aniruddha Gokhale Asst. Professor of.
Slide title In CAPITALS 50 pt Slide subtitle 32 pt Model based development for the RUNES component middleware platform Gabor Batori
Dr. Douglas C. Schmidt, Dr. Aniruddha S. Gokhale, Bala Natarajan, Jeff Parsons, Tao Lu, Boris Kolpackov, Krishnakumar Balasubramanian, Arvind Krishna,
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
DataReader 2 Enhancing Security in Ultra-Large Scale (ULS) Systems using Domain- specific Modeling Joe Hoffert, Akshay Dabholkar, Aniruddha Gokhale, and.
Investigating Survivability Strategies for Ultra-Large Scale (ULS) Systems Vanderbilt University Nashville, Tennessee Institute for Software Integrated.
Introduction Better Faster Cheaper (pick any two) On-going issue that continues to motivate research in software engineering Applications: –continue to.
CoSMIC: Tool-suite for Weaving Deployment & Configuration Crosscutting Concerns of CCM-based DRE Systems Dr. Aniruddha Gokhale (PI) Institute for Software.
Response Time Analysis of a Middleware Demultiplexing Pattern for Network Services Aniruddha Gokhale
Architecture-Driven Context-Specific Middleware Specializations for Distributed Real-time and Embedded Systems Akshay Dabholkar, and Aniruddha Gokhale.
MILAN: Technical Overview October 2, 2002 Akos Ledeczi MILAN Workshop Institute for Software Integrated.
Aniruddha Gokhale and Jeff Gray Institute for Software Integrated Systems (ISIS) Vanderbilt University Software Composition and Modeling Laboratory University.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
NetQoPE: A Middleware-based Netowork QoS Provisioning Engine for Distributed Real-time and Embedded Systems Jaiganesh Balasubramanian
Component-based System Integration via (Meta)Model Composition
A QoS Policy Modeling Language for Publish/Subscribe Middleware Platforms A QoS Policy Modeling Language for Publish/Subscribe Middleware Platforms Joe.
A Model-Based Approach for AMF Configuration Generation Pejman Salehi, Pietro Colombo Abdelwahab Hamou-Lhadj, Ferhat Khendek Concordia University Department.
Towards a Holistic Approach for Integrating Middleware with Software Product Lines Research Institute for Software Integrated Systems Dept of EECS, Vanderbilt.
Topic 2: The Role of Open Standards, Open-Source Development, & Different Development Models & Processes (on Industrializing Software) ARO Workshop Outbrief,
Model Transformations Require Formal Semantics Yu Sun 1, Zekai Demirezen 1, Tomaz Lukman 2, Marjan Mernik 3, Jeff Gray 1 1 Department of Computer and Information.
POSAML: A Visual Language for Middleware Provisioning Dimple Kaul, Arundhati Kogekar, Aniruddha Gokhale ISIS, Dept.
Model Transformation for End-Users
Enhancing Security in Enterprise Distributed Real-time and Embedded Systems using Domain-specific Modeling Akshay Dabholkar, Joe Hoffert, Aniruddha Gokale,
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
A Model Transformation Approach to Automated Model Construction and Evolution Yuehua Lin Jeff Gray Department of.
Towards A QoS Modeling and Modularization Framework for Component-based Systems Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale Amogh Kavimandan (Presenter)
A Vision for Integration of Embedded System Properties Via a Model-Component-Aspect System Architecture Christopher D. Gill Department.
Basic Concepts of Software Architecture. What is Software Architecture? Definition: – A software system’s architecture is the set of principal design.
CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems Aniruddha Gokhale, Tao Lu, Emre Turkay, Balachandran Natarajan, Jeff Parsons,
CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems Tao Lu, Aniruddha Gokhale, Emre Turkay, Balachandran Natarajan, Jeff Parsons,
Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale
An Approach to Middleware Specialization for Cyber Physical Systems
Arvind S. Krishna, Aniruddha Gokhale and Douglas C. Schmidt
Vanderbilt University
Applying Domain-Specific Modeling Languages to Develop DRE Systems
Tools for Composing and Deploying Grid Middleware Web Services
The Extensible Tool-chain for Evaluation of Architectural Models
An Introduction to Software Architecture
Automated Analysis and Code Generation for Domain-Specific Models
Presentation transcript:

POSAML: A Visual Language for Middleware Provisioning Dimple Kaul, Arundhati Kogekar, Aniruddha Gokhale ISIS, Dept. of EECS Vanderbilt University Nashville, Tennessee Swapna Gokhale Asst. Professor of CSE, University of Connecticut, Storrs, CT Jeff Gray Asst. Professor of CIS Univ. of Alabama at Birmingham Birmingham, AL Presented at HICSS VISA 07 Work supported by NSF CSR-SMA CNS , CNS , CNS , CNS

2 Provisioning Issues in Distributed Systems Next generation distributed systems –Exhibit service-oriented architectural style –Hosted on heterogeneous software and hardware infrastructure –Must satisfy tradeoffs between multiple (often conflicting) QoS demands e.g., secure, real-time, reliable, etc. –Must satisfy QoS demands in face of fluctuating and/or insufficient resources e.g., mobile ad hoc networks (MANETs) Appropriate middleware provisioning that host these systems is a key challenge

3 Middleware Structure & Functionality Standards-based COTS middleware helps: Control end-to-end resources & QoS Leverage hardware & software technology advances Evolve to new environments & requirements Provide a wide array of reusable, off- the-shelf developer-oriented services Problem Manually provisioning middleware is tedious, error- prone, & costly over system lifecycles There are layers of middleware, just like there are layers of networking protocols Need an intuitive, visual and declarative mechanism for middleware provisioning.

4 Visual Provisioning Tool Requirements Must account for Per-Block Configuration Variability –Incurred due to variations in implementations & configurations for a patterns- based building block –E.g., single threaded versus thread-pool based reactor implementation dimension that crosscuts the event demultiplexing strategy (e.g., select, poll, WaitForMultipleObject s Criteria 1: Intuitive management of middleware variabilities that impact performance in significant ways Tool must account for Compositional Variability –Incurred due to variations in the compositions of mw building blocks –Need to address compatibility in the compositions and individual configurations –Dictated by needs of the domain –E.g., Leader-Follower makes no sense in a single threaded Reactor

5 Visual Provisioning Tool Requirements Separation of concerns –Unified framework must separate the provisioning and validating stages –Different actors should be able to use the visual aids in different stages of the application lifecycle Criteria 2: Unified framework for middleware provisioning and QoS validation Unified framework for provisioning and validating –Provisioning decisions should be coupled with QoS validation –Decisions at one stage drive decisions at the next stage Criteria 3: Visual separation of concerns within the Unified Framework workload system

6 MDE Tool Developer (Metamodeler) Application Developers (Modelers) Technology Enabler: Generic Modeling Environment “Write Code That Writes Code That Writes Code!” Decorator GModel GMeta CORE Metamodel XML Paradigm Definition Storage Options … DB #n DB #1 XML … UML / OCL COM XML ODBC Constraint Manager Browser Translator(s) Add-On(s) GME Editor GME Architecture Goal: Correct-by-construction distributed systems

7 Model Interpretation Model Interpreters Models Modeling Environment Application Domain App 1 App 2 App 3 Application Evolution Environment Evolution Metamodeling Interface Metamodel Definition Meta-Level Translation Model Builder Model Integrated Computing (MIC) with GME MetamodelMetamodel ModelModel InterpreterInterpreter void CComponent::InvokeEx(CBuilder &buil der,CBuilderObject *focus, CBui lderObjectList &selected, long param) { CString DMSRoot = ""; DMSRoot = SelectFolder("Please Select DMS Root Folder:"); if (DMSRoot != "") { DMSRulePath = DMSRoot + RULESPATH + "Rules\\"; MSRuleApplierPath = DMSRoot + RULESPATH + "RuleApplier\\"; AfxMessageBox("DMSRulePath = " + DMSRulePath, MB_OK); CString OEPRoot = ""; OEPRoot = SelectFolder("Please Selec DEFINE INTERPRET The Generic Modeling Environment (GME) adopts the MIC approach and provides a plug-in mechanism for extension.

8 Example DSMLs (not UML)

9 POSAML: A Visual Provisioning Tool POSAML – GME-based modeling language for middleware composition Provides a structural composition model Captures variability in blocks Generative programming capabilities to synthesize different artifacts e.g., benchmarking, configuration, performance modeling. Metamodel for the POSA pattern language Feature modeling metamodel in POSAML

10 POSAML Unified Framework Unified visual view enables modeling the middleware composition as a set of interacting patterns Individual patterns can be visually configured E.g., reactor and acceptor-connector patterns POSAML conforms to the POSA pattern language enabling error-free composition of building blocks.

11 POSAML Separation of Concerns POSAML separates pattern feature modeling from pattern benchmarking Feature model allows selecting features of each pattern E.g., reactor and acceptor- connector shown with concurrency models Benchmarking view separated from feature view E.g., selecting parameters for elements of the pattern Views are unified under the hood

12 POSAML Availability POSAML incorporated within CoSMIC CoSMIC project focuses on separation of deployment and configuration concerns Model-driven generative programming framework Complementary technology to component middleware

13 Future Work Short term goals Generalization and decomposition of models of Proactor and Active Object patterns. Empirical validation of the models using the ACE/TAO framework (CORBA). Development of methodologies to compose models mirroring the composition of patterns. Long term goals Build reusable libraries of models Build higher level reusable frameworks (e.g., for fault tolerance) Identify reusable patterns of performance models for middleware configurations Extend generators to multiple middleware platforms

14 Future Trend: Aspect Modeling Challenge: Crosscutting Models Base models become constrained to capture a particular design Concerns that are related to some global property are dispersed across the model Solution: Model Weaving C-SAW is an aspect-oriented weaver at the modeling level Implemented as a GME plug-in to assist in the rapid adaptation and evolution of models by weaving crosscutting changes into models.

15 Conclusion Significant challenges exist in provisioning middleware solutions that involve QoS concerns Typical provisioning performed through low-level mechanisms that are not reusable and have many accidental complexities Such mechanisms are error prone, tedious and time consuming. This limits the ability to explore design alternatives amid possible solution spaces. Visual modeling can assist in the following criteria to assist in addressing the key challenges Accounting for variability across a range of middleware technologies Need for a unified framework Separation of application concerns from provisioning and benchmarking concerns POSAML is a domain-specific modeling language that has associated tools to address these challenges