Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
El comportamiento del sistema se captura en los casos de uso Los casos de uso describen al sistema, su ambiente y las relaciones entre el sistema y su ambiente
Caso de Uso
Actores
Los actores no son parte del sistema, ellos representan roles que pueden jugar usuarios del sistema Un actor puede intercambiar informacin activamente con el sistema Un actor puede ser un receptor pasivo de informacin Un actor puede representar a un ser humano, una mquina o a otro sistema
Actor
Quin est interesado en cierto requerimiento? Dnde se usa el sistema en la organizacin? Quin suplir al sistema de informacin, quien usa y elimina esta informacin? Quin usar esta funcin? Quin dar soporte y mantenimiento al sistema? El sistema usa un recurso externo? Qu actores necesitan los casos de uso? Algn actor interpreta varios roles diferentes? Existen varios actores con el mismo rol?
Instancias de Actores
Ivar representa al actor Cliente
Inserte su Tarjeta
123 456 789 *0#
Cliente
Inserte su Tarjeta
Tcnico Mantenimiento
Cliente
Tcnico Mantenimiento
Cajero de Ventanilla
Cajero de Ventanilla
Casos de Uso
Caso de Uso
Un Caso de Uso modela un dilogo entre actores y el sistema Un CU inicia cuando un actor invoca cierta funcionalidad del sistema Un CU es un flujo completo y significativo de eventos Tomados juntos, los casos de uso constituyen todas las formas posibles del uso del sistema
Cules son las tareas de este actor? El actor crear, guardar, cambiar, eliminar o leer informacin del sistema? Con qu caso de uso se crear, guardar, cambiar, eliminar o leer esta informacin? El actor necesitar informar al sistema acerca de cambios externos repentinos? Necesita el actor ser informado acerca de ciertas ocurrencias en el sistema? Le proporciona el sistema al negocio el comportamiento correcto? Qu casos de uso darn soporte y mantenimiento al sistema? Pueden los casos de uso ejecutar todos los requerimientos funcionales?
Esta linea entre el actor y el caso de uso indica que ellos interactan enviando mensajes uno al otro
Para cada mensaje enviado se asume una respuesta La direccin de la flecha indica quien envio el primer mensaje
Cajero de Ventanilla
Sistema Bancario
Tcnico Mantenimiento
La documentacin debe poderse leer como un dilogo entre el actor y el caso de uso La documentacin se redacta en trminos que el cliente pueda entender (usando el lenguaje del dominio)
Describir slo los eventos que pertenecen al caso de uso Evite terminologa vaga como por ejemplo, informacin y etc.
Cajero de Ventanilla
Al principio de cada semestre, se llevara a cabo un Proceso de Registro que durar 3 das. Durante este proceso, los estudiantes debern asignarse los cursos que llevaran durante el semestre. El primer da se dar orientacin y registro a los estudiantes de primer ao.Todos los dems estudiantes podrn registrarse a partir del segundo da. El tercer da se utilizar adems para resolver los conflictos en las asignaciones de cursos. Para manejar el proceso, la Oficina de Registro necesita de un nuevo sistema que pueda ser utilizado desde el Internet y/o la intranet de la universidad, por los estudiantes, profesores y el personal de la oficina de registro, para realizar las diferentes funciones implcitas en el proceso. Este sistema se utilizara luego del proceso de registro para que los profesores puedan registrar las calificaciones de los estudiantes, y estos a su vez puedan consultarlas.
(contina)
El sistema debe incluir un control de acceso que permita que los usuarios ingresen con un cdigo de identificacin y un password, los cuales sern entregados a todos los posibles usuarios antes de que inicie el proceso. El control de acceso determinara que funcionalidad tendr disponible el usuario por parte del sistema, segn el tipo de usuario que sea. Tambin debe validar que solo los estudiantes de primer ao puedan entrar el primer da del proceso de registro. El sistema debe proveer una lista de cursos disponibles para el semestre, en donde los estudiantes puedan consultar la informacin que necesiten de cada curso para tomar decisiones. Esto incluye el nombre, descripcin, crditos y prerrequisitos del curso, as como informacin de las secciones (numero, aula, horario, estado) disponibles por curso. Cada curso puede tener una o mas secciones. El estado de las secciones indica si estn abiertas, cerradas (llenas) o si fueron canceladas. Cada seccin puede tener como mximo 20 estudiantes y al llegar a esa cifra el sistema debe cerrarla y actualizar la lista de cursos disponibles para que la seccin refleje esto en su estado.
(contina)
El sistema va a ser utilizado desde el Internet y/o la intranet de la Universidad, por lo que se deben tomar las consideraciones necesarias para desarrollar una aplicacin para ambientes WEB. El nuevo sistema en una parte de la aplicacin que debe sustituir al sistema actual de la Oficina de Registro, que se considera inflexible y ya no se puede mantener. La especificacin anterior solo cubre la parte mas critica de la funcionalidad deseada, y el resto se deber suplir despus en un proyecto de extensin del sistema. Sin embargo, los datos base necesarios para lograr la funcionalidad deseada estn completos y actualizados en la base de datos de sistema actual. Estos datos incluyen la informacin personal e historial acadmico de los estudiantes, informacin de profesores, cursos (incluyendo no solo los disponibles, sino todos los que estan en los planes de estudio) y secciones.
(contina)
Lo anterior significa que el proyecto debe incluir la actividad de migracin de datos, para minimizar el ingreso y traslado de informacin por otros medios, y porque se desea utilizar un RDBMS para manejar y almacenar la informacin del nuevo sistema. Con respecto a la carga proyectada de usuarios, se estima que pueden haber hasta 1000 estudiantes utilizando el sistema en forma simultanea desde Internet y 500 en la intranet. Si se sobrepasan estas cifras, el sistema debe denegar temporalmente el acceso a los estudiantes que intenten conectarse. Los profesores y personal de la oficina de registro deben poder conectarse siempre, sin importar la carga que se tenga en ese momento el sistema. La oficina de Registro deber proporcionar Guas de Usuario a los estudiantes y profesores, para indicarles como deben usar el sistema. Sin embargo se prev que habrn muchos usuarios que no dispongan de esas guas, por lo que debe estar disponible en lnea, y por lo que el interfaz de usuario debe ser muy sencillo e intuitivo (curva de aprendizaje cero), que es lo normal en aplicaciones para ambientes Web.
Actores
Profesor Estudiante
Sistema de Facturacin
Casos de Uso
Casos de Uso
Consultar Calificaciones
Estudiante
Inscribirse en Cursos
<<uses>>
Profesor
Sistema de Facturacin
Login
2 Flujo de Eventos
2.1 Pre-Condiciones
El estudiante debe haber completado el caso de uso Login.
(contina)
2.2.1.7 Para cada opcin que cumpla las validaciones, el sistema aade al estudiante a la seccin escogida y actualiza totales. 2.2.1.6 Se usa el flujo alterno 2.3.3 Imprimir Horario. Si el estudiante desea sustituir las opciones no aceptadas por otras, debe realizar el flujo alterno 2.3.1 Modificar Horario. Termina el CU.
(contina)
Qu son escenarios?
Un escenario es una instancia de un caso de uso
Es un flujo a travs de un caso de uso
Escenarios secundarios
Flujos alternos Flujos de excepcion
Escenarios Secundarios
Algunos casos secundarios a considerar son
El estudiante ingresa menos de 4 opciones primarias. El estudiante ingresa menos de 2 opciones secundarias. Uno o mas cursos no pasan las validaciones. El estudiante decide cambiar una o mas opciones. Etc.
Escenarios secundarios
Elabore algunos de los escenarios secundarios interesantes y de alto riesgo
Un actor es algo o alguien que debe hacer interfase con el sistema que se desarrolla Un diagrama de casos de uso es una descripcin grfica del sistema que muestra a los actores y los casos de uso identificados para este sistema La documentacin de los casos de uso consiste en una breve descripcin y un flujo de eventos
Clases y Objetos
Modularidad
Abstraccin
Jerarquia
Qu es Abstraccin?
Es la capacidad de conceptualizar entidades genricas de informacin a partir de cosas concretas Se enfatizan caractersticas comunes que interesan Se ignoran otras caractersticas
Producto
Vendedor
Qu es Encapsulacin?
Es la capacidad de esconder los detalles de como funciona una cosa (la implementacin), detras de un interface Solo se necesita conocer el interface para poder usar la cosa El usuario no se ve afectado si se cambia o mejora el funcionamiento
interno de la cosa, mientras se mantenga el interface
Que es Polimorfismo?
Es la habilidad de esconder diferentes implementaciones tras un solo interface
Marca A
Marca B
Marca C
Qu es Modularidad?
Es la capacidad de particionar algo complejo y dificil de manejar, en partes mas sencillas y fciles de manejar
Qu es Jerarqua?
Ms Abstracto
Cuenta Bancaria
Valores
Bienes Races
Menos Abstracto
Ahorros
Cheques
Acciones
Bonos
Casas
Edificios
Los elementos al mismo nivel de jerarqua deben estar al mismo nivel de abstraccin
Qu es Herencia?
Es la capacidad de los elementos de una jerarqua, de transmitir sus caractersticas desde los niveles mas abstractos a los mas concretos
Activo
Valor
Cuenta Bancaria
Valor Numero Cuenta
Valores
Valor Emisor
Bienes Races
Valor Ubicacion
Ahorros
Valor Numero Cuenta
Cheques
Acciones
Valor Emisor
Bonos
Valor Emisor
Casas
Valor Ubicacion
Edificios
Valor Ubicacion
Qu es un Objeto?
Entidad fsica
Camin
Entidad conceptual
Proceso Qumico
Entidad de Software
Lista Enlazada
=(a/)
Profesora Clark
Nombre: Joyce Clark Id Empleado: 4322456 01/06/1995 Contratacin: Profesora Titular Puesto:
Profesora Clark
=(a/)
Profesora Joyce Clark
Objeto Genrico
Solo Nombre de Clase* :Profesor
Qu son Clases?
Cuando se han identificado muchos objetos en un dominio, decimos que una clase es una abstraccin que describe un grupo de objetos que tienen: propiedades en comn (atributos) comportamiento en comn (operaciones) relaciones comunes con otros objetos (asociaciones) semntica en comn (descripcin breve) Una clase es una abstraccin porque: enfatiza caractersticas relevantes al sistema suprime otras caractersticas
Clase
Estudiante A. Pineda E. Gomez G. Rodrguez
Ejemplo de Clase
Clase Seccion
Estructura Nombre Aula Crditos Das Hora de Inicio Hora Final
=(a/)
Comportamiento
Clases y Objetos
Cuntas clases ve usted?
El Modelo Conceptual
Es el primer modelo de clases que se debe hacer y rene las abstracciones principales (key abstractions) del sistema que se desea construir
Es un primer intento de definir la estructura del sistema Se obtiene al examinar la Descripcin del Problema y en entrevistas con los expertos del dominio Se usa como una base de entendimiento y cooperacin con los expertos de dominio y / o clientes No debe incluir los detalles de las clases, solo debe identificarlas Un Diccionario del Modelo Uno o mas Diagramas de Clases (normalmente solo uno)
Incluye:
Estela Gomez
Ingls 101 (66574) Geologa 110 (55342) Historia Mundial 200 (85463) lgebra 110 (76453)
clases que modelan cosas que ya tienen un nombre ampliamente difundido y utilizado en el dominio (eje: tratar de usar OrdenDeTrabajo en vez de Ticket) Las mejores fuentes para escoger nombres, son las entrevistas con los expertos del dominio y la documentacin misma del dominio (que existe aparte del la que se ha creado durante el proyecto; eje. guas de operacin, manuales de procedimientos, etc) Los principales trminos, siglas, apodos, etc. del vocabulario del dominio, deben definirse e incluirse en la documentacin del proyecto (en el RUP se llama a esto el Documento de Glosario)
Ejemplos:
Definicin de Trabajo: Informacin acerca de una persona registrada para realizar diversas actividades en la Universidad (principalmente recibir clases), con el fin de completar los cursos que conforman un Plan de Estudios Definicin de Trabajo: Una materia ofrecida por la Universidad, que es parte de un Plan de Estudios
Nombre: Curso
Mientras ms del problema se descubre, deben afinarse las definiciones de las clases conocidas y debe agregarse cualquier clase nueva al diccionario.
Profesor o Profesor
=(a/)
El contenido de las secciones segunda y tercera puede suprimirse si no es necesario mostrarlo en el diagrama de clases
Esto depende del nivel de detalle que requiera la perspectiva del diagrama Se pueden suprimir las secciones mismas
Profesor nombre Identificacin crear() guardar() eliminar() cambiar() Profesor Profesor crear() guardar() eliminar() cambiar() Profesor
nombre identificacin
Profesor
La perspectiva de los diagramas no es parte formal del UML, pero es una consideracion importante que debe tomarse al crear y revisar los diagramas de clases.
Curso
Semestre
PlanDeEstudios
ListadoDeCursosDisponibles
EncargadoDelRegistro
ListaDeSolicitantesParaNuevasSecciones
Una clase es una definicin abstracta de un conjunto de objetos que comparten una estructura y comportamiento en comn A las clases se les debe dar un nombre que mejor caracterice la abstraccin que representan
(contina)
Rene las abstracciones principales del sistema Incluye uno o mas diagramas de clases y un Diccionario del Modelo Se hace conjuntamente con los expertos del dominio para establecer
una base de entendimiento y cooperacin
Las clases se representan en UML con un rectngulo que contiene el nombre de la clase y opcionalmente 3 compartimientos
El primer compartimiento contiene el nombre de la clase El segundo compartimiento muestra la estructura (atributos) El tercer compartimiento muestra el comportamiento (operaciones)
Captulo 7
Modelo de Anlisis
El Modelo de Anlisis
Es el resultado del proceso de Anlisis Representa la conceptualizacin del Dominio del Problema Para construirlo se hace el Anlisis de Casos de Uso"
Conceptual de clases Se usa la documentacin disponible (descripcin del problema, especificaciones suplementarias, entrevistas, etc.) Se usan los escenarios de CU para ordenar, dirigir y ejecutar el proceso; para cada CU deben hacerse una o mas Realizaciones de Casos de Uso Del Modelo Conceptual, se usan directamente algunas clases, otras se transforman y algunas se desechan
(contina)
El Modelo de Anlisis
Puede tambin agruparse en 2 partes o vistas:
Diagramas de Paquetes
El Modelo Dinmico, que muestra las interacciones y responsabilidades que se manejan en el sistema e incluye: Diagramas de Interaccin Colaboracin Diagramas de Estado
Secuencia
Modelo Conceptual
Diccionario
Diagramas Secuencia
Casos de Uso
Codigo Fuente
Ejecutables
Caso de Uso XX
Diagrama de Secuencia
Diagrama de Colaboracin
Diagrama de Clases
Se definen objetos y clases de entidad, limite y control Se crean diagramas de clases participantes (VOPC) para cada RCU
2. Los escenarios de CU se detallan grficamente en diagramas de interaccin para identificar las propiedades y responsabilidades de los objetos y clases (Captulos 8 y 9)
Se establece cuando y porque se comunican entre si los objetos y clases Se identifica que informacin contienen los mensajes que se envan entre si los objetos y clases En base a lo anterior, se definen y asignan propiedades (atributos) y responsabilidades (operaciones) a los objetos y clases
(contina)
Se identifican y representan todas las conexiones semnticas entre clases (incluyendo relaciones de asociacin, agregacin y generalizacin) Se incluyen como asociaciones todas las relaciones de colaboracin
4. Algunas clases con comportamiento especial se detallan en diagramas de estado para afinar la definicin de sus atributos y operaciones (Captulo 11) 5. Las clases resultantes se agrupan en paquetes tomando criterios de Arquitectura de Software para la definicin de componentes (Captulo 12)
Se crean diagramas de clases para cada paquete y diagramas de paquetes para indicar las dependencias entre estos
PASO 1:
Los escenarios de CU se analizan para identificar los objetos y clases que participan en ellos
Se definen objetos y clases de entidad, limite y control Se crean diagramas de clases participantes (VOPC) para cada Realizacin de Caso de Uso
<<control>>
<<boundary>>
<<entity>>
<<entity>>
<<boundary>>
Vista
Limites del Sistema
Estereotipos (Stereotypes)
Un estereotipo, es un nuevo tipo de elemento de modelacin que extiende la semntica el meta modelo
Deben de estar basados en tipos existentes o clases del meta modelo
Es el mecanismo que el UML provee para extender la notacin Cada clase de anlisis debe tener un estereotipo Estereotipos comunes
Clase de lmite Clase de entidad Clase de control Clase de excepcin Clase de Utilera Meta clase
Los estereotipos se muestran en el compartimiento del nombre de la clase encerrado entre << >> (guillemets) o con un icono
Ejemplo:
En el caso de uso Inscribirse en Cursos, se utiliza una pantalla de horario para que el estudiante ingrese las opciones de cursos
<<boundary>> PantallaDeHorario
PantallaDeHorario
PantallaDeHorario
Las funciones que provee el otro sistema La informacin a ser pasada al otro sistema El protocolo de comunicacin usado para hablar con el otro sistema
Ejemplo:
En el caso CU Correr Proceso de Cierre hay informacin que debe ser enviada a un Sistema de Facturacin externo. Se puede crear una clase de limite llamada SistemaDeFacturacin para representar la interfase con el sistema externo.
<<boundary>> SistemaDeFacturacion
Actor
<<entity>>
<<entity>>
Ejemplo:
Una de las clases de entidad en el CU Inscribirse en Cursos es Horario
<<entity >>
Horario
Horario
Horario
<<entity>>
<<entity>>
Ejemplo:
ControlInscripcion
ControlInscripcion
ControlInscripcion
Actor
<<boundary>>
<<boundary>>
Actor
<<entity>>
<<entity>>
Filtrando Sustantivos
Cuando se identifican sustantivos tenga presente que
Varios trminos pueden referirse al mismo objeto Un trmino puede referirse a ms de un objeto El lenguaje natural es muy ambiguo
Advertencia
Cualquier sustantivo puede ser convertido en verbo; cualquier verbo puede ser convertido en sustantivo Los resultados dependen en gran parte de la capacidad de redaccin de el o los autores
Cada sustantivo debe considerarse en el contexto del dominio no puede estar aislado
Clases de Entidad identificadas en el Escenario de CU Inscribirse en Cursos Crear un Horario una materia ofrecida por la Curso universidad que es parte de un Plan de Estudios ListaDeCursosDisponibles lista de todos los cursos a ensear en un semestre lista de secciones de cursos Horario escogidas para un semestre por un estudiante ListaDeEstudiantesInscritos lista de estudiantes para una seccin curso ofrecido un curso ofrecido en un lugar y Seccin horario especficos
Para cada par de actor fsico y escenario cree una clase de limite
Durante el diseo, esta clase se transformara dependiendo de los mecanismos de interfase escogidos
Aada mas clases de limite para modelar navegacin entre interfaces (por ejemplo pantallas) en el mismo caso de uso Ejemplo:
Al estudiante se le presentan diferentes opciones en el caso de uso Inscribirse en Cursos Se crea una clase de lmite llamada PantallaInscripcin para permitirle al estudiante seleccionar la opcin deseada El estudiante debe ingresar las secciones de los cursos escogidos al sistema en el escenario Crear un Horario Se crea una clase llamada PantallaHorario para recibir y procesar la informacin ingresada por el estudiante
<<boundary>> PantallaHorario
Bosquejo de Pantalla
Se pueden crear storyboards, prototipos y bosquejos de pantallas para comunicar el look & feel de la clase lmite al usuario
Las clases de control NO deben ejecutar funciones cuya responsabilidad pertenece a clases de entidad o de lmite Esto es slo un corte inicial
A medida que se desarrollan mas casos de uso y escenarios, las clases de control pueden eliminarse, dividirse o combinarse
Clase de Control para el Caso de Uso Inscribirse en Cursos Se aade una clase de control llamada ControlInscripcin Recibe informacin de la clase lmite PantallaHorario Para cada opcin ingresada
Valida que la seccin este abierta Valida que no existan conflictos de horario Valida que el curso est en el plan de estudio del estudiante Valida que los prerrequisitos se cumplan Asigna al Estudiante a la Seccin.
<<control>> ControlInscripcin
Estudiante
<<control>> ControlInscripcin
Inscribirse en Cursos
<<boundary>> PantallaInscripcion <<boundary>> PantallaHorario
<<entity>> Horario
<<entity>> Seccin
<<entity>> Curso
<<entity>> ListadoDeCursosDisponibles
<<entity>> ListaDeEstudiantesInscritos
Tarjetas Clase-Responsabilidad-Colaboracin
Las clases tambin se pueden descubrir usando tarjetas Clase-Responsabilidad-Colaboracin (CRC)
Fueron introducidas por Ward Cunningham y Kent Beck en OOPSLA en 1989
Seccin
Colaboraciones
Estudiante, ListaDeEstudiantesInscritos
Servicio brindado
Aadir un estudiante
Asignar Profesor Conocer donde se dicta el curso Conocer cuando se dicta el curso
Profesor
Conocimiento Interno
Los escenarios que se escojan deben ser desarrollados por los participantes como si se hiciera una representacion En las tarjetas se anotan las responsabilidades y colaboraciones que vayan surgiendo de la re[resentaciones de los escenarios Se crean tarjetas para cualquier objeto nuevo que se descubra
Esto puede ayudar a identificar las jerarquas de generalizacin o especializacin, y asociaciones de agregacin entre las clases (estos temas se desarrollan mas adelante)
Las tarjetas de CRC son ms efectivas para grupos nuevos en tcnicas de OO porque:
Previenen enfocarse en temas de Programacion OO Previenen la generalizacin Impulsan a pensar orientado a objetos
Todas las clases tienen nombres significativos y especficos del dominio Cada clase tiene un pequeo grupo de colaboradores No hay clases indispensables (una clase que colabora con todo necesita ser redefinida) La informacin de cada clase cabe bien dentro de una tarjeta de 3x5 Un cambio en los requerimientos puede ser bien manejado por las clases Existen clases sin responsabilidades Una misma responsabilidad se asigna a varias clases Todas las clases colaboran con todas las otras clases
Estereotipos comunes: lmite, entidad, control, excepcin, meta clase y utilitario Una clase lmite modela la comunicacin entre lo que rodea al sistema y su funcionamiento interno
(contina)
Crear diagramas de secuencia y colaboracin para mostrar interacciones entre objetos Identificar, distribuir y asignar responsabilidades a clases, en funcin de las interacciones modeladas en los diagramas de secuencia y colaboracin
PASO 2:
Los escenarios de CU se detallan grficamente en diagramas de interaccin para identificar las propiedades y responsabilidades de los objetos y clases
Se establece cuando y porque se comunican entre si los objetos y clases Se identifica que informacin contienen los mensajes que se envan entre si los objetos y clases En base a lo anterior, se definen y asignan propiedades (atributos) y responsabilidades (operaciones) a los objetos y clases
Los diagramas de Secuencia se ordenan en el tiempo Los diagramas de Colaboracin muestran el flujo de datos
Qu es un Diagrama de Secuencia?
Un diagrama de secuencia sirve para modelar las interacciones entre objetos ordenadas en una secuencia en el tiempo Incluye:
Los objetos que participan en el escenario con sus lneas de vida Los mensajes intercambiados en una secuencia en el tiempo que representa el flujo de eventos del escenario El enfoque del control sobre los objetos (opcional)
Objeto generico
:Curso
Estereotipo
Ingles 101:Curso
Lineas de Vida
Evento.orden: mensaje
El Enfoque de Control se indica en un diagrama de secuencia dibujando un rectngulo sobre la lnea de vida del objeto en que esta enfocado el control
:PantallaHorario :ControlInscripcion :ListaDeCursosDisponibles
Enfoque de Control
Notas
Se pueden usar notas para aadirle ms informacin al diagrama cuando se quiere asegurar que se esta comunicando un detalle especifico o se quiere hacer una aclaracin cursos disponibles Se usa texto libre incluyen informacin de
secciones
:PantallaHorario
:ControlInscripcion
:ListaDeCursosDisponibles
Ejemplo de Script
: Estudiante
: PantallaDeHorario
: ControlInscripcion
: Seccion
: Curso
// 2.2.1.5 : Someter Horario a Validacion // 2.2.1.5.1 : Someter Horario a Validacion Hacer hasta 4 veces para las opciones primarias y 2 para las alternas Hacer hasta 4 veces solo para las opciones primarias Hacer hasta 4 veces para las opciones primarias y 2 para las alternas Hacer hasta 4 veces para las opciones primarias y 2 para las alternas // 2.2.1.5.2 : Validar que la seccin esta Abierta
SCRIPT
:Cliente
:Servidor
Lineas de Vida
2.2.1: Ejecutar Responsabilidad Este es un Script de Ejemplo
Mensaje
: Estudiante
: PantallaLogin
: ControlAcceso
: Usuario
: Estudiante
// 2.2: Login // 2.2.1 Presentar Pantalla de Login // 2.2.2: Ingresar identificacin (codigoUsuario, password) // 2.2.3: Validar Identificacin (codigoUsuario, password) // 2.2.3.1: Validar Identificacin (codigoUsuario, password): tipoUsuario // 2.2.3.2: Obtener Perfil Estudiante (codigoUsuario): Estudiante // 2.2.4: Mostrar mensaje de Bienvenida(carnet, nombreEstudiante)
Diagramas de Colaboracin
Un diagrama de colaboracin es una forma alternativa de representar mensajes intercambiados por un conjunto de objetos El diagrama muestra los objetos con enlaces entre ellos cuando hay una o mas interacciones. Tambin se muestran las interacciones o mensajes, dibujadas sobre los enlaces Un diagrama de colaboracin contiene
Objetos Enlaces entre objetos Mensajes intercambiados entre objetos Flujo de datos entre objetos, si existen
Enlace
: PantallaDeHorario
Anotaciones de Enlace
Un enlace de interaccin en un diagrama de colaboracin se le pueden hacer anotaciones con:
Una flecha apuntando del objeto cliente al objeto suplidor El nombre del mensaje con una lista opcional de parmetros y/o datos de valor de retorno Un nmero de secuencia opcional mostrando el orden relativo en el que los mensajes se envan
Mensaje Numero Secuencia 1: // 2.2.1.5 : Someter Horario a Validacion
: Estudiante
: PantallaDeHorario
Objeto Suplidor
1: EjecutaResponsabilidad
Mensaje
: Usuarios
: Estudiante
Diagramas de Secuencia
Muestran la secuencia explicita de los mensajes en el tiempo Son mejores para visualizar el flujo general del escenario de CU Son mejores para modelar escenarios de tiempo real y escenarios muy conplejos
Diagramas de Colaboracin
Muestran las relaciones ademas de las interacciones Son mejores para visualizar patrones de colaboracion Son mejores para visualizar todos los efectos en un objeto dado
Flujo Alterno 1
Flujo Alterno 2
Flujo Alterno 3
Describiendo Responsibilidades
Que son Responsabilidades?
Una responsabilidad es un enunciado o frase que describe algo que se puede solicitar a un objeto para que lo provea. Las responsabilidades se identifican en el Analisis de CU y evolucionan en una o mas operaciones de clases en el Modelo de Analisis. Se pueden caracterizar asi: Las acciones que un objeto puede realizar El conocimiento que un objeto mantiene de si mismo y provee a otros objetos Las responsibilidades son derivadas de los mensajes en los diagramas de interaccion. Para cada mensaje, debe examinarse la clase a la que este se envia, y si no existe una responsabilidad que cumpla con lo que requiere el mensaje, esta se debe crear. En los VOPCs y diagramas de clases del modelo de Analisis, debe indicarse que una responsabilidad es tal anteponiendo // a su nombre, al igual que como se hace con los mensajes en los diagramas de interaccion.
Describiendo Responsibilidades
Como se encuentran las responsabilidades?
Diagrama de Interaccion
:Cliente // ejecutarResponsabilidad :Suplidor
Diagrama de Clases
Suplidor // ejecutarResponsabilidad
(contina)