20131ads1-04---cerrando paréntesis con el modelo de análisis.pdf
TRANSCRIPT
-
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
1/54
UniversidadPeruanaUnin
Cerrando parntesis con el (Modelo de
Anlisis)
2013 Angel Sullon | @asullom
Curso: Anlisis y Diseo I
Unidad 1 - Entrenamiento en Gestin de Requisitos y Diseo de Sistemas
s u b m i tc o n s u l t i n g
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
2/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Objetivos
Conoce las actividades y los diagramas delmodelo de casos de uso y de sus modelos de
anlisis
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
3/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Agenda
Introduccin Modelo de Anlisis con RUP
Diagrama de casos de uso (del sistema)
Diagrama de clases (de anlisis)
Diagrama de secuencia (de anlisis)
Diagrama de entidades
Diagrama de estados
Un adelanto al diseo (es lo que ms importa)
Ambiente de diseo distribuido
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
4/54
UniversidadPeruanaUnin
INTRODUCCIN
-
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
5/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Intro>Actividades SAD Scrum
act Modelo SAD Scrum
Definir Alcance delproyecto
Validar Historias de
usuario (y lista de
ejemplos de aceptacin
del usuario y de
seguridad)
Historias
claras?Modelar el Negocio
(futuro)
Modelar Casos de uso delsistema
Planificar el proyecto y
comenzar a disear el
Sistema
Aceptado?
Definir y realizar las
tareas de desarrollo (y
pruebas)
Entregar productos Redactar Manual de
Instalacin y del Usuario
Mayor
comprensin?
[No]
[Si]
[Si]
[No]
[Si]
[No]
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
6/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Intro>Tipos de requisitos
Especificaciones Complementarias
Requerimiento
Funcional No Funcional (URPS)
Casos de Uso
(estos requerimientos aplican a la totalidad del sistema)
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
7/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Intro>Objetivos del Anlisis OO
Anlisis
Requerimientos delsoftware
Modelo del Anlisis
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
8/54
UniversidadPeruanaUnin
MODELO DE ANLISIS CON RUP
Diagramas de
casos de usoDiagramas (D) de
entidades+ clases
D. Secuencias
D. Colaboraciones D. Estados
D. Actividad
-
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
9/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Intro
Modelo de Casos de Uso
Se describe usando el
lenguaje del cliente.
Es la vista externa del
sistema.
Se usa a manera de contrato
entre clientes y
desarrolladores para definirlo que el sistema debe y no
debe hacer
Modelo de Anlisis
Se describe usando el
lenguaje del
desarrollador.
Es la vista interna del
sistema
Se usa para que los
desarrolladores
comprendan como elsistema debe ser
diseado e
implementado.
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
10/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Modelo de Anlisis
Especifica los requisitos (funcionales) delsistema mediante casos de uso
Caso de Uso n
Esp. Caso de Uso n
- Breve descripcin
- Flujo de eventos
Actor n
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
11/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Diagrama de casos de uso
Un diagrama de casos de usomuestra la interaccin entre los
usuarios (actores) con los casos de
uso.
ActorCaso de Uso
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
12/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Elementos de un diagrama de casos de uso
Actor representa cualquier cosaque interacta con el sistema(humano, SW o HW).
Caso de Uso secuencia deacciones que obtienen resultadosde valor para un actor
Comunicacin
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
13/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Inclusin (o uso)
Caso de Uso Origen Caso de Uso Desti no
Verificar Operacin
Reintegro Cuenta Corriente
Cliente
Reintegro Cuenta de Crdito
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
14/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Extensin
Caso de Uso Origen Caso de U so Desti no
Solic itar N ueva Tarjeta
ClienteSolicitar Prstamo
[Tarjeta Caducada]
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
15/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Herencia
Caso de Uso Hij o Caso de Uso Padre
Buscar libro Buscar CD
ClienteBuscar Producto
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
16/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Demo
Mantener informacin de Alumnos
Mantener Informacin de CursosOperador
Sistema de FacturacinCerrar Registro
Alumno
Matricular en
Semestre
Mantener Informacin de Profesores
Generar Catalogo de Cursos
Profesor
Requerir Listado de Cursos
Elegir cursos a dictarSistema de
Catalogo
De Cursos
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
17/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Atributos de un C.U.
Prioridad
Categora
Riesgo
Dificultad
Visibilidad
Precedencia
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
18/54
UniversidadPeruanaUnin
REALIZACIN DE CASOS DE USO DEANLISIS
Caso de Uso Realizacin de Anlisis Realizacin de Diseo
Caso de Prueba
X
trace trace
tracetrace
Pruebas Funcionales
PruebasUnitarias
-
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
19/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Realizacin de Anlisis> Elementos
Caso de Uso 1
Documento de
Especificacin
del CU
R C U A C a s o d e U s o 1
Entidad
Control
Frontera
Diagramas (en 3 capas)Documento
D. ClasesD. SecuenciaD. EntidadesD. Estados
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
20/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Especificacin del CU
Devolver Libro
Poner multaextend
Puntos de extensin
libro retrasado
Bibliotecario
Nombre: Poner multa
Precondicin: Libro devuelto fuera de plazo
Flujo:
1. El bibliotecario introduce detalles multa
2. El sistema registra e imprime la multa
Nombre: Devolver libro
Actor principal: Bibliotecario
Precondicin: Bibliotecario est autenticado
Flujo:
1. El bibliotecario introduce id del prestatario
2. El sistema muestra datos del prestatario ylos libros que tiene prestados
3. El bibliotecario selecciona libro a devolver
punto de extensin: libro retrasado
4. El sistema registra devolucin
5. ...
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
21/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Elementos de los diagramas de clases y secuencia
V. Una clase frontera(boundary class) modelala interaccin (eventos) entre el actor y el
sistema provocando cambios en la
presentacin. ViewLayer
C. La clase controladora (controller class)modela el control del comportamientoespecifico a uno o varios casos de uso u otros
controles, por eso su comportamiento es de
tipo coordinativo. ServiceLayer y/o
BusinessLayer M. Una clase entidad (entity class) modela la
informacin que tiene que ser almacenada.
DataLayerclase entidad
clase frontera
clase controladora
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
22/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Diagrama de Clases
Es un diagrama que muestra las
clases de anlisis y sus
relaciones de forma esttica.
Se realizan para cada Caso de
Uso.
Cajero
Interfaz
Pago
Pago
Controladorade Pagos
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
23/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Demo>DCA Registrar nuevo curso
Secretary(from Ac tors)
CI_NuevoCurso
addCurso()
CC_Cursos
addNewCurso()
area
areatematica
(f rom Entities)
curso
nombre
(f rom Entities)
1
0..*
1
0..*
curso
cursoid
nom re
area
area
areaid
areatematica
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
24/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
(adelanto) En el diseo
Ver ejemplo completo enhttps://www.assembla.com/spaces/bims-library/trac_subversion_tool
O
https://www.assembla.com/spaces/bims-library/documents
Desarrollado sobre Java:Hibernate+Spring+Flex
mailto:@asullomhttp://www.assembla.com/spaces/bims-library/trac_subversion_toolhttp://www.assembla.com/spaces/bims-library/documentshttp://www.assembla.com/spaces/bims-library/documentshttp://www.assembla.com/spaces/bims-library/trac_subversion_toolmailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
25/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Diagrama de secuencia
Es un diagrama que muestra la interaccin de
las clases de anlisis de forma secuencial
Se realizan para cada Caso de Uso.
A partir de este diagrama se genera el
Diagrama de colaboracin.
Los diagramas de actividades se consideran
dentro de esta vista
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
26/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Demo>DSA Registrar nuevo curso
: Secretary : CI_NuevoCurso : CC_Cursos : curso
addCurso( ) addNewCurso( )create( )
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
27/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Diagrama de secuencia de nivel general
: Cajero
:Sistema
* introducirItem(id,cantidad)
finalizarVenta()
hacerPago(glosa, monto)
crearNuevaVenta()
Interacciones
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
28/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Multi-objetos
Multi-instancias (collections)
:Detalle Matricula
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
29/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Demo>DSA-Bsqueda Simple de libros
: Cliente : CI_SearchBooks : CC_SearchBooks : Book : BType: MO_LIBROS
1. searchBooks(compare, type)
1.1. searchBooks(compare, type): ListBooks
1.1.1. SetListBooks(compare, type):ListBooks
1.1.1.1. * verificarBook(compare, type): SI/NO
1.1.1.1.1. [typenul l] getTypeName( ):TypeName
1.1.1.2. *[SI] getBook( ):BookData
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
30/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Diagrama de Entidades (clases) o Modelo conceptual
Conformado por las clases de tipo entidad.
Las entidades persistentes conforman la base
de datos.
area
areatematica
(from Entities)
curso
nombre
(from Entities)
1
0..*
1
0..*
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
31/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Asociaciones y Multiplicidades entre entidades
Entidad A
E nt idad B
Entidad A
E ntidad B
Entidad A
E ntidad B
Generalizacin
Agregacin
Composicin
Asociacin
Entidad A
Entidad B
0,1
0,*
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
32/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Diagrama de estados
Muestran estados en los cuales un objeto(generalmente entities) se puede encontrar
en un determinado proceso (programa), ie su
ciclo de vida
Destacan: Estados
Transiciones y condiciones de las transiciones
Actividades realizadas
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
33/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Diagrama de estados>Pedido
Ingresado
Inicial
Atendido
CanceladoCobrado Perdido
a
Pedidos
anulados
a
Pedidos
cobrados
a
pedidos
perdidos
[cancelar]
[atender]
[cobrar] [estado sin cambios >1 da]
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
34/54
UniversidadPeruanaUnin
UN ADELANTO AL MODELO DEDISEO
-
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
35/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Realizacin de Diseo> Elementos (prox. sesin)
RCUD Caso de Uso 1
R C U A C a s o d e U s o 1
Diagramas (Las capas segn el patrn arq.)
D. Clases
D. SecuenciaD. EntidadesD. Estados
ClassData
ClassBusiness
ClassService
ScreenView
Entity
View
Control
EntityDB
EntityView
remote
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
36/54
UniversidadPeruanaUnin
Configuracin :Model
Module1 (paquete) Entities
Basic Tables Class Diagram.d(iagram)
Entity1.o(bject)
Entity2.o
Catalog
Natural Person
Employee
Entities Lite Idem Lite
Data Access Layer Basic Tables Data
Class Diagram.d
IEntity1Data
Idem Data
Business Layer Idem Business
Class Diagram.d Objet1Busines.o
O1.Business Sequence Diagrams
Save.d
Delete.d
GetById.d
GetListByFliter.d
Service Layer Objeto1 Service (c/entity o c/compone)
ClassDiagram.d Objeto1Service.o
Sequence Diagrams
Save.d
Delete.d
GetById.d
GetListByFliter.d
View Layer Objeto1 View (c/entity o c/component)
IGU.d
ModuleExternal Service ObjetoExternal1 Service
ClassDiagram.d
ObjetoExternal1Service
Module2 Idem al Model 1
-
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
37/54
UniversidadPeruanaUnin
Configuracin del modelo>Ejemplo
Module1 Entities
Basic Tables Class Diagram.d(iagram)
WorkContractType.o(bject)
Entity2.o
Legal Entity
Entities Lite Idem Lite
Data Access Layer
Basic Tables Data Class Diagram.d
IWorkContractTypeData.o
Idem Data
Business Layer Idem Business
Class Diagram.d
WorkContractTypeBusiness.o
WorkContractTypeBusiness SequenceDiagrams
Save.d Delete.d
GetById.d
GetListByFliter.d
Service Layer WorkContractType Service
ClassDiagram.d IWorkContractTypeService.o
Sequence Diagrams
Save.d
Delete.d
GetById.d
GetListByFliter.d
View Layer WorkContractType View
WorkContractType View.d ModuleExternal Service
Componente1(ObjetoExternal1) Service ClassDiagram.d
Module2 Idem al Model 1
-
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
38/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
(adelanto del diseo): Diagrama de entidades
Recuerde que debe estar empaquetado por
mdulos y componentes
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
39/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
(adelanto del diseo): IGU
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
40/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
(adelanto del diseo): Diagrama de clases
Para todas las capas segn la arquitectura y
dentro de su mdulo o componente.
Recuerde que los siguientes diagramas son en
base a una arquitectura de 4 capas sobreC#.net:
DataLayer: Nhiberbate + Sda.EL (de la DSA)
BusinessLayer: Sda.EL (propietario) ServiceLayer: WCF+ Sda.EL
ViewLayer: Silverlight (a su vez MVVM) + Sda.EL
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
41/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
DataLayer
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
42/54
-
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
43/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
(adelanto del diseo): Diagrama de secuencia
Para todas las capas segn la arquitectura,
dentro de su mdulo o componente y para
c/mtodo
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
44/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
:BusinessLayer>
GetListByFilterAndLegalEntityForSearch
Created: 01/04/2013 14:41:44
Modified: 01/04/2013 14:51:55
Project:
Advanced:
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
45/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Save
:BusinessLayer
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
46/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
:BusinessLayer> GetById
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
47/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
:BusinessLayer> Delete
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
48/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
ServiceLayer
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
49/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Delete
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
50/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
GetList
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
51/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
GetById
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
52/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Save
mailto:@asullommailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
53/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
Tarea
Revisar la documentacin de BimsLibrary
https://www.assembla.com/spaces/bims-library/documents ejecutar la app.
Completar los casos de uso de su proyecto.
La prxima clase haremos el diseo bajo elpatrn arquitectnico MVC.
Model: Django
Controller: Django + json
View: Django+HTML5+responsive+ajax O en vez de Django usaremos Kumbiaphp
mailto:@asullomhttp://www.assembla.com/spaces/bims-http://www.assembla.com/spaces/bims-mailto:@asullom -
7/28/2019 20131ADS1-04---Cerrando parntesis con el Modelo de anlisis.pdf
54/54
UniversidadPeruanaUnin
@asullom>Modelo de Anlisis
+
Entorno de prezi.com
Entorno de EA para ambiente de diseo
distribuido.
http://www.sparxsystems.com.au/WhitePaper
s/Version_Control.pdf
mailto:@asullomhttp://www.sparxsystems.com.au/WhitePaperhttp://www.sparxsystems.com.au/WhitePapermailto:@asullom