UML for Real -

UML for Real (eBook)

Design of Embedded Real-Time Systems
eBook Download: PDF
2007 | 1. Auflage
383 Seiten
Springer US (Verlag)
978-0-306-48738-5 (ISBN)
Systemvoraussetzungen
120,95 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen
The Unified Modeling Language is rapidly gaining acceptance as the mechanism of choice to model complex software systems at various steps of their specification and design, using a number of orthogonal views that illustrate use cases, class diagrams and even detailed state machine-based behaviors of objects.

UML for Real: Design of Embedded Real-Time Systems aims to show the reality of UML as a medium for specification and implementation of real-time systems, illustrating both the current capabilities and limits of UML for this task, and future directions that will improve its usefulness for real-time and embedded product design. It will also cover selected applications examples. The book is an edited volume of solicited chapters.

The table of contents covers:

-UML and the Real-time/Embedded Domain, with chapters on the role of UML in software development and on UML and Real-Time Systems.

-Representing Key Real-Time Concepts with UML, with chapters on logical structure, on modeling system-level behavior using MSCs and extensions, on platform modeling, on hardware and software object modeling, on fine-grain and high-level patterns for real-time systems, on modeling Quality Of Service and metric time, and finally on performance and schedulability analysis using UML.

-Specific Applications, with chapters on UML in the automotive and telecom domains.


-Process and Tools, with chapters on software performance engineering and on UML tools for real-time processes.  
The complexity of most real-time and embedded systems often exceeds that of other types of systems since, in addition to the usual spectrum of problems inherent in software, they need to deal with the complexities of the physical world. That world-as the proverbial Mr. Murphy tells us-is an unpredictable and often unfriendly place. Consequently, there is a very strong motivation to investigate and apply advanced design methods and technologies that could simplify and improve the reliability of real-time software design and implementation. As a result, from the first versions of UML issued in the mid 1990's, designers of embedded and real-time systems have taken to UML with vigour and enthusiasm. However, the dream of a complete, model-driven design flow from specification through automated, optimised code generation, has been difficult to realise without some key improvements in UML semantics and syntax, specifically targeted to the real-time systems problem. With the enhancements in UML that have been proposed and are near standardisation with UML 2. 0, many of these improvements have been made. In the Spring of 2003, adoption of a formalised UML 2. 0 specification by the members of the Object Management Group (OMG) seems very close. It is therefore very appropriate to review the status of UML as a set of notations for embedded real-time systems - both the state of the art and best practices achieved up to this time with UML of previous generations - and where the changes embodied in the 2.

