October 2007Potential thesis projects1 Peter Gorm Larsen Professor (ingeniørdocent) at Engineering College of Aarhus.

Slides:



Advertisements
Similar presentations
Component-Based Software Engineering Main issues: assemble systems out of (reusable) components compatibility of components.
Advertisements

Model Driven Generative Programming Reza Azimi February 6, 2003 ECE1770: Trends in Middleware Systems.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software processes 2.
IAAnalyzer: Towards a Model-Driven Modeling and Analysis Framework for C ONNECT(ors) Massimo Tivoli, University of L’Aquila (UNIVAQ)
Elevator Simulator DSL Project Presented by Miguel Garzón and Stéphane Leblanc 1.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel.
Introduction Main technologies: core written in Java embedded Jython interpreter code managed using the Eclipse plugin framework client program uses Eclipse.
LIFE CYCLE MODELS FORMAL TRANSFORMATION
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
SableCC SableCC is developed by professors and graduate students at McGill University and is open source (licensed under the Apache License, Version 2.0)‏
Software Engineering COMP 201
Interpreter for ZOOM-I Andrew Deren Initial Presentation - SE690 5/30/03
August Two courses on VDM++ for Embedded Systems: Learning by Doing Professor Peter Gorm Larsen Engineering College of Aarhus Computer Technology.
February 2008Potential thesis projects1 Peter Gorm Larsen Professor (ingeniørdocent) at Engineering College of Aarhus.
CASE Tools CIS 376 Bruce R. Maxim UM-Dearborn. Prerequisites to Software Tool Use Collection of useful tools that help in every step of building a product.
Slide 1 Sterling Software Peter Sharer Sterling Software.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
March 2007Tools for VDM in Industry1 Peter Gorm Larsen.
Using UML Models for the Performance Analysis of Network Systems Nico de Wet and Pieter Kritzinger Department of Computer Science University of Cape Town.
Version Enterprise Architect Redefines Modeling in 2006 An Agile and Scalable modeling solution Provides Full Lifecycle.
Professional Informatics & Quality Assurance Software Lifecycle Manager „Tools that are more a help than a hindrance”
- Chaitanya Krishna Pappala Enterprise Architect- a tool for Business process modelling.
 ETL: Extract Transformation and Load  Term is used to describe data migration or data conversion process  ETL may be part of the business process repeated.
Xactium xDSLs Run Models Not Code Tony Clark
Copyright © Siemens AG All rights reserved. Essential Criteria on MBT to Ensure Quality of Software in Industry PVR Murthy Andreas Ulrich Siemens.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Introduction to MDA (Model Driven Architecture) CYT.
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
Proof Carrying Code Zhiwei Lin. Outline Proof-Carrying Code The Design and Implementation of a Certifying Compiler A Proof – Carrying Code Architecture.
1 New Development Techniques: New Challenges for Verification and Validation Mats Heimdahl Critical Systems Research Group Department of Computer Science.
Extended Static Checking for Java  ESC/Java finds common errors in Java programs: null dereferences, array index bounds errors, type cast errors, race.
Verification and Validation in the Context of Domain-Specific Modelling Janne Merilinna.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
@ For more details visit : Opportunities for participation Modular Architecture Trace JIT compiler Interpreter Memory manager.
Eclipse Eclipse An IDE is an Integrated Development Environment Different IDEs meet different needs – BlueJ, DrJava are designed as teaching.
VDM++ Tutorial Model Quality. Overview Introduction Assessing internal consistency Assessing external consistency.
Model Checking and Model-Based Design Bruce H. Krogh Carnegie Mellon University.
TEST-1 6. Testing & Refactoring. TEST-2 How we create classes? We think about what a class must do We focus on its implementation We write fields We write.
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
Chapter 1 Introduction. Chapter 1 - Introduction 2 The Goal of Chapter 1 Introduce different forms of language translators Give a high level overview.
CS 460/660 Compiler Construction. Class 01 2 Why Study Compilers? Compilers are important – –Responsible for many aspects of system performance Compilers.
Celluloid An interactive media sequencing language.
Weaving a Debugging Aspect into Domain-Specific Language Grammars SAC ’05 PSC Track Santa Fe, New Mexico USA March 17, 2005 Hui Wu, Jeff Gray, Marjan Mernik,
Mantid Stakeholder Review Nick Draper 01/11/2007.
 Programming - the process of creating computer programs.
Protocol Derivation Assistant Matthias Anlauff Kestrel Institute
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Jan Hatje, DESY SNL Editor and Debugger EPICS collaboration meeting SNL Editor and Debugger EPICS collaboration meeting 2008 Shanghai Institute.
14 October 2002GGF6 / CGS-WG1 Working with CIM Ellen Stokes
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Ganga/Dirac Data Management meeting October 2003 Gennady Kuznetsov Production Manager Tools and Ganga (New Architecture)
Formal Methods. What Are Formal Methods Formal methods refers to a variety of mathematical modeling techniques that are applicable to computer system.
1 Model Driven Health Tools Design and Implementation of CDA Templates Dave Carlson Contractor to CHIO
© 2009 Artisan Software Tools. All rights reserved. Testing Solutions with UML/SysML Andrew Stuart, Matthew Hause.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
Comparison of ZOOM with other Formal Methodologies Hsiu-Chien Jing SE690 Initial Presentation School of CTI, DePaul University Supervised by Dr. Jia October,
Testing Tools & Standards
Introduction to Compiler Construction
SE goes software engineering; (practically) managing the Compose
Software Design Methodology
Component-Based Software Engineering
Decentralized Model-Based Testing of Distributed Systems
A GUI Based Aid for Generation of Code-Frameworks of TMOs
Artisan Software Tools A Pragmatic Approach Using Ada and UML
SE goes software engineering; (practically) managing the Compose
By Rajanikanth B Eclipse IDE Overview By Rajanikanth B
Rich Model Toolkit – An Infrastructure for Reliable Computer Systems
Presentation transcript:

