Tabla de Contenidos

Diseñar los componentes del proyecto

Objetivos

Durante este proceso se describirán los principales aspectos técnicos del proyecto a partir de los artefactos obtenidos en el proceso de Análisis. Se realizará el diseño de los componentes que tendrá el software mediante la especificación de la arquitectura tecnológica; los diagramas de arquitectura de software realizados en notación UML, principalmente a través de los diagramas de clase y los diagramas de secuencia; los diseños de las interfaces que ofrecen cada uno de los módulos; los diseños de pantalla que tendrán los módulos y los flujos de navegación entre los mismos.

Para la realización de este proceso, será necesario consultar los artefactos resultados de la disciplina de requisitos, así como los artefactos que son el resultado de la fase de Análisis.

Roles

Los siguientes son los roles participantes en este proceso:

Rol Tareas que interviene
Arquitecto
MDA-TR-1.0-ANA-Crear documento de Diseño del Proyecto
MDA-TR-1.0-ANA-Definir Arquitectura Tecnológica del Módulo
MDA-TR-1.0-ANA-Diseñar Modelo de Clases
MDA-TR-1.0-ANA-Identificar Interfaz Servicios Módulo
Diseñador Interfaz
MDA-TR-1.0-ANA-Diseñar Interfaz de Usuario del Módulo
Analista de Datos
MDA-TR-1.0-ANA-Crear Modelo Lógico de Datos

Tareas

MDA-TR-1.0-ANA-Crear documento de Diseño del Proyecto

1. Crear las tareas JIRA

Para esta tarea se deben de dar de alta JIRAs con los siguientes datos, y registrar las horas de trabajo en ellas:

Tipo Descripción Disciplina Proceso Label Version Fijada
Tarea Crear documento de Diseño Análisis y DiseñoANA-Diseñar los componentes del proyecto [Versión del proyecto]

2. Crear Documento de Diseño

2.1. Iniciar la creación de un nuevo Documento de Diseño.

Utilizaremos el siguiente documento maestro:

Plantilla del Artefacto SIGLAS Nomenclatura Ubicación
DocumentoDiseño DIS XXX-DIS-1.2.3-DocumentoDiseno.odm /Proyecto/Documentacion/3.AnalisisYDiseno

2.2. Escribir la siguiente sección del Documento de diseño:

NOTA:Como resultado del proceso de Análisis, se habrán identificado el número de módulos que será necesario construir. En la fase de diseño será necesario realizar las siguientes tareas tantas veces como módulos se hayan identificado en dicha fase.

MDA-TR-1.0-ANA-Definir Arquitectura Tecnológica del Módulo

1. Crear las tareas JIRA

Para esta tarea se deben de dar de alta JIRAs con los siguientes datos, y registrar las horas de trabajo en ellas:

Tipo Descripción Disciplina Proceso Label Version Fijada
Tarea Escribir Arquitectura Tecnológica Módulo Análisis y DiseñoANA-Diseñar los componentes del proyecto [Versión del proyecto]

2. Crear Documento de Diseño Modulo

2.1. Iniciar la creación de un nuevo Documento de Diseño Modulo.

Tenemos dos plantillas, según sea un Modulo Web o un Modulo de Servicios. Lo único que cambia en esas plantillas es el diagrama de arquitectura tecnológica del módulo.

Plantilla Siglas Nomenclatura Ubicación
DiseñoModuloWeb DISM XXX-DISM-1.2.3-DocumentoDisenoModulo.odt /Proyecto/Documentacion/3.AnalisisYDIseno
DiseñoModuloServicio DISM XXX-DISM-1.2.3-DocumentoDisenoModulo.odt /Proyecto/Documentacion/3.AnalisisYDIseno

*Las plantillas hacen uso de los gráficos Diagrama de Arquitectura Tecnológica de Módulo Web y Diagrama de Arquitectura Tecnológica de Módulo de Servicios que también pueden ser descargados y modificados.

3. Escribir Arquitectura Tecnológica del Módulo

NOTA:En esta sección se refinará la arquitectura definida en la fase de Análisis, añadiendo las tecnologías concretas / productos en los que se basará este módulo. El resultado será un diagrama de arquitectura tecnológica completo del módulo.

De manera similar a la fase de análisis, podemos partir de dos plantillas web proporcionadas por MEDEA con los tipos de módulos mas comunes.

3.1. Para un proyecto basado en Web, podemos utilizar la plantilla que contiene esta arquitectura estándar:

- Documento de Diseño de Modulo Web con su correspondiente:

- Diagrama de Arquitectura Tecnológica de Módulo Web.

