Cassiopee Project 2012




Implementing the support of OSLC-CM
                           in Simple Defects
            Cliquez pour modifier le style des sous-titres du
            masque




Stéphanie Ouillon - Mentor : Olivier Berger
Contents


           q    Simple Defects (SD)
           q    SD connectors
           q    Introduction to OSLC-CM
           q    Development goal
           q    Net-OSLC-CM Perl module
           q    OSLC connector in SD
           q    Using and testing
           q    Making-up


Cassiopee 2012          OSLC-CM connector in SD
Specifications




q  Implementing a OSLC-CM adaptator
    for the bugtracker Simple Defects

q  Open Source contribution

q  Publishing content on the web


Base de données Pro

 Cassiopee 2012    OSLC-CM connector in SD
Simple Defects (SD)


                 Simple Defects (SD)
           q    Introduction to OSLC-CM
           q    Development goal
           q    SD connectors
           q    Net-OSLC-CM Perl module
           q    OSLC connector in SD
           q    Using and testing
           q    Making-up

Cassiopee 2012          OSLC-CM connector in SD
Simple Defects : a bugtracker




q  In command ligne

Prophet database




 Cassiopee 2012    OSLC-CM connector in SD
Simple Defects : a bugtracker



               filesystem                   code


    IDE
                                                      Server/storage



                                            bugs




      Web browser


5         Cassiopee 2012    OSLC-CM connector in SD
Simple Defects : a bugtracker



                 filesystem                   code


Terminal + Vim
                                                        Server/storage



                                              bugs
                 filesystem

Terminal + SD




  6        Cassiopee 2012     OSLC-CM connector in SD
Simple Defects : un bugtracker




q  In command ligne

q  Prophet database

https://gitorious.org/prophet/prophet




 Cassiopee 2012    OSLC-CM connector in SD
Prophet



ü  Semi-relationnal

ü  Peer to peer replicated

ü  Disconnected

ü  Versioned

ü  Self-healing conflict resolution

 Cassiopee 2012     OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Demonstration




Cassiopee 2012   OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Introduction to OSLC-CM


                 Simple Defects (SD)
                 Introduction to OSLC-CM
           q    Development goal
           q    SD connectors
           q    Net-OSLC-CM Perl module
           q    OSLC connector in SD
           q    Using and testing
           q    Making-up

Cassiopee 2012          OSLC-CM connector in SD
OSLC



Open Services for Lifecycle Collaboration

q  Specifications

     ü  Sharing data

     ü  Between software development tools



 Cassiopee 2012      OSLC-CM connector in SD
Specifications




q  Core specifications v2

q  Change Management specifications v2

  Defining a web services REST interface
  for Change Management



 Cassiopee 2012    OSLC-CM connector in SD
Change Management




q  Defects, bugs

q  Change requests, tasks




 Cassiopee 2012     OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Principles: REST – Linked Data



q  ‘’Everything is a URI.’’

q  RDF/XML data format

q  HTTP protocol
      Pull : GET
      Push : POST, UPDATE, DELETE



  Cassiopee 2012     OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Development goal


                 Simple Defects (SD)
                 Introduction to OSLC-CM
                 Development goal
           q    SD connectors
           q    Net-OSLC-CM Perl module
           q    OSLC connector in SD
           q    Using and testing
           q    Making-up

Cassiopee 2012          OSLC-CM connector in SD
Goal




     SD                            Bugzilla




                        Adaptator
                        OSLC-CM Service Provider




Cassiopee 2012   OSLC-CM connector in SD
Goal



         Adaptator
     OSLC-CM Consumer


     SD                              Bugzilla




                          Adaptator
                          OSLC-CM Service Provider




Cassiopee 2012     OSLC-CM connector in SD
SD connectors


                 Simple Defects (SD)
                 Introduction to OSLC-CM
                 Development goal
                 SD connectors
           q    Net-OSLC-CM Perl module
           q    OSLC connector in SD
           q    Using and testing
           q    Making-up

Cassiopee 2012          OSLC-CM connector in SD
Development in SD




q  Developed in Perl 5

