Enriquecendo o Código com Cenários
Abstract
The development of opens source systems have been escalating over the last few years, with very positive results. Despite their success, the quality of the documentation, either code or additional information, still remains critical. This fact comes in the way of both understanding the overall system architecture and assessing the impacts of changes to the requirements. We understand that Software Engineering principles may be put to practice, without jeopardizing the open source development philosophy. We propose the use of scenarios as a simple and practical way in which to enrich open source code. Scenarios provide an organization and standard representation for information presentation, promote code reuse, facilitate the identification of functionality, facilitate maintenance and the identification of other parts of the code that will be affected by changes. In addition, the information presentation standard provided by the scenarios allows for the automation of some of these tasks. We present the prototype of a tool that implements our approach.
References
Breitman, K.K.; Leite, J.C.S.P. - Scenario Evolution: A Closer View on Relationships - In: 4th International Conference on Requirements Engineering (ICRE'00), Schaumburg, Illinois, 2000. Proceedings. Los Alamitos: IEEE Computer Society Society Press, pp. 102-111.
Carroll, J.; Alpert, S.; Karat, J.; Van Deusen, M.; Rosson, M. Raison d'etre: capturing design history and rationale in multimedia narratives. In: Human Factors in Computing Systems (CHI94). Proceedings. Boston, USA: ACM Press, 1994. pp. 192-197.
Carvalho, S.E.R. & Leite, J.C.S.P. Model interconnection features in object-oriented development tools, The Journal of Systems and Software, nº 50, 2000, pp. 57-64.
Conselho Brasileiro de Desenvolvimento Científico e Tecnológico. Plataforma Lattes. Disponível em <http://lattes.cnpq.br/materias.jsp?id=20030313-1>. Acesso em 08 de maio de 2003.
Código Livre: repositório de software livre; sediado no Centro Universitário Univates. Disponível em <http://codigolivre.org.br/>. Acesso em 08 de maio de 2003.
Corrêa, Edgard; Ferreira, Heitor; Silva, Ivan; Silva, K. Plataforma F@milia: software livre para o programa de saúde da família. In: II Workshop sobre Software Livre, editores Roland Teodorowitsch e Benhur Stein, Porto Alegre, 29 a 31 de maio de 2001. Anais. Porto Alegre: Sociedade Brasileira de Computação, 2001.
FAGAN, M. E. Advances in Software Inspections. IEEE Transactions on Software Engineering, vol. SE-12, nº 7, p. 744-751, july 1986.
Hertel, G.; Niedner, S.; Herrmann, S. Motivation of Software Developers in Open Source Projects: An Internet-based Survey of Contributors to the Linux Kernel. Research Policy. Disponível em [link]. Acesso em 08 de maio de 2003.
Hsia, P.et al - Formal Approach to Scenario Analysis - IEEE Software, vol. 11 no. 2, 1994. pp.33-41.
mantido pela Sun Microsystems. Apresenta informações sobre documentação em programas em Java. Disponível em <http://java.sun.com/j2se/javadoc/>. Acesso em 09 de maio de 2003.
Knuth, D. E. Literate Programming. The Computer Journal, vol. 27, nº 2, pp 97-111.
LAITENBERGER, Oliver. A Survey of Software Inspection Technologies. Handbook on Software Engineering and Knowledge Engineering, vol. II, World Scientific Pub. Co, 2001. Disponível em <ftp://cs.pitt.edu/chang/handbook/61b.pdf>. Acesso em 13 set 2002.
Leite, J.C.S.P. and Franco, A.P.M. A Strategy for Conceptual Model Acquisition. First International Symposium on Requirements Engineering. Proceedings. IEEE Computer Society Press, 1993. pp. 243-246.
Leite, J.C.S.P. and Oliveira, A.P. A Client Oriented Requirements Baseline - In: Second IEEE International Symposium on Requirements Engineering (RE'95), 1995. Proceedings. Los Alamitos: IEEE Computer Society Press, 1995. pp.108-115.
Leite, J.C.S.P, Rossi, G., Balaguer, F., Maiorana, V., Enhancing a requirements baseline with scenarios. In: Third IEEE International Symposium on Requirements Engineering - RE97, Proceedings. IEEE Computer Society Press, January, 1997, pp 44-53.
Leite, J.C.S.P. Checklists para cenários. Notas de aula da disciplina Evolução de Software. Pontifícia Universidade Católica do Rio de Janeiro, 2002.
Mockus, A. ; Fielding, R. ; Herbsleb, J. - Two case studies of open source software development: Apache and Mozilla, ACM Transactions on Software Engineering, Vol. 11, Issue. 3, 2002. pp. 309-346.
MySQL: Mantido pela MySQL AB. Disponmível em <http://www.mysql.com/>. Acesso em 25 de abril de 2003.
PHP: projeto da Apache Software Foundation. Disponível em <http://www.php.net>. Acesso em 20 de abril de 2003.
PHPBrasil: site para desenvolvedores de PHP no Brasil. Disponível em <http://phpbrasil.com/>. Acesso em maio de 2003
apresenta informações sobre documentação de programas em PHP. Disponível em <http://www.phpdoc.de/>. Acesso em 08 de maio de 2003.
Port, D.; Kaiser, G. Introducing a "Street Fair" Open source Practice Within Project Based Software Engineering Courses - position paper - 1st Workshop on Open Source Software Engineering. Proceedings. Open Source Software Engineering: Special Issue of IEE Proceedings-Software, 149(1), February 2002.
Governo do Estado do Rio Grande do Sul. Projeto Software Livre - RS. Disponível em <http://www.softwarelivre.rs.gov.br>. Acesso em 15 de abril de 2003.
Reis, C. R. Caracterização de um Processo de Software para Projetos de Software Livre. Dissertação de mestrado, Instituto de Ciências Matemáticas e de Computação - USP, 2003.
Governo do Rio Grande do Sul. Rede Escolar Livre - RS. Disponível em <http://www.redeescolarlivre.rs.gov.br/>. Acesso em 15 de abril de 2003.
Rolland, C.; Achour, B.; Cauvet, C.; Ralyté, J.; Sutcliffe, A.; Maiden, N.; Jarke, M.; Haumer, P.; Pohl, K.; Dubois, E.; Heymans, P. A proposal for a scenario classification framework. Journal of Requirements Engineering vol. (3) Springer Verlag, 1998. pp. 23-47.
Scacchi, Walt - Understanding the Requirements for Developing Open Source Software Systems - Open Source Software Engineering: Special Issue of IEE Proceedings-Software, 149(1), pp. 24-39, February 2002.
Staa, Arndt von. Programação Modular: Desenvolvendo programas complexos de forma organizada e segura. Campus, Rio de Janeiro, 2000.
Weidenhaupt, K.; Pohl, K.; Jarke, M.; Haumer, P. Scenario Usage in system development: current practice IEEE Software Vol. 15 No.2 March, 1998. pp.34-45.
Zorman, L. Requirements Envisaging through utilizing scenarios - REBUS. 1995. Ph.D. Dissertation, University of Southern California.
