StateSoft SG17 Workshop March 14 2004 1 Janusz Dobrowolski StateSoft Inc, Prof. Bogdan Korel Illinois Institute of Technology.

Slides:



Advertisements
Similar presentations
You have been given a mission and a code. Use the code to complete the mission and you will save the world from obliteration…
Advertisements

Institute for Cyber Security
© 2005 by Prentice Hall Appendix 3 Object-Oriented Analysis and Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Chapter 1: The Database Environment
Distributed Systems Architectures
Chapter 7 System Models.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Chapter 1 The Study of Body Function Image PowerPoint
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 1 Embedded Computing.
1 Copyright © 2010, Elsevier Inc. All rights Reserved Fig 2.1 Chapter 2.
Service Oriented Architecture Reference Model
11 Copyright © 2005, Oracle. All rights reserved. Creating the Business Tier: Enterprise JavaBeans.
1 Copyright © 2005, Oracle. All rights reserved. Introducing the Java and Oracle Platforms.
Need for Specification Techniques in NGN Janusz StateSoft.org Copyrights StateSoft Inc., This information is protected by one or more.
Use Case Maps Daniel Amyot, Gunter Mussbacher Introduction to Use Case Maps.
UCM Path Traversal Daniel Amyot SG17, Geneva, March 5 th, 2002 UCM Scenarios and Path Traversal.
Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
My Alphabet Book abcdefghijklm nopqrstuvwxyz.
|epcc| NeSC Workshop Open Issues in Grid Scheduling Ali Anjomshoaa EPCC, University of Edinburgh Tuesday, 21 October 2003 Overview of a Grid Scheduling.
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
Construction process lasts until coding and testing is completed consists of design and implementation reasons for this phase –analysis model is not sufficiently.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design 1.
Week 2 The Object-Oriented Approach to Requirements
Configuration management
Chapter 5 – Enterprise Analysis
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 31 Slide 1 Service-centric Software Engineering.
© 2011 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary. Towards a Model-Based Characterization of Data and Services Integration Paul.
ABC Technology Project
Use Case Diagrams.
IONA Technologies Position Paper Constraints and Capabilities for Web Services
1 CS 391L: Machine Learning: Rule Learning Raymond J. Mooney University of Texas at Austin.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software processes 2.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management.
Lecture 6: Software Design (Part I)
Lecture 5: Requirements Engineering
Chapter 10 Software Testing
Executional Architecture
Chapter 5 Test Review Sections 5-1 through 5-4.
Lockheed Martin Aeronautics Company © 2001 Lockheed Martin Corporation F-16 Modular Mission Computer Application Software Achieving Cross-Platform Compatibility.
25 seconds left…...
Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques
Controlling as a Management Function
Copyright © 2003 by Prentice Hall Computers: Tools for an Information Age Chapter 15 Programming and Languages: Telling the Computer What to Do.
Chapter 10: The Traditional Approach to Design
Systems Analysis and Design in a Changing World, Fifth Edition
We will resume in: 25 Minutes.
A SMALL TRUTH TO MAKE LIFE 100%
Chapter 11 Describing Process Specifications and Structured Decisions
Chapter 11 Component-Level Design
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh.
1Model Driven Architecture – 3. März 2008 – Siegfried Nolte 1.UML – What is it and what is it good for ? 2.MDA – What is it and what is it good for ? 3.MDA.
Modeling Main issues: What do we want to build How do we write this down.
From Model-based to Model-driven Design of User Interfaces.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
Model Driven Architecture (MDA) Partha Kuchana. Agenda What is MDA Modeling Approaches MDA in a NutShell MDA Models SDLC MDA Models (an Example) MDA -
An Introduction to Software Architecture
October 15, 2003 Copyrights  StateSoft Inc., This information is protected by one or more patent or patent pending. 1 Janusz Dobrowolski StateSoft.
Use of VeUML Janusz StateSoft.org Dr. Jerzy StateSoft.org StateSoft Inc Prof. Bogdan iit.edu Illinois Institute of Technology.
A language to describe software texture in abstract design models and implementation.
MDA – Model Driven Architecture Olivier Riboux. Overview What is MDA? The Challenges MDA addresses Developing in the MDA Benefits / Conclusion Case Study:
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Evaluating Compuware OptimalJ as an MDA tool
Chapter 20 Object-Oriented Analysis and Design
CS310 Software Engineering Dr.Doaa Sami
An Introduction to Software Architecture
Presentation transcript:

StateSoft SG17 Workshop March Janusz Dobrowolski StateSoft Inc, Prof. Bogdan Korel Illinois Institute of Technology VeUML for Telecommunication Systems Copyrights StateSoft Inc., This information is protected by one or more patent or patent pending.

StateSoft SG17 Workshop March Generally Accepted Definition of an Architecture as the set of the most important elements of your system is not formal enough for the purpose of an Automatic Executable Generation and Automatic Validation. MetaArchitecture = MetaData + MetaBehavior * MetaData well understood: examples ASN.1, XML * MetaBehavior was not really well understood until VeUML MetaProtocol conforms to the rules of MetaArchitecture MetaArchitecture

StateSoft SG17 Workshop March Renaming the problem != Solution –Control –Behavior –Business Logic –Preconditions, Postconditions –Platform Independent Service Logic –WorkFlow –Policies –Complex Decision Tables VeUML provides solution to the above problems

StateSoft SG17 Workshop March UML Most Recognized Problem The weak area of UML is in the behavioral or dynamic part. From the 2003 book MDA Explained by A. Kleppe, J. Warmer, W. Bast The term weak, as understood by a prospective, user may relate to: Varying degree of automated code generated by existing tools Limited automated analysis (validation) Partially executable models VeUML proposed solution: 100% executable model generation and validation is possible for complex behavior modeling.

StateSoft SG17 Workshop March To_Program or To_Model Programming == Expense Modeling == Investment in your domain of expertise Product of Modeling: retargetable Platform Architectures, Protocols and Services

StateSoft SG17 Workshop March Things hard or impossible to achieve without MDA –Automatic Protocol, Platform and Services Generation –Automatic Validation –Services Feature Interactions Tracing –Construction of Toolkits aware of precise domain knowledge (models)

StateSoft SG17 Workshop March Current Telco Systems Architectures: limited potential for Reuse, Automatic Validation and Features Interaction Traceability Platform Independent Model (PIM)Platform Specific Model (PSM) Presentation Applications Services Platform Protocols NOT MUCH HERE !!!

StateSoft SG17 Workshop March VeUML- Based Systems Architectures optimized for Reuse and an Automatic Validation PIMPSMInheritance Concrete Presentation Concrete Applications Concrete Services Concrete Platform Concrete Protocol Abstract Presentation Abstract Applications Abstract Services Abstract Platform Abstract Protocol

StateSoft SG17 Workshop March Coupling Data and Behavior creates substantial validation scalability problems for Complex Systems State explosion Inefficient validator execution time Excessive validator memory requirements Validator complexity

StateSoft SG17 Workshop March Proposed solution: VeUML Separation of Class Data from a Class Behavior: A viable and proven approach

StateSoft SG17 Workshop March Components of a Class Model in UML Data Representation Behavior Representation Shared with other classes, mixed with data, incomplete, or missing Attributes: Data_1 Data_2 Data_3 CLASS Operations Methods ONLY defined: get_this() /* unclear when */ put_there() /* unclear when */

StateSoft SG17 Workshop March Components of every PIM Class in VeUML Data Representation Abstract Behavior Representation VFSM Component States Virtual Events Virtual Actions Behavior viewable as (STD, XML, Table, SDL) Attributes: Data_1 Data_2 Data_3 CLASS Methods: get_this() /* as per VFSM order*/ put_there() /* as per VFSM order */ Operations

StateSoft SG17 Workshop March VeUML – Value Added Proposition VeUML = MDA (UML) + VFSM VFSM Domain Independent Behavior Modeling and Validation VFSM (Virtual Finite State Machine) a key element of a System Complexity Problem Solution

StateSoft SG17 Workshop March VeUML Key Approach to Conquer Behavior Complexity : Separation of Domains Separation of: Service and Protocol Logic from Platform Class Data from Class Behavior Behavior from Concurrency - (Generalized Objects Factory Pattern) Events from Data Actions from Data Class behavior from the PSM Programming Language (e.g., C++, Java)

StateSoft SG17 Workshop March Key Elements of VeUML behavior notation: Virtual Environment: Virtual Events (independent from data) Virtual Actions (independent from data) States (contain no data)

StateSoft SG17 Workshop March EJB Stateless Session Bean (Enterprise and Telco Systems Convergence) Vchart / VeUML Notation Does-Not-Exist Method-Ready-Pool input / BMrequest1 / Action1 input / BMrequest2 / Action2 …….. input / BMrequestN / ActionN PIM PSM ejbCreate ejbRemove

