You are on page 1of 46

Profesor : Omar Rossales.

omargrm@gmail.com

Curso Ingeniera de
Software I
UML
UPT R!U
"ederico #rito "igueroa
2
Enfoque Metodolgico de Desarrollo
de Software
Modelo por
componentes
Modelo funcional
3
Ciclo de Vida del Desarrollo
Ciclo de Vida del Desarrollo

Iterativo

Proceso iterativo (mini-proectos!

Incremental (versiones!

"asado en componentes
Modelo de
Anlisis&Diseo
Modelo de
Implementacin
realizado por
Implementado por
Requerimientos
Anlisis & Diseo
Construccin
Pruebas
Modelo de
Caso de Uso
erificado por
Modelo de
Pruebas
Modelo de
Anlisis&Diseo
Modelo de
Implementacin
realizado por
Implementado por
Requerimientos
Anlisis & Diseo
Construccin
Pruebas
Modelo de
Caso de Uso
erificado por
Modelo de
Pruebas
4
#M$ (#nified Modeling $anguage!
$enguage #nificado de Modelado

#M$ es la creacin de %rad "ooc&' (ames )um*aug&


e Ivar (aco*son ()ational Software Corporation!

Permite a los dise+adores de sistemas de software


capturar ideas en una forma convencional f,cil de
comprender para comunicarlas a otras personas

#M$ est, compuesto por diversos elementos gr,ficos


para conformar diagramas
#M$
6
Modelo por Componentes
Modelo por Componentes
Use Case
Diagrams
Use Case
Diagrams
Diagramas de
Casos de Uso
Scenario
Diagrams
Scenario
Diagrams
Diagramas de
Colaboracin
State
Diagrams
State
Diagrams
Diagramas de
Componentes
Component
Diagrams
Component
Diagrams
Diagramas de
Distribucin
State
Diagrams
State
Diagrams
Diagramas de
Objetos
Scenario
Diagrams
Scenario
Diagrams
Diagramas de
Estados
Use Case
Diagrams
Use Case
Diagrams
Diagramas de
Secuencia
State
Diagrams
State
Diagrams
Diagramas de
Clases
Diagramas de
Actividad
Modelo
Use Case
Diagrams
Use Case
Diagrams
Diagramas de
Casos de Uso
Scenario
Diagrams
Scenario
Diagrams
Diagramas de
Colaboracin
State
Diagrams
State
Diagrams
Diagramas de
Componentes
Component
Diagrams
Component
Diagrams
Diagramas de
Distribucin
State
Diagrams
State
Diagrams
Diagramas de
Objetos
Scenario
Diagrams
Scenario
Diagrams
Diagramas de
Estados
Use Case
Diagrams
Use Case
Diagrams
Diagramas de
Secuencia
State
Diagrams
State
Diagrams
Diagramas de
Clases
State
Diagrams
State
Diagrams
Diagramas de
Clases
Diagramas de
Actividad
Modelo
#nified
Modeling
$anguage
(#M$!
7

Diagrama de Casos de #so

Diagrama de Clases

Diagrama de -*.etos

Diagramas de Comportamiento

Diagrama de Estados

Diagrama de /ctividad

Diagramas de Interaccin

Diagrama de Secuencia

Diagrama de Cola*oracin

Diagramas de implementacin

Diagrama de Componentes

Diagrama de Despliegue
Modelo por Componentes
Modelo por Componentes
8
Diagrama de Casos de #so
Diagrama de Casos de #so

#n caso de uso es una descripcin de las acciones de


un sistema desde el punto de vista del usuario0

Se utili1a para o*tener los requerimientos del sistema


desde el punto de vista del usuario
#suario del Ca.ero
Sacando Dinero
9
Diagrama de Casos de #so
Diagrama de Casos de #so
10
Diagrama de Casos de #so
Diagrama de Casos de #so

E.ercicios en clases2

Especificar 3(ugar $oto4


11

$os casos de uso se definen para satisfacer los


o*.etivos de usuario de actores principales0 El
procedimiento a seguir es2

Elegir los l5mites del sistema

Identificar los actores principales

Para cada uno' identificar sus o*.etivos

Definir los casos de uso que satisfagan los o*.etivos de


usuario0
Diagrama de Casos de #so
Diagrama de Casos de #so
12

#M$ proporciona una notacin para los diagramas de


caso de uso para ilustrar los nom*res de los casos de
uso' sus actores sus relaciones

#M$ usa una elipse para representar un caso de uso'


por e.emplo2
Diagrama de Casos de #so
Diagrama de Casos de #so
)eci*iendo Dinero
Inscri*iendo )amo
13

6ipos de /ctores2

Principal2 tiene o*.etivos que se satisfacen mediante el uso de


los servicios del Sistema

de /poo2 proporciona un servicio al Sistema (e.02 servicio de


autori1acin de pagos!

Pasivo2 interesado en el comportamiento del caso de uso' pero


que no es principal o de apoo (e.02 alguna superintendencia!0
Diagrama de Casos de #so
Diagrama de Casos de #so
14

$os actores que representan usuarios &umanos suelen


representarse por el siguiente tipo de s5m*olo
Diagrama de Casos de #so
Diagrama de Casos de #so
Secretaria
/lumno
15
Diagrama de Casos de #so
Diagrama de Casos de #so
16

)elaciones entre los Casos de #so2

%enerali1acin2 significa que el caso de uso &i.o &ereda el comportamiento el


significado del caso de uso padre' el &i.o puede agregar o redefinir el
comportamiento del padre0 Se representa como una l5nea continua con una punta
de flec&a vac5a0
Diagrama de Casos de #so
Diagrama de Casos de #so
17

)elaciones entre los Casos de #so2

Inclusin2 significa que un caso de uso *ase incorpora e7pl5citamente el


comportamiento de otro caso de uso en el lugar especificado en el caso *ase0
/qu5 el caso de uso *ase toma el comportamiento del caso de uso proveedor0
Se representa como una dependencia' usando la pala*ra include0
Diagrama de Casos de #so
Diagrama de Casos de #so
18

)elaciones entre los Casos de #so2

E7tensin2 ocurre cuando un caso de uso *ase incorpora impl5citamente el


comportamiento de otro caso de uso en el lugar especificado indirectamente
por el caso de uso que e7tiende al *ase0 Se representa como una dependencia'
usando la pala*ra e7tend0
Diagrama de Casos de #so
Diagrama de Casos de #so
19
)esumen
)esumen
20
)esumen
)esumen
21
Cliente
C#-89 Ingresar
-rden Internet
E.emplo2 Especificacin :arrativa
E.emplo2 Especificacin :arrativa
casos de usos
casos de usos
22

