Monitoring the quality of service to support the service based system lifecycle

Service Oriented Computing (SOC) has been established in the last recent years as a successful paradigm in Software Engineering. The systems built under this paradigm, known as Service Based System (SBS), are composed of several services, which are usually third-party software run by external service providers. SBS rely on these service providers to ensure that their services comply with the agreed Quality of Service (QoS). In contrast to other systems, the dynamic behaviour of SBS requires up-to-date QoS information for its proper management in the different stages of its lifecycle, from their initial construction until their decommission. Providing such QoS information has resulted in different technological solutions built around a monitor. Nonetheless, several research challenges in the field remain still open, ranging from theoretical aspects of quality assurance to architectonical challenges in decentralized monitoring. Based on the current research challenges for service monitoring, the research gaps in which we aim to contribute are twofold: - To investigate on the definition and structure of the different quality factors of services, and provide a framework of common understanding for the definition of what to monitor. - To investigate on the different features required to support the activities of the whole SBS lifecycle (i.e. how to monitor), and develop a monitoring framework that accomplishes such features. As a result of this thesis, we provide: What to monitor - A distribution of the quality models along the time dimension and the identification of their relationships. - An analysis of the size and definition coverage of the proposed quality models. - A quantified coverage of the different ISO/IEC 25010 quality factors given by the proposals. - The identification of the most used quality factors, and provided the most consolidated definitions for them. How to monitor - The elicitation of the requirements of the different activities in the SBS lifecycle. - The definition of the set of features that supports the elicited requirements. - A modular service-oriented monitoring framework, named SALMon, implementing the defined features. SALMon has been validated by including it in several frameworks supporting the different activities of the SBS lifecycle. Finally, we have conducted a performance evaluation of SALMon over real web services. La Computació Orientada a Serveis (SOC) ha esdevingut en els darrers anys un paradigma exitós en el camp de l'Enginyeria del Software. Els sistemes construïts sota aquest paradigma, coneguts com Sistemes Basats en Serveis (SBS), estan composats de diversos serveis, que són, usualment, programari de tercers executats per proveïdors de serveis externs. Els SBS depenen dels proveïdors dels serveis per garantir que els serveis compleixen amb la Qualitat del Servei (QoS) acordada. En contrast amb altres sistemes, el comportament dinàmic dels SBS requereix d'informació actualitzada del QoS per a la correcta administració de les diferents etapes del cicle de vida dels SBS: des de la seva construcció inicial fins a la seva clausura. Proveir d'aquesta informació de QoS ha resultat en diferents solucions tecnològiques construïdes al voltant d'un monitor. Malgrat això, diversos reptes de recerca en el camp encara romanen obertes, des d'aspectes teòrics de l'assegurança de qualitat, a reptes arquitectònics en la monitorització descentralitzada. Basat en els reptes de recerca actuals per a la monitorització de serveis, els forats de recerca en els que pretenem contribuir són dobles: - Investigar en la definició i estructura dels diferents factors de qualitat dels serveis, i proveir un marc de treball d'entesa comuna per a la definició de què monitoritzar. - Investigar en les diferents característiques requerides per donar suport a les activitats de tot el cicle de vida dels SBS (i.e. com monitoritzar), i desenvolupar una plataforma de monitorització que acompleixi aquestes característiques. Com a resultats de la tesis, proveïm: Què monitoritzar - Una distribució dels models de qualitat al llarg de la dimensió temporal i la identificació de les seves interrelacions. - Un anàlisi de la mida i definició de la cobertura dels models de qualitat proposats. - Una cobertura quantificada dels diferents factors de qualitat ISO/IEC 25010 donat en les diferents propostes. - La identificació dels factors de qualitat més utilitzats, i la definició dels termes més consolidats. Com monitoritzar - L'elicitació dels requeriments per a les diferents activitats en el cicle de vida dels SBS. - La definició del conjunt de característiques que donen suport als requeriments elicitats. - Una platforma modular orientada a serveis, anomenat SALMon, que implementa les característiques definides. SALMon ha estatvalidat incloent la plataforma en diversos marcs de treball donant suport a les diferents activitats