TU Graz – Institute for Software Technology 1 Iulia Nica SOFSEM, Špindlerův Mlýn, 25.01.2012 SiMoL The SiMoL Modeling Language for Simulation and (Re-)Configuration.

Slides:



Advertisements
Similar presentations
Computer Systems & Architecture Lesson 2 4. Achieving Qualities.
Advertisements

Hardware/ Software Partitioning 2011 年 12 月 09 日 Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics: © Alexandra Nolte, Gesine Marwedel, 2003 These.
Programming Languages Marjan Sirjani 2 2. Language Design Issues Design to Run efficiently : early languages Easy to write correctly : new languages.
ISBN Chapter 3 Describing Syntax and Semantics.
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 05/06 Universität Dortmund Hardware/Software Codesign.
Client Side Programming Using Java Applet Outcomes: You will be expected to know: – Java Applets and HTML file; –bytecode and platform independent programs;
SSP Re-hosting System Development: CLBM Overview and Module Recognition SSP Team Department of ECE Stevens Institute of Technology Presented by Hongbing.
Software Testing and Quality Assurance
1 Draft of a Matchmaking Service Chuang liu. 2 Matchmaking Service Matchmaking Service is a service to help service providers to advertising their service.
Slides prepared by Rose Williams, Binghamton University Chapter 13 Interfaces and Inner Classes.
An framework for model-driven product design and development using Modelica Adrian Pop, Olof Johansson, Peter Fritzson Programming Environments Laboratory.
Programming Languages Structure
HAS. Patterns The use of patterns is essentially the reuse of well established good ideas. A pattern is a named well understood good solution to a common.
1 CSC-3324: Chapter 4 Title: What is a requirement? Mandatory reading: Sommerville 6, 7 th ed., Chap.: 7.
November 18, 2004 Embedded System Design Flow Arkadeb Ghosal Alessandro Pinto Daniele Gasperini Alberto Sangiovanni-Vincentelli
Outline Chapter 1 Hardware, Software, Programming, Web surfing, … Chapter Goals –Describe the layers of a computer system –Describe the concept.
1 Dan Quinlan, Markus Schordan, Qing Yi Center for Applied Scientific Computing Lawrence Livermore National Laboratory Semantic-Driven Parallelization.
Describing Syntax and Semantics
1 ES 314 Advanced Programming Lec 2 Sept 3 Goals: Complete the discussion of problem Review of C++ Object-oriented design Arrays and pointers.
Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department.
Universität Dortmund  P. Marwedel, Univ. Dortmund, Informatik 12, 2003 Hardware/software partitioning  Functionality to be implemented in software.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Ranga Rodrigo. Class is central to object oriented programming.
Shilpa Seth.  Centralized System Centralized System  Client Server System Client Server System  Parallel System Parallel System.
STRATEGIES INVOLVED IN REMOTE COMPUTATION
Chapter 6: Integrity and Security Thomas Nikl 19 October, 2004 CS157B.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Ontology Development Kenneth Baclawski Northeastern University Harvard Medical School.
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
MathCore Engineering AB Experts in Modeling & Simulation WTC.
JavaScript, Fourth Edition
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Semantic Network as Continuous System Technical University of Košice doc. Ing. Kristína Machová, PhD. Ing. Stanislav Dvorščák WIKT 2010.
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
Unit-1 Introduction Prepared by: Prof. Harish I Rathod
Knowledge Representation of Statistic Domain For CBR Application Supervisor : Dr. Aslina Saad Dr. Mashitoh Hashim PM Dr. Nor Hasbiah Ubaidullah.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
Roles in Software Development using Domain Specific Modelling Languages Holger Krahn, Bernhard Rumpe, Steven Völkel Software Systems Engineering Technische.
Submodule construction in logics 1 Gregor v. Bochmann, University of Ottawa Using First-Order Logic to Reason about Submodule Construction Gregor v. Bochmann.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Ontology-Based Computing Kenneth Baclawski Northeastern University and Jarg.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Copyright ©2004 Virtusa Corporation | CONFIDENTIAL Business Modeling with UML Virtusa Training Group (2005) Trainer: Ojitha Kumanayaka Duration: 1 hours.
1. 2 Preface In the time since the 1986 edition of this book, the world of compiler design has changed significantly 3.
Chapter 3 Part II Describing Syntax and Semantics.
Introduction to IT Lecture – 01.
1 Run-Time Software Engineering An approach for Embedded and Ubiquitous Computing Environments Sooyong Park Sogang University South.
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
An XML-based schema for stochastic programs H.I. Gassmann, R. Fourer, J. Ma, R.K. Martin EURO XXI, June 2006, Reykjavik.
Specification of Policies for Web Service Negotiations Steffen Lamparter and Sudhir Agarwal Semantic Web and Policy Workshop Galway, November 7 th University.
16/11/ Semantic Web Services Language Requirements Presenter: Emilia Cimpian
Methods of Software Development Karl Lieberherr Spring 2007.
Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn.
Graphical Design Environment for a Reconfigurable Processor IAmE Abstract The Field Programmable Processor Array (FPPA) is a new reconfigurable architecture.
1 Compiler Construction (CS-636) Muhammad Bilal Bashir UIIT, Rawalpindi.
System Monitoring using Constraint Checking as part of Model Based System Management 2007 Monitoring using Constraint Checking as part.
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
Engineering Optimization Most engineering design involves using optimization software Minimizes or maximizes a merit function Applies functional constraints.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Chapter – 8 Software Tools.
1 Get All Answers Get All Answers. Contents History of Android Android Fragmentation The Role of Google Features and Architecture Android Software Development.
SysML and Modelica Integration Working Group Meeting 3/11/09 Peter Fritzson Wladimir Schamai.
Application of Design Patterns to Geometric Decompositions V. Balaji, Thomas L. Clune, Robert W. Numrich and Brice T. Womack.
SysML v2 Formalism: Requirements & Benefits
GC211Data Structure Lecture2 Sara Alhajjam.
UNIT 3 CHAPTER 1 LESSON 4 Using Simple Commands.
Outline Anatomy of a Class Encapsulation Anatomy of a Method
Presented By: Darlene Banta
Presentation transcript:

