Model based development Research Papers (original) (raw)

Incomplete, inaccurate, ambiguous, and volatile requirements have plagued the software industry since its inception. The convergence of model-based develop- ment and formal methods ofiers developers of safety- critical systems a powerful... more

Incomplete, inaccurate, ambiguous, and volatile requirements have plagued the software industry since its inception. The convergence of model-based develop- ment and formal methods ofiers developers of safety- critical systems a powerful new approach for the early validation of requirements. This paper describes a case study conducted to determine if formal methods could be used to validate system requirements early in the lifecycle at reasonable cost. Several hundred functional and safety requirements for the mode logic of a typical Flight Guidance System were captured as natural lan- guage \shall" statements. A formal model of the mode logic was written in the RSML¡e language and trans- lated into the NuSMV model checker and the PVS the- orem prover using translators developed as part of the project. Each \shall" statement was manually translated into a NuSMV or PVS property and proven using these tools. Numerous errors were found in both the origi- nal requirements and ...

Driven by market needs and laws, automotive manufacturers develop ever more feature-rich and complex vehicles. This new functionality plays even an active role in driving, what poses many new challenges on assuring the safety of the... more

Driven by market needs and laws, automotive manufacturers develop ever more feature-rich and complex vehicles. This new functionality plays even an active role in driving, what poses many new challenges on assuring the safety of the vehicle. Safety cases constitute a proven technique to systematically use existing information about a system, its environment, and development context to show its safety.

This paper describes and demonstrates an approach that promises to bridge the gap between model-based systems engineering and the safety process of automotive embedded systems. The basis for this is the integration of safety analysis... more

This paper describes and demonstrates an approach that promises to bridge the gap between model-based systems engineering and the safety process of automotive embedded systems. The basis for this is the integration of safety analysis techniques, a method for developing and managing Safety Cases, and a systematic approach to model-based engineering – the EAST-ADL2 architecture description language. Three areas are highlighted: (1) System model development on different levels of abstraction. This enables fulfilling many requirements on software development as specified by ISO-CD-26262; (2) Safety Case development in close connection to the system model; (3) Analysis of mal-functional behaviour that may cause hazards, by modelling of errors and error propagation in a (complex and hierarchical) system model.

Within the software engineering community it is widely accepted that design patterns are very helpful to develop well-structured software. The same kind of support is expected of HCI-Patterns. In this paper we discuss an approach... more

Within the software engineering community it is widely accepted that design patterns are very helpful to develop well-structured software. The same kind of support is expected of HCI-Patterns. In this paper we discuss an approach integrating the usage of patterns into a model-based development process. A GUI-editor is presented that has been extended by features allowing the application instances of

This paper proposes a model-based lifecycle for the development of web services, which is based on two kinds of models, collaboration models and service ones. After agreeing upon a collaboration model, which is a public specification,... more

This paper proposes a model-based lifecycle for the development of web services, which is based on two kinds of models, collaboration models and service ones. After agreeing upon a collaboration model, which is a public specification, each party can work out a service model and then can turn it into a process written in an orchestration language such as BPEL. As the conceptual gap between a service model and its BPEL implementation is relevant, this paper is concerned with the automatic mapping of service models to BPEL processes, in line with model-based development. Moreover it discusses how to validate services with respect to collaboration models both at-design time and at run-time, and presents the bProgress software environment, which is made up of a number tools developed during this research.

Safety analysis techniques have traditionally been performed manually by the safety engineers. Since these analyses are based on an informal model of the system, it is unlikely that these analyses will be complete, consistent, and... more

Safety analysis techniques have traditionally been performed manually by the safety engineers. Since these analyses are based on an informal model of the system, it is unlikely that these analyses will be complete, consistent, and error-free. Using precise formal models of the system as the basis of the analysis may help reduce errors and provide a more thorough analysis. Further, these models allow automated analysis, which may reduce the manual effort required. The process of creating system models suitable for safety analysis closely parallels the model-based development process that is increasingly used for critical system and software development. By leveraging the existing tools and techniques, we can create formal safety models using tools that are familiar to engineers and we can use the static analysis infrastructure available for these tools. This paper reports our initial experience in using model-based safety analysis on an example system taken from the ARP Safety Assessment guidelines document.

The paper describes a model-integrated approach for embedded software development that is based on domain-specific, multiple-view models used in all phases of the development process. Models explicitly represent the embedded software and... more

The paper describes a model-integrated approach for embedded software development that is based on domain-specific, multiple-view models used in all phases of the development process. Models explicitly represent the embedded software and the environment it operates in, and capture the requirements and the design of the application, simultaneously. Models are descriptive , in the sense that they allow the formal analysis, verification, and validation of the embedded system at design time. Models are also generative, in the sense that they carry enough information for automatically generating embedded systems using the techniques of program generators. Because of the widely varying nature of embedded systems, a single modeling language may not be suitable for all domains; thus, modeling languages are often domain-specific. To decrease the cost of defining and integrating domain-specific modeling languages and corresponding analysis and synthesis tools, the model-integrated approach is applied in a metamodeling architecture, where formal models of domain-specific modeling languages-called metamodels-play a key role in customizing and connecting components of tool chains. This paper discusses the principles and techniques of model-integrated embedded software development in detail, as well as the capabilities of the tools supporting the process. Examples in terms of real systems will be given that illustrate how the model-integrated approach addresses the physical nature, the assurance issues, and the dynamic structure of embedded software.