3.2. Si no se utiliza esa arquitectura por defecto, o se necesita hacer modificaciones, tendremos que escribir los siguientes apartados en el Documento de Diseño del Modulo.

NOTA: X = Número de Modulo en el Documento de Diseño

El gráfico será insertado como objeto OLE (Insertar → Objeto → Objeto OLE), pudiendo arrastrar directamente el documento odg modificado.

MDA-TR-1.0-ANA-Diseñar Modelo UML

En esta tarea se definirá cómo van a estar implementados los distintos Casos de Uso / Historias de nuestro sistema. Este diseño tendrá una parte estática y otra dinámica. No es obligatorio hacer un diseño completo, pero sí hacerlo como mínimo de las historias / casos de uso fundamentales del sistema. Se podrá referenciar a la arquitectura por defecto de un proyecto Fundeweb.

1. Crear las tareas JIRA

Para esta tarea se deben de dar de alta JIRAs con los siguientes datos, y registrar las horas de trabajo en ellas:

Tipo Descripción Disciplina Proceso Label Version Fijada
Tarea Diseñar Modelo UML Análisis y DiseñoANA-Diseñar los componentes del proyecto [Versión del proyecto]

2. Escribir Modelado de Clases

2.1. Escribir la siguiente sección del Documento de Diseño de Modulo:

* El diagrama se realizará con la herramienta Astah. Para más información de cómo realizarlo seguir el siguiente manual, en el apartado Diagramas de Diseño

3. Escribir Modelado de Comportamiento (Dinámico)

3.1. Escribir la siguiente sección del Documento de Diseño de Modulo:

MDA-TR-1.0-ANA-Identificar Interfaces de Servicio del Módulo

1. Crear las tareas JIRA

Cada participante en esta tarea DEBE crear un JIRA con los siguientes datos, y registrar las horas de trabajo en ella:

Tipo Sumario Disciplina Proceso Label Version Fijada
Tarea Identificar Interfaces de Servicio del Módulo Análisis y DiseñoANA-Diseñar los componentes del proyecto [Versión del proyecto]

2. Crear la wiki del grupo de trabajo (si no existe)

La creación de las interfaces del servicio, será necesario hacerla cuando el proyecto vaya a proporcionar al exterior (aunque sea para utilizarlo dentro sólo de ATICA por otros proyectos), funcionalidad. Ya sea a través de Servicios SOA, Ejbs remotos, Servlet o PAOs.

La forma más eficiente de tenerlo es através de la wiki, ya que los cambios serán visibles instantánemente por todos los usuarios potenciales de la funcionalidad.

En caso de que no exista se deberá crear una entrada en la Wiki del programador, con los servicios del grupo de trabajo.

3. Escribir una entrada por cada Servicio

Por cada servicio publicado, habrá que especificar la información que indicamos a continuación. Ditinguiremos entre una interfaz RMI y otra SOAP, se rellenará la que convenga en cada caso.

MDA-TR-1.0-ANA-Crear Modelo Lógico de Datos

1. Crear las tareas JIRA

Cada participante en esta tarea DEBE crear un JIRA con los siguientes datos, y registrar las horas de trabajo en ella:

Tipo Sumario Disciplina Proceso Label Version Fijada
Tarea Crear Modelo Lógico de Datos Análisis y DiseñoANA-Diseñar los componentes del proyecto [Versión del proyecto]

2. Crear Modelo Lógico de Datos

2.1. Escribir la siguiente sección del Documento de Diseño de Modulo:

Para incluir el manual usar la opción File → Print Diagram → To Image File. Luego importarla como imagen.

MDA-TR-1.0-ANA-Definir Interfaz Usuario del Sistema (Opcional)

¿Cuando es beneficioso definir la interfaz usuario del sistema ?

Tampoco va a ser siempre necesario que aparezcan absolutamente TODAS las pantallas de la aplicación. Deberíamos de centrarnos en las que tengan más complejidad y sean más propensas a errores entre la comunicación CLIENTE/ANALISTA DE REQUISITOS , ANALISTA DE REQUISITOS / DESARROLLADORES.

1. Crear las tareas JIRA

Cada participante en esta tarea DEBE crear un JIRA con los siguientes datos, y registrar las horas de trabajo en ella:

Tipo Sumario Disciplina Proceso Label Version Fijada
Tarea Definir Interfaz Usuario del Sistema Análisis y DiseñoANA-Diseñar los componentes del proyecto [Versión del proyecto]

2. Realizar Prototipado Pantallas

2.1. Escribir la siguiente sección del Documento de Diseño de Modulo:

¿Con qué herramientas hacer esas imagenes de pantalla?

Incluso es posible simplemente dibujarla en papel y más tarde incluirla en el documento, haciendoles una foto. Lo importante NO es la herramienta.

