Approaches of using UML for Embedded System Design Sudeep D. Thepade

Swapnil D. Thepade

Lecturer, Dept. of Information Technology,

M.E. (Appeared) CAD/CAM and Robotics,

Thadomal Shahani Engg. College, Bandra, Mumbai

Fr. Conceicao Rodrigues College of Engg, Bandra, Mumbai

[email protected]

[email protected]

The platform of implementation may be software or hardware. 1.1. Embedded System

Abstract New approaches are required for analysis, design and specification of Embedded Systems, beyond conventional boundary of hardware and software methods. As per demand of embedded systems these approaches should allow one to combine hardware and software design. Now a days software plays major role in embedded systems. Hence latest trends in software analysis and design must be considered in embedded system analysis and design. The development of Unified Modeling Language (UML) and number of extension proposals in realtime domain are encouraging new design methods above static and traditional biasing of hardware and software design methods UML has some lacunas to support embedded system design and some strengths as well. Several approaches are suggested for using UML to design embedded systems. This paper is an overview of proposals ’How UML can be used for Embedded System Design (ESD)?’ Keywords : UML, ESD.

Modern embedded systems are assemblage of multiple functional units or subsystems that carry out computation and communication using various models of computation. These functional systems are nothing but flexible architectures, implemented using composition of variety of components both hardware and software. Choice of system components depends upon optimality of - Implementation of function - Analysis of alternatives in both hardware and software domains. Specification of flexible hardwaresoftware architectures should be possible. These systems demand new ways of merging hardware and software design methods to cut time required and the risk involved in development. 1.2. ESD requirements In recent years, the complexity of embedded system has exponentially grown because of the growing number of functionalities to be implemented in it. As a result the development time is increasingly difficult to predict and to keep in check. The increased complexity and constantly evolving specifications

1. Introduction ESD is about implementation of a set of functionalities satisfying number of constraints like performance, cost, power consumption, size and weight etc.

1

have motivated designers to look at implementations that can be changed rapidly. As hardwarebased implementation is time consuming and expensive, the interest in software-based implementation has risen to previously unseen levels.

microprocessors, DSPs, digital hardware blocks, optical components. These heterogeneous implementation choices need to be modeled during design. 1.2.3. Reuse and Synthesis Modern embedded system products are too complex to be designed from scratch. The complexity of the embedded software for these systems is growing exponentially. Complexity from heterogeneous functional requirements demands more design knowledge than single product group used to have. All these factors lead the development process towards reuse and synthesis methods driven from system-level models [1].

1.2.1. Assemblage Today’s embedded systems are usually assemblage of subsystems, each of which may be based on a different Model of Computation (MOC). Both functional and architectural descriptions of system may be based on compositions of subsystems. For this kind of design methodology the importance should be equally given to the validity of assemblage and the correctness of assembled subsystems.

1.2.4. Attention to QoS Factors So far, in embedded software design little attention has been paid to hard constraints of software like reaction speed, memory consumption and power consumption, etc. Along with these, the conventional quality measuring factors should also be considered during designing phase.

1.2.2. Heterogeneous Implementation In recent years embedded systems have moved from single function products to incorporating multiple functions. The functionalities from multiple domains of computing, signal processing of audio and video, wired and wireless communication have led to complex embedded systems. These systems are integration of subsystems reflecting a heterogeneous set of Models of Computations. Designing such systems requires set of heterogeneous notations to reflect: continuous and discrete events, data flows, finite state machines, etc. There are also multiple physical implementation domains for embedded systems in addition to these logical domains. Embedded system functions can be realized with the help of assemblage of dataflow and control software/hardware components such as

1.2.5. Context Along with converting functional requirements of the embedded system in to models and executable specifications, the environmental and user driven context for system should also be reflected in design. 2. Unified Modeling Language (UML) UML is an object-oriented modeling language standardized by Object Management Group (OMG) mainly for software systems

2

development. UML is used to specify, visualize, construct and document the artifacts of a software system. It captures decisions and understanding about systems to be constructed. It is used to understand, design, browse, configure, maintain and control information about such systems. UML captures static as well as dynamic behavior of a system. UML consists of a set of basic building blocks, rules that dictate the use and composition of these building blocks, and common mechanisms that enhances the quality of UML models [2]. Its rich notation has made UML a popular modeling language in multiple application domains for system analysis, design and specification. The use of UML with code generation tools is still limited, but is expected to increase as executable dialects are introduced [3][4][5]. To make system specification phase easier and more flexible, UML provides multiple diagrams to model a system from several perspectives and at multiple level of abstraction. It is necessary to follow rigorous design discipline to maintain consistency across several UML diagrams for a system.

