Model-based software development uses a model as the centerpiece of the development process. Software engineers create a model of the system behavior that can then be translated into different languages such as C or Ada by the appropriate code generator. The model is continually refined throughout the development process and can even be executable. For maximum benefit, the generated code should not be modified by software engineers; when changes are desired, the model is revised and code is generated from the revised model. Both the modeling tool and the code generation tool are part of a toolset that makes up the model-based development system, referred to in this guidance as MBDS. Efficiency is a key benefit of using MBDS, but there are many considerations to be reviewed when deciding whether MBDS is the right choice for a project. For a list of pros and cons, see the
Determining the need for MBDS section of this guidance. This document addresses guidance for projects that desire to use MBDS. This guidance addresses: Role Responsibility Project Manager Approves MBDS acquisition Software Project Lead MBDS analysis and selection, project procedure development Software Engineers Carrying out recommended practices V&V Personnel Receive, verify and validate MBDS tools, auto-generated code Before automatically assuming that MBDS is the right choice, it should be determined whether this type of system is appropriate for the project. The following questions should be addressed when making this determination: Once the decision has been made that MBDS is appropriate for a project, the actual system needs to be selected. When choosing a system, the following considerations should be included in the decision-making process: As with any development methodology, there are issues associated with MBDS and practices that can result in unintended consequences. To ensure the best outcome for a project using MBDS, the following recommendations should be part of the process of developing associated procedures: The following practices, collected from a variety of sources, are recommended practices when using MBDS in a project. These practices should be considered when developing project or center procedures for the use of MBDS: Tools to aid in compliance with this Topic, if any, may be found in the Tools Library in the NASA Engineering Network (NEN). NASA users find this in the Tools Library in the Software Processes Across NASA (SPAN) site of the Software Engineering Community in NEN. The list is informational only and does not represent an “approved tool list”, nor does it represent an endorsement of any particular tool. The purpose is to provide examples of tools being used across the Agency and to help projects and centers decide what tools to consider.
See edit history of this section
Post feedback on this section
1. Introduction
1.2 Purpose
1.3 Roles
2. Determining the need for MBDS
3. Choosing MBDS
See also Recommended Practices4. Issues and Pitfalls, Practices to Avoid
5. Recommended Practices
6. Resources
6.1 Tools
7.11 - Model Based Development and Auto-generated Code
Web Resources
View this section on the websiteUnknown macro: {page-info}
0 Comments