====== Definición de Disciplinas en Medea ====== ===== Modelo ===== Medea estará formado por una serie de componentes que están interrelacionados entre sí tal y como indica el siguiente diagrama de clases UML. {{:mda:modelomedea.jpg|}} El significado de estos componentes podemos encontralo en el [[mda:glosario]]. ===== Disciplinas ===== Medea está dividida en un conjunto de disciplinas que, como ya dijimos en el glosario, consiste en una agrupación lógica de roles, procesos, tareas y artefactos relacionados con alguno de los aspectos de la construcción del software. Disciplinas típicas son la gestión del proyecto, la gestión de los requisitos, etc. Cada una de estas disciplinas estarán estructuradas de la siguiente manera: - Definición de Procesos dentro de la Disciplina: Cada disciplina constará de uno o varios procesos. Cada uno de estos procesos de la disciplina estará relacionado con los otros procesos de la disciplina y a su vez con otras disciplinas. Dentro de las otras disciplinas la relación con los procesos se realizará a través de artefactos concretos. Realizaremos un diagrama en el que se representen los distintos procesos de una disciplina, las relaciones entre los procesos de la disciplina, las relaciones de los procesos con otras disciplinas y los artefactos existentes en otras disciplinas. Este diagrama nos será de utilidad para tener un visión global de la disciplina. - Conjunto de Proceso de la disciplina: Tras el diagrama, tendremos una lista no numerada con enlaces a la descripción detallada de todos y cada uno de los procesos - Descripción de la Disciplina: Una descripción conjunta de toda la disciplina indicando qué nos aporta en la construcción del software. Deberemos indicar los objetivos de la disciplina con respecto a la construcción del software. Para cada uno de los procesos que componen la disciplina, una descripción de lo que aportan al proceso de creación del software y sus objetivos. Recuerdo que aunque ya han aparecido los procesos en el diagrama y en el apartado anterior, este es el primer sitio en que se explican. - Roles involucrados en la disciplina: En cada disciplina se verán involucrados un conjunto de roles. Aquí recogeremos únicamente los nombres de los roles involucrados. Más adelante, en la descripción de las tareas que componen cada uno de los proyectos indicaremos qué rol es el que ha de desempeñarlos. - Artefactos: Una lista de los artefactos que intervienen en la disciplina. Aquí tendremos una lista con enlaces a las plantillas, o software, según corresponda. - Herramientas: Una lista de las herramientas necesarias para realizar las distintas tareas de la disciplina. Tendremos una enlace a las distintas herramientas. ===== Procesos ===== Cada uno de los procesos de la disciplina tendrá una página específica en el wiki. Tendremos enlaces a esta página desde la página principal de la disciplina, desde los apartados "Procesos" y desde la descripción de la disciplina, en el apartado en que se describe cada uno de los procesos. Los procesos se nombrarán con el siguiente formato: * **MDA**. Por el proyecto Medea * **PR**. Para indicar que se trata de un procedimiento. * **Ver**. Hasta tres números indicando la versión del procedimiento, por ejemplo 1.0.0. * **Nombre del Procedimiento**. El nombre del procedimiento incluirá 2 ó 3 iniciales indicando la disciplina de que se trata, un guión y la descripción. **La descripción contendrá siempre un verbo en infinitivo**. Las iniciales son: * GP: Gestión de proyectos * REQ: Requisitos * MD: Modelado de negocio. * ANA: Análisis y diseño. * DE: Desarrollo. * QS: Calidad del Software. * GC: Gestión de la configuración. * DSP: Despliegue. Un ejemplo de nombre de procedimiento es MDA-PR-1.0-GP-Definir el Proyecto. La descripción de cada uno de los procesos será las que se indican a continuación. - Definición del proceso: Tendremos un primer apartado con el nombre del proceso. Tras él tendremos un diagrama en el que aparecerán todas las tareas y las relaciones existentes entre ellas. Las tareas se agruparán por roles. Tendremos enlaces entre las tareas y los distintos artefactos de entrada y salida de las tareas. Para mayor claridad podemos agrupar artefactos. También podemos incluir en el diagrama los distintos sistemas/entornos que se ven involucrados en las tareas. - Descripción de las tareas: Tendremos un apartado que recoja todas las tareas del proceso y subapartados para cada una de las tareas. Las tareas estarán descritas de manera clara y estructurada. La descripción se hará tomando como base los artefactos de entrada para realizar la tarea, las modificaciones que sufren y los artefactos de salida que se generan. Tendremos enlaces a las plantillas de los distintos artefactos cuando existan. Cuando la tarea se relacione con otros sistemas o entornos ha de dejarse de manera clara toda la información que ha de intercambiarse con el sistema o entorno, ya sea de manera manual o mecánica. Las tareas se nombrarán con el siguiente formato: * **MDA**. Por el proyecto Medea * **TR**. Para indicar que se trata de una tarea. * **Ver**. Hasta tres números indicando la versión de la tarea, por ejemplo 1.0.0. * **Nombre de la tarea**. El nombre de la tarea incluirá 2 iniciales indicando la disciplina de que se trata, un guión y la descripción. Las iniciales son las mismas que hemos utilizado para nombrar los proyectos. **El nombre de la tarea siempre contendrá un verbo en infinitivo**. Un ejemplo de nombre de tarea es MDA-TR-1.0-GP-Identificar el Proyecto. - Relación de artefactos: Tendremos una relación de los artefactos involucrados en el proceso, distinguiendo entre artefactos de entrada y de salida. Tendremos enlaces a las plantillas cuando existan y daremos instrucciones acerca de cómo nombrarlos y en qué lugar del proyecto deben encontrarse. Los artefactos se nombrarán con el siguiente formato: * **XXX**. Código del Proyecto. El mismo que se utilice en Jira para identificar al proyecto * **YYY**. Tipo de artefacto. Intentaremos utilizar únicamente 2 letras, pero si es necesario podemos utilizar alguna letra más. * **Ver**. Hasta tres números indicando la versión de la tarea, por ejemplo 1.0.0. * **Nombre del artefacto**. El nombre del artefacto debe ser significativo. Por ejemplo, Plan de Proyecto. En otros casos, cuando tengamos muchos artefactos del mismo tipo, por ejemplo casos de uso, el nombre del artefacto será significativo de su contenido. - Relación de herramientas: Tendremos una relación de las herramientas involucradas en la creación y manipulación de los artefactos del proceso. Cuando sea posible tendremos un enlace a la herramienta. - Relación de Métricas: Para cada proceso tendremos una relación de las métricas a recopilar en el proceso. Tendremos instrucciones claras de cómo recoger dichas métricas, dónde y cómo almacenarlas y qué herramientas utilizar para calcularlas. ===== Tareas ===== Las tareas se encuentran descritas dentro de la página del proceso tal y como se indica arriba. ===== Artefactos ===== En la página principal de la disciplina tenemos una lista de todos los artefactos que se encuentran relacionados con la disciplina. Esta lista tendrá enlaces a las plantillas. En la página de descripción del proceso, dentro del apartado de Tareas se hace referencia a los distintos artefactos de entrada y salida, además de las instrucciones acerca de cómo rellenarlos. ===== Herramientas ===== Las herramientas se recogen a nivel de disciplina y a nivel de proceso en apartados específicos. Además, en la descripción de las tareas se hará referencia a las herramientas utilizadas y a la manera de utilizarlas. ===== Métricas ===== A nivel de proceso se recogen las distintas métricas que hay que tomar.