Extensions of notations are allowed via stereotypes, tags for particular application. System environments, user access, and test cases can be expressed using Use-Case Diagrams. Class Diagram, Collaboration and Sequence Diagrams can be directly used for ESD. State-Chart diagrams support the behavior of Objects. Deployment and Component diagrams give the mapping of logical concepts to actual implementation environment (platform) which is more important for ESD. Because of growing interest of embedded system and real time system community in UML, OMG wishes to enrich the UML 2.0 by additional functionalities (notations & semantics) to make it more suitable for real time aspects like dataflow, schedulability, performance, time, etc. Even one of the proposals for UML2.0 suggests a profile for SDL (used in real time and embedded software development) [11]. Architectural co-design can be supported be the concept Model-driven Architecture [6], which separates specification from platform.

2.1. UML Strengths for ESD Some of the important strengths of UML(1.4) [2][6][7] and UML(2.0) [8][9][10] to support ESD can be listed as.. The promotion and evolution of UML is handled by Object Modeling Group (OMG) [6], a large standards organization. Additionally it supports Object-Oriented system analysis and design, most popular among software developers. UML is set of heterogeneous notations which can allow design for varied applications.

2.2. UML Lacunas for ESD One of the important deficiencies is the complication of communicating UML models among users due to incompatible stereotypes, tool-dependent semantics and limited capability of code generation from design diagrams. The other key lacks remaining in UML to support embedded system design [12] are: the platform model, action semantics, mapping and refinement methodology to switch platform, the constraint definition and

3

budgeting methodology, communication synthesis, performance analysis.

SDL combined with UML that defines the mapping between the notations.

3. Approaches to use UML for ESD

3.3. Object Structuring of System

For using UML in specification and design of real-time embedded systems variety of supporting and competing approaches have been proposed as response to OMG RFP’s . Good comparison and summary of some of these is found in [13]. These approaches can be studied under the categorization as discussed next.

Object structuring is nothing but functional decomposition of system. These are UML-RT and SDL-UML profiles based on existing languages like ROOM [17] and SDL. The UML-RT profile is now available as Rose-RealTime tool from Rational, which is extension of UML for real time [18] [19].

3.1. UML without Alteration

3.4. UML with Action Semantics

Bruce Powel Douglass has promoted the concept of using UML as is for real time ESD [14]. The main focus was on taking advantage of extensibility in UML stereotypes. Some of the examples can be… Synchronization was represented using UML messages, UML active objects can be used as threads of OS and guarded operation stereotype as semaphores. Hardware design elements like processors, devices etc. can be shown using Node of UML and software elements can be shown using Component.

This approach is applicable to all UML development for embedded systems as well as other software applications. The UML has a formal syntax, but not formal semantics. Lack of defined action semantics has kept UML in documentation domain only. There is a need of well defined, interoperable semantics of action and operations [20]. The improvement in semantics will enable the specification of computation. 3.5. UML with QoS In addition to resource (physical and non-physical) modeling various Quality of Service characteristics like time, clocks, concurrency, schedulibility and performance can also be represented in UML using some class-based stereotypes. The concept is the OMG RFP for a UML profile for scheduling, performance and time [21]. QoS characteristics will serve as the base for embedded system engineering [10].

3.2. Translation from UML SDL based toolsuits supports real time code generation, functional simulation and test generation. So one approach introduced by Telelogic in their Telelogic Tau toolsuite is translation of UML to SDL. Long back Ek introduced the concept of SDL-oriented Object Modeling Technique (SOMT) [15]. More recently some specification proposals like [16] includes concept of

4

collection of platform services can be considered as a system platform API. For functional encapsulation the approach of embedded UML suggest use of blocks as extension of capsule notation. Collaboration diagrams are extended to netlists for functional composition and interfaces, channels with stereo types are used for communication specification. Finally mapping diagrams (extension of deployment diagrams) are used for performance analysis.

3.6.Architectural to Physical Mapping UML allows the mapping of architectural design to physical implementation using component and deployment diagrams. But the current notions of these diagrams are not sufficient to represent mapping of hardware-software co-design. By extension of these diagrams the better mapping can be achieved for embedded system design. The above mentioned OMG RFP for scheduling, performance and time [21] is a step towards this extension.

4. Need of Unified Approach After analyzing the deficiencies of UML to support the specification, development and implementation of software-based embedded systems running on hardware-software platforms, the UML community must have to overcome these lacunas through hardware-software co-design research and extension to UML. From the above discussed approaches, to have commonly acceptable extension, the researchers of hardware and software design fields must have to join hands and work together for ESD-UML.

