Spelling suggestions: "subject:"modelbased devevelopment"" "subject:"modelbased agentdevelopment""
1 |
Making Simulink Models Robust with Respect to ChangeJaskolka, Monika January 2020 (has links)
PhD Thesis (Software Engineering) / Model-Based Development (MBD) is an approach that uses software models to describe the behaviour of embedded software and cyber-physical systems. MBD has become an increasingly prevalent paradigm, with Simulink by MathWorks being the most widely used MBD platform for control software. Unlike textual programming languages, visual languages for MBD such as Simulink use block diagrams as their syntax. Thus, some software engineering principles created for textual languages are not easily adapted to this graphical notation or have not yet been supported. A software engineering principle that is not readily supported in Simulink is the modularization of systems using information hiding. As with all software artifacts, Simulink models must be constantly maintained and are subject to evolution over their lifetime. This principle hides likely changes, thus enabling the design to be robust with respect to future changes.
In this thesis, we perform repository mining on an industry change management system of Simulink models to understand how they are likely to change. Then, we explore the various modelling mechanisms available in the Simulink language to see how they could support modular design with information hiding. Next, we propose a module structure, syntactic interface, and modelling conventions for Simulink designs, which are supported by our open-source Simulink Module Tool. Finally, we apply the proposed techniques on case studies from the aerospace and nuclear domains, in order to demonstrate their practicality and validate their effectiveness. Overall, the approach helped support information hiding by encapsulating secrets and facilitating likely changes. It also had a positive effect on interface complexity, cohesion, and coupling. The larger system also exhibited reductions to cyclomatic complexity, testing effort, and execution time, but the smaller case study benefited less in these areas. / Thesis / Doctor of Philosophy (PhD)
|
2 |
A Methodology for the Simplification of Tabular Designs in Model-Based DevelopmentBialy, Monika 06 1900 (has links)
Model-based development (MBD) is an increasingly used approach for the development of embedded control software, with Matlab Simulink/Stateflow as the widely accepted language. The adoption of this development paradigm is prevalent in many safety-critical domains, including the automotive industry. With an increasing reliance on software for controlling vehicle functionality and the yearly advent of new vehicle features, automotive models have been growing in size and complexity, causing them to become increasingly difficult to maintain, refactor, and test. Given the centrality of models in MBD, it is a requisite that they be maintained under well-defined and principled software development processes that use precise notation to document system requirements and behavioural design description.
Tabular methods have long been used for defining decision-making logic in software, due to their concise and precise manner of communicating complex behaviour, so it is not surprising that they are finding increased use in automotive software models. Thus their presence in Simulink models is increasingly prominent in the implementation of complex behaviour in production code. As a result of the safety-critical nature of the automotive industry, as well as the increasing size and complexity of its models, reliable refactoring and simplification techniques for tabular expressions are becoming an important need for automotive companies. To address this need, this thesis presents a methodology for refactoring complex tabular designs to improve requirements traceability with a focus on Matlab Simulink/Stateflow and the MBD approach.
A case study of industrial examples from an automotive partner are used to motivate the work and demonstrate the proposed methodology's effectiveness in reducing design size and complexity, while also increasing testability and requirements traceability. / Thesis / Master of Applied Science (MASc)
|
3 |
Automatic test vector generation and coverage analysis in model-based software developmentAndersson, Jonny January 2005 (has links)
<p>Thorough testing of software is necessary to assure the quality of a product before it is released. The testing process requires substantial resources in software development. Model-based software development provides new possibilities to automate parts of the testing process. By automating tests, valuable time can be saved. This thesis focuses on different ways to utilize models for automatic generation of test vectors and how test coverage analysis can be used to assure the quality of a test suite or to find "dead code" in a model. Different test-automation techniques have been investigated and applied to a model of an adaptive cruise control system (ACC) used at Scania. Source code has been generated automatically from the model, model coverage and code coverage has therefore been compared. The work with this thesis resulted in a new method to create test vectors for models based on a combinatorial test technique.</p>
|
4 |
Model and tool integration in high level design of embedded systemsShi, Jianlin January 2007 (has links)
<p>The development of advanced embedded systems requires a systematic approach as well as advanced tool support in dealing with their increasing complexity. This complexity is due to the increasing functionality that is implemented in embedded systems and stringent (and conflicting) requirements placed upon such systems from various stakeholders. The corresponding system development involves several specialists employing different modeling languages and tools. Integrating their work and the results thereof then becomes a challenge. In order to facilitate system architecting and design integration of different models, an approach that provides dedicated workspaces/views supported by structured information management and information exchange between domain models and tools is required.</p><p>This work is delimited to the context of embedded systems design and taking a model based approach. The goal of the work is to study possible technical solutions for integrating different models and tools, and to develop knowledge, support methods and a prototype tool platform.</p><p>To this end, this thesis examines a number of approaches that focus on the integration of multiple models and tools. Selected approaches are compared and characterized, and the basic mechanisms for integration are identified. Several scenarios are identified and further investigated in case studies. Two case studies have been performed with model transformations as focus. In the first one, integration of Matlab/Simulink® and UML2 are discussed with respect to the motivations, technical possibilities, and challenges. A preliminary mapping strategy, connecting a subset of concepts and constructs of Matlab/Simulink® and UML2, is presented together with a prototype implementation in the Eclipse environment. The second case study aims to enable safety analysis based on system design models in a UML description. A safety analysis tool, HiP-HOPS (Hierarchically Performed Hazard Origin and Propagation Studies), is partially integrated with a UML tool where an EAST-ADL2 based architecture model is developed. The experience and lessons learned from the experiments are reported in this thesis.</p><p>Multiple specific views are involved in the development of embedded systems. This thesis has studied the integration between system architecture design, function development and safety analysis through using UML tools, Matlab/Simulink, and HiP-HOPS. The results indicate that model transformations provide a feasible and promising solution for integrating multiple models and tools. The contributions are believed to be valid for a large class of advanced embedded systems. However, the developed transformations so far are not really scalable. A systematic approach for efficient development of model transformations is desired to standardize the design process and reuse developed transformations. To this end, future studies will be carried out to develop guidelines for model and tool integration and to provide support for structured information at both meta level and instance level.</p>
|
5 |
Credible autocoding of control softwareWang, Timothy 21 September 2015 (has links)
Formal methods is a discipline of using a collection of mathematical techniques and formalisms to model and analyze software systems. Motivated by the new formal methods-based certification recommendations for safety-critical embedded software and the significant increase in the cost of verification and validation (V\&V), this research is about creating a software development process for control systems that can provide mathematical guarantees of high-level functional properties on the code. The process, dubbed credible autocoding, leverages control theory in the automatic generation of control software documented with proofs of their stability and performance. The main output of this research is an automated, credible autocoding prototype that transforms the Simulink model of the controller into C code documented with a code-level proof of the stability of the controller. The code-level proof, expressed using a formal specification language, are embedded into the code as annotations. The annotations guarantee that the auto-generated code conforms to the input model to the extent that key properties are satisfied. They also provide sufficient information to enable an independent, automatic, formal verification of the auto-generated controller software.
|
6 |
Model Based Development of Embedded Systems using Logical Clock Constraints and Timed AutomataSuryadevara, Jagadish January 2013 (has links)
In modern times, human life is intrinsically depending on real-time embedded systems (RTES) with increasingly safety-critical and mission-critical features, for instance, in domains such as automotive and avionics. These systems are characterized by stringent functional requirements and require predictable timing behavior. However, the complexity of RTES has been ever increasing requiring systematic development methods. To address these concerns, model-based frameworks and component-based design methodologies have emerged as a feasible solution. Further, system artifacts such as requirements/specifications, architectural designs as well as behavioral models like statemachine views are integrated within the development process. However, several challenges remain to be addressed, out of which two are especially important: expressiveness, to represent the real-time and causality behavior, and analyzability, to support verification of functional and timing behavior. As the main research contribution, this thesis presents design and verification techniques for model-based development of RTES, addressing expressiveness and analyzability for architectural and behavioral models. To begin with, we have proposed a systematic design process to support component-based development. Next, we have provided a real-time semantic basis, in order to support expressiveness and verification for structural and behavioral models. This is achieved by defining an intuitive formal semantics for real-time component models, using ProCom, a component model developed at our research centre, and also using the CCSL (Clock Constraint Specification Language), an expressive language for specification of timed causality behavior. This paves the way for formal verification of both architectural and behavioral models, using model checking, as we show in this work, by transforming the models into timed automata and performing verification using UPPAAL, a model checking tool based on timed automata. Finally, the research contributions are validated using representative examples of RTES as well as an industrial case-study. / ARROWS
|
7 |
AP1: A Platform for Model-Based Software EngineeringLutteroth, Christof January 2008 (has links)
This thesis describes the AP1 system, which serves as a platform for model-based CASE technology. AP1 is a set of libraries and tools that support different activities in the software development process. It provides different layers of reusable CASE functionality, and thus facilitates CASE tool development and integration. Some key problems of software development are addressed, such as the storage and management of artifacts, their creation and modification, and the generation of program code. The main parts of the abstract platform are a typed repository for models and model data, and a generic editor that acts as an integrated software development environment (IDE). The former enables data integration; the latter serves as a basis for presentation integration. Both parts have an extensible and customizable architecture that makes it possible for developers to adapt the system to their own individual needs. The thesis discusses different data models, explaining why the parsimonious data model was chosen for the repository. A mapping onto the relational data model is given that makes it possible to leverage a RDBMS for data management. On top of the RDBMS, the AP1 system implements new mechanisms for caching, event notification and change control, resulting in a unique architecture. The thesis introduces novel concepts of robustness and reflection for user interfaces, and delineates their implementation in the generic editor. Furthermore, a concept for code generators is presented that offers a particularly high degree of type-safety, which we call generator type-safety.
|
8 |
AP1: A Platform for Model-Based Software EngineeringLutteroth, Christof January 2008 (has links)
This thesis describes the AP1 system, which serves as a platform for model-based CASE technology. AP1 is a set of libraries and tools that support different activities in the software development process. It provides different layers of reusable CASE functionality, and thus facilitates CASE tool development and integration. Some key problems of software development are addressed, such as the storage and management of artifacts, their creation and modification, and the generation of program code. The main parts of the abstract platform are a typed repository for models and model data, and a generic editor that acts as an integrated software development environment (IDE). The former enables data integration; the latter serves as a basis for presentation integration. Both parts have an extensible and customizable architecture that makes it possible for developers to adapt the system to their own individual needs. The thesis discusses different data models, explaining why the parsimonious data model was chosen for the repository. A mapping onto the relational data model is given that makes it possible to leverage a RDBMS for data management. On top of the RDBMS, the AP1 system implements new mechanisms for caching, event notification and change control, resulting in a unique architecture. The thesis introduces novel concepts of robustness and reflection for user interfaces, and delineates their implementation in the generic editor. Furthermore, a concept for code generators is presented that offers a particularly high degree of type-safety, which we call generator type-safety.
|
9 |
AP1: A Platform for Model-Based Software EngineeringLutteroth, Christof January 2008 (has links)
This thesis describes the AP1 system, which serves as a platform for model-based CASE technology. AP1 is a set of libraries and tools that support different activities in the software development process. It provides different layers of reusable CASE functionality, and thus facilitates CASE tool development and integration. Some key problems of software development are addressed, such as the storage and management of artifacts, their creation and modification, and the generation of program code. The main parts of the abstract platform are a typed repository for models and model data, and a generic editor that acts as an integrated software development environment (IDE). The former enables data integration; the latter serves as a basis for presentation integration. Both parts have an extensible and customizable architecture that makes it possible for developers to adapt the system to their own individual needs. The thesis discusses different data models, explaining why the parsimonious data model was chosen for the repository. A mapping onto the relational data model is given that makes it possible to leverage a RDBMS for data management. On top of the RDBMS, the AP1 system implements new mechanisms for caching, event notification and change control, resulting in a unique architecture. The thesis introduces novel concepts of robustness and reflection for user interfaces, and delineates their implementation in the generic editor. Furthermore, a concept for code generators is presented that offers a particularly high degree of type-safety, which we call generator type-safety.
|
10 |
AP1: A Platform for Model-Based Software EngineeringLutteroth, Christof January 2008 (has links)
This thesis describes the AP1 system, which serves as a platform for model-based CASE technology. AP1 is a set of libraries and tools that support different activities in the software development process. It provides different layers of reusable CASE functionality, and thus facilitates CASE tool development and integration. Some key problems of software development are addressed, such as the storage and management of artifacts, their creation and modification, and the generation of program code. The main parts of the abstract platform are a typed repository for models and model data, and a generic editor that acts as an integrated software development environment (IDE). The former enables data integration; the latter serves as a basis for presentation integration. Both parts have an extensible and customizable architecture that makes it possible for developers to adapt the system to their own individual needs. The thesis discusses different data models, explaining why the parsimonious data model was chosen for the repository. A mapping onto the relational data model is given that makes it possible to leverage a RDBMS for data management. On top of the RDBMS, the AP1 system implements new mechanisms for caching, event notification and change control, resulting in a unique architecture. The thesis introduces novel concepts of robustness and reflection for user interfaces, and delineates their implementation in the generic editor. Furthermore, a concept for code generators is presented that offers a particularly high degree of type-safety, which we call generator type-safety.
|
Page generated in 0.071 seconds