SlideShare a Scribd company logo
1 of 26
Download to read offline
Evolving  systems  and  
    the  link  to  service  
       orienta4on

             ...and  the  search  for  a  shorter  .tle


Angelo  van  der  Sijpt
angelo.vandersijpt@luminis.eu
                                               http://www.flickr.com/photos/artolog/313055444/
$ whoami


• Angelo  van  der  Sijpt
• Commi:er  with  Apache  ACE
• So=ware  engineer  at  Luminis  
  Technologies
• angelo.vandersijpt@luminis.eu    
• Buzzwords:  Java,  OSGi,  Agile
ARL




      http://www.flickr.com/photos/shonk/57302289/
Formal'
curriculum
 • ...
 • ...                                school's'objec+ves
  curriculum                        personal)objec-ves
 • ...
 • ...



               personal)learning)path
personal)learning)path




    Goal%selec)on




         Learning(
         objec-ves
Learning(
              objec-ves



          Object'selec*on

Content

             Executable*
             learning
             design




            Execu&on
Formal'
curriculum
 • ...
 • ...                                 school's'objec3ves
  curriculum                         personal'objec3ves
 • ...
 • ...



               personal'learning'path




                   Goal'selec3on




                        Learning(
                        objec-ves



                  Object'selec*on

     Content

                       Executable*
                       learning
                       design




                      Execu&on
ARL
• “Where  is  this  student  compared  to  his  class?”
         ve




                                                  Re
         a(




                                                     st
                                                       ric
       or
     pl




• “What  learning  style  do  I  have?”




                                                          (v
    Ex




                                   ed




                                                            e
                                     uc
                                 pro .
                                    file
• “Who  else  has  problems  with  this?”
                  Educ.&
                 domain

• “What  should  I  do  now?”




                                  http://www.flickr.com/photos/jeffsmallwood/233853485
The  profile  service




             http://www.flickr.com/photos/crazyneighborlady/411869140/
• Pluggable
• Evolvable
• Driven  by  code
Query q = new Query()
    .select(person())
    .where(person().firstName(literal("Roy")));
RowSet<Row> rowSet = q.select(model);
Person roy = rowSet.iterator().next().get(person());


roy.lastName();


roy.lastName("Trenneman");
PIM:Person                                                      Subject9
                                                               Curriculum




                                                               hasTopConcept
                                                               SKOS:
     hasEduca/on



                                   Achievement
                                              ha
                               f                sA
                           O                         ch                        SKOS:Concept
                      sist                             iev
                   con                                    ed


Educa/on                                                          Learing
                                                                 Objec/ve
new Query().select(curriculum().label(), learningDimension(),
learningDimension().label(), achievement(),
learningdimension("sublearningdimension"))
    .where(
        curriculum()
            .hasTopConcept(learningDimension())
            .label()),
        learningdimension("sublearningdimension")
            .broader(learningDimension())
        learningDimension()
            .label(),
        p.has(education()),
        optional(
                education()
                     .consistsOf(achievement()),
                achievement()
                     .hasAchieved(learningdimension("sublearningdimension"))),
        filter("bound(" + achievement() + ")");
Service  Orienta4on




               http://www.flickr.com/photos/camknows/4712191684
“A  Service  Oriented  Architecture  is  comprised  of  
independently  defined  components,  providing  
services  through  agreed-­‐upon  interfaces.  
Components  can  in  turn  have  dependencies  on  other  
services.”




                                     http://www.flickr.com/photos/camknows/4712191684
Service  Orienta4on
• Mo.va.on
 • Isola.on  &  decoupling
 • (Coping  with  or  causing)            B         A
   dynamic  composi.on
                                                        binding
• Vocabulary
 • Service,  component,  
   mandatory/op.onal  
   dependency                        • Excluded
• Rules                               • Discovery

 • Services  are  self-­‐contained    • Orchestra.on

 • Interfaces  are  defined            • Communica.on  
   beforehand                           method
http://www.flickr.com/photos/artolog/313055444/
Service

            Module


            Lifecycle
Framework
More  on  OSGi

   • Defines  a  framework
   • Bundles  (components)  are  Java  jar  files
                   • Contain  code,  metadata,  and  arbitrary  data

           Hall
          et al.
                           C rea tin g M odu lar
                                                   A ppl ica tio ns in J
                                                                           ava
 OSGi IN ACTION




                                                Richard S. Hall
                                                    Karl Pauls
                                             Stuart McCulloch
                                                David Savage
                                        FOREWORD BY PETER
                                                          KRIENS




MANNING


                                              MANNING
SOA  and  data
• Code  centric
• Data  never  dies,  but  code  can  go
• Plugging  axioms  and  entailments
• Allows  (de-­‐)installa.on  of  components
• Respects  the  service  dependency  tree
• Tradeoffs
  • Transform  data,  or  pay  with  code  complexity
Versioning

                                              Semantic Versioning
• Code:  we’re  ge[ng  there                                           Technical Whitepaper



                                                                                  Revision 1.0
                                                                                  May 6, 2010


  • Major/minor/micro
• Ontologies:  version  from  the  
  start
  • Closed  system?  Place  addi.ons  in       © 2010 OSGi Alliance
                                                All Rights Reserved.




    same  version
  • Open  system?  Bump  version  on  
    every  change  (but  minimize  those)
In  short



• Code  and  data  can  learn  from  each  other
• Evolve  code  and  data  together
  • Package  them  together
• Consider  your  versioning  scheme
  • Do,  or  don’t,  worry  about  interchangeability
Evolving  systems  and  
   the  link  to  service  
      orienta4on
Angelo  van  der  Sijpt
angelo.vandersijpt@luminis.eu




                                http://www.flickr.com/photos/98469445@N00/327471676/

More Related Content

Similar to Evolving systems and the link to service orientation

U1 JAVA.pptx
U1 JAVA.pptxU1 JAVA.pptx
U1 JAVA.pptxmadan r
 
A1590026209_21789_20_2018_0 Lecture .ppt
A1590026209_21789_20_2018_0 Lecture .pptA1590026209_21789_20_2018_0 Lecture .ppt
A1590026209_21789_20_2018_0 Lecture .pptpranatidubey2004
 
Seasprint2012ploneconferencereportout
Seasprint2012ploneconferencereportoutSeasprint2012ploneconferencereportout
Seasprint2012ploneconferencereportoutableeb
 
Software Engineering Lec5 oop-uml-i
Software Engineering Lec5 oop-uml-iSoftware Engineering Lec5 oop-uml-i
Software Engineering Lec5 oop-uml-iTaymoor Nazmy
 
Angular or Backbone: Go Mobile!
Angular or Backbone: Go Mobile!Angular or Backbone: Go Mobile!
Angular or Backbone: Go Mobile!Doris Chen
 
Exam View Presentation: JISC Sharing Stories September 2012
Exam View Presentation: JISC Sharing Stories September 2012Exam View Presentation: JISC Sharing Stories September 2012
Exam View Presentation: JISC Sharing Stories September 2012Alex Walker
 
Object Oriented Programming
Object Oriented ProgrammingObject Oriented Programming
Object Oriented ProgrammingManish Pandit
 
[doc].doc
[doc].doc[doc].doc
[doc].docbutest
 
Java 8 selected updates
Java 8 selected updatesJava 8 selected updates
Java 8 selected updatesVinay H G
 
How to crack java script certification
How to crack java script certificationHow to crack java script certification
How to crack java script certificationKadharBashaJ
 
OAI7 Research Objects
OAI7 Research ObjectsOAI7 Research Objects
OAI7 Research Objectsseanb
 
Importance of Developers to HE in the UK
Importance of Developers to HE in the UKImportance of Developers to HE in the UK
Importance of Developers to HE in the UKPaul Walk
 
Getting Started with Java
Getting Started with JavaGetting Started with Java
Getting Started with JavaMichael Redlich
 
12_oop templa.pptx
12_oop templa.pptx12_oop templa.pptx
12_oop templa.pptxRokaKaram
 
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.WO Community
 
Webinar: How We Evaluated MongoDB as a Relational Database Replacement
Webinar: How We Evaluated MongoDB as a Relational Database ReplacementWebinar: How We Evaluated MongoDB as a Relational Database Replacement
Webinar: How We Evaluated MongoDB as a Relational Database ReplacementMongoDB
 
Static analysis of java enterprise applications
Static analysis of java enterprise applicationsStatic analysis of java enterprise applications
Static analysis of java enterprise applicationsAnastasiοs Antoniadis
 

Similar to Evolving systems and the link to service orientation (20)

U1 JAVA.pptx
U1 JAVA.pptxU1 JAVA.pptx
U1 JAVA.pptx
 
A1590026209_21789_20_2018_0 Lecture .ppt
A1590026209_21789_20_2018_0 Lecture .pptA1590026209_21789_20_2018_0 Lecture .ppt
A1590026209_21789_20_2018_0 Lecture .ppt
 
Seasprint2012ploneconferencereportout
Seasprint2012ploneconferencereportoutSeasprint2012ploneconferencereportout
Seasprint2012ploneconferencereportout
 
Java, vb, python
Java, vb, pythonJava, vb, python
Java, vb, python
 
Software Engineering Lec5 oop-uml-i
Software Engineering Lec5 oop-uml-iSoftware Engineering Lec5 oop-uml-i
Software Engineering Lec5 oop-uml-i
 
Angular or Backbone: Go Mobile!
Angular or Backbone: Go Mobile!Angular or Backbone: Go Mobile!
Angular or Backbone: Go Mobile!
 
Exam View Presentation: JISC Sharing Stories September 2012
Exam View Presentation: JISC Sharing Stories September 2012Exam View Presentation: JISC Sharing Stories September 2012
Exam View Presentation: JISC Sharing Stories September 2012
 
Object Oriented Programming
Object Oriented ProgrammingObject Oriented Programming
Object Oriented Programming
 
[doc].doc
[doc].doc[doc].doc
[doc].doc
 
Java 8 selected updates
Java 8 selected updatesJava 8 selected updates
Java 8 selected updates
 
How to crack java script certification
How to crack java script certificationHow to crack java script certification
How to crack java script certification
 
OAI7 Research Objects
OAI7 Research ObjectsOAI7 Research Objects
OAI7 Research Objects
 
Importance of Developers to HE in the UK
Importance of Developers to HE in the UKImportance of Developers to HE in the UK
Importance of Developers to HE in the UK
 
Getting Started with Java
Getting Started with JavaGetting Started with Java
Getting Started with Java
 
12_oop templa.pptx
12_oop templa.pptx12_oop templa.pptx
12_oop templa.pptx
 
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
 
Webinar: How We Evaluated MongoDB as a Relational Database Replacement
Webinar: How We Evaluated MongoDB as a Relational Database ReplacementWebinar: How We Evaluated MongoDB as a Relational Database Replacement
Webinar: How We Evaluated MongoDB as a Relational Database Replacement
 
Static analysis of java enterprise applications
Static analysis of java enterprise applicationsStatic analysis of java enterprise applications
Static analysis of java enterprise applications
 
Codemotion 2015 spock_workshop
Codemotion 2015 spock_workshopCodemotion 2015 spock_workshop
Codemotion 2015 spock_workshop
 
Designing e-Learning Objects
Designing e-Learning ObjectsDesigning e-Learning Objects
Designing e-Learning Objects
 

More from Angelo van der Sijpt

More from Angelo van der Sijpt (6)

Evolving systems and the link to service orientation
Evolving systems and the link to service orientationEvolving systems and the link to service orientation
Evolving systems and the link to service orientation
 
Massive device deployment - EclipseCon 2011
Massive device deployment - EclipseCon 2011Massive device deployment - EclipseCon 2011
Massive device deployment - EclipseCon 2011
 
Device deployment
Device deploymentDevice deployment
Device deployment
 
Rails by example
Rails by exampleRails by example
Rails by example
 
Planning Poker
Planning PokerPlanning Poker
Planning Poker
 
Apeldoorn It 2008 - Adaptiviteit In Software Architectuur
Apeldoorn It 2008 - Adaptiviteit In Software ArchitectuurApeldoorn It 2008 - Adaptiviteit In Software Architectuur
Apeldoorn It 2008 - Adaptiviteit In Software Architectuur
 

Recently uploaded

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 

Recently uploaded (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 

Evolving systems and the link to service orientation

  • 1. Evolving  systems  and   the  link  to  service   orienta4on ...and  the  search  for  a  shorter  .tle Angelo  van  der  Sijpt angelo.vandersijpt@luminis.eu http://www.flickr.com/photos/artolog/313055444/
  • 2. $ whoami • Angelo  van  der  Sijpt • Commi:er  with  Apache  ACE • So=ware  engineer  at  Luminis   Technologies • angelo.vandersijpt@luminis.eu     • Buzzwords:  Java,  OSGi,  Agile
  • 3. ARL http://www.flickr.com/photos/shonk/57302289/
  • 4. Formal' curriculum • ... • ... school's'objec+ves curriculum personal)objec-ves • ... • ... personal)learning)path
  • 5. personal)learning)path Goal%selec)on Learning( objec-ves
  • 6. Learning( objec-ves Object'selec*on Content Executable* learning design Execu&on
  • 7. Formal' curriculum • ... • ... school's'objec3ves curriculum personal'objec3ves • ... • ... personal'learning'path Goal'selec3on Learning( objec-ves Object'selec*on Content Executable* learning design Execu&on
  • 8. ARL • “Where  is  this  student  compared  to  his  class?” ve Re a( st ric or pl • “What  learning  style  do  I  have?” (v Ex ed e uc pro . file • “Who  else  has  problems  with  this?” Educ.& domain • “What  should  I  do  now?” http://www.flickr.com/photos/jeffsmallwood/233853485
  • 9. The  profile  service http://www.flickr.com/photos/crazyneighborlady/411869140/
  • 10. • Pluggable • Evolvable • Driven  by  code
  • 11. Query q = new Query() .select(person()) .where(person().firstName(literal("Roy"))); RowSet<Row> rowSet = q.select(model); Person roy = rowSet.iterator().next().get(person()); roy.lastName(); roy.lastName("Trenneman");
  • 12. PIM:Person Subject9 Curriculum hasTopConcept SKOS: hasEduca/on Achievement ha f sA O ch SKOS:Concept sist iev con ed Educa/on Learing Objec/ve
  • 13. new Query().select(curriculum().label(), learningDimension(), learningDimension().label(), achievement(), learningdimension("sublearningdimension")) .where( curriculum() .hasTopConcept(learningDimension()) .label()), learningdimension("sublearningdimension") .broader(learningDimension()) learningDimension() .label(), p.has(education()), optional( education() .consistsOf(achievement()), achievement() .hasAchieved(learningdimension("sublearningdimension"))), filter("bound(" + achievement() + ")");
  • 14. Service  Orienta4on http://www.flickr.com/photos/camknows/4712191684
  • 15. “A  Service  Oriented  Architecture  is  comprised  of   independently  defined  components,  providing   services  through  agreed-­‐upon  interfaces.   Components  can  in  turn  have  dependencies  on  other   services.” http://www.flickr.com/photos/camknows/4712191684
  • 16. Service  Orienta4on • Mo.va.on • Isola.on  &  decoupling • (Coping  with  or  causing)   B A dynamic  composi.on binding • Vocabulary • Service,  component,   mandatory/op.onal   dependency • Excluded • Rules • Discovery • Services  are  self-­‐contained • Orchestra.on • Interfaces  are  defined   • Communica.on   beforehand method
  • 18. Service Module Lifecycle Framework
  • 19. More  on  OSGi • Defines  a  framework • Bundles  (components)  are  Java  jar  files • Contain  code,  metadata,  and  arbitrary  data Hall et al. C rea tin g M odu lar A ppl ica tio ns in J ava OSGi IN ACTION Richard S. Hall Karl Pauls Stuart McCulloch David Savage FOREWORD BY PETER KRIENS MANNING MANNING
  • 21. • Code  centric • Data  never  dies,  but  code  can  go • Plugging  axioms  and  entailments
  • 22.
  • 23. • Allows  (de-­‐)installa.on  of  components • Respects  the  service  dependency  tree • Tradeoffs • Transform  data,  or  pay  with  code  complexity
  • 24. Versioning Semantic Versioning • Code:  we’re  ge[ng  there Technical Whitepaper Revision 1.0 May 6, 2010 • Major/minor/micro • Ontologies:  version  from  the   start • Closed  system?  Place  addi.ons  in   © 2010 OSGi Alliance All Rights Reserved. same  version • Open  system?  Bump  version  on   every  change  (but  minimize  those)
  • 25. In  short • Code  and  data  can  learn  from  each  other • Evolve  code  and  data  together • Package  them  together • Consider  your  versioning  scheme • Do,  or  don’t,  worry  about  interchangeability
  • 26. Evolving  systems  and   the  link  to  service   orienta4on Angelo  van  der  Sijpt angelo.vandersijpt@luminis.eu http://www.flickr.com/photos/98469445@N00/327471676/