Executable UML - Stephen Mellor, Marc Balcer

Executable UML

A Foundation for Model-Driven Architecture
Buch | Softcover
416 Seiten
2002
Addison Wesley (Verlag)
978-0-201-74804-8 (ISBN)
55,55 inkl. MwSt
  • Keine Verlagsinformationen verfügbar
  • Artikel merken
A guide to Executable UML: the next breakthrough in software modelling.
Using Executable UML (xUML), developers can build UML models that can not only be unambiguously interpreted by human readers, but can be tested and validated through actual execution, and ultimately translated directly and completely to target code. This technology offers immense potential for accelerating development projects, enhancing reliability, and reducing cost. In this book, two of the field's leading experts introduce every facet of xUML. The authors introduce Executable UML's goals, premises, and features; then drill down to explain its key elements. Along the way, readers will discover exactly how to use xUML to create software systems that can be tested even before they are coded, enabling far greater reliability at significantly lower expense. For all developers, analysts, and project managers seeking to improve software reliability, time-to-market, and value. This book will be especially valuable to real-time programmers, and to thousands of programmers who have used Shlaer-Mellor methodologies.

Stephen J. Mellor is cofounder of Project Technology, Inc., a company focused on tools to execute and translate UML models, where he now serves as vice president. He chaired the UML Action Semantics Consortium, and is now active in specifying MDA. In his copious spare time, he is a member of the IEEE Software Industrial Advisory Board. Marc J. Balcer is a consultant with fifteen years of experience in providing custom application development services to Global 1000 companies. In 1991 he began his collaboration with Stephen J. Mellor and the late Sally Shlaer, and he now applies the techniques on client projects in such diverse areas as medical instrumentation, transportation logistics, telecommunications, and financial services.

Foreword.


Preface.


Acknowledgments.


1. Introduction.


Raising the Level of Abstraction.



Executable UML.



Making UML Executable.



Model Compilers.



Model-Driven Architecture.



References.



2. Using Executable UML.


The System Model.



Domain Identification.



Use Cases.



Iterating the System Model.



Modeling a Single Domain.



Classes.



State Machines.



Procedures.



Iterating the Domain Models.



Iterating between System and Domain Modeling.



Verification and Execution.



Model Verification.



Model Compilation.



Iterating Verification and Execution.



The Big Picture.



References.



3. Domains and Bridges.


Domains.



Domain Missions.



Domain Autonomy.



Domain Replacement.



Domains and Requirements.



Bridges.



Aspects and Join Points.



Domains and Aspects.



References.



4. Use Cases.


Basics of Use Cases.



Actors.



Use Cases.



External Signals.



Working with Use Cases.



Single-Domain Use Cases.



Levels of Use Cases.



Applying Use Cases.



Activity Diagrams.



Formalizing Use Cases.



Preconditions.



Postconditions.



Linked Use Cases.



Scenarios and Testing.



System Modeling.



References.



5. Classes and Attributes.


Classes.



Finding Classes.



Naming Classes.



Attributes.



Finding Attributes.



Attribute Data Types.



Core Data Types.



Domain-Specific Data Types.



Using Types.



Documenting Classes and Attributes.



Diagramming Classes and Attributes.



Class Descriptions.



Attribute Descriptions.



Checking Classes and Attributes.



Subject-Matter Check.



Abstraction Checks.



Attribute Checks.



Rules, Rules, Rules.



References.



6. Relationships and Associations.


Associations.



Association Names.



Association Meanings.



Multiplicity.



Association Descriptions.



Checking Associations.



Conditionality.



Capturing the Correct Classes and Roles.



Multiple Associations.



Association Classes.



Generalization and Specialization.



The Concept of Generalization and Specialization.



Mutual Exclusion and its Implications.



Repeated Specialization.



Multiple Generalization.



Compound Generalization.



Reflexive Associations.



The Class Model.



References.



7. Class Actions.


Object and Attribute Actions.



Selection Expressions.



Link Actions.



Link Object Actions.



Generalization Hierarchies.



Other Action Languages.



Small.



Tall.



Actions and Syntax.



References.



8. Constraints.


Unique Instance Constraints.



Single Attribute Identifiers.



Multiple Attribute Identifiers.



Multiple Identifiers.



Derived Attributes.



Referential Constraints.



Referential Attributes.



Derived Identifiers.



Association Loops.



Unconstrained Association Loops.



Redundant Associations.



Equal Set Constraints.



Subset Constraints.



Constraints Capture Semantics.



References.



9. Lifecycles.


Concept of a Lifecycle.



State Machine.



