Asignación de roles Diseñador. Diego Sánchez Solano Es el encargado de generar el diseño del sistema.

Entre sus funciones están: • Generar el diseño arquitectónico y detallado del sistema, basándose en los requisitos, además de mantenerlos actualizados durante el proyecto • Generar prototipos rápidos del sistema (con analistas y programadores) para chequear los requisitos • Velar porque el producto final se ajuste al diseño realizado, llevando a cabo funciones de téster Administrador del Proyecto. David Carretero García El administrador de proyecto es la persona que administra y controla los recursos asignados a un proyecto. Algunos de los objetivos de un administrador de proyecto son:  Hacer que el producto cumpla con las fechas, el presupuesto y los requisitos de calidad estipulados hasta la finalización del mismo  Coordinar los esfuerzos generales del proyecto, ayudando a cada uno de sus integrantes a cumplir sus objetivos particulares de forma que, al final, se cumpla el objetivo general  Cumplir con éxito las diferentes fases de un proyecto, utilizando herramientas de administración  Cumplir con las expectativas del cliente Analista. David Carretero García Sus funciones requieren la habilidad de poder estudiar un problema de una complejidad determinada para, posteriormente, descomponerlo en sub-problemas de menor complejidad. De esa forma, la solución del problema en sí se obtiene como la suma de las soluciones de los sub-problemas Téster. Joan Antoni Pacheco Artigues El desarrollo de un sistema de software requiere la realización de una serie de actividades de producción. En dichas actividades existe la posibilidad de que aparezcan errores humanos. Por ello, el objetivo principal de la labor de téster es el de diseñar tests que, de forma sistemática, permitan eliminar diferentes clases de errores, realizando esto con la mínima cantidad de tiempo y esfuerzo Los objetivos específicos en la labor de un téster son: • Aplicar métodos para diseñar casos de tests efectivos • Construir buenos casos de tests que tengan altas probabilidades de encontrar errores aún no descubiertos • Demostrar que las funciones del sistema están funcionando de acuerdo a sus especificaciones • Proveer una buena indicación de la confiabilidad del software y algunas indicaciones de la calidad del software Aseguradores de Calidad. Andrés García Villar Dentro de la gestión de proyectos de software, el cumplimiento de plazos y de costes de desarrollo suelen ser los principales problemas a afrontar. De esta forma, el asegurador de calidad, en lugar de aumentar la presión para cumplir los plazos y reducir los costos de la calidad del producto, hace que satisfagan estos dos puntos, evitando así tensiones innecesarias en el desarrollo y posibles retrasos en la entrega del proyecto o la reducción de los tiempos de prueba que podrían comprometer la calidad del producto. Para ello, es necesario encontrar una nueva fórmula para el desarrollo de software. Lejos de limitar los

