Control 6
Control 6
Control 6
16-12-2019
DESARROLLO DE LA TAREA
Generación de requerimientos
Es la habilidad de entender las necesidades de los interesados, y recopilarlos en un repositorio
para futuros análisis. Las necesidades pueden ser expresadas de forma abstracta y en términos
de problemas (Quiero reducir mis ratios de error en un 35%) o bien concretos y en términos de
una solución (Debe haber un botón rojo de paro en la consola). En ambos casos las necesidades
son conocidas como características.
Evaluación de requerimientos
Es la habilidad de discernir qué características son apropiadas para incluir en el producto, dado
que raramente es posible satisfacer todas las características demandadas por cada uno de los
interesados. La evaluación tiene en consideración todas las realidades del mercado y toma la
decisión acerca de qué características se implementará, cuales lo serán en la próxima versión, y
cuales se aplazarán hasta más tarde.
Especificación de requerimientos
Es la habilidad de detallar el comportamiento de un sistema. En cada estadio del proceso de
desarrollo, variaran la forma y el nivel de detalle en la especificación de los requerimientos.
Para ilustrarlo, considérese un proceso estándar de desarrollo en 5 fases: Investigación,
Viabilidad, diseño, construcción y test, lanzamiento.
Investigación
En la fase de investigación, se recopilan requerimientos entre los usuarios y los miembros del
equipo de desarrollo. Para cada uno de ellos se formulan cuestiones similares acerca de cuáles
son los logros, las restricciones y las herramientas o procesos disponibles.
Hay que tener muy presente que los requerimientos no pueden ser completamente definidos al
inicio del proyecto. Algunos cambian, bien porque sean simplemente suprimidos, o debido a los
intereses y modificaciones que afecten al ciclo de vida del proyecto. Por ello, la flexibilidad en
los planteamientos y las operaciones, son condiciones para el éxito.
Página: 2
Viabilidad
Durante el estudio de viabilidad, se determinan:
Los costos de los requerimientos: Para los requerimientos de usuario, se comparan los
costes actuales con los futuros, una vez se haya implementado el nuevo sistema.
Los costos de operación: Indicarán qué departamento tiene presupuesto para ello y cuál es
el retorno de inversión para este producto, incluyendo la reducción de costes si se
desarrolla un nuevo sistema más fácil de utilizar.
Los costos técnicos: Están relacionados con los costes de desarrollo de software y los costes
del hardware. El equipo debe indagar si los nuevos equipos y herramientas añadirán
suficiente potencia de procesamiento para transferir suficiente carga de trabajo del usuario
al sistema que permita un ahorro significativo de tiempo y costes al personal
Diseño
Asumiendo que los costos han sido determinados con precisión y que los beneficios a obtener
son suficientemente importantes, el proyecto puede pasar al estadio de diseño. En dicho
estudio, la actividad principal de la gestión de requerimientos es comparar los resultados del
diseño con el documento de requerimientos, para asegurarse de que el trabajo está
contemplado dentro del alcance.
Implementación y test
En el estudio de implementación y test, la actividad principal de la gestión de requerimientos,
es asegurar que el trabajo y el costo se desarrollan de acuerdo con la programación y el
presupuesto, y que las nuevas herramientas cumplen de hecho con los requerimientos. La
herramienta principal utilizada en este estadio es la construcción de prototipos y el test
iterativo.
Para una aplicación de software, la interfaz de usuario puede ser creada en papel y probada con
los usuarios potenciales, mientras está siendo creado el entorno de software. Los resultados de
dichos test son archivados en una guía de diseño de interfaz de usuario y trasladado al equipo
de diseño, cuando este esté listos para desarrollar la interface. Esto ahorra tiempo y hace el
trabajo mucho más fácil.
Lanzamiento
Podría pensarse que la gestión de requerimientos finaliza al entregar el producto, pero no es
del todo cierto. Desde este punto, se recopilan los datos provenientes de la aceptación de la
aplicación, y utilizados posteriormente en la fase de investigación de la nueva generación o
versión. Entonces, el proceso empieza de nuevo.
Página: 3
Mejores prácticas para escritura de requerimientos.
Es importante hacer un compilado de todas las mejores prácticas utilizadas en las diferentes
metodologías y así poder asegurar que la metodología propuesta sea efectiva para el mercado.
En el desarrollo de software, una mejor práctica es un método bien definido que contribuye a
una implementación exitosa del proyecto software. Las organizaciones implementan mejores
prácticas reconocidas en su medio, para que les ayuden a enfrentar los inconvenientes
presentados al encarar un proyecto de software, teniendo como herramientas las lecciones
aprendidas en anteriores proyectos.
Página: 4
Establecer líneas base de los requisitos: para asegurar que cualquier modificación en los
requisitos que cambie la línea base se trata como cambios de alcance
Comunicación abierta: para asegurar que la información relacionada con los requisitos
se comunica de forma consistente. Una comunicación abierta también implica
comunicar a la gente correcta y al conjunto mínimo de personas
Gestión de cambios de los requisitos: es esencial gestionar estos cambios de forma
efectiva y eficiente
Uso de herramientas para la gestión de requisitos: para facilitar la gestión de requisitos
Mantener trazabilidad de requisitos: para llevar un seguimiento de la vida de un
requisito
Establecer un plan de mejora de procesos para la ingeniería de requisitos: para cumplir
con las necesidades actuales y futuras de forma más eficiente y con mayor calidad.
Formar a los analistas de requisitos: para asegurar que los analistas de requisitos tienen
el conocimiento, entre otros aspectos, de cómo escribir buenos requisitos, etc.
Página: 5
La técnica de TimeBox para gestión del tiempo
Una de las tareas más complejas al diseñar productos digitales es la estimación del tiempo de
producción. La técnica de TimeBox puede ayudar a usar el tiempo disponible de manera más
efectiva.
En los modelos de desarrollo ágil, un timebox es un período de tiempo definido durante el cual
el equipo debe realizar una tarea. Los timeboxes, o Cajas de Tiempo son periodos cortos de
tiempo, de entre 5 y 120 minutos y se utilizan comúnmente para administrar el tiempo que un
equipo de diseño y desarrollo de producto dispone para terminar un requerimiento dentro de
un sprint.
En lugar de permitir que el trabajo del equipo continúe hasta que se alcance el objetivo y
evaluar el tiempo utilizado, el enfoque de timebox consiste en detener el trabajo cuando se
alcanza el límite de tiempo y evaluar lo que se hizo.
El timebox ayuda a acelerar la toma de decisiones para que las cosas puedan ser cristalizarse,
así se evita dejar las decisiones hasta el final.
El modelo de timebox ayuda a los equipos a ser más eficientes y a aprender a medir cuánto
tiempo se necesita para completar una tarea, para ser más eficientes en cada iteración.
Al cierre de un timebox es un buen momento para pedir retroalimentación sobre el trabajo
hecho y sobre los entregables , y revisar contra la planeación si los objetivos conseguidos son
suficientes, si se cumplieron las expectativas o bien es necesario más tiempo, recursos o
personas para profundizar más en el resultado o definir nuevos objetivos.
El uso de timeboxing puede que no sea apropiado para todos los equipos o escenarios de
trabajo. Por ejemplo, es posible que sea difícil detenerse para cambiar a una tarea cuando ya
comenzó su desarrollo, o cuando se enfrenta a una tarea que un nivel alto de calidad es más
importante que el tiempo que tome realizarla.
Timeboxing es una herramienta poderosa, pero hay que usarlo solo cuando sea apropiado.
Página: 6
Asignar un tiempo específico para cada tarea. Al terminar, analizar el progreso y pasar a la
siguiente tarea.
El timeboxing ofrece muchos beneficios, y utilizado correctamente puede ser de mucha ayuda
para que los miembros de su equipo se integren más, a evitar la parálisis del análisis, a limitar la
tendencia a postergar el trabajo y aumentar su motivación al producir entregables con más
frecuencia y al cumplir metas.
Página: 7
Priorización de requisitos - Técnica MoSCoW
Una de las técnicas más utilizadas en la priorización de requisitos es la conocida como técnica
MoSCoW. Es una técnica de priorización de requisitos basada en el hecho de que, aunque todos
los requisitos se consideren importantes, es fundamental destacar aquellos requisitos vitales
que aportan un mayor valor al negocio y que son considerados obligatorios, de forma que el
producto o servicio no se puede poner en producción si incumple alguno de estos requisitos.
Esto nos ayudará a enfocar el desarrollo de forma más eficiente.
La técnica MoSCoW no se limita a indicar si un requisito es de prioridad baja, media o alta. Esta
técnica nos ayuda a separar los requisitos en cuatro grandes categorías:
Página: 8
C – Could: Requisitos que son interesantes que cumpla el servicio. Se trata de requisitos
adicionales que se implementarán en el caso de disponer de tiempo y presupuesto para
ello. Estos requisitos mejorarían el rendimiento del servicio pero podrían ser eliminados
fácilmente.
W – Won’t: Requisitos que se ha decidido no implementar de momento, pero que serán
tomados en cuenta en el futuro con el objetivo de mejorar el servicio o producto.
Esta categorización nos ayuda a marcar una “línea roja“, identificando aquellos requisitos que
obligatoriamente deben ser incluidos en el desarrollo del servicio. Es muy fácil de entender por
todas las partes interesadas, y de poner en práctica, ya que definimos claramente cuáles son los
requisitos básicos sin los cuales no se pondrá en producción el servicio.
Una vez priorizados y categorizados los requisitos, es recomendable utilizar herramientas de
gestión de requisitos que nos faciliten la comprobación del cumplimiento de dichos requisitos.
Página: 9
Página: 10
Bibliografía
Página: 11