Contents 5
About the Editors 7
Acknowledgements 9
Preface 11
Chapter 1 Models, Software Models and UML 14
1. ON MODELS 14
1.1 The Role of Models in Engineering 14
1.2 Characteristics of Good Engineering Models 16
1.3 Models of Software 16
2. THE UNIFIED MODELING LANGUAGE 21
2.1 Customizing UML 23
2.2 UML Profiles 26
3. SUMMARY 27
REFERENCES 28
Chapter 2 UML for Real-Time 30
1. INTRODUCTION 30
2. QUALITATIVE REAL-TIME FEATURES 32
2.1 Concurrency Modeling 32
2.2 Communication Modeling 36
2.3 Behavior Modeling 41
3. QUANTITATIVE REAL-TIME FEATURES 52
3.1 RT modeling within state diagrams 52
3.2 RT modeling within sequence diagrams 54
3.3 UML Profile for Scheduling, Performance, and Time 55
4. FROM NOTATIONS TO DEVELOPMENT PLATFORMS: THE ACCORD/UML APPROACH 56
5. OMG PERSPECTIVES 61
REFERENCES 62
Chapter 3 Structural Modeling with UML 2.0 66
1. STRUCTURAL CONCEPTS OF UML 2.0 – THE ORIGINS 66
2. EXAMPLE – AN ACCESS CONTROL SYSTEM 68
2.1 Introducing the Example – Domain Statement 68
2.2 Domain Class Model 69
2.3 Behavior Modeling with Interactions (I) 71
2.4 Modeling with Internal Structures 74
2.5 Behavior Modeling with Interactions (II) – Decomposition 76
2.6 Finalizing the Internal Structure 79
2.7 Behavioral Modeling with State machines 81
2.8 The Consistency of Interactions and State Machines 85
3. CONCLUSIONS 88
REFERENCES 88
Chapter 4 Message Sequence Charts 90
1. MSCS AND HMSCS 92
1.1 Basic MSCs 93
1.2 Regular collections of MSCs 94
1.3 High-level MSCs and message sequence graphs 96
1.4 Other work on MSCs 98
2. LIVE SEQUENCE CHARTS 99
2.1 The duality of possible and necessary 100
2.2 Control constructs 104
3. THE PLAY-IN/PLAY-OUT APPROACH 105
3.1 Playing in Behavior 106
3.2 Play-out 108
4. COMMUNICATING TRANSACTION PROCESSES 109
5. SOME EXTENSIONS 113
5.1 Object Features 113
5.2 Timing Constraints 115
REFERENCES 117
Chapter 5 UML and Platform-based Design 120
1. INTRODUCTION 120
1.1 Platform-based Design 121
1.2 UML and Embedded System Design 122
2. BACKGROUND 124
2.1 Related work 124
2.2 The Metropolis design environment 125
3. UML PLATFORM PROFILE 126
3.1 Modeling Platforms Using UML 126
3.2 Stereotypes 127
4. UML PLATFORM DESIGN METHODOLOGY 129
4.1 Design Problem Formulation 130
4.2 Functional Specification 131
4.3 Platform Specification 134
4.4 Communication Refinement 135
4.5 Mapping 137
5. CONCLUSIONS 139
REFERENCES 139
Chapter 6 UML for Hardware and Software Object Modeling 140
1. INTRODUCTION 140
2. EMBEDDED SYSTEM DEVELOPMENT METHODS 142
3. THE HASOC DESIGN LIFECYCLE 143
3.1 Product Concept 144
3.2 Uncommitted Modeling 145
3.3 Committed Modeling 146
3.4 System Integration 147
3.5 Platform Modeling 147
4. CASE STUDY: DIGITAL CAMERA 149
4.1 Uncommitted Model 150
4.2 Committed Modelling 152
4.3 System Integration 153
4.4 Platform Modelling 155
5. CONCLUSIONS AND FURTHER WORK 158
REFERENCES 159
Chapter 7 Fine Grained Patterns for Real-Time Systems 162
1. INTRODUCTION 162
1.1 What is a Design Pattern? 163
1.2 Basic Structure of Design Patterns 166
2. USING DESIGN PATTERNS IN DEVELOPMENT 169
2.1 Pattern Hatching – Locating the right patterns 169
2.2 Pattern Mining – Rolling your own patterns 171
2.3 Pattern Instantiation – Applying Patterns in your designs 172
3. CATEGORIES OF MECHANISTIC PATTERNS 173
3.1 Resource Management 174
3.2 Concurrency 175
3.3 Distribution 177
3.4 Safety and Reliability 178
3.5 Reuse and Software Quality Patterns 181
3.6 Reactive (behavioral) patterns 182
REFERENCES 183
Chapter 8 Architectural Patterns for Real-Time Systems 184
1. INTRODUCTION 184
2. THE BASIC STRUCTURAL MICRO-PATTERNS 185
2.1 The Peer-to-Peer Micro-Pattern 186
2.2 The Container Micro-Pattern 186
2.3 The Layering Micro-Pattern 189
3. THE VIRTUAL-MACHINE LAYERING PATTERN 189
4. THE RECURSIVE CONTROL PATTERN 195
5. SUMMARY 200
REFERENCES 200
Chapter 9 Modeling Quality of Service with UML 202
1. INTRODUCTION 202
2. REQUIREMENTS FOR THE REAL-TIME PROFILE 203
3. COMPONENTS OF THE REAL-TIME PROFILE 205
4. MODELING RESOURCES AND QOS 207
4.1 Resources 207
4.2 Analysis contexts 209
4.3 Categories of resources 211
5. MODELING TIME AND TIMING MECHANISMS 212
5.1 The model of time 212
5.2 Modeling timing mechanisms 214
6. MODELING PLATFORMS 215
7. SUMMARY 216
REFERENCES 217
Chapter 10 Modeling Metric Time 218
1. INTRODUCTION 218
2. PHILOSOPHICAL AND PHYSICAL TIME 221
2.1 Continuous and discrete time 222
3. METRIC TIME AS USED IN OMG PRODUCTS 223
3.1 Point versus interval semantics of time 225
4. TIMING ANALYSIS IN RT UML – THE USER PERSPECTIVE 226
4.1 Interaction-centered models of computation 227
4.2 Time modeling in interaction-centered model of computation – an example 228
5. CONCLUSIONS 230
REFERENCES 232
Chapter 11 Performance Analysis with UML 234
1. INTRODUCTION 234
2. DEFINING PERFORMANCE REQUIREMENTS AND MEASURES 237
3. INPUTS TO ANALYSIS: WORKLOAD PARAMETERS 239
3.1 Resource Annotations 239
3.2 Annotations for a Step on a Sequence Diagram 241
3.3 Annotations for Load Intensity and Path Probability 242
4. DEFINING A SCENARIO IN UML 242
4.1 Defining a Scenario by a Sequence Diagram 243
4.2 Defining a Scenario by an Activity Diagram 244
5. PERFORMANCE MODELING 245
5.1 Layered Queueing Model 247
5.2 LQN for the Building Security System 247
5.3 Analysis Results 249
6. CONCLUSIONS 252
REFERENCES 252
Chapter 12 Schedulability Analysis with UML 254
1. INTRODUCTION 254
1.1 The logical model 257
1.2 The physical architecture 259
2. INTRODUCTION TO SCHEDULABILITY ANALYSIS 261
2.1 Rate Monotonic Analysis 261
2.2 Shared resources and priority inversion 264
3. SCHEDULABILITY ANALYSIS OF OO DESIGNS USING RMA: TASK CENTRIC DESIGN 268
3.1 Single event synchronization 270
3.2 Multiple-event synchronization 271
4. EVENT CENTRIC DESIGN 272
4.1 Schedulability analysis approach 274
4.2 Single thread implementation 275
4.3 Multi-thread implementation: dynamic thread priorities 276
4.4 Multi-thread implementation: problems with static thread priorities 278
5. AUTOMATED SYNTHESIS 279
6. OTHER APPROACHES 279
7. CONCLUSIONS 280
REFERENCES 280
Chapter 13 Automotive UML 284
1. THE AUTOMOTIVE DOMAIN 284
1.1 Reconciling the Needs of Automotive Software Development with Model-Based Approaches 285
1.2 Automotive Specific Constraints 287
1.3 (Meta) Model-Based Development Processes 288
1.4 Structure of the Chapter 289
2. AML SURVEY 289
2.1 The AML History 290
2.2 AML Features in a Nutshell 290
2.3 Using AML for Automotive Systems Development 292
3. THE AML 293
3.1 Abstraction Levels 294
3.2 Definition of Metamodel Fragments 296
3.3 Use of the Metamodel 299
4. CASE STUDY 304
4.1 The Window Regulator System 304
4.2 Modeling 305
5. CONCLUSIONS 311
REFERENCES 311
Chapter 14 Specifying Telecommunications Systems with UML 314
1. ITU SERVICE DESCRIPTION METHODOLOGY 315
2. ITU SPECIFICATION LANGUAGES 318
3. ENTER UML 319
4. SPECIFYING SERVICE DESCRIPTIONS 320
5. THE UML TELECOM PROFILES 330
REFERENCES 334
Chapter 15 Leveraging UML to Deliver Correct Telecom Applications 336
1. VERIFICATION AND VALIDATION 337
1.1 A UML MSC Profile 338
1.2 MSC Pathologies 341
2. FEATURE ANALYSIS 343
2.1 Consistency and Completeness of Protocols 344
2.2 Example Verification 345
3. TEST CASE GENERATION 348
3.1 Semantic Model 349
3.2 Test Generation 350
3.3 Test Strategies 351
4. END-TO-END V& V
REFERENCES 355
Chapter 16 Software Performance Engineering 356
1. INTRODUCTION 356
2. OVERVIEW OF SOFTWARE PERFORMANCE ENGINEERING 358
3. THE SPE MODELING PROCESS 360
4. CASE STUDY 364
4.1 Overview 365
5. SUMMARY 377
REFERENCES 378
Index 380
More eBooks at www.ciando.com 0