q  Object-oriented with Moose




 Cassiopee 2012    OSLC-CM connector in SD
Example with Github bugtracker



q  3 classes in Replica/

    ü  github.pm

    ü  github/PullEncoder.pm

    ü  github/PushEncoder.pm



 Cassiopee 2012     OSLC-CM connector in SD
Partial UML diagram (inheritance)




Cassiopee 2012   OSLC-CM connector in SD
Example with Github




q  Perl interface for github.com

   Net::GitHub::V2




 Cassiopee 2012      OSLC-CM connector in SD
Example with Github



q  github.pm module
      $sd clone –-from 
      ‘github:http://github.com/arroway/SD/issues’


    ü  Authentification (OAuth or basic auth)

    ü  Connection




 Cassiopee 2012    OSLC-CM connector in SD
Example with Github




q  github/PullEncoder.pm module

  find_matching_tickets

  calls

  github->issue->list(‘open’)
  github->issue->list(‘closed’)


 Cassiopee 2012   OSLC-CM connector in SD
Example with Github




q  github/PushEncoder.pm module

  integrate_ticket_create/update

  calls

  $github->issue->open/edit



 Cassiopee 2012   OSLC-CM connector in SD
Net-OSLC-CM Perl Module


               Simple Defects (SD)
               SD connectors
               Introduction to OSLC-CM
               Development goal
               Net-OSLC-CM Perl Module
           q  OSLC connector in SD
           q  Using and testing
           q  Making-up

Cassiopee 2012      OSLC-CM connector in SD
Net-OSLC-CM




q  Standard Perl module

q  Helping implement a OSLC-CM Consumer




 Cassiopee 2012   OSLC-CM connector in SD
Cassiopee 2012   OSLC-CM connector in SD
Example


use Net::OSLC::CM;

  my $oslccm = Net::OSLC::CM−>new(
        url   => $self−>remote_url,
        username => $username,
        password => $password
  ));

  # Getting an array of changeRequests
  my @results = $oslccm−>get_oslc_resources;




       Cassiopee 2012    OSLC-CM connector in SD
Résultat final




                 my @results =
                      $oslccm−>changeRequests;




Cassiopee 2012    OSLC-CM connector in SD
Detailed example

$oslccm−>url = "http://example.com";

 $oslccm−>parser(
    Net::OSLC::CM::Parser−>new(cm => $oslccm)
 );

 $oslccm−>create_catalog;
 $oslccm−>get_provider_catalog_resource;

 $oslccm−>get_service_providers;

 $oslccm−>get_changeRequests($oslccm−>providers);
 $oslccm−>load_changeRequests();

 my @results = $oslccm−>changeRequests;



         Cassiopee 2012         OSLC-CM connector in SD
Connection to a bugtracker
Connection

                                            http://localhost:8282/bugz
      Connection
      Authentification (basic auth)



       Consumer


                            Connection OK
                            Authenticated




         Cassiopee 2012           OSLC-CM connector in SD
Getting the Service Provider Catalog
GET Catalog

  GET http://localhost:8282/bugz/            http://localhost:8282/bugz
  catalog
  Accept => application/rdf+xml



      Consumer



  <oslc:ServiceProviderCatalog rdf:about="http://localhost/bugz/catalog">




          Cassiopee 2012            OSLC-CM connector in SD
Catalog RDF/XML
Service Provider Catalog
<oslc:ServiceProviderCatalog rdf:about="http://localhost:8282/bugz/catalog">
    <dcterms:title>OSLC-CM Adapter/Bugzilla Service Provider Catalog</dcterms:title>
    <oslc:domain rdf:resource="http://open-services.net/ns/cm#" />

    <oslc:serviceProvider>
         <oslc:ServiceProvider rdf:about="http://localhost:8282/bugz/provider?
productId=1">
              <dcterms:title>TestProduct</dcterms:title>
         </oslc:ServiceProvider>
    </oslc:serviceProvider>

     <oslc:serviceProvider>
          <oslc:ServiceProvider rdf:about="http://localhost:8282/bugz/provider?
