ENSAYO REQUISITOS Y CASOS DE USO LUIS ANGEL GALLEGO VILLA Instructor ROBINSON VELANDIA RUIZ Especialista en Gerencia de Proyectos Tecnología en Análisis y Desarrollo SENA Puerto Berrío, Antioquia Año 2011 Los casos de uso se han convertido en la técnica más utilizada para el levantamiento y la comunicación clara y efectiva de los requisitos para el desarrollo de sistemas. Los casos de uso son un artefacto clave en el proceso unificado de desarrollo de software ya que son el depósito principal de los requisitos funcionales que guían el diseño, la construcción, las pruebas y muchos otros aspectos de la ingeniería de software. De los conceptos explicados en la videoconferencia “Casos de Uso” resalto lo siguiente: Es de vital importancia dejar en claro la descripción del problema con el cliente, especificando cada una de las necesidades que él presenta. Establecer los diferentes módulos (técnico, usuarios, módulos) que serán necesarios en el funcionamiento del nuevo sistema. No hay un formato estándar para la realización del documento funcional donde se establecerán los requerimientos y casos de uso. Los requisitos funcionales son aquellas que afectan directamente el funcionamiento del sistema. Los requisitos funcionales en la vídeo conferencia son clasificados entre visibles, ocultos, pero también pueden ser clasificados según su urgencia. No siempre los requisitos funcionales pasan a ser casos de uso, algo que me ha llamado mucho la atención por que contradice los conceptos expresados por el instructor en la formación, ya que constantemente nos ha insistido en que cada requisito funcional se convierte en un caso de uso. Sin embargo, recalco que la instructora al brindar la video conferencia expresa que entre más específico y claro sea la parte documental más fácil será el desarrollo del sistema y quizás por esto, el instructor nos haya solicitado hacer un caso de uso para cada requisito funcional en el examen. ¿Sería bueno que el instructor diera su punto de vista en clase? Un requisito funcional es aquel que se necesita o se debe tener en cuenta para realizar el sistema, pero no afecta directamente su parte funcional. Ejemplos: el lenguaje, las leyes vigentes a tener en cuenta para el desarrollo del sistema; aunque, en la videoconferencia también se deja en claro que las leyes y reglamentos internos de trabajo que afecten el desarrollo del sistema pueden ser expresadas directamente en las reglas del negocio. Un caso de uso puede recopilar uno o varios requisitos funcionales. Existe la necesidad de realizar el diagrama general de los casos de uso, no es necesario hacerlo uno por uno. Un actor es aquella persona que interactúa con el sistema, los actores pueden ser humanos u otros sistemas (entidades bancarias, crediticias, entre otros) Es importante establecer con el cliente los rasgos generales y características de cada actor o usuario. La vídeo conferencista expresa que una inclusión es cuando se necesita un caso de uso base para que otro caso de uso funcione y un extend es un caso de uso opcional, este concepto me parece muy ambiguo e inexacto. Ejemplo: si tengo un sistema con el caso de uso agregar usuario y un segundo caso de uso llamado modificar usuario podríamos afirmar que el segundo es una inclusión del primero porque sino hay usuarios registrados, no vamos a poder modificar usuarios, pero a la misma vez sería extend porque el usuario se registra y sería opcional tener que modificarlo o no y, lo mismo sucedería con otros casos de uso como eliminar, buscar, entre otros.