Clase 2 - Ingeniería de Requerimientos PDF

Document Details

GloriousGenius56

Uploaded by GloriousGenius56

Universidad Nacional de General Sarmiento

Tags

software engineering requirements engineering software requirements system analysis

Summary

This document provides an overview of software requirements engineering, including user and system requirements, functional and non-functional requirements, and the FURSP+ model. It also includes examples of how these concepts can be applied to software projects.

Full Transcript

ESPECIFICACIONES Y VERIFICACIONES DE SOFTWARE Ingeniería de Requerimientos Objetivos Entender los conceptos de requerimientos del usuario y del sistema. Comprender las diferencias entre requerimientos de software funcionales y no funcionales. Reconocer cómo se organizan los requerimientos...

ESPECIFICACIONES Y VERIFICACIONES DE SOFTWARE Ingeniería de Requerimientos Objetivos Entender los conceptos de requerimientos del usuario y del sistema. Comprender las diferencias entre requerimientos de software funcionales y no funcionales. Reconocer cómo se organizan los requerimientos dentro de un documento de requerimientos de software. Conocer las principales actividades de la ingeniería de requerimientos: adquisición, análisis y validación. Analizar por qué es necesaria la administración de requerimientos y cómo ésta apoya otras actividades de la ingeniería de requerimientos. Definición Los requerimientos para un sistema son descripciones de lo que el sistema debe hacer: el servicio que ofrece y las restricciones en su operación. Tales requerimientos reflejan las necesidades de los clientes por un sistema que atienda cierto propósito, como sería controlar un dispositivo, colocar un pedido o buscar información. Al proceso de descubrir, analizar, documentar y verificar estos servicios y restricciones se le llama ingeniería de requerimientos (IR). Definición Algunos de los problemas que surgen durante el proceso de ingeniería de requerimientos son resultado del fracaso de hacer una separación clara entre esos diferentes niveles de descripción. Se usa el término requerimientos del usuario para representar los requerimientos abstractos de alto nivel; Se usa requerimientos del sistema para caracterizar la descripción detallada de lo que el sistema debe hacer. Requerimientos del usuario Los requerimientos del usuario son enunciados, en un lenguaje natural junto con diagramas, acerca de qué servicios esperan los usuarios del sistema, y de las restricciones con las cuales éste debe operar. Requerimientos del sistema Los requerimientos del sistema son descripciones más detalladas de las funciones, los servicios y las restricciones operacionales del sistema de software. El documento de requerimientos del sistema (llamado en ocasiones especificación funcional) tiene que definir con exactitud lo que se implementará. Puede formar parte del contrato entre el comprador del sistema y los desarrolladores del software. Ejemplo 1. El MHC-PMS elaborará mensualmente informes administrativos que revelen el costo de los medicamentos prescritos por cada clínica durante ese mes. Ejemplo 1.1 En el último día laboral de cada mes se redactará un resumen de los medicamentos prescritos, su costo y las clínicas que los prescriben. 1.2 El sistema elaborará automáticamente el informe que se imprimirá después de las 17:30 del último día laboral del mes. 1.3 Se realizará un reporte para cada clínica junto con los nombres de cada medicamento, el número de prescripciones, las dosis prescritas y el costo total de los medicamentos prescritos. 1.4 Si los medicamentos están disponibles en diferentes unidades de dosis se harán informes por separado para cada unidad de dosis. 1.5 El acceso a los informes de costos se restringirá a usuarios autorizados en la lista de control de acceso administrativo. Lectores de requerimientos. Requerimientos funcionales Los requerimientos funcionales para un sistema refieren lo que el sistema debe hacer. Dependen del tipo de software que se esté desarrollando,. de los usuarios esperados del software y del enfoque general que adopta la organización cuando se escriben los requerimientos. En algunos casos, los requerimientos funcionales también explican lo que no debe hacer el sistema. Se estudian y recogen en el modelo de casos de uso. Requerimientos no funcionales Los requerimientos no funcionales son limitaciones sobre servicios o funciones que ofrece el sistema. Incluyen restricciones tanto de temporización y del proceso de desarrollo, como impuestas por los estándares. Se suelen aplicar al sistema como un todo, más que a características o a servicios individuales del sistema. Requerimientos no funcionales Son requerimientos que no se relacionan directamente con los servicios específicos que el sistema entrega a sus usuarios. Pueden relacionarse con propiedades emergentes del sistema, como fiabilidad, tiempo de respuesta y uso de almacenamiento. Pueden definir restricciones sobre la implementación del sistema, como las capacidades de los dispositivos I/O o las representaciones de datos usados en las interfaces con otros sistemas. FURSP+ El primer reto del trabajo de los requisitos es encontrar, comunicar y recordar (registrar) los que se necesita realmente. FURSP+ es un modelo que permite la clasificación de requerimientos. FURSP+ Un estudio sobre costos en proyectos reales reveló que el 37% de ellos estaban relacionados con los requisitos. Las cuestiones de los requisitos constituyen la principal causa de problemas. FURSP+ Funcional (Functional): características, capacidades y seguridad. Facilidad de uso (Usability): Factores humanos, ayuda, documentación, navegación. Fiabilidad (Reliability): Frecuencia de fallos, capacidad de recuperación de una falla y grado de previsión. FURSP+ Rendimiento (Performance): Tiempos de respuesta, productividad, precisión, disponibilidad, uso de recursos. Soporte (Support): Adaptabilidad, facilidad de mantenimiento, internacionalización, configurabilidad FURSP+ El + indica requisitos adicionales, tales como: Implementación: Limitación de recursos, lenguajes, herramientas, hardware, etc. Interfaz: Restricciones impuestas para la iteración con sistemas externos. Operaciones: Gestión del sistema en su puesta en marcha. Legales: Licencias, etc. Calidad Algunos de los requisitos se denominan colectivamente atributos de calidad. Comprenden facilidad de uso, confiabilidad, rendimiento, performance, soporte.

Use Quizgecko on...
Browser
Browser