IFAD www.ifad.dk Dr Peter Gorm Larsen IFAD A/S Forskerparken 10A DK-5230 Odense M Denmark Ten Years of Historical Development “Bootstrapping” VDMTools.

Slides:



Advertisements
Similar presentations
© SMARTESTING 2011 – This document is the property of Smartesting. It may not be reproduced in whole or in part Cliquez pour modifier le style du titre.
Advertisements

© 2000 Scott Moses Career Paths for Industrial Engineers Scott Moses Assistant Professor School of Industrial Engineering University of Oklahoma.
October 2007Potential thesis projects1 Peter Gorm Larsen Professor (ingeniørdocent) at Engineering College of Aarhus.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software processes 2.
Sequence Diagram Generation & Validation MSE First Presentation Samer Saleh Advisor: Bill Hankley.
Demonstration of VDMTools®
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
Automated creation of verification models for C-programs Yury Yusupov Saint-Petersburg State Polytechnic University The Second Spring Young Researchers.
Software Engineering 1 Evolutionary Processes Lesson 11.
Corporate Overview.
Software Engineering COMP 201
Requirements Analysis 5. 1 CASE b505.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis CASE Computer.
March 2006VDM Technology in Industry1 Peter Gorm Larsen.
March 2009Tools for VDM in Industry1 Professor Peter Gorm Larsen Engineering College of Aarhus Also adjunct professor at Aarhus.
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.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
1 SWE Introduction to Software Engineering Lecture 5.
Industrial usage of VDM Dr Peter Gorm Larsen Associate Professor University College of Aarhus + PGL Consult.
On the Correctness of Model Transformations Gabor Karsai ISIS/Vanderbilt University.
March 2008Tools for VDM in Industry1 Professor Peter Gorm Larsen Engineering College of Aarhus
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
Semantics in Practice Dr Peter Gorm Larsen Associate Professor University College of Aarhus + PGL Consult
March 2007Tools for VDM in Industry1 Peter Gorm Larsen.
David Harrison Senior Consultant, Popkin Software 22 April 2004
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements l.
2012 National BDPA Technology Conference Creating Rich Data Visualizations using the Google API Yolanda M. Davis Senior Software Engineer AdvancED August.
Rational Suite and CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Requirements.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
ISO Tor Stålhane IDI / NTNU. What is ISO ISO 9001 was developed for the production industry but has a rather general structure ISO describes.
Delcam Professional Services Antony Hall Business Development Manager Delcam plc.
Software processes COSC 420 – Software Engineering Brian Toone.
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
MathCore Engineering AB Experts in Modeling & Simulation WTC.
Slide 1, Presentation: Reverse Engineering state diagrams from C/C++ code, | Dennie van Zeeland Masters Project Reverse Engineering state machine.
Intent Specification Intent Specification is used in SpecTRM
WSMX Execution Semantics Executable Software Specification Eyal Oren DERI
VDM++ Tutorial Model Quality. Overview Introduction Assessing internal consistency Assessing external consistency.
TIVDM1VDMTools and Logic1 Peter Gorm Larsen. TIVDM1VDMTools and Logic2 Agenda  Overview of VDMTools ® Functionality Demonstration of VDMTools ® and Rational.
Applying Model Based Testing in Different Contexts Alexander Petrenko Victor Kuliamin ISP RAS, Moscow.
Support required for running application software projects in the SL/CO/AP section M.Vanden Eynden October 2000 * A description of the software development.
Rational ClearCase and Rational ClearQuest IBM VA TPF User Conference Terry Durkin ClearCase Product Manager October 2000 Terry Durkin ClearCase Product.
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.
Safety-Critical Systems 4 Formal Methods / Modelling
K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools.
UniTesK Test Suite Architecture Igor Bourdonov Alexander Kossatchev Victor Kuliamin Alexander Petrenko.
Model Design using Hierarchical Web-Based Libraries F. Bernardi Pr. J.F. Santucci {bernardi, University of Corsica SPE Laboratory.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
PI2134 Software Engineering IT Telkom.  Layered technology  Software Process  Generic Process (by Pressman)  Fundamental activities (by Sommerville)
Reuse Contracts A Historic Overview Dr. Tom Mens Programming Technology Lab Vrije Universiteit Brussel Course OOSE.RC EMOOSE
® IBM Software Group © 2003 IBM Corporation IBM WebSphere Studio V5.1.2: Making Java Development Easier May 2004.
Executive Overview. Software modeling is essential, because it is the map that guides your developers. Additionally: Modeling Software  Visual information.
UniTesK Test Suite Architecture Igor Bourdonov Alexander Kossatchev Victor Kuliamin Alexander Petrenko.
Modeling with Rational Rose Huzefa Kagdi Software Development Laboratory Department of Computer Science Kent State University Kent Ohio, USA.
An Analysis of some Software Engineering Tools in the Market Neelesh Sahay CSC532 Dr. Box.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Object Oriented Analysis & Design By Rashid Mahmood.
Contents What is Reverse Engineering (RE)? Why do we need Reverse Engineering? Scope and Tasks of Reverse Engineering Reverse Engineering Tools Reverse.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
Generic State Machine engine (GSMe) L. Andolfato |
OPCAT: Object-Process CASE Tool
Testing Tools & Standards
Definition CASE tools are software systems that are intended to provide automated support for routine activities in the software process such as editing.
HELIOS
EIN 6133 Enterprise Engineering
Presentation transcript:

IFAD Dr Peter Gorm Larsen IFAD A/S Forskerparken 10A DK-5230 Odense M Denmark Ten Years of Historical Development “Bootstrapping” VDMTools ®

IFAD 2 “Bootstrapping” VDMTools ® â What is IFAD? l VDMTools overview l Staff overview l Development environment l The “Bootstrapping” process l Perspectives

IFAD 3 IFAD Capabilities IFAD provides Professional software development tools that assist engineers in producing high-quality software IFAD ensures Technology transfer by offering training courses, customer-specific consultancy, and by organising seminars IFAD offers Subcontracted software specification and development performed by highly qualified and experienced personnel

IFAD 4 IFAD Organisation Chart Henrik Voss Management Marketing QA Admin.Systems Subcontracting Consultancy Sales Services Projects Sales Tools R&D VDMTools Products MUSTER R&D Methods & ToolsTraining & Simulation

IFAD 5 Boeing/Joint Strike Fighter

IFAD 6 “Bootstrapping” VDMTools ® 4 What is IFAD? â VDMTools overview l Staff overview l Development environment l The “Bootstrapping” process l Perspectives

IFAD 7 VDMTools

8 IFAD VDMTools Alliances IFAD ISPRAS, Russia Sidereus, Portugal Rational, USA JFITS, Japan DDC-I, USA Aichernig, Austria Alagar, Canada SofTools, USA

IFAD 9 References, World-wide France Aerospatiale Espace et Defense Dassault Aviation Dasssault Electronique CISI CEA et Defense CEA Leti Cap Gemini LAAS Matra Bae Dynamics U.K. British Aerospace Systems & Equipment British Aerospace Defense Adelard ICL Enterprise Engineering Rolls Royce Transitive Technologies ItalyENEAAnsaldoAlstrom The Netherlands Dutch Dept. of Defence OriginChessDenmark Danish Railways Baan Nordic Odense Steel Shipyard DDC International North America Boeing Rockwell Collins Lockheed Martin DDC-I, Inc. Rational Software Corp. Formal Systems Inc. Japan RTRI (Japan Railways) JFITSGermany GAO mbH More than 150 clients world-wide

IFAD 10 VDMTools ® Overview The Rose-VDM++ Link Document Generator Code Generators - C++, Java Syntax & Type Checker API (Corba), DL Facility Interpreter (Debugger)

IFAD 11 VDM for Analysis & Design CodingUnit Test Software Design Module Test System Analysis System Test VDM Model Test Cases Animation Modelling & Validation

IFAD 12 Development Choices Taken Executable models þ Testing and animation Partial “analysis” (validation) þ System level testing Code generation þ VDM for source code  Formal refinement and formal verification

IFAD 13 “Bootstrapping” VDMTools ® 4 What is IFAD? 4 VDMTools overview â Staff overview l Development environment l The “Bootstrapping” process l Perspectives

IFAD 14 Staff Overview PGL PBL MA ETN HC HV NK JNJ SA LTO JWT OS JKP KS PM NP MV KdB CABFBA SN JKP VSJKP WS JSF

IFAD 15 “Bootstrapping” VDMTools ® 4 What is IFAD? 4 VDMTools overview 4 Staff overview â Development environment l The “Bootstrapping” process l Perspectives

IFAD 16 Development Environment l GNU C++/Visual C++ l Generic VDM C++ library l GUI: Previously:Tcl/Tk, Now: Qt l flex and bison l CVS/Ediff version control l OSs: Windows, Linux, Unix l Test environments l Development procedures

IFAD 17 “Bootstrapping” VDMTools ® 4 What is IFAD? 4 VDMTools overview 4 Staff overview 4 Development environment â The “Bootstrapping” process l Perspectives

IFAD 18 VDM++ The “Bootstrapping” Process VDM-SL DS spec VDM-SL DS impl VDM-SL SS spec VDM-SL SS impl VDM-SL SM spec VDM-SL SM impl VDM-SL PM spec VDM-SL PM impl VDM-SL CG spec VDM-SL CG impl Implicit time line

IFAD 19 Specification Sizes

IFAD 20 Component Categories l Purely hand-coded l VDM + hand coding l VDM + code generation

IFAD 21 Purely Hand-coded Components l Scanner/parser (lex/yacc) l pretty-printer (simple C++ component) l GUI (previously: Tcl/Tk, now: Qt) l Interface to third party tools l Rational Rose l Corba for API l ML for HOL l Generic VDM C++ library

IFAD 22 VDM + Hand Coding l Dynamic semantics (SL and ++) l Static semantics (SL and ++) l Java/C++ Code generators (SL and ++) l Test environments for each component l Reused at implementation level l Java/C++ code generators now themselves partially code generated

IFAD 23 Maintenance Approach l Bugs first reproduced at specification level l Tested using the VDM debugger l Check that all tests are satisfactory l Implement changes of specification l Rerun all tests at implementation level

IFAD 24 VDM + code generation l Animator for SA/RT l Specification Manager (SL and ++) l VDM++ to/from UML translation l Proof support (SL) l VDM model becomes source l Trade-off with abstraction

IFAD 25 Abstraction in models l Initial abstract syntax l Abstract syntax for code generator l Final abstract syntax BinaryExpr:: left : Expr opr : BinaryOp right : Expr BinaryExpr:: left : Expr opr : BinaryOp right : Expr ti : [TypeRep] BinaryExpr:: left : Expr opr : BinaryOp right : Expr extra : Key

IFAD 26 “Bootstrapping” VDMTools ® 4 What is IFAD? 4 VDMTools overview 4 Staff overview 4 Development environment 4 The “Bootstrapping” process â Perspectives

IFAD 27 Future Ideas l Expect higher use of code generation l Test case generation (ISPRAS, Russia) l Data Cleaning (Sidereus, Portugal) l Reverse Engineering l Mission-critical web development l More on proof support l More academic collaboration l More user-friendliness

IFAD 28 Concluding Remarks l Taking ones “own medicine” helps l Use when worthwhile l Use inside lifecycle l Using VDM helps us master complexity l It is FUN!