Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine. 2005. In Proceedings of the 2005 ACM Symposium on.

Slides:



Advertisements
Similar presentations
UML Diagrams Jung Woo. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business.
Advertisements

Systems Analysis and Design 8th Edition
ISBN Chapter 3 Describing Syntax and Semantics.
CS 355 – Programming Languages
Unified Modeling Language
Shaoying Liu Department of Computer Science
Object-Oriented Analysis and Design
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Describing Syntax and Semantics
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Andrew SuttonKent State University1 Software Modeling Andrew Sutton Department of Computer Science Kent State University.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Introduction To System Analysis and design
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Unified Modeling Language, Version 2.0
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Object-Oriented Analysis and Design An Introduction.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
Systems Analysis & Design 7 th Edition Chapter 5.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
Documenting Software Architectures 1.Uses and Audiences for Architecture Documentation Architecture documentation serves as a means of education Architecture.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
TAL7011 – Lecture 4 UML for Architecture Modeling.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
ISBN Chapter 3 Describing Semantics.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
Lab 5 CPIT 250 System Analysis and Design.
OMT Modeling 1. Object Model : presented by the object model and the data dictionary. 2. Dynamic Model: presented by the state diagrams and event flow.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
November 2003J. B. Wordsworth: J3ISDQR41 Information Systems Development Quality and Risk (4)
1 Unified Modeling Language, Version 2.0 Chapter 2.
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
Rational Rose For System Design What is Rational Rose? Rational Rose is the visual modeling software solution that lets you create, analyze, design,
Introduction to UML Hazleen Aris Software Eng. Dept., College of IT, UNITEN. …Unified Modeling Language.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
WELCOME TO OUR PRESENTATION UNIFIED MODELING LANGUAGE (UML)
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
UML Diagrams By Daniel Damaris Novarianto S..
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Techniques
Systems Analysis and Design With UML 2
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
State Digrams in UML: A Formal Senmatics using Graph Transformations
UML Diagrams Jung Woo.
Software Architecture & Design Pattern
Introduction to Object Oriented Analysis, Design and Unified Modeling Language (UML) Shanika Karunasekera.
Model-Driven Analysis Frameworks for Embedded Systems
Unified Modeling Language
Introduction to UML.
Chapter 20 Object-Oriented Analysis and Design
Presentation transcript:

Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine In Proceedings of the 2005 ACM Symposium on Applied Computing Santa Fe, New Mexico, March , 2005 Presented by: James T. O’Hara SE 510, Fall 2005

1 A Tale of Two Tools … The application of formal methods allows the rigorous definition and analysis of the functionality and the behavior of a system. It is capable of showing that the system is correct. B is a method for specifying, designing and coding software systems. UML is a widely accepted modeling language that can be used to visualize, specify, construct and document the artifacts of a software system.

2 Combining UML with B The derivation from UML specification into the B formal method is considered as an appropriate way to jointly use UML and B in practical, unified and rigorous software development. The aim of the study was to use B support tools to analyze UML model properties.

3 THE B METHOD B is a formal software development method, originally developed by J.R. Abrial. The B notation is based on set theory, the language of generalized substitutions and first order logic. Specifications are composed of abstract machines that are similar to modules or classes.

4 The UML Metamodel The UML metamodel defines the complete semantics for representing object models using UML. Abstract Syntax Well-Formedness Rules Semantics

5 TRANSFORMATION OF UML TO B The transformation of an attribute of a UML class to a variable of a B abstract machine can be performed as follows:

6 What is a UML Collaboration Diagram A collaboration diagram describes interactions among objects in terms of sequenced messages. Collaboration diagrams represent a combination of information taken from class, sequence, and use case diagrams describing both the static structure and dynamic behavior of a system.

7 UML Collaboration Diagram UML collaboration diagrams, are used to explore the dynamic nature of your software. Source:

8 TRANSFORMATION OF THE COLLABORATION PACKAGE TO B The Collaboration package is a sub-package of the Behavioral Elements package

9 What is a UML State Diagram UML state machine diagrams depict the various states that an object may be in and the transitions between those states. Figure 1. A seminar during registration. Source:

10 TRANSFORMATION OF THE STATE MACHINE PACKAGE TO B The State Machine package is a sub- package of the Behavioral Elements package.

11 A CASE STUDY Modeling of a printing system. This system can be described as follows: the printing system is a system to print a file from a computer. The use gives a command to print a file, and the system will respond according to its messages. Figure 3. Collaboration diagram of the printing system.

12 Interaction B Abstract Machine

13 Verification of UML Model Properties The well-formedness rules of the Messages class applied on the Collaboration package and their B machines counterparts can be evaluated for completeness and consistency. UML well-formedness rules can be represented by system invariants.

14 CONCLUSION In this paper, the author’s have presented a technique to transform the UML behavioral diagrams to a B specification. With the contribution of the transformation of UML metamodel and their well- formedness rules into B, the semantics of the UML models can be translated into B properties. Formal methods can then be used to specify and verify object-oriented systems.

15 Additional References The B-Book: Assigning Programs to Meanings, Cambridge University Press ISBN The Object Primer: Agile Model- Driven Development with UML 2.0 Scott Ambler, Cambridge University Press, Paperback, 3rd edition, 2004