1
Olvide usted que está en un curso de Proyectos Informáticos, imagine que tiene a un cliente enfrente, y que este cliente necesita un software...
¿Cómo haría para solucionar el problema? Imagine y describa todo lo que ocurre desde que usted conoce al cliente hasta que termina el trabajo y le entrega su software
2
驴C贸mo har铆a para solucionar el problema? Para crear una soluci贸n, primero es necesario tener claro y comprender el problema...
3
Requisitos / Requerimientos (!Todo lo que el cliente quiere, exactamente lo que quiere, a como de lugar y a cualquier precio!)
Requisitos / Requerimientos 5
¿Qué es un requisito?
Requisitos / Requerimientos 6
Los requisitos expresan lo que el sistema debe hacer para satisfacer las necesidades de sus clientes o usuarios “es un aspecto de un sistema o una descripción de aquello que el sistema es capaz de hacer a fin de cumplir su propósito” [Pfleeger, 1998] “Un requerimiento es un servicio que el sistema de software debe satisfacer o una restricción bajo la cual el sistema debe operar” [Sommerville 2002] Si me lo preguntan, en lo personal, pienso que...
7
Un requisito... ...es algo que el sistema debe ser capaz de hacer (o una restricci贸n que debe cumplir) para que pueda cumplir su prop贸sito y satisfacer a sus usuarios
Requisitos / Requerimientos 8
Los requerimientos se concentran en el cliente y el problema a resolver Definen (o deberĂan) sobre el sistema: Lo que el cliente quiere que haga... Todo lo que el cliente quiere que haga... Nada mĂĄs que lo que el cliente quiere que haga...
Requisitos / Requerimientos 9
¡Los requisitos se concentran en “qué” debe hacer el sistema, no en “cómo” debe hacerlo! Es decir, dejen de pensar por los momentos en cómo lo van a programar o implementar...
¿Qué Definen los Requisitos? 10 Las funciones que debe ejecutar
Los datos que debe capturar y almacenar
La información que debe producir
La plataforma de operación del sistema (Hardware / Software)
Aplicación
Requisitos
Interacción Usuario / Sistema
La interfaz gráfica usuario-sistema (GUI)
Restricciones de Operación
Atributos de Calidad
Seguridad, facilidad de uso, documentación, utilidad, etc.
La tecnología de información que debe usar
Las interfaces con otros sistemas
¿Qué Tipos de Requisitos? 11
Funcionales Dependiendo si definen o no funcionalidad
No Funcionales Tipos de Requisitos De Usuario Dependiendo de a quienes están dirigidos De Sistema
12
Requerimientos Funcionales / No Funcionales Los requerimientos Funcionales Describen:
La funcionalidad o los servicios que se espera que el sistema de software proveerá La interacción entre el sistema de software y su ambiente o contexto Como el sistema deberá actuar bajo ciertos estímulos o eventos
13
Requerimientos Funcionales / No Funcionales Ejemplos de Requerimientos Funcionales: R-010:
El sistema debe permitir el registro de nuevos usuarios en el foro, los nuevos usuarios deben ser aprobados o rechazados por un moderador antes de poder publicar mensajes R-200: Los usuarios deben poder intercambiar mensajes y comunicarse por medio del foro, toda la comunicaci贸n debe estar moderada para evitar conductas inapropiadas por parte de los usuarios, mensajes basura y publicidad no deseada
14
Requerimientos Funcionales / No Funcionales Los requerimientos no Funcionales:
No se refieren directamente a las propiedades funcionales del sistema, sino a sus propiedades emergentes o a restricciones adicionales en el sistema o en el proyecto de desarrollo de software. Definen restricciones adicionales al sistema, tales como: Proceso de desarrollo a utilizar, herramientas, lenguaje de programaciĂłn, limitaciones de presupuesto, de tiempo, de interfaz, etcĂŠtera
ÂżPropiedades Emergentes?
15
Requerimientos Funcionales / No Funcionales Propiedades Emergentes: Son aquellas que resultan del sistema como un todo y que es muy difĂcil o imposible atribuirle a un componente particular de ĂŠste. Por ejemplo, la fiabilidad, tiempo de respuesta, usabilidad, capacidad de almacenamiento, etcĂŠtera El todo no siempre es la simple suma de sus partes...
16
Requerimientos Funcionales / No Funcionales Ejemplos de Requerimientos no Funcionales: R-430:
El sistema debe ser utilizable por medio de una interfaz WEB R-230: El tiempo de respuesta del sistema al solicitar un reporte nunca debe ser mayor a 10 segundos
17
Requerimientos Funcionales / No Funcionales
Clasificaci贸n de Requerimientos no funcionales (no interpretar literalmente, es s贸lo a modo de referencia) Fuente: Sommerville 2002
18
Tipos de Requisitos (Clasificaciones) Funcionales Dependiendo si definen o no funcionalidad No Funcionales
Tipos de Requisitos De Usuario Dependiendo de a quienes estรกn dirigidos De Sistema
19
Requerimientos de Usuario / de Sistema Requerimientos de Usuario:
Son aquellos que están dirigidos a los usuarios y clientes (interesados en general) del sistema. Se redactan usando lenguaje natural (generalmente) de forma “no técnica” con el objetivo de que el personal no técnico los pueda entender Requerimientos de Sistema: Son aquellos dirigidos a personal técnico: analistas, programadores, arquitectos, ingenieros, etcétera. Generalmente están escritos en un lenguaje mucho más técnico pero mucho más preciso que los requerimientos de usuario
20
Requerimientos de Usuario / de Sistema
Documento de Especificaci贸n de Requerimientos (DER) Es el documento en el que usualmente se especifican los requerimientos de usuario
Documento de Definici贸n de Requerimientos (DDR) Es el documento en el que usualmente se especifican los requerimientos de sistema
Requisitos / Requerimientos 21
Nuevamente... ÂżPor quĂŠ son importantes los requisitos?
Requisitos 22
Se estima que un alto porcentaje de proyectos de desarrollo de software fallan por: Requisitos incompletos Falta de participaci贸n del usuario Expectativas poco realistas Cambios en los requisitos y las especificaciones El sistema dej贸 de ser necesario
Requisitos 23
Hoy en día la Ingeniería de Requisitos se considera una etapa clave en el desarrollo de software Actualmente, se considera que la satisfacción de los clientes es la mejor métrica de calidad de un sistema
Gracias 24
ยกGracias!