Uma Abordagem Probabilística para Análise Causal de Defeitos de Software
Resumo
Análise causal de defeitos tem se mostrado uma forma eficiente para melhoria de processos com base no produto. Nesta tese uma abordagem probabilística para análise causal, chamada DPPI (Defect Prevention-Based Process Improvement) foi elaborada com base em evidências obtidas a partir de quatro rodadas de revisão sistemática da literatura e feedback obtido de especialistas da área. DPPI representa uma abordagem inovadora que integra mecanismos de aprendizado de causa e efeito (redes Bayesianas) nos procedimentos de análise causal de defeitos. Adicionalmente, para facilitar o uso destes mecanismos em reuniões de análise causal, o tradicional diagrama de causa e efeito foi estendido para um diagrama de causa e efeito probabilístico. DPPI foi aplicada a um projeto real e avaliada através de três rodadas de um estudo experimental. A aplicação ao projeto real indicou sua viabilidade e permitiu refinar requisitos para a construção de apoio ferramental. As rodadas do estudo experimental forneceram indícios de que o uso dos diagramas de causa e efeito probabilísticos de DPPI aumenta a eficácia e reduz o esforço na identificação de causas de defeitos, quando comparado à identificação de causas de defeitos sem o uso dos diagramas.
Palavras-chave:
Abordagem Probabilística, Análise Causal, Defeitos de Software
Referências
Boehm, B. (2006) “A View of 20th and 21st Century Software Engineering”, In: Proc. of ICSE '06: 28th International Conference on Software Engineering, ACM Press, New York, NY, USA, pp. 12-29.
Card, D.N. (2005) “Defect Analysis: Basic Techniques for Management and Learning”, In: Advances in Computers, vol. 65, chapter 7, pp. 259-295.
Chrissis, M. B., Konrad, M., Shrum, S. (2011) “CMMI: Guidelines for Process Integration and Product Improvement”, Third Edition, Addison Wesley Professional.
Dangerfield, O., Ambardekar, P., Paluzzi, P., Card, D., Giblin, D. (1992) “Defect Causal Analysis: A Report from the Field”, In: Proc. of the International Conference on Software Quality, American Society for Quality Control.
Eckes, G. (2000) “The Six Sigma Revolution: How General Electric and Others Turned Process Into Profits”, John Wiley and Sons.
Endres, A. (1975) “An Analysis of Errors and Their Causes in Systems Programs”, In: IEEE Transactions on Software Engineering, SE-1, 2, June 1975, pp. 140-149. Grady, R. B., “Software Failure Analysis for High-Return Process Improvement Decisions”, In: Hewlett-Packard Journal, 47 (4), 15 - 24, 1996.
ISO/IEC (2008) “ISO/IEC 12207:2008 – Systems and software engineering – Software life cycle processes”, ISO/IEC 12207:2008. Jalote, P., Agrawal, N., “Using Defect Analysis Feedback for Improving Quality and Productivity in Iterative Software Development”, In: Proc. of the 3rd International Conference on Information and Communication Technology, ICICT, pp. 701–713, Cairo, 2005.
Kalinowski, M., Card, D.N., Travassos, G.H. (2012) “Evidence-based Guidelines on Defect Causal Analysis”, IEEE Software Magazine (aceito para publicação).
Kalinowski, M. (2011), “Uma Abordagem Probabilística para Análise Causal de Defeitos de Software”, Tese de Doutorado defendida no PESC/COPPE/UFRJ em 21/03/2011, disponível em http://www.cos.ufrj.br/
Kalinowski, M., Mendes, E., Travassos G.H. (2011) “Automating and Evaluating the Use of DPPI’s Probabilistic Cause-Effect Diagrams to Improve Defect Causal Analysis”, 12th International Conference on Product Focused Software Development and Process Improvement (PROFES 2011), Springer LNCS 6759, pp. 232-246, Bari, Italy.
Kalinowski, M., Travassos G.H., Mendes, E., Card, D.N. (2010) “Applying DPPI: A Defect Causal Analysis Approach Using Bayesian Networks”, 11th International Conference on Product Focused Software Development and Process Improvement (PROFES 2010), Springer LNCS 6156, pp. 92–106, Limerick, Ireland.
Kalinowski, M., Travassos, G. H., Card, D. N. (2008b) “Towards a Defect Prevention Based Process Improvement Approach”, 34th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), 199-206, Parma, Italy.
Kalinowski, M., Travassos, G.H., Card, D.N. (2008a) “Guidance for Efficiently Implementing Defect Causal Analysis”, VII Simpósio Brasileiro de Qualidade de Software (SBQS), Florianópolis.
Kalinowski, M., Travassos, G.H. (2008) “Towards a Defect Causal Analysis Approach for Software Process Improvement and Organizational Learning”, Workshop de Teses e Dissertações em Qualidade de Software (WTDQS) do VII Simpósio Brasileiro de Qualidade de Software, Florianópolis.
Kitchenham, B.A., “Procedures for Performing Systematic Reviews”, In: Joint Technical Report Keele University and National ICT Australia Ltd., 2004.
Leszak, M., Perry, D. E., Stoll, D. (2002) “Classification and Evaluation of Defects in a Project Retrospective”, In: Journal of Systems and Software, 61( 3), 173 - 187.
Mafra, S.N., Barcelos, R.F., Travassos, G.H., “Aplicando uma Metodologia Baseada em Evidência na Definição de Novas Tecnologias de Software”, In: Proc. of the XX Simpósio Brasileiro de Engenharia de Software (SBES), Florianópolis, 2006.
Pearl, J. (2000) “Causality: Reasoning, Models and Inference”, Cambridge University Press, ISBN: 978-0-521-77362-1.
Robitaille, D., “Root Cause Analysis – Basic Tools and Techniques”, Paton Press, ISBN: 1-932828-02-8, 2004.
SOFTEX (2011) “Modelo MPS – Melhoria de Processo do Software Brasileiro, Guia Geral do MPS, Versão 2011”. Sociedade Softex, Brasil. Disponível em http://www.softex.br/mpsbr.
Wohlin, C., Runeson, P., Host, M., Ohlsson, M.C., Regnell, B., Wesslén, A. (2000) “Experimentation in Software Engineering – An Introduction”, Kluwer Academic Publishers, ISBN 0-7923-8682-5.
Yu, W. D. (1998) “Software fault prevention approach in coding and root cause analysis”, In: Bell Labs Technical Journal, Vol.3 (2), pp.3-21.
Card, D.N. (2005) “Defect Analysis: Basic Techniques for Management and Learning”, In: Advances in Computers, vol. 65, chapter 7, pp. 259-295.
Chrissis, M. B., Konrad, M., Shrum, S. (2011) “CMMI: Guidelines for Process Integration and Product Improvement”, Third Edition, Addison Wesley Professional.
Dangerfield, O., Ambardekar, P., Paluzzi, P., Card, D., Giblin, D. (1992) “Defect Causal Analysis: A Report from the Field”, In: Proc. of the International Conference on Software Quality, American Society for Quality Control.
Eckes, G. (2000) “The Six Sigma Revolution: How General Electric and Others Turned Process Into Profits”, John Wiley and Sons.
Endres, A. (1975) “An Analysis of Errors and Their Causes in Systems Programs”, In: IEEE Transactions on Software Engineering, SE-1, 2, June 1975, pp. 140-149. Grady, R. B., “Software Failure Analysis for High-Return Process Improvement Decisions”, In: Hewlett-Packard Journal, 47 (4), 15 - 24, 1996.
ISO/IEC (2008) “ISO/IEC 12207:2008 – Systems and software engineering – Software life cycle processes”, ISO/IEC 12207:2008. Jalote, P., Agrawal, N., “Using Defect Analysis Feedback for Improving Quality and Productivity in Iterative Software Development”, In: Proc. of the 3rd International Conference on Information and Communication Technology, ICICT, pp. 701–713, Cairo, 2005.
Kalinowski, M., Card, D.N., Travassos, G.H. (2012) “Evidence-based Guidelines on Defect Causal Analysis”, IEEE Software Magazine (aceito para publicação).
Kalinowski, M. (2011), “Uma Abordagem Probabilística para Análise Causal de Defeitos de Software”, Tese de Doutorado defendida no PESC/COPPE/UFRJ em 21/03/2011, disponível em http://www.cos.ufrj.br/
Kalinowski, M., Mendes, E., Travassos G.H. (2011) “Automating and Evaluating the Use of DPPI’s Probabilistic Cause-Effect Diagrams to Improve Defect Causal Analysis”, 12th International Conference on Product Focused Software Development and Process Improvement (PROFES 2011), Springer LNCS 6759, pp. 232-246, Bari, Italy.
Kalinowski, M., Travassos G.H., Mendes, E., Card, D.N. (2010) “Applying DPPI: A Defect Causal Analysis Approach Using Bayesian Networks”, 11th International Conference on Product Focused Software Development and Process Improvement (PROFES 2010), Springer LNCS 6156, pp. 92–106, Limerick, Ireland.
Kalinowski, M., Travassos, G. H., Card, D. N. (2008b) “Towards a Defect Prevention Based Process Improvement Approach”, 34th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), 199-206, Parma, Italy.
Kalinowski, M., Travassos, G.H., Card, D.N. (2008a) “Guidance for Efficiently Implementing Defect Causal Analysis”, VII Simpósio Brasileiro de Qualidade de Software (SBQS), Florianópolis.
Kalinowski, M., Travassos, G.H. (2008) “Towards a Defect Causal Analysis Approach for Software Process Improvement and Organizational Learning”, Workshop de Teses e Dissertações em Qualidade de Software (WTDQS) do VII Simpósio Brasileiro de Qualidade de Software, Florianópolis.
Kitchenham, B.A., “Procedures for Performing Systematic Reviews”, In: Joint Technical Report Keele University and National ICT Australia Ltd., 2004.
Leszak, M., Perry, D. E., Stoll, D. (2002) “Classification and Evaluation of Defects in a Project Retrospective”, In: Journal of Systems and Software, 61( 3), 173 - 187.
Mafra, S.N., Barcelos, R.F., Travassos, G.H., “Aplicando uma Metodologia Baseada em Evidência na Definição de Novas Tecnologias de Software”, In: Proc. of the XX Simpósio Brasileiro de Engenharia de Software (SBES), Florianópolis, 2006.
Pearl, J. (2000) “Causality: Reasoning, Models and Inference”, Cambridge University Press, ISBN: 978-0-521-77362-1.
Robitaille, D., “Root Cause Analysis – Basic Tools and Techniques”, Paton Press, ISBN: 1-932828-02-8, 2004.
SOFTEX (2011) “Modelo MPS – Melhoria de Processo do Software Brasileiro, Guia Geral do MPS, Versão 2011”. Sociedade Softex, Brasil. Disponível em http://www.softex.br/mpsbr.
Wohlin, C., Runeson, P., Host, M., Ohlsson, M.C., Regnell, B., Wesslén, A. (2000) “Experimentation in Software Engineering – An Introduction”, Kluwer Academic Publishers, ISBN 0-7923-8682-5.
Yu, W. D. (1998) “Software fault prevention approach in coding and root cause analysis”, In: Bell Labs Technical Journal, Vol.3 (2), pp.3-21.
Publicado
11/07/2012
Como Citar
KALINOWSKI, Marcos; TRAVASSOS, Guilherme Horta.
Uma Abordagem Probabilística para Análise Causal de Defeitos de Software. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 11. , 2012, Fortaleza.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2012
.
p. 414-428.
DOI: https://doi.org/10.5753/sbqs.2012.15335.