Successful Implementation of Model Driven Architecture

Total Page:16

File Type:pdf, Size:1020Kb

Successful Implementation of Model Driven Architecture Successful Implementation of Model Driven Architecture A case study of how Borland® Together® MDA technologies were successfully implemented in a large commercial bank A B or la nd Wh it e Pap er By Choong Koon Fong, Together Product Champion – APAC Support Center June 2007 Successful Implementation of Model Driven Architecture Contents In troduc tion ............................................................................ 3 The Business Case fo r MD A ..................................................... 4 The MDA D eve lop men t Process ................................................ 5 A H igh ly Reu sab le, P la tfo rm Indepen den t Mo del ..................... 6 Targ eting P la tfo rm -Sp ecific Mo dels ......................................... 8 Auto ma ting Cod e a nd A rtifac t Gen eration ...............................11 Sum ma ry ................................................................................15 Refe re nces .............................................................................16 2 Successful Implementation of Model Driven Architecture Introduction One of the challenges faced by enterprise-scale software development is the effective design of systems to support ever-changing business capabilities in a timely manner. Enterprise- system design has evolved from merely writing high-level documentation and diagrams, to architecting complex frameworks. The Model Driven Architecture (MDA) paradigm, managed by the Object Management Group™ (OMG™), is an approach that seeks to address the increasing complexity in enterprise-system design. It is not a radical departure from performing system design, but an evolutionary step that combines various technologies for a more effective software development process. The MDA approach shifts the focus of software development from writing code to building models. By adopting a model-centric approach, the MDA approach hopes to automate the generation of system implementation artifacts directly from the model. MDA is essentially a collection of related technologies such as the Query/View/Transformation (QVT), Object Constraint Language (OCL), Unified Modeling Language (UML™) and the Meta Object Facility (MOF). These technologies enable various forms of artifact and model transformation. The MDA theory espouses the following layers of models: • Computation Independent Model (CIM) • Platform Independent Model (PIM) • Platform Specific Model (PSM) Transformations would be applied to assist in the realization of the actual system. As we move down the model layers, each transformation would add more detail to a model. Cross- domain transformation is possible via Model to Model Transformation. This white paper is based on a success of a Borland customer in the financial industry that prefers to remain anonymous. For the purpose of this paper we will refer to them as Prosperous Bank. The paper details the success and benefits gained from the implementation of a project using Borland® Together® MDA technologies. 3 Successful Implementation of Model Driven Architecture The Business Case for MDA Prosperous Bank is a large commercial bank, providing a wide range of consumer and corporate banking services. In order to support its wide range of services and transactions, Prosperous Bank undertook an ambitious Enterprise Application Integration (EAI) project, with the goal of streamlining and integrating its transactional messaging system with other systems such as legacy applications, database storage, back office and messaging systems. The EAI project had to achieve the following business requirements, on top of the functional requirements: • Transaction Integrity • Performance • High Availability • Flexibility • Consistent design The project was complex because understanding the behavior and technical complexities of other systems were required in order to achieve successful system integration. Generating and maintaining system-design models using a traditional approach did not seem feasible because there were too many systems on different platforms. The project was considered high risk due to the intricacy and broad scope. After considering the requirements for the project, the MDA approach to software development and design was chosen. Using Together MDA Technologies, Prosperous Bank would successfully improve and optimize its software design and modeling activities. Using the Together MDA approach, Prosperous Bank would improve the understanding of various systems and ensure such understandings are externalized to software design models for future system redesign and development. The MDA technologies in Together would be leveraged to automate model and artifact generation through out the EAI development lifecycle. 4 Successful Implementation of Model Driven Architecture The MDA Development Process From the initial Proof of Concept prototype, Prosperous Bank found that the MDA approach was feasible. Together provides a practical and pragmatic approach to MDA which enables Prosperous Bank to easily map the MDA specific models with the EAI project specific deliverables. The project specific deliverables of Domain Model, Detailed Design Model, and Implementation Artifacts are generated using Together. Figure 1: The MDA Process Used by Prosperous Bank 5 Successful Implementation of Model Driven Architecture A Highly Reusable, Platform Independent Model Together supports the concepts of PIM and PSM via Modeling Projects. A PIM is created by modeling the business domain objects using a UML 2.0 Project. The structural relationships of domain objects are captured in UML 2.0 Class Diagrams. This enables requirements to be captured as independent models without worrying about platform specific technicalities. This higher level of abstraction allows the EAI architects to focus on the critical task of analyzing and understanding the requirements of the system. The MDA approach allows system development to be handled in terms of abstractions, starting from higher-level abstractions in the beginning and moving to lower -level details towards the end. The PIM would be transformed into various PSM at the next stage of the project. In Together, examples of PSM would be Java™ Modeling Projects, C++ Modeling Projects, Data Modeling Projects and J2EE™ IDL Modeling Projects. A Together PIM is easily transformed into any of the PSM by using the built-in Project Export Wizard which automates Model to Model Transformation. Advanced transformation is handled by writing custom Model to Model Transformation code in QVT. A part of the PIM, a UML 2.0 Class Diagram is shown in Figure 2. As the EAI architecture is transactional and message based, type information is important. The type information is captured as UML 2.0 primitive types. 6 Successful Implementation of Model Driven Architecture Figure 2: Platform Independent Model in UML 2.0 7 Successful Implementation of Model Driven Architecture The PIM objects have been labeled with the Software Development Process stereotypes. Using the Software Development Process UML Profile, Prosperous Bank is able to identify the roles played by the objects and attach meaningful stereotype labels to the objects. The use of the profile helps the architect to adopt a sound software development process from an early stage. Targeting Platform-Specific Models A PSM is a computational model, specific to some information formatting technology, programming-language middleware, messaging middleware or technological framework. From the PIM, the next step was to develop the PSM which targets the Java programming language and also the Database Model (ER Diagrams). The PIM to PSM transformation process was simplified with the use of the Project Export Wizard. For the Java PSM, the EAI project had the requirement to use new JDK® 1.5 language constructs, such as generics collections support. This was possible by selecting the JDK 1.5 Java Source compatibility from the Project Export Wizard. The exported Java PSM is shown. 8 Successful Implementation of Model Driven Architecture Figure 3: Java Platform Specific Model From the PIM to PSM transformation, several issues had to be addressed: • In the PIM, collections used in an object were modeled as aggregation links. After the transformation to the Java PSM, the architect has to consider the correct Java collections to be used. Platform specific decisions had to be made in selecting the appropriate Java collections, such as a List, a HashMap or a SortedSet. • During the PIM modeling stage, the currency information was modeled as amount and currency attributes, each having the type of Double and String respectively. For the PSM, the architect has to consider the use of the java.util.Currency class instead. • The original PIM Timestamp object could be replaced by a Java Date object from the java.util.Date class. A practical approach was adopted to address these issues. They were resolved by making changes manually to the automatically generated Java PSM. Besides the Java PSM, a Data Model PSM was produced from the PIM. The Data Model PSM contains Database Entity Relationship (ER) diagrams. For the PSM, several conventions were made: 9 Successful Implementation of Model Driven Architecture • Only objects marked as entity objects (SwDev_entity) would be considered during the transformation. Control (SwDev_control) and boundary (SwDev_boundary) objects would not be considered. • The package name would be used as the schema name. • Each class in the package would be mapped to a table name in the schema. • In order to indicate primary
Recommended publications
  • Using the UML for Architectural Description?
    Using the UML for Architectural Description? Rich Hilliard Integrated Systems and Internet Solutions, Inc. Concord, MA USA [email protected] Abstract. There is much interest in using the Unified Modeling Lan- guage (UML) for architectural description { those techniques by which architects sketch, capture, model, document and analyze architectural knowledge and decisions about software-intensive systems. IEEE P1471, the Recommended Practice for Architectural Description, represents an emerging consensus for specifying the content of an architectural descrip- tion for a software-intensive system. Like the UML, IEEE P1471 does not prescribe a particular architectural method or life cycle, but may be used within a variety of such processes. In this paper, I provide an overview of IEEE P1471, describe its conceptual framework, and investigate the issues of applying the UML to meet the requirements of IEEE P1471. Keywords: IEEE P1471, architectural description, multiple views, view- points, Unified Modeling Language 1 Introduction The Unified Modeling Language (UML) is rapidly maturing into the de facto standard for modeling of software-intensive systems. Standardized by the Object Management Group (OMG) in November 1997, it is being adopted by many organizations, and being supported by numerous tool vendors. At present, there is much interest in using the UML for architectural descrip- tion: the techniques by which architects sketch, capture, model, document and analyze architectural knowledge and decisions about software-intensive systems. Such techniques enable architects to record what they are doing, modify or ma- nipulate candidate architectures, reuse portions of existing architectures, and communicate architectural information to others. These descriptions may the be used to analyze and reason about the architecture { possibly with automated support.
    [Show full text]
  • OMG Systems Modeling Language (OMG Sysml™) Tutorial 25 June 2007
    OMG Systems Modeling Language (OMG SysML™) Tutorial 25 June 2007 Sanford Friedenthal Alan Moore Rick Steiner (emails included in references at end) Copyright © 2006, 2007 by Object Management Group. Published and used by INCOSE and affiliated societies with permission. Status • Specification status – Adopted by OMG in May ’06 – Finalization Task Force Report in March ’07 – Available Specification v1.0 expected June ‘07 – Revision task force chartered for SysML v1.1 in March ‘07 • This tutorial is based on the OMG SysML adopted specification (ad-06-03-01) and changes proposed by the Finalization Task Force (ptc/07-03-03) • This tutorial, the specifications, papers, and vendor info can be found on the OMG SysML Website at http://www.omgsysml.org/ 7/26/2007 Copyright © 2006,2007 by Object Management Group. 2 Objectives & Intended Audience At the end of this tutorial, you should have an awareness of: • Benefits of model driven approaches for systems engineering • SysML diagrams and language concepts • How to apply SysML as part of a model based SE process • Basic considerations for transitioning to SysML This course is not intended to make you a systems modeler! You must use the language. Intended Audience: • Practicing Systems Engineers interested in system modeling • Software Engineers who want to better understand how to integrate software and system models • Familiarity with UML is not required, but it helps 7/26/2007 Copyright © 2006,2007 by Object Management Group. 3 Topics • Motivation & Background • Diagram Overview and Language Concepts • SysML Modeling as Part of SE Process – Structured Analysis – Distiller Example – OOSEM – Enhanced Security System Example • SysML in a Standards Framework • Transitioning to SysML • Summary 7/26/2007 Copyright © 2006,2007 by Object Management Group.
    [Show full text]
  • Pivotpoint-Sparx Partnership Promotes Model-Based Systems
    PivotPoint-Sparx Partnership Promotes Model-Based Systems Engineering with SysML PivotPoint Technology and Sparx Systems today announced a technology partnership that will combine their complementary strengths in SysML training and tools for systems engineers. PivotPoint announced that its “SysML Distilled™ with Enterprise Architect™” workshop is immediately available, and will use Sparx’s new MDG Technology for SysML™ product. Fallbrook, California (PRWEB) - October 9, 2006 -- PivotPoint Technology and Sparx Systems today announced a technology partnership to promote model-based systems engineering with the Systems Modeling Language (SysML). SysML is the new domain-specific modeling language for systems engineering applications that was adopted by the Object Management Group as OMG SysML™ in July 2006, and is attracting users among systems engineers worldwide. Under the agreement, PivotPoint will be Sparx’s primary partner for training and consulting services that use Sparx’s new SysML product (MDG Technology for SysML™), which was released last week. PivotPoint showed its readiness to partner by announcing the immediate availability of a new “SysML Distilled™ with Enterprise Architect™” workshop, which combines both SysML language and tool training. SysML extends the Unified Modeling Language (UML), the industry standard for specifying software-intensive systems, so that it can also specify hardware, processes, personnel, and facilities. Systems engineers who want to follow a model-based systems engineering process gain at least two important advantages in using SysML. First, SysML is a smaller language than UML 2.0 since it has fewer diagrams and constructs, so it is easier for engineers to learn and apply. Second, SysML adds to the semantic expressiveness of UML with two new diagrams for defining requirements and parametric constraints, which systems engineers need to fully specify complex systems.
    [Show full text]
  • Artifact-Centric Modeling of Business Processes Using UML Diagrams
    Proceedings of The 20th World Multi-Conference on Systemics, Cybernetics and Informatics (WMSCI 2016) Artifact-Centric Modeling of Business Processes Using UML Diagrams David Grünert, Thomas Keller, and Elke Brucker-Kley ZHAW School of Management and Law Institute of Business Information Technology 8401 Winterthur, Switzerland {grud, kell, brck}@zhaw.ch Abstract and hidden in the process model. Accordingly, the positioning of information at the center of modeling was termed data- or infor- The modeling of business processes to date has focused on an mation-centric process modeling [2], [3], [4], [5]. Information activity-based perspective while business artifacts associated with entities are modeled by state charts. Transitions are triggered by the process have been modeled on an abstract and informal level. activities. Associated roles are defined by means of use case Ad hoc, dynamic business processes have recently emerged as a diagrams. In [5], the term opportunistic BPM (oBPM) was intro- requirement. Subsequently, BPMN was extended with ad hoc duced for this kind of approach. The duality between activity- sub-processes and a new standard, Case Management Modeling and information-centric models was shown in [6]. and Notation (CMMN), has been created by the Object Manage- Many artifact-centric approaches defined new or extended model ment Group (OMG). CMMN has an information-centric ap- syntax [6]. However, a new or extended modeling syntax increas- proach, whereas the extension of BPMN adheres to an activity- es complexity for all parties involved in designing, reading, and based perspective. The focus on BPMN and on processes in gen- implementing the modeled process and requires adapted model- eral has caused UML to fade into the background.
    [Show full text]
  • 03-01-06 BPDM RFP.Pdf
    Business Process Definition Metamodel RFP Object Management Group First Needham Place 250 First Avenue, Suite 100 Needham, MA 02494 Telephone: +1-781-444-0404 Facsimile: +1-781-444-0320 Business Process Definition Metamodel Request For Proposal OMG Document: bei/2003-01-06 Letters of Intent due: June 16, 2003 Submissions due: August 18, 2003 Objective of this RFP This Request For Proposals solicits submissions that specify a business process definition metamodel, which is platform independent with respect to specific business process definition languages. This metamodel will define an abstract language for specification of executable business processes that execute within an enterprise (with or without human involvement); and may collaborate between otherwise- independent business processes executing in different business units or enterprises. The specification developed in response to this RFP is expected to achieve the following: • A common metamodel to unify the diverse business process definition graphical and textual notations that exist in the industry • A metamodel that complements existing UML metamodels so that business processes specifications can be part of complete system specifications to assure consistency and completeness bei/2003-01-06, January 31, 2003 1 Business Process Definition Metamodel RFP • The ability to integrate process models for workflow management processes, automated business processes, and collaborations between business units. • Support for the specification of choreography, describing the collaboration
    [Show full text]
  • Sysml, the Language of MBSE Paul White
    Welcome to SysML, the Language of MBSE Paul White October 8, 2019 Brief Introduction About Myself • Work Experience • 2015 – Present: KIHOMAC / BAE – Layton, Utah • 2011 – 2015: Astronautics Corporation of America – Milwaukee, Wisconsin • 2001 – 2011: L-3 Communications – Greenville, Texas • 2000 – 2001: Hynix – Eugene, Oregon • 1999 – 2000: Raytheon – Greenville, Texas • Education • 2019: OMG OCSMP Model Builder—Fundamental Certification • 2011: Graduate Certification in Systems Engineering and Architecting – Stevens Institute of Technology • 1999 – 2004: M.S. Computer Science – Texas A&M University at Commerce • 1993 – 1998: B.S. Computer Science – Texas A&M University • INCOSE • Chapters: Wasatch (2015 – Present), Chicagoland (2011 – 2015), North Texas (2007 – 2011) • Conferences: WSRC (2018), GLRCs (2012-2017) • CSEP: (2017 – Present) • 2019 INCOSE Outstanding Service Award • 2019 INCOSE Wasatch -- Most Improved Chapter Award & Gold Circle Award • Utah Engineers Council (UEC) • 2019 & 2018 Engineer of the Year (INCOSE) for Utah Engineers Council (UEC) • Vice Chair • Family • Married 14 years • Three daughters (1, 12, & 10) 2 Introduction 3 Our Topics • Definitions and Expectations • SysML Overview • Basic Features of SysML • Modeling Tools and Techniques • Next Steps 4 What is Model-based Systems Engineering (MBSE)? Model-based systems engineering (MBSE) is “the formalized application of modeling to support system requirements, design, analysis, verification and validation activities beginning in the conceptual design phase and continuing throughout development and later life cycle phases.” -- INCOSE SE Vision 2020 5 What is Model-based Systems Engineering (MBSE)? “Formal systems modeling is standard practice for specifying, analyzing, designing, and verifying systems, and is fully integrated with other engineering models. System models are adapted to the application domain, and include a broad spectrum of models for representing all aspects of systems.
    [Show full text]
  • Xerox University Microfilms 300 North Zeeb Road Ann Arbor, Michigan 48106 74-2001
    CULTURAL FORMATION PROCESSES OF THE ARCHAEOLOGICAL RECORD: APPLICATIONS AT THE JOINT SITE, EAST-CENTRAL ARIZONA Item Type text; Dissertation-Reproduction (electronic) Authors Schiffer, Michael B. Publisher The University of Arizona. Rights Copyright © is held by the author. Digital access to this material is made possible by the University Libraries, University of Arizona. Further transmission, reproduction or presentation (such as public display or performance) of protected items is prohibited except with permission of the author. Download date 11/10/2021 00:04:31 Link to Item http://hdl.handle.net/10150/288122 INFORMATION TO USERS This material was produced from a microfilm copy of the original document. While the most advanced technological means to photograph and reproduce this document have been used, the quality is heavily dependent upon the quality of the original submitted. The following explanation of techniques is provided to help you understand markings or patterns which may appear on this reproduction. 1. The sign or "target" for pages apparently lacking from the document photographed is "Missing Page(s)". If it was possible to obtain the missing page(s) or section, they are spliced into the film along with adjacent pages. This may have necessitated cutting thru an image and duplicating adjacent pages to insure you complete continuity. 2. When an image on the film is obliterated with a large round black mark, it is an indication that the photographer suspected that the copy may have moved during exposure and thus cause a blurred image. You will find a good image of the page in the adjacent frame. 3.
    [Show full text]
  • Unifying Modeling and Programming with ALF
    SOFTENG 2016 : The Second International Conference on Advances and Trends in Software Engineering Unifying Modeling and Programming with ALF Thomas Buchmann and Alexander Rimer University of Bayreuth Chair of Applied Computer Science I Bayreuth, Germany email: fthomas.buchmann, [email protected] Abstract—Model-driven software engineering has become more The Eclipse Modeling Framework (EMF) [5] has been and more popular during the last decade. While modeling the established as an extensible platform for the development of static structure of a software system is almost state-of-the art MDSE applications. It is based on the Ecore meta-model, nowadays, programming is still required to supply behavior, i.e., which is compatible with the Object Management Group method bodies. Unified Modeling Language (UML) class dia- (OMG) Meta Object Facility (MOF) specification [6]. Ideally, grams constitute the standard in structural modeling. Behavioral software engineers operate only on the level of models such modeling, on the other hand, may be achieved graphically with a set of UML diagrams or with textual languages. Unfortunately, that there is no need to inspect or edit the actual source code, not all UML diagrams come with a precisely defined execution which is generated from the models automatically. However, semantics and thus, code generation is hindered. In this paper, an practical experiences have shown that language-specific adap- implementation of the Action Language for Foundational UML tations to the generated source code are frequently necessary. (Alf) standard is presented, which allows for textual modeling In EMF, for instance, only structure is modeled by means of of software systems.
    [Show full text]
  • Plantuml Language Reference Guide (Version 1.2021.2)
    Drawing UML with PlantUML PlantUML Language Reference Guide (Version 1.2021.2) PlantUML is a component that allows to quickly write : • Sequence diagram • Usecase diagram • Class diagram • Object diagram • Activity diagram • Component diagram • Deployment diagram • State diagram • Timing diagram The following non-UML diagrams are also supported: • JSON Data • YAML Data • Network diagram (nwdiag) • Wireframe graphical interface • Archimate diagram • Specification and Description Language (SDL) • Ditaa diagram • Gantt diagram • MindMap diagram • Work Breakdown Structure diagram • Mathematic with AsciiMath or JLaTeXMath notation • Entity Relationship diagram Diagrams are defined using a simple and intuitive language. 1 SEQUENCE DIAGRAM 1 Sequence Diagram 1.1 Basic examples The sequence -> is used to draw a message between two participants. Participants do not have to be explicitly declared. To have a dotted arrow, you use --> It is also possible to use <- and <--. That does not change the drawing, but may improve readability. Note that this is only true for sequence diagrams, rules are different for the other diagrams. @startuml Alice -> Bob: Authentication Request Bob --> Alice: Authentication Response Alice -> Bob: Another authentication Request Alice <-- Bob: Another authentication Response @enduml 1.2 Declaring participant If the keyword participant is used to declare a participant, more control on that participant is possible. The order of declaration will be the (default) order of display. Using these other keywords to declare participants
    [Show full text]
  • OMG Meta Object Facility (MOF) Core Specification
    Date : October 2019 OMG Meta Object Facility (MOF) Core Specification Version 2.5.1 OMG Document Number: formal/2019-10-01 Standard document URL: https://www.omg.org/spec/MOF/2.5.1 Normative Machine-Readable Files: https://www.omg.org/spec/MOF/20131001/MOF.xmi Informative Machine-Readable Files: https://www.omg.org/spec/MOF/20131001/CMOFConstraints.ocl https://www.omg.org/spec/MOF/20131001/EMOFConstraints.ocl Copyright © 2003, Adaptive Copyright © 2003, Ceira Technologies, Inc. Copyright © 2003, Compuware Corporation Copyright © 2003, Data Access Technologies, Inc. Copyright © 2003, DSTC Copyright © 2003, Gentleware Copyright © 2003, Hewlett-Packard Copyright © 2003, International Business Machines Copyright © 2003, IONA Copyright © 2003, MetaMatrix Copyright © 2015, Object Management Group Copyright © 2003, Softeam Copyright © 2003, SUN Copyright © 2003, Telelogic AB Copyright © 2003, Unisys USE OF SPECIFICATION - TERMS, CONDITIONS & NOTICES The material in this document details an Object Management Group specification in accordance with the terms, conditions and notices set forth below. This document does not represent a commitment to implement any portion of this specification in any company's products. The information contained in this document is subject to change without notice. LICENSES The companies listed above have granted to the Object Management Group, Inc. (OMG) a nonexclusive, royalty-free, paid up, worldwide license to copy and distribute this document and to modify this document and distribute copies of the modified version. Each of the copyright holders listed above has agreed that no person shall be deemed to have infringed the copyright in the included material of any such copyright holder by reason of having used the specification set forth herein or having conformed any computer software to the specification.
    [Show full text]
  • The Development of an Object-Oriented Software
    Object-Oriented Design Lecture 18 Implementation Workflow Sharif University of Technology 1 Department of Computer Engineering Implementation Workflow • Implementation is primarily about creating code. However, the OO analyst/designer may be called on to create an implementation model. • The implementation workflow is the main focus of the Construction phase. • Implementation is about transforming a design model into executable code. Sharif University of Technology 2 Implementation Modeling • Implementation modeling is important when: • you intend to forward-engineer from the model (generate code); • you are doing CBD in order to get reuse. • The implementation model is part of the design model. • Artifacts - represent the specifications of real-world things such as source files: • components are manifest by artifacts; • artifacts are deployed onto nodes. • Nodes - represent the specifications of hardware or execution environments. Sharif University of Technology 3 Implementation Model Sharif University of Technology 4 Implementation Workflow: Activities • The Implementation Workflow consists of the following activities: • Architectural Implementation • Integrate System • Implement a Component • Implement a Class • Perform Unit Test Sharif University of Technology 5 Architectural Implementation • The UP activity Architectural Implementation is about identifying architecturally significant components and mapping them to physical hardware. • The deployment diagram maps the software architecture to the hardware architecture. • Deployment
    [Show full text]
  • Ontology Definition Metamodel
    Date: September 2014 Ontology Definition Metamodel Version 1.1 OMG Document Number: formal/2014-09-02 Standard Document URL: http://www.omg.org/spec/ODM/1.1/ Normative Machine Consumable Files: http://www.omg.org/spec/ODM/20131101/ODM-metamodels.xmi http://www.omg.org/spec/ODM/20131101/RDFProfile.xmi http://www.omg.org/spec/ODM/20131101/OWLProfile.xmi http://www.omg.org/spec/ODM/20131101/RDFLibrary.xmi http://www.omg.org/spec/ODM/20131101/XSDLibrary.xmi http://www.omg.org/spec/ODM/20131101/OWLLibrary.xmi Copyright © 2009-2014, 88Solutions Copyright © 2013-2014, ACORD Copyright © 2009-2014, Adaptive, Inc. Copyright © 2009-2014, California Institute of Technology. United States Government sponsorship acknowledged. Copyright © 2005-2012, Computer Sciences Corporation Copyright © 2009-2014, Deere & Company Copyright © 2005-2014, International Business Machines Corporation Copyright © 2013-2014, Institute for Defense Analyses Copyright © 2009-2014, Object Management Group, Inc. Copyright © 2011-2014, No Magic, Inc. Copyright © 2005-2012, Raytheon Company Copyright © 2005-2011, Sandpiper Software, Inc. Copyright © 2009-2014, Sparx Systems Pty Ltd Copyright © 2011-2014, Thematix Partners LLC USE OF SPECIFICATION - TERMS, CONDITIONS & NOTICES The material in this document details an Object Management Group specification in accordance with the terms, conditions and notices set forth below. This document does not represent a commitment to implement any portion of this specification in any company's products. The information contained in this document is subject to change without notice. LICENSES The companies listed above have granted to the Object Management Group, Inc. (OMG) a nonexclusive, royalty-free, paid up, worldwide license to copy and distribute this document and to modify this document and distribute copies of the modified version.
    [Show full text]