Um Levantamento de Métodos de Avaliação de Arquiteturas de Software Específicas

  • Lucas Bueno Ruas de Oliveira USP
  • Elisa Yumi Nakagawa USP

Resumo


Uma diversidade de métodos de avaliação de arquiteturas de software vêm sendo propostos, visando a qualidade dos sistemas de software. Esforços para o levantamento, análise e comparação desses métodos podem também ser encontrados. Contudo, um levantamento mais recente não tem sido conduzido. Assim, este artigo tem como principal objetivo a identificação de métodos que abordem a avaliação de arquiteturas específicas e recentes — a saber arquiteturas de referência, arquiteturas orientadas a serviço e arquiteturas orientadas a aspectos — considerando-se que nos últimos anos essas arquiteturas têm-se tornado alvo tanto de pesquisa quanto de utilização. Como principal resultado, observou-se que há ainda uma grande carência de métodos consolidados e largamente aceitos para a avaliação de tais arquiteturas.

Referências

Angelov, S., Trienekens, J. J., and Grefen, P. (2008). Towards a method for the evaluation of reference architectures: Experiences from a case. In ECSA'08: Proc. of the 2nd Eur. Conf. on Software Architecture, pages 225-240, Paphos, Cyprus.

Babar, M. and Gorton, I. (2004). Comparison of scenario-based software architecture evaluation methods. In Software Engineering Conference, 2004. Proc. of the 11th Asia-Pacific, pages 600-607, Busan, Korea.

Babar, M. A. (2007). Evaluating product line architectures: Methods and techniques. In APSEC '07: Proceedings of the 14th Asia-Pacific Software Engineering Conference, page 13, Washington, DC, USA. IEEE Computer Society.

Baniassad, E., Clements, P. C., Araujo, J., Moreira, A., Rashid, A., and Tekinerdogan, B. (2006). Discovering early aspects. IEEE Software, 23(1):61-70.

Barcelos, R. F. and Travassos, G. (2006a). Evaluation approaches for software architectural documents: a systematic review. In Proc. of the IX Ibero-American Workshop on Requirements Engineering and Software Environments (IDEASí06), La Plata, Argentina.

