CD-ROM contains: iUMLite software, documentation, tutorials and example databases.
Author: Stephen J. Mellor, Marc J. Balcer
Publisher: Addison-Wesley Professional
Executable UML is a major innovation in the field of software development. It is designed to produce a comprehensive and understandable model of a solution independent of the organization of the software implementation. It is a highly abstract thinking tool that aids in the formalization of knowledge, and is also a way of describing the concepts that make up abstract solutions to software development problems. This timely new book, "Executable UML: A Foundation for Model-Driven Architecture, " thoroughly introduces, documents, and explains this important new technology. The authors show how UML can formalize requirements and use cases into a rich set of verifiable diagrams, how it can be used to produce executable and testable models, and how these models can be translated directly into code. In addition, the book explains how individual system domains are woven together by an executable UML model compiler. The book is full of tips and techniques to help you: Partition a system into subject matters based on individual aspectsPick the right level for use case modeling to speed subject matter comprehensionModel classes and focus on relationships to capture subject matter semantics preciselyExpress behavior using the newly adopted UML action semantics and action languagesSpecify constraints using tags specified in OCL (Object Constraint Language) In addition, this book tackles topics of particular importance in execution, such as how to: Synchronize objects by building lifecycles using statechart diagramsModel relationships and contention safelyDistribute dynamics to avoid unmaintainable controller objectsVerify the models by executing test cases against the statechart diagrams and constraints A large-scale, fully developed case study runs throughout the book to illustrate concepts and techniques. These models, plus tools to translate and run Executable UML models, can be downloaded from the book's websites, www.executableumlbook.com and www.projtech.com. 0201748045B05092002
Author: Stephen J. Mellor, Kendall Scott, Axel Uhl, Dirk Weise
Publisher: Addison-Wesley Professional
MDA Distilled is an accessible introduction to the MDA standard and its tools and technologies. The book describes the fundamental features of MDA, how they fit together, and how you can use them in your organization today. You will also learn how to define a model-driven process for a project involving multiple platforms, implement that process, and then test the resulting system.
Author: Leon Starr
Publisher: Prentice Hall
The practical guide to developing real-time class models with executable UML. -- Advanced techniques for creating rigorous, testable, complete UML specifications. -- In-depth application examples focused on real-time, embedded systems. -- By Leon Starr, the leading expert in building object models for real-time systems, and author of How to Build Shlaer-Mellor Object Models and Executable UML: A Case Study. Executable UML is for software professionals who want to apply object-oriented analysis and modeling techniques to real-world UML projects. In this book, Leon Starr presents the skills and techniques needed to build useful class models for creating precise, executable software specifications that generate target code in multiple languages and for multiple platforms. Leon, who wrote the definitive guide to Shlaer-Mellor modeling, emphasizes the practical use of executable UML modeling, presenting extensive examples from real-time embedded and scientific applications. Using the materials in his How to Build Shlaer-Mellor Object Models as a starting point, Leon presents an entirely new introduction to Executable UML, expresses all diagrams in Executable UML notation, and adds advanced new object modeling techniques. Coverage include: classes; attributes; associations and relationships; binary associations; association classes; specialization-generalization relationships; model constraints and descriptions; and reflexive, network, linear, and tree patterns for effective object modeling.
This book discusses how model-based approaches can improve the daily practice of software professionals. This is known as Model-Driven Software Engineering (MDSE) or, simply, Model-Driven Engineering (MDE). MDSE practices have proved to increase efficiency and effectiveness in software development, as demonstrated by various quantitative and qualitative studies. MDSE adoption in the software industry is foreseen to grow exponentially in the near future, e.g., due to the convergence of software development and business analysis. The aim of this book is to provide you with an agile and flexible tool to introduce you to the MDSE world, thus allowing you to quickly understand its basic principles and techniques and to choose the right set of MDSE instruments for your needs so that you can start to benefit from MDSE right away. The book is organized into two main parts. The first part discusses the foundations of MDSE in terms of basic concepts (i.e., models and transformations), driving principles, application scenarios, and current standards, like the well-known MDA initiative proposed by OMG (Object Management Group) as well as the practices on how to integrate MDSE in existing development processes. The second part deals with the technical aspects of MDSE, spanning from the basics on when and how to build a domain-specific modeling language, to the description of Model-to-Text and Model-to-Model transformations, and the tools that support the management of MDSE projects. The second edition of the book features: a set of completely new topics, including: full example of the creation of a new modeling language (IFML), discussion of modeling issues and approaches in specific domains, like business process modeling, user interaction modeling, and enterprise architecture complete revision of examples, figures, and text, for improving readability, understandability, and coherence better formulation of definitions, dependencies between concepts and ideas addition of a complete index of book content In addition to the contents of the book, more resources are provided on the book's website http://www.mdse-book.com, including the examples presented in the book.
Author: Anneke G. Kleppe, Jos B. Warmer, Wim Bast
Publisher: Addison-Wesley Professional
* *Concrete guidance to IT professionals facing the recurring problem of delivering this year's project on-time and on-budget *Allows developers to create robust, machine-readable models that can be stored and repeatedly accessed *The authors have contributed to the creation of MDA, worked on commercial products that implement it, and used it in practice
"This book displays how to effectively map and respond to the real-world challenges and purposes which software must solve, covering domains such as mechatronic, embedded and high risk systems, where failure could cost human lives"--Provided by publisher.
Enterprise Patterns and MDA
Author: Jim Arlow, Ila Neustadt
Publisher: Addison-Wesley Professional
Enterprise Patterns and MDA teaches you how to customize any archetype pattern–such as Customer, Product, and Order–to reflect the idiosyncrasies of your own business environment. Because all the patterns work harmoniously together and have clearly documented relationships to each other, you’ll come away with a host of reusable solutions to common problems in business-software design. This book shows you how using a pattern or a fragment of a pattern can save you months of work and help you avoid costly errors. You’ll also discover how–when used in literate modeling–patterns can solve the difficult challenge of communicating UML models to broad audiences. The configurable patterns can be used manually to create executable code. However, the authors draw on their extensive experience to show you how to tap the significant power of MDA and UML for maximum automation. Not surprisingly, the patterns included in this book are highly valuable; a blue-chip company recently valued a similar, but less mature, set of patterns at hundreds of thousands of dollars. Use this practical guide to increase the efficiency of your designs and to create robust business applications that can be applied immediately in a business setting.
Models to Code
Author: Leon Starr, Andrew Mangogna, Stephen Mellor
Learn how to translate an executable model of your application into running code. This is not a book about theory, good intentions or possible future developments. You’ll benefit from translation technology and solid software engineering principles that are demonstrated with concrete examples using an open source tool chain. Models don’t deliver enough value if they are not on a direct path to code production. But to waste time building models that are merely pictures of your code doesn’t add much value either. In this book, you’ll translate detailed, yet platform-independent models that solve real application problems. Using a pragmatic approach, Models to Code quickly dives into two case studies of Executable UML models. The models and code are extensively annotated and illustrate key principles that are emphasized throughout the book. You’ll work with code production using "C" as the implementation language and targeting microcomputer class processors. This might not be your particular target language or platform, but you can use you can use what you learn here to engineer or re-evaluate your own code translation system to dramatically increase the value of both your modeling and code generation solution. Written by three leading experts, Models to Code is an exceptional resource for producing software by model translation— add it to your library today. What You'll Learn See how detailed models resolve ambiguity and contradiction common in requirements. Examine how a model can be detailed enough to be executable and testable while remaining platform independent Produce code from a model, leaving the model intact so it can be redeployed on new platforms or adapted to changing software and hardware technology. Implement platform independent model execution rules in platform specific run-time code Who This Book Is For Modelers and systems engineers on active MBSE projects (using Executable UML or not), projects using Simulink, Matlab, Dymola, MatrixX and other math modelling tools. Any developers with current or past model experience, professors, students, systems engineers, embedded systems developers, or anyone interested in learning more about software modelling.
Covers important concepts, issues, trends, methodologies, and technologies in quality assurance for model-driven software development.
Learning UML 2.0
Author: Russ Miles, Kim Hamilton
Publisher: "O'Reilly Media, Inc."
With its clear introduction to the Unified Modeling Language (UML) 2.0, this tutorial offers a solid understanding of each topic, covering foundational concepts of object-orientation and an introduction to each of the UML diagram types.
This book focuses on the methodological treatment of UML/P and addresses three core topics of model-based software development: code generation, the systematic testing of programs using a model-based definition of test cases, and the evolutionary refactoring and transformation of models. For each of these topics, it first details the foundational concepts and techniques, and then presents their application with UML/P. This separation between basic principles and applications makes the content more accessible and allows the reader to transfer this knowledge directly to other model-based approaches and languages. After an introduction to the book and its primary goals in Chapter 1, Chapter 2 outlines an agile UML-based approach using UML/P as the primary development language for creating executable models, generating code from the models, designing test cases, and planning iterative evolution through refactoring. In the interest of completeness, Chapter 3 provides a brief summary of UML/P, which is used throughout the book. Next, Chapters 4 and 5 discuss core techniques for code generation, addressing the architecture of a code generator and methods for controlling it, as well as the suitability of UML/P notations for test or product code. Chapters 6 and 7 then discuss general concepts for testing software as well as the special features which arise due to the use of UML/P. Chapter 8 details test patterns to show how to use UML/P diagrams to define test cases and emphasizes in particular the use of functional tests for distributed and concurrent software systems. In closing, Chapters 9 and 10 examine techniques for transforming models and code and thus provide a solid foundation for refactoring as a type of transformation that preserves semantics. Overall, this book will be of great benefit for practical software development, for academic training in the field of Software Engineering, and for research in the area of model-based software development. Practitioners will learn how to use modern model-based techniques to improve the production of code and thus significantly increase quality. Students will find both important scientific basics as well as direct applications of the techniques presented. And last but not least, the book will offer scientists a comprehensive overview of the current state of development in the three core topics it covers.
Topological UML Modeling
Author: Janis Osis, Uldis Donins
Topological UML Modeling: An Improved Approach for Domain Modeling and Software Development presents a specification for Topological UML® that combines the formalism of the Topological Functioning Model (TFM) mathematical topology with a specified software analysis and design method. The analysis of problem domain and design of desired solutions within software development processes has a major impact on the achieved result – developed software. While there are many tools and different techniques to create detailed specifications of the solution, the proper analysis of problem domain functioning is ignored or covered insufficiently. The design of object-oriented software has been led for many years by the Unified Modeling Language (UML®), an approved industry standard modeling notation for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system, and this comprehensive book shines new light on the many advances in the field. Presents an approach to formally define, analyze, and verify functionality of existing processes and desired processes to track incomplete or incorrect functional requirements Describes the path from functional and nonfunctional requirements specification to software design with step-by-step creation and transformation of diagrams and models with very early capturing of security requirements for software systems. Defines all modeling constructs as extensions to UML®, thus creating a new UML® profile which can be implemented in existing UML® modeling tools and toolsets