A Model-Based Approach for AMF Configuration Generation Pejman Salehi, Pietro Colombo Abdelwahab Hamou-Lhadj, Ferhat Khendek Concordia University Department.

Slides:



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

UML an overview.
ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
IEC Substation Configuration Language and Its Impact on the Engineering of Distribution Substation Systems Notes Dr. Alexander Apostolov.
Object-Oriented Analysis and Design
File Systems and Databases
Introduction to Software Architecture. What is Software Architecture?  It is the body of methods and techniques that help us to manage the complexities.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Using Architecture Frameworks
Institute for Software Research©2001, University of California, Irvine Product-Line Architectures André van der Hoek Institute for Software Research University.
Course Instructor: Aisha Azeem
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
18 June, 2013 Katrin Heinze, Bundesbank CEN/WS XBRL CWA1: European Filing Rules Data Point Meta Model Data Point Methodology Guidance European Taxonomy.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Spectra Software Defined Radio Products Applying Model Driven Design, Generative Programming, and Agile Software Techniques to the SDR Domain OOPSLA '05.
Database Systems: Design, Implementation, and Management Ninth Edition
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Methodology and Tools for End-to-End SOA Configurations By: Fumiko satoh, Yuichi nakamura, Nirmal K. Mukhi, Michiaki Tatsubori, Kouichi ono.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Database Design - Lecture 1
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 12 Object-Oriented.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
1 CSBP430 – Database Systems Chapter 1: Databases and Database Users Mamoun Awad College of Information Technology United Arab Emirates University
An Introduction to Software Architecture
1 Tools for Commercial Component Assembly Francis Bordeleau, Zeligsoft/Carleton University Mark Vigder, National Research Council Canada.
Database System Concepts and 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.
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
5 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
Session 9 Component and Deployment. OOAD with UML / Session 9 / 2 of 17 Review State Diagrams represent the software entities in terms of their states.
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.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
TAL7011 – Lecture 4 UML for Architecture Modeling.
UML 2 Models for ODP Engineering/Technology Viewpoints – An Experiment - Daisuke Hashimoto Hiroshi.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Software Design: Principles, Process, and Concepts Getting Started with Design.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
MDD approach for the Design of Context-Aware Applications.
Application Ontology Manager for Hydra IST Ján Hreňo Martin Sarnovský Peter Kostelník TU Košice.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
1 Unified Modeling Language, Version 2.0 Chapter 2.
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.
OOD OO Design. OOD-2 OO Development Requirements Use case analysis OO Analysis –Models from the domain and application OO Design –Mapping of model.
1 Murthy Esakonu June 3rd, 2009 Shenzhen China OpenSAF Developer Days 2009 Writing First OpenSAF Application Session OpenSAF.
OpenSAF Technical Overview Mario Angelic Technical Co-Chair OpenSAF Project June 4 th, 2009.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
© 2009 Artisan Software Tools. All rights reserved. Testing Solutions with UML/SysML Andrew Stuart, Matthew Hause.
Introduction: Databases and Database Systems Lecture # 1 June 19,2012 National University of Computer and Emerging Sciences.
LECTURE 5 Nangwonvuma M/ Byansi D. Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending.
Model Checking Early Requirements Specifications in Tropos Presented by Chin-Yi Tsai.
Introduction to OpenSAF
Automatic Generation of AMF Compliant Configuration
SysML v2 Formalism: Requirements & Benefits
Introduction to J2EE Architecture
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Analysis models and design models
Architecture Description Languages
An Introduction to Software Architecture
Introduction To Distributed Systems
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Presentation transcript:

A Model-Based Approach for AMF Configuration Generation Pejman Salehi, Pietro Colombo Abdelwahab Hamou-Lhadj, Ferhat Khendek Concordia University Department of Electrical and Computer Engineering SAM 2010 Oslo Norway October 5 th

Outline  Introduction  Availability Management Framework (AMF) ▫AMF configurations  AMF configuration design  Model based configuration generation  Conclusion 2