TU Graz – Institute for Software Technology 1 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL The SiMoL Modeling Language for Simulation and (Re-)Configuration Iulia Nica and Franz Wotawa Technische Universität Graz, Institute for Software Technology

TU Graz – Institute for Software Technology 2 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL Index  Motivation  SiMoL Definition  SiMoL Syntax  Semantics of SiMoL  An Example  SiMoL in Practice  Conclusions and Future Work

TU Graz – Institute for Software Technology 3 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL Motivation  Simulation and configuration play an important role in industry  For configuration: currently, a wide range of knowledge representation paradigms is used  For simulation: we recall Matlab/Simulink and Modelica  Our scope is: combine the two different directions in one language - SiMoL

TU Graz – Institute for Software Technology 4 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL Motivation (2)  Why a new modeling language? (1) We want an easy to learn and use language  the existing configuration languages are not (2) We want a language that can be used for both purposes  neither Matlab/Simulink or Modelica can be used SiMoL – a declarative object-oriented language, designed with multiple inheritance and which allows for stating constraints between variables.

TU Graz – Institute for Software Technology 5 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL SiMoL Syntax  SiMoL uses a Java-like syntax  Beside the basic data types like integer and boolean, SiMoL makes use of component instances  SiMoL offers support for using units of measurement  Another feature of the language is the initialization of attributes with integer valued ranges

TU Graz – Institute for Software Technology 6 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL SiMoL Syntax (2)  We mention the built-in functions min, max, sum, product  The taxonomy relations are represented through the inheritance mechanism  The implementation of SiMoL is based on the Minion constraint solver

TU Graz – Institute for Software Technology 7 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL SiMoL Syntax (3)  A program written in SiMoL contains basically 3 sections: a knowledge base declaration section: kbase X1Model; an import declaration section: import X0Model.*; a component definition section, that contains: a.the attribute declaration block b.the constraints block component X1{ attribute int a1,a2; constraints{ a1={4,6}; a2={4..6}; … }

TU Graz – Institute for Software Technology 8 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL Semantics of SiMoL  Here we rely on mathematical equations  We map every statement to a mathematical equation and combine these equations for a component, taking care of component inheritance and component instances (1)  There can be more than one instance of a component  the variables used in the constraints of an instrance have to be renamed  we assume the replace function (3)

TU Graz – Institute for Software Technology 9 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL Semantics of SiMoL (2) (1) (2) (3) (4)

TU Graz – Institute for Software Technology 10 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL Semantics of SiMoL (3)  A constraint Ci:  Cattr_val: attribute-equals-value/s constraint  Cattr_attr: attribute-equals-attribute constraint  Cnum: numeric constraint  Ccond: conditional constraint if (Cx is satisfied) Cy must be satisfied else Cz must be satisfied  Cexist: existence constraint exist(at_least(NR)| at_most(NR)| NR, C, ATTR=VALUE)

TU Graz – Institute for Software Technology 11 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL An Example  A (simplified) mobile network cell with embedded machine- to-machine communication functionality

TU Graz – Institute for Software Technology 12 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL An Example (2)

TU Graz – Institute for Software Technology 13 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL SiMoL in practice  We present two scenarios from the same domain  The cell serves a given number of smart meters, which communicate via a given number of channels and there are new desired requirements, that must be fulfilled.  First Scenario:  We consider the possibility to inactivate specific smart meters, if the constraints stated over their attributes are no longer satisfied.

TU Graz – Institute for Software Technology 14 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL SiMoL in practice (2)  The generated MINION model for the case with 51 smart meters contains 270 constraints and the running time for computing the minimal cardinality reconfiguration (3, in our case) is 234 ms.  Second Scenario:  We assume the meters should be all active (not changeable), but the channels may be active, permit- ting data communication, or inactive ( blocked for transmission).

TU Graz – Institute for Software Technology 15 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL SiMoL in practice (3)  Second Scenario:  At least one channel is available for transmitting data, whereas the rest of the channels must be activated, if a constraint in the MINION model is violated.  The MINION model, generated for the case with 300 smart meters - contains 690 constraints and the running time for computing the minimal cardinality reconfiguration (1, in this case) is 218 ms.

TU Graz – Institute for Software Technology 16 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL  In our implementation, the simulation task consists in checking whether the current configuration (the system modeled in SiMoL) is consistent.  We may get two possible outcomes: system consistency – the simuation was successful or system inconsistency – there exist no values in the attributes domains that can satisfy all the component requirements.  Currently, we use the SiMoL modeling approach in our simulation tool, designed with both desktop and web user interfaces.  Future work includes optimizing the SiMoL syntax, the MINION models and providing a complete configuration algorithm. Conclusions and future work

TU Graz – Institute for Software Technology 17 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL Thank You! Q & A