Roles y Artefactos en RUP


"ROLES"

Según RUP, un rol es un puesto que puede ser asignado a una persona o conjunto de personas que trabajan juntos en un equipo, y que requiere responsabilidades y habilidades sobre cómo realizar actividades específicas y desarrollar determinados artefactos.

Los miembros de un equipo de proyecto, generalmente cubren varios roles; sin embargo, los roles no son individuales, ellos más bien describen cómo los individuos se comportan en un negocio y qué responsabilidades tienen estos individuos.



RUP clasifica los roles en cinco grandes grupos:

  • Analistas
  • Desarrolladores
  • Probadores
  • Directivos y otros

Analistas: Analista del proceso de negocios, diseñador de negocios, revisor del modelo de negocios, analista de sistema, especificador de requisitos, revisor de requisitos y diseñador de la interfaz usuario.

Desarrolladores: Arquitecto de software, revisor de la arquitectura, diseñador, diseñador de cápsula, diseñador de base de datos, revisor del diseño, programador, revisor del código, integrador.

Directivo: Director de control de cambio, director de configuración, director de implantación, ingeniero de proceso, director del proyecto, revisor del proyecto.

Otros: Stakeholder, cualquier rol, desarrollador de cursos, artista gráfico, administrador de sistema, documentador técnico, especialista en herramientas.

Jefe de proyecto:

En proyectos grandes, sin dudas, es preciso dividir la gestión del proyecto (jefe del proyecto) de la dirección técnica (arquitecto o director de desarrollo) incluso se requiere un director de
planificación debido al volumen y complejidad de las tareas. Sin embargo, en la propuesta, el rol de jefe de proyecto se encarga de realizar las funciones propias de la gestión del proyecto y de la planificación. En dependencia de la empresa, si no se dispone de suficiente personal, este rol debería también dirigir las cuestiones técnicas por lo que sería el más apropiado para asumir las responsabilidades definidas para el rol de arquitecto. El rol de Jefe de proyecto debe además responder a la alta dirección de la empresa, manteniéndola informada del progreso del equipo, y debe trabajar estrechamente relacionado con el especialista de
calidad que participa en el proyecto. Además, es el responsable de controlar el trabajo de cada miembro del equipo y evaluar el cumplimiento de sus planes.

-Conocimientos y habilidades
-Poseer experiencia en el dominio de la aplicación y en el
desarrollo del software.
-Poseer habilidades para el análisis y manejo de riesgos,
estimación, planificación y análisis de decisión.
-Poseer habilidades de presentación, comunicación y
negociación
-Mostrar liderazgo y capacidades para la creación de equipos.
-Poseer buenas habilidades para manejo de tiempo y un
historial de tomas de decisiones rápidas y efectivas bajo tensión
-Poseer buenas habilidades interpersonales y mostrar ser
obstinado en la selección del personal.
-Estar enfocado en la entrega de valor del cliente, de forma tal
que exactamente se cumplan con las necesidades del cliente.


Arquitecto:

En grandes proyectos puede existir un equipo de arquitectos, con experiencias tanto en el dominio del problema como en el de la solución. Estas cualidades pueden estar dispersas entre los miembros del equipo, pero al menos un arquitecto debe poseer la visión global del proyecto.

Analista:

El rol de analista será responsable de analizar los procesos de negocios, especificar los requisitos y diseñar la interfaz usuario. Debe estar muy relacionado con los interesados en el negocio para determinar claramente las funcionalidades del sistema. Se
debe destacar que si en la entidad es posible contar con personal especializado que pueda asumir el diseño de interfaz usuario sería conveniente que se destinara a dicha función, trabajando estrechamente relacionado con el analista. Conocimientos y habilidades
Poseer conocimiento del dominio del negocio. Comprender los requerimientos de todos los interesados en el negocio, sus estrategias y metas. Ser un buen facilitador y poseer excelentes habilidades para la comunicación oral y escrita. Facilitar el modelamiento del negocio. Tomar parte en la definición de requerimientos del producto
final del proyecto Apreciar y evaluar la situación de la organización donde el
producto final del proyecto será instalado. Realizar un análisis costo-beneficio para cualquier cambio sugerido en el proyecto Discutir y soportar a quienes compran y venden el producto
final del proyecto. Estar familiarizado con las herramientas utilizadas en la captura del modelo del negocio.

-Estar familiarizado con todas las herramientas usadas para
capturar requerimientos.

Diseñador:

El rol del diseñador debe definir las responsabilidades, operaciones, atributos y relaciones de una o varias clases y determinar cómo ajustarlas al ambiente de implementación. Es responsable de diseñar la base de datos definiendo las tablas, los índices, las vistas, las restricciones, trigger , los procedimientos o parámetros de almacenamiento, así como todo
aquello que resulte necesario para almacenar, recuperar y borrar los objetos persistentes.

