Dificuldades e desafios na incorporação de práticas arquitectónicas
DOI:
https://doi.org/10.18046/syt.v14i38.2290Palavras-chave:
Arquitetura de software, QAW, ADD, atributos de qualidade, táticas arquiteturais, padrões arquitetônicos.Resumo
A arquitetura de software tornou-se um elemento essencial nas organizações de desenvolvimento de software, permitindo atingir as metas de qualidade e obter produtos facilmente evoluíveis. No entanto, em pequenas organizações, arquitetura de software é geralmente uma vaga ideia sobre a estrutura da solução. Este artigo apresenta um estudo de caso de aplicação dos métodos de arquitetura QAW, ADD e VaB, com pequenas equipes de engenheiros desenvolvedores durante um curso de engenharia de software. Foram identificadas algumas dificuldades para rastrear e documentar devidamente o rationale associado a atributos de qualidade, táticas de arquitetura e padrões selecionados. Estabeleceu-se a dificuldade de seguir um processo de arquitetura e deixar evidência consistente do mesmo, especialmente quando a mesma especificação gera conflito entre os atributos estabelecidos e as tácticas e padrões que vão se estabelecendo.
Referências
Barbacci, M., Ellison, R., Lattanze, A., Stafford, J., Weinstock, C., & Wood, W. (2003). Quality attributes workshops [3rd ed. - technical report
CMU/SEI-2003-TR-016 ESC-TR-2003-016]. Pittsburgh, PA: Carnegie Melon University. Available at: http://www.sei.cmu.edu/reports/03tr016.pdf
Bass, L., Clements, P., & Kazman, R. (2003). Software architecture in practice. Boston, MA: Addison-Wesley.
Bellomo, S., Nord, R., & Ozkaya, I. (2013). A study of enabling factors for rapid fielding combined practices to balance speed and stability. In: Proceedings of the ACM-IEEE International Conference on Software Engineering (pp. 982-991). Los Alamitos, CA: IEEE Computer Society.
Berlin-Heidelberg: Germany.
Booch, G., Maksimchuk, R., Engle, M., Young, B., Conallen, J., & Houston, K. (2007). Object-oriented analysis and design with applications. Upper Saddle River, NJ: Addison-Wesley
Bosch, J. (2004). Lecture Notes in Computer Science Vol. 3047. Software architecture: The next step (pp. 194-199).
Clements, P. & Bass, L. (2010). Using business goals to inform software architecture. In Proceedings of the 2010 18th IEEE International Requirements Engineering Conference, RE2010, (pp. 69-78). IEEE.
Clements, P., Bachman, F., Bass, L., Garlan, D., Ivers, J., Little, R., ... Stafford, J. (2010). Documenting software architectures: Views and beyond [2nd ed.]. Boston, MA: Pearson.
Cockburn, A. 2000. Selecting a project’s methodology. IEEE Software, 17(4), 64-71.
Conradi, R. & Fuggetta, A. (2002). Improving software process improvement. IEEE Software, 19(4), 92-99.
Curtis, B., Krasner, H., & Iscoe, N. (1988). A field study of the software design process for large systems. Communications of the ACM, 31(11), 1268-1287.
Escobar, A., Velandia, D. Ordoñez, H. & Cobos, C. (2015).A review of the impact on XP methodology of business model inclusion in requirements elicitation. Sistemas & Telemática, 13(33), 45-61. http://dx.doi.org/10.18046/syt.v13i33.2080
Garlan, D. (1995). An introduction to the Aesop system. Retrieved from: http://www.cs.cmu.edu/afs/cs/project/able/ftp/aesop-overview.pdf
Garlan, D., Monroe, R., Wile, D. (2000). ACME: Architectural description
of component-based systems. In: G. Leavens & M. Sitaraman [Eds.], Foundations of component-based systems (pp. 47-68). Cambridge, UK: Cambridge University Press
Gosselt, R. W. (2012). A maturity model based roadmap for implementing. In: 17th Twenty Student Conference on IT [online]. Retrieved from: http://referaat.cs.utwente.nl/conference/17/paper/7341/a-maturity-model-based-roadmap-for-implementing-togaf.pdf
Yin, R. (2009). Case study research. London, UK: Sage.
ISO/IEC 12207:2008. Systems and software engineering -- Software life cycle processes. Geneva, Switzerland: ISO/IEC. Available at: http://www.iso.org/iso/catalogue_detail?csnumber=43447
Josey, A. (2011). TOGAF Version 9.1 Enterprise Edition. Reading, UK: The Open Group.
Juran, J. M. (1988). Juran on planning for quality. New York, NY: Free press.
Kazman, R. (1996). Tool support for architecture analysis and design. In: Joint proceedings of the Second International Software Architecture Workshop (ISAW-2) and International Workshop on Multiple Perspectives in Software Development (Viewpoints ’96) on SIGSOFT ’96 Workshops (pp. 94-97). New York, NY: ACM. doi: 10.1145/243327.243618
Kazman, R., Gagliardi, M., & Wood, W. (2012). Scaling up software architecture analysis. Journal of Systems and Software, 85(7), 1511-1519. doi:10.1016/j.jss.2011.03.050.
Kazman, R., Klein, M., & Clements, P. (2000).ATAM: Method for architecture evaluation (No. CMU/SEI-2000-TR-004). Pittsburgh PA: Carnegie-Mellon University.
Kruchten, P. (1995). Architectural blueprints—The “4+ 1” view model of software architecture. Tutorial Proceedings of Tri-Ada, 95, 540-555.
Losavio, F. & Guillén, D. (2003). Diseño arquitectónico de sistemas distribuidos. Rapide, 15(1). Retrieved from: http://www.dcc.uchile.cl/~mmarin/revista-sccc/sccc-web/Vol5/wis1.pdf
Lungu, M., Lanza, M., & Nierstrasz, O. (2014). Evolutionary and collaborative software architecture recovery with softwarenaut. Science of Computer Programming 79, 204-223.
Medvidovic, N. & Taylor, R. (2000). A classification and comparison framework for software architecture description languages. IEEE Software Engineering, 26(1), 70-93.
Medvidović, N., Oreizy, P., & Taylor, R. (1997). Reuse of off-the-shelf components in c2-style architectures. In: Software Engineering (ICSE 1997), 19th International Conference on, (pp. 692-700). doi:10.1109/ICSE.1997.610496.
Muñoz, L. & Hurtado, J. (2012). XA: An XP extension for supporting architecture practices. In: 2012 7th Colombian Computing Congress, CCC 2012 (p. 5). IEEE. doi:10.1109/ColombianCC.2012.6398012
Navarro, A., Fernández, J., & Morales, J. (2013). Revisión de metodologías ágiles para el desarrollo de software. Prospectiva, 11(2), 30-39.
OMG. (2011). OMG unified modeling language (OMG UML), superstructure, version 2.4.1. Retrieved from: http://www.omg.org/spec/UML/2.4.1/Superstructure/PDF/
Rational Software (2004). Rational unified process: Best practices for software development teams [white paper TP026B, Rev 11/01]. Cupertino, CA: Rational Software. Available at: https://www.ibm.com/developerworks/rational/library/content/03July/1000/1251/1251_bestpractices_TP026B.pdf
Reynoso, C. (2004). Introducción a la arquitectura de software. Recuperado de: http://carlosreynoso.com.ar/archivos/carlos-reynoso-introduccion-a-la-arquitectura-de-software.pdf
Rumbaugh, J., Jacobson, I., & Booch, G. (1999). El lenguaje unificado de modelado: manual de referencia. Madrid, España: Addison-Wesley.
Sangwan, R., Neill, C., Bass, M., & El Houda, Z. (2008). Integrating a software architecture-centric method into object-oriented analysis and design. Journal of Systems and Software, 81(5), 727-746.
Shaw, M. & Garlan, D. (1996). Software architecture: Perspectives on an emerging discipline. Upper Saddle River: Prentice Hall.
Tang, A., Babar, M. A., Gorton, I., & Han, J. (2006). A survey of architecture design rationale. Journal of systems and software, 79(12), 1792-1804.
Vestal, S. & Krueger, J. (2000, Jan. 1). Technical and historical overview of MetaH. Retrieved from: http://aadl.sei.cmu.edu/aadl/documents/Technical%20and%20Historical%20Overview%20of%20MetaH.pdf
Vestal, S. (n.d). The MetaH AADL toolset. Retrieved from: http://www51.honeywell.com/aero/technology/common/documents/MetaH.pdf
Williams, B. & Carver, C. (2010). Characterizing software architecture changes: A systematic review. Information and Software Technology 52(1), 31-51. http://dx.doi.org/10.1016/j.infsof.2009.07.002.
Wojcik, R. Bachmann, F., Bass, L., Clements, P., Merson, P., Nord, R., & Wood, B. (2006, November). Attribute driven design (ADD), versión 2.0 [technical report CMU/SEI-2006-TR-023 ESC-TR-2006-023]. Pittsburgh, PA: Carnegie Mellon University. Available at: http://www.sei.cmu.edu/reports/06tr023.pdf
Zachman, J. (1987). A framework for information systems architecture. IBM Systems Journal, 26(3): 454-470.
Downloads
Publicado
Edição
Seção
Licença
Esta publicação está licenciada sob os termos da licença CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/deed.pt_BR).