Abstract

Model-based systems engineering (Buede 2009, Sage 2000) and model-based software engineering (Booch 2007, Gomaa 2011, Blaha 2005) are recognized as important engineering disciplines in which the system under development is modeled and analyzed prior to implementation. In particular, embedded systems, which are software intensive systems consisting of both hardware and software components, benefit considerably from a combined approach that uses both system and software modeling. As described in Chapter 2, the modeling languages used in this book are SysML for systems modeling and UML for software modeling. This chapter provides an overview of the real-time software design method for embedded systems called COMET/RTE ( C oncurrent O bject M odeling and Architectural Design M et hod for R eal- T ime E mbedded systems), which uses the SysML, UML, and MARTE notations. Section 4.1 starts with an overview of the COMET/RTE systems and software life cycle. Section 4.2 describes each of the main phases of COMET/RTE. Section 4.3 compares the COMET/RTE life cycle with the Unified Software Development Process, the spiral model, and agile software development. Section 4.4 provides a survey of design methods for real-time embedded systems. Finally, Section 4.5 gives an introduction to the multiple view modeling and design of real-time embedded software architectures described in this textbook. COMET/RTE SYSTEM AND SOFTWARE LIFE CYCLE MODEL This section presents an overview of the COMET/RTE method from a system and software life cycle perspective. COMET/RTE starts with a systems structural analysis and modeling of the total system (hardware, software, people), which leads to defining the boundary between the system and the external environment and to designing the hardware/software interface. This is followed by an iterative software development process, which is both use case–based and object-oriented. The COMET/RTE life cycle model, which is depicted in Figure 4.1, is highly iterative and encompasses both system and software modeling. Iteration is between successive phases, as well as iterating back through multiple phases using an incremental development approach. Studies have shown that errors in requirements engineering and software architectural design are usually the last to be discovered and the most costly to fix (Boehm 2006), and this is particularly the case for real-time embedded systems. COMET/RTE focuses on requirements and design within an iterative system and software life cycle, as described in this section.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call