Les Diablerets - 07/07/2005 - M.Risoldi - SMV UniGe A 3-Levels approach to GUI development for complex control systems Matteo Risoldi.

Slides:



Advertisements
Similar presentations
Pat Langley Computational Learning Laboratory Center for the Study of Language and Information Stanford University, Stanford, California
Advertisements

Language Technologies Reality and Promise in AKT Yorick Wilks and Fabio Ciravegna Department of Computer Science, University of Sheffield.
Crucial Patterns in Service- Oriented Architecture Jaroslav Král, Michal Žemlička Charles University, Prague.
Breakout session B questions. Research directions/areas Multi-modal perception cognition and interaction Learning, adaptation and imitation Design and.
Lecture # 2 : Process Models
© Chinese University, CSE Dept. Software Engineering / Software Engineering Topic 1: Software Engineering: A Preview Your Name: ____________________.
Work Breakdown Structures. Purpose The WBS shows different levels within the product hierarchy. For Government program managers levels 1-3 are of prime.
A SLA evaluation Methodology in Service Oriented Architectures V.Casola, A.Mazzeo, N.Mazzocca, M.Rak University of Naples “Federico II”, Italy Second University.
1 The University of Jordan Mechatronics Engineering Department PLC: Programmable Logical Controller.
Prof. Ing. M. Dassisti Enterprise modelling for networked enterprise: interaction aspects for a training organisation 16th IFAC World Congress, Prague.
Prototyping. Horizontal Prototyping Description of Horizontal Prototyping A Horizontal, or User Interface, Prototype is a model of the outer shell of.
A FRAMEWORK BASED ON WEB SERVICES ORCHESTRATION FOR BIOINFORMATICS WORKFLOW MANAGEMENT Laboratory for Bioinformatics (LBI), Institute of Computing (IC)
CS1001 Lecture 26. Overview Artificial Intelligence Artificial Intelligence Database Systems Database Systems.
M. Risoldi – SMV Group - Université de Genève 1 A 3-level approach for Control Systems GUI modeling with COOPN M. Risoldi.
An framework for model-driven product design and development using Modelica Adrian Pop, Olof Johansson, Peter Fritzson Programming Environments Laboratory.
1 / 31 CS 425/625 Software Engineering User Interface Design Based on Chapter 15 of the textbook [SE-6] Ian Sommerville, Software Engineering, 6 th Ed.,
Modeling: where to start A state of the art and other amenities M. Risoldi - Oct. 11, 2005 A state of the art and other amenities M. Risoldi - Oct. 11,
BATIC 3 S Project BATIC 3 S Building Adaptive Three-dimensional Interfaces for Critical Complex Control Systems haute école valaisanne e i g école d’ingénieur.
Architectural Design Principles. Outline  Architectural level of design The design of the system in terms of components and connectors and their arrangements.
Principles and Methods
System Level Logical Level Visual Level The System level.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Chapter 10: Architectural Design
Matthew J Mattia CSC  Cumbersome Code  Consistent/Predictable design (GUEPs #5, CD’s #10)  Display “proper” amount of information  Including.
User Interface Design Chapter 11. Objectives  Understand several fundamental user interface (UI) design principles.  Understand the process of UI design.
Object-Oriented Analysis and Design
Automatic Software Testing Tool for Computer Networks ARD Presentation Adi Shachar Yaniv Cohen Dudi Patimer
Chapter 9 Elements of Systems Design
Dr. Ken Hoganson, © August 2014 Programming in R STAT8030 Programming in R COURSE NOTES 1: Hoganson Programming Languages.
© Drexel University Software Engineering Research Group (SERG) 1 Based on the paper by Philippe Kruchten from Rational Software.
PLC introduction1 Discrete Event Control Concept Representation DEC controller design DEC controller implementation.
PLC: Programmable Logical Controller
Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.
Automatic Software Testing Tool for Computer Networks ADD Presentation Dudi Patimer Adi Shachar Yaniv Cohen
An Introduction to Design Patterns. Introduction Promote reuse. Use the experiences of software developers. A shared library/lingo used by developers.
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Information System Development Courses Figure: ISD Course Structure.
Framework for the Development and Testing of Dependable and Safety-Critical Systems IKTA 065/ Supported by the Information and Communication.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
Content The system development life cycle
1 Introduction to Software Engineering Lecture 1.
Illustrations and Answers for TDT4252 exam, June
KMS: A Distributed Hypermedia System for Managing Knowledge in Organizations Robert M Akscyn, Donald L McCracken & Elise Yoder.
Performance evaluation of component-based software systems Seminar of Component Engineering course Rofideh hadighi 7 Jan 2010.
Model-Driven Engineering of Behaviors in User Interfaces Efrem Mbaki & Jean Vanderdonckt Université catholique de Louvain (UCL) Louvain School of Management.
1 Computing Challenges for the Square Kilometre Array Mathai Joseph & Harrick Vin Tata Research Development & Design Centre Pune, India CHEP Mumbai 16.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
1 CMPT 275 High Level Design Phase Modularization.
Microsoft Visual Basic 2010: Reloaded Fourth Edition Overview An Introduction to Programming.
Software Design Process
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
Murielle Florins 1, Francisco Montero Simarro 2, Jean Vanderdonckt 1, Benjamin Michotte 1 1 Université catholique de Louvain 2 Universidad de Castilla-la-Mancha.
Course: COMS-E6125 Professor: Gail E. Kaiser Student: Shanghao Li (sl2967)
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
SEESCOASEESCOA SEESCOA Meeting Activities of LUC 9 May 2003.
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
Université Toulouse I 1 CADUI' June FUNDP Namur Implementation Techniques for Petri Net Based Specifications of Human-Computer Dialogues.
5. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Describe the activities of the requirements discipline  Describe the difference.
1 Chapter : Architecture & User Interface Design.
Vertical Integration Across Biological Scales A New Framework for the Systematic Integration of Models in Systems Biology University College London CoMPLEX.
© 2009 Artisan Software Tools. All rights reserved. Testing Solutions with UML/SysML Andrew Stuart, Matthew Hause.
9 Systems Analysis and Design in a Changing World, Fifth Edition.
Model Checking Early Requirements Specifications in Tropos Presented by Chin-Yi Tsai.
Recent trends in estimation methodologies
PLC: Programmable Logical Controller
Software Design Methodology
Analysis models and design models
An Introduction to Software Architecture
Chapter 11 user support.
Presentation transcript:

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe A 3-Levels approach to GUI development for complex control systems Matteo Risoldi

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Outline Part I: introduction –Description of the project –Control Systems and GUIs Part II: the project –The 3 levels approach –A case study Conclusion

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Part I: introduction

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Goal of the project Building a methodology and techniques for model-based development of GUIs for complex control systems

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Control System: definition A computer system which automatically, or manually through an interface, controls a process or mechanical device by sensing the need to vary the output. Examples: Vehicles (airplanes, trains, cars…) Industrial machines Physics detectors …

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Control Systems GUIs Typical tasks: Monitor all components Send commands Receive feedback Provide different levels of detail / hierarchy

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Control Systems GUIs Interfaces to Control Systems can be complex: number of components hierarchy spatial navigation adaptation challenges to GUI design }

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Part II: the project

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe The 3 level approach - overview System model Logical model Visual model System description Database, Requirements… GUI generation GUI Model of the physical system components hierarchy communication Model of the behaviour of the GUI objects. Their visual aspect is not yet modeled. Model of the visual aspect of the GUI objects. Based on one or more repositories of GUI widgets.

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Model generation process System model Logical model Visual model GUI description Control Systems Experts Language used: CO-OPN (Concurrent Object-Oriented Petri Nets) - Formal - Based on Algebraic Data Types - Executable 3D GUI Widget repositories 2D Button Rules System Behavioural description System Physical description Engineers

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe The 3 levels in CO-OPN

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe The lightbulb box example There is a box with 2 lightbulbs on it. The box has a port to send switch commands to the box (affects both bulbs) or to individual bulbs. Box and bulbs can give feedback on their status (on/off). The interface must be able to control the box and the bulbs via buttons. It has to represent their status (on/off/unknown)

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe System Level Logical Level Visual Level The System level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe LightBulb System Level Logical Level Visual Level Pattern: an object that has an internal 2 values, non- numeric state, with one command to invert it, and gives feedback on it.

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe LightBulb + Context System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe 2 LightBulbs, 1 Box: modeling the system System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Problem: how to send commands/get feedback in the hierarchy? System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Adding command sending System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Adding feedback System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe The Logical Level System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Logical LightBulb System Level Logical Level Visual Level Pattern: a control that allows to send a non-parametric command, receives the state of the component and gives feedback on a 3 states value (non-numeric).

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Logical LightBulb + Context System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe System+Logical Levels: interaction System Level Logical Level Visual Level +

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe The Visual Level System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Visual widgets models System Level Logical Level Visual Level “Sends non- parametric command” “Show n-states, non-numeric value”

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Visual widgets + contexts System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Visual control for 1 Lightbulb System Level Logical Level Visual Level

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe 3 Levels interacting System Level Logical Level Visual Level + +

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe A case study CMS Silicon Strip Tracker control system at CERN ~ objects, organized in a hierarchy System description will be present in a DB (now XML) Interface to be (probably) realized in Java3D + PVSS Currently making a smaller complexity prototype First representation of geometry in 3D

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Conclusion Modeling a control system and its interface Using CO-OPN in a layered structure Model under development “Rules” to be better defined “CommCheck” mechanism to be verified Case study underway Future collaborations: EIG & HEV for more studies on 3-Dimensional and adaptive interfaces

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Thank you Questions?

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Coffee break!

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe

Classic GUI development GUI development is typically HAND-CODED This is not satisfactory if we want to: Verify the interface with respect to expected functionality Scale to complex systems Test multiple different visual choices Requirements ProgrammerResult

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Model-based GUI development We want to have a model for the GUI on which a prototype is built automatically Requirements ResultModelGeneration Multi-prototype VerificationScalability

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe The CMS Silicon Strip Tracker control system About components Hierarchically structured Requirements for an easy navigation Strict requirements for reliability Adaptation of the GUI

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Model Translation System model Logical model Visual model GUI generation GUI 3D GUI Widget repositories An engine will couple the behaviour from the model and the widgets of the chosen visual paradigm, and assemble them into a GUI prototype.

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Prototype evaluation System model Logical model Visual model GUI generation GUI The prototype is tested and the model can be refined, End userSW Engineer Test ReportRefine

Les Diablerets - 07/07/ M.Risoldi - SMV UniGe Prototype evaluation System model Logical model Visual model GUI generation The prototype is tested and the model can be refined, or a visual paradigm can be chosen. End userSW Engineer Test Report Refine GUI Test Choose