tiempos y los costos del producto, se prima a la hora de optimizar estos atributos. Para ello, la gestión debe considerar la calidad como una meta final, junto con el cumplimiento de plazos y costos. Con todo, la calidad se asocia a un conjunto de estándares definidos que deben cumplirse Programadores. Joan Antoni Pacheco Artigues Los programadores deben convertir la especificación del sistema en código fuente ejecutable utilizando uno o más lenguajes de programación, así como herramientas de software de apoyo a la programación. Uno de los principales objetivos de los programadores durante su trabajo debe ser el de disminuir la complejidad del software para reducir la del código fuente, de forma que conseguimos una menor cantidad de problemas de testeo y un aumento de la productividad de los programadores y de la eficiencia en la manutención y modificación del programa. Adicionalmente, otros objetivos importantes son la reducción del tiempo de codificación, así como el número de errores que ocurren durante el proceso de desarrollo, el esfuerzo de corregir errores en secciones del código que se encuentran deficientes, remplazando secciones cuando se descubren técnicas más confiables, funcionales o eficientes y los costos del ciclo de vida del software Administrador de Configuración. Diego Sánchez Solano La administración de la configuración es una disciplina que tradicionalmente se aplica al desarrollo de sistemas de hardware, al desarrollo de elementos de hardware o sistemas de hardware/software. La administración de la configuración de software corresponde a la administración de la configuración aplicada a un sistema (o a partes concretas del mismo) normalmente de software. Su aplicación, en conjunto con otras disciplinas, lleva al desarrollo de sistemas en forma ordenada y estructurada. El objetivo principal de la administración de configuración de software es la administración efectiva del ciclo de vida del sistema de software y la evolución de su configuración. En otras palabras, corresponde al establecimiento y manutención de los productos de software del proyecto a través del ciclo de vida del software. La tarea de administrar la configuración no es independiente, ya que existe para apoyar el desarrollo y manutención del producto de software. Es necesario utilizar el criterio al aplicar técnicas de administración de configuración. Por un lado, aplicar muy poca administración de la configuración hace posible perder productos, necesitando trabajo adicional para rehacerlos. Por otro lado, un exceso de la misma hará que la organización nunca llegue a producir el producto, ya que estará muy ocupada moviendo papeles Ingeniero de validación y verificación (V&V). Andrés García Villar Una de las metas a tener en cuenta en toda organización de desarrollo de software que se considere exitosa es que, a medida que el producto evoluciona, continua satisfaciendo las expectativas de los usuarios a lo largo de dicho proceso. El objetivo principal del proceso de V&V del software es el de analizar y testear en forma completa el producto durante el desarrollo para constatar que ejecute única y exclusivamente las funcionalidades para las que ha sido definido y verificar que estas se realizan correctamente, además de proveer información sobre su calidad y confiabilidad. Dependiendo de las actividades de V&V respecto a la funcionalidad y rendimiento del software, es posible identificar algunos objetivos: • Correctitud: En qué grado el producto está libre de fallos • Consistencia: En qué grado el producto es consistente consigo mismo y con otros productos • Necesidad: En qué grado lo que hay en el producto es necesario • Suficiencia: En qué grado el producto es completo • Rendimiento: En qué grado el producto satisface los requisitos de rendimiento Estos objetivos proveen un marco en que es posible determinar la aplicabilidad de varios enfoques y técnicas de V&V

Documentador. Carlos Tous Ferragut Durante el proceso de desarrollo de software, se genera una gran cantidad de documentación. El objetivo principal del rol de documentador es el de mantener la información generada durante el proceso de desarrollo. Como objetivos específicos se tienen: • Permitir el almacenamiento y recuperación de la documentación de los procesos y productos más recientes durante el desarrollo, manteniendo así la información al día • Mantener la consistencia en la apariencia y estructura de los documentos, facilitando su almacenamiento, recuperación e intercambio, además de no permitir el almacenamiento de documentos con formatos diferentes • Asegurarse que los cambios que necesitan hacerse en el sistema serán reflejados en la documentación correspondiente • Elaborar, almacenar y permitir la recuperación de las actas y registros generados durante las reuniones de revisión, los que constituyen parte del proceso de documentación • Construir el manual de usuarios del sistema (MUS) que contempla los aspectos de uso del sistema Ingeniero de manutención. Carlos Tous Ferragut La manutención es la última fase del proceso de desarrollo de software y constituye una parte importante del presupuesto destinado al desarrollo. En general, dichos costos son subestimados o simplemente ignorados, pero a medida que se desarrollan más programas, la cantidad de esfuerzo y recursos dedicados a la manutención crece. Al final, algunas empresas pueden llegar a encontrarse con la barrera de la manutención, no pudiendo abordar nuevos proyectos debido a que todos sus recursos están dedicados a mantener programas antiguos. Los objetivos a cumplir por un ingeniero de manutención son: • Modificar el software para adaptar nuevas funciones o modificar algunas ya existentes • Modernizar el software por medio de cambios al sistema • Asegurarse de que el equipo de desarrollo esté informado de los errores encontrados en el sistema Cliente comprometido Es frecuente escuchar que los términos “cliente”, “usuario” y “usuario final” se utilizan como sinónimos, lo cual puede provocar confusión. Un cliente es aquella persona responsable de llevar a cabo el buen desempeño del proyecto por parte de la empresa que contrata el desarrollo, también llamada mandante. El cliente debe representar los derechos y asumir los deberes de dicha empresa ante el equipo de desarrollo, de forma que debe estar presente en todas las fases del desarrollo del producto, y realizar todas las actividades que se esperan de él, tales como la aceptación provisional y final del producto