You are on page 1of 41

ECM Platforms: The Next Generation of Enterprise Content Management

The Evolution of ECM: Platform Oriented, Flexible, Architected for the Cloud and Designed for Technologists
Over the last decade, content technology, use and expectations have signi cantly evolved - rede ning the requirements for architects, project managers and developers responsible for implementing ECM solutions. Emerging best practices suggest that a well-designed ECM platform supports solution development and deployment in a manner that is predictable, sustainable and a ordable. This white paper explores these content technology changes, and explains the value and bene ts to business and technical adopters of embracing a new generation of ECM platform technology.
Eric Barroca, Roland Benedetti - August 12, 2011

Copyright 2011 - 2012 Nuxeo. All Rights Reserved.

www.nuxeo.com

Taking a Platform Approach to Building Content Centric Applications

Contents
Executive Summary_______________________________________________________4 Scope and Goals__________________________________________________________4 Target Audience__________________________________________________________4 Defining Enterprise Content and Enterprise Content Management_______________5 What Is Enterprise Content Management?_____________________________________5 What Is Enterprise Content?_________________________________________________6 Drivers for ECM Adoption___________________________________________________6 Enterprise Content Trends__________________________________________________8 ECM: It's not Just File Shares as Content Tools_________________________________8 The Evolution of ECM______________________________________________________ 9 Content Diversity________________________________________________________10 Smart Content___________________________________________________________11 Big Data Is Big Content___________________________________________________12 Requirements and Challenges for a Modern Content Platform_________________15 Enabling Content-Driven Processes and Applications___________________________15 Providing Modularity and Extensibility________________________________________17 Supporting More Than Just the Server Side___________________________________19 Running Anywhere, Including the Cloud______________________________________20 Modern Development: Agile and Soon in the Cloud_____________________________23 Standards Matter, but Don't Be Blind_______________________________________26 Why Standards?_________________________________________________________ 26 Existing and Emerging Standards___________________________________________26 The Business Case for Adopting a Platform Approach to Content Applications__33 Qualitative Reasons______________________________________________________33 Calculating ROI__________________________________________________________ 34 Nuxeo's Enterprise Platform: a Modern ECM Platform _______________________37 Conclusion______________________________________________________________ 39 What You Can Expect When Adopting ECM___________________________________ 39

Table of Figures
Figure 1: Drivers for ECM Adoption (Miles, 2011)...................................................... 7 Figure 2: Reasons for Adopting New ECM (Miles, 2011)........................................... 7 Figure 3: Traditional ECM functions........................................................................... 9 Figure 4: The Evolution of Content Management (Miles, 2011)...............................10 Figure 5: How well is content managed (Miles, 2011).............................................11 Figure 6: The Evolution of Content.......................................................................... 12 Figure 7: Organizational Unit Content Growth (Chute, Manfrediz, Minton, Reinsel, Schlichting, & Toncheva, 2008)................................................................................13 Figure 8: Architecture Pattern for Content Driven Applications...............................16
Page 2/40

Taking a Platform Approach to Building Content Centric Applications

Figure 9: Reasons for Inability to Meet ECM Vision................................................. 17 Figure 10: Multi-Channel Content Delivery.............................................................. 20 Figure 11: Cloud Computing Taxonomy.................................................................. 22 Figure 12: Development as a Service...................................................................... 25 Figure 13: Linked Open Data................................................................................... 30 Figure 14: Benefit and Cost Categories...................................................................34 Figure 15: Nuxeo Architecture................................................................................. 37 Figure 16: Customizing the Nuxeo Platform............................................................ 38

Table of Tables
Table 1: Example ROI Calculation........................................................................... 36

Page 3/40

Taking a Platform Approach to Building Content Centric Applications

Executive Summary
Scope and Goals
This document is intended for technology leaders and infuencers who are involved in the selection of solutions for managing enterprise content. The document provides readers a detailed understanding of how organizational needs for managing enterprise content are evolving, and why it is critical to implement processes and tools that are sufficiently fexible to support these rapid changes now. After reading this white paper, you should understand:

What is meant by the terms enterprise content and enterprise content management. How enterprise content and organizational needs for managing that content are evolving. Why it is important to have tools based on a strong technology platform that support information and processes of increasingly diverse types, complexity and size.

Technologies and standards for supporting enterprise content management (ECM) in a process-centric manner. How to create the business case for adopting a platform for building contentdriven solutions.

Target Audience
The ideal reader is in a software, solution or enterprise architecture role and makes or infuences decisions about development frameworks, enterprise content management systems or other content-centric platforms. The reader should have a general understanding of enterprise content management concepts, but is not expected to have detailed understanding of any specific enterprise content management process, application, framework or platform.

Page 4/40

Taking a Platform Approach to Building Content Centric Applications

Defining Enterprise Content and Enterprise Content Management


What Is Enterprise Content Management?
Organizations are becoming more conscious of the worth of the content they have and the value of being able to utilize this content effectively. This is precisely what ECM addresses. ECM is aimed at managing the life cycle of information from its creation to archival and disposal. According to the Association for Information and Image Management (AIIM): ECM is the strategies, methods and tools used to capture, manage, store, preserve and deliver content and documents related to organizational processes. ECM tools and strategies allow the management of an organization's structured and unstructured information, wherever that information exists. (AIIM, 2011) Although many may assume ECM is just a technology solution, it is not. ECM also includes any operational or strategic processes that rely on content in addition to the tools and technology used to support them. The first decade of the 21st century has caused organizational processes to evolve far beyond what many originally considered possible and content supports many of those processes. This evolution has made ECM a critical component of the enterprise technology ecosystem. Traditionally, technology solutions that support ECM provide capabilities such as:

search collaboration business rules management workfow management document capture and scanning version management metadata enhancement

that help make access, delivery and management of information more controlled, efficient and less costly. However, this list of features is evolving as ECM evolves constantly adding new requirements and growing more demanding, with a greater emphasis on integration and long term fexibility. Just like Enterprise Resource Planning (ERP) increases operational efficiency and competitiveness, standardizing processes like financial management, ECM allows
Page 5/40

Taking a Platform Approach to Building Content Centric Applications

organizations to gain control over their content to accomplish organizational objectives.

What Is Enterprise Content?


