Skip to main content

Reducing Complexity in Service Development and Integration

  • Conference paper
  • First Online:
  • 448 Accesses

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 512))

Abstract

The continuous growth and increasing complexity of distributed systems software has produced a need for software development tools and techniques that reduce the learning requirements and complexity of building distributed systems. In this work we address reduction of complexity in service-oriented software development and present an approach and a toolkit for multi-language service development based on three building blocks: a simplified service description language, an intuitive message serialization and transport protocol, and a set of code generation techniques that provide boilerplate environments for service implementations. The toolkit is intended for use in the eScience domain and is presented along with a performance evaluation that quantifies toolkit performance against that of selected alternative toolkits and technologies for service development. Toolkit performance is found to be comparable to or improve upon the performance of evaluated technologies.

This is a preview of subscription content, log in via an institution.

Notes

  1. 1.

    This paper is an invited extended version of the paper Creo: Reduced Complexity Service Development presented at CLOSER 2014.

  2. 2.

    Computationally intensive science in highly distributed network environments.

References

  1. Apache, Apache Web Services Project - Axis2, July 2014. http://ws.apache.org/axis2

  2. Apache, Apache Avro, July 2014. http://avro.apache.org/

  3. Apache, Apache Thrift, July 2014. http://thrift.apache.org/

  4. Armbrust, M., Fox, A., Griffith, R., Joseph, A.D., Katz, R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A., Stoica, I., et al.: A view of cloud computing. Commun. ACM 53(4), 50–58 (2010)

    Article  Google Scholar 

  5. Berl, A., Gelenbe, E., Di Girolamo, M., Giuliani, G., De Meer, H., Dang, M.Q., Pentikousis, K.: Energy-efficient cloud computing. Comput. J. 53(7), 1045–1051 (2010)

    Article  Google Scholar 

  6. Birrell, A.D., Nelson, B.J.: Implementing remote procedure calls. ACM Trans. Comput. Syst. (TOCS) 2(1), 39–59 (1984)

    Article  Google Scholar 

  7. Esoteric Software, Kryo, July 2014. https://github.com/EsotericSoftware/kryo

  8. Fielding, R.T.: Architectural styles and the design of network-based software architectures. Ph.D thesis, University of California (2000)

    Google Scholar 

  9. Furuhashi, S.: MessagePack, July 2014. https://github.com/msgpack/msgpack/

  10. Google, Protocol Buffers, July 2014. https://developers.google.com/protocol-buffers/

  11. Govindaraju, M., Slominski, A., Chiu, K., Liu, P., Van Engelen, R., Lewis, M.J.: Toward characterizing the performance of SOAP toolkits. In: Proceedings of the Fifth IEEE/ACM International Workshop on Grid Computing, pp. 365–372. IEEE (2004)

    Google Scholar 

  12. Jackson, July 2014. https://github.com/FasterXML/jackson

  13. Kephart, J.O., Chess, D.M.: The vision of autonomic computing. Computer 36, 41–50 (2003)

    Article  Google Scholar 

  14. Mackey, A.: Windows communication foundation. In: Introducing. NET 4.0, pp. 159–173. Springer (2010)

    Google Scholar 

  15. MongoDB Inc., BSON, July 2014. http://bsonspec.org

  16. Oracle, Java Object Serialization, July 2014. http://docs.oracle.com/javase/7/docs/platform/serialization/spec/serialTOC.html

  17. Östberg, P.-O., Elmroth, E.: Increasing flexibility and abstracting complexity in service-based grid and cloud software. In: Ivanov, I., Leymann, F., van Sinderen, M., Shishkov, B. (eds.) Proceedings of CLOSER 2011 - International Conference on Cloud Computing and Services Science, pp. 240–249. SciTePress, Noordwijkerhout (2011)

    Google Scholar 

  18. Östberg, P.-O., Espling, D., Elmroth, E.: Decentralized scalable fairshare scheduling. Future Gener. Comput. Syst. - Int. J. Grid Comput. eScience 29, 130–143 (2013)

    Article  Google Scholar 

  19. Östberg, P.-O., Hellander, A., Drawert, B., Elmroth, E., Holmgren, S., Petzold, L.: Reducing complexity in management of escience computations. In: Proceedings of CCGrid 2012 - The 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, pp. 845–852 (2012)

    Google Scholar 

  20. Pautasso, C., Zimmermann, O., Leymann, F.: Restful web services vs. big web services: making the right architectural decision. In: Proceedings of the 17th International Conference on World Wide Web, pp. 805–814. ACM (2008)

    Google Scholar 

  21. Restlet, Restlet Framework, July 2014. http://restlet.org

  22. Slee, M., Agarwal, A., Kwiatkowski, M.: Thrift: scalable cross-language services implementation. Facebook White Pap. 5, 8 (2007)

    Google Scholar 

  23. Van Deursen, A., Klint, P., Visser, J.: Domain-specific languages: an annotated bibliography. sigplan Not. 35(6), 26–36 (2000)

    Article  Google Scholar 

  24. Vinoski, S.: Distributed object computing with CORBA. C++ Rep. 5(6), 32–38 (1993)

    Google Scholar 

  25. Walker, E.: The real cost of a CPU hour. Computer 42(4), 35–41 (2009)

    Article  Google Scholar 

  26. Wollrath, A., Riggs, R., Waldo, J.: A distributed object model for the Java system. Comput. Syst. 9, 265–290 (1996)

    Google Scholar 

Download references

Acknowledgements

The authors acknowledge Mikael Öhman, Sebastian Gröhn, and Anders Häggström for work related to the project. This work is done in collaboration with the High Performance Computing Center North (HPC2N) and is funded by the Swedish Government’s strategic research project eSSENCE and the Swedish Research Council (VR) under contract number C0590801 for the project Cloud Control.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Per-Olov Östberg .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Östberg, PO., Lockner, N. (2015). Reducing Complexity in Service Development and Integration. In: Helfert, M., Desprez, F., Ferguson, D., Leymann, F., Méndez Munoz, V. (eds) Cloud Computing and Services Sciences. CLOSER 2014. Communications in Computer and Information Science, vol 512. Springer, Cham. https://doi.org/10.1007/978-3-319-25414-2_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-25414-2_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-25413-5

  • Online ISBN: 978-3-319-25414-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics