developing services in a service oriented architecture for eas
DESCRIPTION
Presentation at EVOSOFT workshop in GECCO 2013 conferenceTRANSCRIPT
![Page 1: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/1.jpg)
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
![Page 2: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/2.jpg)
Agenda
Frameworks
Service Oriented Architecture
Design principles
Technology
Example of development
domingo 7 de julio de 2013
![Page 3: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/3.jpg)
State of the Art
EasyLocal, SIGMA, ECJ, MALLBA, DREAM, Algorithm::Evolutionary, ParadiseEO, OpenBeagle, HeuristicLab, METCO, jMetal, GAlib, GridUFO...
domingo 7 de julio de 2013
![Page 4: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/4.jpg)
SOA
domingo 7 de julio de 2013
![Page 5: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/5.jpg)
Services
Input/output functions
Must not have state
Order not defined
Designed as abstract as possible
domingo 7 de julio de 2013
![Page 6: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/6.jpg)
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
![Page 7: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/7.jpg)
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
![Page 8: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/8.jpg)
OSGi
Specification for SOA in VMs
Packet abstraction
Versioning
Dynamic components
domingo 7 de julio de 2013
![Page 9: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/9.jpg)
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
![Page 10: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/10.jpg)
Step 1: Bundle creation
MANIFEST.MF
Service description files
Interfaces
Implementation classes
domingo 7 de julio de 2013
![Page 11: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/11.jpg)
Step 2: Implementing services
domingo 7 de julio de 2013
![Page 12: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/12.jpg)
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
![Page 13: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/13.jpg)
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
![Page 14: Developing services in a Service Oriented Architecture for EAs](https://reader035.vdocument.in/reader035/viewer/2022062419/559b82a11a28ab12458b458f/html5/thumbnails/14.jpg)
Thanks!
(and follow @osgiliathSOA!)
domingo 7 de julio de 2013