Introduction (High Availability) AvailabilityDowntime per Year 90%36.5 days 99%3.7 days 99.9%9 hours 99.99%53 min %5 min %32 sec 3 High Availability: At least % (a.k.a. five nines) Availability is the probability that when a service is requested, it will be provided

Introduction (Availability Management)  Platform specific solution ▫HPMC/Serviceguard and SunCluster: detect nodes that fail and automatically failover application components to surviving nodes  Platform independent solution (Middleware) ▫Using the best practices from different platforms and domains ▫Portability 4

Service Availability Forum (SA Forum)  It is a consortium of industry-leading communications and computing companies working together to develop and publish high availability and management software interface specifications  It has defined a set of standardized services for high- availability ▫To enable portability and reusability across different platforms by shifting the availability management from applications to a dedicated middleware 5

Availability Management Framework (AMF)  AMF is the middleware part responsible for managing the availability of the services provided by an application ▫Managing the redundant components of the application by dynamically shifting workloads of faulty components to healthy components  An AMF configuration for a given application is a logical organization of resources for providing and protecting services 6

AMF Configuration (example) 7 APT-A SGT-A SUT-A CT-ACT-B SVCT-A CST-ACST-B Node 1Node2 App1 (APT-A) SG1 (SGT-A) SU2 (SUT-A) SU1 (SUT-A) Component3 (CT-A) Component4 ( CT-B) Component1 (CT-A) Component2 (CT-B) SI2 (SVCT-A) CSI3 (CST-A) CSI4 (CST-B) SI1 (SVCT-A) CSI1 (CST-A) CSI2 (CST-B) Runtime According to : Redundancy Model Component: is a logical entity that represent a set of resources (hardware and/or software) to AMF. Service unit: is a logical entity that represents a set of components that collaborate to provide a certain service. Service group: is a group of service units that provide service availability to a set of service instances Application: is a set of service groupsComponent service instance: is a abstraction of the service provided by the component. Service instance: is a abstraction of the service provided by the service unit. Node: Represents a computational resource for the deployment. AMF entity types: are data structures that define the common characteristics among multiple instances of entities.

AMF Configuration Design 8 Service Description Infrastructure Description AMF Configuration Generator AMF Configuration Software Description Protection Level Entity Types File (ETF) Configuration Requirements SUT-AA CT-AACT-BB SVCT-AA CST-AACST-BB depends A/S 23 SITemp1 #Sis = 1 Svct = SVCT-AA RM = 2N # Active SUs = 1 CSITemp1 #CSIs =2 CST = CST-AA CSITemp2 #CSIs =2 CST = CST-BB depends NodeTemp1 #Nodes = 2 Cluster1

AMF Configuration Design Challenges  The large number of entities and the numerous parameters (50 domain concepts and over 250 parameters)  The complexity of the concepts and their relationships defined in the AMF configuration domain (two level of abstraction)  The large number of constraints imposed by the domain (89 domain constraints)  The dynamic aspects of the AMF configurations  The ambiguity of the existing specifications in describing AMF configurations 9

AMF Configuration Design  The manual or ad hoc approach is extremely tedious and error prone  It is necessary to have a systematic approach to the design of the AMF configurations ▫Dealing with the problem at the proper level of abstraction ▫Comprehensively specify the domain specific artefacts ▫Thoroughly define the required processes 10

Model-Driven Paradigm  Focuses on models and abstractions which are closer to the domain concepts  Shifts from the level of details to a higher level of abstraction  Increases efficiency, serviceability, quality and flexibility 11

Model based AMF Configuration Generation 12 Modeling Framework for AMF Configuration Management Entity Type Files Profile AMF Profile Entity Type Files Model AMF Configuration Model > Configuration Requirements Profile Configuration Requirements Model > Model Based AMF Configuration Generation