StateSoft SG17 Workshop March VeUML Approach to Conquer Behavior Complexity VFSM Behavior Model for Every PIM Class Advantage: simplifies the behavior modeling Automatic Executable Generation for behavior model Advantage: increased reliability, performance and degree of automatically generated system Eliminating shortcomings of Round Trip Engineering for the behavior models Advantage: Executable always in synch with the models

StateSoft SG17 Workshop March VeUML Approach to Conquer Behavior Complexity Automatic Model Validation Advantage: Increased reliability and early defect detection Reuse and Portability of Behavior Models Advantage: True productivity gains Behavior Models Tied to Formal Models Advantage: Reliable and deterministic executable generation and validation

StateSoft SG17 Workshop March VeUML - the remedy for Protocol, Service and Platform Software Development Pain 1* Hybrid Moore/Mealy model enhanced by the use of Sets. ProblemVeUML Solution ComplexitySeparation of concerns – data from behavior; events from data, behavior from concurrency, actions from data etc.. CostAutomatic executable generation, automatic validation and simplified test. Resulted savings 45% (AT&T/Lucent Data) Portability to different platforms Service/Business Logic represents Interlingua - model and automatically generated executable are platform independent QualityLate defects reduction by 40% by exhaustive validation and early detection (AT&T/Lucent Data) PerformanceOptimized Predictable performance of VFSM executor

StateSoft SG17 Workshop March Fundamental VeUML System Decomposition Paradigm: PSM Inherits from PIM PIMPSM Domain Model VeUML System Linkage Domain Transformation Environmental Transformation Inheritance Design Environment

StateSoft SG17 Workshop March VeUML extensions: VeSTD, VeXML, VeMSC,VeSDL: * Immediate automatic representation conversion always possible: VeSTD VeMSC VeSDL VeXML * Consistency in OOA/OOD view: According to the OOA/OOD principle Architect/Designer/Implementer view of a system should be the same. In VeUML the MDA behavioral model is the only target executable representation Architect/Designer/Implementer work with.

StateSoft SG17 Workshop March VeSTD Example – Partial diagram Wait_to_brew entry / Turn_Boiler_Off, Turn_Indicator_Off; Turn_Warmer_Off; Close_Valve boilerEmpty / Turn_Boiler_Off; Turn_Indicator_On Empty_pot_removed startBrew & boilerNotEmpty & potEmpty / Close_valve; Turn_Boiler_On; Turn_Indicator_Off Brewing_pot_Empty warmerEmpty / Open_valve; Turn_Boiler_Off This Coffeemaker example is based in part on the book by Robert C. Martin, Object-Oriented C++ Applications Using The Booch Method, Prentice Hall, 1995.

StateSoft SG17 Workshop March VeSDL Example – Partial diagram Wait_to_Brew Empty_pot_removed startBrew & boilerNotEmpty & potEmpty Brewing_Pot_Empty Close_valve; Turn_Boiler_On; Turn_Indicator_Off startBrew & boilerNotEmpty & potEmpty Open_valve; Turn_Boiler_Off boilerEmpty Turn_Boiler_Off; Turn_Indicator_On

StateSoft SG17 Workshop March potNotEmpty / Close_valve; Turn_Boiler_On; Turn_warmer_On Empty_Pot_removed VeXML Example – Partial listing

StateSoft SG17 Workshop March VeMSC Classes Behavior Generation from System Model MSC In VeUML one can automatically synthesize target executable model from elementary representations. Other approaches often use elementary representation for high level simulation only. atm bank StateB1 StateA2 StateA3 StateA1 StateB3 ActionA2 StateB2 ActionB1 MSg1 MSg3 MSg2 ActionA1 ActionB2

StateSoft SG17 Workshop March VeUML extension concepts: VeSTD, VeXML, VeMSC, VeSDL. What do they represent as a Modeling Language Category? It may be: T E M L – (new term) Target Executable Modeling Language Interlingua – (IBM® term) where source model and executable are programming language independent.

StateSoft SG17 Workshop March Conclusions: Benefits of Separation of Domains in VeUML Behavior Modeling Automatic executable generation and validation for protocols and platforms of substantially higher complexity Significant degree of reuse due to separation of domains Potential for Services Features Interaction Resolution