productId=3">
               <dcterms:title>FakePortal</dcterms:title>
          </oslc:ServiceProvider>
     </oslc:serviceProvider>
</oslc:ServiceProviderCatalog>



            Cassiopee 2012              OSLC-CM connector in SD
Getting Service Providers data
GET Service Providers

   GET http://localhost:8282/bugz/provider?productId=1
   GET http://localhost:8282/bugz/provider?productId=2
   GET http://localhost:8282/bugz/provider?productId=3
   …


       Consumer




          Cassiopee 2012            OSLC-CM connector in SD
Service Provider RDF/XML
Service Provider
<oslc:ServiceProvider rdf:about="http://localhost:8282/bugz/provider?productId=1">
  <dcterms:title>Bugzilla Service Provider: Product TestProduct(1)</dcterms:title>

  <oslc:Service>

    <oslc:selectionDialog/>
    <oslc:creationDialog/>
    <oslc:CreationFactory/>
    <oslc:QueryCapability>
         <oslc:queryBase rdf:resource="http://localhost:8282/bugz/changerequests?
              productId=1" />
         <oslc:resourceShape rdf:resource="http://localhost:8282/bugz/queryshape?
              productId=1" />
    </oslc:QueryCapability>

  <oslc:Service/>

<oslc:ServiceProvider/>



             Cassiopee 2012               OSLC-CM connector in SD
Getting a list of Change Requests (tickets)

GET Change Requests list


   GET http://localhost:8282/bugz/changerequests?productId=1




      Consumer




          Cassiopee 2012         OSLC-CM connector in SD
Getting a Change Request

GET Change Request


  GET http://localhost:8282/bugz/changerequest?id=24




      Consumer




         Cassiopee 2012         OSLC-CM connector in SD
Change Request RDF/XML

Change Request
<oslc_cm:ChangeRequest rdf:about="http://192.168.56.101:8282/bugz/changerequest?
id=24">

    <dcterms:title rdf:datatype="http://www.w3.org/2001/XMLSchema#string”>
         New Bug: installation
    </dcterms:title>
    <dcterms:created rdf:datatype=“http://www.w3.org/2001 XMLSchema#dateTime”>
         2012-04-22T16:16:00Z
    </dcterms:created>
    <dcterms:identifier rdf:datatype="http://www.w3.org/2001/XMLSchema#string”>
         24
    </dcterms:identifier>

    …

</oslc_cm:ChangeRequest>




            Cassiopee 2012             OSLC-CM connector in SD
OSLC connector in SD


               Simple Defects (SD)
               SD Connectors
               Introduction to OSLC-CM
               Development goal
               Net-OSLC-CM Perl Module
               OSLC connector in SD
           q  Using and testing
           q  Making-up

Cassiopee 2012       OSLC-CM connector in SD
Result gained from Net::OSLC::CM




                 my @results =
                      $oslccm−>changeRequests;




Cassiopee 2012    OSLC-CM connector in SD
Result gained from Net::OSLC::CM




                 my @results =
                      $oslccm−>changeRequests;




                        List of tickets in SD


Cassiopee 2012    OSLC-CM connector in SD
Using and testing


               Simple Defects (SD)
               SD connectors
               Introduction to OSLC-CM
               Development goal
               Net-OSLC-CM Perl Module
               OSLC connector in SD
               Using and testing
           q  Making-up

Cassiopee 2012       OSLC-CM connector in SD
Test environment



                Adaptator
            OSLC-CM Consumer


            SD                              Bugzilla




                                 Adaptator
                                 OSLC-CM Service Provider

Host


       Cassiopee 2012     OSLC-CM connector in SD
Test environment



                Adaptator      Debian virtual machine
            OSLC-CM Consumer


            SD                               Bugzilla




                                  Adaptator
                                  OSLC-CM Service Provider

Host


       Cassiopee 2012     OSLC-CM connector in SD
Test environment



                Adaptator        Debian virtual machine
            OSLC-CM Consumer


            SD                                 Bugzilla




                                    Adaptator
                                    OSLC-CM Service Provider