; riting Effective #ses Cases0 /listair Coc<*urn0 /ddison-;esle0 =888

/prendiendo #M$ en => &oras0 (osep& Sc&muller0 Prentice ?all


"i*liograf5a
"i*liograf5a
23
Diagrama de Clases

El Diagrama de Clases es el diagrama principal


para el anlisis y diseo

Un diagrama de clases presenta las clases del


sistema con sus relaciones estructurales y de
herencia

La definicin de clase incluye definiciones para


atributos y operaciones

El modelo de casos de uso aporta informacin


para establecer las clases, objetos, atributos y
operaciones
24
E.emplos (Clase Visi*ilidad!
Alumno
DNI : char[10]
nmero_exp : int
nombre : char[50]
alta()
poner_nota(asinatura : char !" a#o : int" nota : $loat)
matricular(cursos : asinatura" a#o : int)
listar_expe%iente()
25
@ E.emplos (/sociacin!
&ro$esor Departamento
1 0''1
%irector
1
%irie
0''1
26
@ E.emplos (%enerali1acin!
(raba)a%or
Directi*o A%ministrati*o +brero
, %is)unta" completa -
27
@ E.emplos
/vin militar
/vin comercial
/vin de carga /vin de pasa.eros
Motor Vendedor de *oletos
/vin
900>
9
900>
9
Piloto
)eserva
n
9
n
9
$5nea aArea
Vuelo
n 9 n 9
900=
n
900=
n
n 9 n 9
9
n
9
n
B dis.unta' completa C
B dis.unta' completa C
28
Diagrama de Secuencia

El Diagrama de Clases y de Objetos representan


informacin esttica, pero en realidad en un sistema
funcional los objetos interactan entre s!

El diagrama de secuencias muestra esta interaccin


29
/ne7os
30
E.emplos
Una Universidad est compuesta por Departamentos, cada uno de los
cuales se encuentra organizado en reas de Conocimiento. Cada profesor
est asignado a un rea de Conocimiento y puede impartir varias
asignaturas asignadas al Departamento. Cada asignatura debe tener un
profesor responsable de la misma. Cada Departamento tiene un Director,
que debe ser un profesor de dicho Departamento. Los alumnos miembros
de la Universidad asisten a las clases de las asignaturas en las que estn
matriculados, pero para que una asignatura se imparta debe haber al menos
diez alumnos matriculados en ella.
31
E.emplos
Una Universidad est compuesta por Departamentos, cada uno de los
cuales se encuentra organizado en reas de Conocimiento. Cada profesor
est asignado a un rea de Conocimiento y puede impartir varias
asignaturas asignadas al Departamento. Cada asignatura debe tener un
profesor responsable de la misma. Cada Departamento tiene un Director,
que debe ser un profesor de dicho Departamento. Los alumnos miembros
de la Universidad asisten a las clases de las asignaturas en las que estn
matriculados, pero para que una asignatura se imparta debe haber al menos
diez alumnos matriculados en ella.
32
E.emplos
33
E.ercicios (Diagrama de Clases!
/#DI-: es una empresa dedicada al arriendo de CD-)-Ms de
audio0 Dic&a empresa tiene un local de atencin al pD*lico donde
est,n e7puestas las car,tulas de los CDs m,s demandados las
Dltimas novedades' aunque tam*iAn e7isten listados en papel de
todos los t5tulos que se podr5an alquilar0 Cuando un cliente
solicita un t5tulo' se comprue*an si &a e.emplares li*res si no
&a pro*lemas por e.emplares no devueltos se reali1a el alquiler'
quedando constancia de la fec&a de alquiler la fec&a m,7ima de
entregaE de forma que cuando el cliente devuelva el e.emplar se
podr, compro*ar si se le tiene que imponer una multa0 Cada
cliente puede solicitar una relacin de los CDs que &a alquilado
previamente0
Cada e.emplar de cada t5tulo de*e quedar plenamente
identificado (incluendo la informacin necesaria para su r,pida
locali1acin f5sica!
34
E.ercicios (Diagrama de Clases!
#na agencia matrimonial que se dedica a empare.ar personas de
diferente se7o' quiere informati1ar su gestin de manera que se
tiene una *ase de datos de personas que quieren encontrar
pare.a' con sus datos personales sus preferencias0 Se lleva un
&istrico con las citas concertadas entre los clientes' con control
de fec&a' lugar un &istrico de los matrimonios resultados de
los empare.amientos reali1ados0 )eali1ar un diagrama de clases
que represente los o*.etos del dominio del pro*lema sus
relaciones0
35
E.ercicios (Diagrama de Clases!
#n cliente puede reali1ar varios pedidos en un per5odo de tiempo0
Cada pedido est, formado por varias l5neas de pedido' cada una
de las cuales se refiere a un solo producto0 Se diferencian dos
tipos de clientes' el cliente personal el cliente corporativo0 $a
diferencia entre los dos tipos de clientes es que el cliente
personal pagar, mediante una tar.eta de crAdito' mientras el
cliente corporativo tiene un contrato con la empresa un l5mite
de crAdito0 /dem,s' los vendedores de la empresa se encargan
de atender las peticiones de los clientes corporativos' de forma
que cada vendedor se &ace cargo de una cartera de clientes
corporativos' a cada cliente corporativo slo le atiende un
vendedor
36
E.ercicios (Diagrama de Clases!
#n centro de instalaciones deportivas quiere &acer una
aplicacin de reservas0 En el centro e7isten instalaciones
deportivas' (piscinas' gimnasios' frontones' etc0!0 El centro en
cuestin tiene socios' de los cuales se almacenan su direccin'
ciudad' provincia' telAfono' nom*re cuota0 E7isten una serie de
art5culos que se pueden alquilar .unto con las reservas' (*alones'
redes' raquetas' etc0!0 Cada instalacin es reservada por un socio
en una fec&a dada desde una &ora de inicio &asta una &ora de fin0
Cada reserva puede tener asociada uno o varios art5culos
deportivos que se alquilan a parte0 Por e.emplo si o quiero &acer
una reserva para .ugar a volei*ol tengo que reservar una
instalacin polideportivo m,s un art5culo red' m,s un art5culo
*aln0
37
E.ercicios (Casos de #sos!
!esti$n de %ro&ectos de una oficina
$a Dnica persona que controla los proectos es el administrador
de proectos' cuas funciones son las siguientes2

Puede agregar' eliminar actuali1ar un proecto' pero para


eliminar actuali1ar es necesario encontrar el proecto en
cuestin0

/ la &ora de actuali1ar un proecto se pueden dar dos


situaciones2

Cam*iar la informacin so*re las tareas del proecto0

Cam*iar los recursos asociados al proecto0

Para informar a todos los miem*ros del equipo so*re los


avances en el proecto se procede emitiendo un documento'
que se env5a v5a e-mail o que se pu*lica en un sitio we*
conocido por todos0
38
E.ercicios (Casos de #sos!
#n taller mec,nico en el cual se introducen los autos en un
sistema que permite detectar los pro*lemas que tiene el auto0
Con la auda de los operadores con los reportes que da el
sistema del auto' el mec,nico &ar, los arreglos pertinentes'
mientras el gerente puede actuali1ar los costos co*rarle al
usuario0
39
E.ercicios (Casos de #sos!
Se desea informati1ar una empresa encargada de proectar pel5culas de
cine0 Para ello' los espectadores podr,n reservar las entradas desde
una serie de terminales dedicadas para este fin' consultar la posicin
de las diferentes localidades que vaan quedando li*res para una
determinada sesin de cine0
Para comprar el tic<et de cine' el espectador ir, a la taquilla' el
taquillero reali1ar, la venta de la localidad' para ello podr, consultar
tam*iAn las posiciones de las diferentes localidades que vaan
quedando li*res0 Por otro lado tenemos tam*iAn al responsa*le de
administracin0 Este puede reali1ar consultas estad5sticas referentes a
las pel5culas m,s solicitadas0 6anto la venta de tic<ets' como la
consulta de localidades li*res' como las reservas' o las consultas
estad5sticas' se reali1ar,n accediendo a una *ase de datos de pel5culas
en cartelera' tic<ets vendidos salas disponi*les0
El resultado de las estad5sticas se calcular,n utili1ando un programa de
&o.a de c,lculo que permita la reali1acin de diagramas0
40
E.ercicios (Casos de #sos!
#na empresa encargada de vender productos' desea de informati1arla'
para ello desea que el sistema realice las siguientes funciones2
El sistema &a de permitir que los Vendedores introdu1can los productos
que venden' .unto con sus precios en el sistema0 Esta informacin se
emplear, para construir listados estad5sticos' para que el Director
pueda consultarla0 Cada mes' se generar, un listado especial con
agrupaciones de ventas por
meses0 El sistema' adem,s' &a de permitir al (efe de )ecursos
?umanos' dar de alta *orrar a los diferentes vendedores que se
a+adan o de.en la empresa0 En cualquier momento' tam*iAn tendr, la
opcin de consultarla0 Para la reali1acin de estas tres funcionalidades'
se dispondr, de un sistema gestor de *ase de datos' encargado de
traducir las peticiones del (efe de recursos ?umanos0 El Director'
tam*iAn podr, consultar en todo momento toda la informacin referente
al personal de la empresa0
41
E.ercicios )esuelto (Casos de #sos!
$a empresa de )adiota7is 36an r,pido como se pueda4 &a solicitado el desarrollo de un sistema
computacional que le apoe en sus procesos claves0 El resultado de las reuniones con los
diferentes usuarios arro.a como resultado los siguientes requerimientos2
?a tres tipos de usuarios2 /dministrativos' C&oferes' el %erente0
$os /dministrativos de la empresa de )adiota7is podr,n2
90- Ingresar nuevos clientes
=0- Ingresar reservas de via.es indicando el cliente' el c&ofer solicitado' la direccin de origen' de
destino la &ora de salida0 Se &a solicitado que si al ingresar una reserva' el cliente en
cuestin no e7iste en el sistema se pueda ingresarlo directamente0 6am*iAn &a solicitado
que el sistema *rinde la opcin de confirmar inmediatamente la reserva que se est,
ingresando0
F0- Confirmar o Cancelar las reservas a ingresadas0
$os C&oferes de la empresa de )adiota7is podr,n consultar las reservas que tienen asignadas para el
d5a de la fec&a0
El gerente podr, reali1ar todas las operaciones que pueden reali1ar los /dministrativos los c&oferes0
/dem,s podr,n Ingresar nuevos c&oferes al sistema liquidar las comisiones de los c&oferes
mensualmente0
$os )epresentantes de la empresa aclararon que era desea*le que el sistema avise a los
/dministrativos cuando se acerca el momento de reali1ar un via.e' en funcin de las reservas'
con F8 minutos de anticipacin para poder reali1ar la confirmacin del via.e con el cliente0
42
43
E.ercicios )esuelto (Casos de #sos!
Especificar Caso de #so2 Ingresando )eserva
44
E.ercicios )esuelto
Diagrama de Secuencias
45
E.ercicios )esuelto
Diagrama de Secuencias
46
E.ercicios )esuelto
Diagrama de Secuencias

You might also like