3.7. UML and Platforms Embedded system platforms can be divided in to three abstraction levelsarchitecture (ARC), application programming interface (API) and application specific programmable (ASP). These can be respectively represented by extending deployment, component and class diagram. UML platform introduces new building blocks to represent specific platform concepts, chooses proper diagrams to model platforms at different abstraction levels, quantifies QoS performance and budgeting constraints.

5. Conclusion Based on the nature of modern embedded systems, to support their design UML has its own strengths and weaknesses. To use UML for ESD many extensions have been proposed, but still the embedded system developer community is waiting for commonly acceptable complete solution.

3.8. Embedded UML Embedded UML was research project for defining and proposing, a UML profile suitable for ESD. Embedded UML retains best of UML and real time UML like class diagrams, use cases and sequence diagrams. As complement to these it supports platform model in hardware and software for implementation architecture. The

5

6. References [12]. Grant Martin, Luciano Lavagno, and Jean Louis-Guerin, “Embedded UML: a merger of real-time UML and codesign”, CODES 2001, Copenhagen, April 2001, pp.23-28. [13]. Ganssle, J. “Navigating through new development environments”, Embedded Systems Programming, May, 1999, pp. 22-30. [14]. Douglass, B. P. Doing Hard Time – Developing Real-Time Systems with UML, Objects, Frameworks and Patterns, Addison-Wesley, 1999. [15]. Ek, A. “The SOMT Method”, Telelogic white paper, Sept. 19, 1995. [16]. Bikander, M. “Graphical Programming Using UML and SDL”, IEEE Computer, Dec. 2000, pp. 30-35. [17]. Selic, B., Gullekson, G. and Ward, P. Real-Time Object-Oriented Modeling, John Wiley and Sons, New York, 1994. [18]. Selic, B. and Rumbaugh, J. “Using UML for Modeling Complex Real-Time Systems”, white paper, Rational (ObjecTime), March 11, 1998. [19]. Selic, B. “Turning clockwise: using UML in the real-time domain,” Comms. of the ACM, Oct., 1999, pp. 46-54. [20]. OMG Request for Proposal: Action Semantics for the UML RFP, OMG document: ad/98-11-01. [21]. OMG Request for Proposal: UML Profile for Scheduling, Performance and Time, OMG document: ad/99-03-13.

[1]. Alberto Sangiovanni-Vincentelli and Grant Martin, “Platform-Based Design and Software Design Methodology for Embedded Systems”, IEEE Design and Test of Computers, Volume 18, Number 6, November-December 2001, pp. 23-33. [2]. J. Rumbaugh, I. Jacobson, and G. Booch, The Unified Modeling Language User Guide, Addison-Wesley, 1998 [3].UML-RFP, http://www.omg.org/techprocess/meetin gs/schedule/Action_Semantics_for_UM L_RFP.html [4]. B. Selic, Complete HighPerformance Code Generation from UML Models, Proceedings of Embedded System Conference, San Francisco, CA, USA, March 2002. [5]. C. Raistrick, Executable UML for Embedded System Development, Proceedings of Embedded System Conference, San Francisco, CA, USA, March 2002. [6]. The Object Modeling Group, URL : www.omg.org/. [7]. Thomas Weigert, “What Really is UML?”, presentation, October 18, 1999. [8]. Gjalt de Jong, “A UML-Based Design Methodology for Real-Time and Embedded Systems”, DATE 2002. [9]. Bran Selic, “The Real-Time UML Standard: Definition and Application”, DATE 2002, March 2002. [10]. Bran Selic, “A Generic Framework for Modeling Resources with UML”, IEEE Computer, June 2000, p.64-69. [11]. Morgan Björkander, “Graphical Programming Using UML and SDL”, IEEE Computer, December 2000.

6

Approaches of using UML for Embedded System ... - Semantic Scholar

and software. Choice of system components depends upon optimality of. - Implementation of function. - Analysis of alternatives in both hardware and software domains. Specification of flexible hardware- ... These systems are integration of subsystems reflecting a ... continuous and discrete events, data flows, finite state ...

21KB Sizes 1 Downloads 240 Views

Recommend Documents

Approaches of using UML for Embedded System ... - Semantic Scholar
of constraints like performance, cost, power consumption, size and weight etc. The platform of implementation may be ... signal processing of audio and video, wired and wireless communication have led to complex embedded ..... for Proposal: UML. Prof

Spectral Embedded Clustering - Semantic Scholar
A well-known solution to this prob- lem is to relax the matrix F from the discrete values to the continuous ones. Then the problem becomes: max. FT F=I tr(FT KF),.

Two Approaches for the Generalization of Leaf ... - Semantic Scholar
Definition 2.1 Let G be a graph and F a subgraph of G. An edge e of F is called ..... i=1 Bi. By the same proof technique as for the case m = 1, one can transform F ...

