Sunteți pe pagina 1din 44

Slide 6A.

An Introduction to
Object-Oriented
Systems Analysis and Design
with UML and
the Unified Process
McGraw-Hill, 2004

Stephen R. Schach
srs@vuse.vanderbilt.edu
Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.
CAPITULO 6 — Unidad A Slide 6A.2

EL WORKFLOW DE ANALISI I

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Introducción del Capitulo Slide 6A.3

 El Workflow de Análisis
 Extrayendo Clases Entidad
 Modelo Funcional Inicial: Osbert Oglesby Caso de Estudio
 Diagrama de Clases Inicial: Osbert Oglesby Caso de Estudio
 Modelo Dinámico Inicial: Osbert Oglesby Caso de Estudio
 Extrayendo Clases de Borde
 Extrayendo Clases de Control
 Refinando los Casos de Uso
 Realizacion de Caso de Uso
 Incrementando el Diagrama de Clases
 Donde esta el Documento de Especificaciones?

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


El Workflow de Análisis tiene dos Propósitos Slide 6A.4

 Obtener una comprensión mas profunda de los


requisitos

 Describir los requisitos de una forma que:


– Sea fácil de mantener, y
– Que proporcione apoyos para la comprensión de la
estructura del sistema de información que se va a
desarrollar

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Clases Slide 6A.5

 Los tres tipos de clases en el Proceso Unificado


son:
– Clase de Entidad
– Clase de Borde
– Clase de Control

 Notacion UML

Clase Clase Clase


Entidad Borde Control
Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.
Clase Entidad Slide 6A.6

 Una clase entidad es un modelo de la información


perdurable.

 Ejemplos:
– Clase Cuenta en un sistema de información de un Banco
– Clase Cuadro en el sistema de información Osbert
Oglesby
– Clase Hipoteca y Clase Inversión en el sistema de
información de MSG Foundation

 Instancias de todas estas clases permanecen en el


sistema de información por años
Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.
Clase Borde Slide 6A.7

 Una clase borde modela la interacción entre el


sistema de información y sus actores

 Clases borde, generalmente se asocian con


entrada y salida

 Ejemplos:
– Clase Reporte de Compras y Clase Reporte de Ventas
en el sistema de información de Osbert Oglesby
– Clase Informe de Hipotecas y Clase informe de
Inversiones en el sistema de información MSG
Foundation
Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.
Clase Control Slide 6A.8

 Una clase control modela cálculos y algoritmos


complejos

 Ejemplos:
– Clase Calcular Precio Obra Maestra,
– Clase Calcular Precio Obra Representativa, y
– Clase Calcular Precio Otro Tipo
en el sistema de información Osbert Oglesby

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Estereotipos Slide 6A.9

 Notación UML para estos tres tipos de clases

 Estos son estereotipos (extensiones de UML)


– UML permite definir constructores adicionales que no son
parte de UML pero pueden ser necesarios para modelar
el sistema con precisión

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


El Proceso Unificado y Clases Slide 6A.10

 El Proceso Unificado no describe como extraer las


clases
– Usuarios del Proceso Unificado están a la expectativa de
tener información del análisis y el diseño orientado a
objetos

 Se suspende temporalmente esta discusión del


Proceso Unificado para explicar como las clases
son extraídas, y luego se retorna al Proceso
Unificado

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Extracción de las Clases Entidad Slide 6A.11

 Extracción de Clases Entidad consiste de tres pasos que son


llevados interactivamente e incrementalmente:
– Modelado Funcional
» Presentar escenarios de todos los casos de uso (un escenario es
una instancia de un caso de uso)
– Modelado de Clases
» Determinar las clases entidad y sus atributos
» Determinar las interrelaciones e interacciones entre las clases
entidad
» Presentar esta información en forma de un diagrama de clases
– Modelado Dinámico
» Determinar las operaciones ejecutadas por o con cada clase o
subclase de entidad
» Presentar esta información en forma de un diagrama de estado

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Diagrama de Flujo para Extraer Clases Entidad Slide 6A.12

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Modelo Funcional Inicial: Osbert Oglesby Slide 6A.13

 Llamando el diagrama de casos de uso de Osbert


Oglesby:

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Caso de Uso y Escenario Slide 6A.14

 Un caso de uso describe todas las posibles


interacciones entre el sistema de información y los
usuarios

 Un escenario es una instancia de un caso de uso


