About Us   |   Privacy Policy   |   Terms of Use  
OCT Home Announcing Discover Downloads OCT Services Community About Aivea Contact Us

    OBA Composition Toolkit

Summary

The OBA Composition Toolkit was built to demonstrate the inherent platform capabilities of the Microsoft Office 2007 System to materialize an Enterprise Composite Solutions Framework for Information Worker solutions.

The Microsoft Office 2007 System – A Composite Solutions Platform

The 2007 Microsoft Office system is a composite-solutions platform that can be used to materialize the benefits of composite-solution architectures in the context of composite information worker solutions.

Figure 1 illustrates the composite-solutions platform capabilities of the 2007 Microsoft Office system.

Composite Solution Capabilities

Figure 1. Composite-solution platform capabilities of the 2007 Microsoft Office system

The 2007 Microsoft Office system is a powerful platform for building role-based, collaborative, and analytical applications that aggregate and extend the reach of an enterprise's line-of-business (LOB) systems to information/knowledge workers across the organization. The term that is used to refer to these applications is Office Business Applications (OBAs). OBAs extend investments in LOB systems by integrating them with the powerful platform capabilities of the 2007 Office system to surface LOB data, information, and processes to information workers within the business-productivity tools, interfaces, and devices that they use to execute and complete their business tasks.

To learn more about the 2007 Office system platform capabilities, OBAs, and the OBA opportunities, see the white paper, "Integrating LOB Systems with the Microsoft Office System" on MSDN.

A lesser-known or not-so-clearly-visible fact is that OBAs are composite applications that are built by using OBA components and, when they are architected optimally, they can enable the materialization of the benefits of composite-solution architectures and composite solutions. Figure 2 shows some of the common types of components that can be designed and used to compose OBAs. The components in the illustration are shown as they relate to the architectural layers of a solution.

OBA Components 
Figure 2. OBA components

The following is a brief summary of the specific capabilities of the 2007 Microsoft Office system, in the context of the generic composite-solutions platform capability requirements that were summarized in the previous section: 

Componentization capabilities—The 2007 Office system supports solution components, as shown in Figure 4. OBAs are composite applications that are built by composing OBA components. The user experiences for working with OBAs (and, thereby, using the capabilities of the OBA components) are surfaced using the familiar containers that are enabled by the Microsoft Office Business Productivity Clients and Office SharePoint Portals.

  • IT Federation and Governance requirements—Office SharePoint (Microsoft Windows SharePoint Services and Office SharePoint Server) enables the IT Federation and Governance platform. Individual OBA components can be cataloged and described in an Office SharePoint farm. The Office SharePoint security model can be applied to control user access to the components.
  • A related example is the ability to catalog Office SharePoint Server 2007 Business Data Catalog Application Definition components in an Office SharePoint Service Provider Catalog and define related user-access permissions using the Office SharePoint security model.
  • Composition user experience—The 2007 Office system includes support for the core capability requirements that relate to composition user experiences. Application-composition tooling for developers and power business users who have an IT background are enabled by using the Office SharePoint user interface, Office SharePoint Designer, and Microsoft Visual Studio .NET (Microsoft Visual Studio Tools for Office).
  • Composition semantics—The 2007 Office system includes support for the basic, core capability requirements that enable the defining and capturing of identification and limited component dependency relationships metadata.

Although the core capabilities to support composite-solution architectures and composite solutions are enabled by the 2007 Office system, related architectural and engineering practices also must be adopted and applied to materialize the benefits and potential. Additionally, there are some key value-adding capabilities that can be built around the core 2007 Office system platform to enhance the solution-composition experience even further.

The OBA Composition Toolkit was built to illustrate these practices and capabilities. The following section describes the OBA Composition Toolkit and provides links to additional resources that you can explore to use and extend the toolkit.

Back To Top

The OBA Composition Toolkit

