Instrument Control Systems Seminar 2014, 20 th -24 th October 2014 Workstation Software Framework 2 (WSF2)

Slides:



Advertisements
Similar presentations
Component Development for the Component Description Framework (CDF) Training Dr.-Ing. Ulrich Dinger.
Advertisements

Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
IAAnalyzer: Towards a Model-Driven Modeling and Analysis Framework for C ONNECT(ors) Massimo Tivoli, University of L’Aquila (UNIVAQ)
Software Development Lifecycle & Release Management Scottie Cheng.
Java Basic Training HaiNH - FQA. Agenda Introduction to Java Java Programming Environment Language Fundamental Object Oriented Programming with Java.
Chapter 22 UML Tooks and UML as Blueprint Model-Driven Architecture (MDA) Object-Constraint Language (OCL)
Web Applications Development Using Coldbox Platform Eddie Johnston.
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
1 SWE Introduction to Software Engineering Lecture 22 – Architectural Design (Chapter 13)
Programming Languages Structure
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
1 CS/CPE 426 Senior Projects Chapter 21: State Machines Chapter 22:Advanced State Machines [Arlow and Neustadt 2005] March 24, 2009.
Software Engineering I Object-Oriented Design Software Design Refinement Using Design Patterns Instructor: Dr. Hany H. Ammar Dept. of Computer Science.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc.
Chapter 1 Program Design
© 2008 IBM Corporation Behavioral Models for Software Development Andrei Kirshin, Dolev Dotan, Alan Hartman January 2008.
Computer Programming How Can You Create Your Own Software? Chapter 13.
Complex Security Policies Dave Andersen Advanced Operating Systems Georgia State University.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
INTRODUCTION TO WEB DATABASE PROGRAMMING
PROGRAMMING LANGUAGES The Study of Programming Languages.
October 30, 2008 Extensible Workflow Management for Simmod ESUG32, Frankfurt, Oct 30, 2008 Alexander Scharnweber (DLR) October 30, 2008 Slide 1 > Extensible.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
© Janice Regan, CMPT 128, Jan CMPT 128 Introduction to Computing Science for Engineering Students Creating a program.
Software Design Refinement Using Design Patterns Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Chapter 1 Introduction Dr. Frank Lee. 1.1 Why Study Compiler? To write more efficient code in a high-level language To provide solid foundation in parsing.
Mihir Daptardar Software Engineering 577b Center for Systems and Software Engineering (CSSE) Viterbi School of Engineering 1.
Tool for Sketching Statecharts (TSS) Shahla Almasri COMP 762B: Modelling and Simulation Based Design April 4 th, 2005 April 4 th,
1 Module Objective & Outline Module Objective: After completing this Module, you will be able to, appreciate java as a programming language, write java.
Presentation: SOAP/WS in a distributed object framework, Application Servers & AXIS SOAP.
SIMPLE PROBLEM SOLVING in Java: a Problem Set Framework Viera K. Proulx Richard Rasala Jason Jay Rodrigues CCSCNE 2002 Conference.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
P. Duhoux European Southern Observatory July 2002 TSW Tutorial LSF - the LCU Server Framework easy creation of LCU applications with Object Oriented approach.
Design of an Integrated Robot Simulator for Learning Applications Brendon Wilson April 15th, 1999.
March 19th 2007 TANGO collaboration 1 POGO-7 Pascal Verdier ESRF- Hamburg - 25 th of October 2010 A Short History of Pogo A Short History of Pogo New Technology.
Copyright © 2006 The McGraw-Hill Companies, Inc. Programming Languages 2nd edition Tucker and Noonan Chapter 1 Overview A good programming language is.
Software Quality Assurance and Testing Fazal Rehman Shamil.
Software Development Introduction
CSC 520 – Advanced Object Oriented Programming, Fall, 2010 Thursday, October 14 Week 7, UML Diagrams
Secure Search Engine Ivan Zhou Xinyi Dong. Project Overview  The Secure Search Engine project is a search engine that utilizes special modules to test.
ESO - G.Chiozzi ESO Instrumentation Software Workshop VLT Control Software …and beyond.
Witchcraft MDA Oreon Consulting Inc Model Driven Design Advantages of an assembly line approach vs handcrafting Cartridges & Extensions.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Instrument Control Systems Seminar 2014, 20 th -24 th October 2014 Instrument Control Systems 2014 J.Knudstrup, ESO/DoE/CSE/CINS 3GTCCD – Detector Control.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
Introduction to Programming 1 1 2Introduction to Java.
1 Budapest University of Technology and Economics Department of Measurement and Information Systems Budapest University of Technology and Economics Fault.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
Generic State Machine engine (GSMe) L. Andolfato |
M&CML: A Monitoring & Control Specification Modeling Language
Model-Driven Approach
CST 1101 Problem Solving Using Computers
Software Design Refinement Using Design Patterns
An Overview of Requirements Engineering Tools and Methodologies*
Deploy and get started with Microsoft Advanced Threat Analytics
Chapter ? Quality Assessment
Modern Systems Analysis and Design Third Edition
Instructor: Dr. Hany H. Ammar
CMPE419 Mobile Application Development
Graduation Project Kick-off presentation - SET
Behavioral Models for Software Development
Automation with Gwen Introduction.
JADE - Java Agent DEvelopment framework -
Programming Languages 2nd edition Tucker and Noonan
CMPE419 Mobile Application Development
Modern Systems Analysis and Design Third Edition
Presentation transcript:

Instrument Control Systems Seminar 2014, 20 th -24 th October 2014 Workstation Software Framework 2 (WSF2)

Instrument Control System Seminar, 20 th -24 th October 2014 o Introduction to WSF o WSF2  New Requirements  New Technologies  Demo o WSF1 vs. WSF2 o Model Driven Engineering Outline

Instrument Control System Seminar, 20 th -24 th October 2014 Workstation Software Framework (WSF) framework to build event driven applications running on WS and based on Statecharts. Created in 2003 for PRIMA (VLTI) Later used in APE, ISS, NGC, etc. Concept similar to LSF: LCU Server Framework Introduction

Instrument Control System Seminar, 20 th -24 th October 2014 Basic Principle Developer creates Model and implements Actions WSF takes care of the State Machine Logic

Instrument Control System Seminar, 20 th -24 th October ) Interpreted Statecharts New Requirements 3) Platform Independent 1) Well defined Semantics

Instrument Control System Seminar, 20 th -24 th October 2014 StateChartXML (SCXML) SCXML Engines: Java - Apache Commons SCXML C++ - Qt SCXML Engine, scxml4cpp Python – PySCXML JavaScript - SCION

Instrument Control System Seminar, 20 th -24 th October 2014 COMODO SW Platform Independent SW Platform Dependent

Instrument Control System Seminar, 20 th -24 th October 2014 WSF2: COMODO for VLTSW 1) "modName" WS module is created containing directory structure and a simple Statechart model. 2) Statechart model is modified. 3) "modName" C++ and SCXML files are generated. 4) C++ code for Actions, Do- Activities, data structures is developed. Only two commands: wsf2Create, wsf2Config

Instrument Control System Seminar, 20 th -24 th October 2014 WSF1 vs. WSF2 FeaturesWSF1WSF2 State Machine Compiled (based on State Design Pattern) Interpreted (based on SCXML) StandardW3C SCXML recommendation Supported Statecharts Features Entry, Exit, Trans. Actions Composite States Orthogonal States History State Initial pseudo-state Internal and Self Transitions Entry, Exit, Trans. Actions Composite States Orthogonal States History State Initial/final pseudo-state Internal and Self Transitions Do-Activities (multi-threading) Guards Footprint.h = 60,.C = 53, 308K.h = 21,.C = 18, 59K Modeling Tools RationalROSE, MagicDrawAny Tool supporting EMF XMI (MagicDraw, Papyrus, etc.) Text Format CustomSCXML

Instrument Control System Seminar, 20 th -24 th October 2014 To develop applications that: - Cannot be built with the INS framework - Are reactive or event-driven - Are single or multi-threaded - Can be rapid-prototyped and simulated - Can be formally analyzed (model checker) - Can be “easily“ ported - Can change runtime - Can be properly documented When to use WSF2?

Instrument Control System Seminar, 20 th -24 th October 2014 Nothing is for free … Developer needs to: - Learn how to model event driven applications using Statecharts (abstraction, syntax, and semantic) - Learn to use a Modeling Tool and/or SCXML (WSF2 doesn’t solve multithreading problems)

Instrument Control System Seminar, 20 th -24 th October 2014 VLT - NGC multi-threaded prototype VLT - Technical Detector Control SW for COTS Camera ACS - Event Subscriber RapidPrototype - Local Supervisor Prototype JPFSC - Star Separator VCM JPFSC - NASA/JPL SMAP Fault Protection To be done: VLT - NAOMI VLT - Porting of WSF1 applications Examples

Instrument Control System Seminar, 20 th -24 th October 2014 Model Driven Engineering

Instrument Control System Seminar, 20 th -24 th October 2014 Availability: - Installed in VLTSW starting from VLTSW Or retrieve from SVN and install it using pkginBuild wsf2BUILD Documentation: - Requirement Document: VLT-SPE-ESO Design Document: VLT-SPE-ESO User Manual: VLT-MAN-ESO Papers: - “A Platform Independent Framework for Statecharts Code Generation”, ICALEPCS “Formal Validation of Fault Management Design Solutions”, ASE “Experiences in Applying Model Driven Engineering to the Telescope and Instrument Control System Domain”, MODELS2014 Questions?

Instrument Control System Seminar, 20 th -24 th October 2014 BACKUP SLIDES

Instrument Control System Seminar, 20 th -24 th October 2014 WSF2: COMODO for VLTSW VLT PlatformPlatform Independent

Instrument Control System Seminar, 20 th -24 th October 2014 COMODO Architecture 1) Input: - Model - TargetPlatform 3) Verify Model is complete and unambiguous 4) Xpand Templates generates the artifacts using Xtend functions 2) One workflow per platform + SCXML 5) Xtend functions to help navigating the model

Instrument Control System Seminar, 20 th -24 th October 2014 StateChartXML (SCXML) SCXML Engines: Java - Apache Commons SCXML C++ - Qt SCXML Engine, scxml4cpp Python – PySCXML JavaScript - SCION