Model-driven architecture (MDA) has become a main stream technology for software-intensive system design. The main engineering principle behind it is that the inherent complexity of software development can only be ...Model-driven architecture (MDA) has become a main stream technology for software-intensive system design. The main engineering principle behind it is that the inherent complexity of software development can only be mastered by building, analyzing and manipulating system models. MDA also deals with system complexity by provid- ing component-based design techniques, allowing indepen- dent component design, implementation and deployment, and then system integration and reconfiguration based on com- ponent interfaces. The model of a system in any stage is an integration of models of different viewpoints. Therefore, for a model-driven method to be applied effectively, it must pro- vide a body of techniques and an integrated suite of tools for model construction, validation, and transformation. This requires a number of modeling notations for the specifica- tion of different concerns and viewpoints of the system. These notations should have formally defined syntaxes and a unified theory of semantics. The underlying theory of the method is needed to underpin the development of tools and correct use of tools in software development, as well as to formally ver- ify and reason about properties of systems in mission-critical applications. The modeling notations, techniques, and tools must be designed so that they can be used seamlessly in sup- porting development activities and documentation of artifactsin software design processes. This article presents such a method, called the rCOS, focusing on the models of a system at different stages in a software development process, their se- mantic integration, and how they are constructed, analyzed, transformed, validated, and verified.展开更多
文摘Model-driven architecture (MDA) has become a main stream technology for software-intensive system design. The main engineering principle behind it is that the inherent complexity of software development can only be mastered by building, analyzing and manipulating system models. MDA also deals with system complexity by provid- ing component-based design techniques, allowing indepen- dent component design, implementation and deployment, and then system integration and reconfiguration based on com- ponent interfaces. The model of a system in any stage is an integration of models of different viewpoints. Therefore, for a model-driven method to be applied effectively, it must pro- vide a body of techniques and an integrated suite of tools for model construction, validation, and transformation. This requires a number of modeling notations for the specifica- tion of different concerns and viewpoints of the system. These notations should have formally defined syntaxes and a unified theory of semantics. The underlying theory of the method is needed to underpin the development of tools and correct use of tools in software development, as well as to formally ver- ify and reason about properties of systems in mission-critical applications. The modeling notations, techniques, and tools must be designed so that they can be used seamlessly in sup- porting development activities and documentation of artifactsin software design processes. This article presents such a method, called the rCOS, focusing on the models of a system at different stages in a software development process, their se- mantic integration, and how they are constructed, analyzed, transformed, validated, and verified.