de Software Declaración del Problema Problema Durante el desarrollo de proyectos en las empresas virtuales, los miembros del proyecto no tienen en claro el análisis, elaboración e implementación requeridos para la arquitectura de software del proyecto. Los proyectos presentados en las empresas virtuales de la Universidad Peruana de Ciencias Aplicadas no poseen una documentación de arquitectura de software correcta. Los alumnos egresados de la carrera de Ingeniería de Software no alcanzan el conocimiento necesario en arquitecturas de software, por lo cual no se cumple del todo con las metas propuestas por la carrera. Los proyectos presentados en las empresas virtuales de la Universidad Peruana de Ciencias Aplicadas no siguen una evaluación correcta de arquitectura de software. Causa
de Software Declaración del Problema Problema Durante el desarrollo de proyectos en las empresas virtuales, los miembros del proyecto no tienen en claro el análisis, elaboración e implementación requeridos para la arquitectura de software del proyecto. Los proyectos presentados en las empresas virtuales de la Universidad Peruana de Ciencias Aplicadas no poseen una documentación de arquitectura de software correcta. Los alumnos egresados de la carrera de Ingeniería de Software no alcanzan el conocimiento necesario en arquitecturas de software, por lo cual no se cumple del todo con las metas propuestas por la carrera. Los proyectos presentados en las empresas virtuales de la Universidad Peruana de Ciencias Aplicadas no siguen una evaluación correcta de arquitectura de software. El proceso de evaluación puede mejorar. Causa
de Software Objetivos del Proyecto Objetivo Principal •Definir el proceso para la elaboración de una Arquitectura de Software así como generar los artefactos que dicho proceso implique.
de Software Objetivos del Proyecto Objetivos Específicos •OE1. Analizar los requerimientos para la captura de escenarios de atributos de calidad (QAW). • Generar la guía en español de cómo realizar la captura de atributos de calidad (QAW). • Generar la plantilla de apoyo para el taller de captura de atributos de calidad (QAW). • Generar la plantilla de apoyo para la captura de escenarios. • Generar la plantilla de apoyo para el refinamiento de escenarios.
de Software Objetivos del Proyecto Objetivos Específicos •OE2. Diseñar la arquitectura de software basado en atributos (ADD). • Generar la guía en español de cómo realizar un diseño de arquitectura de software basado en atributos (ADD). • Generar la guía en español de cómo integrar los métodos de captura de atributos de calidad (QAW) y el diseño de una arquitectura de software basado en atributos (ADD). • Generar la plantilla de la matriz de patrones y conductores arquitecturales. • Generar el checklist del diseño de una arquitectura basada en atributos (ADD).
de Software Objetivos del Proyecto Objetivos Específicos •OE3. Construir los artefactos producidos durante la documentación de una arquitectura de software. • Generar la plantilla completa de un documento de arquitectura de software (SAD). • Generar la plantilla light de un documento de arquitectura de software (SAD). • Generar la plantilla del anexo para el análisis del enfoque arquitectural. • Generar ejemplo en español de un documento de arquitectura de software (SAD)
de Software Objetivos del Proyecto Objetivos Específicos •OE4. Presentar resultados de la investigación a través de formatos actualizados. • Formalizar y caracterizar el proceso de la captura de atributos de calidad (QAW). • Formalizar y caracterizar el proceso de diseño de una arquitectura de software basados en atributos (ADD).
de Software Indicadores de Éxito •IE1. Conformidad con los documentos del proceso de captura de atributos de calidad (QAW) generados: • Guía en español de cómo realizar la captura de atributos de calidad (QAW). • Proceso definido y caracterizado de la captura de atributos de calidad (QAW). • Plantilla de apoyo para el taller de captura de atributos de calidad (QAW). • Plantilla de apoyo para la captura de escenarios. • Plantilla de apoyo para el refinamiento de escenarios.
de Software Indicadores de Éxito •IE2. Conformidad con los documentos del proceso de diseño de una arquitectura de software basado en atributos (ADD) generados: • Guía en español de cómo realizar un diseño de arquitectura de software basado en atributos (ADD). • Proceso definido y caracterizado de diseño de una arquitectura de software basado en atributos (ADD). • Guía en español de cómo integrar los métodos de captura de atributos de calidad (QAW) y el diseño de una arquitectura de software basado en atributos (ADD).
de Software Indicadores de Éxito •IE3. Conformidad con los artefactos relacionados al proceso de la elaboración de un documento de arquitectura de software generados: • Plantilla completa de un documento de arquitectura de software (SAD). • Plantilla light de un documento de arquitectura de software (SAD). • Plantilla del anexo para el análisis del enfoque arquitectural. • Ejemplo en español de un documento de arquitectura de software (SAD)
de Software Indicadores de Éxito •IE4. Conformidad del cliente y los asistentes con el material elaborado para la capacitación y la capacitación de las empresas virtuales de Quality Assurance y Software Factory: • Acta de reunión y conformidad
de Software Conclusiones •La documentación de una arquitectura de software es transversal al proceso de elaboración de una arquitectura de software. •La documentación de una arquitectura es diferente según los stakeholders a los que esté dirigida. •La notación para la diagramación realizada en los artefactos debe ser siempre UML.
de Software Conclusiones •Para complementar la elaboración de una arquitectura se debe considerar también los métodos: • Revisiones activas del diseño (ARID) • Método de análisis de compensación de la arquitectura (ATAM) • Conformance Reviews
de Software Conclusiones •A pesar de proponer documentos físicos, la documentación de una arquitectura de software debe apoyarse en una herramienta de software diseñada para esta labor. • i.e Enterprise Architecture Documentación.
de Software Definiciones Software Architecture The software architecture of a program or computing system is the structure or structures of the system, which comprise software elements, the externally visible properties of those elements, and the relations among them. By “externally visible properties”, we are referring to those assumptions other components can make of a component, such as its provided services, performance characteristics, fault handling, shared resource usage, and so on. (Bass, Clements, and Kazman 2003, p.27)
de Software Material generado • Documento de Arquitectura de Software producto de la investigación • Documento de Arquitectura de Software producto de la investigación (versión light) • Aplicación del documento - Ejemplo uReader • Aplicación del documento - Ejemplo Java Builder • Tésis formato para INTERCON • Tésis formato IEEE