The definition above provides a description of what it means to manage content, but what is the enterprise content that is being managed? Enterprise content has evolved. It is no longer just digitized versions of scanned documents or a narrowly-defined set of records. Enterprise content may include any type of content that an organization captures and uses in its daily processes, from structured content in relational databases, XML documents or enterprise applications such as customer relationship management (CRM), supply chain management (SCM) or enterprise resource planning (ERP) tools, to unstructured content such as text, emails, word processing and spreadsheets. Enterprise content is not limited to these items, however. Enterprise content may also include multimedia such as images, video, voice mail, streaming media and newer forms of information like geo-data that previously did not exist or occurred infrequently. Social media may also be expanding its impact on enterprise content. However, at this point, the medium is used more frequently for communication, collaboration and Web Engagement than for ECM use cases. In short, enterprise content can be any piece of data, document, enterprise application content or multimedia asset that is associated with an organizational business process, or any content that an organization deems valuable enough to store and manage. Enterprise content is at the heart of information systems an important part of the processes and models of the business. Enterprise content is no longer a static entity that exists beside business logic; content co-exists with business logic. It is critical that platforms support content types and metadata that are capable of accurately representing the complex relationships and transactions that occur every day in the business to enable improvements in organizational process.

Drivers for ECM Adoption


As early as the mid to late 1980s, organizations were implementing stand-alone, tactical solutions from vendors like FileNet, ViewStar and Lotus to capture paper documents and reduce the effort and time required to find information. Businesses continue to adopt content management for many of the same reasons they did over two decades ago, and the pace seems to be increasing.

Page 6/40

Taking a Platform Approach to Building Content Centric Applications

According to the 2011 State of the ECM Industry by AIIM, there are a number of business drivers for adoption of ECM:

Figure 1: Drivers for ECM Adoption (Miles, 2011)

The study also captured drivers for adopting new ECM systems:

Figure 2: Reasons for Adopting New ECM (Miles, 2011)

Although this white paper will not go into details on each of the drivers for ECM adoption, it is easy to see that each of the issues will benefit from the support of an ECM solution based on a solid technology platform.

Page 7/40

Taking a Platform Approach to Building Content Centric Applications

Enterprise Content Trends


ECM: It's not Just File Shares as Content Tools
A number of solutions outside of ECM tools have emerged that allow sharing documents and other content among multiple users such as DropBox, Box.net, shared file systems and Google Docs. While these solutions support sharing, collaboration and limited security features, it is a mistake to consider these tools holistic ECM solutions. Modern ECM platforms are not just simple file shares and do not resemble early document management solutions that were in many cases little more than user interfaces over a file share. ECM platforms include a variety of capabilities such as:

Version tracking Relationships between documents Support for document meta-data and/or semantic details Configurable document workfow and lifecycle management Check-in/check-out Content streaming Auditing and Traceability Business rules

that are often critical for organizations to manage content efficiently and are not supported by popular file sharing tools. Additionally, an ECM platform must fulfill the requirements common to all enterprise software, such as:

Complex integration with name directories (e.g. LDAP) Capability to fit within a predefined enterprise technology portfolio and conform to architectural standards, whether in the cloud or on premise High availability

which are also not supported by file sharing applications. In general, file sharing applications are designed for independent, uncontrolled, unstructured content and include few tools to support structural management (e.g. taxonomies) or to add supporting meta-data. Further, although these tools support sharing, they do not support content reuse across the enterprise and lack support for applying critical business rules, lifecycle management or workfow to support content-centric business processes. Without the ability to classify the

Page 8/40

Taking a Platform Approach to Building Content Centric Applications

content or to represent its relationships to other content in a uniform manner, content becomes almost impossible to manage as the volume grows. File sharing applications have another important limitation. As enterprise content becomes more diverse and includes multimedia assets such as video and audio, there is an increasing need to support rich content and activities such as streaming a feature the majority of file sharing tools do not support. Older document management platforms also lack support for many of the newer content types. Finally, organizations with legal and regulatory constraints should be very careful about exposing content using document-sharing solutions, since they do not provide high levels of security, traceability or control. Even if legal requirements are not in place, exposing content perceived as private can be a large blemish on the face of an organization.

The Evolution of ECM


Like all business processes and the technology that supports them, ECM is frequently changing to introduce new models, concepts and meet new challenges. Traditionally, ECM technologies have consisted of a number of independent solutions:

Figure 3: Traditional ECM functions

However, increasingly organizations desire more integration. They want content to be pervasive and available on-demand wherever its required not just within a specific standalone application supporting a single use case. Organizations want content within the tools where and when they do their work and manage their
Page 9/40

Taking a Platform Approach to Building Content Centric Applications

business processes without the necessity to access multiple tools and follow numerous disconnected processes. These business demands are driving a new, modern breed of ECM technology. ECM has evolved from a departmental, siloed, single purpose solution to an enterprise-level infrastructure. These modern ECM solutions go beyond commercial off the shelf (COTS) applications that perform a specific function, such as document management, and even beyond integrated suites that combine multiple functions. Modern ECM technology is not an application; it is an interoperable, fexible content platform that exposes components and services that organizations can easily integrate to support a diverse set of content-enabled business processes within applications built on the platform. The new ideal ECM platform is transparent to users only the capabilities are important. The diagram below illustrates this evolution.

Figure 4: The Evolution of Content Management (Miles, 2011)

Content Diversity
Organizations are not only requiring content management solutions to be fexible enough to support more business processes; ECM solutions must also support an increasing number of content types. Organizations are increasingly leveraging new types of information to support their operation. As organizations manage more types of enterprise content, they frequently have concerns regarding the accuracy, trustworthiness and accessibility of the content. A 2011 ECM survey by AIIM showed both the different types of content organizations manage and the confidence leadership has in the quality of the management. This clearly highlights the increasing diversity of content managed by applications, from core business content to content more related to social collaboration.

Page 10/40

Taking a Platform Approach to Building Content Centric Applications

Figure 5: How well is content managed (Miles, 2011)

Smart Content
In addition to content growing more diverse, in some cases it is becoming smarter. What does this mean? Traditionally, content managed by ECM solutions consisted largely of files and scanned images perhaps interpreted with simplistic optical character recognition (OCR) and very limited metadata. Today however, modern ECM platforms must be more sophisticated. They must support interpretation of the actual contents of the document and assign meaning to the data it contains . This smart content allows organizations to go beyond just storing a binary file with limited metadata for viewing and instead associate relationships, complex metadata and business rules to automate business processes. For example, an organization scans an invoice. ECM technology can extract the invoice number and use it to relate the invoice to information in other enterprise applications (e.g. a customer service system) so that users gain a more holistic view of the information and business rules can be applied.

Page 11/40

Taking a Platform Approach to Building Content Centric Applications

Early Document Management

File Only file system based

Enterprise Content Management Previous gen.

Binary Files + limited Dublin Core

Next Generation of Enterprise Content Management


