Fundamentos Uml Por Alberto Taboada Jimnez

52
LibrosDigitales.Net GrapPeruSoft.com Página 1 UML Unified Modeling Language Alberto Taboada Jiménez [email protected] Edición 1.0 ? Conceptos Básicos ? Diagramas UML ? Patrones ? Rational Rose ? Desarrollo de Caso Practico

Transcript of Fundamentos Uml Por Alberto Taboada Jimnez

Page 1: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 1

UML Unified Modeling Language

Alberto Taboada Jiménez [email protected]

Edición 1.0

? Conceptos Básicos ? Diagramas UML ? Patrones ? Rational Rose ? Desarrollo de Caso

Practico

Page 2: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 2

Presentación El presente Trabajo comprende tres partes: Aprendizaje de Diagramas de UML & Patrones, Construcción de Artefactos usando Rational Rose y Desarrollo de Caso usando UML. La primera parte: Aprendizaje de Diagramas UML & Patrones comprenderá explicar los conceptos básicos del UML, para luego aprender a construir los diferentes diagramas de modelado tal como: Diagramas de Clases que nos van a permitir plasmar el dominio de un determinado mundo real identificando los objetos con sus asociaciones, diagramas de estado que nos va a permitir graficar el comportamiento de las clases. Los diagramas de Secuencia y diagramas de colaboraciones que son también conocidos como diagramas de interacciones permitirán mostrar los mensajes entre los objetos de un determinado proceso, diagrama de casos de Uso que son tal vez los artefactos más conocidos dentro de UML nos permitirán identificar los procesos de negocios, diagramas de componentes mostrarán de que manera se estructurarán los archivos (*.dll) para el diseño del software y formarán estos últimos parte del modelo del diseño, Diagramas de distribución identificarán los dispositivos físicos de cómo se implantará el sistema de información. También en esta parte se estudiaran los principales patrones del UML, que son reglas a considerar para el diseño de clases y nos encaminan a la asignación de las responsabilidades a las clases. La parte de construcción de Artefactos usando la herramienta Case Rational Rose, Permitirá al usuario construir los modelos usando la herramienta de forma tutorial e interactivo con la ayuda del manual, para llegar a tener el Punto de partida para la construcción de los componentes y dejarlos listos para la migración a Java Script, Visual C++, Oracle, Visual Basic entre otros. En la última parte del Libro se explicará el desarrollo de un caso de un Centro Educativo, Usando UML, para este propósito se aplicará la metodología Grapple (Guías para la Ingeniería de Aplicaciones Rápidas), y de esta manera podrá observar las actividades de las fases de cómo aplicar UML en el proceso de desarrollo de un caso Practico teniendo en cuenta la etapa de Recopilación de necesidades, en esta se definen los pasos a seguir para desarrollar esta fase ya que en muchos de los casos puede ser engorrosa cuando no se encuentra un medio de comunicación con el cliente al cual se le va a desarrollar el sistema, A continuación se interpreta el análisis, es aquí donde se reafirmará el estudio del conocimiento de los procesos, Luego se explica el diseño del sistema donde se tomará Referencia a los patrones y su importancia para definir las operaciones a cada una de las clases que agrupadas formarán los componentes. El Desarrollo y distribución se estudiará en la próxima edición titulada UML-Rational Rose –Visual Basic.

El autor

Page 3: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 3

Contenido Presentación Contenido Parte I Diagramas de UML & Patrones Capitulo I Conceptos Básicos Antecedentes Principios de UML Historia de Metodologías e importancia de UML Conceptos Básicos Clase, abstracción, herencia Polimorfismo, encapsulamiento, envío de Mensajes, asociaciones Agregación, composición Capitulo II Notación Básica UML ¿Qué es un paquete? Estereotipo Restricciones Notas Adjuntas Diagramas UML Diagramas de Clases Asociaciones, clases de asociaciones, multiplicidad Herencia, agregación y composición Diagramas de Casos de Uso Actor, Caso de Uso, consideraciones Diagramas de Secuencia, nomenclatura ejemplos Diagrama de Colaboraciones Notación, ejemplos Diagrama de Actividades Notación, ejemplos Diagramas de Componentes Notación, ejemplos Diagramas de Distribución Notación, ejemplos

Page 4: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 4

Contenido Capitulo III Patrones UML Contenido ¿Qué es un patrón? Importancia de los Patrones Creadores ¿Qué es un contrato? Algunos Patrones El Experto El Creador Bajo Acoplamiento Parte II Rational Rose Capitulo IV Creación de Diagramas UML con Rational Rose Definición de Rational Rose Creación de Paquetes Creación de Diagramas de Caso de uso Creación de Diagramas de Secuencia Creación de Diagrama de colaboración Creando Diagramas de Clases Creación de Diagramas de Estados Creación de Diagramas de Actividades Creación de Diagramas de Componentes Creación de Diagramas de Distribución Parte III Desarrollo de Caso Practico Capitulo V Caso de Escuela Metodología GRAPPLE Pasos a Seguir para el desarrollo de aplicaciones mediante Grapple usando la notación UML Capitulo VI Recopilación de Necesidades Descubra los procesos del negocio Proceso de Matricula Proceso de Evaluación Elaboración del dominio

Page 5: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 5

Contenido Asociaciones del dominio Esquema Preliminar del dominio Identificación de los sistemas Coopetarivos Glosario de Términos Descubra las necesidades Cuadro de problemas y Necesidades Diagrama de Distribución Tentativo Capitulo VII Las Demás Fases de Desarrollo Secuencia en diagramas de las fases a seguir. 65

Page 6: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 6

Parte I Diagramas de UML & Patrones

Capitulo I

Conceptos Básicos

Antecedentes Seguramente habrá observado sistemas de información computarizados y no computarizados, y en un porcentaje mínimo tenemos a los usuarios que están conforme con los programas desarrollados, o tal vez hemos conversado con usuarios que han deseado modificar un sistema integrado y dicho cambio le ha producido el desequilibrio de otras unidades del sistema incorporado, o ha encontrado desarrolladores que sin conocer correctamente los procesos empiezan construyendo formulario tras formulario y desarrollan la aplicación, todo esto conlleva a poder analizar las causas que generan este desequilibrio es el incorrecto análisis de los procesos para la construcción de software de aplicaciones comerciales. Para ello el UML, (Unified Modeling Language), Lenguaje Unificado de Modelado esta compuesto por una gama de diagramas o artefactos, que permiten graficar o tomar una radiografía a los procesos para una interpretación de los mismos desde el punto de vista de usuario como de los desarrolladores de Software, el UML es como que si fuese el Castellano que utiliza un abecedario compuesto de letras, las cuales formaran silabas, palabras, oraciones, párrafos y documentos que contendrán un pensamiento, mediante el castellano Usted podrá escribir una novela, una canción una poesía entres otros, Algo análogo es el UML es un lenguaje el cual usa sus diagramas como que si fuera el abecedario del idioma castellano, y estos servirán para plasmar los procesos de un determinado negocio, para de esta manera construir modelos o maquetas de la interpretación de los mismos entre usuarios y desarrolladores de los sistemas de información. Existiendo para ello un lenguaje común de comunicación, Cuando no se usa la notación UML( conjuntos de Diagramas) se tiene la problemática de no encontrar los términos adecuados, ya que los analistas usan términos informáticos de difícil entendimiento por los usuarios, y por otra parte los desarrolladores no entienden el lenguaje que usan los usuarios del mundo real de estudio. Y la metodología es otra cosa que está muy estrechamente relacionada a UML, una metodología va ha indicar el camino a seguir para el desarrollo de sistemas de información. Y existen muchas de ellas tal como: OMT, RUP, OBJECTORY,

