SaveUML System design. System overview Possible...

Slides:



Advertisements
Similar presentations
Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Advertisements

An ASN.1 Profile Anders Ek
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel.
Metamodel Global view. Some sources Object Modeling with UML: Advanced Modeling, Karin Palmkvist, Bran Selic, and Jos Warmer, March 2000.
Unified Modeling Language
Jiannong IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 1 Architecture Description of Distributed Systems using UML and XML.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc.
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
UML Packages & Related Diagrams
SEG4110 – Advanced Software Design and Reengineering
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Slide 1 Wolfram Höpken RMSIG Reference Model Special Interest Group Second RMSIG Workshop Methodology and Process Wolfram Höpken.
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. Towards Translating between XML and WSML based on mappings between.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Model-Driven Web Feature Service A Way Towards Enhanced Semantic Interoperability Peter Staub, ETH Zurich FOSS4G 2007 – Victoria B.C., September 26, 2007.
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.
Workshop 16: An upward shift in abstraction leads to a corresponding increase in productivity. In the past this has occurred when programming languages.
1 Devon M. Simmonds Metadata & The UML Metamodel SLIDES include some from tvarious sources including: (1)
XML A web enabled data description language 4/22/2001 By Mark Lawson & Edward Ryan L’Herault.
ISO/IEC CD and WD : Core Model and Model Mapping ISO/IEC JTC1/SC32/WG September 2005, Toronto SC32/WG2 Japan (Kanrikogaku Ltd) Masaharu.
Uml is made similar by the presence of four common mechanisms that apply consistently throughout the language. After constructing or developing the architecture.
Selected Topics in Software Engineering - Distributed Software Development.
Modelling Class T16: Conceptual Modelling – Architecture Image from
A language to describe software texture in abstract design models and implementation.
UML What Is the UML? The Unified Modeling Language (UML) is the successor to the wave of object- oriented analysis and design (OOA&D) methods.
XASTRO-2 Overview Presentation CCSDS SAWG Athens Meeting 12 th April 2005.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Web Applications Extensions (WAE) for UML UML helps manage the complexity by encouraging us to think of things in terms of objects and encapsulate properties.
Dr. Darius Silingas | No Magic, Inc. Domain-Specific Profiles for Your UML Tool Building DSL Environments with MagicDraw UML.
Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine In Proceedings of the 2005 ACM Symposium on.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Week III  Recap from Last Week Review Classes Review Domain Model for EU-Bid & EU-Lease Aggregation Example (Reservation) Attribute Properties.
UML MARTE Time Model for Spirit IP-XACT Aoste Project INRIA Sophia-Antipolis.
Ch- 8. Class Diagrams Class diagrams are the most common diagram found in modeling object- oriented systems. Class diagrams are important not only for.
Slide 1 Wolfram Höpken RMSIG Reference Model Special Interest Group Third RMSIG Workshop Basic Modeling Concepts Wolfram Höpken.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
Metamodeling and Modeling language for Systems Biology SB-UML Magali ROUX-ROUQUIE CNRS, Paris.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Modeling the ODP Computational Viewpoint with UML 2.0: The Templeman Library Example José Raúl Romero, Antonio Vallecillo Universidad de Málaga, Spain.
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
Martin Kruliš by Martin Kruliš (v1.1)1.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Method – Notation 8 Hours.
Elaboration popo.
SysML 2.0 Formalism Requirements and Potential Language Architectures
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Business Process Measures
XML in Web Technologies
Daniel Amyot and Jun Biao Yan
The Extensible Tool-chain for Evaluation of Architectural Models
Implementing Language Extensions with Model Transformations
UML profiles.
Software Design Lecture : 14.
Copyright 2007 Oxford Consulting, Ltd
DSM Language Design Group discussion.
Copyright © 2015, 2012, 2009 Elsevier Inc. All rights reserved.
Implementing Language Extensions with Model Transformations
Software Architecture & Design
Presentation transcript:

SaveUML System design

System overview Possible...

What is SaveCCM? How does UML fit in? Component modeling language –embedded systems, security –CBSE –well formalised, Schema, IDE Motivation for introducing UML –Things that UML brings along Widely accepted (universal) standard Huge possibilities and highly customizable Component diagram (similarities with Save) Formal connection of UML and SaveCCM –UML extensibility mechanisms

Customizing UML - I Model vs. metamodel –UML = Modeling language –MOF = Metamodeling language –UML is built on MOF Why not create a SaveCCM metamodel?

UML conceptual overview Customizing UML - II UML Metamodel

Customizing UML - III UML Profile ( finaly ) –Concept of the profile –Basic building elements Stereotype –new symbols with tagged values and constraints included Tagged values –Name=value pairs, applicable to all model elements –SaveCCM_PortType = {DATA, TRIGGER} –SaveCCM_PortDirection = {IN, OUT} Constraints –Object Constraint Language (formal specification language) –UML types, arithmetic, logical, conditional, relational expression evaluation –(mostly) for modeling Save component behaviour (timed automatons), read-compute-write model

Method for defining the UML profile 1.Defining the SaveCCM metamodel (abstract /concrete) (mostly done in the SaveCCM language reference) Fundamental language constructs Relationships Constraints Concrete syntax (visual, textual) Semantics ONLY STATIC! 2. Mapping the SaveCCM to the UML profile For each domain concept : Select a base UML metaclass with the closest semantics Verify that there is no conflicting constraints Identify need for possible specialization of the base UML metaclass SaveUML deliverables SaveUML Profile Reference document SaveUML Profile Implementation ? Transformation library ? Structural elements: Component Port Assembly Composite comp.? Connections?

Implementing the profile in Omondo 1.Creating a UML profile diagram (Omondo Profile designer) UML Profile diagram Create stereotypes and apply to metaclasses 2.Applying the stereotypes in a model (Omondo model designer) Include the profile List of available stereotypes

SaveUML Profile results 2.SaveUML Profile implementation Customized standards conformance Can be imported in Omondo for further modeling 3.SaveUML model files Customized standards conformance Well described schema (reverse eng. or direct) Endpoint for transformation SaveUML deliverables SaveUML Profile Reference document SaveUML Profile Implementation Transformation library ? 1.SaveUML Profile Reference Identified subset of the UML metamodel with well-formedness rules (OCL) Standard elements (beyond UML elements – elements of profile) Description of usage in natural language What is the current status?

Part 2 - Transformation library vs.

Transformation library (option 1) XSLT is used to transform one XML to the other Our library uses existing XSLT processor (Xalan) Transformation mapping is defined in XSL files

Transformation is done with Java code 1.Library uses existin XML parser to read input XML file(s), and creates a model of the diagram in memory 2.Based on that model, creates a transformed model 3.Writes down the new model to XML file(s) Transformation library (option 2)

Transformation library In both cases, the library implements the same, well defined, interface, so the resto of the project remains the same Option 1 –Standard way of transforming XML –XML of our files is very complex, so the code could get messy –We are not completely familiar with it, unexpected problems could set us back Option 2 –Less chance of unexpected promlems –Hard-codeing the transformation is Java makes it harder to modify later –This code could get messy to, so which one is better?

The end (not quite ) Questions?