Chapter 13 Automotive UML
A (Meta) Model-Based Approach for Systems Development

Reconciling the Needs of Automotive Software Development with Model-Based Approaches
(p.272-273)

Along with the evolution of the complexity of automotive embedded systems, the development processes of car manufacturers have been redefined to large degree. In the very beginning, electronic functions were developed in isolated development teams at the manufacturer’s site. As long as these functions had to fulfill a truly isolated task, the corresponding development processes were localized, i.e. easy to control and to maintain. However, with the increasing number of functions and the increasing number of interactions resulting in complex communication protocols the integration task for these functions failed due to insufficient support provided by the actual local development process in use. As a result severe technical problems such as incorrect feature interactions and timing latencies emerged. This lead to the well known symptoms of the "software crisis": blown budgets, late delivery, and unfulfilled requirements.

To overcome these difficulties one has to take into account the specific needs of a distributed development of automotive systems leading to a truly delocalized development process. Accordingly, the obtained development artifacts have to be communicated properly across the different development teams on a regular basis in order to gain an understanding of mutual dependencies between subsystems. Unfortunately, most developed systems lack well defined documentation, so that typically just the source code of realized functions would be exchanged. However, this is not sufficient to achieve a deeper understanding of the system’s functionality. Abstract models that could help to constitute an improvement were hardly ever used.