The OBA Composition Toolkit was built to illustrate:

  • Application (OBA) composition opportunities and best practices, using the capabilities of the 2007 Office system.
  • Benefits of advanced surround capabilities related to building composite applications (OBAs) on the 2007 Office system. These include richer composition metadata services and application-composition services for business domain experts who have a limited IT background. The goal for illustrating these capabilities is to demonstrate related possibilities and gather user feedback on related value perceptions.

Figure 3 illustrates the high-level architecture of the OBA Composition Toolkit. It depicts the elements that constitute the toolkit, the relationships between them, and their integration/use with the out-of-the-box capabilities that are enabled by the 2007 Office system (all items with a green background).

OBA Composition Toolkit

Figure 3. The OBA Composition Toolkit

The toolkit includes the source code and related artifacts for all the components that constitute the OBA Composition Toolkit. Pointers to the locations of the source artifacts for each of the constituent components are included in following sections that describe them.

Note: The source code and artifacts of the OBA Composition Toolkit can be found in the <installation folder>:\Source Code folder. The default installation folder is <drive>:\Program Files\CompOBARefToolkit. This folder will be referred to as the <OCRT Source Folder> in the remainder of this document.

The following sections describe the services and tools that are included in the OBA Composition Toolkit.

The OBA Composition Server

The OBA Composition Server constitutes the core of the services and capabilities that are enabled by the OBA Composition Toolkit. It is the central engine that enables the rich composition metadata and application-composition services that constitute the advanced surround capabilities for a composite-solutions platform.

The OBA Composition Server includes the following subcomponents:

  • Metadata Catalog—This is a semantic Metamodel that is materialized as a Microsoft SQL Server 2005 database to capture metadata that pertains to OBA components and OBAs that are composed by using the components. The metadata includes support for defining advanced semantics that are required to define/navigate intricate component relationships, define adaptable component bindings to LOB systems, and facilitate domain-tailored discoverability of components.
    Metadata that pertains to OBA components that have been developed by using the standard Microsoft OBA development tools is stored in the Metadata Catalog. The metadata that is stored in the catalog facilitates locating components and traversing relationships between the components, to enable a prescriptive application (OBA) composition experience in the Composer. The Metadata Catalog is also used to store the definitions of the composed OBAs, which are utilized by the OBA Provisioning Service component to deploy the OBAs to a configured Office SharePoint farm.
    The SQL Server database backup of the metadata catalog can be found in the <OCRT Source Folder>\OBA Composition Server\Metadata Database folder.
  • OBA Composition Metadata Web Services—This is a Web service that is hosted in an Office SharePoint Web application to service-enable access to the OBA component and OBA metadata that is stored in the Metadata Catalog. The Web service methods are used extensively by the OBA Composer to enable the OBA composition and deployment user experiences. The Web service methods include APIs that facilitate searching for OBA components, retrieving component metadata, navigating component relationships, identifying LOB system bindings for components, saving/retrieving the definitions of composite OBAs, and other related capabilities.
    The source project\code for the metadata web services can be found in the <OCRT Source Folder>\OBA Composition Server\Web Services folder.
  • Provisioning Services—This is a Windows service to provision components, LOB adapters, user environments, composed OBAs. Components and LOB adapters are the building blocks of OBAs. They are built by developers and registered in an OBA Composition Server using the Composition Server administration interfaces. Users can use the OBA Composer application included in the toolkit to browse the catalog of registered components and select/use components to compose and deploy OBAs to their sandboxed OBA run-time environment—a SharePoint site. The OBA Composition Toolkit includes provisioning services to deploy components and LOB adapters registered in an OBA Composition Server, deploy OBAs composed by users, and create/configure sandboxed OBA run-time environments for users. The component, LOB adapter, and user provisioning services are invoked when new components, LOB adapters, and users are registered in an OBA Composition Server. The OBA provisioning service is invoked when users compose and provision OBAs using the OBA Composer application.
    The source project\code for the provisioning services can be found in the <OCRT Source Folder>\OBA Composition Server\Provisioning Services folder.
  • Administration Capabilities—Administration capabilities for the OBA Composition Server are integrated into the SharePoint Central Administration Portal. These capabilities enable IT/SharePoint administrators to register, administer, and manage OBA components and LOB adapters in an OBA Composition Server. The administration capabilities also include user management features that enable administrators to register users in the OBA Composition Server and provision sandboxed OBA run-time environments for them to compose, deploy, and run OBAs.

    The source project\code for the Administration UI can be found in the <OCRT Source Folder>\OBA Composition Server\Administration UI folder.

    The source project\code for the Administration Web Services can be found in the <OCRT Source Folder>\OBA Composition Server\Web Services folder.

