Introducing the Dezyne Modelling Language



Similar documents
Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification

The Future of Model Driven Software Engineering

Testing and Inspecting to Ensure High Quality

Introduction to Functional Verification. Niels Burkhardt

OVERVIEW OF THE PROJECT...

F-16 Modular Mission Computer Application Software

General Problem Solving Model. Software Development Methodology. Chapter 2A

Packet Level Authentication Overview

Industrial case study: Zero defect secure software for the National Security Agency

x86 ISA Modifications to support Virtual Machines

Adaptive Radio. Cognitive Radio

VDM vs. Programming Language Extensions or their Integration

Certification Report

Software development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali

FSW QA Testing Levels Definitions

Service Virtualization:

Next Generation Siebel Monitoring: A Real World Customer Experience. An Oracle White Paper June 2010

Introducing Formal Methods into Industry using Cleanroom and CSP

The V-model. Validation and Verification. Inspections [24.3] Testing overview [8, 15.2] - system testing. How much V&V is enough?

Software Design. Software Design. Software design is the process that adds implementation details to the requirements.

UML-based Test Generation and Execution

Software testing. Objectives

Certification Report

Design and Verification of Nine port Network Router

System Build 2 Test Plan

Michigan State University. Team Meijer. Tablet-Based Point-of-Sale System. Project Plan. Fall 2011

CS Matters in Maryland CS Principles Course

Model Based Software Development for DDG 1000 Advanced Gun System

VERIFICATION (TEST) PLAN GUIDELINES

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

The Enterprise Service Bus: Making Service-Oriented Architecture Real

Software Engineering 4C03 Research Project. An Overview of Secure Transmission on the World Wide Web. Sean MacDonald

IBM Business Monitor V8.0 Global monitoring context lab

Fundamentals of Measurements

Chapter 3: Operating-System Structures. System Components Operating System Services System Calls System Programs System Structure Virtual Machines

Intland s Medical Template

VoIP Conformance Labs

CHAPTER 1 INTRODUCTION

Examination SUBJECT. Version:

RentersPLUS Move In Special

Sofware Requirements Engineeing

One and a half hours QUESTION PAPER MUST NOT BE REMOVED FROM THE EXAM ROOM AND MUST BE RETURNED UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE

Specification and Analysis of Contracts Lecture 1 Introduction

ARM Ltd 110 Fulbourn Road, Cambridge, CB1 9NJ, UK.

Data Warehouse and Business Intelligence Testing: Challenges, Best Practices & the Solution

A Standards-Based Approach to Extracting Business Rules

Requirements Management Best Practices

SaaS Adoption Lifecycle in Life-Sciences Companies

Certification Report

Attachment to Data Center Services Multisourcing Service Integrator Master Services Agreement

SolovatSoft. Load and Performance Test Plan Sample. Title: [include project s release name] Version: Date: SolovatSoft Page 1 of 13

Introduction to Automated Testing

LEARNING SOLUTIONS website milner.com/learning phone

Chapter 11 I/O Management and Disk Scheduling

Software Engineering for Real- Time Systems.

ITS Projects Systems Engineering Process Compliance Checklist

Mastering increasing product complexity with Collaborative Systems Engineering and PLM

IT Service Management with System Center Service Manager

Test Plan1.0 For the project A Credit Assessment System (CAS) Version 1.0

SOFTWARE PERFORMANCE TESTING SERVICE

Chapter 8 Software Testing

e-gate USB Smart Card Driver Install Notes (Windows 98/98SE/Me)

IEC The Fast Guide to Open Control Software

Application Compatibility Best Practices for Remote Desktop Services

Interfaces and Payload Testing

CSC340S Asst3 Information System Design Detailed Marking Scheme

System modeling. Budapest University of Technology and Economics Department of Measurement and Information Systems

CDC UNIFIED PROCESS JOB AID

JOURNAL OF OBJECT TECHNOLOGY

Environment Modeling for Automated Testing of Cloud Applications

Model Checking of Software

From Business Event to BUC

QTP Open Source Test Automation Framework Introduction

Certification Report

R3: Windows Server 2008 Administration. Course Overview. Course Outline. Course Length: 4 Day

CyberSource and NetSuite Getting Started Guide

Virtualization with VMWare

Hardware safety integrity Guideline

G.8032 Ethernet Ring Protection Overview. March, 2008 ITU-T Q9 SG 15

A complete platform for proactive data management

What s new with IBM Tivoli Workload automation?

Modelli di sviluppo software. Enrico Giunchiglia

Transcription:

Introducing the Dezyne Modelling Language Bits & Chips Smart Systems, 20 November 2014 Paul Hoogendijk. paul.hoogendijk@verum.com

Software Controlled Systems

Software Controlled Systems Event driven Concurrent, complex High cost-of-non-quality Field defects (SLA) and field updates Difficult and expensive to test Many scenario's: events interleaving, exceptions (errors) Dependency on hardware availability Managing complexity is key

designer/engineer wants Trust

designer/engineer wants Trust proper spec?

designer/engineer wants Trust proper spec? clean & clear architecture/design?

designer/engineer wants Trust proper spec? clean & clear architecture/design? code implements architecture/design?

designer/engineer wants Trust proper spec? clean & clear architecture/design? code implements architecture/design? code quality and complexity?

designer/engineer wants Trust proper spec? clean & clear architecture/design? code implements architecture/design? code quality and complexity? unit tests?

designer/engineer wants Trust proper spec? clean & clear architecture/design? code implements architecture/design? code quality and complexity? unit tests? end-to-end tests?

designer/engineer wants Trust proper spec? clean & clear architecture/design? code implements architecture/design? code quality and complexity? unit tests? end-to-end tests? test coverage, including all exceptions?

Title Body

Title Body

Title Body

Create. Dezyne Modelling Language System models subcomponents declaration bindings between ports Component models provides & requires ports declaration behaviour Interface models in & out events declaration behaviour

Components, ports and bindings

Components, ports and bindings

Interfaces: events and behaviour

Interfaces: events and behaviour

Interfaces: in and out events

Interfaces: in and out events

Component: ports and behaviour

Component: ports and behaviour

Title Body

Explore: Simulation and Views Sequence diagrams shown are simulator runs User selects next events from list of possible events Exploring interfaces proper specification? Exploring components use cases present?

Explore: Simulation and Views

Title Body

Verify: discover hidden defects Automatic full simulation based on Formal Methods For all possible execution scenarios for component check Adheres to its interfaces No deadlock No livelock Handles race conditions correctly If issue found: trace generated leading to problem 100% coverage while no test code written (!)

Verify: discover hidden defects Automatic full simulation based on Formal Methods For all possible execution scenarios for component check Adheres to its interfaces No deadlock No livelock Handles race conditions correctly If issue found: trace generated leading to problem 100% coverage while no test code written (!)

Title Body

Trust: code generation Efficient and readable code I could have written that 100% of code is generated No (foreign) code snippets in models Easy integration with external code Via an Dezyne Interface makes assumption about external code explicit Thin wrapper layer Connect to: Legacy software Hardware drivers Non Dezyne subsystem...

Trust: code generation (cont.) Due to Create Explore Verify cycle: Validated: proper specification (interfaces) all use cases present (components) Verified: All component implement their specification correctly No deadlock, no livelock and handles all races correctly Code that can be trusted

Trust based on hard evidence

9 Questions? www.verum.com stand 35