In the engineering of software applications designed with modular Enterprise Architectures, the management of components and their dependencies is often delegated to an outer participant, named container, which assumes the primary responsibility of taking care of creation, destruction and dependencies resolution of all managed software components, realising the so called Inversion of Control (IoC) principle. This dissertation contributes to the area of Model-Based Testing, proposing a methodology for verification of Enterprise Software Architectures with stateful components, exploiting Dependency Injection (DI) and automated contexts management. The research addresses the problem of test case generation for Web Applications, implementing the IoC principle through the adoption of state of the art DI containers and frameworks with contexts management capabilities and with built-in contexts, defined according to client-server paradigm and HTTP fundamentals. At the core of the methodology a new abstraction, named Managed Components Data Flow Graph (mcDFG) is proposed for supporting the test case generation stage, addressing a fault model which identifies specific types of fault affecting stateful applications. The mcDFG reinterprets classical Data Flow Graph theory, combining structural information with navigational and behavioural aspects of component-based applications. A set of coverage criteria, applied over the mcDFG, supports the automated extraction of paths, each one representing a reference description of a single test case, prescribing the sequence of end-user interactions which must be implemented to exercise the System Under Test in an end-to-end testing perspective. The proposed methodology is also integrated with consolidated practices of software development so as to leverage on common design and documentary artefacts for enabling the automated generation of the mcDFG. An evaluation of the applicability of the methodology, in support of its convenience, is discussed for a prototype Web Application, implemented with the Java Enterprise Edition ecosystem through the Contexts and Dependency Injection (CDI) specification as the DI container, highlighting capabilities in the generation of an effective test suite for the characterised fault model.

Verification of Enterprise Software Architectures with stateful managed components / Jacopo Parri. - (2021).

Verification of Enterprise Software Architectures with stateful managed components

Jacopo Parri
2021

Abstract

In the engineering of software applications designed with modular Enterprise Architectures, the management of components and their dependencies is often delegated to an outer participant, named container, which assumes the primary responsibility of taking care of creation, destruction and dependencies resolution of all managed software components, realising the so called Inversion of Control (IoC) principle. This dissertation contributes to the area of Model-Based Testing, proposing a methodology for verification of Enterprise Software Architectures with stateful components, exploiting Dependency Injection (DI) and automated contexts management. The research addresses the problem of test case generation for Web Applications, implementing the IoC principle through the adoption of state of the art DI containers and frameworks with contexts management capabilities and with built-in contexts, defined according to client-server paradigm and HTTP fundamentals. At the core of the methodology a new abstraction, named Managed Components Data Flow Graph (mcDFG) is proposed for supporting the test case generation stage, addressing a fault model which identifies specific types of fault affecting stateful applications. The mcDFG reinterprets classical Data Flow Graph theory, combining structural information with navigational and behavioural aspects of component-based applications. A set of coverage criteria, applied over the mcDFG, supports the automated extraction of paths, each one representing a reference description of a single test case, prescribing the sequence of end-user interactions which must be implemented to exercise the System Under Test in an end-to-end testing perspective. The proposed methodology is also integrated with consolidated practices of software development so as to leverage on common design and documentary artefacts for enabling the automated generation of the mcDFG. An evaluation of the applicability of the methodology, in support of its convenience, is discussed for a prototype Web Application, implemented with the Java Enterprise Edition ecosystem through the Contexts and Dependency Injection (CDI) specification as the DI container, highlighting capabilities in the generation of an effective test suite for the characterised fault model.
2021
Enrico Vicario, Alessandro Fantechi
ITALIA
Jacopo Parri
File in questo prodotto:
File Dimensione Formato  
phd-thesis_Jacopo_Parri_definitiva_firmata.pdf

accesso aperto

Descrizione: Tesi di Dottorato
Tipologia: Pdf editoriale (Version of record)
Licenza: Open Access
Dimensione 1.83 MB
Formato Adobe PDF
1.83 MB Adobe PDF

I documenti in FLORE sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificatore per citare o creare un link a questa risorsa: https://hdl.handle.net/2158/1238686
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact