Professional Documents
Culture Documents
Sistema II
Unidad 1: UML.
Unidad 2: Estructura esttica.
Unidad 3: Metadatos.
Unidad 4: Modelo conceptual.
Unidad 5: Diagrama de caso de uso.
Unidad 6: Diagrama de secuencia.
Unidad 7: Diagrama de comunicacin.
1 trabajo de investigacin.
Modelos de Ciclo de Vida.
Las formas de organizar y estructurar la secuencia de ejecucin de las tareas en
las diferentes fases de cada uno de los mtodos puede dar lugar a un tipo de ciclo
de vida diferente; Las principales diferencias entre distintos modelos de ciclo de
vida estn divididas en 3 grandes visiones:
1.-El alcance de ciclo de vida: depende de hasta donde deseamos llegar con el
proyecto.
2.-La cualidad y cantidad de las etapas: que ciclo de vida se escoger y el
proyecto al cual se adaptara.
3.-La estructura y la sucesin de las etapas: si hay realimentacin entre las etapas
y hay libertad para repetirlas.
cada etapa se realiza una o varias revisiones para comprobar si se puede pasar a
la siguiente. Este sirvi de base para el resto de los ciclos de vida.
La planificacin es sencilla.
Ciclo de Vida en V.
Propuesto por Alan Davis, tiene las mismas etapas del ciclo de vida de
cascada solo que a este se le agregaron dos sub-etapas de retroalimentacin
entre la etapa de anlisis y mantenimiento y entre las de diseo y depuracin.
Las
ventajas y
desventajas de este ciclo son las mismas que las de cascada, con el agregado de
los controles entre etapas para lograr una mayor correccin. Este modelo lo
podemos utilizar en aplicaciones simples pero de alta confiabilidad como por
ejemplo en facturacin. Este modelo nos ofrece mayor garanta de correccin al
terminar el proyecto.
Cuando necesitemos realizar una aplicacin que comparta los recursos CPU,
memoria y espacio de almacenamiento, con otras aplicaciones tratando de
mantener un ambiente productivo, este modelo de ciclo de vida es una opcin muy
vlida. El solapamiento de sus etapas nos permite jugar con el modelo de tres
capas ahorrando recursos.
El modelo de tres capas es un modelo de programacin para aplicaciones
de acceso a datos que busca separar la arquitectura del programa en tres capas.
En la capa de datos solo nos preocupamos por el almacenamiento de estos, en la
capa de negocios situamos todas las transacciones y validaciones y en la capa
de presentacin solo encontramos las rutinas de visualizacin e interaccin con el
usuario.
Ciclo de Vida en Cascada con Subproyectos.
Una vez que se ha llegado al diseo arquitectnico, se comprueba que el
sistema se divide en varios subsistemas independientes entre s, sera razonable
suponer que a partir de ese punto cada uno se puede desarrollar por separado y
en consecuencia en paralelo con los dems. Cada uno tendr seguramente fechas
de terminacin distintas. Una vez que han terminado todos se integran y se prueba
el sistema en su conjunto.
Es ideal cuando se cuenta con un plantel numeroso de programadores, es una
ventaja tener ms gente trabajando al mismo tiempo. Pero la desventaja es que
pueden surgir ciertas dependencias entre las distintas subetapas que detengan el
proyecto temporalmente si no es gestionado de manera correcta, es un modelo
donde hay que administrar y poner demasiada atencin a los tiempos.
Hay dos partes en el ciclo de vida, por un lado est el anlisis y el diseo global.
Por otra parte estn los pequeos incrementos, con las fases de diseo detallado,
codificacin y mantenimiento.
Unidad 1.
UML: es un lenguaje grafico que permite modelar, construir y documentar los
elementos que contribuyen un sistema de software orientados a objetos.
Ofrece un conjunto de modelos, estndar utilizado para el diseo de proyectos.
Modelos: representacin abstracta de la realidad.
Nota: UML no describe la implementacin de esos modelos.
2 trabajo de investigacin.
La importancia de modelar en el desarrollo de un sistema.
De acuerdo al tipo de emprendimiento, tanto en su tamao como en
caractersticas necesitara de distintas herramientas, procesos, arquitectura,
recursos humanos y las tecnologas. El truco est en crear el software apropiado y
en imaginar cmo escribir menos en software. Un proyecto puede ser concebido
con respecto a su tamao en un programa pequeo, y crecer enormemente pero
si no se han tenido en cuenta, previamente la arquitectura, el proceso o las
herramientas, este colapse.
El modelado es comn en los proyectos de software exitosos.
El modelado es una tcnica de ingeniera probada y bien aceptada.
Nos ayuda a:
Visualizar a sus usuarios el producto final.
Comprender mejor el sistema.
Comunicar las ideas a otros.
Un modelo puede ser estructural destacando la organizacin del sistema o puede
ser de comportamiento, desatando su dinmica.
3 trabajo de investigacin.
Limitaciones de UML.
Un modelo captura una vista de sistema del mundo real. Es una extraccin de
dicho sistema considerando un cierto propsito, describiendo aspectos relevantes.
Diagramas.
Es una representacin grfica de una coleccin de elementos de modelado.
Diagrama de UML.
Lenguaje Unificado de Modelado (UML,) es el lenguaje de modelado de sistemas
de software ms conocido y utilizado en la actualidad; Es un lenguaje grfico para
visualizar, especificar, construir y documentar un sistema. UML ofrece un estndar
para describir un "plano" del sistema (modelo), incluyendo aspectos conceptuales
tales como procesos de negocio, funciones del sistema, y aspectos concretos
como expresiones de lenguajes de programacin, esquemas de bases de datos y
compuestos reciclados. Es un "lenguaje de modelado" para especificar o para
describir mtodos o procesos. Se utiliza para definir un sistema, para detallar los
artefactos en el sistema y para documentar y construir.
UML significa Lenguaje Unificado de Modelado, no es programacin, solo se
diagrama la realidad de una utilizacin en un requerimiento. Mientras que,
programacin estructurada, es una forma de programar como lo es la orientacin a
objetos, la programacin orientada a objetos viene siendo un complemento
perfecto de UML, pero no por eso se toma UML slo para lenguajes orientados a
objetos.
Cuenta con varios tipos de diagramas, los cuales muestran diferentes aspectos
de las entidades representadas
Tipos de Diagramas de UML:
Diagrama de casos de uso.
Diagrama de objetos
Diagrama que muestra una vista completa o parcial de los objetos de un sistema
en un instante de ejecucin especfico.
Un diagrama de objetos es un grfico de instancias, incluyendo objetos y datos. Es
una instancia de un diagrama de clases; muestra una 'foto' del estado de un
sistema en un punto de tiempo determinado.
Estn ligados a los diagramas de clase y comparten virtualmente los mismos
smbolos para la notacin. Pertenecen a la categora de diagramas estructurales
en UML.
. Se utilizan para mostrar estructuras de datos y las interacciones que existen
entre objetos en tiempo de ejecucin.
Diagrama de comportamiento.
Diagrama de estado
Los diagramas de estado muestran el conjunto de estados por los cuales pasa un
objeto durante su vida en una aplicacin en respuesta a eventos (por ejemplo,
mensajes recibidos, tiempo rebasado o errores), junto con sus respuestas y
acciones. Tambin ilustran qu eventos pueden cambiar el estado de los objetos
de la clase. Normalmente contienen: estados y transiciones. Como los estados y
las transiciones incluyen, a su vez, eventos, acciones y actividades.
Al igual que otros diagramas, en los diagramas de estado pueden aparecer notas
explicativas y restricciones.
El diagrama de flujo o diagrama de actividades.
Es la representacin grfica del algoritmo o proceso. Se utiliza en disciplinas como
programacin, economa, procesos industriales y psicologa cognitiva.
Formato vertical
Formato horizontal
Formato panormico
Formato Arquitectnico
Diagrama de integracin.
Diagrama de secuencia
El diagrama de secuencia es un tipo de diagrama usado para modelar interaccin
entre objetos en un sistema segn UML.
Diagrama de implementacin.
Diagrama de despliegue
El Diagrama de Despliegue es un tipo de diagrama del UML que se utiliza para
modelar la disposicin fsica de los artefactos software en nodos (usualmente
plataforma de hardware.
Los elementos usados por este tipo de diagrama son nodos (representados como
un prisma), componentes (representados como una caja rectangular con dos
protuberancias del lado izquierdo) y asociaciones.
Modelo de Arquitectura.
Arquitectura de tres niveles: Especializacin de la arquitectura clienteservidor donde la carga se divide en tres partes con un reparto claro de
funciones: una capa para la presentacin (interfaz de usuario), otra para el
clculo (donde se encuentra modelado el negocio) y otra para el
almacenamiento (persistencia). Una capa solamente tiene relacin con la
siguiente.
1. Definicin Encapsulamiento.
Se denomina encapsulamiento al ocultamiento del estado, es decir, de los
datos miembros de un objeto de manera que slo se pueda cambiar mediante
las operaciones definidas para ese objeto.
Cada objeto est aislado del exterior, es un mdulo natural, y la aplicacin entera
se reduce a un agregado o rompecabezas de objetos. El aislamiento protege a los
datos asociados de un objeto contra su modificacin por quien no tenga derecho a
acceder a ellos, eliminando efectos secundarios e interacciones.
Formas de encapsular.
1. Estndar (Predeterminado)
2. Abierto: Hace que el miembro de la clase pueda ser accedido desde el
exterior de la Clase y cualquier parte del programa.
3. Protegido: Solo es accesible desde la Clase y las clases que heredan (a
cualquier nivel).
4. Semicerrado: Solo es accesible desde la clase heredada.
5. Cerrado: Solo es accesible desde la Clase.
2. Abstraccin.
La abstraccin consiste en aislar un elemento de su contexto o del resto de los
elementos que lo acompaan. El trmino se refiere al nfasis en el "qu hace?"
ms que en el "cmo lo hace?".
La abstraccin ofrecida por los lenguajes de programacin se puede dividir en dos
categoras: abstraccin de datos (pertenecientes a los datos) y abstraccin de
control (perteneciente a las estructuras de control). Permite que dispongamos de
las caractersticas de un objeto que necesitemos.
3. Herencia.
La herencia es, el mecanismo ms utilizado para alcanzar algunos de los
objetivos ms preciados en el desarrollo de software como lo son la reutilizacin y
la extensibilidad. A travs de ella los diseadores pueden crear nuevas clases
partiendo de una clase o de una jerarqua de clases preexistente (ya comprobadas
y verificadas) evitando con ello el rediseo, la modificacin y verificacin de la
parte ya implementada. Facilita la creacin de objetos a partir de otros ya
4. Polimorfismo.
El polimorfismo se refiere a la propiedad por la que es posible enviar mensajes
sintcticamente iguales a objetos de tipos distintos. El nico requisito que deben
cumplir los objetos que se utilizan de manera polimrfica es saber responder al
mensaje que se les enva.
La apariencia del cdigo puede ser muy diferente dependiendo del lenguaje que
se utilice, ms all de las obvias diferencias sintcticas.
En lenguajes basados en clases y con un sistema de tipos de datos fuerte
(independientemente de si la verificacin se realiza en tiempo de compilacin o de
ejecucin), es posible que el nico modo de poder utilizar objetos de manera
polimrfica sea que compartan una raz comn, es decir, una jerarqua de clases,
ya que esto proporciona la compatibilidad de tipos de datos necesaria para que
sea posible utilizar una misma variable de referencia (que podr apuntar a objetos
de diversas subclases de dicha jerarqua) para enviar el mismo mensaje (o un
grupo de mensajes) al grupo de objetos que se tratan de manera polimrfica.
Aun as, en los lenguajes basados en clases, es habitual (y en algunos tal vez sea
el nico modo) que dichos objetos pertenezcan a subclases pertenecientes a una
misma jerarqua. el polimorfismo debe verse como una forma flexible de usar un
grupo de objetos (como si fueran slo uno). El polimorfismo en esencia refiere al
comportamiento de los objetos, no a su pertenencia a una jerarqua de clases (o a
sus tipos de datos).
Clasificacin.
Se puede clasificar el polimorfismo en dos grandes clases:
Unidad 2.
Diagrama de estructura esttica.
El diagrama de estructura esttica muestra el conjunto de clase de objetos
importantes que hacen parte de un sistema, junto con las relaciones existentes
entre esta clase y objetos.
Tambin muestra de una manera esttica la estructura de informacin de sistema
y la visibilidad que tiene cada una de las clases, dadas por sus relaciones con las
dems en el modelo.
El modelo de los objetos.
Permite describir objetos y las relaciones que intervienen en el marco de la
problemtica.
Brinda una descripcin doble.
Una descripcin de la estructura de los objetos y sus caractersticas.
Una descripcin de las asociaciones existentes entre los diferentes objetos.
4 trabajo de investigacin.
EJEMPLO.
5 trabajo de investigacin.
Visibilidad, sintaxis y valor publica, protegida o privada d un atributo.
Identifican las caractersticas propias de cada clase. Generalmente son de tipos
simples, ya que los atributos de tipos compuestos se representan mediante
asociaciones de composicin con otras clases. La sintaxis de un atributo es
Visibility name: Type-expression = initial-value {property-string}
Donde visibility es uno de los siguientes:
+
Public visibility
# Protected visibility
private visibility
6 trabajo de investigacin.
7 trabajo de investigacin.
Asociaciones.
Una asociacin (relacin entre dos clases) se representa como una lnea continua
entre dos Clases, y puede tener el nombre de la relacin sobre esta lnea.
Ejemplo:
Para mostrar que la relacin slo tiene un sentido se muestra con una flecha que
indica el sentido de la relacin. Ejemplo:
Viaje
En este ejemplo un Pasajero conoce el Carro(o carros) con el cual viaja, pero el
Carro no tiene ninguna relacin con los Pasajeros.
Multiplicidad.
Es una restriccin que se pone a una asociacin, que limita el nmero de
instancias de una clase que pueden tener esa asociacin con una instancia de la
otra clase.
1. Asociacin binaria
2. Asociacin n-aria
3. Composicin
4. Generalizacin
5. Refinamiento
Cada asociacin puede presentar algunos elementos adicionales que dan detalle
a la relacin, como son:
Rol: Identificado como un nombres al los finales de la lnea, describe la
semntica de la relacin en el sentido indicado. Por ejemplo, la asociacin
de composicin entre Maquina e Ingrediente recibe el nombre de
existencias, como rol en ese sentido
TIPOS DE ASOCIACIONES.
Agregacin.
La agregacin representa el objeto compuesto. Durante el desarrollo de una
aplicacin se nos presentara la necesidad de crear objetos complejos que no
encajan con los tipos de datos bsicos que proveen los lenguajes: tipo caracteres,
enteros, reales, entre otros. El smbolo de agregacin es un diamante colocado en
el extremo en el que est la clase que representa el todo. Podemos trabajar con
dos tipos de agregacin: Agregacin por Valor y Agregacin por Referencia.
Agregacin por o por valor (Composicin).
El contenedor contiene el objeto en s. Cuando creamos un objeto contenedor, se
crean tambin automticamente los contenidos. Ejemplo:
Composicin.
Es una asociacin fuerte, que implica tres cosas:
Los objetos contenidos no son compartidos, esto es, no hacen parte del
estado de otro objeto.
Se denota dibujando un rombo relleno del lado de la clase que contiene a la otra
en la relacin. Existe tambin una relacin de composicin menos fuerte que es
denotada por un rombo sin rellenar en uno de los extremos. Un ejemplo puede
encontrarse entre Producto e Ingrediente.
Generalizacin.
La relacin de generalizacin denota una relacin de herencia entre clases. Se
representa dibujando un tringulo sin rellenar en el lado de la superclase. La
subclase hereda todos los atributos y mensajes descritos en la superclase.
Herencia.
La herencia es tomar caractersticas y funcionalidades definidas en otras clases.
Ejemplo: Auto hereda de vehculo motorizado. Como gra tambin hereda de
vehculo automotor. Las clases no estn aisladas, sino que se relacionan entre s,
formando una jerarqua de clasificacin. Los objetos heredan las propiedades y el
comportamiento de todas las clases a las que pertenecen. La herencia organiza y
facilita el polimorfismo y el encapsulamiento permitiendo a los objetos ser
definidos y creados como tipos especializados de objetos preexistentes.
La relacin de herencia se representa mediante un triangulo en el extremo de la
relacin que corresponde a la clase mas general o clase padre. Al plantear una
relacin de herencia con varias clases subordinadas, dentro de un diagrama
concreto, no se hace necesario colocarlas todas, podemos representar con
puntos suspensivos. Ejemplo:
Dependencia.
Denota una relacin semntica entre dos elementos (clases o paquetes, por el
momento) del modelo. Indica que cambiar el elemento independiente puede
requerir cambios en los dependientes. Se muestra como una lnea punteada
direccional, indicando el sentido de la dependencia. Puede tener por medio de
estereotipos una explicacin del tipo de dependencia presentada.
Refinamiento.
Es una relacin o asociacin entre dos descripciones del mismo elemento pero a
diferentes niveles de abstraccin.
Nota.
Es un comentario dentro de un diagrama. Puede estar relacionado con uno o mas
elementos en el diagrama mediantes lneas punteadas.
Pueden representar aclaraciones al diagrama o restricciones sobre los elementos
relacionados. Se grafica median5te un rectngulo con su borde superior derecho
doblado.
Clase perimtrica.
Una clase perimtrica representa el concepto de clase genrica en los conceptos
bsicos orientados a objeto. Permite construir colecciones universales con tipo de
parmetros efectivos.
Se grafica como una clase acompaado de un rectngulo en la esquina superior
derecha con los parmetros del caso.
Paquete.
Es una forma de agrupar clases (u otros elementos en otro tipo de diagramas) en
modelos grandes. Pueden tener ocasiones de dependencia o de generalizacin.
Un paquete puede componer varios tipos de entidades (clases, asociaciones,
otros paquetes).
Aquellas que pertenecen al paquete.
Aquellas donde se definen.
Aquellas que son referenciados por el paquete.
Puede representarse en 2 formas:
Esterotipo de interface.
Esterotipo de actor.
Interface
x
<<interface>>
Clase de control.
Entidad.
Interface.
Navegacin: los enlaces pueden ser vistos como canales de navegacin entre los
objetos. Estos canales permiten desplazarse y realizar las formas de colaboracin
que corresponden a los diferentes escenarios.
CLASE A
CLASE B
Dueo
AUTOMOVIL.
PERSONA.
OR
Dueo
EMPRESA.
CLASE DE ASOCIACION.
Algunas veces es til modelar una relacin como una clase.
Por ejemplo:
MURO
Posicin.
X: int
Y: int
VENTANA
PERSONA
SUELDO
TARJETA
EFECTIV
Diagrama de clase.
PERSONA
ASOCIACION
AUTOR
1
DISCRIMINAD
ALUMNO
OR
ATRIBUTOS
ROL
SOLICITA
NAVEGAVILIDAD
LIBRO
OPERACIONES
CLASE
PRESTAMO
NOTA
GENERALIZA
CLASE DE ASOCIACION
MULTIPLICIDAD