– (Justo como un objeto es una instancia de una clase)

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Escenario del Caso de Uso Case Comprar un Cuadro
Slide 6A.15

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Escenario del Caso de Uso Case Comprar un Cuadro
Slide 6A.16

 Este es un escenario normal

 Hay seis párrafos en el escenario


– Solo cuatro de estos están numerados
– Las dos sentencias no numeradas
» “Osbert desea comprar una obra maestra” y
» “Osbert hace una oferta por debajo del precio máximo — la oferta
es aceptada por el vendedor”
no tienen iteración entre Osbert y el sistema de
información
– Estos párrafos no numerados son básicamente
comentarios

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Segundo Escenario del Caso de Uso Comprar un Cuadro
Slide 6A.17

 Este es un escenario de excepción


– Este modela una iteración que no es “normal”

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Tercer Escenario del Caso de Uso Comprar un Cuadro
Slide 6A.18

 Este es otro escenario de excepción

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Escenario Normales y Excepcionales Slide 6A.19

 Escenarios normales y excepcionales se pueden


combinar en un escenario ampliado

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Modelo Funcional Inicial (contd) Slide 6A.20

 El equipo de analistas de sistemas investigan tantos


escenarios normales como de excepción hay para
cada caso de uso, en tanto el tiempo lo permita
– Con el fin de lograr una comprensión mas profunda
» Del dominio
» Del modelo de negocios, y
» De los casos de uso

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Diagrama de Clases Inicial: Osbert Oglesby Caso de Estudio
Slide 6A.21

 El segundo paso en la extracción de las clases


entidad es el modelado de clases.
– El objetivo de este paso es extraer las clases entidad,
determinar sus interrelaciones, y encontrar sus atributos

 Usualmente, la mejor forma para iniciar este paso


es usar el método de extracción de sustantivos en
dos etapas
– Etapa 1: Describir el sistema de información en un párrafo
simple
– Etapa 2: Identificar los sustantivos en este párrafo,
entonces seleccione las clases entidad de estos
sustantivos
Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.
Extracción de sustantivos: Osbert Oglesby Caso de Estudio
Slide 6A.22

 Etapa 1: Describir el sistema de información en un


párrafo:
– Los informes se van a generar con el fin de mejorar la
efectividad del proceso de toma de decisiones para la
compra de obras de arte. Los informes contienen
información de compra y venta sobre cuadros, los cuales
se clasifican en obras maestras, obras representativas y
de otro tipo.

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Extracción de sustantivos: Osbert Oglesby Caso de Estudio
Slide 6A.23

 Etapa 2: Identificar los sustantivos del párrafo


– Los informes se van a generar con el fin de mejorar la
efectividad del proceso de toma de decisiones para la
compra de obras de arte. Los informes contienen
información de compra y venta sobre cuadros, los cuales
se clasifican en obras maestras, obras representativas y
de otro tipo.
 Los sustantivos son: cuadro, obra maestra, obra
representativa y otro tipo.

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Extracción de sustantivos: Osbert Oglesby Caso de Estudio
Slide 6A.24

 efectividad, proceso e informacion son sustantivos


abstractos y por lo tanto poco probable que sean
clases entidad
– Los sustantivos abstractos identifican cosas que no tienen
existencia física

 Sustantivos compra y venta son derivados del verbo


“comprar” y “vender”
– Ellos podrían ser probablemente operaciones de alguna
clase

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Extracción de sustantivos: Osbert Oglesby Caso de Estudio
Slide 6A.25

 Sustantivo reporte es poco probable que sea una


clase entidad, debido a que un reporte no es
perdurable
– reporte es mas probable que sea una clase de borde

 Sustantivos obra de arte es un sinónimo de cuadro

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Primera Iteración del Diagrama de Clases Inicial Slide 6A.26

 Esto muestra cuatro candidatos a clases entidad:


– Painting Class, Masterpiece Class, Masterwork Class,
and Other Painting Class

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Segunda Iteración del Diagrama de Clases Inicial Slide 6A.27

 Considere las interrelaciones entre las clases


entidad

 Una obra maestra es un tipo especifico de cuadro, y


también una obra representativa y otro cuadro”

– Clase Pintura es por lo tanto la clase base


– La clase Obra Maestra, La clase obra representativa, y
la clase Otras Pintura son subclases de la clase base

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Segunda Iteración del Diagrama de Clases Inicial (Cont)
Slide 6A.28

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Tercera Iteración del Diagrama de Clases Inicial Slide 6A.29

 El diagrama de clases no refleja aspectos del