Figure 6: The Evolution of Content

Content Structure + complex metadata + binary file attachment

ECM solutions are also augmenting content with growing amounts of metadata, such as version number and security descriptors, that may be useful in making management even more efficient. Metadata is no longer just informational to the reader; it is now one of the variables driving the business process.

Big Data Is Big Content


Not only is content becoming more diverse and smarter, it is growing at an almost inconceivable pace. Companies are capturing increasing volumes of data about customers, suppliers and operations generated because of other activities. The McKinsey Global Institute projects data will grow at a rate of 40% per year (Manyika, et al., 2011) driven by an explosion of content, social media, mobile, video and other rich media combined with cheaper storage and trends such as cloud computing that encourage organizations to save everything. IDC has projected even higher content growth rates. IDC predicts that the amount of digital information produced worldwide in 2011 will be 10 times that produced in 2006. This makes for a compound annual growth rate of close to 60% (Chute, Manfrediz, Minton, Reinsel, Schlichting, & Toncheva, 2008). Content growth might have previously only concerned a few niche areas, but it now impacts every sector and organization and is quickly becoming a way for leading companies to outperform their peers as they gain new insights from stored information. For example, according to the McKinsey Global Institute, 30% of Amazon. com sales are driven by product recommendations based on users previous purchases (Manyika, et al., 2011). If this information is managed as enterPage 12/40

Taking a Platform Approach to Building Content Centric Applications

Figure 7: Organizational Unit Content Growth (Chute, Manfrediz, Minton, Reinsel, Schlichting, & Toncheva, 2008)

prise content, it can be leveraged in other content driven processes beyond sales recommendations. The ability to analyze and gain insight on larger volumes of information due to more sophisticated ECM technology has a number of benefits:

Transparency: Making content more easily accessible to stakeholders exactly when and where they need it. This reduces the time and effort required to locate information, and it can improve performance.

Data Driven Decision Making: Companies are collecting increasing amount of information from sensor data that can be used for making decisions in a more quantitative and predictable way. For example, capturing the length of time in a case management workfow can inform an organization which portion of the process is most lengthy or most expensive. The data can also be used in controlled experiments to determine the impact of making changes.

Customer Segmentation: As technology improves, organizations are better able to develop unique customer profiles to engage them more specifically. For example, they can consolidate information from CRM systems with unstructured emails and social media interactions to create a more complete understanding of customer needs across all channels.

Automated Decision Making: Access to content can provide all of the information necessary to automate decisions previously made by humans, rePage 13/40

Taking a Platform Approach to Building Content Centric Applications

ducing operational costs. Even if companies dont automate decisions completely, content can be used to facilitate decision making. In claims processing, for example, instead of going to multiple systems, enterprise content management could allow staff to see all relevant documents from a single interface, improving the efficiency of the process.

Identifying New Business Models, Products and Services: Aggregated content and its analysis presents innumerable new business opportunities from real time price comparison services to preventative care solutions in the health care sector.

Although the additional data is valuable, organizations are still struggling with their attempts to manage, store and derive value from the content. In many cases, as content sizes grow, so does the complexity and cost associated with managing the content. Legacy techniques of managing information are no longer sufficient with growing volumes of content. Users simply cant browse categories, or in some cases search, the massive amounts of content stored in the enterprise its too overwhelming. Growing content sizes make adoption of new content processes and technologies essential. From cloud-based storage to semantic technologies that improve the amount machines are able to assist users content growth is transforming the entire ECM space.

Page 14/40

Taking a Platform Approach to Building Content Centric Applications

Requirements and Challenges for a Modern Content Platform


Enabling Content-Driven Processes and Applications
Some organizations have made significant advances in leveraging ECM tools. However, in most cases, use of the technology is still not optimal. Why? Many still consider ECM a stand-alone tool instead of a middleware component that provides services capable of supporting an extremely diverse set of business functions from invoicing to case management. For example, a human resources department may need a technology solution to assist in executing the new hire process. This is a content centric process. A resume, a potential employee profile and interview feedback are all potential content types. The scenario may be even more complex. There may be a requirement to automatically provision an accepted candidate in the user directory, or integrate with a web content management system or other business processes. No boxed ECM application is likely to meet these requirements perfectly. This is a content-driven application. Instead of custom developing a solution using a lower level framework (e.g. Hibernate for persistence) the organization could benefit from the capabilities of a content platform for managing the process. Although electing to adopt a content platform versus a traditional ECM application has a number of benefits, some architects may question how to best integrate the components into their technology portfolio. The diagram below illustrates one possible architectural model for organizing content-driven applications using content platform components.

Page 15/40

Taking a Platform Approach to Building Content Centric Applications

Figure 8: Architecture Pattern for Content Driven Applications

In this model, the ECM platform exposes services such as workfow, authentication and access control and auditing via one or more interfaces that can be used to build custom content applications or integrate with existing packaged and enterprise applications. In addition, the content platform also provides direct access to stored content via standards-based interfaces (repository services). The content platform can be used to build content-enabled applications that leverage either the content directly or the set of high-level services provided by the content platform. In this model, a user interface layer offers frameworks to expose its services to different user interface technologies. These frameworks can be leveraged to create custom interfaces from the platform that adapt to the organizational context, making user adoption smoother and reducing the user learning curve. A platform should be architected in a modular and fexible manner. It should expose an entire framework for use by developers, and not simply a content repository. Many ECM tools tend to be architected around the content repository only, providing no additional layers. This is a more traditional approach, inherited from the client-server era.

Page 16/40

Taking a Platform Approach to Building Content Centric Applications

A platform should also provide a comprehensive set of services, from low-level directory services to high level user interface services. This is the design of a platform that supports integration. It is designed to be extended and assembled by developers making solutions from the platform. Whether this model is implemented or an alternate ECM design strategy, a componentized, platform centric approach is the key to delivering truly fexible ECM. ECM evaluations and adoption discussions should move away from specific applications and functional implementations that assume requirements and toward one of content frameworks that can be easily customized and extended at the repository, platform and user interface level to work in the manner that is most appropriate to meet organizational needs.

Providing Modularity and Extensibility


No vendor can anticipate every use case that must be supported for managing enterprise content. New content types, standards and business models are constantly being developed; therefore, it is important to select an ECM platform that is architected for interoperability, customization and extension not something all vendors support. Lack of extensibility can have a direct impact on business capabilities. Over half of businesses indicate that lack of ECM tool support for their requirements is restricting their ECM adoption (Miles, 2011). The chart below illustrates some of the reasons supplied:

Figure 9: Reasons for Inability to Meet ECM Vision

A well-designed ECM platform will support extensibility and customization in a manner that is predictable, sustainable and affordable. Lets explore what this means.

Page 17/40

Taking a Platform Approach to Building Content Centric Applications

At a minimum, a well-designed content platform should be modular, component oriented and deliver functionality as a set of independent, decoupled features (services) with few dependencies between the components or to the technical environment. This design allows architects to choose the precise set of features and services necessary to meet project requirements. In addition, the platform should have an exposed API that can be used to access platform services without hacking, engaging specialty vendor resources or purchasing add-on products. Other platform features to support a sustainable model for building ECM applications include:

Testability: The platform should support testing extensions/customizations without being overly cumbersome. Ideally, the platform should easily integrate with a testing platform and allow continuous integration so that the functional and non-functional (e.g. performance) aspects of customizations/extensions can be verified. Solutions such as the Hudson and Jenkins continuous integration servers have grown more popular, and ideally an ECM platform should enable teams to leverage these tools.

Multiple API Strategies: An extensible ECM platform should expose multiple application programming interfaces (API) to allow the project needs to dictate the integration strategy. Ideally, the platform should provide multiple strategies such as native language (e.g. Java API), REST, SOAP, or standards-based interfaces for accessing the underlying ECM features

Support for standard languages such as Java, PHP or others as opposed to proprietary, vendor-specific languages. Some vendors may elect to implement support for recently introduced hot languages to generate interest in their products. Architects should carefully evaluate the value of the languages supported for factors such as adoption of the language, size of the developer community, the intrinsic qualities of the language and the staffs ability to support applications written in the language.

Consistent internal developer and client API: A consistent and supported mechanism for extension by internal (vendor) development and external developers, which enables customer extensions to look and function extactly like native vendor features. Vendors should support this mechanism beyond a single release and have an upgrade path that makes it possible to benefit from new releases without jettisoning their investment in customization and extensions development.

Page 18/40

Taking a Platform Approach to Building Content Centric Applications

Deployment: The ECM platform should support multiple deployment strategies, from simplistic single server to high-availability active/active and disaster recovery, from on premise to cloud-based. It should support complex deployment configurations designed for application validation (e.g. test to staging to production). In addition, the platform should allow deployment of customizations and extensions in a predictable and controlled way across all environments without impacting core platform functionality.

Performance Benchmarking: The platform should have regular benchmark data published and allow teams in charge of implementation to define their own performance tests based on their specific use cases and application needs.

Supporting More Than Just the Server Side


Frequently, developers, architects and project managers evaluating enterprise applications focus on the server side features of the architecture. They examine how business data persistence is implemented, how business logic is designed and what APIs are available for integration. However, client side features are just as important as the server side. When evaluating an ECM platform, it is important to consider more than just the core capabilities encompassed in server-based components. Architects should also ensure that the platform does not impose excessive restrictions on the user interface the end user will leverage to access the application content delivery and/or the content delivery of the content itself. ECM platforms should easily support multi-channel content delivery and interaction. This capability is growing even more critical as businesses increasingly embrace mobile devices, tablets and other tools in addition to browser and rich-client applications that run on P.Cs. Ideally, the platform will provide or allow integration with one or more presentation frameworks to support rapid application development:

A range of different web user interface frameworks for different interaction use cases (e.g. JSF, GWT, basic web templating, etc.) to ensure all kinds of web applications, including mobile and tablet based user interfaces, can be served in the most appropriate manner.

RIA (Rich Internet Applications) frameworks supporting Flex and related middleware such as Adobe Life Cycle or Granite DS, to ease the development of these interfaces.

Silent Applications for scripting and batch processing purposes.


Page 19/40

Taking a Platform Approach to Building Content Centric Applications

Desktop applications Thick mobile applications, supporting major technology such as Android and iOS, and providing dedicated SDKs to wrap the platform services and APIs.

Figure 10: Multi-Channel Content Delivery

Running Anywhere, Including the Cloud


Traditional enterprise software was designed to run on premise, and still today, a large share of ECM solutions are running on premise, managed by internal IT operations. In this scenario, it is important to leverage standard middleware. For example, in terms of Java technology, it should be possible to install the entire solution on a standard Java Application Servers such as the lean Apache Tomcat servlet engine, JBoss application servers or other standard infrastructure without requesting additional specialized components to meet the requirements of the ECM or its supporting components. The same considerations are important regarding the underlying database. Release where you want and how you want should be the motto. This enables companies to achieve better ROI by allowing them to share and leverage their existing investments in a single uniform stack. Traditional solutions and platforms often fail in this area. Many require specific setups, specific systems and in the end, almost dedicated maintenance and operational processes that result in additional costs for organizations. Beyond traditional on-premise environments, cloud computing has brought a large range of opportunities and promises. Cloud computing has democratized technology for many organizations. Instead of hiring specialized staff and making large infrastructure and software investments, organizations can obtain the same capabilities for a low start-up fee and a monthly or usage-based subscription fee.

Page 20/40

Taking a Platform Approach to Building Content Centric Applications

Cloud-based platforms allow architects to design sophisticated, reliable, and highly available enterprise content solutions without concern for:

Installation dependencies Computing storage capacities Upgrade paths

Software configurations Hardware investments Future scalability

that could constrain architecture and design decisions. Cloud computing is usually segmented into the following layers:

Infrastructure-as-a-Service (IaaS): IaaS is the lowest level of abstraction in the cloud technology stack. IaaS provides operating system support, storage and processing. Vendors in this sector include Windows Azure and Amazon EC2.

Platform-as-a-Service (PaaS): PaaS is essentially the middleware of the cloud. It is more abstract than the IaaS layer and provides components, an environment and frameworks for building higher-level applications. Vendors in this space include Heroku and CloudBees.

Software-as-a-Service (SaaS): SaaS is usually the highest level of the cloud stack and includes complete application solutions designed to be leveraged by end users such as web mail and Google Apps.

Forrester Research illustrates the cloud taxonomy as:

Page 21/40

Taking a Platform Approach to Building Content Centric Applications

Figure 11: Cloud Computing Taxonomy

Although SaaS is currently the most prolific use for cloud computing, PaaS adoption is growing; it is estimated that the market will grow to 11.91 billions $ in the next decade (Reid & Kisker, 2011), driven by organizations seeking to reduce technology costs while simultaneously improving services. ECM technology, like almost every other technology, has been impacted by cloud computing. However, it should not be assumed that ECM solutions can seamlessly transition to the cloud. Many ECM tools have a number of characteristics that make utilization in a cloud difficult, if not impossible. For example, many ECM vendors have built their solutions through acquisition or independent product development cycles that dont share a common architecture and have not (and may never) standardize environmental requirements, resulting in a tool with a dizzying number of external dependencies that cannot be supported in most standardized cloud environments. The first thoughts of ECM in the cloud may point to SaaS. While this is a valid option, the reality is that an ECM platform must enable use of all layers of the cloud stack:

IaaS: Allow organizations that are already taking advantage of hosted infrastructure to continue to use it without requiring specialized environment configurations that make cloud hosting impractical.
Page 22/40

Taking a Platform Approach to Building Content Centric Applications

PaaS: Leverage the fantastic promises of the approach, as its all about delivering frameworks and components that can be customized, but abstracting from the complexity of the lower infrastructure level a very good match for the modern ECM platform, as depicted before.

SaaS: A significant portion of users of the ECM platform will deliver their applications in this manner, asking for all the technical requirements that it im plies:

Elastic resource allocation Multi-tenancy Security and privacy Monitoring of large scale implementations.

Beyond allowing all three approaches to cloud-computing, a good technical platform should make it easy to move from one mode to another, and also to switch between deployment options without significant effort, high cost or lengthy time to market. When considering a new ECM technology, it is important to consider more than just a supports the cloud check-box on an RFP. Cloud support is not a simple YES/NO question; cloud requirements and capabilities vary and should be examined in detail. It is not sufficient to rely on the shiny Cloud based marketing collateral.

Modern Development: Agile and Soon in the Cloud


The new requirements of ECM mean that out of the box solutions are no longer sufficient. Content-driven applications have a level of uniqueness that requires most organizations to set up a development team to configure, develop, maintain and deploy the solution. While the complexity and cost of this might be a concern, using modern software methodologies, tooling and a well-designed software framework can dramatically minimize the delivery effort. A set of best practices can ensure higher quality solutions with a lower cost of implementation than traditional software delivery approaches:

Adopt Agile and iterative development practices. Embrace the release early, release often approach. These practices have been shown to reduce delivery risk compared to traditional predictive project management practices.

Implement continuous integration. Building at every change ensures that changes in the code base that have a negative impact are identified early, before they can cause additional issues.
Page 23/40

Taking a Platform Approach to Building Content Centric Applications

Implement automatic testing. This reduces the time, effort and cost of testing and ensures that a full regression suite is always available to confirm the validity of software changes.

Use modern tools and techniques for source control (e.g. Git) that provide developers with more efficiency than traditional tools that lock entire files while a single developer makes changes. This newer breed of source control tools also enables truly distributed development something that was challenging and expensive with earlier solutions.

Implement continuous and automatic performance testing/benchmarking. This establishes baselines for the solution so that the team can easily identify any changes that substantially impact performance.

Implement continuous deployment. Continuous deployment automates the deployment process and reduces the time required to perform tasks and the risk of missing critical steps.

IaaS, SaaS and PaaS are now almost well-established areas for the cloud, but an additional area is emerging development in the cloud. Cloud-based development rounds out the cloud-computing environment, allowing organizations to not only use (SaaS), assemble (PaaS) and run (IaaS), but actually build software remotely. In the current environment of everything as a service, it isnt a stretch to assert that development as a service will be the next frontier of the cloud to experience growth. Development in the cloud has many of the same benefits as other cloud-based offerings, such as lower acquisition cost, faster adoption, simpler setup and configuration and reduced management and maintenance effort. A number of cloudbased IDEs have been recently introduced, such as Eclipses Orion, Nuxeo Studio for the Nuxeo Platform and the popular Salesforce Force.com which provides solution designers a high-level abstraction from the actual source code. However, development in the cloud isnt just about the integrated development environment (IDE). To be truly holistic, development-as-a-service must support the entire develop-to-deploy lifecycle, which includes:

Code creation Compilation Source control

Continuous Integration Automated Development Testing Deployment to multiple deployment targets

This model is illustrated below and is already being offered by products such as VMWares Code2Cloud and CloudBees Dev@Cloud. An ideal ECM platform must embrace this development model, not provide barriers to adoption, like many tools built with legacy architectures.
Page 24/40

Taking a Platform Approach to Building Content Centric Applications

Figure 12: Development as a Service

Development-as-a-service is still in its earliest stages; a lot of evolutions must occur before the full development cycle is supported in the cloud. However, there is already real value in adopting this new approach toward development, when you can combine and integrate a cloud-based development environment with an onpremise development infrastructure, such as the continuous integration chain and the deployment process.

Page 25/40

Taking a Platform Approach to Building Content Centric Applications

Standards Matter, but Don't Be Blind


Why Standards?
Non-technical users really dont care about which standards exist and which are emerging. They care that platforms play well together; they want interoperability. They want solutions that can communicate with each other without excessive effort and cost. They want to be able to move content between platforms if a new tool is selected. It could be said that standards in the ECM space are more about avoiding content lock-in than vendor lock-in. Standards provide a set of guidelines and mechanisms for interacting with a technology. Adoption of standards has a number of benefits, with the most frequently cited being interoperability. No organization wants to be tied to a single vendor or product option for implementing a technology solution no matter how well the vendors solution functions or the vendor provides service. Standards adoption has a number of additional benefits such as:

Lower costs

the

technology

adoption

Ability to create composite interfaces that are tailored to the needs of specific job roles mashability

Increased development consistency, simplicity and predictability


Improved application portability Enable faster time to market because it is easier to purchase off the shelf components and applications that can integrate and provide features for the solution

Improved code reuse Reduced cost, time and effort to transition solutions between vendors and

Reduced focus on commodity and infrastructure

Organizations should understand which standards provide the benefits that are most important for their needs when adopting an ECM solution.

Existing and Emerging Standards


They say the good thing about standards is that there are so many to choose. This may be humorous, but seasoned technologists know that, unfortunately, the quip has some truth the world of enterprise content management is no different. There is no single standard that is more important than all others. There is no universal definition of what is most valuable; it always varies by the unique technical and business needs of the organization.
Page 26/40

Taking a Platform Approach to Building Content Centric Applications

Not every ECM vendor and product will support every standard. However, it is important to determine the standards that are most important for future business and technical strategy and ensure they are supported by the potential ECM platform. For example, an organization concerned with the publishing industry might have a strong interest in adopting the NewsML standard, whereas an organization with more generic and horizontal coverage might have more interest in supporting Content Management Interoperability Standard. Standards impact a number of areas in the ECM market and it is important that these be understood.