Barcelos, R. F. and Travassos, G. H. (2006b). ArqCheck: Uma abordagem para inspeção de documentos arquiteturais baseada em checklist. In V Simpósio Brasileiro de Qualidade de Software (SBQS'2006), pages 175-189.

Bass, L., Clements, P., and Kazman, R. (2003). Software Architecture in Practice. Addison-Wesley.

Becker, S., Trifu, M., and Reussner, R. (2008). Towards supporting evolution of service-oriented architectures through quality impact prediction. In ASE Workshops 2008, 23rd IEEE/ACM International Conference on Automated Software Engineering, pages 77-81, L'Aquila, Italy.

Bengtsson, P., Lassing, N., Bosch, J., and van Vliet, H. (2004). Architecture-level modifiability analysis (ALMA). Journal of Systems and Software, 69(1-2):129-147.

Clarke, S. and Walker, R. J. (2001). Composition patterns: An approach to designing reusable aspects. In Proc. of the 23rd Int. Conf. on Software Engineering (ICSEí01), volume 0, pages 5-14, Toronto, Canada.

Clements, P., Kazman, R., and Klein, M. (2002). Evaluating Software Architecture. The SEI Series in Software Engineering. Addison-Wesley, Boston, MA.

Cuesta, C. E., Romayb, M. P., de la Fuente, P., and Barrio-Solórzano, M. (2006). Coordination as an architectural aspect. Electronic Notes in Theoretical Computer Science, 154(1):25-41.

Dai, L. and Cooper, K. (2005). Modeling and analysis of non-functional requirements as aspects in a uml based architecture design. In 6th Int. Conf. on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing and First ACIS Int. Workshop on Self-Assembling Wireless Networks (SNPD/SAWN'05), pages 178-183, Los Alamitos, CA, USA.

Dobrica, L. and Niemel, E. (2002). A survey on software architecture analysis methods. IEEE Trans. Software Engineering, 28(7):638-653.

Dolan, T. J. (February 2002). Architecture Assessment of Information-System Families. PhD thesis, Department of Technology Management, Eindhoven University of Technology.

Eickelmann, N. S. and Richardson, D. J. (1996). An evaluation of software test environment architectures. In Proc. of the 18th Int. Conf. on Software Engineering (ICSE'96), pages 353-364, Berlin, Germany.

Filho, E. D. S., Oliveira Cavalcanti, R., Neiva, D. F., Oliveira, T. H., Lisboa, L. B., Almeida, E. S., and Lemos Meira, S. R. (2008). Evaluating domain design approaches using systematic review. In ECSA '08: Proceedings of the 2nd European conference on Software Architecture, pages 50-65, Berlin, Heidelberg. Springer-Verlag.

Gallagher, B. P. (2000). Using the architecture tradeoff analysis method to evaluate a reference architecture: A case study. Technical Report CMU/SEI-2000-TN-007.

Graaf, B., van Dijk, H., and van Deursen, A. (2005). Evaluating an embedded software reference architecture - industrial experience report. In Proc. of the 9th European Conf. on Software Maintenance and Reengineering (CSMRí2005), pages 354-363.

Iacob, M.-E. and Jonkers, H. (2007). Quantitative analysis of service-oriented architectures. Inte. Journal of Enterprise Information Systems, 3(1):42-60.

Ionita, M., Hammer, D., and Obbink, H. (2002). Scenario-based software architecture evaluation methods: An overview. In Workshop on Methods and Techniques for Software Architecture Review and Assessment at the ICSEí02, pages 1-12, Orlando, Florida.

Ivers, J., Clements, P., Garlan, D., Nord, R., Schmerl, B., and Silva, J. R. O. (2004). Documenting component and connector views with UML 2.0. Technical report. CMU/SEI2004-TR-008.

Kazman, R., Bass, L., Abowd, G., and Webb, M. (1994). SAAM: A method for analyzing the properties of software architectures. In Proc. of the 16th Int. Conf. on Software Engineering, pages 81-90, Sorrento, Italy.

Kazman, R., Klein, M., Barbacci, M., Longstaff, T., Lipson, H., and Carriere, J. (1998). The architecture tradeoff analysis method. In Proc. of 4th IEEE Inter. Conf. on Engineering Complex Computer Systems (ICECCS'98), pages 68-78, Monterey, CA, USA.

Kiczales, G., Irwin, J., Lamping, J., Loingtier, J., Lopes, C., Maeda, C., and Menhdhekar, A. (1997). Aspect-oriented programming. In Proc. of the 11th Eur. Conf. on Object-Oriented Programming, pages 220-242, Jyväskylä, Finland.

Kim, T., Ko, I. Y., Kang, S. W., and Lee, D. H. (2008). Extending ATAM to assess product line architecture. In Proc. of the 8th IEEE Int. Conf. on Computer and Information Technology (CITí2008), pages 790-797.

Kitchenham, B. (2004). Procedures for performing systematic reviews. Technical Report TR/SE-0401, Keele University.

Kruchten, P., Obbink, H., and Stafford, J. (2006). The past, present, and future for software architecture. IEEE Software, 23(2):22-30.

Laddad, R. (2003). Aspect-oriented programming will improve quality. IEEE Software, 20(6):90-91.

Nakagawa, E. Y. and Maldonado, J. C. (2008). Architectural requirements as basis to quality of software engineering environments. IEEE Latin America Transactions, 6(3):260-266.

Nakagawa, E. Y., Simão, A. S., Ferrari, F., and Maldonado, J. C. (2007). Towards a reference architecture for software testing tools. In Proc. of the 19th Int. Conf. on Software Eng. and Knowledge Eng. (SEKE'2007), pages 1-6, Boston, USA.

Navarro, E., Letelier, P., and Ramos, I. (2007). Requirements and scenarios: Running aspect-oriented software architectures. In 6th IEEE/IFIP Conf. on Software Architecture (WICSA'07), page 23, Washington, DC, USA. IEEE Computer Society.

Papazoglou, M. P. and Heuvel, W.-J. (2007). Service oriented architectures: approaches, technologies and research issues. The VLDB Journal, 16(3):389-415.

Rashid, A. and Chitchyan, R. (2003). Persistence as an aspect. In Proc. of the 2nd Int. Conf. on Aspect-oriented Software Development (AOSD'03), pages 120-129, New York, NY, USA. ACM Press.

Schroeder, A. and Mayer, P. (2008). Verifying interaction protocol compliance of service orchestrations. In ICSOC'08: Proceedings of the 6th International Conference on Service-Oriented Computing, pages 545-550, Berlin, Heidelberg. Springer-Verlag.

SEI. CBAM: Cost benefit analysis method. Technical report, Software Engineering Institute. [link].

Shaw, M. and Clements, P. (2006). The golden age of software architecture. IEEE Software, 23(2):31-39.

Slyngstad, O. P., Li, J., Conradi, R., and Babar, M. A. (2008). Identifying and understanding architectural risks in software evolution: An empirical study. In Proc. of the 9th Inter. Conf. on Product-Focused Software Process Improvement (PROFES'08), pages 400-414, Berlin, Heidelberg. Springer-Verlag.

Stein, D., Hanenberg, S., and Unland, R. (2002). A UML-based aspect-oriented design notation for aspectj. In Proc. of the 1st Inter. Conf. on Aspect-oriented Software Development (AOSD'02), pages 106-112, New York, NY, USA. ACM.

Tekinerdogan, B. (2004). ASAAM: Aspectual software architecture analysis method. In Proc. of the 4th Working IEEE/IFIP Conf. on Software Architecture (WICSA'04), pages 5-14, Oslo, Norway.

Williams, L. and Smith, C. (2002). PASA: A method for the performance assessment of software architecture. In Proc. of the 3rd Workshop on Software Performance, pages 179-189, Rome, Italy.
Publicado
09/09/2009
OLIVEIRA, Lucas Bueno Ruas de; NAKAGAWA, Elisa Yumi. Um Levantamento de Métodos de Avaliação de Arquiteturas de Software Específicas. In: SIMPÓSIO BRASILEIRO DE COMPONENTES, ARQUITETURAS E REUTILIZAÇÃO DE SOFTWARE (SBCARS), 3. , 2009, Natal/RN. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2009 . p. 52-65. DOI: https://doi.org/10.5753/sbcars.2009.24101.