The Eclipse Lyo project is a proposed open source project under the Eclipse Technology Container Project.
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the Eclipse community. Please send all feedback to the Eclipse Proposals Forum.
The Eclipse Lyo project is focused on providing an SDK to enable adoption of OSLC specifications. OSLC (Open Services for Lifecycle Collaboration: http://open-services.net) is an open community dedicated to reducing barriers for lifecycle tool integration. The community authors specifications for exposing lifecycle artifacts through uniform (REST) interfaces and relying on Internet and Linked Data standards. OSLC's scope started with Application Lifecycle Management (ALM) and is expanding to include integrations across Product Lifecycle Management (PLM) and IT Service Management (ISM/DevOps), The proposed Eclipse Lyo project is designed to be a companion to the continuing specification efforts of the OSLC community. Its main purpose is to expand adoption of OSLC specifications and to enable the Eclipse community to easily build OSLC compliant tools.
The OSLC community has collected initial components for an OSLC SDK in an open source project, the OSLC Tools Project, hosted on SourceForge.net. The OSLC Tools codebase includes reference implementations for some OSLC specifications, a test suite for validating OSLC provider implementations, and a set of examples and code snippets that aid in OSLC client and provider implementations. Contributions were made under an Apache-like contributor license agreement, and the content is currently distributed under the terms of the Apache Software License 2.0. The project has four committers. The intention of this proposal is to move the OSLC Tools Project, in its entirety, to Eclipse and to evolve the SDK in support of OSLC specifications.
The focus of the proposed Eclipse Lyo project is to provide an SDK -- including candidate reference implementations, test suites, and code libraries (including samples and examples) -- for enabling OSLC implementations by tools in the ALM, PLM, and IT Service Management across different languages and platforms.
Out of Scope
Eclipse Lyo is not a project tasked with creating OSLC compliant tools. Instead, it is a project that will create an SDK for enabling others to create OSLC-based tool integrations. Further, the project is not for general purpose linked data technologies, though it will certainly rely on other OSS projects for these capabilities (e.g. RDF triple store).
The Eclipse Foundation and open source community have a well-established governance model and set of IP policies. Furthermore, its broad industry membership and its focus on development tools have affinity with the OSLC community scope and can help to further the Eclipse Lyo project goals.
The proposed Eclipse Lyo project complements other Eclipse projects like Mylyn and Orion. Mylyn is already aligned with OSLC and is creating client side implementations of OSLC specifications for bringing tasks into the developer IDE. Orion, with its web architecture and tooling, also has potential affinities as a client of OSLC implementations and may find benefit from the Eclipse Lyo project and OSLC SDK.
The initial contribution to the proposed Eclipse Lyo project will consist of the entire codebase that is currently part of the OSLC Tools Project at SourceForge. This includes:
- Reference Implementations. Including Java EE based web applications that implement the OSLC lifecycle domain specifications for Change and Architecture Management. The main OSS dependencies are Geronimo Servlet API, Sesame/OpenRDF and the ANTLR parser generator.
- Provider Test Suites. Java-based test suites designed to test implementations of each OSLC lifecycle domain specification. The main OSS dependencies are JUnit, Apache HTTPClient, Jena and OAuth.net libraries.
- Example OSLC resources. Example OSLC resources in RDF/XML and other RDF format for educational and testing purposes.
- Example OSLC provider and client implementations. In addition to the reference implementations, the OSLC Project provides other example OSLC implementations, including a JAX-RS and Apache Wink based client and server.
- Tutorial example code. Educational examples such as the code to support the OSLC Tutorial and Primer.
The current codebase is mostly Java code with dependencies on permissively licensed open source libraries. Moving forward the project will encourage contributions of code, candidate reference implementations, test suites, and examples for other platforms and languages.
The table below lists the current dependencies of the OSLC Tools Project codebase that forms the initial contribution:
Note: in the case of a dual license, we elected to obtain and use the code under the license indicated in bold text
The OSLC Tools Project has not yet done any " releases " of software and so has had no reason to distribute dependent JAR files, but we do expect to create releases and distribute dependent binaries from the Eclipse Lyo project as parts of reference implementations, example bundles, and an SDK.
The Eclipse Lyo project will be dual licensed under the EPL and the BSD (EDL). The proposed initial contributions are currently made available at SourceForge under an Apache 2.0 license. As the proposed Eclipse Lyo project is formed, these contributions will be made under the dual licenses stated above.
The following individuals are proposed as initial committers to the project:
- Steve Speicher, IBM
- Project Lead. Developed the OSLC Provider Test Suites, works on the reference implementations and other examples.
- Olivier Berger, Institut Telecom
- Contributed to design discussions, sample code in PHP format, oversight and OSLC specification effort. Implementer of the OSLC-CM provider for FusionForge.
- Jim Conallen, IBM
- Developed the initial version of the Reference Implementations including an OSLC-AM and OSLC-CM implementation. Implementer of OSLC-AM provider of IBM Rational Rhapsody Design Management
- Sofia Yeung, Oracle
- Contributed to design discussions, oversight and OSLC specification effort. Led OSLC-based integrations work with Oracle Team Productivity Center.
- Robert Elves, Tasktop
- Contributed to OSLC-CM specification and implemented Mylyn and Tasktop OSLC-based integrations.
- Alberto Giammaria, IBM
- Contributed to OSLC-CM specification and implemented the the IBM Tivoli Service Request Manager integration with IBM Rational Team Concert
We welcome additional committers and contributions.
MentorsNew Eclipse projects require a minimum of two mentors from the Architecture Council. You need to identify two mentors before the project is created. The proposal can be posted before this section is filled in (it's a little easier to find a mentor when the proposal itself is public).
The following Architecture Council members will mentor this project:
- Mik Kersten
- Mike Wilson
The following individuals, organisations, companies and projects have expressed interest in this project:
- ARS Computer und Consulting GmbH
- Ascendant Technologies
- Atos Origin
- BSD Group
- General Motors
- Green Hat
- River North Solutions
Initial contribution is anticipated in July.
Changes to this Document
|June 2, 2011||Initial proposal|