Interoperability
As noted above, interoperability is one of the primary drivers for standards adoption. Interoperability takes many forms. In ECM, interoperability is primarily targeted at providing a standardized way for content-based applications to share their content assets. The main standards related to interoperability for ECM solutions include Content Management Interoperability Services (CMIS) and Java Content Repository (JCR). CMIS has grown slightly more popular than JCR due to the technology agnostic approach taken by the standard. CMIS is one of the most recent standards in the content management space; it was specifically designed to support interoperability among ECM solutions. Officially adopted in May 2010, managed by OASIS, and supported by a large number of vendors, the standard defines a vendor agnostic domain model, a protocol abstraction and a set of bindings that allow the sharing and accessing content across multiple ECM tools. Key services provided by CMIS include:

Repository Services: Enable information discovery of the content repository and the object types defined for the repository Navigation Services: Supports navigating the folder hierarchy in a CMIS repository Object Services: Enables management of repository objects (Create, Retrieve, Update, Delete) Discovery Services: To search for objects in a repository Versioning Services: To manage the lifecycle of repository items.

A number of vendors have dedicated themselves to moving the CMIS standard forward. An example of this is are the Apache Foundation CMIS protocol imple-

Page 27/40

Taking a Platform Approach to Building Content Centric Applications

mentations, developed within the Apache Chemistry project, with support of developers from various content management vendors, such as Adobe and Nuxeo. Another notable effort is the contribution by Nuxeo of its content repository code to Eclipse, demonstrating their willingness to work on a reference implementation of CMIS in a content repository. The project, originally called Eclipse Enterprise Content Repository, has been officially approved by Eclipse and was rebranded Apricot." It relies on the Apache Chemistry project. Other official or de facto interoperability standards that architects may want to explore because they could impact the overall ECM solution interoperability include:

Windows SharePoint Services (WSS): Not actually a standard, but a set of services for accessing content in Microsofts SharePoint products. Web-based Distributed Authoring and Versioning (WebDAV): a HTTP-based standard that facilitates collaboration between users in editing and managing documents and files stored on web servers.

Java Content Repository (JCR): a low-level Java specification, although adapters have been created for other languages, defined under the Java Community Process.

Common Internet File System (CIFS): a protocol that allows applications to make requests for files and services on remote computers via the Internet.

Metadata
Metadata augments content stored by ECM solutions with additional details such as taxonomy, relationships, security attributes, usage characteristics, auditing information, and any number of additional attributes. How important is metadata to an ECM solution? It is critical. Without metadata, it becomes almost impossible to manage, maintain control and find content in an ECM tool. There are a number of standards that impact metadata creation and management within ECM solutions such as XML, Dublin Core and semantic technology related standards (e.g. RDF). Support for some of these standards, like Dublin Core, is important, but not sufficient for solving all ECM metadata needs. Keep in mind that many standards that address taxonomies and semantic technologies are still maturing, so adopting a platform with the fexibility to support the standard in the future will be key. The most important standard, although it is a much lower level standard than many of the others discussed in this white paper, is without a doubt XML. The Extensible Markup Language (XML) is a standard managed by the World Wide Web Consortium (W3C). The human and machine-readable text-based markup lan-

Page 28/40

Taking a Platform Approach to Building Content Centric Applications

guage, similar to HTML, is now familiar to most technologists. Unlike HTML, XML does not have a single defined set of tags and attributes; it allows adopters to define their own elements or utilize a vocabulary defined by another party. XML is a core technology for defining structured content and data, and of course, metadata; it is the foundation for a number of other standards like Dublin Core and XMP. XML has been such a core technology that almost all vendors will promise support. However, like with computing, architects must examine what support means. Not all vendors fully support XML equally for integration and transformation, storage and publishing. Architects should explore in detail the XML capabilities of an ECM platform when it comes to managing, storing and processing XMLbased data. Another domain that is mentioned more frequently related to metadata is semantic technology. Semantic technology allows association of meaning or context to digital content not just meaning for people but for computers as well. If computers can learn the meaning behind content, they can learn what users are interested in and provide assistance with common tasks, such as search or augmenting data with existing details based on known relationships. Without semantic technology, content is typically just links between structured and unstructured resources. Semantic technology provides context to these resources and their relationships so that machines can recognize entities such as people, places, events, organizations, etc. within the content. Support for semantic technologies is limited in the majority of ECM platforms, although some forward thinking vendors are beginning to incorporate the technology. If semantic technology lives up to its promises, the enhancements it provides for metadata, categorization and content enrichment will substantially improve ECM technology. This can be seen in research and open source projects like the Interactive Knowledge Stack (IKS) project. IKS is an European Union-funded research project involving vendors like Nuxeo and Adobe, focused on building an open and fexible technology platform for semantically enhanced content management. IKS has resulted in several Open Source projects, such as the Apache Stanbol project, which provides a connection between Semantic Web data sources and traditional content management solutions. The growth of Public Open Data (as illustrated by the W3C SWEO Linking Open Data community project in figure 13) is clearly advocating for this kind of initiative, bridging traditional ECM and Semantic Web technology. The use of a modular ECM platform will no doubt make this easier!
Page 29/40

Taking a Platform Approach to Building Content Centric Applications

Figure 13: Linked Open Data

Other Non-Content Related Standards That Matter


Technology and development languages are evolving and there is a range of technical standards that are must-have and high value for a modern content development platform. OpenSocial is one of them. OpenSocial was originally created as an open specification for accessing and sharing user profile, relationship and activity data across social networking sites, instead of working with the proprietary interfaces each site offered. However, its adoption has now grown beyond social networks into the enterprise, to provide a general-purpose web application integration technology. It is especially practical for creating dashboards where end users can find information from different applications in one place. OpenSocial is comprised of two high-level concepts: gadgets and APIs. Gadgets are small, pluggable, HTML/JavaScript based components with a basic lifecycle that run in containers responsible for providing the gadget with the rendering environment and JavaScript APIs. The core OpenSocial APIs provide capabilities for managing people, activities and data and are exposed via JavaScript and REST. OpenSocial gadgets can also be used to provide a simple and light integration

Page 30/40

Taking a Platform Approach to Building Content Centric Applications