-Conocimientos y habilidades
-Requerimientos del sistema.
-Técnicas de diseño de software, incluyendo técnicas de
análisis y diseño orientado a objetos y UML.
-Técnicas de diseño de bases de datos.
-Tecnologías con las cuales el sistema ha sido implementado
-Comprender la arquitectura del sistema, como fue representada por el arquitecto.
-Comprender el rol de probador del sistema.
-Conocer en general los principios del manejo de la configuración.

Programador:

El rol de programador debe implementar componentes, localizar y corregir defectos. De acuerdo con la entidad donde se aplique la plantilla de roles, es posible que en algunos casos este rol deba asumir la responsabilidad de implementar componentes y subsistemas de prueba, así como desarrollar artefactos de instalación.

-Conocimientos y habilidades
-Ser un comunicador persuasivo que sea capaz de detectar y discutir aspectos sensibles.
-Técnicas de modelamiento del sistema
-Requerimientos del sistema.
-Técnicas de diseño de software, incluyendo técnicas de análisis y diseño orientado a objetos y UML.
-Tecnologías con la cual el sistema ha sido implementado.
-Base de datos y técnicas de análisis y diseño orientadas a objetos
-Administración de Base de Datos.
-Comprensión del ambiente y el lenguaje de implementación.
-Poseer conocimientos y habilidades de programación.
Probador:

Es el rol responsable de la planificación, diseño, implementación y evaluación de la prueba, que incluye generar el plan y el modelo de prueba, implementar los procedimientos de
prueba, evaluar la envergadura y resultados de las pruebas y su efectividad así como generar un resumen de la evaluación de la prueba.

-Conocimientos y habilidades
-Poseer conocimiento del sistema o aplicación a probar.
-Poseer conocimiento de pruebas y herramientas de pruebas
automáticas.
-Poseer habilidades para el diagnóstico y la solución de problemas.
-Poseer habilidades de programación.

"ARTEFACTOS"

Fase INICIO

Modelado de Procesos
-Modelo de Casos de Uso de Negocio: Diagrama de Casos de Uso de Negocio.
-Modelo de Análisis del Negocio:
-Diagrama de Actividades (un diagrama por cada proceso).
-Modelo del Dominio. Es un diagrama de clases conceptuales donde cada clase sólo debe     tener atributos.
-Visión (contiene necesidades y características).

Fase ELABORACIÓN

Requisitos
-Modelo de Casos de Uso:
-Diagrama de casos de uso.
-Especificación de casos de uso (utilizar una plantilla o formato). Se debe seleccionar sólo los casos de uso de alta prioridad o más importantes para el negocio, del tipo Core.

Análisis y Diseño

-Modelo de Análisis
-Diagrama de Secuencia. Un diagrama por caso de uso, pero sólo para el flujo básico. Se debe seleccionar sólo los casos de uso de alta prioridad o más importantes para el negocio, del tipo Core.
-Diagrama de Clases de análisis. Incluye todas las clases de provienen del modelo de dominio pero con atributos y métodos.
-Modelo de datos. Las tablas pueden derivar de las clases del dominio.
-Prototipos de usuario. Son los diseños de interfaz de usuario que serán implementados. -Seleccionar los casos de uso más importantes, del tipo Core.

Implementación

-Programación de las funcionalidades o casos de uso más importantes, del tipo Core. Se puede documentar los componentes o clases implementadas más importantes. Pruebas
-Casos de Prueba. Aplicar pruebas unitarias a los casos de uso más importantes, del tipo Core.

Fase CONSTRUCCIÓN

-Análisis y Diseño
-Prototipos de usuario. Corresponden a los casos de uso del tipo administrativo o CRUD.

Implementación

-Programación de las funcionalidades o casos de uso del tipo administrativo o CRUD. Se puede documentar los componentes o clases implementadas más importantes. -Pruebas
-Casos de Prueba. Aplicar pruebas funcionales a los casos de uso más importantes, del tipo Core.
Fase TRANSICIÓN
-Despliegue
-Diagrama de despliegue.
-Manual de usuario.
-Manual de instalación y configuración.


REFERENCIAS

  •             México, U. A. (2015). Roles en el proceso de desarrollo se software. Obtenido de http://www.redalyc.org/html/3604/360433560012/


  •             Farías, O. (20 de 07 de 2017). Artefactos RUP por disciplina y según fase. Obtenido de https://es.scribd.com/doc/97882986/ARTEFACTOS-RUP






No hay comentarios:

Publicar un comentario