Ingeniería de Requisitos Obtención y Análisis de Requisitos

Download Report

Transcript Ingeniería de Requisitos Obtención y Análisis de Requisitos

Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Proceso: técnicas
• Obtención orientada al punto de vista (VORD).
• Etnografía.
• Escenarios.
• Modelos de Sistemas: Análisis Estructurado,
Modelo de Datos, Modelo de Objetos
• Prototipos.
1
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelo de Sistemas
• Descripción
abstracta
del
sistema
requerimientos se están analizando.
cuyos
• Tipos:
– Modelos Contextuales
– Modelos de Comportamiento
– Modelos de Datos.
– Modelos de Objetos.
2
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelo de Sistemas
• El modelamiento del sistema ayuda al analista a
entender la funcionalidad del sistema, y los
modelos son usados para comunicarse con los
clientes.
• Diferentes
modelos
presentan
diferentes
perspectivas del sistema:
– Perspectiva externa muestra el contexto o ambiente del
sistema.
– Perspectiva del comportamiento muestra, valga la
redundancia, el comportamiento del sistema.
– Perspectiva estructural muestra la arquitectura del
sistema y la de datos.
3
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos Estructurados
• Los
métodos
estructurados
incorporan
el
modelamiento de sistemas como parte inherente
del método.
• Los métodos definen un conjunto de modelos, un
proceso para derivarlos, y reglas y guías que
debieran aplicarse a los modelos.
4
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos Estructurados: debilidades
• No modelan requisitos del sistema no funcionales.
• Usualmente, no incluyen información respecto de si
un método es apropiado o no para un problema
dado.
• Pueden producir mucha documentación.
• A veces, son demasiado detallados y difìciles de
entender por parte del usuario.
5
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Tipos de Modelos:
• Modelos de procesamiento de datos muestran
como el dato es procesado en diferentes etapas.
• Modelos de composición presentan cómo las
entidades están compuestas de otras entidades.
• Modelos arquitectónicos entregan los subsistemas
principales.
• Modelos de clasificación muestran cómo las
entidades tienen características comunes.
• Modelos de estímulo/respuesta presentan la
reacción del sistema ante determinados eventos.
6
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Contexto:
• Usados para indicar los límites del sistema.
• Los intereses sociales y organizacionales pueden
afectar la decisión de donde ubicar los límites del
sistema.
• Modelos arquitectónicos muestran cómo el sistema
y sus relaciones con otros sistemas
7
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Procesos:
• Muestran el proceso completo y los procesos que
son soportados por el sistema.
• Los modelos de flujo de datos pueden ser usados
para mostrar los procesos, y el flujo de información
desde un proceso a otro.
8
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Comportamiento:
• Utilizados para describir
completo del sistema.
el
comportamiento
• Hay de dos tipos:
– Modelos de procesamiento de datos.
– Modelos de máquinas de estado.
• Ambos tipos de modelos son requeridos para una
descripción del comportamiento del sistema.
9
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Procesamiento de Datos:
• Los diagramas de flujo de datos (DFD) son usados
para modelar el procesamiento de datos del
sistema.
• Son la parte intrínseco de muchos métodos de
análisis.
• Usan notación simple e intuitiva, que los clientes
pueden entender.
• Muestran el procesamiento de extremo a extremo
de los datos.
10
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Or der
details +
blank
order form
Signed
order form
Completed
order form
Complete
order form
Valida te
order
Signed
order form
Send to
supplier
Record
order
Order
details
Signed
order form
Checked and
signed order
+ order
notification
Adjust
available
budget
Order
amount
+ account
details
Orders
file
Budget
file
11
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Diagramas de Flujo de Datos (DFD):
• Modelan el
funcional.
sistema
desde
una
perspectiva
• Rastrean y documentan cómo los datos asociados
con un proceso es útil para desarrollar un
entendimiento completo del sistema.
• Los DFD pueden, también, ser usados para señalar
el intercambio de datos entre un sistema y otros en
su ambiente.
12
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Máquinas de Estados:
• Modelan el comportamiento del sistema frente a
eventos internos y externos.
• Muestran las respuestas del sistema ante
estímulos, por lo que son usados para modelar
sistemas de tiempo real.
• Presentan los estados del sistemas como nodos, y
los eventos como arcos entre los mismos. Cuando
un evento ocurre, el sistema se mueve de un
estado a otro.
13
Full
power
Full power
do: set power
= 600
Timer
Waiting
do: display
time
Half
power
Number
Full
power
Half
power
Door
closed
Timer
Door
open
Half power
do: set power
= 300
Operation
do: operate
oven
Set time
do: get number
exit: set time
Door
closed
Cancel
Start
Enabled
do: display
'Ready'
Door
open
Waiting
do: display
time
Disabled
do: display
'Waiting'
14
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Máquinas de Estados: ejemplo horno
microondas.
• Estados: esperando, potencia media, potencia
total…
• Estímulos: empezar, número, puerta cerrada…
• Presentan los estados del sistemas como nodos, y
los eventos como arcos entre los mismos. Cuando
un evento ocurre, el sistema se mueve de un
estado a otro.
15
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Diagramas de Estados:
• Permiten la descomposición de un modelo en
varios submodelos.
• Una breve descripción de las acciones es incluida
después del “do” en cada estado.
• Pueden ser complementados por tablas que
describan el estado y los estímulos.
16
Operation
Checking
do: check
status
Turntable
fault
Time
Cook
do: run
generator
OK
Emitter
fault
Timeout
Done
do: buzzer on
for 5 secs.
Alarm
do: display
event
Door
open
Disabled
Cancel
Waiting
17
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Datos Semánticos:
• Describen la estructura lógica de los datos
procesados por el sistema.
• El modelo entidad-relación-atributo establece las
entidades en el modelo, sus relaciones y los
atributos de las entidades.
• Ampliamente usados en el diseño de bases de
datos; fácilmente implementadas usadas bases de
datos relaciona-les.
18
Design
1
name
description
C-date
M-date
is-a
has-nodes
1
has-links
1
n
n
1
Node
has-links
1
name
type
2
Link
n
1
links
1
name
type
1
has-labels
has-labels
Label
n
name
text
icon
n
19
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Diccionarios de Datos:
• Listan todos los nombres usados en los modelos
del sistema.
• Ventajas:
– Soporta administración de nombres y evita la duplicación.
– Almacena el conocimiento organizacional que enlaza el
análisis,el diseño y la implementación entre sí.
20
Name
has-labels
Label
Link
name
(label)
name
(node)
Description
1:N relation between entities of type
Node or Link and entities of type
Label.
Holds structured or unstructured
information about nodes or links.
Labels are represented by an icon
(which can be a transparent box) and
associated text.
A 1:1 relation between design
entities represented as nodes. Links
are typed and may be named.
Eac h label has a name which
identifies the type of label. The na me
must be unique within the set of label
types used in a design.
Eac h node has a name which must be
unique within a design. The name
may be up to 64 characters long.
Type
Date
Relation
5.10.1998
Entity
8.12.1998
Relation
8.12.1998
Attribute
8.12.1998
Attribute
15.11.1998
21
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Objetos:
• Describen el sistema en términos de clases de
objetos.
• Una clase de objeto es una abstracción sobre un
conjuntos de objetos con atributos comunes, y los
servicios (operaciones) provistas por cada objeto.
• Varios modelos de objetos pueden ser producidos:
– Modelos de herencia.
– Modelos de agregación.
– Modelos de interacción.
22
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Objetos:
• Formas naturales de reflejar las entidades del
mundo real que son manipuladas por el sistema.
• Entidades más abstractas son más difíciles de
modelar.
• La identificación de las clases se reconoce como
un proceso difícil, que requiere un conocimiento
profundo del dominio de la aplicación.
• Las clases que reflejan las entidades del dominio
son reusables a lo largo de los sistemas de una
organización.
23
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelos de Herencia:
• Organizan las clases del dominio en una jerarquía.
• Las clases en el tope de la raíz reflejan las
características comunes de todas las clases
inferiores.
• Las clases heredan sus atributos y servicios desde
una o más superclases; dichas clases,
denominadas subclases, pueden especializarse
tanto como sea necesario.
24
Library item
Catalogue number
Acquisition date
Cost
Type
Status
Number of copies
Acquire ()
Catalogue ()
Dispose ()
Issue ()
Return ()
Published item
Recorded item
Title
Medium
Title
Publisher
Book
Author
Edition
Publication date
ISBN
Magazine
Year
Issue
Film
Director
Date of release
Distributor
Computer
program
Version
Platform
25
Libr ary user
Name
Address
Phone
Registration #
Register ()
De-r egister ()
Reader
Borrower
Items on loan
Max. loans
Affiliation
Staff
Department
Department phone
Student
Major subject
Home address
26
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Herencia Múltiple:
• Corresponde al caso en que una subclase hereda
de dos o más superclases.
• Puede ocasionar conflictos semánticos con
nombres y/o servicios con el mismo nombre en
diferentes superclases.
27
Book
Voice recording
Author
Edition
Publication date
ISBN
Speaker
Duration
Recording date
Talking book
# Tapes
28
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Agregación de Objetos:
• El modelo de agregación muestra las clases como
colecciones de otras clases.
• Es similar a la asociación parte-de presente en los
modelos de datos semánticos.
29
30
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Modelamiento del Comportamiento de Objetos:
• Muestra las interacciones entre objetos para
producir algún comportamiento particular del
sistema, que está especificado en un caso de uso.
• Diagramas de secuencia o de colaboración (UML)
son usados para modelar estas interacciones.
31
Ecat:
Catalog
:Library Item
Lib1:
NetServer
:Library User
Lookup
Display
Issue
Issue licence
Accept licence
Compress
Deliver
32
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
CASE:
• Un conjunto coherente de herramientas que es
diseñado para soportar actividades del proceso de
software relacionadas entre sí.
• Soportan modelamiento del sistema tanto en la
ingeniería de requisitos como en el diseño del
sistema.
33
Data
dictionary
Structured
diagramming
tools
Report
generation
facilities
Code
generator
Central
information
repository
Query
language
facilities
Forms
creation
tools
Design, analysis
and checking
tools
Import/export
facilities
34
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
CASE: Componentes de Análisis
• Editores de diagramas.
• Herramientas de análisis y chequeo de modelos.
• Repositorio y lenguaje de consulta asociado.
• Diccionario de datos.
• Herramientas de definición y generación
reportes.
• Herramientas de definición de forms.
de
• Traductores de importación/exportación de datos.
35
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Puntos Claves:
• Un modelo es una vista abstracta del sistema.
• Modelos de contexto muestran la posición de un
sistema en su entorno respecto de otros sistemas
y procesos.
• Los modelos de flujo de datos pueden ser usados
para modelar el procesamiento de datos en un
sistema.
• Los modelos de máquinas de estado modelan el
comportamiento en respuesta a eventos internos y
externos.
36
Ingeniería de Requisitos
Obtención y Análisis de Requisitos
Puntos Claves:
• Modelos de datos semánticos describen la
estructura lógica de los datos requeridos por el
sistema.
• Modelos de clases describen las entidades lógicas
del sistema, su clasificación y agregación.
• Las CASE apoyan el desarrollo de los modelos del
sistema.
37