Host                           Vboxnet network interface between
                               host and guest (//local network)

       Cassiopee 2012     OSLC-CM connector in SD
Demonstration




Cassiopee 2012   OSLC-CM connector in SD
Testing Net::OSLC::CM



q  With Test::More

q  Testing Net::OSLC::CM classes

      01-connection.t
      02-get-provider-catalog-resources.t
      03-get-service-providers.t
      04-get-change-requests.t


 Cassiopee 2012       OSLC-CM connector in SD
Making-up


                 Simple Defects (SD)
                 SD connectors
                 Introduction to OSLC-CM
                 Development goal
                 Net-OSLC-CM Perl Module
                 OSLC connector in SD
                 Using and testing
                 Making-up

Cassiopee 2012          OSLC-CM connector in SD
Commits in Net-OSLC-CM




Cassiopee 2012   OSLC-CM connector in SD
Next development steps


q  Implementing the Push part in Net::OSLC::CM
      with a serializer RDF/XML

q  Implementing PushEncoder.pm in SD

q  Completing the implementation of the specs

q  Refactoring Net::OSLC::CM
     ü  RDF data are extensible – so is the
         Prophet database
     ü  Data OSLC/ Net OSLC

     Cassiopee 2012    OSLC-CM connector in SD
What I learned


q  Perl 5 and OO Perl with Moose

q  Creation of a Perl module

q  Tests with Test::More

q  Specifications OSLC-CM v2

q  Searching through RDF data and
    performing SPARQL queries


     Cassiopee 2012    OSLC-CM connector in SD
Links

q  Source code
    http://github.com/arroway/Net-OSLC-CM (Perl licence)
    http://github/com/arroway/SD (Best Practicals Solutions)

q  Documentation
    http://arroway.github.com/Net-OSLC-CM

q  SD
    http://syncwith.us

q  OSLC
    http://open-services.net


   Cassiopee 2012        OSLC-CM connector in SD

OSLC-CM connector in SD

  • 1.
    Cassiopee Project 2012 Implementingthe support of OSLC-CM in Simple Defects Cliquez pour modifier le style des sous-titres du masque Stéphanie Ouillon - Mentor : Olivier Berger
  • 2.
    Contents q  Simple Defects (SD) q  SD connectors q  Introduction to OSLC-CM q  Development goal q  Net-OSLC-CM Perl module q  OSLC connector in SD q  Using and testing q  Making-up Cassiopee 2012 OSLC-CM connector in SD
  • 3.
    Specifications q  Implementing aOSLC-CM adaptator for the bugtracker Simple Defects q  Open Source contribution q  Publishing content on the web Base de données Pro Cassiopee 2012 OSLC-CM connector in SD
  • 4.
    Simple Defects (SD) Simple Defects (SD) q  Introduction to OSLC-CM q  Development goal q  SD connectors q  Net-OSLC-CM Perl module q  OSLC connector in SD q  Using and testing q  Making-up Cassiopee 2012 OSLC-CM connector in SD
  • 5.
    Simple Defects :a bugtracker q  In command ligne Prophet database Cassiopee 2012 OSLC-CM connector in SD
  • 6.
    Simple Defects :a bugtracker filesystem code IDE Server/storage bugs Web browser 5 Cassiopee 2012 OSLC-CM connector in SD
  • 7.
    Simple Defects :a bugtracker filesystem code Terminal + Vim Server/storage bugs filesystem Terminal + SD 6 Cassiopee 2012 OSLC-CM connector in SD
  • 8.
    Simple Defects :un bugtracker q  In command ligne q  Prophet database https://gitorious.org/prophet/prophet Cassiopee 2012 OSLC-CM connector in SD
  • 9.
    Prophet ü  Semi-relationnal ü  Peerto peer replicated ü  Disconnected ü  Versioned ü  Self-healing conflict resolution Cassiopee 2012 OSLC-CM connector in SD
  • 10.
    Cassiopee 2012 OSLC-CM connector in SD
  • 11.
    Cassiopee 2012 OSLC-CM connector in SD
  • 12.
    Cassiopee 2012 OSLC-CM connector in SD
  • 13.
    Cassiopee 2012 OSLC-CM connector in SD
  • 14.
    Cassiopee 2012 OSLC-CM connector in SD
  • 15.
    Cassiopee 2012 OSLC-CM connector in SD
  • 16.
    Demonstration Cassiopee 2012 OSLC-CM connector in SD
  • 17.
    Cassiopee 2012 OSLC-CM connector in SD
  • 18.
    Cassiopee 2012 OSLC-CM connector in SD
  • 19.
    Introduction to OSLC-CM Simple Defects (SD) Introduction to OSLC-CM q  Development goal q  SD connectors q  Net-OSLC-CM Perl module q  OSLC connector in SD q  Using and testing q  Making-up Cassiopee 2012 OSLC-CM connector in SD
  • 20.
    OSLC Open Services forLifecycle Collaboration q  Specifications ü  Sharing data ü  Between software development tools Cassiopee 2012 OSLC-CM connector in SD
  • 21.
    Specifications q  Core specificationsv2 q  Change Management specifications v2 Defining a web services REST interface for Change Management Cassiopee 2012 OSLC-CM connector in SD
  • 22.
    Change Management q  Defects,bugs q  Change requests, tasks Cassiopee 2012 OSLC-CM connector in SD
  • 23.
    Cassiopee 2012 OSLC-CM connector in SD
  • 24.
    Cassiopee 2012 OSLC-CM connector in SD
  • 25.
    Principles: REST –Linked Data q  ‘’Everything is a URI.’’ q  RDF/XML data format q  HTTP protocol Pull : GET Push : POST, UPDATE, DELETE Cassiopee 2012 OSLC-CM connector in SD
  • 26.
    Cassiopee 2012 OSLC-CM connector in SD
  • 27.
    Development goal Simple Defects (SD) Introduction to OSLC-CM Development goal q  SD connectors q  Net-OSLC-CM Perl module q  OSLC connector in SD q  Using and testing q  Making-up Cassiopee 2012 OSLC-CM connector in SD
  • 28.
    Goal SD Bugzilla Adaptator OSLC-CM Service Provider Cassiopee 2012 OSLC-CM connector in SD
  • 29.
    Goal Adaptator OSLC-CM Consumer SD Bugzilla Adaptator OSLC-CM Service Provider Cassiopee 2012 OSLC-CM connector in SD
  • 30.
    SD connectors Simple Defects (SD) Introduction to OSLC-CM Development goal SD connectors q  Net-OSLC-CM Perl module q  OSLC connector in SD q  Using and testing q  Making-up Cassiopee 2012 OSLC-CM connector in SD
  • 31.
    Development in SD q Developed in Perl 5 q  Object-oriented with Moose Cassiopee 2012 OSLC-CM connector in SD
  • 32.
    Example with Githubbugtracker q  3 classes in Replica/ ü  github.pm ü  github/PullEncoder.pm ü  github/PushEncoder.pm Cassiopee 2012 OSLC-CM connector in SD
  • 33.
    Partial UML diagram(inheritance) Cassiopee 2012 OSLC-CM connector in SD
  • 34.
    Example with Github q Perl interface for github.com Net::GitHub::V2 Cassiopee 2012 OSLC-CM connector in SD
  • 35.
    Example with Github q github.pm module $sd clone –-from ‘github:http://github.com/arroway/SD/issues’ ü  Authentification (OAuth or basic auth) ü  Connection Cassiopee 2012 OSLC-CM connector in SD
  • 36.
    Example with Github q github/PullEncoder.pm module find_matching_tickets calls github->issue->list(‘open’) github->issue->list(‘closed’) Cassiopee 2012 OSLC-CM connector in SD
  • 37.
    Example with Github q github/PushEncoder.pm module integrate_ticket_create/update calls $github->issue->open/edit Cassiopee 2012 OSLC-CM connector in SD
  • 38.
    Net-OSLC-CM Perl Module Simple Defects (SD) SD connectors Introduction to OSLC-CM Development goal Net-OSLC-CM Perl Module q  OSLC connector in SD q  Using and testing q  Making-up Cassiopee 2012 OSLC-CM connector in SD
  • 39.
    Net-OSLC-CM q  Standard Perlmodule q  Helping implement a OSLC-CM Consumer Cassiopee 2012 OSLC-CM connector in SD
  • 40.
    Cassiopee 2012 OSLC-CM connector in SD
  • 41.
    Example use Net::OSLC::CM; my $oslccm = Net::OSLC::CM−>new( url => $self−>remote_url, username => $username, password => $password )); # Getting an array of changeRequests my @results = $oslccm−>get_oslc_resources; Cassiopee 2012 OSLC-CM connector in SD
  • 42.
    Résultat final my @results = $oslccm−>changeRequests; Cassiopee 2012 OSLC-CM connector in SD
  • 43.
    Detailed example $oslccm−>url ="http://example.com"; $oslccm−>parser( Net::OSLC::CM::Parser−>new(cm => $oslccm) ); $oslccm−>create_catalog; $oslccm−>get_provider_catalog_resource; $oslccm−>get_service_providers; $oslccm−>get_changeRequests($oslccm−>providers); $oslccm−>load_changeRequests(); my @results = $oslccm−>changeRequests; Cassiopee 2012 OSLC-CM connector in SD
  • 44.
    Connection to abugtracker Connection http://localhost:8282/bugz Connection Authentification (basic auth) Consumer Connection OK Authenticated Cassiopee 2012 OSLC-CM connector in SD
  • 45.
    Getting the ServiceProvider Catalog GET Catalog GET http://localhost:8282/bugz/ http://localhost:8282/bugz catalog Accept => application/rdf+xml Consumer <oslc:ServiceProviderCatalog rdf:about="http://localhost/bugz/catalog"> Cassiopee 2012 OSLC-CM connector in SD
  • 46.
    Catalog RDF/XML Service ProviderCatalog <oslc:ServiceProviderCatalog rdf:about="http://localhost:8282/bugz/catalog"> <dcterms:title>OSLC-CM Adapter/Bugzilla Service Provider Catalog</dcterms:title> <oslc:domain rdf:resource="http://open-services.net/ns/cm#" /> <oslc:serviceProvider> <oslc:ServiceProvider rdf:about="http://localhost:8282/bugz/provider? productId=1"> <dcterms:title>TestProduct</dcterms:title> </oslc:ServiceProvider> </oslc:serviceProvider> <oslc:serviceProvider> <oslc:ServiceProvider rdf:about="http://localhost:8282/bugz/provider? productId=3"> <dcterms:title>FakePortal</dcterms:title> </oslc:ServiceProvider> </oslc:serviceProvider> </oslc:ServiceProviderCatalog> Cassiopee 2012 OSLC-CM connector in SD
  • 47.
    Getting Service Providersdata GET Service Providers GET http://localhost:8282/bugz/provider?productId=1 GET http://localhost:8282/bugz/provider?productId=2 GET http://localhost:8282/bugz/provider?productId=3 … Consumer Cassiopee 2012 OSLC-CM connector in SD
  • 48.
    Service Provider RDF/XML ServiceProvider <oslc:ServiceProvider rdf:about="http://localhost:8282/bugz/provider?productId=1"> <dcterms:title>Bugzilla Service Provider: Product TestProduct(1)</dcterms:title> <oslc:Service> <oslc:selectionDialog/> <oslc:creationDialog/> <oslc:CreationFactory/> <oslc:QueryCapability> <oslc:queryBase rdf:resource="http://localhost:8282/bugz/changerequests? productId=1" /> <oslc:resourceShape rdf:resource="http://localhost:8282/bugz/queryshape? productId=1" /> </oslc:QueryCapability> <oslc:Service/> <oslc:ServiceProvider/> Cassiopee 2012 OSLC-CM connector in SD
  • 49.
    Getting a listof Change Requests (tickets) GET Change Requests list GET http://localhost:8282/bugz/changerequests?productId=1 Consumer Cassiopee 2012 OSLC-CM connector in SD
  • 50.
    Getting a ChangeRequest GET Change Request GET http://localhost:8282/bugz/changerequest?id=24 Consumer Cassiopee 2012 OSLC-CM connector in SD
  • 51.
    Change Request RDF/XML ChangeRequest <oslc_cm:ChangeRequest rdf:about="http://192.168.56.101:8282/bugz/changerequest? id=24"> <dcterms:title rdf:datatype="http://www.w3.org/2001/XMLSchema#string”> New Bug: installation </dcterms:title> <dcterms:created rdf:datatype=“http://www.w3.org/2001 XMLSchema#dateTime”> 2012-04-22T16:16:00Z </dcterms:created> <dcterms:identifier rdf:datatype="http://www.w3.org/2001/XMLSchema#string”> 24 </dcterms:identifier> … </oslc_cm:ChangeRequest> Cassiopee 2012 OSLC-CM connector in SD
  • 52.
    OSLC connector inSD Simple Defects (SD) SD Connectors Introduction to OSLC-CM Development goal Net-OSLC-CM Perl Module OSLC connector in SD q  Using and testing q  Making-up Cassiopee 2012 OSLC-CM connector in SD
  • 53.
    Result gained fromNet::OSLC::CM my @results = $oslccm−>changeRequests; Cassiopee 2012 OSLC-CM connector in SD
  • 54.
    Result gained fromNet::OSLC::CM my @results = $oslccm−>changeRequests; List of tickets in SD Cassiopee 2012 OSLC-CM connector in SD
  • 55.
    Using and testing Simple Defects (SD) SD connectors Introduction to OSLC-CM Development goal Net-OSLC-CM Perl Module OSLC connector in SD Using and testing q  Making-up Cassiopee 2012 OSLC-CM connector in SD
  • 56.
    Test environment Adaptator OSLC-CM Consumer SD Bugzilla Adaptator OSLC-CM Service Provider Host Cassiopee 2012 OSLC-CM connector in SD
  • 57.
    Test environment Adaptator Debian virtual machine OSLC-CM Consumer SD Bugzilla Adaptator OSLC-CM Service Provider Host Cassiopee 2012 OSLC-CM connector in SD
  • 58.
    Test environment Adaptator Debian virtual machine OSLC-CM Consumer SD Bugzilla Adaptator OSLC-CM Service Provider Host Vboxnet network interface between host and guest (//local network) Cassiopee 2012 OSLC-CM connector in SD
  • 59.
    Demonstration Cassiopee 2012 OSLC-CM connector in SD
  • 60.
    Testing Net::OSLC::CM q  WithTest::More q  Testing Net::OSLC::CM classes 01-connection.t 02-get-provider-catalog-resources.t 03-get-service-providers.t 04-get-change-requests.t Cassiopee 2012 OSLC-CM connector in SD
  • 61.
    Making-up Simple Defects (SD) SD connectors Introduction to OSLC-CM Development goal Net-OSLC-CM Perl Module OSLC connector in SD Using and testing Making-up Cassiopee 2012 OSLC-CM connector in SD
  • 62.
    Commits in Net-OSLC-CM Cassiopee2012 OSLC-CM connector in SD
  • 63.
    Next development steps q Implementing the Push part in Net::OSLC::CM with a serializer RDF/XML q  Implementing PushEncoder.pm in SD q  Completing the implementation of the specs q  Refactoring Net::OSLC::CM ü  RDF data are extensible – so is the Prophet database ü  Data OSLC/ Net OSLC Cassiopee 2012 OSLC-CM connector in SD
  • 64.
    What I learned q Perl 5 and OO Perl with Moose q  Creation of a Perl module q  Tests with Test::More q  Specifications OSLC-CM v2 q  Searching through RDF data and performing SPARQL queries Cassiopee 2012 OSLC-CM connector in SD
  • 65.
    Links q  Source code http://github.com/arroway/Net-OSLC-CM (Perl licence) http://github/com/arroway/SD (Best Practicals Solutions) q  Documentation http://arroway.github.com/Net-OSLC-CM q  SD http://syncwith.us q  OSLC http://open-services.net Cassiopee 2012 OSLC-CM connector in SD