Two Approaches for the Generalization of Leaf ... - Semantic Scholar
Center for Combinatorics, Nankai University, .... set E, and a specified vertex r ∈ V , which we call the root of G. If X is a .... Then, contract G2 into one vertex ¯r.

Dynamic Approaches to Cognition - Semantic Scholar
neurocognitive model of the state of the brain-mind. In R. Bootzin, J. Kihlstrom ... nition is a dynamical phenomenon and best understood in dynamical terms. ... cal research, particularly in connectionist form (Smolensky. 1988). By the 1990s, it ...

Dynamic Approaches to Cognition - Semantic Scholar
structure” (Newell and Simon 1976) governing orthodox or. “classical” cognitive science, which ... pirical data on the target phenomenon confirms the hypothe- sis that the target is itself .... Artificial Intelligence 72: 173–215. Bingham, G.

Pattern-based approaches to semantic relation ... - Semantic Scholar
assessment of semantic information that can be automatically extracted from machine readable dictionaries (MRDs). In fact, a large body of research has been ...

using rapd markers - Semantic Scholar
based on this, cluster analysis was done using minimum variance algorithm. Cluster analysis showed two major groups. Each sub-group was characterized ...

using rapd markers - Semantic Scholar
RAPD data were used to calculate a Squared Euclidean Distance matrix, and based on this, cluster ... Africa, South-East, Asia, U.S.A, Brazil, Australia and. Turkey. In some ... homogenate was cooled to room temperature and extracted with 5 ...

A handy multi-coupon system - Semantic Scholar
... of a coin. Indeed, in a coupon system, every coupon is redeemed to the service provider that has ... are useful means to draw the attention of potential customers. Due to the di- ...... An efficient online electronic cash with unlinkable exact ..

A Scalable Messaging System for Accelerating ... - Semantic Scholar
using these HEC platforms in the paper. Keywords-associative messaging system, publish/subscribe, in- situ/in-transit analytics, data staging. I. INTRODUCTION.

A 3D Shape Measurement System - Semantic Scholar
With the technical advancement of manufacturing and industrial design, the ..... Matlab, http://www.vision.caltech.edu/bouguetj/calib_do c/. [3] O. Hall-Holt and S.

Microsoft Research Treelet Translation System - Semantic Scholar
impact of parser error, we translated n-best parses. 3.6. .... Proceedings of ACL 2005, Ann Arbor, MI, USA, 2005. ... State University of New York Press, 1988.

An Energy-Efficient Heterogeneous System for ... - Semantic Scholar
IV, we describe the system architecture. In Section V, we present the performance characteristics of the workloads. In. Section VI, we evaluate the energy ...

Thermo-Tutor: An Intelligent Tutoring System for ... - Semantic Scholar
The Intelligent Computer Tutoring Group (ICTG)1 has developed a ... the years in various design tasks such as SQL queries [9], database ..... Chemical and Process Engineering degree at the University of ..... J. Learning Sciences, vol. 4, no. 2,.

A Scalable Messaging System for Accelerating ... - Semantic Scholar
the staging area that comprises of a smaller set of dedicated cores, typically on .... server nodes, it transparently dissembles the data query and disseminates the ...

A Multi-Agent System for Airline Operations Control - Semantic Scholar
(Eds.): 7th International Conference on PAAMS'09, AISC 55, pp. 159-168 ... Operations control is one of the most important areas in an airline company. Through ...

Using Logic Models for Program Development1 - Semantic Scholar
Extension Service, Institute of Food and Agricultural Sciences, University of Florida, Gainesville, FL 32611-0540. ... state specialists, and administrators.

Customized Cognitive State Recognition Using ... - Semantic Scholar
training examples that allow the algorithms to be tailored for each user. We propose a ..... to the user-specific training example database. The TL module is used ...

Quantifying Organismal Complexity using a ... - Semantic Scholar
Feb 14, 2007 - stomatitis virus, and to illustrate the consistency of our approach and its applicability. Conclusions/Significance. Because. Darwinian evolution ...

Lightpath Protection using Genetic Algorithm ... - Semantic Scholar
connectivity between two nodes in the network following a failure by mapping ... applications and high speed computer networks because of huge bandwidth of ...

Acoustic Modeling Using Exponential Families - Semantic Scholar
For general exponential models, there is no analytic solution for maximizing L(θ) and we use gradient based numerical op- timization methods. This requires us ...

Efficient parallel inversion using the ... - Semantic Scholar
Nov 1, 2006 - Centre for Advanced Data Inference, Research School of Earth Sciences, Australian National University, Canberra, ACT. 0200 ... in other ensemble-based inversion or global optimization algorithms. ... based, which means that they involve