• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
OSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
 

OSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools

on

  • 2,965 views

 

Statistics

Views

Total Views
2,965
Views on SlideShare
2,724
Embed Views
241

Actions

Likes
3
Downloads
45
Comments
0

3 Embeds 241

http://open-services.net 237
http://localhost:8888 3
http://a0.twimg.com 1

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    OSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools OSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools Presentation Transcript

    • Intoduction FLOSS development issues OSLC Interoperability Conclusion OSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParis Wednesday 2011/11/30 ICSSEA 2011Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionQuick IntroductionPlan FLOSS development issues OSLC Standard Interoperability of development toolsOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionQuick IntroductionShort bio Télécom SudParis http://www.telecom-sudparis.eu/ Higher education school in Évry (France), sister of Telecom Paristech, also member of Institut Telecom. Olivier BERGER <olivier.berger@it-sudparis.eu> Research Engineer at TELECOM SudParis, expert on software development forges, and interoperability in the libre software development projects.Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionResearch interestLarge scale bug-tracking Lots of duplicate or related bug reports Not a single place where to monitor bugs OK, launchpad, maybe. . . too much a silo anyway No interoperability of tools Manual work of maintainer / QA (bug triaging, etc.)Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionResearch interestFLOSS distributions ecosystem Source : http ://git.upsilon.cc/r/talks/20110224-evry.gitOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionResearch interestBugtracker interoperability prerequisite No existing standard for bugtracker APIs . . . until OSLC-CM (2009-)Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationQuick introduction to OSLC Open Services for Lifecycle Collaboration : Lifecycle integration inspired by the Web The Open Services for Lifecycle Collaboration (OSLC) community is working to standardize the way that software lifecycle tools can share data (for example, requirements, defects, test cases, plans, or code) with one another. Website : http://open-services.net/ Open Source License Checker / Our Savior Lutheran ChurchOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationShowtime ! (nice IBM propaganda) http://www.youtube.com/watch?v=B2vqL8fujgEOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationOSLC Community Open Community Lead : IBM/Rational Specs elaborated in a Wiki Eclipse Lyo Open Source project : http: //www.eclipse.org/lyo/Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationSpecifications : interoperability «standard» Open Standard patent non-assert covenant signed by all contributors specifications under Creative Commons various domains (ALM, PLM) OSLC-CM (Change Management) More domains, but haven’t participated myself Technology based on the Web’s tech standards : REST, RDF, AJAX, Dublin Core going from the LAN to the Web (>= 2.0, Linked Data) pragmatic approachOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationSpecification effort progress V2 specs finalized for many domainsOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationChange Management Domain OSLC Core http://open-services.net/bin/view/Main/OslcCore OSLC-CM : Change Management (bug trackers, etc.)Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationSemantic + extendable exchange format : RDF Example (XML) <rdf:RDF Example (JSON) xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:foaf="http://xmlns.com/foaf/0.1/" { xmlns:oslc_blog="http://open-services.net/ns/bogus/blogs#"> "prefixes" : { "oslc": "http://open-services.net/ns/core#", <oslc_blog:Entry "rdf" : "http://www.w3.org/1999/02/22-rdf-syntax- rdf:about="http://example.com/blogs/entry/1"> "foaf" : "http://http://xmlns.com/foaf/0.1/", "dcterms" : "http://purl.org/dc/terms/" <dcterms:title>I love trash</dcterms:title> }, <dcterms:modified>2002-10-10T12:00:00-05:00</dcterms:modified> "rdf:type" : { "rdf:resource" : "http://open-service <dcterms:content> "rdf:about" : "http://example.com/blogs/entry/1", Anything dirty or dingy or dusty. "dcterms:title" : "I love trash", Anything ragged or rotten or rusty. "dcterms:modified" : "2002-10-10T12:00:00-05:00", </dcterms:content> "dcterms:content" : "Anything dirty or dingy or dust <dcterms:creator> "dcterms:creator" : { <foaf:Person> "foaf:name" : "Oscar T. Grouch" <foaf:name>Oscar T. Grouch</foaf:name> }, </foaf:Person> } </dcterms:creator> </oslc_blog:Entry> </rdf:RDF>Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationMeta model entities for Web Services (discovery)Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationREST APIs classical REST C,R,U,D operations Create (POST) Retrieve (GET) Update (PUT) Delete (DEL) Integration / interop oriented APIs resource IDs == URLs (RDF, Linked Data) minimal REST APIs + extensions for each product’s features delegated dialogues -> AJAX scenarii resource preview, OAuth etc.Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationExample bugzilla report (through Eclipse Lyo adapter) $ rapper -o turtle http://localhost:8282/bugz/changerequest?id=1 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix dcterms: <http://purl.org/dc/terms/> . @prefix oslc: <http://open-services.net/ns/core#> . @prefix oslc_cm: <http://open-services.net/ns/cm#> . @prefix bugz: <http://www.bugzilla.org/rdf#> . @prefix foaf: <http://http://xmlns.com/foaf/0.1/> . <http://localhost:8282/bugz/changerequest?id=1> oslc_cm:status "NEW" ; dcterms:contributor [ foaf:name "olivier.berger@it-sudparis.eu" ; a foaf:Person ] ; dcterms:created "Fri May 20 17:36:00 CEST 2011" ; dcterms:identifier "1" ; dcterms:modified "Fri May 20 17:36:56 CEST 2011" ; dcterms:title "coin" ; bugz:component "TestComponent" ; bugz:opsys "Linux" ; bugz:platform "PC" ; bugz:priority "P3" ; bugz:product "TestProduct" ; bugz:version "unspecified" ; a oslc_cm:ChangeRequest .Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationService catalog’s operationsOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionOpen Services for Lifecycle CollaborationAJAX Mashups (delegated dialogs)Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionTools integration and interoperabilitySoftware development tools integration issues Lots of different (legacy) systems in respective silos Integrated suites Open Source tools or Proprietary Software alike Software development forges Agile methodologies vs. monolithic suites Traceability Scalability Very poor interoperability Syntactic SemanticOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionTools integration and interoperabilityIntegration with silos Tools are “natively” integrated in isolated suites Ad-hoc interfaces : no standardizationOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionTools integration and interoperabilityNew integration model linked lifecycle data Source : IBM/RationalOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionTools integration and interoperabilityExemple : OSLC Compact preview of FusionForge users Resources linking and preview through standardized mechanism for URIs + AJAX preview http://fusionforge.org/plugins/mediawiki/wiki/fusionforge/index.php/OslcCompactPreviewTooltipsOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionTools integration and interoperabilityGeneric preview through HTTP content-negociation $ curl -H ’Accept: application/x-oslc-compact+xml’ http://fftrunk/users/labbenes <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:oslc="http://open-services.net/ns/core#"> <oslc:Compact rdf:about="https://fftrunk/plugins/oslc/compact/user/labbenes"> <dcterms:title>M. Sabri LABBENE</dcterms:title> <oslc:shortTitle>labbenes</oslc:shortTitle> <oslc:smallPreview> <oslc:Preview> <oslc:document rdf:ressource="https://fftrunk/plugins/oslc/compact/user/labbenes/type/small"/> <oslc:hintWidth>500px</oslc:hintWidth> <oslc:hintHeight>150px</oslc:hintHeight> </oslc:Preview> </oslc:smallPreview> </oslc:Compact> </rdf:RDF> Specs : http://open-services.net/bin/view/Main/OslcCoreUiPreviewOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionTools integration and interoperabilityContinuous integration : FusionForge + JenkinsCI Jenkins (ex Hudson) as OSLC-CM Consumer Can create bug reports in case of failed builds/tests on distant bugtracker We have developped an Open Source plugin for Jenkins (Java, Javascript mashup, OSLC-CM plugin published on GiHub) FusionForge Trackers as OSLC-CM Provider Handles the bug reports DB, and exhibits an OSLC-CM compatible REST API Delegates authentication to consumers on behalf of real forge users, through OAuth We have developed an Open Source plugin (PHP + Zend Framework, published on FusionForge’s SVN)Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionTools integration and interoperabilityDemo : FusionForge + jenkins Demo : http://vimeo.com/23480321Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionTools integration and interoperabilityDeployments ? Proprietary IBM/Rational : Jazz, RTC,. . . Tasktop Sync ... FLOSS FusionForge trackers Bugzilla (through Eclipse Lyo : http ://eclipse.org/lyo/) Hudson/Jenkins Eclipse Mylyn (soon ?) +/- MantisOlivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionPerspectivesMore interoperability in FLOSS tools Push standardization in tools development Eclipse Mylyn support of OSLC (in the FLOSS parts), based on Eclipse Lyo roots ? . . . When ? New opportunities Open Linked Data for direct “mining” of FLOSS projects development process metrics Large scale bug tracking and QA process in the FLOSS ecosystem Qui vivra verra. . .Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools
    • Intoduction FLOSS development issues OSLC Interoperability ConclusionQuestions ?Fin Thanks. More OSLC Tutorial : http ://open-services.net/tutorial/ Micro-blogging : @oberger http://identi.ca/oberger/ Email : mailto:olivier.berger@it-sudparis.eu Blog : http://www-public.it-sudparis.eu/~berger_o/weblog/ Copyright 2011 Institut Telecom + Olivier Berger License of this presentation : Creative Commons Share Alike Some illustrations borrowed from the OSLC specificationss (licence Creative Commons)Olivier Berger <olivier.berger@it-sudparis.eu>, Télécom SudParisOSLC (Open Services for Lifecycle Collaboration): open standard for interoperability of open source ALM tools