Service Platforms

Traditionally, there are two approaches for building service-oriented systems: the point-to-point integration and the hub-and-spoke approach (Papazoglou & Van Den Heuvel, 2007). In the latter approach, which is more sophisticated, a so-called service platform functions as the backbone of the system, being in charge of particular tasks, which appear in almost every service-oriented system. Such tasks cover the service registry (service search and discovery), service deployment (starting / stopping of services), service address resolution, and service monitoring and logging (Papageorgiou et al., 2011). Therefore, the development of new service-oriented systems is often based on existing state of the art service platforms, such as the WebSphere Enterprise Service Bus (IBM, 2013) or the open-source service platform Apache Tuscany (Apache Tuscany, 2013).

Besides these traditional platforms, a relatively new approach of modular-based computing exists, which is defined by the OSGi Alliance (OSGi Alliance, 2014). The OSGi Alliance proposes a dynamic component system for Java Virtual Machine based languages by reducing software complexity while providing a modular architecture. While OSGi per se only provides a specification, there are two major implementations available, namely: Eclipse Equinox (Eclipse Equinox, 2014) and Apache Felix (Apache Felix, 2014). Around these OSGi core framework implementations, other parties created more powerful service platforms such as Apache Karaf (Apache Karaf, 2014) or Apache Service Mix (Apache Service Mix, 2014). They provide a lightweight container onto which various OSGi-based components and applications can be deployed. This enables useful features for service-oriented computing such as reliable messaging, hot deployment of services, dynamic configurations, or monitoring. The most popular Platform as a Service (PaaS) solution can be found within the Amazon Web Services (AWS) eco-system (Amazon Web Services, 2014), like AWS Elastic Beanstalk (AWS Elastic Beanstalk, 2014), but also the Google App Engine (Google App Engine, 2014) or Heroku (Heroku, 2014) are very popular.

Specific needs issued by specialized use case scenarios often lead to service platform extensions that serve use case-related purposes. Therefore, solutions have been proposed that enrich service platforms with network- and medium-aware service orchestration (Bradley & Maher, 2004), self-healing mechanisms in cases of sudden heavy loads (Papageorgiou et al., 2010) or mobility-aware selection of service communication protocols (Zoubairi et al., 2011).
 
Not only service platform extensions, but also new service platform architectures have been proposed. The SoKNOS project (SoKNOS, 2013), for instance, considered the handling of disaster scenarios, in which the system operation is characterized by bursts of activity when the disaster occurs. Service invocations, as well as a huge number of events, may suddenly arise. To deal with these numerous events, the platform has been extended with additional modules to cover fault tolerance. Besides fault tolerant architectures, there are also other projects like MOBINET (MOBINET, 2014), which extends the traditional service platforms by special purpose components, like a billing infrastructure or an identity manager.In the domain of organizing transport means and travels, these two components have the same relevance as service registries and therefore ease the integration of future services for the developers.

In order to meet the needs of the telecommunications domain, an extended service bus has been proposed by (Chen et al., 2008). This proposed service bus introduces a set of services, which is tailored to the billing systems used by telecommunications providers.


References and Further Reading



[1]
MOBINET, “MOBINET,” 2014. [Online]. Available: http://www.mobinet.eu.

[2]
Heroku, “Heroku,” 2014. [Online]. Available: https://www.heroku.com.

[3]
Google App Engine, “Google App Engine,” 2014. [Online]. Available: https://cloud.google.com/appengine/.

[4]
AWS Elastic Beanstalk, “AWS Elastic Beanstalk,” 2014. [Online]. Available: http://servicemix.apache.org/index.html.

[5]
Amazon Web Services, “Amazon Web Services,” 2014. [Online]. Available: http://aws.amazon.com.

[6]
Apache Service Mix, “Apache Service Mix,” 2014. [Online]. Available: http://servicemix.apache.org/index.html.

[7]
P. Mell and T. Grance, “The NIST definition of cloud computing,” National Institute of Standards and Technology (NIST), Gaithersburg, 800-145, 2011.

[8]
Apache Karaf, “Apache Karaf,” 2014. [Online]. Available: https://karaf.apache.org/. [Accessed: 02-Mar-2014].

[9]
Apache Felix, “Apache Felix,” 2014. [Online]. Available: https://felix.apache.org/. [Accessed: 02-Mar-2014].

[10]
Equinox Eclipse, “Eclipse Equinox,” 2014. [Online]. Available: http://www.eclipse.org/equinox/. [Accessed: 02-Mar-2014].

[11]
Alliance OSGi, “OSGi Alliance,” 2014. [Online]. Available: http://www.osgi.org/About/HomePage. [Accessed: 02-Mar-2014].

[12]
SoKNOS, “SoKNOS: Home,” 2013. [Online]. Available: http://www.soknos.de/. [Accessed: 08-Mar-2013].

[13]
Apache Tuscany, “Apache Tuscany,” 2013. [Online]. Available: http://tuscany.apache.org/. [Accessed: 08-Mar-2013].

[14]
IBM, “IBM - WebSphere Enterprise Service Bus - Software,” 08-Mar-2013. [Online]. Available: http://www-01.ibm.com/software/integration/wsesb/. [Accessed: 08-Mar-2013].

[15]
I.-Y. Chen, G.-K. Ni, and C.-Y. Lin, “A runtime-adaptable service bus design for telecom operations support systems,” IBM Systems Journal, vol. 47, no. 3, pp. 445–456, 2008.

[16]
W. B. Bradley and D. P. Maher, “The NEMO P2P service orchestration framework,” in System Sciences, 2004. Proceedings of the 37th Annual Hawaii International Conference on, 2004, p. 10–pp.

[17]
R. Zoubairi, Z. Jarir, and M. Erradi, “Dynamic QoS management in mobile services framework,” in Multimedia Computing and Systems (ICMCS), 2011 International Conference on, 2011, pp. 1–6.

[18]
A. Papageorgiou, T. Krop, S. Ahlfeld, S. Schulte, J. Eckert, and R. Steinmetz, “Enhancing availability with self-organization extensions in a SOA platform,” in Internet and Web Applications and Services (ICIW), 2010 Fifth International Conference on, 2010, pp. 161–166.

[19]
A. Papageorgiou, T. Krop, S. Ahlfeld, S. Schulte, J. Eckert, and R. Steinmetz, “Enhancing Availability through Dynamic Monitoring and Management in a Self-Adaptive SOA Platform,” International Journal On Advances in Software, vol. 3, no. 3 and 4, pp. 434–446, 2011.

[20]
M. P. Papazoglou and W.-J. Van Den Heuvel, “Service oriented architectures: approaches, technologies and research issues,” The VLDB journal, vol. 16, no. 3, pp. 389–415, 2007.