Beruflich Dokumente
Kultur Dokumente
• Temario
• Ingeniería de Software
• Estructuras de Objetos
• Diagramas Estáticos
• Diagramas de Clases
• Diagramas de Casos de Uso
• Diagramas Dinámicos
• Diagramas de Estado
• Diagramas de Actividades
• Diagramas de Secuencias
• Diagramas de Colaboración
• Diagramas de Implementación
• Diagramas de Componentes
• Diagramas de Distribución
• Casos de estudio
• Patrones de Diseño
• Metodologías
• Instructor
• Ing. y M.A. Francisco Javier Mariscal Flores fmarisc@uach.mx
Analisis.ppt Pag. 1
Análisis y Diseño de Sistemas de Información Bibliografía
• Bibliografía
Using UM
with obje
Analisis.ppt Pag. 2
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 3
Análisis y Diseño de Sistemas de Información Ingeniería de Software
• Problemas:
• Hay sistemas que no cumplen con las necesidades de los usuarios
y/o tienen fallas técnicas.
• Generalmente, los sistemas no están actualizados ni cuando se están
diseñando.
• Aún existe el “error de la computadora” como excusa a un mal
servicio a los clientes.
• La mayoría de los usuarios de PCs esperan que sus aplicaciones y
aún el sistema operativo se “caiga” o “congele” de vez en cuando.
• EL SOFTWARE NO SIEMPRE ES UTILIZABLE, ÚTIL, CONFIABLE O
DISPONIBLE.
• La falta de FLEXIBILIDAD también resulta evidente, como lo muestran
el problema del milenio y la adecuación de todos los sistemas viejos
(legacy) a procesos de negocios cambiantes.
• La COSTEABILIDAD se relaciona mucho con la confiabilidad y la
flexibilidad debido a que el costo de corregir y mantener es el más
alto costo asociado con el software
Analisis.ppt Pag. 4
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 5
Análisis y Diseño de Sistemas de Información Ingeniería de Software
• Promesas, promesas
• Cada nueva tecnología promete reducir los tiempos de desarrollo e
incrementar los promedios de éxito de los proyectos.
• Todos lo dudamos.
• Según Frederick P. Brooks (The mythical man-month, Addison-
Wesley 1975/1995), mientras más grande sea el proyecto, mayor será
la proporción del costo y tiempo del proyecto gastado en la
comunicación entre la gente del proyecto, porque cada persona tiene
más gente con quién comunicarse. Cuando un proyecto empieza a
quedarse atrás en el tiempo, el poner más gente por lo general falla.
• El Departamento de Defensa de EU, intentó resolver la crisis del
software y comisionó el diseño del lenguaje de programación ADA, el
cual se estandarizó en 1983, el cual soportaba lo mejor de los
conceptos de análisis, diseño y programación estructurados, la
modularidad y la encapsulación fueron conceptos clave en el diseño
del lenguaje, pero aún esta enorme inversión ha fracasado.
Analisis.ppt Pag. 6
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 7
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 8
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 9
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 10
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 11
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 12
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 13
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 14
Análisis y Diseño de Sistemas de Información Ingeniería de Software
• Arquitectura y componentes
• La arquitectura donde se desarrolla y aquella dónde se va a usar.
• En los 80s y principios de los 90s, la tecnología orientada a objetos
iba a ser la solución a la crisis en desarrollo de software.
• Componente
• Es una cosa que se puede reusar o reemplazar
• Desarrollo Basado en Componentes (CBD, Component Based
Development)
• Un módulo con propiedades que lo hacen reusable y reemplazable.
• ¿Qué determina cuando un módulo es reusable?
• Tiene una cohesión alta
• Acoplamiento bajo con el resto del sistema
• Interfase bien definida
• Abstracción encapsulada de una cosa bien entendida
• Si un módulo es reusable depende del contexto en que se desarrolló y en
el cual va a ser reusado.
• Ejemplo de un factor no técnico de reuso: Recompensar al programador
por el número de líneas que escriben.
• Los factores técnicos involucran decisiones de arquitectura y más alto
nivel.
Analisis.ppt Pag. 15
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 16
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 17
Análisis y Diseño de Sistemas de Información Ingeniería de Software
• Proceso de desarrollo
• Método tradicional para el desarrollo de Sistemas
Análisis
Diseño
Implementación
Pruebas
Mantenimiento
• Cada fase se realiza hasta que se completó la anterior. Supone que no se vuelve a entrar en las fases
terminadas.
• Administración de riesgos implica:
• 1.- Cada vez que se toma una decisión se tiene el riesgo de que sea incorrecta. Mientras más se
tarde en detectar un error más difícil es corregirlo. Evaluaciones frecuentes ayudan a corregir.
• 2.- Un riesgo mayor es que los desarrolladores malinterpreten los requerimientos. La
elaboración de prototipos permite reafirmarlos.
• Espiral de desarrollo:
Construcción Transición
Diseño Análisis
• Metodología Unificada.
• Gran cantidad de metodologías orientadas a objetos han salido a la luz y las de Grady Booch, James
Rumbaugh, Ivar Jacobson se unieron para formar el Lenguaje de Modelación Unificado (UML) y fue
adoptado por el Object Management Group (OMG) como el estándar para cuestiones orientadas a
objetos.
Analisis.ppt Pag. 18
Análisis y Diseño de Sistemas de Información Ingeniería de Software
Analisis.ppt Pag. 19
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
• Casos de Uso
• Es una colección de situaciones que ocurren cuando un actor usa un sistema para
completar un proceso. Normalmente un caso de uso es un proceso relativamente largo,
no un paso individual o transacción. Cada caso de uso necesita representar una tarea, o
una unidad coherente de funcionalidad, la cuál necesita ser soportada por el sistema.
• Una vez identificado los casos de uso se pueden crear diagramas de casos de uso para
colocar el caso de uso en contexto. Involucrando las fronteras del sistema para un
conjunto de casos de uso y definiendo las líneas de comunicación entre un actor
particular y el caso de uso.
Sist. de Información
de Biblioteca
Recursos para
Prestamo
Agregar
recursos
Bibliotecario Usuario
Regresar
Recursos
• En las etapas iniciales de desarrollo del proyecto, los diagramas de casos de uso
describen las actividades del mundo real y las motivaciones. Se puede afinar los
diagramas en etapas posteriores para reflejar las interfases de usuario y los detalles de
diseño.
• Cuando se tienen varios subsistemas es común dibujar la frontera del sistema, pero
generalmente se omite.
Analisis.ppt Pag. 20
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Analisis.ppt Pag. 21
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Analisis.ppt Pag. 22
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Analisis.ppt Pag. 23
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Analisis.ppt Pag. 24
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Reabastecer de
Acuerdo a las ventas
Analisis.ppt Pag. 26
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Analisis.ppt Pag. 27
Análisis y Diseño de Sistemas de Información Estructuras de Objetos
• ¿Qué es un objeto?
• Conceptualmente, un objeto es una cosa con la que se puede
interactuar: Se le pueden mandar varios mensajes y reaccionará. El
como se comporte dependerá del estado interno actual del objeto. Un
objeto tiene una identidad la cual lo distingue de todos los demás
objetos.
• El estado de un objeto se representa mediante los datos
almacenados en el mismo, los cuales son llamados atributos.
• El comportamiento de un objeto es lo que éste puede hacer y se
encuentra contenido en métodos, los cuáles se invocan enviándoles
mensajes.
• Representación UML de un objeto (Diagrama de Clase):
Empleado
- Nombre:String
- Sexo:Boolean
- Direccion:String
- RFC:String
+ TomarNombre:String
+ TomarRFC:String
+ TomarDireccion:String
Analisis.ppt Pag. 28
Análisis y Diseño de Sistemas de Información Estructuras de Objetos
Analisis.ppt Pag. 29
Análisis y Diseño de Sistemas de Información Estructuras de Objetos
• Clases
• Es un tipo (o plantilla) de objeto, el cual describe un conjunto de objetos que
tienen un rol equivalente en un sistema. Para crear una instancia de un objeto
se usa la clase como la base para determinar como formar el objeto.
• Atributos
• Son los datos que están encapsulados dentro del objeto y determinan su
estado. Algunos pueden cambiar (p.ej: un empleado puede cambiar de
dirección), otros son inmutables y deben conservar el mismo valor durante la
vida del objeto (p.ej: el RFC de un empleado)
• Métodos
• Son una implementación del comportamiento requerido por una clase, cada
instancia de objeto proveniente de la clase tendrá éstos métodos. Podrán ser
llamados por otros objetos o internamente.
• Mensajes
• Los objetos responden o actúan en función a los mensajes que reciben y el
estado actual de sus atributos. Cuando se manda un mensaje a un objeto se le
esta ordenando que ejecute un método y generalmente se desconoce el
código que ejecutará porque está encapsulado.
• Interfases
• Es el medio fundamental de comunicación entre los objetos. La interfase
describe completamente cómo van a interactuar con la clase los usuarios de
la clase. La interfase pública de un objeto define cuáles mensajes aceptará sin
importar de donde provengan.
Analisis.ppt Pag. 30
Análisis y Diseño de Sistemas de Información Estructuras de Objetos
• Herencia
• Permite a una clase heredar los atributos y métodos de otra clase, facilitando de
esta forma la reutilización del código y permitiendo crear nuevas clases mediante
la abstracción de los atributos y métodos comunes.
Mamíferos
Superclase
- colorOjos: int
+ TomarColorOjos: int
Perro gato
-frecuenciaLadrido: int -frecuenciaMaullido:int Subclases
+ Ladrar: int + Maullar: int
• Las clases Perro y Gato heredan de la clase Mamíferos, esto significa que la clase
Perro tiene los siguientes atributos:
• colorOjos Heredada de la clase Mamíferos
• frecuenciaLadrido Definida solo para la clase Perro
• y los siguientes métodos:
• tomarColorOjos Heredada de la clase Mamíferos
• Ladrar Definida solo para la clase Perro
Analisis.ppt Pag. 31
Análisis y Diseño de Sistemas de Información Estructuras de Objetos
• Abstracción
• Quitar las propiedades y acciones de un objeto para dejar sólo aquellas que
sean necesarias.
• Polimorfismo
• Significa tener muchas formas. En lenguajes de programación significa que
una entidad puede tener uno de muchos tipos. En orientación a objetos una
variable polimórfica puede referirse a diferentes objetos en diferentes tiempos.
Las subclases pueden hacer caso omiso de los métodos o atributos de las
superclases y definir los suyos propios.
• La asignación dinámica permitirá que al mandar un mensaje a un objeto se
asignará dinámicamente dependiendo del código del método que haya
definido la instancia de dicho objeto que puede ser uno propio o heredado.
• Encapsulamiento
• Se oculta la funcionalidad de los objetos, evitando que otros objetos o el
mundo exterior puedan ver sus operaciones internas.
• Asociaciones
• Un objeto puede estar relacionado con uno o más objetos
• Composiciones
• La agregación de objetos permite definir composiciones, en las que cada
componente se considera como tal sólo como parte del objeto compuesto.
Analisis.ppt Pag. 32
Análisis y Diseño de Sistemas de Información Estructuras de Objetos
• Diagramas
• Para describir el diseño de un sistema, el lenguaje que usemos debe estar
basado en diagramas, porque la experiencia nos ha mostrado que es así como
pensamos en los sistemas.
• No es el diseño, sino una representación de un modelo de el diseño, que
captura un aspecto de el diseño de una forma que puede ser discutida.
• Los modelos de diagramas a considerar son:
• El modelo de casos de uso que describe el sistema requerido desde el punto de
vista de los usuarios.
• El modelo estático que describe los elementos de el sistema y sus relaciones.
• El modelo dinámico que describe el comportamiento del sistema a través del
tiempo.
• podremos tomar una:
• Vista lógica nos permitirá alcanzar los requerimientos funcionales. Cuáles partes
van juntas? Cuáles son las clases y sus relaciones?
• Vista de proceso ayuda a lograr los requerimientos no-funcionales, como el
desempeño y la disponibilidad. Cuáles necesidades de control hay? Qué
actividades pueden ser concurrentes? Qué sincronización debe haber?
• Vista de desarrollo ayuda a administrar el proyecto. Cuál parte hará cada elemento
del equipo de gente? Que partes pueden reusarse?
• Vista física ayuda a alcanzar los requerimientos no-funcionales, haciendo una vista
más concreta que la de proceso.Cuales partes correrán en la misma computadora?
Analisis.ppt Pag. 33
Análisis y Diseño de Sistemas de Información Estructuras de Objetos
• Diagramas UML
• La relación existente entre los diversos diagramas de UML se
muestra a continuación:
Diagrama
Diagramadede
Clases
Clases
Diagrama
Diagramadede
Casos
Casosde
de Diagrama
Diagramade
de Distribución
Distribución
Uso
Uso Secuencias
Secuencias
CODIGO
CODIGO
Diagrama
Diagramade
de
Estados Diagrama
Diagramade
de
Diagrama Estados
Diagramadede Componentes
Componentes
Colaboración
Colaboración
Diagrama
Diagramadede
Actividad
Actividad
Analisis.ppt Pag. 34
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
• Objetos y Clases
• Identificar las clases que deben existir en nuestro sistema, es la parte
mas grande del trabajo de diseñar sistemas orientados a objetos.
• Construir rápidamente y lo más barato posible el sistema que alcance
nuestros requerimientos.
• Construir un sistema que sea fácil de mantener y adaptar para los
requerimientos futuros.
• Cada pieza de comportamiento requerida por el sistema deberá ser
proporcionada de una manera sensible, por los objetos de las clases
que elijamos.
• Un buen modelo de clases consiste de clases de los objetos
principales, los cuales no dependen de la funcionalidad particular
requerida actualmente
• Una técnica es la identificación de sustantivos. Descarte los
candidatos que sean inapropiados por alguna razón, renombrando
las clases restantes si es necesario
• Pueden descartar candidatos por: redundancia, vaguedad, son un
evento o una operación, son meta-lenguaje, están fuera del alcance
del sistema, son un atributo.
Analisis.ppt Pag. 35
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Analisis.ppt Pag. 36
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Nombre
• ejemplo: Atributos ...
Operaciones ...
Analisis.ppt Pag. 37
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Analisis.ppt Pag. 38
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Usa
Autor Computadora
Analisis.ppt Pag. 39
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
*
Nodo
conecta
*
Un nodo se conecta a muchos nodos y estos a su vez se conectan
con varios mas. (en una red de cómputo
Analisis.ppt Pag. 40
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Póliza de
Seguros
0..1
Refiere a Está expresado
1 en un
esposa
Persona
esposo
casado con
Analisis.ppt Pag. 41
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Analisis.ppt Pag. 42
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
• Tipos de asociaciones
• Asociación calificada (Qualified association). Representa la información
de identidad y reduce la multiplicidad de uno a muchos por una de uno a
uno.
renglón:{1,2,3} 1 1
Tablero Cuadro
columna:{1,2,3}
Analisis.ppt Pag. 43
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
• Tipos de asociaciones
• Clase de Asociación. Una clase puede estar unida a una asociación. Se
usa para agregar información extra sobre un enlace; por ejemplo, el
tiempo en que el link fue creado. Cada enlace está asociado a un objeto de
la clase de asociación.
Participa en
Jugador Equipo
Persona
Analisis.ppt Pag. 44
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
{O}
1 1 1 1
Comida Ensalada PlatoFuerte Postre
1 9
Tablero Cuadros
Analisis.ppt Pag. 45
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
Vehículo
Analisis.ppt Pag. 46
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
• Interfaces y realizaciones
• Una interfaz es un conjunto de operaciones que especifica cierto
aspecto de la funcionalidad de una clase, y es un conjunto de
operaciones que una clase presenta a otras. Se usa el símbolo de
clase pero sin atributos, solamente con las operaciones:
Teclado
marca
cantidadDeteclas
«interfaz»
Ctrl() MaquinaDeEscribir
Alt()
RePag() Teclazo()
AvPag()
...
Analisis.ppt Pag. 47
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
• Diagrama de objetos
• Un diagrama de objetos en UML usa la misma notación que los diagramas
de clases, ya que los objetos solo son instancias de la misma clase.
Autor Computadora
Usa
Clases:
nombre: String nombre: String
0..* 1..*
edad: Integer memoria: Integer
Analisis.ppt Pag. 48
Análisis y Diseño de Sistemas de Información Diagramas Estáticos
• Diagrama de Clases
• Modelo Conceptual de Punto de Venta
Registra-venta-de
Descritas-por
1
Analisis.ppt Pag. 49
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
• Diagramas de estados
• Presenta los estados en los que puede encontrarse un objeto junto
con las transiciones entre los estados, y muestra los puntos inicial y
final de una secuencia de cambios de estado.
• Los símbolos UML en un diagrama de estados son:
Estado
Nombre
Inicio Fin
Variables de
estado Transición
Transición
Evento que Actividades
dispara
Analisis.ppt Pag. 50
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Hacer/Arrancar
Hacer/Arrancar
[lapso transcurrido] Teclazo o movimiento
del ratón
Protector
De
pantalla
Analisis.ppt Pag. 51
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Operación
A la espera Registro de Representación
de acción una acción de la acción
del usuario del usuario del usuario
[lapso transcurrido]
Verificar el
Actualizar
conómetro
despliegue
del sistema
Analisis.ppt Pag. 52
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
[lapso transcurrido]
Verificar el
Actualizar
conómetro
despliegue
del sistema
Teclazo
[lapso transcurrido] o movimiento
del ratón
Analisis.ppt Pag. 53
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Analisis.ppt Pag. 54
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
• Diagramas de actividades
• Describen como se coordinan las actividades, muestran como puede
ser implementada una operación que debe realizar muchas tareas
diferentes y se desea mostrar cuales son las dependencias
esenciales entre ellas.
• Elementos de un diagrama de actividades:
• La actividad se muestra como una caja con nombre con las esquinas muy
redondeadas, representa cuando la actividad ha terminado
Actividad
Actividad 1 Actividad 2
Analisis.ppt Pag. 55
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Fin de la
jornada
Baño Descanso
Analisis.ppt Pag. 56
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Oprimir numero
Fin de la de canal
jornada
Cambiar(canal) Cambiar(canal)
Oprimir numero
de canal
Analisis.ppt Pag. 57
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Analisis.ppt Pag. 58
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
miembro bibliotecario
[prestatario]
Encontrar libro
en gaveta
[regresador]
Esperar en [regresando]
la fila
[obteniendo
prestado]
Registrar el Poner el libro de
regreso Regreso en gaveta
Registrar el
préstamo
Preparar para
el siguiente miembro
Analisis.ppt Pag. 59
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Analisis.ppt Pag. 60
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
• Diagrama de secuencias.
• Muestra la forma en que los objetos se comunican entre sí al
transcurrir el tiempo. Constan de objetos y representando en una
línea vertical el tiempo, se indican las operaciones que ejecuta el
objeto o activación se representan mediante un rectángulo cuya
altura va en relación a la duración de la operación.
• Los mensajes van de un objeto a otro se representan con líneas.
Pueden ser simples (transfieren control), sincrónicos (esperan
respuesta) o asincrónicos (no espera respuesta)
:Objeto 1 :Objeto 2
Analisis.ppt Pag. 61
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Analisis.ppt Pag. 62
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
[necesitaReorden]
Regreso nuevo
Un Artículo
de reorden
Creación
[hayExistencia]
nuevo()
Un Artículo
para entrega
Analisis.ppt Pag. 63
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Analisis.ppt Pag. 64
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Analisis.ppt Pag. 65
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
bien
se suprimen
las demás
¿todo transacciones
terminado?
bien
el objeto
se borra
¿todo a sí mismo
es Válido terminado?
Autodelegación
Analisis.ppt Pag. 66
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Analisis.ppt Pag. 67
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
• Diagramas de colaboraciones.
• Muestra los objetos,las relaciones entre ellos, los mensajes que se
envían los objetos entre sí.
• El mensaje se representa como una flecha cerca de la línea de asociación
entre dos objetos. Esta flecha apunta al objeto receptor. El tipo de
mensaje se mostrará en una etiqueta cerca de la flecha.
• El mensaje le indicará al objeto receptor que ejecute una de sus
operaciones.
• Un diagrama de secuencias puede ser convertido en uno de
colaboraciones y viceversa.
• Se agregará una cifra al mensaje para indicar la secuencia propia del
mensaje.
:Nombre1
1:Agregar()
3:Actualizar()
:Nombre2
:Nombre3 2:Modificar()
Analisis.ppt Pag. 68
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
:GUI 1:notificar(tecleo)
6:respuesta()
3:actualizar(tecleo) :Sistema operativo
:Monitor
2:actualizar(tecleo)
5:mostrar(tecleo) :CPU
4:notificar(tecleo)
:Tarjeta de video
Analisis.ppt Pag. 69
Análisis y Diseño de Sistemas de Información Diagramas Dinámicos
Analisis.ppt Pag. 70
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
• Diagramas de componentes
• Un componente es la implementación de un subsistema, la cual da las
especificaciones (en términos de casos de uso) y una estructura de clases que lleva a
cabo la especificación. Su representación es:
calculadora.java
• Hay diferentes tipos de componentes y cada uno con diferentes tipos de dependencia
, Clasificándolos en relación con el proceso de compilación un componente podría
ser:
• Código fuente, el cual depende de que otros componentes estén disponibles al momento de
compilación.
• Código objeto binario, (biblioteca de clases) que depende de cualquier código objeto al cuál
se ligara desde un programa ejecutable.
• Una aplicación ejecutable, la cuál puede depender de otros programas ejecutables al tiempo
de ejecución.
• Los detalles dependen del lenguaje de programación usado, se pueden usar
estereotipos como «compilar» ó «ligar», igualmente se pueden usar estereotipos para
diferenciar los diferentes tipos de componentes, por ejemplo: «archivo» , «biblioteca»
, «ejecutable» , «tabla», «documento»
Analisis.ppt Pag. 71
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
Analisis.ppt Pag. 72
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
«compilar»
MiAplicación
«ejecutable»
Analisis.ppt Pag. 73
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
ProcesadorTextos.exe
Clases:
ProcesadorTextos
VerificadorOrtografico
ContadorPalabras
ProcesadorTextos.exe
Analisis.ppt Pag. 74
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
«Interfaz»
ElementoDeEscucha AWTEventMulticaster
cambioAlEstadoDelElemento()
Analisis.ppt Pag. 75
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
Animacion.htm
«ActiveX»
VBScript
DisposicionAnimacion.alx
«ActiveX»
BotonEjecutar
«ActiveX»
ImagenEsfera «ActiveX»
BotonDetener
«ActiveX»
CronometroEsfera «ActiveX»
BotonReinicar
Esfera.gif
«ActiveX» «ActiveX»
CuadroCombCronometro CuadroCombDistancia
Analisis.ppt Pag. 76
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
• Diagramas de distribución.
• Los diagramas de distribución muestran la disposición física de los
distintos nodos que componen un sistema y el reparto de los
componentes sobre dichos nodos.
• Un nodo representa todo tipo de equipo de cómputo y se representa
por un cubo:
Nodo
Analisis.ppt Pag. 77
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
• Diagramas de distribución.
• Los nodos se interconectan mediante soportes bidireccionales (en
principio) que puede a su vez estereotiparse.
• Se pueden mostrar los componentes en relaciones de dependencia
con un nodo:
Servidor
Directorio telefónico
corporativo
Programa de Resultado de
búsqueda la búsqueda
Analisis.ppt Pag. 78
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
Servidor
Directorio telefónico
corporativo
Programa de Resultado de
búsqueda la búsqueda
«Comunicación»
Cliente
Programa de
Presentación
Analisis.ppt Pag. 79
Análisis y Diseño de Sistemas de Información Diagramas de Implementación
PC PC
Pentium 300Mhz Pentium 300Mhz
Windows 95 Windows 95
«Dispositivo» «Dispositivo»
«Dispositivo» «Dispositivo»
Modem ESS 336V Monitor
Conector T Conector T
PackardBell
Analisis.ppt Pag. 80
Análisis y Diseño de Sistemas de Información Caso de Estudio (CS4)
Analisis.ppt Pag. 81
Análisis y Diseño de Sistemas de Información Caso de Estudio (CS4)
Analisis.ppt Pag. 82
Análisis y Diseño de Sistemas de Información Caso de Estudio (CS4)
Producir el
manual del curso
OEP Adjunto CS4
Inscribir en los
Módulos
eCS4 Director de estudios CS4
Analisis.ppt Pag. 83
Análisis y Diseño de Sistemas de Información Caso de Estudio (CS4)
Analisis.ppt Pag. 84
Análisis y Diseño de Sistemas de Información Caso de Estudio (CS4)
Director de
Estudios dirige
1..*
1 1..*
0..* Estudiante
Cursos Grado
1
esta en
0..*
Estudiante Estudiante
otros años 4to año
Analisis.ppt Pag. 85
Análisis y Diseño de Sistemas de Información Caso de Estudio (CS4)
Asignar
Adjuntos
Actualizar registro
de módulo
Analisis.ppt Pag. 86
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
Entra el cliente
[Prefiere el bar]
[Lista de espera] Espera en el bar
Analisis.ppt Pag. 87
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
Analisis.ppt Pag. 88
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
Llamar al asistente
Ir por las bebidas
Servir Pan y agua
Traer bebida
Modelado en
un diagrama
Traer entremes Preparar platillo Por separado
Analisis.ppt Pag. 89
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
Analisis.ppt Pag. 90
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
[Desea postre]
Traer el menú
de postres
Ingerir postres
[Guardar abrigo/sombrero] Liquidar cuenta
Recoger abrigo Dejar propina
Salir
o sombrero
Analisis.ppt Pag. 91
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
• Preparación de platillos
• ¿Cómo se coordina el chef para tener los platillos a tiempo? R: La gente en una mesa
casi siempre termina sus entremeses, en momentos distintos. Entre el mesero y el chef
se coordinan para traerles a todos los platos fuertes al mismo tiempo. El chef recibe la
comanda y empieza a preparar los entremeses y el plato fuerte, cuando esta terminado el
entremés, el mesero va a la cocina, los toma y los lleva a la mesa.
• ¿Cómo se entera el mesero que ya están listos los entremeses? R: El mesero va a la
cocina de vez en cuando. El chef luego de dar el entremés al mesero, espera que este le
avise cuando la mayoría de los comensales ya casi ha terminado con sus entremeses
para poderle dar el toque final a cada plato fuerte. El mesero va a la cocina, y le avisa al
chef que ya casi están listos para el plato fuerte, el chef termina su preparación. El
mesero los toma y los lleva a la mesa
Analisis.ppt Pag. 92
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
• Preparación de platillos
Recibir comanda
Iniciar la preparación
Preparar entremeses
Del plato fuerte
Coordinar la preparación
Llevar entremeses
de otros pedidos
Finaliza la preparación
de plato fuete
Tomar el plato
fuerte
Analisis.ppt Pag. 93
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
• Clases y asociaciones
• El cliente se asocia con una gran cantidad de clases, como muestran las
asociaciones a continuación:
Postre Cuenta Propina Reservación
1 1 1
Ingiere Liquida 1
Deja
1 1 1
1
Hace
1..*
Es atendido por 1
1
Cliente Mesero
Da a guardar Sombrero
1
0..*
1 1 1 1 1
Da a guardar 1 Encargado del
Guardarropa
Elige del 0..*
Abrigo
Ingiere
Hace
1
1 1 Elige del
1
Orden
Menú Alimento Menú del
postre
Analisis.ppt Pag. 94
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
Analisis.ppt Pag. 95
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
Analisis.ppt Pag. 96
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
«Dispositivo»
Computadora
palmtop
Inalámbrico
«Dispositivo»
Red
«Dispositivo» «Dispositivo»
PC de la PC del
cocina gerente
Analisis.ppt Pag. 97
Análisis y Diseño de Sistemas de Información Caso de Estudio (Restaurante)
• Casos de uso
• El paquete mesero
Mesero
Totalizar
Una cuenta
Transmitir una
Orden al bar
Tomar
Tomar una orden Obtener un acuse
una orden
Incluir De bebida De recibo
Analisis.ppt Pag. 98