solution between applications, and they can access any piece of information in the enterprise that is exposed via REST. In addition to the existing capabilities of OpenSocial, there are efforts underway to provide tighter integration between OpenSocial and CMIS; the changes are targeted for version 2.0 of the OpenSocial specification. There are a number of additional standards not directly related to content that are important for ECM development, such as OAuth, REST and LDAP. Each of these technologies can play an important role in solution delivery. OAuth is an open protocol standard for delegated authentication. It provides a standard way for developers to offer their services via an API without forcing their users to expose their credentials. From a user perspective, the standard allows a user (resource owner) to grant access to a protected resource from one application (service provider) to another application (service consumer). OAuth is a form of delegated authentication, which enables a single identity to be shared across multiple sites without sharing credentials. In addition to providing a standard way to grant access between applications, OAuth also provides a mechanism to restrict the scope and lifetime of a service consumers authentication. This is a much more secure strategy than sharing credentials and granting unlimited access to a third party. It is also convenient for users, who are freed from creating more login credentials. Prior to OAuth, there were a number of other proprietary internet authentication protocols. Unlike many of these earlier protocols, OAuth supports use by non-web based applications. Given that enterprise content is core to many business processes, it is important that a well-designed platform provide a standard way to control access to its services. Instead of reinventing the wheel, vendors like Nuxeo are integrating OAuth in their platforms to control which services and data are shared between applications. Lightweight Directory Access Protocol (LDAP) is another protocol standard architects should consider. The LDAP protocol allows applications to access information stored in an LDAP server. LDAP servers can store any type of information, but they are most frequently used to store contact information, security credentials and group information. The majority of organizations that support secured access to resources or email store user information in an LDAP directory. LDAP servers are so common, ECM platforms should support integration, at least at a read level, with LDAP servers so that user information does not have to be replicated in multiple locations.
Page 31/40

Taking a Platform Approach to Building Content Centric Applications

Representational State Transfer (REST) is an architectural style based on how the web works, not a standard for application integration. RESTful interactions involve two components - clients and servers. Clients make stateless requests to servers; servers receive requests, process them and return a response. Requests and responses transfer representations of resources. A resource is any object at an address (URI) that can provide information or have an operation executed against it. Given the growing popularity of RESTful style services, architects that have embraced this style of integration should carefully examine which services a platform exposes via REST. Some vendors indicate they support REST, but have very limited features exposed. And finally, at a lower level, standards like OSGi are concretely delivering software modularity and extensibility. Technology architects who are still associating the Java technology to the heavy and hard to extend early versions of J2EE should definitely consider exploring OSGi. It provides the Java stack with a new approach to modularity and extensibility. Software like the Eclipse Equinox project, the Spring Java development framework and Nuxeos platform extension point system are leading the way, and demonstrating the value of modularity, extensibility and component-driven software architecture.

Page 32/40

Taking a Platform Approach to Building Content Centric Applications

The Business Case for Adopting a Platform Approach to Content Applications


Most architects know, or at least suspect, that implementing a platform centric approach to building content-driven applications has some organizational value. Ad-hoc processes, multiple tools and inconsistent practices are rarely in the best interest of any enterprise. However, just trust me is typically not a sufficient justification for an executive to champion changing business processes, introducing or changing staffing and/or investing in new technology platforms. It is critical that architects define or contribute to the definition of a business case. What is a business case? A business case justifies the rationale for architectural recommendations in a cohesive and compelling manner. A well-defined business case should include qualitative reasons, and if possible a quantitative justification, or return on investment (ROI) for undertaking a project not just the technical perspective. The following sections present a sample model for calculating ROI and general (qualitative) benefits of using a platform to manage enterprise content.

Qualitative Reasons
Implementing a platform approach to building content driven applications has a number of benefits such as:

Reduced training needs for technical resources, since a single approach is in use throughout the enterprise. Architects, developers and designers can learn the strengths, weaknesses, features, constraints and interfaces once and build numerous applications. This allows the resources to focus on delivering high-value features instead of learning vendor tools.

Improved content reuse and consistency Lower costs due to a reduced number of tools required to support the requisite use cases Reduced time to market, since a consistent tool is being used to deliver multiple applications.

Keep in mind these are only generalized benefits. An effort should be made to identify the benefits specific to the organization adopting the ECM platform.

Page 33/40

Taking a Platform Approach to Building Content Centric Applications

Calculating ROI
Adopting an enterprise content management (ECM) platform may mean significant organizational investment. And, like any investment, it is important to understand when the acquisition will pay for itself ROI. A number of techniques can be used for calculating the return on investment (ROI), however, a simplistic approach involves identifying the benefit of implementing the new solution, quantifying each benefit and deducting the cost. The categories below include sample benefit and cost areas. They will vary for each organization/project.

Figure 14: Benefit and Cost Categories

In addition to identifying costs and benefits, you may want to segment one-time items from recurring items (e.g. annually) to depict initial ROI with reoccurring ROI or project ROI within a time-frame.

Sample ROI Calculation


The following tables depict an organizations ROI estimates for delivering three applications using a single purpose application to deliver a business solution versus leveraging a content platform. In this example, the applications can all be classified as content-centric applications.

Project A is a generic Document Management project to serve the organization's requirements for managing internal documents. Project B is a content application that is more process oriented; an implementation of an extranet application to manage customer product returns. It must integrate with the ERP system.

Page 34/40

Taking a Platform Approach to Building Content Centric Applications

Project C is a Digital Asset Management application for the Marketing andCommunications team.

This example assumes the content platform is open source, delivered under a subscription model. Because of this, most of the software cost for the content platform approach are operational, as opposed to large upfront CAPEX costs like the traditional packaged Document Management and DAM solutions. Do not assume open source means free. It does not. Open source has a cost, its just not an acquisition cost; the cost of open source is mostly in reoccurring maintenance and support. This fictional model can be used as a starting point for your own ROI analysis of adopting an ECM platform. Keep in mind that to assess the true value of adopting an ECM platform, you must look beyond a single project and examine the impact over time. Project A: Internal Document Management Specific ap- With proach, Content buying soft- Platform ware from a approach DM provider Project B: Customer Return Processing Specific approach, developing the application from scratch, using a development framework 80,000 Leveraging the Content Platform used for project A Project C: MarCom Dept Digital Asset Management Specific Leverapproach, aging the buying an Content out-of-the- Platform box DAM used for solution project A

CAPEX Consulting (advisory, customization and integration) Internal (process definition, training, project management) Software acquisition Infrastructure setup TOTAL OPEX Year 1

65,000

65,000

60,000

5,000

5,000

34,000

34,000

12,000

24,000

5,000

5,000

45,000 15,000 159,000 17,600

0 15,000 114,000 37,600

3,000 15,000 110,000 9,500

0 2,000 86,000 6,000

60,000 14,000 84,000 15,000

0 0 10,000 0

Page 35/40

Taking a Platform Approach to Building Content Centric Applications

