The document discusses evolving systems and their link to service orientation. It will cover using semantic data in a service-oriented architecture, the theory behind service orientation, and how to combine semantic data and service orientation. It will include elements of theory, technology and code examples. The presentation will be given by Angelo van der Sijpt and will explore these topics.
Evolving systems and the link to service orientation
1. Evolving systems and
the link to service
orienta4on
What will I show?
- A case of using semantic
data
- theory behind service
orientation
- And how to marry those
Also, note that there will be
some theory, some
technology, some code
...and the search for a shorter 4tle
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
• SoAware engineer at Luminis
Technologies
• angelo.vandersijpt@luminis.eu
• Buzzwords: Java, OSGi, Agile
3. Adaptive Recommended
Learning
Tell about ARLs vision: “we
cannot let students learn in this
way,” in which ‘s tudents’ is
interpreted broadly.
The core pattern looks about
the same for everyone; ramble
ARL about the axes of ‘institute-
personal’ and ‘s chool-work’ ; the
only differences are (mainly) in
presentation.
http://www.flickr.com/photos/shonk/57302289/
18. !"#
• “Where is this student compared to his class?”
)*
!"
'(
#$
%&
%&
'(
• “What learning style do I have?”
#$
)"
!"
!"
& #$%
'()
*!
• “Who else has problems with this?”
!"#$%&
"'()*+
• “What should I do now?”
http://www.flickr.com/photos/jeffsmallwood/233853485
19. The profile service
Ramble a bit about profiling:
building a picture of a user
over time, by gathering
data. We don’t know the
questions we’re going to ask,
and we don’t know the data
we want to put in there.
http://www.flickr.com/photos/crazyneighborlady/411869140/
20. • Pluggable
• Evolvable Driven by code: we want
code usage to be leading,
supporting changes in
• Driven by code
underlying data
21. 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");
23. 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( Point out
- a more involved example
education() - better readable than Sparql
.consistsOf(achievement()), - note how we extend the Person
class here (we have defined a ‘p’
achievement() outside of this scope)
.hasAchieved(learningdimension("sublearningdimension"))),
filter("bound(" + achievement() + ")");
24. Service Orienta4on
Poll: what do you think of
when I say “SOA”?
Explain that SOA is not REST,
not web services, but an
architectural style in its
own. Manifestations from
large to small.
http://www.flickr.com/photos/camknows/4712191684
31. Service Orienta4on
• Mo4va4on
• Isola4on & decoupling
• (Coping with or causing) ' &
dynamic composi4on to ramble about:
Something
difference bet ween SOA and !"#$"#%
• Vocabulary Ser vice Orientation
• Service, component,
mandatory/op4onal
dependency • Excluded
• Rules • Discovery
• Services are self‐contained • Orchestra4on
• Interfaces are defined • Communica4on
beforehand method
32. Services aren’t big
The dependency tree
http://www.flickr.com/photos/artolog/313055444/
33. Services aren’t big
The dependency tree
http://www.flickr.com/photos/artolog/313055444/
34. TODO think up the backstory here,
how do we work in OSGi?
TODO how do we work in Amdatu?
Describe the notion of a ‘s ervice
component’.
For services to work, we need to
define how they communicate.
We can as well package that up.
Look, we invented OSGi!; now
describe the layers.
35. TODO think up the backstory here,
how do we work in OSGi?
TODO how do we work in Amdatu?
Describe the notion of a ‘s ervice
component’.
For services to work, we need to
define how they communicate.
We can as well package that up.
Look, we invented OSGi!; now
describe the layers.
36. TODO think up the backstory here,
how do we work in OSGi?
TODO how do we work in Amdatu?
Describe the notion of a ‘s ervice
component’.
For services to work, we need to
define how they communicate.
We can as well package that up.
Look, we invented OSGi!; now
describe the layers.
37. TODO think up the backstory here,
how do we work in OSGi?
TODO how do we work in Amdatu?
Describe the notion of a ‘s ervice
component’.
!"#$%&'"(
For services to work, we need to
define how they communicate.
We can as well package that up.
Look, we invented OSGi!; now
describe the layers.
38. TODO think up the backstory here,
how do we work in OSGi?
!"#$%&%'$
TODO how do we work in Amdatu?
Describe the notion of a ‘s ervice
component’.
!"#$%&'"(
For services to work, we need to
define how they communicate.
We can as well package that up.
Look, we invented OSGi!; now
describe the layers.
39. !"#$%&
TODO think up the backstory here,
how do we work in OSGi?
!"#$%&%'$
TODO how do we work in Amdatu?
Describe the notion of a ‘s ervice
component’.
!"#$%&'"(
For services to work, we need to
define how they communicate.
We can as well package that up.
Look, we invented OSGi!; now
describe the layers.
40. !"#$%&"
!"#$%&
TODO think up the backstory here,
how do we work in OSGi?
!"#$%&%'$
TODO how do we work in Amdatu?
Describe the notion of a ‘s ervice
component’.
!"#$%&'"(
For services to work, we need to
define how they communicate.
We can as well package that up.
Look, we invented OSGi!; now
describe the layers.
41. More on OSGi
So: we can put semantic data in
here!
• 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
42. More on OSGi
So: we can put semantic data in
here!
• 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
51. Evolving systems and
the link to service
orienta4on
Angelo van der Sijpt
angelo.vandersijpt@luminis.eu
http://www.flickr.com/photos/98469445@N00/327471676/
Notas del editor
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
This is the definition we will stick with. You may have noticed that I left out anything that has to do with using services from others; this is because (a) it is hard enough to use your own services well, and (b) I don&#x2019;t believe this is inherent to the style. It&#x2019;s a benefit.\n\nLet&#x2019;s first look at a number of manifestations.\n
This is the definition we will stick with. You may have noticed that I left out anything that has to do with using services from others; this is because (a) it is hard enough to use your own services well, and (b) I don&#x2019;t believe this is inherent to the style. It&#x2019;s a benefit.\n\nLet&#x2019;s first look at a number of manifestations.\n
This is the definition we will stick with. You may have noticed that I left out anything that has to do with using services from others; this is because (a) it is hard enough to use your own services well, and (b) I don&#x2019;t believe this is inherent to the style. It&#x2019;s a benefit.\n\nLet&#x2019;s first look at a number of manifestations.\n
This is the definition we will stick with. You may have noticed that I left out anything that has to do with using services from others; this is because (a) it is hard enough to use your own services well, and (b) I don&#x2019;t believe this is inherent to the style. It&#x2019;s a benefit.\n\nLet&#x2019;s first look at a number of manifestations.\n
This is the definition we will stick with. You may have noticed that I left out anything that has to do with using services from others; this is because (a) it is hard enough to use your own services well, and (b) I don&#x2019;t believe this is inherent to the style. It&#x2019;s a benefit.\n\nLet&#x2019;s first look at a number of manifestations.\n