OsEra Technology Stack

The following diagram shows the relationship between some of the OsEra technologies being integrated in the proof of concept.  This technology stack is utilized as part of the prototype demonstration application.

Eclipse Environment

The eclipse open source tooling environment is used as the basis for the reference implementation of all of the eclipse components.  Eclipse provides the Integrated Development Environment and Eclipse Modeling Framework (EMF) repository.  In addition to these core technologies there are a wide range of tools and runtime components integrated in Eclipse.  OsEra is able to produce and consume the artifacts of many of these other tools.

Tool Integration

The tool integration framework provides for the adaptation of external tooling into the OsEra environment.

Current components include:

Other tools and formats will be integrated based on stakeholder demand and funding.

Architecture Modeling

Producing architectural models may be done in external tools and integrated or using OsEra specific model editors.  At this time only external tools are supported.  OsEra model editors will provide views of the underlying model in the Semantic Core based on the view(s) required by a particular stakeholder.  Views will include:

  • Goals and Requirements
  • Role and Collaboration Modeling
  • Business Process Modeling
  • Information Modeling
  • FEA
  • Security
  • Organizational Structure
  • Business Vocabulary
  • Ontologies

Model Repository

The Model Repository provides for the management of all OsEra assets, including models.  Ultimately this will provide for distributed and federated management of models across virtual development teams and the publication of architectures as web assets.  The current repository is based on Eclipse-EMF and configuration management of XMI files in Subversion.

The model repository contains models based on a variety of meta models including:

  • Semantic Core
  • Enterprise Distributed Object Computing (EDOC)
  • Unified Modeling Language (UML)
  • The Federal Enterprise Architecture Framework (FEA)
  • Business Process Execution Language (BPEL)
  • XML Schema

As OsEra expands, other models will be incorporated, including DoDaf and OWL.

Provisioning

Provisioning provides for the conversion of assets from one format to another.  This can include:

  • Importing external artifacts into OsEra
  • Producing external artifacts from OsEra - including reports, specifications, models and source code
  • Converting between models within OsEra

A base technology for provisioning is the OMG- "Query View Transform" specification.  However, there are no suitable QVT implementations.  At this time provisioning components are implemented using a combination of XSLT, Java and other open source components.

Enterprise Service Bus

An Enterprise Service Bus (ESB) provides for the execution of business architectures on a Service Oriented Architecture (SOA) infrastructure.  The infrastructure most commonly identified with SOA is Web Service, but this is only one of the technology choices that can be made.

The prototype reference implementation of the ESB is based on the following Technologies:

  • Web services, XML and BPEL
  • jBoss Application Server
  • jBPM Implementation of BPEL

The following diagram form jBoss shown the relationship of these technologies.

Semantic Web

The semantic web is being integrated into OsEra in multiple ways;

  • As a source for architectures which are integrated into the Semantic Core
  • As a publishing environment for architectures
  • As an environment to support the integration and semantic grounding of architectures
  • As a metadata management environment, similar to the OMG-MOF

The demo includes the capability to publish any model in the repository as a semantic web resource on the web and to use ontology tools to query and reason about these models.