Metodologia Elicitacion Requisitos
Metodologia Elicitacion Requisitos
Metodologia Elicitacion Requisitos
Este trabajo ha sido o está siendo financiado por los siguientes proyectos:
Proyecto CICYT "MENHIR"(TIC 97–0593–C05–03)
Proyecto CICYT "GEOZOCO"(TIC 2000—1106—C02—01)
Proyecto CYTED "WEST"(VII.18)
Lista de cambios
Núm. Fecha Descripción Autor/es
0 13/10/1998 Versión 1.0 A. Durán y B.
Bernárdez
1 04/11/1998 [pág. 18] En el apartado de importancia de la plantilla general de A. Durán
requisitos del sistema, donde aparecía "En este apartado se indica la
importancia que tiene el caso de uso para el cliente" aparece ahora "En
este apartado se indica la importancia que tiene el requisito para el clien-
te".
2 04/11/1998 [pág. 18] En el apartado de urgencia de la plantilla general de re- A. Durán
quisitos del sistema, donde aparecía ". . . incluyendo la funcionalidad
expresada en el caso de uso" aparece ahora “. . . incluyendo las capacida-
des expresadas en el requisito".
3 04/11/1998 [pág. 23] En la descripción de la relación extends entre casos de uso, A. Durán
donde aparecía "En cierta forma, B completa la funcionalidad de A"
aparece ahora "En cierta forma, A completa la funcionalidad de B".
4 04/11/1998 [págs. 3, 6, 8, 15, 16, 17, 18, 19, 22, 23, 24, 26, 27, 30] Correcciones A. Durán
ortográficas diversas.
5 04/11/1998 Publicación de la versión 1.1. A. Durán
6 18/10/1999 En la versión 2.0 se han introducido numerosos cambios, los prin- A. Durán
cipales son los siguientes:
El título cambia de Norma para la Recolección de Requisitos de un Siste-
ma Software a Metodología para la Elicitación de Requisitos de Sistemas
Software.
La primera sección del documento pasa de denominarse Objetivo y
alcance a Objetivo de la metodología.
Se han eliminado de la tarea 1 las referencias relativas a la construc-
ción de modelos de análisis del dominio.
En la tarea 2 se habla de reuniones en lugar de hacerlo específica-
mente de entrevistas.
Se ha añadido la tarea 3 Identificar los objetivos del sistema como tarea
previa a la identificación de los requisitos y se ha diseñado una
plantilla específica para los objetivos.
Se han cambiado todas las apariciones de otros requisitos por requi-
sitos no funcionales.
Se ha cambiado el contenido de las secciones Introducción y Objeti-
vos del sistema del DRS.
Se han añadido al DRS las secciones Participantes en el proyecto y
Matriz de rastreabilidad.
Se ha contemplado la posibilidad de organizar los requisitos de for-
ma que no sean una lista plana.
Se han añadido las descripciones de las técnicas de JAD y brains-
torming.
Se ha reescrito la descripción de la técnica de los casos de uso.
Se ha cambiado el nombre de la relación uses entre casos de uso a
includes para adaptar la notación a UML.
Se han añadido plantillas específicas para objetivos y actores.
Se han añadido nuevos campos y patrones–L a todas las plantillas,
introduciendo el concepto de patrón lingüístico.
Se han eliminado los subpasos de la plantilla para requisitos fun-
cionales (casos de uso).
Se ha reescrito la mayor parte del ejemplo de aplicación de la me-
todología.
7 18/10/1999 Versión 2.0. A. Durán
8 18/10/2000 En la versión 2.1 se han introducido algunos cambios realizados A. Durán
durante la elaboración de la tesis doctoral de A. Durán [Durán
2000].
9 18/10/2000 Versión 2.1 (Informe Técnico LSI–2000–10) A. Durán
10 26/10/2001 En la versión 2.2 se han introducido algunos cambios realizados A. Durán
durante la implementación de la herramienta CASE REM. Estos
cambios afectan a algunos campos de algunas plantillas, aunque
no de una forma significativa.
11 26/10/2001 Versión 2.2. A. Durán
12 10/04/2002 Correciones menores A. Durán
13 10/04/2002 Versión 2.3. A. Durán
Índice
1. Objetivo de la metodología 1
2. Tareas recomendadas 1
2.1. Tarea 1: Obtener información sobre el dominio del problema
y el sistema actual . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.2. Descripción . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.3. Productos internos . . . . . . . . . . . . . . . . . . . . 3
2.1.4. Productos entregables . . . . . . . . . . . . . . . . . . 3
2.1.5. Técnicas recomendadas . . . . . . . . . . . . . . . . . 4
2.2. Tarea 2: Preparar y realizar las sesiones de elicitación/ne-
gociación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2.2. Descripción . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2.3. Productos internos . . . . . . . . . . . . . . . . . . . . 5
2.2.4. Productos entregables . . . . . . . . . . . . . . . . . . 5
2.2.5. Técnicas recomendadas . . . . . . . . . . . . . . . . . 5
2.3. Tarea 3: Identificar/revisar los objetivos del sistema . . . . . 5
2.3.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3.2. Descripción . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3.3. Productos internos . . . . . . . . . . . . . . . . . . . . 6
2.3.4. Productos entregables . . . . . . . . . . . . . . . . . . 6
2.3.5. Técnicas recomendadas . . . . . . . . . . . . . . . . . 6
2.4. Tarea 4: Identificar/revisar los requisitos de información . . 6
2.4.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.4.2. Descripción . . . . . . . . . . . . . . . . . . . . . . . . 6
2.4.3. Productos internos . . . . . . . . . . . . . . . . . . . . 7
2.4.4. Productos entregables . . . . . . . . . . . . . . . . . . 7
2.4.5. Técnicas recomendadas . . . . . . . . . . . . . . . . . 7
I
2.5. Tarea 5: Identificar/revisar los requisitos funcionales . . . . 7
2.5.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.5.2. Descripción . . . . . . . . . . . . . . . . . . . . . . . . 8
2.5.3. Productos internos . . . . . . . . . . . . . . . . . . . . 8
2.5.4. Productos entregables . . . . . . . . . . . . . . . . . . 8
2.5.5. Técnicas recomendadas . . . . . . . . . . . . . . . . . 8
2.6. Tarea 6: Identificar/revisar los requisitos no funcionales . . . 9
2.6.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.6.2. Descripción . . . . . . . . . . . . . . . . . . . . . . . . 9
2.6.3. Productos internos . . . . . . . . . . . . . . . . . . . . 10
2.6.4. Productos entregables . . . . . . . . . . . . . . . . . . 10
2.6.5. Técnicas recomendadas . . . . . . . . . . . . . . . . . 10
3. Productos entregables 10
3.1. Documento de requisitos del sistema . . . . . . . . . . . . . . 11
3.1.1. Portada . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.1.2. Lista de cambios . . . . . . . . . . . . . . . . . . . . . 11
3.1.3. Índice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.1.4. Listas de figuras y tablas . . . . . . . . . . . . . . . . . 14
3.1.5. Introducción . . . . . . . . . . . . . . . . . . . . . . . . 14
3.1.6. Participantes en el proyecto . . . . . . . . . . . . . . . 14
3.1.7. Descripción del sistema actual . . . . . . . . . . . . . 14
3.1.8. Objetivos del sistema . . . . . . . . . . . . . . . . . . . 15
3.1.9. Catálogo de requisitos del sistema . . . . . . . . . . . 15
3.1.10. Requisitos de información . . . . . . . . . . . . . . . . 15
3.1.11. Requisitos funcionales . . . . . . . . . . . . . . . . . . 15
3.1.12. Diagramas de casos de uso . . . . . . . . . . . . . . . 15
3.1.13. Definición de los actores . . . . . . . . . . . . . . . . . 15
3.1.14. Casos de uso del sistema . . . . . . . . . . . . . . . . . 16
3.1.15. Requisitos no funcionales . . . . . . . . . . . . . . . . 16
II
3.1.16. Matriz de rastreabilidad objetivos/requisitos . . . . . 16
3.1.17. Glosario de términos . . . . . . . . . . . . . . . . . . . 17
3.1.18. Conflictos pendientes de resolución . . . . . . . . . . 17
3.1.19. Apéndices . . . . . . . . . . . . . . . . . . . . . . . . . 17
4. Técnicas 17
4.1. Entrevistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.1.1. Preparación de entrevistas . . . . . . . . . . . . . . . . 18
4.1.2. Realización de entrevistas . . . . . . . . . . . . . . . . 19
4.1.3. Análisis de las entrevistas . . . . . . . . . . . . . . . . 20
4.2. Joint Application Development . . . . . . . . . . . . . . . . . 21
4.2.1. Participantes del JAD . . . . . . . . . . . . . . . . . . 22
4.2.2. Fases del JAD . . . . . . . . . . . . . . . . . . . . . . . 23
4.3. Brainstorming . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.3.1. Fases del brainstorming . . . . . . . . . . . . . . . . . 25
4.4. Casos de uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.4.1. Diagramas de casos de uso . . . . . . . . . . . . . . . 27
4.4.2. Relaciones entre casos de uso . . . . . . . . . . . . . . 28
4.4.3. Organización de casos de uso . . . . . . . . . . . . . . 30
III
A.3. Requisitos funcionales . . . . . . . . . . . . . . . . . . . . . . 52
A.3.1. Diagramas de casos de uso . . . . . . . . . . . . . . . 52
A.3.2. Definición de actores . . . . . . . . . . . . . . . . . . . 55
A.3.3. Casos de uso del sistema . . . . . . . . . . . . . . . . . 55
A.4. Requisitos no funcionales . . . . . . . . . . . . . . . . . . . . 71
IV
Índice de figuras
1. Tareas de elicitación de requisitos . . . . . . . . . . . . . . . . 2
2. Estructura del Documento de Requisitos del Sistema . . . . . 12
3. Portada del Documento de Requisitos del Sistema . . . . . . 13
4. Lista de cambios del Documento de Requisitos del Sistema . 13
5. Matriz de rastreabilidad del Documento de Requisitos del
Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
6. Diagrama de casos de uso . . . . . . . . . . . . . . . . . . . . 29
7. Representación gráfica de las relaciones includes y extends . . 29
8. Representación gráfica de los paquetes de casos de uso . . . 30
9. La plantilla como elemento de elicitación y negociación . . . 31
10. Plantilla y patrones–L para objetivos . . . . . . . . . . . . . . 32
11. Plantilla y patrones–L para requisitos de almacenamiento
de información . . . . . . . . . . . . . . . . . . . . . . . . . . 35
12. Plantilla y patrones–L para requisitos de restricciones de in-
formación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
13. Plantilla y patrones–L para actores . . . . . . . . . . . . . . . 37
14. Plantilla y patrones–L para requisitos funcionales (casos de
uso) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
15. Plantilla y patrones–L para requisitos funcionales (forma
tradicional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
16. Ejemplo de caso de uso de conexión de usuario (plantilla) . . 41
17. Ejemplo de caso de uso de conexión de usuario (Coleman) . 41
18. Plantilla y patrones–L para requisitos no funcionales . . . . . 43
19. Plantilla para conflictos . . . . . . . . . . . . . . . . . . . . . . 44
20. Diagrama de subsistemas . . . . . . . . . . . . . . . . . . . . 52
21. Diagrama de casos de uso del subsistema Gestión de socios 52
22. Diagrama de casos de uso del subsistema Gestión de películas 53
23. Diagrama de casos de uso del subsistema Gestión de alqui-
leres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
V
VI
Objetivo de la metodología 1
1. Objetivo de la metodología
El objetivo de esta metodología es la definición de las tareas a realizar,
los productos a obtener y las técnicas a emplear durante la actividad de
elicitación de requisitos de la fase de ingeniería de requisitos del desarrollo de
software.
En esta metodología se distinguen dos tipos de productos: los produc-
tos entregables y los productos no entregables o internos. Los productos en-
tregables son aquellos que se entregan oficialmente al cliente como parte
del desarrollo en fechas previamente acordadas, mientras que los no entre-
gables son productos internos al desarrollo que no se entregan al cliente.
El único producto entregable definido en esta metodología es el Docu-
mento de Requisitos del Sistema (DRS), definido en la sección 3.1, pág. 11.
La estructura de este documento es la siguiente: en la sección 2 se des-
criben las tareas recomendadas, en la sección 3 se definen los productos
entregables, en este caso el DRS, y por último, en la sección 4 se describen
algunas de las técnicas recomendadas para obtener los productos. Tam-
bién se incluye como apéndice un ejemplo de aplicación de esta metodo-
logía.
2. Tareas recomendadas
Las tareas recomendadas para obtener los productos descritos en esta
metodología son las siguientes:
Identificar/revisar los
objetivos del sistema
Identificar/revisar los
requisitos funcionales
Priorizar objetivos y
requisitos
2.1.2. Descripción
Modelado del sistema actual [Laguna et al. 1999, Ortín et al. 2001].
2.2.2. Descripción
2.3.2. Descripción
de los conflictos identificados. Puede que los objetivos hayan sido propor-
cionados antes de comenzar el desarrollo.
Objetivos del sistema como parte del DRS (ver sección 3.1.8, pág. 15).
Plantilla para especificar los objetivos del sistema (ver sección 5.1,
pág. 32).
2.4.2. Descripción
2.5.1. Objetivos
2.5.2. Descripción
Requisitos funcionales como parte del DRS (ver sección 3.1.11, pág.
15).
2.6.2. Descripción
Requisitos de fiabilidad
Los requisitos de fiabilidad deben establecer los factores que se re-
quieren para la fiabilidad del software en tiempo de explotación. La
Requisitos de portabilidad
Los requisitos de portabilidad definen qué características deberá te-
ner el software para que sea fácil utilizarlo en otra máquina o bajo
otro sistema operativo. Por ejemplo: el sistema deberá funcionar en los
sistemas operativos Windows 95, Windows 98 y Windows NT 4.0, siendo
además posible el acceso al sistema a través de Internet usando cualquier
navegador compatible con HTML 3.0.
Requisitos no funcionales del sistema como parte del DRS (ver sec-
ción 3.1.15, pág. 16).
3. Productos entregables
El único producto entregable que se contempla en esta metodología es
el Documento de Requisitos del Sistema (DRS).
3.1.1. Portada
La portada del DRS debe tener el formato que puede verse en la figura
3. Los elementos que deben aparecer son los siguientes:
Portada
Lista de cambios
Índice
Lista de figuras
Lista de tablas
1. Introducción
2. Participantes en el proyecto
3. Descripción del sistema actual
4. Objetivos del sistema
5. Catálogo de requisitos del sistema
5.1 Requisitos de información
5.2 Requisitos funcionales
5.2.1 Diagramas de casos de uso
5.2.2 Definición de actores
5.2.3 Casos de uso del sistema
5.3 Requisitos no funcionales
6. Matriz de rastreabilidad objetivos/requisitos
7. Glosario de términos
8. Conflictos pendientes de resolución [opcional, pueden ir
en un documento aparte]
Apéndices [opcionales]
Documento de
Requisitos del Sistema
Versión X:Y
Fecha fecha
.. .. .. ..
. . . .
3.1.3. Índice
El índice del DRS debe indicar la página en la que comienza cada sec-
ción, subsección o apartado del documento. En la medida de lo posible, se
sangrarán las entradas del índice para ayudar a comprender la estructura
del documento.
3.1.5. Introducción
Esta sección debe contener una lista con todos los participantes en el
proyecto, tanto desarrolladores como clientes y usuarios. Para cada parti-
cipante se deberá indicar su nombre, el papel que desempeña en el pro-
yecto, la organización a la que pertenece y cualquier otra información adi-
cional que se considere oportuna.
Esta sección debe contener una descripción del sistema actual en el ca-
so de que se haya acometido su estudio. Para describir el sistema actual
puede utilizarse cualquier técnica que se considere oportuno, por ejemplo
las descritas en [Laguna et al. 1999] (Diagrama Documentos–Tarea, DDT) o
en [Ortín et al. 2001] (Diagramas de Actividad, también descritos en [Booch
et al. 1999]).
Esta sección debe contener una lista con los objetivos que se esperan
alcanzar cuando el sistema software a desarrollar esté en explotación, es-
pecificados mediante la plantilla para objetivos descrita en la sección 5.1,
pág. 32.
Este apartado debe contener los diagramas de casos de uso del sistema
que se hayan realizado.
Este apartado debe contener una lista con los actores que se hayan
identificado, especificados mediante la plantilla para actores de casos de
uso descrita en la sección 5.3, pág. 36.
Este apartado debe contener los casos de uso que se hayan identificado,
especificados mediante la plantilla para requisitos funcionales descrita en
la sección 5.4, pág. 37. En el caso de que se considere oportuno, también
se podrán expresar algunos o todos los requisitos funcionales de la forma
tradicional, usando para ello la plantilla descrita en la sección indicada
previamente.
3.1.19. Apéndices
4. Técnicas
A continuación, se describen algunas de las técnicas que se proponen
en esta metodología para obtener los productos de las tareas que se han
descrito.
Las técnicas más habituales en la elicitación de requisitos son las en-
trevistas, el Joint Application Development (JAD) o Desarrollo Conjunto de
Aplicaciones, el brainstorming o tormenta de ideas y la utilización de esce-
narios [Weidenhaput et al. 1998, Rolland et al. 1998], más conocidos como
casos de uso [Jacobson et al. 1993, Booch et al. 1999].
A estas técnicas, que se describen en los siguientes apartados, se las
suele apoyar con otras técnicas complementarias como la observación in
situ, el estudio de documentación, los cuestionarios, la inmersión en el ne-
gocio del cliente [Goguen y Linde 1993] o haciendo que los ingenieros de
requisitos sean aprendices del cliente [Beyer y Holtzblatt 1995].
4.1. Entrevistas
Las entrevistas son la técnica de elicitación más utilizada, y de hecho
son prácticamente inevitables en cualquier desarrollo ya que son una de
las formas de comunicación más naturales entre personas.
En las entrevistas, y en otras técnicas de interacción, se pueden identi-
ficar tres fases: preparación, realización y análisis [Piattini et al. 1996].
Una vez realizada la entrevista es necesario leer las notas tomadas, pa-
sarlas a limpio, reorganizar la información, contrastarla con otras entrevis-
tas o fuentes de información, etc.
4.3. Brainstorming
El brainstorming o tormenta de ideas es una técnica de reuniones en
grupo cuyo objetivo es la generación de ideas en un ambiente libre de crí-
ticas o juicios [Gause y Weinberg 1989, Raghavan et al. 1994]. Las sesiones
de brainstorming suelen estar formadas por un número de cuatro a diez
participantes, uno de los cuales es el jefe de la sesión, encargado más de
comenzar la sesión que de controlarla.
Como técnica de elicitación de requisitos, el brainstorming puede ayu-
dar a generar una gran variedad de vistas del problema y a formularlo
de diferentes formas, sobre todo al comienzo del proceso de elicitación,
cuando los requisitos son todavía muy difusos.
Frente al JAD, el brainstorming tiene la ventaja de que es muy fácil
de aprender y requiere poca organización, de hecho, hay propuestas de
realización de brainstorming por vídeo–conferencia a través de Internet
[Raghavan et al. 1994]. Por otro lado, al ser un proceso poco estructurado,
puede no producir resultados con la misma calidad o nivel de detalle que
otras técnicas.
y los casos de uso en los que éstos intervienen. Las interacciones concretas
entre los actores y el sistema no se muestran en este tipo de diagramas.
Caso de uso A
Caso de uso B
Actor 1
Actor 2
Caso de uso C
Sistema
A B C
<<includes>> <<includes>>
<<includes>> <<extends>>
X Y
A
<<subsistema>>
B
<<subsistema>>
Actor 1 Actor 2
C
<<subsistema>>
Sistema
ción?".
El significado de los campos de las plantillas es el siguiente:
Objetivos asociados: este campo debe contener una lista con los ob-
jetivos a los que está asociado el requisito, es decir de los objetivos
de los que depende. Esto permite conocer qué requisitos harán que
el sistema a desarrollar alcance los objetivos propuestos y justifican
de esta forma la existencia o propósito del requisito.
Datos específicos: este campo contiene una lista de los datos espe-
cíficos asociados al concepto relevante, de los que pueden indicar-
se todos aquellos aspectos que se considere oportunos (descripción,
restricciones, ejemplos, etc.).
una o más acciones, o se realiza (se incluye) otro caso de uso. Un paso
puede tener una condición de realización, en cuyo caso si se realizara
otro caso de uso se tendría una relación de extensión. Se asume que,
después de realizar el último paso, el caso de uso termina.
Otras propuestas similares, por ejemplo [Coleman 1998], proponen
utilizar estructuras similares al pseudocódigo para expresar las inte-
racciones de los casos de uso. En nuestra opinión, esto puede llevar a
que dichas descripciones sean excesivamente complejas de entender
para los participantes sin conocimientos de programación y se corre
el peligro de especificar los casos de uso con un estilo cercano a la
programación.
Para representar estructuras condicionales complejas se puede re-
currir a añadir información aparte, por ejemplo una tabla de deci-
sión, y referenciarla desde el paso o los pasos oportunos.
En el caso de estructuras iterativas, su uso puede evitarse con un
uso cuidadoso del lenguaje natural. Por ejemplo, para indicar que se
procesan todos los artículos de un pedido se puede optar por frases
como "el sistema procesa todos los artículos del pedido introducidos por el
usuario", en lugar de estructuras como:
REPETIR
procesar artículo del pedido introducido por el usuario
HASTA que no haya más artículos
Otro ejemplo puede ser especificar que el usuario puede intentar co-
nectarse al sistema un máximo de tres veces. Una posible especifica-
ción sería la que puede verse en la figura 16, bastante más natural y
fácil de entender que la que puede verse en la figura 17 utilizando la
propuesta descrita en [Coleman 1998].
2. REPETIR
2.1 El sistema solicita al usuario su nombre de usuario
2.2 El usuario proporciona al sistema su nombre de usuario
2.3 El sistema solicita al usuario su clave
2.4 El usuario proporciona al sistema su clave
2.5 El sistema comprueba si el nombre de usuario y
la clave son correctas
2.6 El sistema incrementa intentos
HASTA QUE el nombre de usuario y la clave sean correctas o
intentos = 3
normal o quedar sin efecto, en cuyo caso se cancelan todas las ac-
ciones realizadas en el caso de uso dejando al sistema en el mismo
estado que antes de comenzar el caso de uso, asumiendo una semán-
tica transaccional del mismo, tal como se describe en [Jacobson et al.
1997].
Inicialmente, la expresión utilizada para indicar una terminación anor-
mal del caso de uso como resultado de una excepción era "este caso
de uso aborta". La experiencia durante su aplicación nos llevó a la
conclusión de que el termino abortar resultaba emocionalmente moles-
to para algunos participantes [Goleman 1996], por lo que se cambió
por "este caso de uso queda sin efecto" con el significado comentado
anteriormente.
Alternativas: este campo debe contener una lista con las posibles al-
ternativas de solución que se hayan identificado para solucionar el
conflicto así como los autores de dicha alternativas.
Referencias
[Beyer y Holtzblatt 1995] H. R. Beyer y K. Holtzblatt. Apprenticing with
the Customer. Communications of the ACM, 38(5), Mayo 1995.
[Boehm et al. 1994] B. W. Boehm, P. Bose, E. Horowitz, y M.-
J. Lee. Software Requirements as Negotiated Win Con-
ditions. En Proceedings of the First International Confe-
rence on Requirements Engineering, 1994. Disponible en
http://sunset.usc.edu/TechRpts/Papers/NGPM-Requirements93.ps.
[Booch et al. 1999] G. Booch, J. Rumbaugh, y I. Jacobson. The Unified Mo-
deling Language User Guide. Addison–Wesley, 1999.
[Brackett 1990] J. W. Brackett. Software Requirements. Curriculum Mo-
dule SEI–CM–19–1.2, Software Engineering Institute, Carnegie Mellon
University, 1990. Disponible en http://www.sei.cmu.edu.
[Cockburn 1997] A. Cockburn. Structuring Use Cases with Goals. Journal
of Object–Oriented Programming, Sept. y Nov./Dic. 1997. Disponible en
http://members.aol.com/acockburn/papers/usecases.htm.
[Firesmith 1997] D. G. Firesmith. Uses Cases: the Pros and Cons, 1997.
Disponible en http://www.ksccary.com/usecjrnl.html.
<<includes>>
Socio Baja de socio (UC-02)
<<includes>>
Identificación
de socio (UC-15)
Modificación de los datos
de un socio (UC-03)
<<extends>>
Empleado del
vídeo-club
NFR–03 Portabilidad
Objetivos asociados –
Requisitos asociados –
Descripción El sistema deberá ser fácilmente portable al sistema operativo
Microsoft Windows 2000
Comentarios ninguno