The complexities of a distributed development scenario were reinforced when third party suppliers took over the development of parts and components. In addition to the evolving deficiencies during the integration of those components into existing systems, car manufacturers complained about a progressive lack of knowledge of their own systems.

About 15 years ago, model-based techniques [17] were employed with great expectations to overcome the recognized difficulties of current development processes. Whereas in "traditional" engineering disciplines such as electrical and mechanical engineering, model-based techniques, like CAD (Computer Aided Design), FEM (Finite Element Method), and hardware design tools were employed with enormous success, a discipline called "software engineering" was hardly established. Since then various tools supporting visual modeling languages, configuration management tools, requirements management tools, and test tools were brought in, but the great diversity of model-based techniques, their abstract nature, and the strict focus of these tools on usually just one aspect of the development process limited their success and effectiveness within the actual development environment. As a consequence, car manufacturers started expensive integration projects to realize a model-based approach with the goal to achieve a seamless development process technically supported by a tailored tool chain.

Step by step car manufacturers developed a new perception of their systems’ architectures [4]. Nowadays, the partitioning of the system’s architecture into different abstraction levels, introducing a domain specific terminology, concepts for the formation of variants, and the understanding of model-based configurations seem to be potential steps towards a successful deployment of model-based techniques. In order to achieve a comprehensive and tightly-bound model-based paradigm for the automotive domain, only a well defined so called "metamodel-based" approach can be successful (cf. Section 1.3).

The AML includes abovementioned issues of a rigorous metamodelbased approach to simultaneously cover all different aspects of the heterogeneous system development needs within the automotive domain by providing a common conceptual framework.

PDFPDF (Wasserzeichen)
Größe: 14,9 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: PDF (Portable Document Format)
Mit einem festen Seiten­layout eignet sich die PDF besonders für Fach­bücher mit Spalten, Tabellen und Abbild­ungen. Eine PDF kann auf fast allen Geräten ange­zeigt werden, ist aber für kleine Displays (Smart­phone, eReader) nur einge­schränkt geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.

Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
der Praxis-Guide für Künstliche Intelligenz in Unternehmen - Chancen …

von Thomas R. Köhler; Julia Finkeissen

eBook Download (2024)
Campus Verlag
38,99
Wie du KI richtig nutzt - schreiben, recherchieren, Bilder erstellen, …

von Rainer Hattenhauer

eBook Download (2023)
Rheinwerk Computing (Verlag)
24,90