Dificultades y retos en la incorporación de prácticas de arquitectura
DOI:
https://doi.org/10.18046/syt.v14i38.2290Palabras clave:
Arquitectura software, QAW, ADD, atributos de calidad, tácticas arquitecturales, patrones arquitectónicos.Resumen
La arquitectura software se ha convertido en un activo clave en las organizaciones desarrolladoras de software, pues permite alcanzar las metas de calidad y lograr productos fácilmente evolucionables. Sin embargo, en las pequeñas organizaciones, la arquitectura de software normalmente es una idea vaga sobre la estructura de la solución. En este artículo se presenta un estudio de caso de aplicación de los métodos de arquitectura QAW, ADD y VaB, con pequeños equipos de ingenieros desarrolladores durante un curso de ingeniería de software. Se identificaron algunas dificultades para trazar y documentar correctamente el rationale asociado a atributos de calidad, tácticas arquitecturales y patrones seleccionados. Se pudo establecer la dificultad de seguir un proceso de arquitectura y que quede evidencia consistente del mismo, más aún cuando la misma especificación genera conflicto entre los atributos establecidos y las tácticas y patrones que se van estableciendo.
Referencias
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.
Descargas
Publicado
Número
Sección
Licencia
Esta publicación está licenciada bajo los términos de la licencia CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/deed.es)