The OBA Composer

The OBA Composer is the face of the OBA Composition Toolkit. It is a manifestation of the kinds of capabilities that can be implemented to enable a compelling application-composition experience for business domain experts who have a limited IT background. The OBA Composer is implemented as a rich-client Windows Presentation Foundation (WPF) application. It uses the OBA Composition Metadata Web services to enable a prescriptive user experience for guiding users through the end-to-end process of searching for OBA components, traversing relationships between components, selecting components to compose an OBA, saving composed OBA definitions, deploying a composed OBA, and previewing the composed application.
Figure 6 shows a screen shot of the OBA Composer.

OBA Composer

Figure 6: The OBA Composer

A very compelling capability introduced in the OBA Composer in version 2.0 of the OBA Composition Toolkit is the “prescriptively secure user experience.” User permissions configured by administrators for components and LOB adapters registered in an OBA Composition Server flow seamlessly to the OBA Composer user interface to prescriptively filter and/or control the access that a user should have to these objects when composing OBAs. This helps ensure that related security and governance policies defined by IT cannot be bypassed by users when composing and deploying OBAs using the OBA Composer application.

The following types of OBA components are supported in this release and can be used to compose OBAs using the OBA Composer and the Toolkit services:

  • Office SharePoint lists/document libraries (Microsoft Office Word, Microsoft Office Excel, Microsoft Office PowerPoint)/Microsoft Office InfoPath 2007 Form libraries
  • Document templates (Office Word, Office Excel, Office PowerPoint, Office InfoPath) that are packaged as Office SharePoint content types
  • Office SharePoint content types
  • Office SharePoint site pages
  • Web Parts
  • Workflows
  • Business Data Catalog (BDC) application definitions
  • Business-intelligence components:
  • Excel Services Reports and Dashboards
  • SQL Server Reporting Services reports
  • Visual Studio Tools for Office Add-ins (application add-ins) for:
      o Microsoft Word
      o Microsoft Excel
      o Microsoft Outlook
  • Data sources:
      o ASMX Web Services
      o Relational databases: SQL Server 2005 and Access 2007
      o OLA databases: SQL Server Analysis Services 2005 databases, .cub files (offline OLAP db files created using Excel)
  • The source project\code for the OBA Composer can be found in the <OCRT Source Folder>\OBA Composer folder.

Sample Components

A set of sample components can be obtained and installed to experiment with composing and deploying OBAs using the tools and services enabled by the OBA Composition Toolkit. An MSI to install the sample components can be downloaded from the toolkit’s MSDN site and used to install the sample components. The sample components cover a variety of scenarios, information about which can be found in the User’s guide document.
The source projects\code for the sample components can be found in the <OCRT Source Folder>\Seed Components folder.

OBA Composition Toolkit Benefits

The OBA Composition Toolkit provides an easy way to compose OBAs using OBA components. It provides a model for collaboration between enterprise IT developers, administrators, and information workers to drive innovation, agility, and reuse. Instead of constantly having to write and revise custom applications, developers can populate a component repository with company/domain-specific reusable components. IT administrators can secure, federate, and govern access to the component repositories. Information workers can use the components to compose and deploy OBAs that address their situational/business requirements, while working the security/governance boundaries established by IT. 
 

Back To Top