Example Class with a State Machine.



States.



Events.



Transitions.



Procedures



State Transition Table.



Basics of the State Transition Table.



Discovering New Transitions.



Discovering New States and Events.



Event Ignored and Can't Happen.



Creating and Deleting Objects.



Initial Pseudostates.



Final Pseudostates.



Forming Lifecycles.



Lifecycles for Classes.



References.



10. Communicating Objects.


Signals.



Sending Signals.



Event Parameters.



Signals with Parameters.



Signals to Self.



Signals to External Entities.



Creating and Deleting Objects.



Asynchronous Creation and Deletion.



Synchronous Creation and Deletion.



Visualizing Domain Dynamics.



Collaboration Diagrams.



Concept of a Execution Trace.



Sequencing Signals on a Collaboration Diagram.



Sequence Diagram.



Applicability.



Domain Dynamics.



11. Synchronizing Objects.


How to Think about Time.



Rules about Signals.



Rules about Procedures.



Rules about Data Access.



Delayed Signals and Time Events.



Rules, Rules, Rules.



References.



12. Using Lifecycles.


Statechart Diagram Construction Techniques.



Modeling Intention.



Modeling Progression.



Simultaneous Signals.



Distinct Signals.



Reworking the Class Diagram.



Refactoring Behavior.



Saving Signals in Data.



References.



13. Relationship Dynamics.


Dynamically Simple Associations.



Associations without Explicit Lifecycles.



Dynamic Associations with Association Classes.



Associations Involving Competition.



Competition in the Domain.



Competition in the Models.



An Example.



Multi-Instance Contention.



Object Selection and Selection Policies.



Dynamics in Generalization Hierarchies.



Superclass State Machines.



Subclass State Machines.



Polymorphic Events and Polymorphic Signals.



Reclassification.



Superclass State Machine.



Subclass State Machines with Reclassification.



References.



14. Domain Dynamics.


Partitioning Control.



Control Strategies.



Push and Pull Control.



The Pivot Point



Finding the Pivot.



Delegation of Control.



Hierarchical Delegation.



Networked Delegation.



Distributing Control in Associations.



Input Conditioning.



Input Sequencing.



Distributing the Inputs.



Distributed Dynamics.



References.



15. Domain Verification.


Finding Unit Tests for a Single Use Case.



Test Execution.



System Tests.



Finding Test Cases from the Models.



The Verification Gap.



References.



16. Model Management.


Dividing Large Domains.



Subsystems and the Class Diagram.



Collaborations between Subsystems.



Adjusting Subsystem Partitioning.



Model Management.



17. Joining Multiple Domains.


Kinds of Domains.



Application User Interface.



Generic Service Domains.



Realized Domains.



Anonymous Explicit Bridges.



External Entities.



Signals from External Entities.



Signals to External Entities.



Bridge Operations.



Synchronous or Asynchronous Bridging?



Implicit Bridging with Join Points.



Rationale for Join Points.



Class-Class Joins.



Class-Instance Joins.



Bridging to the Model Compiler.



18. Model Compilers.


Compiling the Models: The Bookstore.



Mechanisms.



Archetypes.



Archetype Language.



Model Compilers and the Software Platform.



Fit.



Buying, Modifying, and Building a Model Compiler.



Modeling the Model Compiler as a Domain.



References.



Appendix A. Glossary.


Appendix B. Case Study.


Subsystem ProductSpecification.



Subsystem Ordering.



Subsystem Shipping.



Domain Data Types.



Object Collaboration Diagram.



Index. 0201748045T05022002

Erscheint lt. Verlag 22.5.2002
Reihe/Serie Addison-Wesley Object Technology Series
Mitarbeit Herausgeber (Serie): Elizabeth Ryan
Verlagsort Harlow
Sprache englisch
Maße 190 x 230 mm
Gewicht 686 g
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Informatik Software Entwicklung Objektorientierung
Informatik Software Entwicklung UML
ISBN-10 0-201-74804-5 / 0201748045
ISBN-13 978-0-201-74804-8 / 9780201748048
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
objektorientierte Entwicklung modularer Maschinen für die digitale …

von Thomas Schmertosch; Markus Krabbes; Christian Zinke-Wehlmann

Buch | Hardcover (2024)
Hanser (Verlag)
44,99
Entwicklung von GUIs für verschiedene Betriebssysteme

von Achim Lingott

Buch (2023)
Hanser, Carl (Verlag)
39,99
Principles and Practice Using C++

von Bjarne Stroustrup

Buch | Softcover (2024)
Addison Wesley (Verlag)
85,95