Proceso de elaborar documentos con el propósito de
comunicar la información relevante de un proceso o
producto.
Documentar Arquitectura de Software
Etapa que se centra en la generación de documentos que describen las estructuras de
la arquitectura con el propósito de la información puede ser comunicada de manera
eficiente a los interesados del sistema.
Razones para documentar
1. Mejorar la comunicación de información sobre la arquitectura
2. Preservar la información sobre la arquitectura
3. Guiar la generación de artefactos en otras fases del ciclo
4. Proveer un lenguaje común entre diversos interesados en el sistema
Vistas
Vistas logicas
Denotan las propiedades como relaciones u organización
Clases
Paquetes
Modulos
Subsistemas
Vista de Comportamiento
Denotan entidades visibles en tiempos de ejecución
Vista físicas
Despliegue
Notaciones
Notaciones informales
No utilizan un lenguaje preciso. Su sintaxis y su semantica no son
formales. Puede resultar inadecuado sino se siguen ciertas indicaciones
Notaciones Semi Informales
Tampoco es un lenguaje preciso, pero es aceptada por el uso de UML. Pero estas notaciones no
fueron creadas para documentar arquitecturas de software,. Por lo que en algunas casos podría
estar limitada.
Notaciones Formales
Lenguaje preciso que no presenta limitaciones. Utilizan un conjunto de conceptos
arquitectónicos, con fundamento matemático de tipo lógico o de álgebra.
Componente: Representa un elemento que realiza
procesamiento de almacenamiento de datos
Conector: representa canales de flujos de datos o de
control entre componentes
Configuración: representa la relación entre los
componentes y conectores
Métodos y marcos conceptuales, de documentación de arquitecturas
Metodo: manera explicita de describir
entradas requeridas, la secuencia de acciones
y las salidas generadas
Marco conceptual: proveen un conjunto de conceptos que
deben considerarse al documentar la arquitectura
Comunes
Vistas y mas allá
Propuesto por el SEI. Vistas: módulos, componentes,
conectores y asignaciones
Proceso de secuencia
Generar lista de vistas candidatas
Combinar las vistas
Priorizar las vistas
4 + 1 vistas
Vista logica
Vista de proceso
Vista de desarrollo
Vista física
Vista "+1"
Puntos de vistas y perspectivas
Funcional
Información
Concurrencia
Desarrollo
Implementación
Operacional
Contexto
ACDM
Etapas
1. Identificación de drivers arquitectonicos
2. Especificación del alcance del proyecto
3. Creación o refinamiento de la arquitectura
4. Revisión de la arquitectura
5. Desición de llevar o no la arquitectura a producción
6. Experimentacion
7. Planeación de la implementación
8. Implementación
Recomendaciones para elaborar la documentación
1. Escribir la documentación desde la perspectiva de las persona que la van a utilizar
2. Usar cuadro de notaciones al hacer uso de notaciones propietarias o infarmales
3. Usar una abstracción considerando el tipo de usuario según la documentación
4. Aspecto de presentación: gramática, ortografía y legibilidad
5. Menor uso posible de acrónimos
6. Usar nombres descriptivos a elementos, relaciones y propiedades a las vistas
7. Detallar información de elementos que se utilizan en diferentes vistas y artefactos