Ongoing project cost (enhancements, project management) Software maintenance & support Infrastructure Year 2 Ongoing project cost Software maintenance & support Infrastructure Year 3 Ongoing project cost Software maintenance & support Infrastructure TCO (on 3 years only)

24,000

16,000

18,000

15,000

10,000

30,000

500

5,000

10,000

7,600 35,600 18,000 10,000

7,600 49,600 12,000 30,000

9,000 22,500 13,000 500

1,000 15,000 9,000 5,000

5,000 15,000 0 10,000

0 0 0 0

7,600 45,600 28,000 10,000

7,600 55,600 18,000 30,000

9,000 33,500 21,000 500

1,000 23,000 17,000 5,000

5,000 15,000 0 10,000

0 0 0 0

7,600 257,800

7,600 256,800

12,000 175,500

1,000 130,000

5,000 129,000

0 10,000

TOTAL Cost of Ownership, all projects Cost Reduction

Specific approach 562,300 USD

Platform approach 396,800 USD 165,500 USD

Table 1: Example ROI Calculation

Although this model is purely fictional, it illustrates the value of adopting a content platform instead of leveraging single-purpose applications or developing custom solutions. Notice that consulting, infrastructure and software costs for the point solutions remain high over each application implementation, while these costs decrease or are eliminated for subsequent implementations using the ECM platform.

Page 36/40

Taking a Platform Approach to Building Content Centric Applications

Nuxeo's Enterprise Platform: a Modern ECM Platform


Open source ECM vendor Nuxeo has taken a platform centric approach to delivering content management capabilities (Fermigier, Delprat, Grisel, Guillaume, 2010.). Unlike traditional ECM tools, which provide a monolithic application for managing content, Nuxeo provides a componentized solution, organized in logical layers, that allows applications to be assembled. The diagram below presents a highlevel view of the Nuxeo ECM technology.

Figure 15: Nuxeo Architecture

Each layer of the modular architecture builds upon the services provided by the layer below. This model allows an enormous amount of technical and business fexibility to create content-driven applications with the specific features required to support the business process. Nuxeos architecture supports a number of use cases:

Customize the pre-built applications (Document Management, Digital Asset Management, Case Management Framework) Customized Nuxeo deployment

Page 37/40

Taking a Platform Approach to Building Content Centric Applications

Application integration with the Nuxeo platform

Figure 16: Customizing the Nuxeo Platform

How is this possible from a single platform? The lowest level of the Nuxeo architecture is the runtime. It is a container for other Nuxeo components and services similar to how Java provides a runtime container or .Net has a common language runtime. On top of the runtime is a lightweight CMIS compliant repository that can be embedded into other applications or used to create a customized solution. Each layer adds additional capabilities that organizations can optionally elect to implement. In addition to a modular architecture, Nuxeo provides an extension point model that can be used to:

configure services and components extend existing platform services

as well as pre-packaged ECM applications that can be used as is or customized to meet enterprise needs. Nuxeos architectural strategy is one example of a modern ECM platform offering all of the value and benefits described in this white paper. This is in contrast with strategies followed by vendors that offer a suite of tools or a single-purpose application.

Page 38/40

Taking a Platform Approach to Building Content Centric Applications

Conclusion
After reading this white paper, you should now understand:

What is meant by the terms enterprise content and enterprise content management. How enterprise content and organizational needs for managing that content are evolving. Why it is important to have processes and tools that support data of increasingly diverse formats, complexity and size. The key standards that support ECM technology. Technologies and standards for supporting enterprise content management (ECM) in a process-centric manner. How to create a business case for adopting a platform for building content-driven tools. Why it is necessary to adopt an ECM platform that doesnt just allow delivery of a single pre-defined use case, but instead offers IT teams an efficient and elegant way to build, customize and maintain solutions that can evolve.

What You Can Expect When Adopting ECM


No matter what strategy is pursued to support enterprise content needs, it should not be expected that all enterprise processes and issues can be addressed in a single project. Initially, organizations should select one or more use cases, work with and understand the platform and use the lessons learned in the next implementation. These quick wins are important for evangelism and improving user adoption as well as learning for technical resources. In addition, organizations should expect that content, standards and business needs will change over time. They will need to regularly re-evaluate their ECM platform to determine if it is still the best fit for organizational needs.

Page 39/40

Taking a Platform Approach to Building Content Centric Applications

Works Cited
Association for Information and Image Management (AIIM), 2011. What Is ECM? Retrieved 06 10, 2011, from AIIM Website: http://www.aiim.org/What-is-ECMEnterprise-Content-Management. Miles, 2011. State of the ECM Industry 2011. AIIM. Manyika, et al., 2011. Big Data: The Next Frontier for Innovation, Competition and Productivity. McKinsey Global Institute. Chute, Manfrediz, Minton, Reinsel, Schlichting, & Toncheva, 2008. An Updated Forecast of Worldwide Information Growth Through 2011. IDC. Ried & Kisker, 2011. Sizing the Cloud. Forrester Research. Fermigier, Delprat, Grisel, Guillaume, 2010. Lessons learned developing the Nuxeo EP open source, component-based, ECM platform. Proceedings of the 2010 ICSSEA Conference.

Additional Resources
For additional information on items listed in the white paper, you can review the resources below. Oauth: http://www.oauth.net/ Open Social: http://www.opensocial.org/ W3C SWEO Linking Open Data: http://www.w3.org/wiki/SweoIG/TaskForces/CommunityProjects/LinkingOpenData OSGi: http://www.osgi.org/ Jenkins/Hudson: http://java.net/projects/hudson/ Apache Chemistry: http://chemistry.apache.org/ Apache Stanbol: http://incubator.apache.org/stanbol/ Interactive Knowledge Stack: http://www.iks-project.eu/

Page 40/40

About Nuxeo
Nuxeo delivers an open source document management application built with a complete, modular and extensible open source platform for enterprise content management. Other packaged applications built with the platform provide solutions for digital asset management and case management. Designed by developers for developers, the Nuxeo Enterprise Platform o ers modern technologies, unmatched modularity, a powerful plug-in model and extensive packaging capabilities. Using a fully open source development model, Nuxeo provides a subscription program with software maintenance, technical support and customization tools. Nuxeo ECM is trusted by 1000+ organizations across 145 countries, including Cengage Learning, Pearson Education, AFP News Agency, EllisDon and Jeppesen, a Boeing Company. Nuxeo is dual-headquartered in North America (Boston) and Western Europe (Paris).
More information is available at www.nuxeo.com. Or contact us: contact@nuxeo.com

Copyright 2011 - 2012 Nuxeo. All Rights Reserved.

www.nuxeo.com