Page 7: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 7

FUSION, GRAPPLE, usando la notación UML, Por tal sentido el UML nos deja las puertas abiertas para que cada uno de nosotros pueda implementar un metodología que se acople a nuestras necesidades extrayendo de los diagramas o artefactos UML los que fueran necesarios para la construcción de los modelos del sistema de información a desarrollar. Con UML, usted podrá hacer un análisis y diseño que lo llevarán a la construcción de sistemas orientados a objetos, porque le permitirán pensar a en el ámbito de componentes que son objetos reutilizables que podrán estar comprendidos en archivos dll (librerías Dinámicas) y plasmaran la lógica del negocio correctamente teniendo accesibilidad a los cambios. Principios de UML Siglas de Unified Modeling Language( Lenguaje Unificado de Construcción de modelos) El UML es resultado de estudios de parte de Grady Booch, James Rumbaugh e Ivar Jacobson, estos señores se le apodado como los “tres amigos”, cada uno de ellos en los años ochenta trabajaron en empresas distintas con sus propias metodologías de análisis orientada a objetos predominando entre sus competidores, sin embargo a mediados de los años noventa empezaron a intercambian ideas y emprendieron lo que es hoy es el UML, quienes también fueron creadores de Rational Software Corporation. Después de tantas discusiones fue presentado el proyecto de UML a OMG(grupo de Administración de Objetos) quienes adoptaron a UML como estándar en la industria del software y continua evolucionando. Historia de Metodologías e importancia de UML A un analista o estudiante de análisis le es común seguramente haber observado los siguientes gráficos en la construcción de modelos de negocios.

Figura I.1

FuenteDestino

Proceso 1

Almacén de Datos

Flujo de da tos 4

Flujo de da tos 1

Flujo de datos 2

F luj o d e d ato s 5

Proceso 2 Flujo de datos 3

Page 8: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 8

Algún tiempo atrás, se utilizaban Diagramas de Flujo de datos(figura I.1) bajo la notación de Yourdon y algunas otras notaciones como las de Gane y Sarson, por mucho tiempo se utilizo para la interpretar procesos esta notación, la cual tenia la dificultad para analizar los niveles de descomposición, debido a que no existía una herramienta que les permitiera graficar bajo la nomenclatura planteada, y otros de los inconvenientes era la revisión de los modelos con los usuarios, no existiendo un lenguaje de entendimiento de los diagramas con el conocimiento del mundo real. Posteriormente y en la actualidad se utiliza IDEF, que es técnica de análisis y diseño de sistemas que son utilizadas para la definición de sistemas, análisis de requisitos y diseño de software, consiste en un conjunto de procedimientos que permiten al analista de sistemas descomponer y comprender mejor las interrelaciones del sistemas y sub-sistemas de los procesos de negocio, paso a paso para explicar el proceso total. Cada actividad es administrada como una transformación de entradas en salidas, tomando control sobre las restricciones y mecanismos o factores de producción consumidos por la actividad bajo el modelo ICOM (Input Control Output Mecanismo)

Figura I.2

De hecho que es una técnica que aporta un conocimiento orientado al punto de vista netamente informático, Pero los clientes a los cuales se les construye los sistemas no comprenden el lenguaje informático, porque el analista tiene que ser el aprendiz de los procesos y no implantador de los mismos y es aquí donde existe un rompimiento en el desarrollo de sistemas Es por ello que el UML es un lenguaje que con la notación de sus diagramas (figura I.3) pretende establecer una comunicación entre el analista de sistemas y el usuario, para que de esta manera se comprendan como los sistemas funcionan, creo que es lo más importante, por que cuando el analista de sistemas logre cubrir

Page 9: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 9

el entendimiento de los procesos podrá idearlos en términos informáticos para la fabricación de los sistemas de información. Y también con la gama de diagramas se pueden considerar los distintos puntos de vista que puedan existir entre los usuarios del sistema a desarrollar y por ende se podrá recopilar en su totalidad las necesidades del negocio.

Figura I.3 Conceptos Básicos Para aprender UML necesitamos conocer los siguientes conceptos Básicos: Clase

Los objetos que tengan los mismos atributos y comportamiento se agrupan en clases. Todos los alumnos tienen una serie de atributos comunes: nombre, apellido Paterno, apellido materno, fecha de nacimiento y un comportamiento común: podemos hacer referencia a un alumno para matricularlo o retirarlo. Los valores de los atributos podrán ser distintos para cada una de ellos, pero todos comparten los mismos atributos y comportamiento (las operaciones que se pueden realizar sobre ellos). Una clase esta representada por el siguiente grafico.

Figura I.4

: SECRETARIA : CLIENTE : REPARTIDOR

BOLETA CONTROL STOCK

PEDIDO

CONSULTA DE PEDIDO

DATOS DE STOCK

P R E C I O S

DATOS_CLIENTE

DATOS CLIENTE

COPIA_BOLETA

COPIA_BOLETA

PROVEEDOR

PED. BALON

COMPRA

ACTUALIZA STOCK

CANCELA FACTURA

ARCHIVA PAGOS FAC.

ADMINISTRADOR

NombredeClase Atributo1 Atributo2 Atributo3 Operacion1 Operacion2

Page 10: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 10

Abstracción Se Refiere a quitar las propiedades y acciones de un objeto para dejar sólo aquellas que sean necesarias Herencia El concepto de herencia se refiere a la compartición de atributos y operaciones basada en una relación jerárquica entre varias clases. Una clase puede definirse de forma general y luego refinarse en sucesivas subclases. Cada clase hereda todas las propiedades (atributos y operaciones) de su superclase y añade sus propiedades particulares. Polimorfismo El polimorfismo permite que una misma operación pueda llevarse a cabo de forma diferente en clases diferentes Por ejemplo, la operación borrar, es distinta para una mota, un corrector y un borrador, pero ambos objetos pueden servir para borrar. Una operación es una acción o transformación que realiza o padece un objeto. La implementación específica de una operación determinada en una clase determinada se denomina método. Encapsulamiento La esencia del encapsulamiento(o encapsulación), es cuando un objeto trae consigo funcionalidad, esta última se oculta Envío de Mensajes Un sistema de Objetos Trabaja en conjunto. Esto se logra mediante el envío de mensajes entre ellos. Un objeto envía a otro un mensaje para realizar una operación, y el objeto receptor ejecutará la operación Asociaciones Los Objetos se relacionan entre sí, de alguna forma. Una Clase puede Asociarse con mas de una clase distinta. La multiplicidad en un importante aspecto de las asociaciones, Indica la cantidad de objetos de una clase que se relacionan con otro objeto en particular de la clase asociada Figura I.5

departamentoCodigoDepartamentonombrenivel

altas()bajas()

trabajadorCodigoTrabajadornombreApellidoPaternoApellidoMaternodirecciondistritoFechaNacimientocodigoDepartamento

Contratar()Liquidar()

1..*1

pertenece

1..*1

D1 SISTEMAS D2 LOGISTICA T01 D1 JUAN

T02 D1 MARIA T002 D2 JOSE

Page 11: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 11

Agregación Es cuando los objetos se integran pero conservan su independencia. Una Pc es un ejemplo de composición ya que sus objetos como el mouse, los parlantes, el teclado, son objetos que pueden sacarse de una computadora a otra. Composición El concepto de composición es similar al de la agregación, pero sus objetos que lo integran no tendrán su independencia, por ejemplo si analizamos una camisa, el objeto compuesto seria un bolsillo de la camisa que no podría integrarse a otra por la diferencia de color, tamaño entre otros.

Figura I.6

AGREGACION es diferente COMPOSICION

UNA PC UNA CAMISA

Page 12: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 12

Capitulo II

Diagramas UML Notación Básica UML ¿Qué es un paquete? Permiten dividir un modelo y reagrupar y encapsular los elementos de modelado y se representa con una carpeta con nombre Cada paquete corresponde a un subconjunto del modelo pudiendo contener clases, objetos, relaciones, componentes y sus diagramas asociados. Figura II.1 como podrá observar un paquete guardará los diagramas representados en iconos de llamadas. Estereotipo

Los estereotipos le permiten tomar elementos propios de UML y convertirlos en otros. La finalidad de un estereotipo es extender a un elemento de UML Y son representados entre dos pares de paréntesis angulares <<estereotipo>>

ventas

Diagramas de Ventas normales

Diagramas de Ventas delivery

Diagramas de Secuencia al Crédito

trabajador

apellidoPaternoapellidoMaternonombredni = 0<<categorizacion>> sueldoedad

contratar()darVacacciones()

Figura II.2 aquí se esta estereotipando al atributo categorización, lo que hace referencia que existe un elemento Uml que habrá de revisar.

Page 13: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 13

Restricciones Es un texto libre bordeado con llaves, texto que especifica una o varias reglas y podrán ir definiendo las reglas de validación para la base de datos. Figura II.3 aplica la regla para que la edad este entre 18 y 58 Notas Adjuntas Se utiliza para agregar una nota descriptiva de la clase, atributo u operación Figura II.4 Las Notas adjunta amplia la identificación de número de Teléfono.

trabajador

apell idoPaternoapell idoMaternonombredni = 0<<categorizacion>> sueldoedad

contratar()darVacacciones()

{edad>=18 y edad<=58}

Equiponumerotiposerie

abrirLinea()cortarLinea()restringirLinea()

El numero de teléfono esta compuesto:codigo de PaísCodigo de RegiónCodigo de ZonaNùmero

Page 14: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 14

Diagramas UML Diagrama de Clases El Diagrama de Clases es el diagrama principal para el análisis y diseño, Un diagrama de clases presenta las clases del sistema con sus relaciones estructurales y de herencia, La definición de clase incluye definiciones para atributos y operaciones, para aprenderá a crear un diagrama de Clases se tiene que conocer las siguientes nomenclaturas tal como: Asociaciones, Es cuando las clases se conectan entre sí para representar una conexión del mundo real. Figura II.5 Una instancia de la clase grupo contiene a instancias de la clase alumno. Clases de asociación Son Clases Creadas en función a los atributos que puedan contener en común de la clase primaria y secundaria que se están asociando Se crea en una asociación de multiplicidad de muchos a muchos, en una asociación binaria y en una asociación tripartita. Figura II.6 Multiplicidad Cada clase tiene instancias y justamente la multiplicidad expresa el numero de combinación en la representación de la asociación de las clases. En la herramienta Rational Rose nos muestra las siguientes opciones para seleccionar la multiplicidad.

a lumnogrupocont iene

Profesor cursoimparte

horario grupodictado al

Clase de Asociación

Page 15: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 15

Figura II.7 Nos indica que un(1) grupo contiene a (*)muchos alumnos. Para las siguientes notaciones de Herencia, cuando nosotros ya hemos definido los conceptos en el capitulo I, sólo mostraríamos los gráficos utilizados.

alumnogrupo

1 *

cont iene

*1

persona

cliente trabajador vendedor

teclado case monitor mouse

equipodeComputo

delantera posterior

manga cuello bolsillosolapera

prendadeVestir

Figura II.8 Herencia

Figura II.9 Agregación

Figura. II.10 Composición

Page 16: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 16

Ejemplo de Diagrama de Clases

II.11. Ejemplo de clases que permiten graficar los objetos del modelo de estudio. Diagramas de Casos de Uso Los Casos de Uso son una técnica para capturar información de cómo un sistema o negocio trabaja actualmente, o de cómo se desea que trabaje, estos diagramas no pertenecen realmente al enfoque orientado a objetos, más bien es una técnica para el modelado de escenarios en lo cual el sistema debe operar. Nomenclatura de los diagramas de caso de uso Actor Caso de Uso

Un actor es un agente, alguien o algo que solicita un servicio al sistema o actúa como catalizador para que ocurra algo actor

NewUseCase

Un Caso de Uso es representado por una elipse y describe una situación de uso del sistema interactuando con actores

cursos

codCursonomnHoras

guardar()eliminar()

notas

codigoAlumnocodCurson1n2n3n4promedio

HallarPromedio()modificarNota()

grupo

codigoGrupoturnogrado

insertar()consultar()eliminar()

alumno

codigoAlumnoApellidoPartApellidoMaternombreAlumno

matricular()asignarClasificacion()

1..*

1

1..*1 1..*1

1

1..*

contiene

adquiere

pertenecen

Page 17: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 17

Exteds Las relaciones Extiende (exteds), pueden ser pensadas como un caso de uso equivalente a herencia, en el cual el caso de uso extendido, herencia y modifica el comportamiento del caso de uso original Use(uses) Se utiliza para eliminar el modelado redundante de buena parte del comportamiento que aparezca en varios casos de uso, la parte del comportamiento puede ser modelado en un caso de uso separado que está relacionado con otros casos de uso mediante la relación “Usa” Cuando se construyen los diagramas de casos de uso no hay que rotular las elipses con las actividades de niveles inferiores, Si no de rotular con nombres de procesos de niveles superiores, ya que estos tendrán una página que describirá la secuencia de los eventos y de esta manera deberán quedar documentados para el trabajo del diseño.

Figura II.12. Caso de Uso del escenario de Ventas

Cliente

Venta Normal

Venta en Rebajas Vendedor

Venta en Oferta

Cada caso de Uso tendrá su página que describirá la secuencia de los eventos desencadenados por el escenario

Page 18: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 18

Diagramas de Estado El Diagrama de Estados permiten modelar el comportamientote una parte del sistema a través del tiempo, Típicamente se elabora un diagrama de Estados para cada clase que tenga un comportamiento significativo, El comportamiento es modelado en términos estado en el cual se encuentra el objeto, qué acciones se ejecutan en cada estado y cuál es el estado al que transita después de un determinado evento Ejemplo: Figura II.13 Con este diagrama de estado se pretende graficar los estados que puede tener un producto Diagramas de Secuencia Los diagramas de Secuencias se podrán representar las interacciones que van ha tener los objetos en un determinado escenario, en un mucho de los casos son utilizados para poder ampliar la explicación un determinado caso de uso.

producto

numerodescripcionPrecioUnitariocantidad

altas()bajas()listar()

En Almacen

Reservado

vendido

alta

Separación con adelanto

cancelado

bajas

Page 19: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 19

Algunas Notaciones Figura II.16 mediante las comunicaciones entre los objetos también se puede considerar estructuras de programación tal como el IF

a b

mensaje

Figura II.14, Es un mensaje de comunicación entre la clase A con la Clase B

a b

mensaje

mensaje

Figura II.15, Es un mensaje asincrónico, no espera la respuesta antes de continuar

a b c

mensaje a

mensaje b

if condicion mensaje aelse mensaje bend if

Page 20: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 20

Figura II.17 Ejemplo de diagrama de Secuencia de atención de un pedido Diagrama de Colaboraciones Estos diagramas son aquellos considerados como hermanos de los diagramas de secuencia, por ser parecidos cumpliendo la misma función de graficar las interacciones entre los objetos de un mundo real, enfatizando, que en los diagramas de colaboraciones se expresan con detalle los mensajes bajo la siguiente nomenclatura. Figura II.18 pueden enviar varios mensajes simples de un objeto a otro identificando su numero de orden.

: SECRETARIA : CLIENTE : REPARTIDOR

BOLETA CONTROL STOCK

PEDIDO

CONSULTA DE PEDIDO

DATOS DE STOCK

PRECIOS

DATOS_CLIENTE

DATOS CLIENTE

COPIA_BOLETA

COPIA_BOLETA

control TV

1: encender

2: apagar

3: cambiarDeCanal

Page 21: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 21

Figura II:19 Mensajes parametizados, mediante estos mensajes se indican los valores que se envían entre los objetos. Figura II.20 Ejemplo de Diagramas de Colaboraciones Diagramas de Actividades Es un diagrama diseñado para mostrar una visión simplificada de los que ocurre durante una operación o proceso Son similares a los diagramas de Flujo. Este diagrama resalta precisamente las actividades, las cuales son representadas por un rectángulo de líneas redondeadas, por lo tanto cada una de las actividades es unida a otra actividad mediante una flecha. Nomenclatura: Inicio Fin de los Diagramas

:TPVD :venta

1: agregarPago(efectivoOfrecido)

cliente vendedor almacen

notadePedido

Diagrama de Colaboración para la Solicitud de un pedido

1: pedido2: consulta(codProducto,cantidad)

3: codProducto,precioUnitario

4: registra(codProducto,descripcion,precioUnitario,Cantidad)

5: montoPedido:=calculo(numNotaPedido)

6: montoPedido

NewState NewState2

Page 22: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 22

Actividad Barras de sincronización Permite separar una transición en dos o más rutas que se ejecuten al mismo tiempo(Es decir de forma Concurrente) Después de separar la transición se unirán con otra barra de sincronización para continuar la secuencia de actividades Figura II.21 Ejemplo de diagramas de Actividades

NewActivity

Escribir Escuchar musica

Page 23: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 23

Diagramas de Componentes ¿Qué es un componente?, Un elemento de Software de un sistema, y se encuentra en el computador, Puede ser una tabla, archivo de datos, archivos ejecutables, biblioteca de vínculos dinámicos, documentos etc., Un componente es la personificación en software de las clases. Si lo vemos desde el punto de vista de la programación un componente agrupará a las clases que son las que representarán la lógica del negocio, Quienes formaran componentes reutilizables, ya que si tomamos como referencia la construcción de un sistema para un negocio pequeño probablemente empiece utilizando una base de datos de Access, y posteriormente se podrá cambiar a Sql-Server y luego a Oracle, por consiguiente estos componentes deben ser reutilizables con cualquiera de los administradores de base de datos seleccionados de acuerdo a los requerimientos. Mediante los diagramas de componentes el jefe del desarrollo podrá hacer referencia a las partes con mayor objetividad con el grupo de desarrollo. Notación de Componente Figura II.22 El presente diagrama de componentes indica que el formulario de mantenimiento estará compuesto por el formularioBusqueda que se encuentra en el componente Herramientas, así como también la clase botonSalir y formulario de busquedaCliente, se encuentran en el mismo componente.

NewPackageSpec2

<<interfaz>>Formulario de Mantenimiento

herramientas::formularioBusqueda

herramientas::botonsalir

herramientas::busquedaCliente

Page 24: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 24

Diagramas de Distribución Permite graficar los componentes de Hardware que contendrá el Sistema, aquí los usuarios podrán tener una simulación de la manera como distribuirá los equipos para la implantación del sistema de forma grafica, es una manera practica para hacer participe al usuario en las decisiones de la ubicación de los equipos y más aun podrá mirar en donde ubicaran a los equipos antiguos que se podrán integrar al sistema. Aquí también se representará las diversas plataformas en ubicaciones distintas del área a implantar el sistema Nodo 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 Figura II.23 Ejemplo de Diagrama de distribución del departamento de Venta.

Nodo

NetfinityServer

Rourter

hub

PC2

Printer

NetfinityRam 256MBHard Disk 40 GBCD 58X

Se imprime factura/Boleta que se genera para el area de almacén, cliente y representante

Ram 120MBHard Disk: 10GBVelocidad:800 MHZFunciones:Realiza un proceso de generar la factura y/o boleta segun los datos de los clientes y orden de pedido

Page 25: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 25

Capitulo III

Patrones UML ¿Qué es un patrón? Cada Patrón describe un problema que ocurre una y otra vez en nuestro entorno y describe la solución para ese problema, de forma que esta solución pueda utilizarse un millón de veces sin tener que hacer dos veces lo mismo. Se puede decir, por lo tanto, que un patrón es como una regla que consta de tres partes donde se expresa, La relación entre cierto contexto, un problema y una solución Importancia de los Patrones Para que sean importante los patrones, después de conocer los procesos del negocio, Usted se va ha encontrar con un conglomerado de operaciones tal como: Generarboleta, imprimirFactura, descontarStock que los obtendrá de la secuencia de eventos de los casos de uso, también va ha tener el diagrama de clases. Entonces los patrones nos van ayudar a asignar las responsabilidades a cada una de las clases formando los procedimientos y/o funciones que tendrán las clases y por lo consiguientes estaremos diseñando un sistema orientado a objetos. Creadores Cuando se inicio la oleada de Uml, participaron varios expertos, cada uno con proyectos de metodología de desarrollo, liderando como son conocidos los “tres amigos”, pero dentro de estos participantes estuvieron: Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides que aportaron las reglas o patrones para UML, a estos señores se les conoce como la Pandilla de los Cuatro (Gang of Four - conocidos por “GoF”) quienes publicaron su Libro Design Patterns en el año de 1995 difundiendo 23 patrones. ¿Qué es un contrato? Booch y Rumbaugh definen la Responsabilidad como “Un contrato u obligación de un tipo o Clase”

producto

codProdnomProdpuProdstockProd

Page 26: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 26

Es aquí donde se documentará las operaciones asignadas a cada una de las clases, las cuales servirán como herramientas para la construcción del sistema orientado a objetos. Formato del contrato Nombre Se coloca el nombre de la operación con sus parámetros si lo

tuviera. Responsabilidades Se definen las responsabilidades que tendrá la operación

Tipo Podrá ser de sistema/usuario...

Referencias Cruzadas Aquí colocará las referencias de los diagramas de donde viene la responsabilidad y adonde va.

Notas

Excepciones

Salida Datos de salida

Precondiciones Condiciones antes de la operación

Poscondiciones Condiciones después de la operación

Patrones GRASP General Responsability Asignment Software Patterns (Patrones Generales de Software para Asignar Responsabilidades ) Patrón El Experto Solución Asignar una responsabilidad al experto en información necesaria para cumplir la responsabilidad Problema ¿Cuál es el principio fundamental en virtud del cual se asigna las responsabilidades en el diseño orientado a objetos? Ejemplo

¿Calcular Gran Total de la Boleta? 1. Total(numeroBoleta)

Boleta DetaBol

2. St= subtotal(numeroBoleta)

Boleta NumeroBol Fecha Total() DetaBol

NumeroBol CodProd Cant PuVenta Importe Subtotal()

Page 27: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 27

Ejemplo de Contrato Para Total Nombre : Total(numeroBoleta) Responsabilidades : Hallar el total de la boleta, para tal caso

deberá sumar los : Importes de la clase Detabol Tipo : Sistema

Referencias Cruzadas : Caso de Uso comprar Producto Notas :

Excepciones : Si él numero de boleta, no existe presentar un mensaje de error Salida Precondiciones : La boleta deberá contener al menor un

producto y deberá estar activa Poscondiciones :

Esta responsabilidad se la asignamos A la clase boleta porque esta delegará suboperaciones a las clases acopladas para que cumplan el fin propuesto. Patrón El Creador Solución Asignarle a la clase B la responsabilidad de crear una instancia de clase A en uno de los siguientes casos

B agrega los objetos A B Contiene los objetos A

Problema ¿Quién debería ser responsable de crear una nueva instancia de la alguna clase? El ejemplo explica quien tiene la responsabilidad de ingresar una instancia a la clase DetaBol, aplicando este patrón la tendrá la clase boleta. Ejemplo de Patrón Creador

Boleta

Boleta NumeroBol Fecha Total() InsertaProductoDetaBol

InsertarProductoDetabol(numeroBoleta,CodPro,Cantidad)

Se Hace Uso del Concepto de Agregación

DetaBoleta

Page 28: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 28

Contrato Nombre : InsertaProductoDetaBol Responsabilidades : Crear una instancia para el Detalle de la boleta, dicha responsabilidad la tendrá que hacer la boleta, porque se puede aplicar el concepto de agregación Tipo : Sistema

Referencias Cruzadas : Caso de Uso comprar Producto Notas : Excepciones : Si el código del producto no existe no podrá ingresarse Salida Precondiciones : Para poder ingresar una instancia deberá ser Producto.stock mayor o igual a la cantidad ingresada Poscondiciones :

- Después de ingresar el registro en el detalle de Boleta - Deberá descontar de Producto.stock la cantidad del registro ingresado.

Patrón Bajo Acoplamiento Solución Asignar una responsabilidad para mantener Bajo Acoplamiento Problema ¿Cómo dar soporte a una dependencia escasa y a un aumento de la reutilización? El Acoplamiento es una medida de fuerza con que una clase está conectada a otras clases, con las que conoce y con las que recurre a ellas Ejemplo de Bajo Acoplamiento

La operación ActualizaStock, funcionará de la siguiente manera el primer parámetro identifica al código del producto, el segundo a la operación de agregar o quitar (“+,”o ”-”) y el tercer parámetro a la cantidad a operar, aplicando el Patrón Experto le asignaríamos la responsabilidad a la boleta, pero no le podríamos recargar con muchas operaciones a la boleta, en tal sentido por el patrón de Bajo acoplamiento le asignaremos a la clase producto para que de esta manera sea reutilizable, dicha operación de ActualizaStock podría servir para la compra como para venta de cada una de las instancias de la clase producto.

Producto

Boleta DetaBol

ActualizaStock(CodProducto,operación,Cantidad)

Page 29: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 29

Parte II Rational Rose

Capitulo IV

Creación de Diagramas UML en Rational Rose

Definición de Rational Rose Es la herramienta Case que comercializan los desarrolladores de UML y que soporta de forma completa la especificación del UML. Versiones: Rational Rose 94, Rational Rose 98, Rational Rose 2000 Esta herramienta propone la utilización de los diferentes tipos de modelos para realizar un diseño de sistemas, utilizando una vista estática y otra dinámica de los modelos del sistema, uno lógico y otro físico. Permite crear y refinar estas vistas creando de esta manera un modelo completo que representa el dominio del problema y el sistema de software. Figura IV.1 Interfaz Principal De la Aplicación Creación de Paquetes

(Leer Capitulo II Paquetes)

a) Con el botón derecho del ratón y estando en el navegador sobre el paquete de la vista lógica, haga clic en NEW-PACKAGE y cree un paquete que se llame SISTEGAS

Page 30: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 30

Figura IV.2 Creación de Paquetes b) Estando sobre el paquete recién creado haga clic con el botón derecho y cree

dos paquetes que se llaman COMPRAS Y VENTAS, estos se crearán como paquetes dentro del paquete SISTEGAS

c) Repita las operaciones para que cree los siguientes subpaquetes que pueda

tener. Figura IV.3 Diagrama de Paquetes

Page 31: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 31

Creación de Diagramas de Caso de Uso a) Sobre el paquete COMPRAS presione el botón derecho del mouse, enfoque

New y luego enfoque Use Case Diagram, creado el diagrama caso_comp, Haga doble clic en el icono del diagrama e introduzca el caso del uso estudiado.

Figura IV.4 Creación de Diagramas de Caso de Uso

b) Sobre el paquete VENTAS presione el botón derecho del mouse, enfoque

New y luego enfoque Use Case Diagram, creado el diagrama caso_ventas, Haga doble clic en el icono del diagrama e introduzca el caso del uso estudiado.

Figura IV.5 Segundo Diagrama de Caso de Uso

Page 32: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 32

Para Designar los estereotipos se hace doble clic sobre el objeto y se tendrá. Figura IV:6 Creación de estereotipos Creando los diagramas de Secuencia a) Ubíquese sobre el paquete que desea crear el diagrama de secuencia, en nuestro caso, ubicar el puntero sobre el paquete VENTAS, presionar el botón derecho del mouse, enfoque New y luego enfoque Sequence Diagram, creado el diagrama Sec_Local, Haga doble clic en el icono del diagrama y dibuje el diagrama jalando los actores existentes de la lista. Figura IV.7. Diagramas de Secuencia para pedido

Page 33: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 33

Figura IV.8 Diagrama de Secuencia para venta a domicilio

Creación de Diagrama de colaboración Haga clic al Diagrama de secuencia y luego seleccione la opción browse del menú principal y a continuación haga clic a la opción Create Collaboration Diagram

Figura IV.10 A continuación Obtendrá el siguiente

Diagrama de Colaboración.

Figura IV.9 Ubíquese en el diagrama de secuencia

Page 34: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 34

Creación de Diagramas de Clases

a) Crear el paquete Paq_clases en la vista lógica (Logical View)

Figura IV.11

b) Dentro de este paquete (Paq_clases) crear las clases: Cliente, proveedor, boleta, repartidor, control_stock, secretaria, hoja_pedido, producto y factura.

c) Crear el Diagrama de Clases llamado “Diagrama_clases” dentro del paquete creado.

Figura IV.12 Para establecer las cardinalidades de cada una de las clases se hace doble clic a la línea de la asociación y se tiene el siguiente cuadro de dialogo:

Page 35: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 35

Figura IV.13 Dentro de este paquete Crear el siguiente Diagrama

Figura IV.14

Page 36: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 36

d) A cada una de las clases se le agregan los atributos y operaciones, según vaya avanzando con la construcción de modelo de la siguiente manera:

Figura IV.15 Creación de Diagrama de Estados (STATECHART DIAGRAM)

a) Crear el Paquete de Comportamiento de Clases b) Ejemplo Crear el Diagrama de Transición de Estados para la Clase Producto.

producto

numerodescripcionPrecioUnitariocantidad

altas()bajas()listar()

Page 37: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 37

Figura IV.16 Diagrama de Estados de la clase Producto

Creación de Diagramas de Actividades El diagrama de Actividades le permitirá mostrar una visión simplificada de los ocurre durante una operación o proceso.

a) Seleccionar de la Vista y crear el Diagrama “Activity Diagram” b) Seleccione las herramientas para la construcción del Diagrama.

Figura IV.17 Diagrama de Actividades

En Almacen

Reservado

vendido

alta

Separación con adelanto

cancelado

bajas

Page 38: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 38

Creación de los Diagramas Componentes

a) Ubíquese en Vista de Componentes y haga lo Siguiente,

Figura IV.18 Pasos para crear Diagrama de componentes

b) Crear al siguiente Diagrama de Componentes

Figura IV.19 Diagrama de Componentes

conexionesaBasedeDAtos

promociones.DLL

ControlesUsuarios.OCX

interfazVenta

Page 39: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 39

Creación de diagrama de Distribución

a) Ubíquese en el menú mostrado

Figura IV.20 Diagrama de Distribución

PCventas

ImpresoraLx-300

PCAdministración

S W acceso a

conexión de Punto a Punto

Ubíquese en la Vista Deployment View y haga doble clic para que construya el diagrama de distribución.

Page 40: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 40

Parte III Desarrollo de Caso Practico

Capitulo V

Caso Practico de Escuela Metodología Grapple Hasta lo que va de la explicación del presente libro solo se ha mencionado la notación del UML, más no de la metodología, por consiguiente Grapple(Guías para la Ingeniería de Aplicaciones Rápidas), Son un conjunto de ideas adaptables y flexibles mediante a cual se muestra el camino para mostrar al UML dentro de un contexto. Pasos a Seguir para el desarrollo de aplicaciones mediante Grapple usando la notación UML 1.Recopilación de necesidades

Descubra los procesos de negocios Realice un análisis del dominio Identifique los sistemas cooperativos

Descubra las necesidades del sistema Presente los resultados al Cliente 2. Análisis

•Compresión del uso del sistema Hacer realidad los casos de uso •Depurar los diagramas de clases •Analiza los cambios de estado de los objetos •Define la comunicación entre objetos

3.Diseño •Desarrollo y depuración de los diagramas de objetos •Desarrollo de los diagramas de Componentes •Planeación para la distribución •Diseño y prototipo de la interfaz del usuario

•Pruebas de Diseño •Inicia la documentación

4.Desarrollo

? Generación del código ? Verificación del Código ? Generación de Interfaz del Usuario, conexión con el código y prueba ? Consumación de la documentación

Page 41: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 41

5.Distribución ? Planeación para copias de seguridad y recuperación ? Instalación del sistema terminado en el Hardware adecuado ? Verificación del sistema instalado ? Celebración

Desarrollo de Caso Practico de Escuela Mediante el caso de ejemplo se pretende dar una idea de cuáles son los pasos a seguir para aplicar UML con la metodología GRAPPLE. Dejando alguno puntos pendientes para la próxima publicación.

Capitulo VI

Recopilación de Necesidades Descubra los procesos del negocio Después de realizar las Sesiones Conjuntas de Desarrollo (JAD), y utilizando las técnicas de la entrevista, observación, entre otras, encontrando que debería sistematizar dos procesos que ha continuación se describen. Proceso de Matricula Puede ser iniciado por un solicitante de vacante o un alumno que pertenezca al centro educativo. En el caso de ser solicitante de Vacante tiene que llenar el FUT (Formulario Único de Trámite), luego se verifica en el cuaderno de vacantes la capacidad del colegio para aceptar a los alumnos, de tener cupo registra los datos del FUT en el Cuaderno de Vacantes, en caso de no tener cupo rechaza el FUT y aborta la matricula. En este Proceso también se aceptarán las ratificaciones por parte de los alumnos que se encuentren cursando estudios, quienes deberán entregar la libreta de notas y el acta de recuperación si hubiese tenido cursos por subsanar, al ser solicitante de Vacante se le pedirá documentos (certificado de estudios), para ambos casos se evaluarán los documentos, de estar conforme se le matricula, en caso contrario se devolverán los documentos y se abortará el proceso.

Page 42: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 42

Figura V.1 Diagrama de Actividades del Proceso de Matricula Proceso de Evaluación Se realiza en el mes de diciembre del año lectivo y en el mes de marzo del año siguiente. En diciembre se identifica el nivel de estudios del alumno, Nivel primario sucede lo siguiente: sé evalúa el resultado y se clasifica en: Alumno de I ciclo(1er y 2do grado) no interesa las notas porque que todos son registrados como aprobados.

inicio iniciarmatricula

Llenar el FUT[ Es solicitante de Vacante ]

Entregar Libretade Notas

[ Es alumno ]

Rechazar Fut

[ no hay cupo ]

RegistrarDatos del Fut

[ si hay cupo ]

Presentar Certificadosde Estudios

Presentar Acta deRecuperación

[ Tiene cursos por subsanar ]

EvaluarDocumentos

[ ningun curso desaprobado ]

DevolverDocumentos

[ no es conforme ]

Realizarmatricula

[ conforme ]

fin

Page 43: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 43

Alumno de II ciclo (3ro y 4to grado), aprueba todas las áreas, de ser cierto se registra como aprobado, y de desaprobar uno de los siguientes cursos: Comunicación integral, Lógico Matemático, Personal social, Ciencia y Ambiente, se registrará como alumno que requiere recuperación. De tener los cursos desaprobados de: comunicación Integral, Lógico matemático a la vez, se registrará como desaprobado(repítete). Alumno de III(5to y 6to grado) si tiene menos de 3 asignaturas desaprobadas pasará a recuperación y de ser lo contrario desaprobara el grado, si aprueba todas las asignaturas pasará a registrase como aprobado Nivel Secundario se registra las siguientes condiciones: Aprueba todas las asignaturas se le asigna la situación de aprobado Obtiene promedios menores de 11 en 4 asignaturas se registrará como desaprobado(repítete) Obtiene promedios menores de 11 hasta en 2 asignaturas se registra que necesita recuperación. Figura V.2 Diagrama de Actividades del Proceso de Evaluación

i n i c i o ident i f icar Nivel de Es tud io

Evaluar Resu l tados

[ e s n i v e l s e c u n d a r i o ]

aprobado

[ aprobo todos l os

recuperac ion

[ p r o m e d i o < 1 1 e n 2 c u r s o s ]

desaprobado

[ promedio <11 en 4 cu r sos ]

I c iclo

II ciclo

III ciclo

aprobado[ aprueba todas los cursos ]

[ a p r u e b a t o d o s l o s c u r s o s ]

Recuperac ión

Desaprobado

s i desa rpueba uno de l os s igu ien tes cu rsos :Comunicacón in tegra lL ó g i c o m a t e m á t i c oPersona l Soc ia lC ienc i a y amb ien te

Tiene 2 cursos D e s a p r o b a d o s :Comunicac ión In tegra lLóg i co Ma temá t i co

Aprobado

[ aprueba todos l os

cu r sos ]

Recupe rac ión

[ t i e n e 3 c u r s o s

d e s a p r o b a d o s

Desaprobado

[ cu r sos desaprobados>3 ]

fin

[ es n ive l p r imar io ]

Page 44: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 44

Labores de la Secretaria También nos comentaba que la secretaria al final de cada año, realiza el proceso de elaborar las estadísticas de la situación de los alumnos. Cuadro de estadística de primaria según edades y grado Estadísticas según estado de matricula. Retirados por grado de estado y sexo. Resultados del ejercicio a marzo. Resultados del ejercicio a Diciembre Consulta de situación de ejercicio a marzo. También se le encarga de construir las Actas de matriculados que presentará al ministerio de educación Elaboración del Dominio Aquí dederán identificar los objetos que están interviniendo en el proceso, todo sustantivo será un objeto, teniendo cuidado que analizando su función en el dominio podrá ser un atributo de uno de los objetos, también deberá identificar las asociaciones entre los objetos encontrados.

solicitanteDeVacante documento

promedios

asignatura

alumno alumnoNivelSecundario

alumnoNivelPrimario

Alumno_III_ciclo

fut

Secretaria

estadística

EstadisticadeSituaciondelAlumno

EstadisticaResultadosDiciembre

CertificadoEstudios ActadeMatriculados

libretaDeNotas

actadeRecuperacion

niveldeEstudio

Alumno_II_ciclo

cuadernoDeVacante

EstadisticaRetiradosxGradoSexo

EstadisticaResultadosMarzo

Page 45: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 45

Asociaciones del Dominio Al SolicitanteDeVacante le pertenecen los documentos El alumno presenta los documentos El documento podrá ser libreta de Notas o acta De Recuperacion, certificados Estudios Tanto la libretadeNotas o actaDeRecuperacion tienen promedios y estos mismos Tienen asignaturas El fut lo llena el solicitanteDeVacante El fut se registra en el cuadernodeVacante La secretaria recepciona el fut La secretaria elabora las estadísticas, las cuales podrán ser:

Estadistica según Estado de Matricula Estadistica Resultados Ejercicio Marzo Estadisticas De Situacion del Alumno Estadisticas de Retirados x Grado y Sexo Estadistica Resultados Diciembre

El alumno tiene su nivel De Estudio y este se clasifica en alumno Nivel Primario y alumno Nivel Secundario, el alumno Nivel Primario se divide en:

Alumno_I_ciclo, alumno_II_ciclo,alumno_III_ciclo La secretaria emite las actas de Matriculados

Alumno_I_ciclo EstadisticaDeEstadosMatricula

Page 46: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 46

Esquema Preliminar del dominio (no es el definitivo)

Este diagrama será considerado para tener una visión panorámica de los limites de desarrollo, para de esa manera elaborar el presupuesto y otros.

Figura V.3 Diagrama Preliminar del dominio del Problema

niveldeEstudio

alumnoNivelPrimario

alumno_I_ciclo

alumno_II_ciclo

alumno_III_ciclo

alumnoNivelSecundario

estadisticasDeSituaciondelAlumno

estadisticasegunEstadodeMatricula

estadisticasdeRetiradosxGradoySexo

EstadisticaResultadosEjercicioMarzo

EstadisticaResultadosDiciembre

estadistica

secretaria

elabora

cuardenodeVacante

fut

1..* 11..* 1

recepciona

registra

solictanteDeVacante

1

1

1

1

se encuentra

alumno

documentospresenta

pertenecen

libretaDeNotasActaDeRecuperacion

asignaturapromedios1..*

1

1..*

1

tienentiene

1..*1

1..*1

posee

certificadodeEstudios

Page 47: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 47

Identificación de los sistemas Coopetarivos Aquí debemos identificar las unidades orgánicas que están inmensas en el dominio que se estudia. Figura V.4 Organigrama Identificando las Áreas de Estudio Glosario de Términos Termino Descripción Acta de Matriculados Documento que se envía al ministerio de educación Acta de Recuperacion Es el documento que presentan los alumnos cuando ya aprobaron una

de las asignaturas que viene de la recuperación Alumno Estudiante que al menos haya cursado un año de estudios en el colegio Alumno_I_ciclo Agrupa a los alumnos del 1ro y 2do grado de primaria Alumno_II_ciclo Agrupa a los alumnos del 2do y 3er grado de primaria Alumno_III_ciclo Agrupa a los alumnos del 5to, y 6to grado de primaria Alumno Nivel Primario Representa al alumno del nivel primario Alumno Nivel Secundario Representa al Alumno del nivel Secundario. Asignatura Identifica a las asignaturas impartidas en el colegio Certificado de Estudios Documento que contiene las notas del solicitante de Vacante. Cuaderno de Vacante Cuaderno en la que la secretaria anota todas las solicitudes emitidas

mediante el fut Documento Es aquel objeto que podrá ser una libreta de Notas y/o Acta de

Recuperación Estadistica Resultados Diciembre Muestra los resultados de las evaluaciones del mes de diciembre Estadistica Resultados Ejercicio Marzo

Muestra los resultados de las evaluaciones del mes de marzo

Estadisticas Generaliza a:

Dirección

Departamento de Evaluaciones

Subdirección

APAFA

Dirección académica

Orientación al estudiante

Secretaria

En esta unidad orgánica que realizan las matriculas

Page 48: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 48

Estadistica según Estado de Matricula Estadistica Resultados Ejercicio Marzo Estadisticas de Situacion del Alumno Estadisticas de Retirados x Grado y Sexo Estadistica Resultados Diciembre

Estadisticas de Retirados x Grado y Sexo

Presenta la cantidad de alumnos retirados por grado y sexo según el nivel de estudio

Estadisticas De Situacion del Alumno Estadística de situación con respecto a la evaluación del alumno. Estadistica según Estado de Matricula

Estadísticas que contiene los estados de matricula de los alumnos, si son promovidos reentrantes u otras características.

Fut Formulario único de Tramite, formulario que el colegio entrega para poder hacer una transacción en el colegio

Libreta de Notas Documento que tiene las notas de los alumnos Nivel de Estudio Agrupa a alumno Nivel Primario y Alumno Nivel Secundario Secretaria Trabajadora del colegio Solicitante De Vacante Alumno de otro centro educativo que viene a solicitar vacante para

estudiar en el colegio Descubra las necesidades Aquí Irán descrubiendo las necesidades identificando las inquietudes de cada uno de los actores del negocio que se investiga. Para tal caso se entrevisto a un solicitante de vacante del colegio, y a uno de los alumnos que en un determinado momento fue solicitante y nos sugería que el FUT sea un medio para poder llevar los datos a una computadora que podría estar en la subdirección, ya que es aquí donde se realiza el proceso de matricula. Este programa consultaría directamente a los datos de vacantes análogo al manejo de los cuadernos, para determinar de forma automáticamente la vacante para el nuevo alumno. También acondicionaría una PC en la unidad orgánica de evaluaciones para realizar el ingreso de notas ya que estas servirán para determinar la situación de evaluación en la matricula. La secretaria desea que las estadísticas que crea al final del ejercicio en el mes de Diciembre así como también en el mes de marzo lo haga una mediante una Pc consultando el almacén de datos de las demás unidades orgánicas de estudios y los pueda tener impreso de forma automática. Cuadro de problemas y Necesidades

Unidad Orgánica

Problema Necesidad o Requerimiento

Sub dirección Proceso manual de atención a vacantes, demora en determinar vacante Secuencia engorrosa al momento de matricular al alumno, ya que tiene que estar buscando sus datos

Modulo de sistema computarizado para la atención de solicitud de vacantes Construir una DB de almacenamiento que permita realizar el proceso de matricula.

Page 49: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 49

Secretaria Dificultad para la elaboración de las nominas de los alumnos, Demora en la elaboración de las estadísticas del mes de Diciembre y marzo, así como también el Acta de matriculados

Modulo de programación para la elaboración de módulos para cada uno de los grupos de los diferentes niveles Modulo que permita el ingreso del requerimiento que muestre los cuadros de las estadísticas y permita imprimirlos

Evaluaciones Trabajo tedioso de estar determinando la situación de evaluación para cada alumno tal como aprobados, desaprobados, requiere recuperación, entre otros

Subsistema de Evaluaciones que permita almacenar los resultados de las notas de cada una de la asignatura que estudia el alumno, así como también determinar la situación de evaluación que tendrá para la matricula.

Figura V.5 Diagrama de Distribución Tentativo

Capitulo VII

Server

Pentium IV 2.8 GHZ

hubsub direccion

PC-Evaluaciones

impresora

Sistema de Registro de Evaluaciones

PC-secretaria

Pentium II 300 MHZHDD 20GBRAM 128 MB

Subsistema de Matricula

Impresora

Page 50: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 50

Las Demás Fases de Desarrollo

Análisis

Casos de Uso

Depuración de los Diagramas de

Estudiar el Comportamiento de los Objetos

Indentificar la comunicación entre los Objetos

Tomar como Referencia los patrones y contratos

Construir los Modelos de Base de Datos

Page 51: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 51

Migrar Clases de Rational Rose a Visual Basic o Software de Desarrollo

Clases migradas

desde Rational

Rose

Desarrollo de los Archivos .DLL, .OCX entre otros

DISEÑO

Construir Los diagramas de Componentes

Planear para la Distribución

Page 52: Fundamentos Uml  Por Alberto Taboada Jimnez

LibrosDigitales.Net GrapPeruSoft.com

Página 52

Distribución

Planeación para copias de seguridad

Instalación del sistema terminado en el hardware

adecuado

Verificación del sistema instalado

Celebración

DESARROLLO

Generación de Código

Verificación de Código

Generación de Interfaz del usuario, conexión con el código y prueba

Consumación de la Documentación