February 2008Potential thesis projects1 Peter Gorm Larsen Professor (ingeniørdocent) at Engineering College of Aarhus
February 2008Potential thesis projects2 Research Areas Semantic clarifications combined with tool building Overture on top of Eclipse Open source community International angle Lots of students can experiment with deltas Applications of new extensions for distributed real-time embedded systems First project by Hugo Macedo on pacemaker Rasmus Sørensen and Jasper Nygaard on CyberRail “Existing” projects SKATT (Sikrere og Klogere produkter gennem Anvendelse af Trådløs Teknologi) MC-HA (Minimum Configuration – Home Automation)
February 2008Potential thesis projects3 Vienna Development Method Invented at IBM’s labs in Vienna in the 70’s VDM-SL and VDM++ ISO Standardisation of VDM-SL VDM++ is an object-oriented extension Model-oriented specification: Simple, abstract data types Invariants to restrict membership Implicit specification (pre/post) Explicit specification (functional or imperative)
February 2008Potential 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
February 2008Potential thesis projects5 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++
February 2008Potential thesis projects6 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 Ongoing Currently draft available
February 2008Potential 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++)
February 2008Potential 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)
February 2008Potential 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
February 2008Potential 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
February 2008Potential thesis projects11 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 (Portugal), proof support (NL), test automation (Portugal), JML combination (Portugal), proof obligation generation (Portugal) Pacemaker grand challenge
February 2008Potential thesis projects12 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
February 2008Potential thesis projects13 Jasper Nygaard and Rasmus Sørensen Evaluating Distributed Architectures using VDM++ Real- Time modeling with a Proof Of Concept Implementation
February 2008Potential thesis projects14 Jasper and Rasmus MSc Results VDM++, model and test large systems. Repeater, JAVTU VDM++ as an engineering tool. Development process Importance and ease of abstraction Deployments Schemes Communication Platform Token Device, Technology Distributed Architecture Potential Bottlenecks SMS Retry Algorithm. Context Awareness CyberRail Case Study VDM++, Engineering Tool MSc. Jasper Moltke Nygaard, 14th Jan 2008 –
February 2008Potential thesis projects15 SKATT Sikrere og Klogere produkter gennem Anvendelse af Trådløs Teknologi Together with: Alexandra Grundfos Skov Adding wireless capability to existing products A number of student projects have already been made: AFP with LIAB application AFP with Grundfos application Multidisciplinært Ingeniørprojekt, (Skov) 3 MSc E-students
February 2008Potential thesis projects16 MC-HA Minimum Configuration – Home Automation Electronic gadgets enter private homes to Improve comfort Save energy How to enable Mr and Mrs Jensen to set it up? Different standards exists both for wired and wireless Interoperability must be ensured by common easy configuration New project application is underway