ObjectCheck: A Model Checking Tool for Executable Object-oriented Software System Designs Fei Xie and James C. Browne Dept. of Computer Sciences Univ.

Slides:



Advertisements
Similar presentations
Verified Systems by Composition from Verified Components Fei Xie and James C. Browne.
Advertisements

© by cellconsult.com Application Testing & Test Management.
Integrated State Space Reduction for Model Checking Executable Object-oriented Software System Designs Fei Xie and James C. Browne Dept. of Computer Sciences.
Model Checking for an Executable Subset of UML Fei Xie 1, Vladimir Levin 2, and James C. Browne 1 1 Dept. of Computer Sciences, UT at Austin 2 Bell Laboratories,
Translation-Based Compositional Reasoning for Software Systems Fei Xie and James C. Browne Robert P. Kurshan Cadence Design Systems.
Budapest University of Technology and EconomicsDagstuhl 2004 Department of Measurement and Information Systems 1 Towards Automated Formal Verification.
LIFE CYCLE MODELS FORMAL TRANSFORMATION
Modeling Main issues: What do we want to build How do we write this down ©2008 John Wiley & Sons Ltd. vliet.
Efficient Reachability Analysis for Verification of Asynchronous Systems Nishant Sinha.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
CLEANROOM SOFTWARE ENGINEERING
Job No/ 1 © British Crown Copyright 2008/MOD Developing a High Integrity Code Generator Using iUML/iCCG Sam Moody AWE plc, Aldermaston, Berkshire, United.
Automated creation of verification models for C-programs Yury Yusupov Saint-Petersburg State Polytechnic University The Second Spring Young Researchers.
Integration of Model Checking into Software Development Processes Fei Xie.
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
Model Checking Large-Scale Software Natasha Sharygina Carnegie Mellon University Software Engineering Institute.
Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 Ray Madachy, Barry Boehm USC Center for Systems and Software Engineering.
Component-Based Abstraction Juncao Li Dept. of Computer Science Portland State University.
Systems Engineering Project: System Validation and Verification Using SDL Ron Henry ENSE 623 November 30, 2004.
Modeling State-Dependent Objects Using Colored Petri Nets
1 Formal Engineering of Reliable Software LASER 2004 school Tutorial, Lecture1 Natasha Sharygina Carnegie Mellon University.
End-to-End Design of Embedded Real-Time Systems Kang G. Shin Real-Time Computing Laboratory EECS Department The University of Michigan Ann Arbor, MI
MOBIES Project Progress Report Engine Throttle Controller Design Using Multiple Models of Computation Edward Lee Haiyang Zheng with thanks to Ptolemy Group.
Educational Computer Architecture Experimentation Tool Dr. Abdelhafid Bouhraoua.
Code Generation from CHARON Rajeev Alur, Yerang Hur, Franjo Ivancic, Jesung Kim, Insup Lee, and Oleg Sokolsky University of Pennsylvania.
5/24/011 Advanced Tool Integration for Embedded Systems Assurance Insup Lee Department of Computer and Information Science University of Pennsylvania.
Foundations of Programming Languages – Course Overview Xinyu Feng Acknowledgments: some slides taken or adapted from lecture notes of Stanford CS242
CS527: (Advanced) Topics in Software Engineering Overview of Software Quality Assurance Tao Xie ©D. Marinov, T. Xie.
Systems Analysis And Design © Systems Analysis And Design © V. Rajaraman MODULE 14 CASE TOOLS Learning Units 14.1 CASE tools and their importance 14.2.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
Verification Case Studies with ObjectCheck Fei Xie (Joint work with James C. Browne, Robert P. Kurshan, and Vladimir Levin) Presentation at Microsoft Research,
CLEANROOM SOFTWARE ENGINEERING.
Unified Modeling Language, Version 2.0
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
An Introduction to Java Chapter 11 Object-Oriented Application Development: Part I.
I n t e g r i t y - S e r v i c e - E x c e l l e n c e UPDM Review Session Col. Jack Jibilian Enterprise Architecting & Warfighting Decision Support SAF/XCPA.
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
Framework for the Development and Testing of Dependable and Safety-Critical Systems IKTA 065/ Supported by the Information and Communication.
DEV337 Modeling Distributed Enterprise Applications Using UML in Visual Studio.NET David Keogh Program Manager Visual Studio Enterprise Tools.
UML-1 3. Capturing Requirements and Use Case Model.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
UML-1 8. Capturing Requirements and Use Case Model.
Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine In Proceedings of the 2005 ACM Symposium on.
1 Qualitative Reasoning of Distributed Object Design Nima Kaveh & Wolfgang Emmerich Software Systems Engineering Dept. Computer Science University College.
BY OKAY ASLAN CMPE 516 FAULT TOLERANT COMPUTING A Formal Object-Oriented Analysis for Software Reliability: Design for Verification.
Fault-Tolerant Parallel and Distributed Computing for Software Engineering Undergraduates Ali Ebnenasir and Jean Mayo {aebnenas, Department.
Computing and SE II Chapter 9: Design Methods and Design Models Er-Yu Ding Software Institute, NJU.
Week III  Recap from Last Week Review Classes Review Domain Model for EU-Bid & EU-Lease Aggregation Example (Reservation) Attribute Properties.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
LaHave House Project 1 LaHave House Project Automated Architectural Design BML + ARC.
HACNet Simulation-based Validation of Security Protocols Vinay Venkataraghavan Advisors: S.Nair, P.-M. Seidel HACNet Lab Computer Science and Engineering.
1 Unified Modeling Language, Version 2.0 Chapter 2.
MNP1163/MANP1163 (Software Construction).  Minimizing complexity  Anticipating change  Constructing for verification  Reuse  Standards in software.
Architecture Analysis and Design Language: An Overview Drew Gardner.
Prof. Hany H. Ammar, CSEE, WVU, and
CSCI 3428: Software Engineering Tami Meredith UML Unified Modeling Language.
Formal Methods in Software Engineering1 Today’s Agenda  Mailing list  Syllabus  Introduction.
Executive Overview. Software modeling is essential, because it is the map that guides your developers. Additionally: Modeling Software  Visual information.
DELOS Network of Excellence on Digital Libraries Yannis Ioannidis University of Athens, Hellas Digital Libraries: Future Research Directions for a European.
SystemC Semantics by Actors and Reduction Techniques in Model Checking Marjan Sirjani Formal Methods Lab, ECE Dept. University of Tehran, Iran MoCC 2008.
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
Complexity Relief Techniques for Model Checking METU, Aug SOFTWARE VERIFICATION WORKSHOP Hüsnü Yenigün Sabanci University Informatics Institute,
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
The Extensible Tool-chain for Evaluation of Architectural Models
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
Model Checking for an Executable Subset of UML
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
Presentation transcript:

ObjectCheck: A Model Checking Tool for Executable Object-oriented Software System Designs Fei Xie and James C. Browne Dept. of Computer Sciences Univ. of Texas at Austin Vladimir Levin Bell-Labs Lucent Technologies

2 Presentation Agenda Background and Overview of ObjectCheck Demonstration of ObjectCheckDemonstration of ObjectCheck More Case StudiesMore Case Studies Summary and Future WorkSummary and Future Work

3 Motivations Executable OO modeling languages are widely applied to specify software system designs. Model Checking may improve the reliabilities of executable OO software system designs. State-of-the-art model checkers are not directly applicable to executable OO system designs. A tool supporting application of model checking to executable OO system designs is needed.

4 xUML: An Executable OO Modeling Language Executable dialect of UML; Expressive system and class hierarchies; Extended Moore state machines as state models; –Each state may have an associated state action; –Each state action is run-to-completion; Asynchronous interleaving execution semantics. –A system execution is an asynchronous interleaving of the executions of state models in the system.

5 Architecture and Workflow of ObjectCheck Property Specification InterfacexUML IDEError Visualizer xUML-to-S/R TranslatorError Report Generator COSPAN Model Checker S/R ModelS/R Query Error ReportError TrackDesigner xUML Model Property

6 Development of ObjectCheck Developed in conjunction with SDLCheck; –SDLCheck is an SDL model checking tool developed by Robert P. Kurshan, Vladimir Levin, and Husnu Yenigun of Bell-labs. Reuses modules from SDLCheck, such as optimization modules that conduct SPOR. –SPOR (Static Partial Order Reduction).

7 Presentation Agenda Background and Overview of ObjectCheck Demonstration of ObjectCheckDemonstration of ObjectCheck More Case StudiesMore Case Studies Summary and Future WorkSummary and Future Work

8 Case Study for Demonstration Classic Dining Philosophers Problem More realistic case studies will be shown after the demonstration.

9 Step-by-Step Demonstration Designer Property Specification Interface xUML IDEError Visualizer Error ReportxUML ModelProperty xUML-to-S/R TranslatorError Report Generator Error TrackS/R ModelS/R Query COSPAN Model Checker

10

11

12

13

14

15

16

17 Step-by-Step Demonstration Designer Property Specification Interface xUML IDEError Visualizer Error ReportxUML ModelProperty xUML-to-S/R TranslatorError Report Generator Error TrackS/R ModelS/R Query COSPAN Model Checker

18

19 Step-by-Step Demonstration Designer Property Specification Interface xUML IDEError Visualizer Error ReportxUML ModelProperty xUML-to-S/R TranslatorError Report Generator Error TrackS/R ModelS/R Query COSPAN Model Checker

20

21

22

23 Step-by-Step Demonstration Designer Property Specification Interface xUML IDEError Visualizer Error ReportxUML ModelProperty xUML-to-S/R TranslatorError Report Generator Error TrackS/R ModelS/R Query COSPAN Model Checker

24

25

26

27

28 Step-by-Step Demonstration Designer Property Specification Interface xUML IDEError Visualizer Error ReportxUML ModelProperty xUML-to-S/R TranslatorError Report Generator Error TrackS/R ModelS/R Query COSPAN Model Checker

29

30

31 Step-by-Step Demonstration Designer Property Specification Interface xUML IDEError Visualizer Error ReportxUML ModelProperty xUML-to-S/R TranslatorError Report Generator Error TrackS/R ModelS/R Query COSPAN Model Checker

32

33

34

35

36

37

38

39 Presentation Agenda Background and Overview of ObjectCheck Demonstration of ObjectCheckDemonstration of ObjectCheck More Case StudiesMore Case Studies Summary and Future WorkSummary and Future Work

40 More Case Studies NASA Robot Controller –A typical control-intensive embedded systems; –Presented at FASE 2001 by Natasha Sharygina; Online Ticket Sale System –A typical commercial transaction systems; –Presented at FASE 2002; –Focus: Integrated state space reduction.

41 NASA Robot Controller (Class Diagram)

42 NASA Robot Controller (A State Model)

43 An Online Ticket Sale System (Class Diagram)

44 An Online Ticket Sale System (A State Model)

45 Some Verification Statistics of Online Ticket Sale System Verification of a liveness property –After an agent is assigned to a customer, eventually the agent will be released. Statistics related to state space reductions SPORSMCMemory UsageTime Usage Off Out of Memory- OffOn113.73M44736.S OnOff17.3M6668.3S On 74.0M1450.3S

46 Related Work Most closely related work –UML Model Checking toolset from University of Michigan –vUML tool from Åbo Akademi University –Both tools employ UML dialects with ad-hoc execution semantics and without well-defined action semantics.

47 Summary and Future Work ObjectCheck –Combines industrial software design and development environments and model checkers with research tools; –Provides comprehensive automation support for model checking xUML models; –Has enabled verification of non-trivial software system designs modeled in xUML. Future work is focused on enhancing state space reduction capability of ObjectCheck.