Upload
pablo-garcia
View
767
Download
2
Embed Size (px)
DESCRIPTION
Presentation at EVOSOFT workshop in GECCO 2013 conference
Citation preview
Developing services in a Service Oriented Architecture for EAsP. García-Sánchez, M. G. Arenas, A. M. Mora, P. A.
Castillo, C. Fernandes, P. de las Cuevas, G. Romero and JJ. Merelo
[email protected]@osgiliathSOA
domingo 7 de julio de 2013
Agenda
Frameworks
Service Oriented Architecture
Design principles
Technology
Example of development
domingo 7 de julio de 2013
State of the Art
EasyLocal, SIGMA, ECJ, MALLBA, DREAM, Algorithm::Evolutionary, ParadiseEO, OpenBeagle, HeuristicLab, METCO, jMetal, GAlib, GridUFO...
domingo 7 de julio de 2013
SOA
domingo 7 de julio de 2013
Services
Input/output functions
Must not have state
Order not defined
Designed as abstract as possible
domingo 7 de julio de 2013
Design principlesNot global variables. Example: not use a fitness with a counter.
Undistinguishable from local or remote. Example: Population or Parameters
Request response function. Example: list of fitness in Fitness service
Not make assumptions in order. Example: calculate fitness with each change
domingo 7 de julio de 2013
Other technological restrictions
Services can be dynamically bound
Services can appear or disappear in execution time
Not specific source code for distribution must be added in the code
domingo 7 de julio de 2013
OSGi
Specification for SOA in VMs
Packet abstraction
Versioning
Dynamic components
domingo 7 de julio de 2013
OSGiLiathBased in SOA-EA: Service Oriented Evolutionary Algorithms, Soft. Comp. 2013.
OSGi Laboratory for implementation and testing of heuristics
Based in OSGi:
Event administration
Declarative Services
ECF
domingo 7 de julio de 2013
Step 1: Bundle creation
MANIFEST.MF
Service description files
Interfaces
Implementation classes
domingo 7 de julio de 2013
Step 2: Implementing services
domingo 7 de julio de 2013
Step 3: adding communication
Discovery (Zeroconf, Zookeeper...) and distribution (R-OSGi, ActiveMQ, REST, SOAP...)
Not code added for distribution/modification
domingo 7 de julio de 2013
Conclusions
SOA offers independence of language, distribution or OS
Services must be designed taking into account stateless behavior, unordered execution and volatile existence
OSGi fulfills the previous requirements
Future work: scalability, service aggregation, integration with other frameworks
domingo 7 de julio de 2013
Thanks!
(and follow @osgiliathSOA!)
domingo 7 de julio de 2013