ESPECIFICACIÓN DE REQUERIMIENTOS
Por limitaciones de tiempo o presupuestarias, no siempre es posible implementar en un sistema todas las tareas de los usuarios que se hayan identificado. El subconjunto de tareas que finalmente se implementen constituirá los requerimientos funcionales del sistema (Rogers et al., 2011). Cada una de las tareas en este subconjunto debe estar justificada con base en prioridades establecidas previamente.
Para especificar los requerimientos, es común la técnica de casos de uso, la cual se plantea dentro de los modelos del lenguaje unificado de modelaje (UML por su nombre en inglés). Los casos de uso son comúnmente empleados por ingenieros de software para describir cómo se va a usar un sistema. Se pueden derivar de los escenarios. Describen la funcionalidad como una secuencia de interacciones entre un usuario y el sistema. Un caso de uso se estructura de forma que se reflejan las acciones del usuario y las respuestas del sistema. Estas respuestas pueden ser de variada índole, como, por ejemplo, despliegue de información, solicitud de entrada de datos al usuario, conexión con otros sistemas o ejecución de algoritmos.
Se determinan los requisitos que determinan qué debe hacer
el sistema y cómo debe hacerlo. Los tipos de requisitos son.

