Model Driven Architecture (MDA) is a new methodologyf rom OMG that uses modeling languages like UML along with programming languages like Java to build software architecturesPriceWatersCoopers' prestigious Technology Center just predicted that MDA will be one of the most important methodologies in the next two yearsWritten by the lead architect of the specification who provides inside information on how MDA has worked in the real worldDescribes MDA in detail and demonstrates how it can work with existing methodologies and technologies such as UML,MOF, CWM, and Web services
Author(s): David S. Frankel
Edition: 1
Publisher: Wiley
Year: 2003
Language: English
Pages: 352
Tags: Библиотека;Компьютерная литература;Проектирование ПО и рефакторинг;
Contents......Page 10
Who Is Using MDA?......Page 18
Goals of This Book......Page 19
Organization of the Book......Page 20
About the Author......Page 21
Foreword......Page 22
Challenges Facing the Software Industry......Page 28
The Viability Variables......Page 29
Machine- Centric Computing......Page 30
From Assembly to 3GLs......Page 31
Object- Oriented Languages and Virtual Machines......Page 33
Component- Based Development......Page 34
Design Patterns......Page 35
Distributed Computing......Page 36
Middleware: Raising the Platform Abstraction Level......Page 37
Declarative Specification......Page 38
Enterprise Architecture and Separation of Concerns......Page 39
Enterprise Application Integration (EAI)......Page 46
Design by Contract......Page 47
Pressures on Enterprise- Centric Computing......Page 50
Pressure on Production Costs......Page 51
Pressure on Quality......Page 52
Pressure on Longevity......Page 53
Summary......Page 55
EAI, and B2Bi......Page 56
Syntactic Abstraction versus Semantic Abstraction......Page 57
B2Bi and MDA......Page 60
First- and Second- Generation Web Services Integration......Page 61
Web Services and Enterprise Architecture......Page 63
Defining Abstract Business Services......Page 64
Parameterized Mappings......Page 66
Mapping Business Service Models to WSDL......Page 67
Automating Business Processes and B2B Collaborations......Page 68
Flexibility in Choosing the Abstraction Level......Page 70
Modeling Language Extensibility......Page 71
Platform Independence: A Relative Concept......Page 73
EAI and MDA......Page 75
Metadata Integration......Page 77
Automatic Pattern Replication......Page 79
A J2EE Example......Page 80
Architectural Styles......Page 81
Pushing More below the Line......Page 82
Model Driven Enterprise Architecture......Page 83
Standardized MDA- Based Modeling Languages......Page 84
Middleware and the Abstraction Gap......Page 85
Design by Contract Revisited......Page 86
Interactive Design......Page 87
Extreme Programming......Page 88
Summary......Page 89
Origins and Evolution......Page 92
Separation of Abstract Syntax from Concrete Syntax......Page 93
Extensibility......Page 95
Support for Platform- Independent Modeling......Page 96
Maintained by a Standards Organization......Page 97
Large and Poorly Partitioned......Page 98
Limitations of Profiling......Page 99
Lack of a Metamodel for Object Constraint Language......Page 100
Expected Outcomes......Page 101
Summary......Page 102
The Basics......Page 104
An Example......Page 105
Contracts, Reuse, and Interoperability......Page 108
As Precise as Programming 3......Page 110
A Framework for Quality......Page 111
Another Look at Constraints......Page 112
State Machines......Page 113
Activity Models......Page 116
Interaction Models......Page 117
Action Semantics......Page 118
Summary......Page 119
A Key MDA Foundation......Page 120
A Basic Premise......Page 122
Borrowing from UML......Page 123
MOF Isn’t Just for OO......Page 126
Abstract Syntax Trees......Page 128
Level M3......Page 130
Level M1......Page 131
How Meaningful Are Metalevels?......Page 132
Self- Description......Page 133
Metalevels and Abstract Syntax......Page 134
What Is Metadata?......Page 135
Previous Attempts at Metadata Integration......Page 136
An Additional Premise......Page 137
Platform Independence......Page 138
Metadata Management Scenarios......Page 140
Generic MOF Code......Page 143
MOF Is Not CORBA- Based......Page 144
Applying the MOF- CORBA Mapping......Page 145
Return on Investment......Page 147
Hand- Coded DTDs and Schemas......Page 149
XMI Complexity versus UML Complexity......Page 150
XMI as Input to Generators......Page 151
XMI and UML Diagram Interchange......Page 152
A MOF- Java Mapping......Page 153
Aren’t XML and DOM Enough?......Page 154
Another Look at MOF Self- Description......Page 156
Human Usable Textual Notations......Page 160
XMI’s Reverse Mapping......Page 161
Lack of Support for Versioning......Page 163
Interoperability Problems Due to Immaturity......Page 164
MOF in the Computer Industry......Page 165
MOF and Enterprise Software......Page 166
What You Can Do Now......Page 167
Summary......Page 168
A Family of Languages 1......Page 170
Stereotypes......Page 171
Tagged Values of Stereotypes......Page 172
Standalone Tagged Values......Page 173
Can’t We Do This at M1?......Page 174
Defining a Profile Formally......Page 175
Anatomy of a Heavyweight UML Metamodel Extension......Page 178
Profiles versus Heavyweight Extensions......Page 179
Tight Domain Focus......Page 180
The Metamodel + Profile Strategy......Page 181
UML Tools versus MDA Tools......Page 183
UML Constructs that MOF Does Not Support......Page 184
Summary......Page 186
The Scope of the Guidelines......Page 188
What the Standard MDA Mappings Produce......Page 189
Purposes of the Guidelines......Page 190
Operations for Attributes......Page 191
Use Association End Navigability Judiciously......Page 192
Navigability and Contracts......Page 193
Generating Read- Only APIs......Page 195
Navigability and Information Formats......Page 196
Navigability and Modularity......Page 197
A MOF Complication......Page 199
Uniqueness......Page 201
Aggregation Properties of Association Ends......Page 202
Composite Aggregation......Page 203
Shared Aggregation......Page 205
Use Abstract Classes......Page 206
“Uninteresting” Operations......Page 208
Syntactic Completeness......Page 210
Semantic Completeness......Page 212
Need for Lower- Level Models......Page 213
Summary......Page 214
Modeling at Different Abstraction Levels......Page 216
A Basic Model Taxonomy......Page 217
How the Models Fit Together......Page 218
MDA Personas......Page 219
Middleware Engineer......Page 220
Architect......Page 221
Introduction to the Examples......Page 222
Business Models......Page 223
Requirements Models......Page 225
Platform- Independent Models (PIMs)......Page 228
An EJB- Specific Model......Page 232
Java Plus Semantics......Page 233
Tracing between Abstraction Levels......Page 234
Mapping PIM Collections......Page 235
JMI’s Approach......Page 238
Searching for an Abstraction......Page 239
Parameterizing a PSM- Code Mapping......Page 242
Selecting Implementations......Page 243
Elements That Are Less Traceable to the PIM......Page 245
Benefits of Read- Only PSMs......Page 246
PIM Typing Issues......Page 247
Multiple Parameter Sets in the PIM......Page 249
Multiple Parameter Sets in the PSM......Page 250
Language Definition Strategies......Page 251
Component Descriptors......Page 253
The “Forward Engineering Only” Approach......Page 255
Partial Round- Trip Engineering......Page 258
Full Round- Trip Engineering......Page 260
Round- Tripping and Architectural Enforcement......Page 262
Inter- Tier Synchronization......Page 263
The Impact of PSMs......Page 266
Synchronization Synopsis......Page 268
Physical Models and Deployment Automation......Page 269
Summary......Page 270
More Than a Database Metamodel......Page 274
Implementation Strategies......Page 276
Common Superclasses......Page 279
Mapping Expressions......Page 282
UML Models as Sources and Targets......Page 285
Metamodel- to- Metamodel Mappings......Page 287
MOF Mappings......Page 291
Completing the Picture......Page 293
Limitations......Page 295
Summary......Page 296
APIs......Page 298
The Role of Standards......Page 299
Green Fields versus Legacy......Page 300
Implementing Interesting Operations......Page 301
Implementing Derived Attributes and Associations......Page 303
Synopsis......Page 304
Mappings— The Essential Knowledge......Page 305
Generalizing the Bridging Problem......Page 307
Standards and Bridges......Page 310
Examples from Industry......Page 311
Performance......Page 312
Dynamism at the Lower Level......Page 313
Reflection and Metadata Fragmentation......Page 315
Drawing Conclusions......Page 316
Raising the Platform Revisited......Page 317
What You Can Do Now......Page 318
Summary......Page 319
A Reality Check......Page 320
ACIDTx......Page 322
BookmarkTitle:......Page 0
BusinessTxUnit......Page 323
BusinessTx......Page 324
Basic Concepts......Page 326
Examples......Page 327
Books......Page 330
Articles and Presentations......Page 331
Standards and Specifications......Page 332
Glossary......Page 334
Index......Page 338