AIRDoc – An Approach to Improve Requirements Documents
Resumo
Requirements models and specifications tend to be plagued by many problems such as requirements that have been abandoned and that are no longer meaningful, descriptions that are unnecessarily long and convoluted, and information that is duplicated. These problems hinder the overall understandability and reusability of software models throughout the whole development process. In this paper we propose an approach called AIRDoc that supports the identification of potential problems that may be present in requirements models. AIRDoc is based on the elaboration of goals and the definition of questions and hypotheses that will be addressed by requirements metrics. In order to improve the quality of requirements models we advocate the use of refactorings and requirements patterns. A case study demonstrates how the AIRDoc has been successfully applied in large requirements model conducted by SERPRO, a Brazilian Government software company.Referências
Wiegers, K. E. (2003) Software Requirements. Microsoft Press, Second Edition.
Firesmith, D. (2007)Common Requirements Problems, Their Negative Consequences, and Industry Best Practices to Help Solve Them, in Journal of Object Technology, vol. 6, no. 1, January-February 2007, pp. 17-33.
Boehm, B.W., Sullivan, K.J. (2000) Software economics: a roadmap. In: ICSE – Future of SE Track. 319–343.
Pressman, R. (2005) Software Engineering: A Practitioner’s Approach. McGraw-Hill.
Schneider, G., Martin, J., Tsai, W. (1992) An experimental study of fault detection in user requirements documents, ACM Transactions on Software Engineering and Methodology (TOSEM), v.1 n.2, p.188-204.
Travassos, G.H., Shull, F., Carver, J. and Basili, V. (1999) “Reading Techniques for OO Design Inspections,” Proceedings of NASA/GSFC, Greenbelt, MD, December.
Elssamadisy, A., Schalliol, G. (2002) Recognizing and responding to bad smells in extreme programming. In: Proceedings of the 24th International conference on Software Engineering.
Xu, J., Yu, W., Rui, K., Butler, G. (2004) Use case refactoring: a tool and a case study. In: Software Engineering Conference, 2004. 11th Asia-Pacific. 484–491.
Meyer, B. (1997)Object-oriented software construction (2nd ed.), Prentice-Hall, Inc., Upper Saddle River, NJ.
Overgaard, G., Palmkvist, K. (2004) Use Cases Patterns and Blueprints. Addison Wesley Professional.
Mens, T. and Tourwe, T. (2004) A Survey of Software Refactoring. IEEE Transactions on Software Engineering, Vol. 30, nº 2, February.
Basili, V. R., Caldiera, G., and Rombach, H. D. (1994). The goal question metric approach. Encyclopedia of Software Engineering, pages 528–532.
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslén, A. (2000) Experimentation in Software Engineering: An Introduction Series: International Series in Software Engineering , Vol. 6, 228 p.
IEEE Standard for a Software Quality Metrics Methodology, IEEE Std. (1992) 1061-1992.
Ramos, R. A., Araújo, J., Castro, J. F. B., Moreira, A., Alencar, F., Silva, C. (2006) “A Quality Model to Evaluate Requirement Documents”(in portuguese) In: XV Jornadas de Ingeniería del Software y Bases de Datos. Sitges Barcelona.
Ramos, R.A., Araújo, J., Castro, J., Moreira, A., Alencar, F., Silva, C. (2006): “Uma abordagem de instanciação de métricas para medir documentos de requisitos orientados a aspectos”, in: 3º Brazilian Workshop on Aspect Oriented Software Development WASP2006. Florianopolis, Brazil.
Fenton, N.E., Pfleeger, S.L. (1997) Software Metrics: A Rigorous and Practical Approach. PWS Publishing Company.
Jacobson, I., Griss, M., Jonsson, P. (1997) “Software Reuse: Architecture, Process, and Organization for Business Success”, in: Addison Wesley.
Firesmith, D. (2007) “Common Requirements Problems, Their Negative Consequences, and Industry Best Practices to Help Solve Them”, in Journal of Object Technology, vol. 6, no. 1, January-February 2007, pp. 17.
Ramos, R., Piveta, E., Castro, J., Araújo, J., Moreira, A., Guerreiro, P., Pimenta, M., and Tom Price, R.(2007). Improving the Quality of Requirements with Refactoring. In: VI Simpósio Brasileiro de Qualidade de Software – SBQS2007, Porto de Galinhas, Recife, Pernambuco, Brasil, Junho 27 – 30.
Ramos, R. A.; Araújo, J. ; Moreira, A. ; Castro, J. ; Alencar, F. and Penteado, R. (2008) Early Aspects Requirements. In: XI Iberoamericano de Ingeniería de Requisitos y Ambientes de Software (IDEAS 08), Recife Pe. Proceedings of XI Iberoamericano de Ingeniería de Requisitos y Ambientes de Software, feb.
Ramos, R. A.; Araújo, J.; Moreira, A.; Castro, J.; Alencar, F. and Penteado, R. (2007) “A Pattern to Duplicated Requirements”, (in portuguese) in: 6th Latin American Conference on Pattern Languages of Programming (SugarLoafPlop’2007), Porto de Galinhas, Recife, Pernambuco , Brazil.
Alexander, I.F., Stevens, R. (2002) “Writing Better Requirements”, Pearson Education Limited..
Sommerville, I. (2004) Software Engineering, 7th edition. Pearson Education.
Alexander, C., et. al. (1977) A Pattern Language, Oxford University Press, New York.
Gamma, E.; Helm, R.; Johnson, R.; Vlissides, J. (1995) Design Patterns Elements of Reusable Object-Oriented Software. Reading-MA, Addison-Wesley.
Brazilian Federal Revenue Service Technologic Awards. (2008): see http://www.serpro.gov.br/
Jacobson, I. (2003) Use cases and aspects Working seamlessly together. Journal of Object Technology 2(4).
Jacobson, I., Ng, P.W. (2005) Aspect-Oriented Software Development with Use Cases. Addison-Wesley.
Travassos, G. H., Shull, F., Fredericks, M. and Basili. V. (1999) Detecting Defects in Object Oriented Designs: Using Reading Techniques to Increase Software Quality. Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Denver, Colorado.
Caldiera, G. and Basili, V. (1991)“Identifying and Qualifying Reusable Software Components,” IEEE Computer, vol. 24(2): 61-70, February.
Firesmith, D. (2007)Common Requirements Problems, Their Negative Consequences, and Industry Best Practices to Help Solve Them, in Journal of Object Technology, vol. 6, no. 1, January-February 2007, pp. 17-33.
Boehm, B.W., Sullivan, K.J. (2000) Software economics: a roadmap. In: ICSE – Future of SE Track. 319–343.
Pressman, R. (2005) Software Engineering: A Practitioner’s Approach. McGraw-Hill.
Schneider, G., Martin, J., Tsai, W. (1992) An experimental study of fault detection in user requirements documents, ACM Transactions on Software Engineering and Methodology (TOSEM), v.1 n.2, p.188-204.
Travassos, G.H., Shull, F., Carver, J. and Basili, V. (1999) “Reading Techniques for OO Design Inspections,” Proceedings of NASA/GSFC, Greenbelt, MD, December.
Elssamadisy, A., Schalliol, G. (2002) Recognizing and responding to bad smells in extreme programming. In: Proceedings of the 24th International conference on Software Engineering.
Xu, J., Yu, W., Rui, K., Butler, G. (2004) Use case refactoring: a tool and a case study. In: Software Engineering Conference, 2004. 11th Asia-Pacific. 484–491.
Meyer, B. (1997)Object-oriented software construction (2nd ed.), Prentice-Hall, Inc., Upper Saddle River, NJ.
Overgaard, G., Palmkvist, K. (2004) Use Cases Patterns and Blueprints. Addison Wesley Professional.
Mens, T. and Tourwe, T. (2004) A Survey of Software Refactoring. IEEE Transactions on Software Engineering, Vol. 30, nº 2, February.
Basili, V. R., Caldiera, G., and Rombach, H. D. (1994). The goal question metric approach. Encyclopedia of Software Engineering, pages 528–532.
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslén, A. (2000) Experimentation in Software Engineering: An Introduction Series: International Series in Software Engineering , Vol. 6, 228 p.
IEEE Standard for a Software Quality Metrics Methodology, IEEE Std. (1992) 1061-1992.
Ramos, R. A., Araújo, J., Castro, J. F. B., Moreira, A., Alencar, F., Silva, C. (2006) “A Quality Model to Evaluate Requirement Documents”(in portuguese) In: XV Jornadas de Ingeniería del Software y Bases de Datos. Sitges Barcelona.
Ramos, R.A., Araújo, J., Castro, J., Moreira, A., Alencar, F., Silva, C. (2006): “Uma abordagem de instanciação de métricas para medir documentos de requisitos orientados a aspectos”, in: 3º Brazilian Workshop on Aspect Oriented Software Development WASP2006. Florianopolis, Brazil.
Fenton, N.E., Pfleeger, S.L. (1997) Software Metrics: A Rigorous and Practical Approach. PWS Publishing Company.
Jacobson, I., Griss, M., Jonsson, P. (1997) “Software Reuse: Architecture, Process, and Organization for Business Success”, in: Addison Wesley.
Firesmith, D. (2007) “Common Requirements Problems, Their Negative Consequences, and Industry Best Practices to Help Solve Them”, in Journal of Object Technology, vol. 6, no. 1, January-February 2007, pp. 17.
Ramos, R., Piveta, E., Castro, J., Araújo, J., Moreira, A., Guerreiro, P., Pimenta, M., and Tom Price, R.(2007). Improving the Quality of Requirements with Refactoring. In: VI Simpósio Brasileiro de Qualidade de Software – SBQS2007, Porto de Galinhas, Recife, Pernambuco, Brasil, Junho 27 – 30.
Ramos, R. A.; Araújo, J. ; Moreira, A. ; Castro, J. ; Alencar, F. and Penteado, R. (2008) Early Aspects Requirements. In: XI Iberoamericano de Ingeniería de Requisitos y Ambientes de Software (IDEAS 08), Recife Pe. Proceedings of XI Iberoamericano de Ingeniería de Requisitos y Ambientes de Software, feb.
Ramos, R. A.; Araújo, J.; Moreira, A.; Castro, J.; Alencar, F. and Penteado, R. (2007) “A Pattern to Duplicated Requirements”, (in portuguese) in: 6th Latin American Conference on Pattern Languages of Programming (SugarLoafPlop’2007), Porto de Galinhas, Recife, Pernambuco , Brazil.
Alexander, I.F., Stevens, R. (2002) “Writing Better Requirements”, Pearson Education Limited..
Sommerville, I. (2004) Software Engineering, 7th edition. Pearson Education.
Alexander, C., et. al. (1977) A Pattern Language, Oxford University Press, New York.
Gamma, E.; Helm, R.; Johnson, R.; Vlissides, J. (1995) Design Patterns Elements of Reusable Object-Oriented Software. Reading-MA, Addison-Wesley.
Brazilian Federal Revenue Service Technologic Awards. (2008): see http://www.serpro.gov.br/
Jacobson, I. (2003) Use cases and aspects Working seamlessly together. Journal of Object Technology 2(4).
Jacobson, I., Ng, P.W. (2005) Aspect-Oriented Software Development with Use Cases. Addison-Wesley.
Travassos, G. H., Shull, F., Fredericks, M. and Basili. V. (1999) Detecting Defects in Object Oriented Designs: Using Reading Techniques to Increase Software Quality. Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Denver, Colorado.
Caldiera, G. and Basili, V. (1991)“Identifying and Qualifying Reusable Software Components,” IEEE Computer, vol. 24(2): 61-70, February.
Publicado
13/10/2008
Como Citar
RAMOS, Ricardo; CASTRO, Jaelson; ARAÚJO, João; MOREIRA, Ana; ALENCAR, Fernanda; SANTOS, Emanuela; PENTEADO, Rosangela.
AIRDoc – An Approach to Improve Requirements Documents. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 22. , 2008, Campinas.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2008
.
p. 97-112.
DOI: https://doi.org/10.5753/sbes.2008.21326.