Skip to main content
Log in

Levering object-oriented knowledge for service-oriented proficiency

Enhancing service capability in developers

  • Published:
Computing Aims and scope Submit manuscript

Abstract

As more and more enterprise systems endeavour to interconnect seamlessly by using a service-oriented architecture (SOA) a number of challenges are beginning to surface as a result of the differences in understanding between object-orientated programming (OOP) and service-orientation in technical development teams. These differences are thus explored to determine the potential of subsidising gaps in knowledge through relational learning in order to better prepare development environments for service migration. It emerges that the principles of service-oriented programming can be used within OOP by selectively identifying the existing knowledge found within object-orientation and traditional programming methodologies. The benefit of this approach proposes to lever the expertise of object-oriented developers so as to build service-ready computer software and encourage the seamlessness of SOA.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Allen P (2006) Service orientation: winning stratergies and best practices. Cambridge University Press, New York

    Book  Google Scholar 

  2. Armstrong J (1997) The development of erlang. SIGPLAN Not 32(8):196–203. doi:10.1145/258949.258967

    Article  MathSciNet  Google Scholar 

  3. Arsanjani A (2005) Toward a pattern language for service-oriented architecture and integration, part 1: build a service eco-system. http://www.ibm.com/developerworks/webservices/library/ws-soa-soi/. Accessed 30 October 2011

  4. Baarda PJ (2008) Your SOA needs a business case. http://www.via-nova-architectura.org/files/magazine/baarda.pdf. Accessed 18 February 2012

  5. Bär H, Ciupke O (1998) Exploiting design heuristics for automatic problem detection. In: Workshop ion on object-oriented technology, ECOOP ’98. Springer, Berlin, pp 73–74

  6. Brown P (2008) Implementing SOA: total architecture in practice. TIBCO Press Series, Prentice Hall

    Google Scholar 

  7. Buck D, Stucki DJ (2000) Design early considered harmful: graduated exposure to complexity and structure based on levels of cognitive development. SIGCSE Bull 32(1):75–79. doi:10.1145/331795.331817

  8. Clark D (2006) Designing OOP solutions: identifying the class structure. In: Beginning object-oriented programming with VB 2005. Apress, pp 11–30. doi:10.1007/978-1-4302-0095-6

  9. D’Andrea V, Aiello M, Aiello M (2003) Services and objects: open issues. In: European workshop on OO and web service, pp 23–29

  10. Dov D (2007) SOA for services or UML for objects: reconciliation of the battle of giants with object-process methodology. In: SwSTE. IEEE Computer Society, Herzlia, pp 147–156. doi:10.1109/SwSTE.2007.10

  11. Erl T (2007) SOA principles of service design (the Prentice Hall service-oriented computing series from Thomas Erl). Prentice Hall, Upper Saddle River

    Google Scholar 

  12. Erl T (2008) Service-orientation and object-orientation part I: a comparison of goals and concepts. http://www.soamag.com/I15/0208-4.php. Accessed 29 January 2011

  13. Fowler M (1999) Refactoring: improving the design of existing code. Addison-Wesley, Boston

    Google Scholar 

  14. Freeman E, Freeman E, Bates B, Sierra K (2004) Head first design patterns. O’ Reilly & Associates, Inc.

  15. Gamma E, Helm R, Johnson RE, Vlissides J (1994) Design patterns: elements of reusable object-oriented software. Addison-Wesley, Reading

    Google Scholar 

  16. Glen S (2008) Polymorphic web services, part 1: polymorphic data. http://www.ibm.com/developerworks/xml/library/ws-polymorphic/. Accessed 07 December 2012

  17. Goedicke M, Neumann G, Zdun U (2001) Message redirector. In: Proceedings of EuroPloP 2001, sixth European conference on pattern languages of programs, Irsee

  18. Graham I, O’Callaghan A, Wills A (2000) Object-oriented methods: principles and practice. Addison-Wesley Object Technology Series. Addison-Wesley, Reading

    Google Scholar 

  19. Guizzardi G, Wagner G, van Sinderen M (2004) A formal theory of conceptual modeling universals. In: Workshop on philosophy and informatics (WSPI). Deutsches Forchungszentrum fur Kunstliche Intelligenz, Cologne

  20. Hoffman K (2006) Microsoft Visual C# 2005 Unleashed, chap. Designing for service-oriented architectures (SOA). Pearson Education, India

  21. Holland S, Griffiths R, Woodman M (1997) Avoiding object misconceptions. SIGCSE Bull 29(1):131–134. doi:10.1145/268085.268132

    Article  Google Scholar 

  22. IBM (2003) Rational process library. http://www.ibm.com/software/awdtools/rmc/library/. Accessed 05 December 2012

  23. IBM (2004) Service-oriented modeling and architecture. http://www.ibm.com/developerworks/library/ws-soa-design1/. Accessed 07 December 2012

  24. Johnson RE, Foote B (1988) Designing reusable classes. J Object Orient Program 1(2):22–35

    Google Scholar 

  25. Josuttis NM (2007) SOA in practice: the art of distributed system design. O’Reilly, Beijing

    Google Scholar 

  26. Karsten R, Roth RM (1998) The relationship of computer experience and computer self-efficacy to performance in introductory computer literacy courses. J Res Comput Educ 31(1):14–24

    Google Scholar 

  27. Koskela M, Rahikainen M, Wan T (2007) Software development methods: SOA vs. CBD, OO and AOP. http://www.soberit.hut.fi/t-86/t-86.5165/2007/final_koskela_rahikainen_wan.pdf. Accessed 20 December 2010

  28. Marks EA (2008) Service-oriented architecture (SOA) governance for the services driven enterprise. Wiley, New York

  29. Mcbeath J (2010) Scala pros and cons. http://www.scala-lang.org/node/8462. Accessed 30 October 201

  30. Mittal K (2010) Service oriented unified process (soup). http://www.kunalmittal.com/html/soup.html. Accessed 24 December 2012

  31. Papazoglou MP, Heuvel WJ (2007) Service oriented architectures: approaches, technologies and research issues. VLDB J 16(3):389–415. doi:10.1007/s00778-007-0044-3

    Article  Google Scholar 

  32. Papazoglou MP, Traverso P, Ricerca I, Tecnologica S (2007) Service-oriented computing: state of the art and research challenges. IEEE Comput 40:38–45

    Article  Google Scholar 

  33. Ragonis N (2004) Teaching object-oriented programming to novices. Ph.D. thesis, Weizmann Institute of Science

  34. Ragonis N, Ben-Ari M (2005) A long-term investigation of the comprehension of OOP concepts by novices. Comput Sci Educ 15:203–221. doi:10.1080/08993400500224310

    Article  Google Scholar 

  35. Riel AJ (1996) Object-oriented design heuristics, 1st edn. Addison-Wesley, Reading

  36. Rosen M, Lublinsky B, Smith KT, Balcer MJ (2008) Applied SOA: service-oriented architecture and design strategies. Wiley, New York (2008)

  37. Scala (2008) The scala programming language. http://www.scala-lang.org/node/25. Accessed 30 October 2012

  38. Udell J (2005) The spiral staircase of SOA. InfoWorld 27(40):46–46

    Google Scholar 

  39. Voigt J (2009) Characterising the use of encapsulation in object-oriented systems

  40. Yang J, Papazoglou MP (2004) Service components for managing the life-cycle of service compositions. Inf Syst 29(2):97–125. doi:10.1016/S0306-4379(03)00051-6

    Article  Google Scholar 

  41. Zdun U (2008) Pattern-based design of a service-oriented middleware for remote object federations. ACM Trans Internet Technol 8(3):15:1–15:38 (2008). doi:10.1145/1361186.1361191

  42. Zimmermann O (2009) SOA decision modeling (SOAD). http://soadecisions.org/soad.htm. Accessed 17 December 2012

  43. Zimmermann O, Schlimm N, Waller G, Pestel M (2005) Analysis and design techniques for service-oriented development and, integration. pp 606–611

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gary Stubbings.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Stubbings, G., Polovina, S. Levering object-oriented knowledge for service-oriented proficiency. Computing 95, 817–835 (2013). https://doi.org/10.1007/s00607-013-0304-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00607-013-0304-6

Keywords

Mathematics Subject Classification (2000)

Navigation