Advertisement

DevOps Service Observability By-Design: Experimenting with Model-View-Controller

  • Damian A. Tamburri
  • Marcello M. Bersani
  • Raffaela Mirandola
  • Giorgio PeaEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11116)

Abstract

The speeding growth of the IT market and its disruptive technologies, think of DevOps or Microservices, are leading towards using typical design patterns in a completely novel fashion. We consider the Model-View-Controller (MVC) as a target for a controlled refactoring experiment aimed at making it more observable, that is, mutated to be more easily monitorable in line with DevOps expectations. The article illustrates and implements our proposed mutation of MVC with observability. Using a proof-of-concept application prototype, the article illustrates how the improved observability can impact on general application maintainability — we use common software metrics from the state of the art. We conclude that there are indeed forms for common design patterns (e.g., MVC) which are more monitorable but they are more expensive in terms of maintenance and hence require attention by the research community at large and further experimentation.

References

  1. 1.
    Aagedal, J.Ø.: Quality of service support in development of distributed systems. Ph.D. thesis, University of Oslo (2001)Google Scholar
  2. 2.
    Atlee, J.M., Gannon, J.D.: State-based model checking of event-driven system requirements. IEEE Trans. Softw. Eng. 19(1), 24–40 (1993). http://dblp.uni-trier.de/db/journals/tse/tse19.html#AtleeG93CrossRefGoogle Scholar
  3. 3.
    Bass, L., Weber, I., Zhu, L.: DevOps: A Software Architect’s Perspective. SEI Series in Software Engineering. Addison-Wesley, New York (2015). http://my.safaribooksonline.com/9780134049847
  4. 4.
    Burbeck, S.: Applications programming in smalltalk-80(tm): How to use Model-View-Controller (MVC) (1987). http://st-www.cs.uiuc.edu/users/smarch/st-docs/mvc.html
  5. 5.
    Buschmann, F., Henney, K., Schmidt, D.C.: Pattern-Oriented Software Architecture: On Patterns and Pattern Languages, vol. 5. Wiley, Chichester (2007)Google Scholar
  6. 6.
    Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Softw. Eng. 20(6), 476–493 (1994)CrossRefGoogle Scholar
  7. 7.
    Cooper, K., Peters, T.: The MVVM pattern. https://msdn.microsoft.com/en-us/library/hh848246.aspx
  8. 8.
    Doerr, M.: Data transformations (2001). http://cidoc.ics.forth.gr/data_transformations.html
  9. 9.
    Floridi, L.: Information: A Very Short Introduction. Very Short Introductions. OUP, Oxford (2010)CrossRefGoogle Scholar
  10. 10.
    Horvat, G., Zagar, D., Vlaovic, J.: Evaluation of quality of service provisioning in large-scale pervasive and smart collaborative wireless sensor and actor networks. Adv. Eng. Inf. 33, 258–273 (2017). http://dblp.uni-trier.de/db/journals/aei/aei33.html#HorvatZV17CrossRefGoogle Scholar
  11. 11.
    Software engineering - product quality - part 1: Quality model. Standard, International Organization for Standardization, Geneva (2001)Google Scholar
  12. 12.
    Kazman, R., Klein, M., Clements, P.: ATAM: method for architecture evaluation. Technical report CMU/SEI-2000-TR-004, Carnegie Mellon Uiversity, Software Engineering Institute (2000)Google Scholar
  13. 13.
    Krasner, G.E., Pope, S.T.: A cookbook for using the model-view controller user interface paradigm in smalltalk-80. J. Object Oriented Program 1(3), 26–49 (1988)Google Scholar
  14. 14.
    Mateescu, R.: Model checking for software architectures. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol. 3047, pp. 219–224. Springer, Heidelberg (2004).  https://doi.org/10.1007/978-3-540-24769-2_18CrossRefGoogle Scholar
  15. 15.
    Pilpre, A.: Self-* properties of multi sensing entities in smart environments. Master’s thesis, MIT (2005)Google Scholar
  16. 16.
    Prazeres, C.V.S., da Graça Campos Pimentel, M., Munson, E.V., Teixeira, C.A.C.: Toward semantic web services as mvc applications: from owl-s via uml. J. Web Eng. 9(3), 243–265 (2010). http://dblp.uni-trier.de/db/journals/jwe/jwe9.html#PrazeresPMT10
  17. 17.
    Prazeres, C.V.S., Teixeira, C.A.C., Munson, E.V., da Graça Campos Pimentel, M.: Semantic web services: from owl-s via uml to mvc applications. In: Shin, S.Y., Ossowski, S. (eds.) SAC, pp. 675–680. ACM (2009). http://dblp.uni-trier.de/db/conf/sac/sac2009.html#PrazeresTMP09
  18. 18.
    Qiu, X.: Building desktop applications with web services in a message-based MVC paradigm. In: ICWS, p. 765. IEEE Computer Society (2004). http://dblp.uni-trier.de/db/conf/icws/icws2004.html#Qiu04
  19. 19.
    Reale, A.: Quality of service in distributed stream processing for large scale smart pervasive environments. Ph.D. thesis, University of Bologna, Italy (2014). Base-search.net (ftunivbologntesi:oai:amsdottorato.cib.unibo.it:6390)Google Scholar
  20. 20.
    Santa Ragione S.r.l.: Escape from the aliens in outer space. http://www.eftaios.com/
  21. 21.
    Google Chrome Team: The evolution of the web. http://www.evolutionoftheweb.com/
  22. 22.
    Zalewski, A.: Beyond ATAM: architecture analysis in the development of large scale software systems. In: Oquendo, F. (ed.) ECSA 2007. LNCS, vol. 4758, pp. 92–105. Springer, Heidelberg (2007).  https://doi.org/10.1007/978-3-540-75132-8_8. http://dblp.uni-trier.de/db/conf/ecsa/ecsa2007.html#Zalewski07

Copyright information

© IFIP International Federation for Information Processing 2018

Authors and Affiliations

  • Damian A. Tamburri
    • 1
  • Marcello M. Bersani
    • 2
  • Raffaela Mirandola
    • 2
  • Giorgio Pea
    • 2
    • 3
    Email author
  1. 1.TU/e JADSs’HertogenboschNetherlands
  2. 2.DEIB, Politecnico di MilanoMilanItaly
  3. 3.Moviri S.p.AMilanItaly

Personalised recommendations