The Object Management Group (OMG) announced that its members have voted to adopt the Reusable Asset Specification (RAS), which defines a standard way to package reusable software assets.
A 'reusable software asset' is, broadly speaking, "any cohesive collection of artifacts that solve a specific problem or set of problems encountered in the software development life cycle." A reusable asset, which "provides a solution to a problem for a given context, may have a variability point with a value provided or customized by the asset consumer, and rules for usage which are the instructions describing how the asset should be used. Artifacts are any workproducts from the software development lifecycle, such as requirements documents, models, source code files, deployment descriptors, test cases or scripts, etc."
RAS describes assets as part of asset-based development (ABD) which complements the Model Driven Architecture (MDA) by describing asset production, asset consumption, and asset management. An RAS manifest document is an XML document; the authoritative description of the RAS manifest document structure is provided as an XML Schema. Every reusable asset must contain at a minimum one manifest file, which are described below, and at least one artifact to be considered a valid reusable asset. The manifest file is an XML document that validates against one of the known RAS XML Schemas, and passes an additional set of semantic constraints described in the profile document. An asset package is the collection of artifact files plus a manifest."
Several tool vendors have implemented the currently released RAS XML schema in their tools and other companies have implemented internal tools based on the RAS specification.
RFC Submitted to OMG: Reusable Asset Specification (RAS). Submitted to OMG by Adaptive, Blueprint Technologies, Flashline, IBM, LogicLibrary, and OSTnet. Version 2.1. October 2003. Reference: Document 'ad/2003-10-12'. 110 pages.
Overview of the Reusable Asset Specification
With the finalization of UML 2.0, MOF 2.0, and XMI 2.0 in process, and a roadmap of new specifications to support Model Driven Architecture, now is a good time to align the further development of the Reusable Asset Specification (RAS) with OMG's objectives.
The Reusable Asset Specification (RAS) defines a standard way to package reusable software assets. The objective is to establish a standard set of practical and specific guidelines on how to describe reusable assets in order to:
- Facilitate and improve communication between asset producers and consumers
- Represent assets in software development tools
- Provide means for asset management and exchange
RAS accomplishes these goals by defining a set of terms related to asset based development, i.e. development that incorporates the reuse of predefined assets, and to define the minimum required structured meta-information to facilitate the reuse of software assets, especially for a software development process using model based techniques like Model Driven Architecture (MDA). The reuse of assets during development therefore complements MDA by describing asset production, asset consumption, and asset management.
There are two RAS UML models described in the [RFC] document, these models were produced using Rational Rose. One RAS UML model is used to translate into XML Schema and represents the RAS XML schemas and files that are used by various tool vendors today. The other RAS UML model is used to translate into MOF 2.0 XMI XML schema. This model was organized to be translated by the Eclipse MOF 2.0 XMI converter. The modeling conventions used in the models are described below starting with the RAS UML model for XML Schema...
The Reusable Asset Specification (RAS) defines a standard way to package reusable software assets. A reusable software asset is, broadly speaking, any cohesive collection of artifacts that solve a specific problem or set of problems encountered in the software development life cycle. A reusable software asset is created with the intent of reuse. A reusable asset is distinguished from other artifacts or collections of artifacts used in the software development life cycle by its packaging. A reusable asset's packaging is simply the set of files that implement the solution and a structured set of meta information that defines and describes the reusable asset as a whole.
The reusable asset specification is an important part of an Asset-based Development (ABD) process. An ABD development process promotes and encourages the reuse of software development assets in all workflows of the development process. This specification defines a standard way to package and articulate reusable software assets so that they are more likely to be reused in later software development efforts... [excerpted]
From the Announcement
"The Object Management Group (OMG) today [2004-05-05] announces that members adopted a new standard for Reusable Software Assets during the organization's Technical Meeting last week in St. Louis, MO, USA, sponsored by the Boeing Corporation (www.boeing.com), Express Scripts (www.expressscripts.com), and Object Computing Inc (www.ociweb.com). In addition, standards for Product Lifecycle Management and Software-Defined Radio began a final series of votes in the OMG adoption process.
Following member evaluation and endorsement, a vote by OMG's Board of Directors makes a new standard official. In St. Louis, the Board ratified adoption of three new standards including the Reusable Asset Specification which defines XML schemas that package reusable software assets for exchange among applications via XMI, Web Services, and other protocols. Defined using OMG's Model Driven Architecture (MDA), this exchange enables Asset-Based Development, a process that encourages the reuse of software development assets in all process workflows.
The two other newly-adopted standards include a set of Life Sciences Identifiers which standardizes access to common concepts in biotechnology, and a UML Profile for Quality of Service and Fault Tolerance which supports the MDA in distributed real-time and high-assurance computing.
OMG members completed their evaluation of draft specifications for Product Lifecycle Management (PLM) and Software-Defined Radio (SDR), and started the final series of votes that will adopt them as official OMG specifications. The PLM specification defines the standard model in the Unified Modeling Language (UML) that brings strategic portions of the STEP and EXPRESS manufacturing standards into OMG's MDA. Following the MDA, this model defines interfaces that enable PLM applications to interoperate using Web Services Definition Language (WSDL), XML, and XMI.
The SDR specification defines UML Platform-Independent Models for Software Radio Infrastructure and Waveform Applications. These models standardize the basic architecture of software radios for both military and civilian applications.
OMG members issued Requests for Proposals (RFPs) soliciting drafts for one new domain standard and two new infrastructure standards. A new specification in Knowledge-Based Engineering (KBE) will bring the discipline into the MDA and enable interoperability of engineering information among conformant KBE tools. One infrastructure RFP solicits proposals for a mapping from WSDL to C++; the other, a standard transformation from MetaObject Facility (MOF) models to text. Any interested company may join OMG and submit in response to these RFPs..." [excerpted from the OMG announcement]
About the Object Management Group (OMG)
With well-established standards covering software from design and development, through deployment and maintenance, and extending to evolution to future platforms, the Object Management Group (OMG) supports a full-lifecycle approach to enterprise integration which maximizes ROI, the key to successful IT. OMG's standards cover multiple operating systems, programming languages, middleware and networking infrastructures, and software development environments. OMG's Modeling standards, the basis for the MDA, include the Unified Modeling Language (UML) and Common Warehouse Metamodel (CWM). CORBA, the Common Object Request Broker Architecture, is OMG's standard open platform with hundreds of millions of deployments running today.
Headquartered in Needham, MA, USA, with a U.S. government representative in Washington, DC, and international marketing representatives in Japan, the UK, and Germany, the Object Management Group is an international, open membership, not-for-profit computer industry specifications consortium. OMG member companies write, adopt, and maintain the organization's standards following a mature, open process. All current OMG specifications may be downloaded without charge from the organization's website, www.omg.org; the site also provides additional information about OMG and its activities.
Reusable Asset Specification Consortium
According to a 2004-05 summary from IBM, RAS is a Managed Standard of the Reusable Asset Specification Consortium. "The Reusable Asset Specification is a set of concepts, notations and guidelines for describing the reusable assets of business systems. The Specification focuses on specific reusable assets within (and occasionally across) architectural views and how to document each asset. Rational Software is putting forward a set of guidelines for the specification, development and application of reusable software assets. Rational believes that the development of complex software applications can be dramatically accelerated through reuse of different types of software assets. Reuse is not a new concept and it has been practiced, with mixed results, for quite some time. Rational recognizes that recent technology and market changes make economically significant reuse an attainable goal..." Contact Grant Larsen, email firstname.lastname@example.org.
- Announcement 2004-05-05: "OMG Defines New Standard for Reusable Software Assets. Product Lifecycle Management, Software-Defined Radio Specifications Take Final Form as Group Meets in St Louis, MO, April 26-30, 2004."
- RFC Submitted to OMG: Reusable Asset Specification (RAS). Version 2.1.
- OMG Specifications Overview
- OMG Modeling and Metadata Specifications
- Model Driven Architecture (MDA) Resources
- OMG UML Resources
- Common Warehouse Metamodel (CWM) Resources
- Object Management Group web site
- Object Management Group (OMG) and XML Metadata Interchange Format (XMI)" - Main reference page.
- "OMG Common Warehouse Metadata Interchange (CWMI) Specification" - Main reference page.
- "OMG Model Driven Architecture (MDA)" - Main reference page.
- "Asset Based Development." By Grant Larsen (IBM). November 2003. [cache]
- "Flashline Enhances Support for Reusable Asset Specification. Flashline Registry First Third-Party Solution To Become RAS Repository." Press release December 09, 2003.
- "OMG Moves Closer to XML-Powered Reusable Code." By Vance McCarthy. In Integration Developer News (December 04, 2003).
- "Reusable Asset Specification Advances at OMG." By David Rubinstein. In Software Development Times (December 15, 2003).