5.3 Trabalhos Futuros
5.3.3 Testes
Uma vez que o sistema é implementado, segue-se com a disciplina de testes cujo objetivo é verificar o resultado da implementação por meio de testes de cada versão.
Essa disciplina pode ser bastante facilitada com o paradigma orientado a aspectos, permitindo a construção de classes para realizar os casos de testes de forma bastante desacoplada do sistema. Uma fonte interessante de trabalhos nessa área é o workshop WTAOP (Workshop on
Referências
ALDAWUD, O., ELRAD, T., BADER, A. UML Profile for Aspect-Oriented Software Development. In: Workshop on Aspect Oriented Modelling with UML, 3, mar. 2003, Boston, MA. Proceedings of the International Conference on Aspect-Oriented Software
Development (AOSD’03). [S.I.: s.n.], 2003.
AMBLER, S. The Elements of UML 2.0 Style. New York, NY: Cambridge University Press, 2005, 200 p.
AOM. Aspect-Oriented Modeling (AOM). Disponível em: <http://www.aspect-modeling.org/previous_editions.html >. Acesso em: 01.fev.2007.
ARAÚJO, J. et al. Oriented Requirements with UML. In: Workshop on Aspect-Oriented Modeling with UML, 2, sep. 2002, Dresden, Germany. Proceedings of the
Conference on the Unified Modeling Language – the Language and its applications (UML’02). [S.I.: s.n.], 2002, p. 461-467.
BARRA, E., GÉNOVA, G., LLORENS, J. An approach to Aspect Modelling with UML 2.0. In: Workshop on Aspect-Oriented Modeling with UML, 5, Lisbon, Portugal. Proceedings of
the International Conference on the Unified Modeling Language – the Language and its applications (UML’04). [S.I.: s.n.], 2004.
BERGMANS, L.; AKSIT, M. Composing Crosscutting Concerns using Composition Filters.
Communications of the ACM, New York, v. 44, n. 10, p.51-57, oct. 2001.
BOOCH, G. Object-Oriented Analysis and Design with Applications. 2. ed. Redwood City, CA: Benjamin/Cummings, 1994, 608 p.
BRITO, I.; MOREIRA, A. Integrating the NFR framework in a RE model. In: Workshop on Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design, 3, mar. 2004, Lancaster, UK. Proceedings of the International Conference on Aspect-Oriented
Software Development (AOSD’04). [S.I.: s.n.], 2004.
BRITO, I.; MOREIRA, A. Towards an Integrated Approach for Aspectual Requirements. In: IEEE International Requirements Conference, 14, sep. 2006, Minneapolis, MN. Proceedings
of the IEEE International Requirements Engineering Conferente (RE’06). Los Alamitos,
CA: IEEE Computer Society, 2006, p. 341-342.
CHAVEZ, C.. A Model-Driven Approach for Aspect-Oriented Design. 2004. 304f. Tese (Doutorado em Informática) - Pontifícia Universidade Católica do Rio de Janeiro, Rio de Janeiro, 2004.
CHUNG, L. et al. Non-Functional Requirements in Software Engineering. Boston, MA: Kluwer Academic Publishers, 2000, 472 p.
COCKBURN, A. Writing Effective Use Cases. 1. ed. Reading, MA: Addison-Wesley, 2001, 270 p.
COLE, L.; PIVETA, E.; SAMPAIO, A. RUP Based Analysis and Design with Aspects. In: Brazilian Symposium on Software Engineering, 18, oct. 2004, Brasília, DF. Proceedings of
the Brazilian Symposium on Software Engineering (SBES’04). Brasília: [s.n.], 2004,
p.210-224.
DIJKSTRA, E. A Discipline of Programming. 1. ed. Englewood Cliffs, NJ: Prentice-Hall, 1976, 217p.
ELRAD, T. et al. Aspect-Oriented Programming. Communications of the ACM, New York, 44, 10, p.29-32, oct. 2001.
FOWLER, M. Put Your Process on a Diet: Lightweight Process. Software Development, 8, 12, p.32-36, dec. 2000.
GRUNDY, J. Aspect-Oriented Requirements Engineering for Component-based Software Systems. In: IEEE International Symposium on Requirements Engineering, 4, jun. 1999, Washington, DC. Proceedings of the IEEE International Symposium on Requirements
Engineering (RE’99). Los Alamitos, CA: IEEE Computer Society, 1999, p.84-91.
HARRISON, W.; OSSHER, H. Subject-oriented programming: a critique of pure objects. In: Conference on Object-Oriented Programming Systems, Languages and Applications, 8, sep. 1993, Washington, DC. Proceedings of the Conference on Object-Oriented Programming
Systems, Languages and Applications (OOPSLA’93). New York, NY: ACM SIGPLAN
Notices, 1993, v.28, p.411-428.
HURSCH, W.; LOPES, C. Separation of Concerns. Boston, MA: Northeastern University, 1995, 20 p. (Technical Report NU-CCS-95-03)
ISO/IEC, E. LOTOS – A Formal Description Technique Based on the Temporal Ordering of Observational Behaviour. International Standard 8807. Information Organization for
Standardization – Information Processing Systems – Open Systems Interconnection (ISO/IEC). Geneve, set. 1989.
JACOBSON, I. et al. The Unified Software Development Process. 1. ed. Boston, MA: Addison-Wesley, 1999, 463p.
JACOBSON, I. et al. Object Oriented Software Engineering: A Use Case Driven
Approach. 1. ed. Reading, MA: Addison-Wesley, 1992, 552 p.
JACOBSON, I.; NG P. Aspect-Oriented Software Development With Use Cases. Stoughton, MA: Addison-Wesley, 2004, p. 418.
JACOBSON, I. Use Cases and Aspects – Working Seamlessly Together. In: Journal of
Object Technology, v. 2, n. 4, jul.-ago. 2003. Disponível em:
KICZALES, G. et al. Aspect-oriented programming. In: European Conference of Object-Oriented Programming, 11, jun. 1997, Jyväskylä, Finland. Proceedings of the European
Conference of Object-Oriented Programming (ECOOP’97). Berlin: Springer, 1997, v.
1241, p. 220-242.
KELLER, S. et al. Specifying Software Quality Requirements with Metrics. In: Tutorial: System and Software Requirements Engineering, 1990, Washington, DC. Proceedings of the
System and Software Requirements Engineering (RE’90). [S.I.: s.n.], 1990, p. 145-163.
KRUCHTEN, P. The Rational Unified Process: An Introduction. 2. ed. Reading, MA: Addison-Wesley Longman Publishing, 2000, 255p.
LARMAN, C. Utilizando UML e Padrões: Uma Introdução à Análise e ao Projeto Orientado a Objetos e ao Processo Unificado. 2. ed. Porto Alegre: Bookman, 2004, 607p.
LIEBERHERR, K. Adaptive Object-Oriented Software: the Demeter Method with
Propagation Patterns, Boston: PWS Publishing Company, 1996, 617p.
MYLOPOULOS, J. et al. Representing and Using Non-functional Requirements: A Process-Oriented Approach. IEEE Transaction in Software Engineering, Toronto, v. 18, n. 6, p. 483-497, jun. 1992.
OMG. OMG Unified Modeling Language Specification. Disponível em: <http://www.omg.org>. Acesso em: 25.jan.2006.
OSSHER, H.; TARR, P. Using subject-oriented programming to overcome common problems in object-oriented software development/evolution. In: Tutorials: International Conference on Software Engineering, 21, may, 1999, Los Angeles, CA. Proceedings of the International
Conference on Software Engineering (ICSE’99). Los Alamitos, CA: IEEE Computer
Society, 1999, p.688-698.
PAGE-JONES, M. Fundamentals of Object-Oriented Design in UML. 1. ed. Reading, MA: Addison-Wesley Professional, 1999, 458 p.
PARNAS, D. L. On the Criteria to be Used in Decomposing System into Modules.
Communications of the ACM, v. 15, n. 12, p.1053-1058, dec. 1972.
PREHOFER, C. From Inheritance to Feature Interaction or Composing Monads. In: Arbeitstagung Programmiersprachen, Tagungsband der GI-Jahrestagung. Springer-Verlag, 1997, p. 562-571.
RASHID, A. et al. Early Aspects: A Model for Aspect-Oriented Requirements Engineering. In: IEEE Joint Conference on Requirements Engineering, 10, 2002, Essen, Germany.
Proceedings of the IEEE Joint Conference on Requirements Engineering (RE’02).
Washington, DC: IEEE Computer Society Press, 2002, p.199-202.
RASHID, A. et al. Modularisation and Composition of Aspectual Requirements. In: Aspect-Oriented Software Development, 2, 2003, Massachusetts, USA. Proceedings of the
International Conference on Aspect-Oriented Software Development (AOSD’03). New
SOMMERVILLE, I.; SAWYER, P. PREview Viewpoints for Process and Requirements
Analysis, Lancaster, 1996. (Technical Report REAIMS/WP5.1/LU060)
SOUSA, G., SILVA, I. And CASTRO, J. Adapting the NFR Framework to Aspect-Oriented Requirements Engineering. In: Brazilian Symposium on Software Engineering, 17, 2003, Manaus, AM. Proceedings of the Brazilian Symposium on Software Engineering (SBES). [S.I.; s.n.], 2003, p. 177-192.
SOUSA, G. et al. Separation of Crosscutting Concerns from Requirements to Design: Adapting an Use Case Driven Approach. In: Early Aspects: Aspect-Oriented Requirements Engineering and Architecture, 2004, Lancaster, UK. Proceedings of the International
Conference on Aspect-Oriented Software Development (AOSD’04). New York, NY:
ACM Digital Library, 2004. v.1, p. 93-1.
TARR, P. et al. N degrees of separation: Multi-dimensional separation of concerns. In: International Conference on Software Engineering, 16, 1999, Los Angeles, CA. Proceedings
of the International Conference on Software Engineering (ICSE). [S.I.]: IEEE Computer
Society Press, 1999, p.107-119.
WICHMAN, C. ComposeJ: The Development of a Preporcessor to Facilitate Composition Filters in the Java Language. 1999. 101f. Msc. Thesis - Dept. of Computer Science at University of Twente, Netherlands, 1999.
WIRFS-BROCK, R. Designing Scenarios: Making the Case for a Use Case Framework. New York: Smalltalk Report, 1993, 3p.
WTAOP. Workshop on Testing Aspect-Oriented Programs (WTAOP). Disponível em: <http://www.aosd.net/workshops/aotest/>. Acesso em: 01.fev.2007.
ZHAO, J. Tool Support for Unit Testing of Aspect-Oriented Software. In: Workshop on Tools for Aspect-Oriented Software Development, 17, nov. 2002, Seattle, WA. Proceedings of the
Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’02). [S.I.: s.n.], 2002.
Anexo A
Este anexo apresenta os artefatos produzidos durante a disciplina de levantamento de requisitos, do desenvolvimento do sistema de gerenciamento de hotéis hipotético, utilizando o paradigma orientado a objetos e o UP. Os próximos itens apresentam o detalhamento dos casos de uso, o modelo de casos de uso, o documento de especificação suplementar, o glossário e a descrição da arquitetura. O documento de protótipo de UI não será apresentado, pois dá foco à interface dos atores com o sistema e não está no escopo deste trabalho.
A.1. Casos de Uso
Este item apresenta o detalhamento dos casos de uso construídos durante a disciplina de levantamento de requisitos, na terceira iteração da construção do sistema de gerenciamento de hotéis hipotético. Os casos de uso são listados na seguinte ordem: Reservar Quarto, Realizar Reserva, Realizar Entrada, Realizar Saída, Entrar na Lista de Esperas, Tratar Lista de Esperas, Analisar Hóspede, Calcular Pontos.
A.1.1. Reservar Quarto