Keynote address - data abstraction and hierarchy
OOPSLA '87 Addendum to the proceedings on Object-oriented programming systems, languages and applications (Addendum)
Object lifecycles: modeling the world in states
Object lifecycles: modeling the world in states
Object-oriented analysis and design with applications (2nd ed.)
Object-oriented analysis and design with applications (2nd ed.)
Computer-aided verification of coordinating processes: the automata-theoretic approach
Computer-aided verification of coordinating processes: the automata-theoretic approach
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
The Unified Modeling Language reference manual
The Unified Modeling Language reference manual
Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
Formal Object-Oriented Development
Formal Object-Oriented Development
Symbolic Model Checking
Model Checking Large Software Specifications
IEEE Transactions on Software Engineering
Verification of Large State/Event Systems Using Compositionality and Dependency Analysis
TACAS '98 Proceedings of the 4th International Conference on Tools and Algorithms for Construction and Analysis of Systems
TACAS '99 Proceedings of the 5th International Conference on Tools and Algorithms for Construction and Analysis of Systems
A Combined Testing and Verification Approach for Software Reliability
FME '01 Proceedings of the International Symposium of Formal Methods Europe on Formal Methods for Increasing Software Productivity
An Automatic SPIN Validation of a Safety Critical Railway Control System
DSN '00 Proceedings of the 2000 International Conference on Dependable Systems and Networks (formerly FTCS-30 and DCCA-8)
Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic
Logic of Programs, Workshop
TACAS '00 Proceedings of the 6th International Conference on Tools and Algorithms for Construction and Analysis of Systems: Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 2000
Combining Software and Hardware Verification Techniques
Formal Methods in System Design
ObjectCheck: A Model Checking Tool for Executable Object-Oriented Software System Designs
FASE '02 Proceedings of the 5th International Conference on Fundamental Approaches to Software Engineering
Packaging Predictable Assembly
CD '02 Proceedings of the IFIP/ACM Working Conference on Component Deployment
SDLcheck: A Model Checking Tool
CAV '01 Proceedings of the 13th International Conference on Computer Aided Verification
Journal of Systems and Software - Special issue on: Component-based software engineering
Model Checking for an Executable Subset of UML
Proceedings of the 16th IEEE international conference on Automated software engineering
Formal hardware specification languages for protocol compliance verification
ACM Transactions on Design Automation of Electronic Systems (TODAES)
Lessons Learned from Model Checking a NASA Robot Controller
Formal Methods in System Design
Application of design for verification with concurrency controllers to air traffic control software
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Automated Software Engineering
Scalable Software Model Checking Using Design for Verification
Verified Software: Theories, Tools, Experiments
Towards compositional synthesis of evolving systems
Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering
Model checking software via abstraction of loop transitions
FASE'03 Proceedings of the 6th international conference on Fundamental approaches to software engineering
Identifying state space reduction techniques from behavioural design patterns
Proceedings of the Third Workshop on Behavioural Modelling
Embedded Systems Design
Hi-index | 0.00 |
This paper presents the OOA design step in a methodology which integrates automata-based model checking into a commercially supported OO software development process.We define and illustrate a set of design rules for OOA models with executable semantics, which lead to automata models with tractable state spaces. The design rules yield OOA models with functionally structured designs similar to those of hardware systems. These structures support model-checking through techniques known to be feasible for hardware. The formal OOA methodology, including the design rules, was applied to the design of NASA robot control software. Serious logical design errors that had eluded prior testing, were discovered in the course of model-checking.