Dificultades y retos en la incorporación de prácticas de arquitectura

Autores/as

  • Flor de Maria Hernández Pérez SENA- Cauca
  • Julio Ariel Hurtado Algeria Universidad Del Cauca

DOI:

https://doi.org/10.18046/syt.v14i38.2290

Palabras 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.

Biografía del autor/a

  • Flor de Maria Hernández Pérez, SENA- Cauca

    Ingeniera de Sistemas de la Universidad Cooperativa de Colombia (2007), Especialista en Desarrollo de Soluciones Informáticas de la Universidad del Cauca (2012) y candidata a Magister en Computación de la Universidad del Cauca, donde además es miembro del grupo de Investigación IDIS [Investigación y Desarrollo de Ingeniería de Software] desde 2014. Es integrante también del grupo de investigación Innovatec del Centro de Teleinformática y Producción Industrial del SENA, regional Cauca, desde 2015. Se desempeña como docente de Educación Superior y como instructora del SENA en el Centro de Teleinformática y Producción Industrial (regional Cauca). 

  • Julio Ariel Hurtado Algeria, Universidad Del Cauca

    Profesor titular del Departamento de Sistemas de la Universidad del Cauca. Es miembro del grupo de Investigación y Desarrollo de Ingeniería de Software [IDIS] desde 2005. Recibió su doctorado en Ciencias de la Computación de la Universidad de Chile (2012) y su grado en Ingeniería Electrónica y Telecomunicaciones de la Universidad del Cauca (1997). Sus principales tópicos de investigación son: ingeniería de software, modelos de procesos software, arquitectura de software, controladores de modelos de Ingeniería y líneas de productos software. Su trabajo se ha enfocado en aplicar el uso de técnicas MDE y enfoques SPL para el diseño y análisis de modelos de procesos software.

Referencias

ANSI/IEEE 1471-2000. IEEE Recommended practice for architectural description for software-intensive. Retrieved from: https://standards.ieee.org/findstds/standard/1471-2000.html

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

2016-10-06

Número

Sección

Reportes de caso