Evaluation of an Abstract Component Model for Embedded Systems Development

Christian Bunse, Yunja Choi, Hans Gerhard Gross
2012 Journal of Information Processing Systems  
Model-driven and component-oriented development is increasingly being used in the development of embedded systems. When combined, both paradigms provide several advantages, such as higher reuse rates, and improved system quality. Performing model-driven and component-oriented development should be accompanied by a component model and a method that prescribes how the component model is used. This article provides an overview on the MARMOT method, which consists of an abstract component model and
more » ... a methodology for the development of embedded systems. The paper describes a feasibility study that demonstrates MARMOT's capability to alleviate system design, verification, implementation, and reuse. Results indicate that model-driven and component-based development following the MARMOT method outperforms Agile development for embedded systems, leads to maintainable systems, and higher than normal reuse rates. Evaluation of an Abstract Component Model for Embedded Systems Development 540 specific bindings for supporting specific programming languages. In contrast, this paper makes use of an abstract component model in order to abstract concrete bindings, focusing on abstract component descriptions rather than on concrete component implementations. Abstract component models deal with system design at a higher level of abstraction than executable units, and they enable engineers to plan and reason about a system architecture or its behavior, without having to implement it. This paper presents an evaluation of the MARMOT method and its abstract component model [9] with respect to its capability to support component reuse, and to alleviate verification and implementation/composition. It demonstrates how an abstract component model facilitates early verification and assessment of composition. It also compares the effects of higher-level modeling with the Agile approach often used in the industry. A primary concern of this article is to demonstrate how an abstract component model facilitates the reuse of concepts and models, rather than merely executable assets, so that the abstract system design can be instantiated for verification, and, at the same time, realized in terms of concrete executable components. That way, an abstract component model can be used to detach the system design from the implementation, so that the system can be refined and realized in a range of platforms, using various implementation technologies. The article is structured as follows: Section 2 gives a short overview on the Agile method used throughout the context of this paper. Section 3 briefly introduces the MARMOT methodology including its abstract component model and its process model. Section 4 outlines a system used as demonstrator case study. Section 5 presents the evaluation of the MARTMOT method in comparison with the Agile development approach. Section 6 presents related work about component-based development methods that apply modeling techniques for system design. Finally, Section 7 summarizes and concludes this paper.
doi:10.3745/jips.2012.8.4.539 fatcat:2txmyphn6nhzpozxrirjseseja