October 2007Potential thesis projects1 Peter Gorm Larsen Professor (ingeniørdocent) at Engineering College of Aarhus

October 2007Potential thesis projects2 Research Areas The Vienna Development Method Precise specification notations (VDM-SL and VDM++ Supported by semantic analysis Semantic clarifications combined with tool building Overture on top of Eclipse Open source community International angle Lots of students can experiment with deltas In case you are interested TIVDM1 is recommended for Q3.

October 2007Potential thesis projects Overture versus VDMTools VDMTools ( Closed source, proprietary (available under NDA) Monolithic architecture (single binary), C++ Optimized for performance, industry strength Overture Tool project ( Open source, GPL license Plug-in architecture, Eclipse, Java Optimized for flexibility, targets academic use (partly) developed using VDMTools

October 2007Potential thesis projects4 VDMToolsVDMTools Overview The Rose-VDM++ Link Document Generator Code Generators - C++, Java Syntax & Type Checker API (Corba), DL Facility Interpreter (Debugger)Integrity CheckerJava to VDM++

October 2007Potential thesis projects5 Basic automatic checks and GUI OvertureOverture Architecture Overview Syntax Check Connection to standard development environments UML, SysML AADL Visualisation Support Code Generators - C++, Java JML coupling Reverse Engineering support Type Check Refactoring support OML editor With syntax highlighting Validation support Pretty Printing With coverage Interpreter (Debugger) With API capabilities Test Generation support Visualization Support for Execution traces Verification support Proof Obligation generation Automatic Proof support Interactive Proof support Model Checking support Eclipse AST Not yet available Planned Currently under development

October 2007Potential thesis projects6 Basic automatic checks and GUI Syntax Check Type Check Refactoring support OML editor With Literate programming AST External files Eclipse Source GUI Eclipse error GUI

October 2007Potential thesis projects7 Validation support Pretty Printing With coverage Interpreter (Debugger) With API capabilities Test Generation support Visualization Support for Execution traces AST Eclipse visualization GUI Eclipse coverage GUI Eclipse Debugger GUI External Formats pdf,XML,tex logfile

October 2007Potential thesis projects8 Verification support Proof Obligation generation Automatic Proof support Interactive Proof support Model Checking support AST Eclipse Interactive proof GUI Eclipse Proof obligation GUI External Prover HOL4 POGs Eclipse Counter example GUI

October 2007Potential thesis projects9 Other development environments UML, SysML AADL Visualisation Support Code Generators C++, Java JML coupling Reverse Engineering support AST External Development Environment External Visualisation Tools External Source Code

October 2007Potential thesis projects Automatic AST generation OVERTURE AST spec (VDM-SL subset) ASTGEN sed script JAVA interfaces VDM++ classes VDMTools java classes sed modified java classes “implements” ● specified in VDM++ ● code generated other users can use these specs to specify their own OVERTURE extensions (in VDM++)

October 2007Potential thesis projects Support for language experiments Generic recipe to follow: Change the AST definition Re-generate the AST (AstGen & VDMTools) Modify the scanner / parser (jflex, byaccj) Recompile java code Turn-around time: 2 hours (minor changes) 1 day (larger changes)

October 2007Potential thesis projects Support for tool development (1) The (preferred) VDM++ recipe Take the AST VDM++ “interfaces” (IOml*) as is Take VDM++ class “OmlVisitor” Refactor (rename) this class Specify the required functionality directly in VDM++ Validate the specification using VDMTools Generate the Java implementation using VDMTools Compile and integrate into Eclipse plug-in

October 2007Potential thesis projects Support for tool development (2) Alternate Java recipe Take the AST Java interface classes Take the OmlVisitor.java code template Refactor (rename) this class Write your tool directly in Java Compile and integrate into Eclipse plug-in

October 2007Potential thesis projects14 The Active VDM Community VDM Portal ( The CSK VDM Group The Overture Open-Source Initiative On top of Eclipse platform ( Regular net meetings Academic collaboration MSc theses: (DK) type checker (DK), interpreter (Por), proof support (NL), test automation (Portugal), JML combination (Portugal), proof obligation generation (Portugal) Pacemaker grand challenge

October 2007Potential thesis projects15 VDM-SL Proof support Translator Proof obligation generator VDMTools Front-end VDM-SL Theories PROSPER proof-engine GUI VDMTools Proof Support Overview

October 2007Potential thesis projects16 Potential Test Automation Interfaces designed and verified VDM++TesK process constraints specified test suite designed Regression testing infrastructure built VDM++TesK process constraints specified test suite designed Regression testing infrastructure built VDMTools modeling and testing process executable model designed test cases for the model developed the model verified VDMTools modeling and testing process executable model designed test cases for the model developed the model verified The target software is evolving VDM model design iterations

October 2007Potential thesis projects17 The Pacemaker Challenge A Safety-Critical Application Report over project made by Hugo Macedo 4 different models made in VDM High-level VDM-SL model Sequential VDM++ model Concurrent VDM++ model Real-time distributed VDM++ model Follow VICE Guidelines + new validation conjectures over timed traces

October 2007Potential thesis projects18 Jasper Nygaard and Rasmus Sørensen Analyzing VDM++ Real-Time modeling precision in a Distributed System using a Proof Of Concept Implementation