[go: up one dir, main page]

Skip to main content

Engineering Cloud-Based Applications: Towards an Application Lifecycle

  • Conference paper
  • First Online:
Advances in Service-Oriented and Cloud Computing (ESOCC 2017)

Abstract

The adoption of cloud computing by organizations of all sizes and types in the recent years has created multiple opportunities and challenges for the development of software to be used in this environment. In this work-in-progress paper, the focus is on the latter part, providing a view on the main research challenges that are created for software engineering by cloud computing. These challenges stem from the inherent characteristics of the cloud computing paradigm, and require a multi-dimensional approach to address them. Towards this goal, a lifecycle for cloud-based applications is presented, as the foundation for further work in the area.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    Thoughtworks Tech Radar, May 2015: https://assets.thoughtworks.com/assets/technology-radar-may-2015-en.pdf.

  2. 2.

    Jenkinks: https://jenkins.io/.

  3. 3.

    Chef: https://www.chef.io/.

  4. 4.

    Ansible: https://www.ansible.com/.

  5. 5.

    Docker: https://www.docker.com/.

  6. 6.

    For example: Microservices, by James Lewis and Martin Fowler (March 2014): https://martinfowler.com/articles/microservices.html.

  7. 7.

    See for example: http://www.computerweekly.com/microscope/news/4500271376/Whatever-the-cost-may-be-Cloud-price-war-continues.

  8. 8.

    See https://www.wired.com/2016/03/epic-story-dropboxs-exodus-amazon-cloud-empire/.

  9. 9.

    Netflix Global Cloud Architecture: https://www.slideshare.net/adrianco/netflix-global-cloud, slide 26.

  10. 10.

    Amazon Relational Database Service: https://aws.amazon.com/rds/.

  11. 11.

    JBoss: http://www.jboss.org/.

  12. 12.

    Amazon EC2: https://aws.amazon.com/ec2/.

References

  1. Aceto, G., Botta, A., De Donato, W., Pescapè, A.: Cloud monitoring: a survey. Comput. Netw. 57(9), 2093–2115 (2013)

    Article  Google Scholar 

  2. Andrikopoulos, V., Binz, T., Leymann, F., Strauch, S.: How to adapt applications for the cloud environment. Computing 95(6), 493–535 (2013)

    Article  Google Scholar 

  3. Andrikopoulos, V., Bucchiarone, A., Di Nitto, E., Kazhamiakin, R., Lane, S., Mazza, V., Richardson, I.: Service engineering. In: Papazoglou, M.P., Pohl, K., Parkin, M., Metzger, A. (eds.) Service Research Challenges and Solutions for the Future Internet. LNCS, vol. 6500, pp. 271–337. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-17599-2_8

    Chapter  Google Scholar 

  4. Andrikopoulos, V., Gómez Sáez, S., Leymann, F., Wettinger, J.: Optimal distribution of applications in the cloud. In: Jarke, M., Mylopoulos, J., Quix, C., Rolland, C., Manolopoulos, Y., Mouratidis, H., Horkoff, J. (eds.) CAiSE 2014. LNCS, vol. 8484, pp. 75–90. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-07881-6_6

    Google Scholar 

  5. Ardagna, D., Di Nitto, E., Casale, G., Petcu, D., et al.: MODACLOUDS: a model-driven approach for the design and execution of applications on multiple clouds. In: Proceedings of the 4th International Workshop on Modeling in Software Engineering, MiSE 2012, pp. 50–56. IEEE Press, Piscataway (2012)

    Google Scholar 

  6. Armbrust, M., Fox, A., Griffith, R., Joseph, A.D., et al.: Above the clouds: a Berkeley view of cloud computing. Technical report UCB/EECS-2009-28, EECS Department, University of California, Berkeley, February 2009. http://www2.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.html

  7. Baryannis, G., Garefalakis, P., Kritikos, K., Magoutis, K., et al.: Lifecycle management of service-based applications on multi-clouds: a research roadmap. In: Proceedings of the 2013 International Workshop on Multi-cloud Applications and Federated Clouds, pp. 13–20. ACM (2013)

    Google Scholar 

  8. Bass, L., Weber, I., Zhu, L.: DevOps: A Software Architect’s Perspective. Addison-Wesley Professional, Old Tappan (2015)

    Google Scholar 

  9. Binnig, C., Kossmann, D., Kraska, T., Loesing, S.: How is the weather tomorrow?: towards a benchmark for the cloud. In: Proceedings of the Second International Workshop on Testing Database Systems, p. 9. ACM (2009)

    Google Scholar 

  10. Bouguettaya, A., Singh, M., Huhns, M., Sheng, Q.Z., et al.: A service computing manifesto: the next 10 years. Commun. ACM 60(4), 64–72 (2017)

    Article  Google Scholar 

  11. Cavage, M.: There’s just no getting around it: you’re building a distributed system. Queue 11(4), 30 (2013)

    Google Scholar 

  12. Erl, T.: SOA: Principles of Service Design. Prentice Hall Press, Upper Saddle River (2007)

    Google Scholar 

  13. Ferry, N., Solberg, A.: Models@ runtime for continuous design and deployment. In: Di Nitto, E., Matthews, P., Petcu, D., Solberg, A. (eds.) Model-Driven Development and Operation of Multi-Cloud Applications, pp. 81–94. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-46031-4_9

    Chapter  Google Scholar 

  14. Folkerts, E., Alexandrov, A., Sachs, K., Iosup, A., Markl, V., Tosun, C.: Benchmarking in the cloud: what it should, can, and cannot be. In: Nambiar, R., Poess, M. (eds.) TPCTC 2012. LNCS, vol. 7755, pp. 173–188. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-36727-4_12

    Chapter  Google Scholar 

  15. Heinrich, R., Schmieders, E., Jung, R., Rostami, K., et al.: Integrating run-time observations and design component models for cloud system analysis. In: Proceedings of the 9th Workshop on Models@run.time, vol. 1270, pp. 41–46. CEUR (2014)

    Google Scholar 

  16. Hüttermann, M.: Infrastructure as Code, pp. 135–156. Apress, Berkeley (2012)

    Google Scholar 

  17. Iosup, A., Yigitbasi, N., Epema, D.: On the performance variability of production cloud services. In: 2011 11th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid), pp. 104–113. IEEE (2011)

    Google Scholar 

  18. Jula, A., Sundararajan, E., Othman, Z.: Cloud computing service composition: a systematic literature review. Expert Syst. Appl. 41(8), 3809–3824 (2014)

    Article  Google Scholar 

  19. Kashef, M.M., Altmann, J.: A cost model for hybrid clouds. In: Vanmechelen, K., Altmann, J., Rana, O.F. (eds.) GECON 2011. LNCS, vol. 7150, pp. 46–60. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-28675-9_4

    Chapter  Google Scholar 

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

    Article  MathSciNet  Google Scholar 

  21. Kratzke, N., Quint, P.C.: Understanding cloud-native applications after 10 years of cloud computing-a systematic mapping study. J. Syst. Softw. 126, 1–16 (2017)

    Article  Google Scholar 

  22. Li, A., Yang, X., Kandula, S., Zhang, M.: CloudCmp: comparing public cloud providers. In: Proceedings of the 10th Annual Conference on Internet Measurement, IMC 2010, pp. 1–14. ACM, New York (2010). http://doi.acm.org/10.1145/1879141.1879143

  23. Linthicum, D.S.: Moving to autonomous and self-migrating containers for cloud applications. IEEE Cloud Comput. 3(6), 6–9 (2016)

    Article  Google Scholar 

  24. Mell, P., Grance, T., et al.: The NIST definition of cloud computing. NIST Special Publication 800–145 (2011). http://dx.doi.org/10.6028/NIST.SP.800-145

  25. Moldovan, D., Truong, H.L., Dustdar, S.: Cost-aware scalability of applications in public clouds. In: 2016 IEEE International Conference on Cloud Engineering (IC2E), pp. 79–88. IEEE (2016)

    Google Scholar 

  26. Munteanu, V.I., Fortis, T.F., Negru, V.: Service lifecycle in the cloud environment. In: 2012 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC), pp. 457–464. IEEE (2012)

    Google Scholar 

  27. Newman, S.: Building microservices. O’Reilly Media, Inc., Sebastopol (2015)

    Google Scholar 

  28. Nguyen, D.K., Lelli, F., Papazoglou, M.P., Van Den Heuvel, W.J.: Blueprinting approach in support of cloud computing. Future Internet 4(1), 322–346 (2012)

    Article  Google Scholar 

  29. Pahl, C., Jamshidi, P.: Software architecture for the cloud – a roadmap towards control-theoretic, model-based cloud architecture. In: Weyns, D., Mirandola, R., Crnkovic, I. (eds.) ECSA 2015. LNCS, vol. 9278, pp. 212–220. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-23727-5_17

    Chapter  Google Scholar 

  30. Papazoglou, M.P., Traverso, P., Dustdar, S., Leymann, F.: Service-oriented computing: state of the art and research challenges. Computer 40(11), 38–45 (2007)

    Article  Google Scholar 

  31. RightScale: RightScale 2017 State of the Cloud Report (2017). https://www.rightscale.com/lp/state-of-the-cloud

  32. Schad, J., Dittrich, J., Quiané-Ruiz, J.A.: Runtime measurements in the cloud: observing, analyzing, and reducing variance. Proc. VLDB Endow. 3(1–2), 460–471 (2010)

    Article  Google Scholar 

  33. van Steen, M., Tanenbaum, A.S.: A brief introduction to distributed systems. Computing 98(10), 967–1009 (2016)

    Article  MathSciNet  MATH  Google Scholar 

  34. Sun, L., Dong, H., Hussain, F.K., Hussain, O.K., Chang, E.: Cloud service selection: state-of-the-art and future research directions. J. Netw. Comput. Appl. 45, 134–150 (2014)

    Article  Google Scholar 

  35. Tang, K., Zhang, J.M., Feng, C.H.: Application centric lifecycle framework in cloud. In: 2011 IEEE 8th International Conference on e-Business Engineering (ICEBE), pp. 329–334. IEEE (2011)

    Google Scholar 

  36. Tran, H.T., Feuerlicht, G.: Service repository for cloud service consumer life cycle management. In: Dustdar, S., Leymann, F., Villari, M. (eds.) ESOCC 2015. LNCS, vol. 9306, pp. 171–180. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-24072-5_12

    Chapter  Google Scholar 

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

    Article  Google Scholar 

  38. Weinman, J.: Cloudonomics: a rigorous approach to cloud benefit quantification. J. Softw. Technol. 14(4), 10–18 (2011)

    Google Scholar 

  39. Zhang, Q., Cheng, L., Boutaba, R.: Cloud computing: state-of-the-art and research challenges. J. Internet Serv. Appl. 1(1), 7–18 (2010)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vasilios Andrikopoulos .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Andrikopoulos, V. (2018). Engineering Cloud-Based Applications: Towards an Application Lifecycle. In: Mann, Z., Stolz, V. (eds) Advances in Service-Oriented and Cloud Computing. ESOCC 2017. Communications in Computer and Information Science, vol 824. Springer, Cham. https://doi.org/10.1007/978-3-319-79090-9_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-79090-9_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-79089-3

  • Online ISBN: 978-3-319-79090-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics