Formal Object Interaction Language: Modeling and Verification of Sequential and Concurrent Object-Oriented Software
نویسندگان
چکیده
As software systems become larger and more complex, developers require the ability to model abstract concepts while ensuring consistency across the entire project. The internet has changed the nature of software by increasing the desire for software deployment across multiple distributed platforms. Finally, increased dependence on technology requires assurance that designed software will perform its intended function. This thesis introduces the Formal Object Interaction Language (FOIL). FOIL is a new object-oriented modeling language specifically designed to address the cumulative shortcomings of existing modeling techniques. FOIL graphically displays software structure, sequential and concurrent behavior, process, and interaction in a simple unified notation, and has an algebraic representation based on a derivative of the -calculus. The thesis documents the technique in which FOIL software models can be mathematically verified to anticipate deadlocks, ensure consistency, and determine object state reachability. Scalability is offered through the concept of behavioral inheritance; and, FOIL s inherent support for modeling concurrent behavior and all known workflow patterns is demonstrated. The concepts of process achievability, process complete achievability, and process determinism are introduced with an algorithm for simulating the execution of a FOIL object model using a FOIL process model. Finally, a technique for using a FOIL process model as a constraint on FOIL object system execution is offered as a method to ensure that object-oriented systems modeled in FOIL will complete their processes based activities. FOIL s capabilities are compared and contrasted with an extensive array of current software modeling techniques. FOIL is ideally suited for data-aware, behavior based systems such as interactive or process management software. INDEX WORDS: object-orientation, Formal Object Interaction Language (FOIL), concurrency, -calculus, process verification, behavioral inheritance, formal methods FORMAL OBJECT INTERACTION LANGUAGE: MODELING AND VERIFICATION OF SEQUENTIAL AND CONCURRENT OBJECT-ORIENTED SOFTWARE
منابع مشابه
Modeling and Evaluation of Stochastic Discrete-Event Systems with RayLang Formalism
In recent years, formal methods have been used as an important tool for performance evaluation and verification of a wide range of systems. In the view points of engineers and practitioners, however, there are still some major difficulties in using formal methods. In this paper, we introduce a new formal modeling language to fill the gaps between object-oriented programming languages (OOPLs) us...
متن کاملModeling and Evaluation of Stochastic Discrete-Event Systems with RayLang Formalism
In recent years, formal methods have been used as an important tool for performance evaluation and verification of a wide range of systems. In the view points of engineers and practitioners, however, there are still some major difficulties in using formal methods. In this paper, we introduce a new formal modeling language to fill the gaps between object-oriented programming languages (OOPLs) us...
متن کاملA Multi-Formalism Modeling Framework: Formal Definitions, Model Composition and Solution Strategies
In this paper, we present a multi-formalism modeling framework (abbreviated by MFMF) for modeling and simulation. The proposed framework is defined based on the concepts of meta-models and uses object-orientation to overcome the complexities and to enhance the extensibility. The framework can be used as a basis for modeling by various formalisms and to support model composition in a unified man...
متن کاملA Multi-Formalism Modeling Framework: Formal Definitions, Model Composition and Solution Strategies
In this paper, we present a multi-formalism modeling framework (abbreviated by MFMF) for modeling and simulation. The proposed framework is defined based on the concepts of meta-models and uses object-orientation to overcome the complexities and to enhance the extensibility. The framework can be used as a basis for modeling by various formalisms and to support model composition in a unified man...
متن کاملApplying Model Checking to Concurrent UML Models
We present, in this paper, a framework supporting a formal verification of concurrent UML models using the Maude language. We consider both static and dynamic features of concurrent object-oriented systems. We focus on UML class, state and communication diagrams. The formal and object-oriented language Maude, based on rewriting logic, supports formal specification and programming of concurrent ...
متن کامل