algoritmo de precios

 Al tratar con una obra maestra


– “El sistema de información primero calcula el precio de
compra máximo como si se tratara de una obra maestra
hecha por el mismo artista”

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Tercera Iteración del Diagrama de Clases Inicial (cont)
Slide 6A.30

 Esto es, una obra representativa tiene todos los


atributos de una pieza maestra (además que este
precio de compra máximo puede ser calculado
como si fura una pieza maestra) y, adicionalmente,
tiene atributos propios
– Esto esta modelado en el siguiente slide

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Tercera Iteración del Diagrama de Clases Inicial (Cont)
Slide 6A.31

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Cuarta Iteración del Diagrama de Clases Inicial Slide 6A.32

 Otro aspecto del algoritmo del precio que no es


reflejado en el actual diagrama de clases
– “El sistema de información calcula el coeficiente de
similaridad entre cada cuadro para el cual hay un registro
de subasta y el cuadro que se esta considerando
comprar”

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Cuarta Iteración del Diagrama de Clases Inicial (contd)
Slide 6A.33

 La Clase Cuadro Subastado es necesaria para


hacer estas comparaciones
– Un cuadro subastado debe ser una subclase de la Clase
Cuadro
– Pero un cuadro que se ha vendido antes en una subasta
en alguna parte del mundo no tiene nada que ver con los
que se exhiben para su venta en la galería de Osbert

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Cuarta Iteración del Diagrama de Clases Inicial (contd)
Slide 6A.34

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Cuarta Iteración del Diagrama de Clases Inicial (contd)
Slide 6A.35

 Una instancia de la Clase Pintura puede ser


– Un cuadro que Osbert ha comprado (una instancia de
Clase Cuadro de Galeria), o
– Una pintura vendida en alguna subasta (una instancia de
la Clase Cuadro Subastado)

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Quinta Iteración del Diagrama de Clases Inicial Slide 6A.36

 Un tercer aspecto del algoritmo del precio máximo


que aun no se ha modelado es la moda
– “El sistema de información calcula el precio de compra
máximo mediante la formula F  A , donde F es una
constante para ese artista (coeficiente de moda) …”

 La Clase Moda es necesaria


– Una pintura de la Clase Otra Pintura puede entonces
usar la instancia de la Clase Moda para el artista calcular
el precio máximo que Osbert puede ofrecer para pagar

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Quinta Iteración del Diagrama de Clases Inicial (contd)
Slide 6A.37

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Diagrama de Clases Inicial: Caso de Estudio Osbert
Slide 6A.38

 Por que la primera iteración del diagrama de clases


fue tan inadecuada?
– El caso de estudio de Osbert Oglesby parece ser una
aplicación de procesamiento de datos sencilla
– La descripción en un párrafo no incorporo el algoritmo del
precio.

 Desafortunadamente, el algoritmo oculto detalles


críticos para el diagrama de clases

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Diagrama de Clases Inicial: Caso de Estudio Osbert
Slide 6A.39

 La primera iteración del diagrama de clases no fue


buena
– Sin embargo, repetidas iteraciones e incrementacion
llegaron a un razonable diagrama de clases

 Esto demuestra el poder del método iterativo e


incremental

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Diagrama de Clases Inicial (contd) Slide 6A.40

 Finalmente, adicionamos los atributos de cada clase


al diagrama de clases
– Para el caso de estudio Osbert Oglesby, el resultado es
mostrado en el siguiente slide

 El rectángulo vacío al fondo de cada caja se llenará


después con las operaciones de esa clase

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Quinta Iteración del Diagrama de Clases Inicial (contd)
Slide 6A.41

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Quinta Iteración del Diagrama de Clases Inicial (contd)
Slide 6A.42

 Clase de Aplicación Osbert Oglesby contendrá


las operaciones que inician la ejecución de todo el
sistema de información.

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Quinta Iteración del Diagrama de Clases Inicial (contd)
Slide 6A.43

 La próxima diapositiva muestra la quinta iteración


del diagrama de la clase inicial, sin los atributos,
pero reflejando los estereotipos explícitamente
– Todas las ocho clases en la figura son clases entidad,
ellos modelan la información de larga vida.

 Esto es también un diagrama de clases


– Un diagrama de clases representa las clases y sus
interrelaciones; los atributos y las operaciones son
opcionales

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.


Slide 6A.44

Continua en la Unidad 6B

Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.

S-ar putea să vă placă și