Model based AMF Configuration Generation 13 ETF Type Selection AMF Entity Creation AMF Type Creation Entity Type Files Model Configuration Requirements Model Selected ETF Model + Configuration Requirements Model AMF Types Model + Configuration Requirements Model AMF Configuration Model ETF Profile CR Profile AMF Profile ETF Profile CR Profile AMF Profile CR Profile >

Selecting Software Entities 14 SITemp1 #Sis =2 Svct = SVCT-AA RM = 2N # Active SUs = 1 CSITemp1 #CSIs =1 CST = CST-AA CSITemp2 #CSIs =1 CST = CST-BB SUT-AA CT-AACT-BB SVCT-AA CST-AACST-BB SVCT-CC CST-CC CT-CC SVCT-BB depends CT-DD SUT-CC A/S A 23 Supporting the required services Capable of supporting the required Redundancy ModelCompliance with software capabilities and limitationsCompliance with software dependency Selecting the appropriate software entities capable of satisfying requirements

Model based AMF Configuration Generation 15 ETF Type Selection AMF Entity Creation AMF Type Creation Entity Type Files Model Configuration Requirements Model Selected ETF Model + Configuration Requirements Model AMF Types Model + Configuration Requirements Model AMF Configuration Model ETF Profile CR Profile AMF Profile ETF Profile CR Profile AMF Profile CR Profile >

Design of the Type level Configuration Entities 16 SITemp1 #Sis = 1 Svct = SVCT-AA RM = 2N # Active SUs = 1 CSITemp1 #CSIs =2 CST = CST-AA CSITemp2 #CSIs =2 CST = CST-BB SUT-AA CT-AACT-BB SVCT-AA CST-AACST-BB depends A/S 23 2N APT-A SGT-A SUT-A CT-ACT-B SVCT-A CST-ACST-B  Creating AMF Types from ETF Types  Creating AMF Types missing from ETF  Configuring the attributes  Multiple scenarios and extension point for quality attributes such as cost

Model based AMF Configuration Generation 17 ETF Type Selection AMF Entity Creation AMF Type Creation Entity Type Files Model Configuration Requirements Model Selected ETF Model + Configuration Requirements Model AMF Types Model + Configuration Requirements Model AMF Configuration Model ETF Profile CR Profile AMF Profile ETF Profile CR Profile AMF Profile CR Profile >

Design of the instance level Configuration Entities 18 Node 1Node2 App1 (APT-A) SG1 (SGT-A) SU2 (SUT-A) SU1 (SUT-A) Component3 (CT-A) Component4 ( CT-B) Component1 (CT-A) Component2 (CT-B) SI2 (SVCT-A) CSI3 (CST-A) CSI4 (CST-B) SI1 (SVCT-A) CSI1 (CST-A) CSI2 (CST-B) SITemp1 #Sis = 1 Svct = SVCT-AA RM = 2N # Active SUs = 1 CSITemp1 #CSIs =2 CST = CST-AA CSITemp2 #CSIs =2 CST = CST-BB depends  Creating AMF Service Entities  Creating AMF Service Provider Entities  Create the Structure of the Configuration  Creating the Deployment Entities  Configuring the attributes NodeTemp1 #Nodes = 2 Cluster1 APT-A SGT-A SUT-A CT-ACT-B SVCT-A CST-ACST-B

Model based AMF Configuration Generation (Advantages)  Increases the level of abstraction at which the configuration designer has to specify configuration properties, abstracting away unnecessary details  Using declarative style transformation rules abstract from the operational steps  The model-driven configuration generation process is based on our newly created UML profile and can be embedded in any UML CASE tool  The approach is based on standards, namely UML, OCL, and ATL  Extendibility of the approach 19

Questions? 20

21

22

Entity Types File (ETF)  ETF is an SA Forum standard used to capture the description of the software  ETF represents: ▫The comprehensive description of the software’s components ▫The capabilities of the software ▫The services that can be supported by components ▫The limitation of the software components ▫Software dependencies and compatibility options ▫How the software’s components can be combined  ETF is provided by the software developer 23 SUT-AA CT-AACT-BB SVCT-AA CST-AACST-BB depends A/S 23