Plantilla del Artefacto SIGLAS Nomenclatura Ubicación
PrototipadoPantalla PRT XXX-PRT-1.2.3-PrototipadoPantalla[NombrePantalla] /Proyecto/Documentacion/3.AnalisisYDiseno/3.4 Prototipado

3. Realizar flujos de Navegacion de Páginas

3.1. Escribir la siguiente sección del Documento de Diseño de Modulo:

Plantilla del Artefacto SIGLAS Nomenclatura Ubicación
NavegacionDePantallas NAV XXX-NAV-1.2.3-NavegacionPantallas /Proyecto/Documentacion3.AnalisisYDiseno/3.4 Prototipado

Artefactos

De entrada

Plantilla del Artefacto SIGLAS Nomenclatura Ubicación
DocumentoDeRequisitos DRQ XXX-DRQ-1.2.3-DocumentoRequisitos/Proyecto/Documentacion/2.Requisitos
DocumentoDeAnálisisDeMódulo ANM XXX-ANA-1.2.3-Arquitectura–[NombreMódulo] /Proyecto/Documentacion/3.AnalisisYDiseno

De salida

Plantilla del Artefacto SIGLAS Nomenclatura Ubicación
DocumentoDiseño DIS XXX-DIS-1.2.3-DocumentoDiseño.odm Proyecto/Documentacion/3.AnalisisYDiseno
DocumentoDiseñoModulo DISM XXX-DISM-1.2.3-DocumentoDisenoModulo.odt Proyecto/Documentacion/3.AnalisisYDiseno
DiagramaArquitecturaTecnológica DART XXX-DART-1.2.3-ArquitecturaNombreModulo Proyecto/Documentacion/3.AnalisisYDiseno/3.1.Arquitectura
PrototipadoPantalla PRT XXX-PRT-1.2.3-PrototipadoPantalla[NombrePantalla] Proyecto/Documentacion/3.AnalisisYDiseno/3.4 Prototipado
NavegacionDePantallas NAV XXX-NAV-1.2.3-NavegacionPantallas Proyecto/Documentacion/3.AnalisisYDiseno/3.4 Prototipado
ModeloLogicoDeDatos MDT XXX-MDT-1.2.3-ModeloDatos Proyecto/Documentacion/3.AnalisisYDiseno/3.3.BaseDatos
DiagramaClasesDiseño UML Diagrama de Clases Diseño Proyecto/Documentacion/3.AnalisisYDiseno/XXX-UML-1.2.3.-DiagramasUmlAnalisisDiseno.asta/Diseno
DiagramaSecuenciaDiseño UML Diagrama de Secuencia Diseño Proyecto/Documentacion/3.AnalisisYDiseno/XXX-UML-1.2.3.-DiagramasUmlAnalisisDiseno.asta/Diseno

Herramientas

Herramienta Version Utilizada en Descarga
Astah UML 6.4 Modelado UML (Diagrama de Clases y Secuencia) Lista de Herramientas propuestas en MEDEA
OpenOffice Writer 3.3 Documento Análisis, Documento Diseño Novell
OpenOffice Draw 3.3 Diagrama de Navegación de Páginas Novell
Evolus Pencil 1.2 Prototipado de pantallas http://pencil.evolus.vn/en-US/Home.aspx
Oracle Data Modeler 3.0 Modelo Logico de datos http://www.um.es/atica/oracle-data-modeler

Métricas

Las métricas del proyecto se guardarán dentro de la carpeta del proyecto en Proyecto/Documentacion/1.Gestionproyecto/1.4.Metricas. Las métricas de este proceso en concreto se almacenan en la Hoja ANA.

NOTA: Todos los tiempos se miden en horas, salvo que se indique expresamente lo contrario.

Numero de Clases en Diagrama Clases Diseño

  1. Abre el fichero Diagramas UML.

- Cuenta el numero de clases que cuelgan de la carpeta Diseño.

Numero de Servicios

  1. Ir a la wiki del grupo de trabajo. Identificar el número de Servicios en la wiki que se van a desarrollar / modificar.

Numero de Métodos

  1. Ir a la wiki del grupo de trabajo. Identificar el número de Servicios en la wiki que se van a desarrollar / modificar.

- Por cada Servicio ir a la página de Definición de la Interfaz y contar el número de mñetodos a desarrollar / modificar.

Numero de Entidades del Modelo Lógico de Datos

  1. Abrir el documento Modelo Lógico de Datos.
  2. Ir a Logical carpeta Entities. Contar el número de entidades.

Numero de Pantallas

    1. Abrir el documento
    2. Contar el numero de pantallas. Añadirlo al número final.