Título: | PATTERN-DRIVEN MAINTENANCE: A METHOD TO PREVENT UNHANDLED LATENT EXCEPTIONS IN WEB APPLICATIONS | ||||||||||||
Autor: |
DIOGO SILVEIRA MENDONCA |
||||||||||||
Colaborador(es): |
MARCOS KALINOWSKI - Orientador ARNDT VON STAA - Coorientador |
||||||||||||
Catalogação: | 20/SET/2019 | Língua(s): | ENGLISH - UNITED STATES |
||||||||||
Tipo: | TEXT | Subtipo: | THESIS | ||||||||||
Notas: |
[pt] Todos os dados constantes dos documentos são de inteira responsabilidade de seus autores. Os dados utilizados nas descrições dos documentos estão em conformidade com os sistemas da administração da PUC-Rio. [en] All data contained in the documents are the sole responsibility of the authors. The data used in the descriptions of the documents are in conformity with the systems of the administration of PUC-Rio. |
||||||||||||
Referência(s): |
[pt] https://www.maxwell.vrac.puc-rio.br/projetosEspeciais/ETDs/consultas/conteudo.php?strSecao=resultado&nrSeq=45455&idi=1 [en] https://www.maxwell.vrac.puc-rio.br/projetosEspeciais/ETDs/consultas/conteudo.php?strSecao=resultado&nrSeq=45455&idi=2 |
||||||||||||
DOI: | https://doi.org/10.17771/PUCRio.acad.45455 | ||||||||||||
Resumo: | |||||||||||||
Background: Unhandled exceptions affect the reliability, usability, and security of web applications. Several studies have measured the reliability of web applications in use against unhandled exceptions, showing a recurrence of the problem during the maintenance phase. Detecting automatically unhandled latent exceptions is difficult and application-specific. Hence, general approaches to deal with defects in web applications do not treat unhandled exceptions appropriately. Aims: To design and evaluate a method that can support finding, correcting, and preventing unhandled exceptions in web applications. Method: We applied the design science engineering cycle to design a method called Pattern-Driven Maintenance (PDM). PDM relies on identifying defect patterns based on application server logs and producing static analysis rules that can be used for prevention. We applied PDM to two industrial web applications involving different companies and technologies, measuring the reliability improvement and the precision of the produced static analysis rules. We also evaluated reuse of static analysis rules produced during PDM application on within- and cross-company software. Finally, we studied the effectiveness and acceptance of novice maintainers on applying the PDM method Results: In both industry cases, our approach allowed identifying defect patterns and finding unhandled latent exceptions to be fixed in the source code, enabling to eliminate the pattern-related failures and improving the application reliability completely. Some of the static analysis rules produced by PDM application were reused on within- and cross-company software. We identified knowledge and experiences that influence on effectively applying steps of the PDM method. Most of the novice maintainers find PDM useful, but not easy to apply, thus hindering PDM acceptance among novices. Conclusions: The results strengthen our confidence that PDM can help maintainers to improve the reliability for unhandled exceptions in existing web applications. We provide guidance on how to apply PDM, reuse the produced static analysis rules, and the knowledge and experiences needed to apply the PDM method effectively.
|
|||||||||||||
|