Abstract: Nowadays the development without model-based approaches are hardly imaginable, because models are not only closer to human thinking but also help the communication between developers. During a long development process the... more

Abstract: Nowadays the development without model-based approaches are hardly imaginable, because models are not only closer to human thinking but also help the communication between developers. During a long development process the initial model becames inconsistent with the code that can be synchronised manually or automatically by tools. Reverse engineering tools have been created to help developers achieving that the design and the implementation harmonize again. This work examines the importance of the model-based development and gives an overview of the state-of-the-art reverse engineering methods and tools. Round-trip engineering is a more advanced approach of software development than reverse engineering, because the changes that affect the design are made not in the code but in the model, hereby better software quality can be achieved.

In the model-based development context, metamodel-based languages are increasingly being defined and adopted either for general purposes or for specific domains of interest. However, meta-languages such as the MOF (Meta Object... more

In the model-based development context, metamodel-based languages are increasingly being defined and adopted either for general purposes or for specific domains of interest. However, meta-languages such as the MOF (Meta Object Facility)—combined with the OCL (Object Constraint Language) for expressing constraints—used to specify metamodels focus on structural and static semantics but have no built-in support for specifying behavioral semantics. This paper introduces a formal semantic framework for the definition of the semantics of metamodel-based languages. Using metamodelling principles, we propose several techniques, some based on the translational approach while others based on the weaving approach, all showing how the Abstract State Machine formal method can be integrated with current metamodel engineering environments to endow language metamodels with precise and executable semantics. We exemplify the use of our semantic framework by applying the proposed techniques to the OMG metamodelling framework for the behaviour specification of the Finite State Machines provided in terms of a metamodel.

The Test Automation Framework (TAF) approach for model-based development and automatic test generation has been demonstrated to reduce cycle time by 50% and increase quality by eliminating requirement defects to reduce rework, and... more

The Test Automation Framework (TAF) approach for model-based development and automatic test generation has been demonstrated to reduce cycle time by 50% and increase quality by eliminating requirement defects to reduce rework, and automating test. The paper describes organizational best practices for applying model-based testing of requirement and design-based models, and describes concepts of model defect analysis, and test sequences used to verify dynamic systems. Lastly, it describes approaches for applying model-based test generation tools with test driver generation and code coverage tools to support verification of high integrity software-intensive systems.

This paper describes and demonstrates an approach that promises to bridge the gap between model-based systems engineering and the safety process of automotive embedded systems. The basis for this is the integration of safety analysis... more

This paper describes and demonstrates an approach that promises to bridge the gap between model-based systems engineering and the safety process of automotive embedded systems. The basis for this is the integration of safety analysis techniques, a method for developing and managing Safety Cases, and a systematic approach to model-based engineering – the EAST-ADL2 architecture description language. Three areas are highlighted: (1) System model development on different levels of abstraction. This enables fulfilling many requirements on software development as specified by ISO-CD-26262; (2) Safety Case development in close connection to the system model; (3) Analysis of mal-functional behaviour that may cause hazards, by modelling of errors and error propagation in a (complex and hierarchical) system model.

In the model-based development context, metamodel-based languages are increasingly being defined and adopted either for general purposes or for specific domains of interest. However, meta-languages such as the MOF (Meta Object... more

In the model-based development context, metamodel-based languages are increasingly being defined and adopted either for general purposes or for specific domains of interest. However, meta-languages such as the MOF (Meta Object Facility)—combined with the OCL (Object Constraint Language) for expressing constraints—used to specify metamodels focus on structural and static semantics but have no built-in support for specifying behavioral semantics. This paper introduces a formal semantic framework for the definition of the semantics of metamodel-based languages. Using metamodelling principles, we propose several techniques, some based on the translational approach while others based on the weaving approach, all showing how the Abstract State Machine formal method can be integrated with current metamodel engineering environments to endow language metamodels with precise and executable semantics. We exemplify the use of our semantic framework by applying the proposed techniques to the OMG metamodelling framework for the behaviour specification of the Finite State Machines provided in terms of a metamodel.

This paper describes a six-year partnership between an academic department and a leading maker of softwaredependent medical devices. Central to the collaboration is a campus research laboratory, sponsored by the industrial partner. The... more

This paper describes a six-year partnership between an academic department and a leading maker of softwaredependent medical devices. Central to the collaboration is a campus research laboratory, sponsored by the industrial partner. The laboratory is a venue for software engineering graduate students, under faculty mentorship, to engage in applied and technology transfer-oriented research on safety-critical software technologies and practices. It provides a real-world learning environment that complements and enriches classroom experiences. The industry sponsor has direct access to the detailed results of the research and to well-prepared graduates who know their organization’s technology, engineering practices, challenges, and culture. A hallmark of the laboratory is student teams working under conditions that reflect a real-world industry environment (structured processes, schedules, presentations, and professional work products). The investigations focus on the implications of mod...