Sei sulla pagina 1di 20

Lenguaje estndar para escribir planos de

software. Parte de un mtodo de desarrollo de


software.

Apropiado para:

Sistemas de informacin empresariales


Aplicaciones Distribuidas WEB
Sistemas enbebidos detiempo real, exigentes.

VISUALIZAR
Modelado directo en cdigo.
El texto como medio para escribir

expresiones y algoritmos de forma concisa y


directa.
Comunicacin de modelos sujeta a errores.
Cuestionamientos de construccin.
Implementacin sujeta a errores.

Problema: modelo explcito facilita la

comunicacin.
Modelacin Grfica estructural con su propia
notacin..

ESPECIFICAR

Construir modelos precisos, no ambiguos y completos.


Cubre las especificaciones de todas las decisiones de

anlisis, diseo e implementacin para desarrollar y


desplegar un sistema con gran cantidad de software.

CONSTRUIR

Establece correspondencia directa desde un modelo

UML con Java, C++ o Visual Basic, tablas de BDD o en


BDD orientada a objetos para permitir la ejecucin
directa de modelos, la simulacin de sistemas y
coordinacin de sistemas de ejecucin.
Reconstruir a partir de implementacin.
Ingeniera inversa con herramientas que la soporten e

intervencin humana.
La combinacin de las anteriores produce ingeniera de Ida
y vuelta, para vista textual y grfica.

DOCUMENTAR
Produce

toda clase de artefactos, adems de cdigo


ejecutable, para documentar la arquitectura de un sistema,
proporcionando un lenguaje para modelar actividades de
planificacin de proyectos y gestin de versiones.

Los artefactos son entregables de un proyecto, crticos para

el control, medicin y comunicacin de un sistema en


desarrollo y despliegue.

UTILIZAR ?
Lo suficientemente expresivo para modelar sistemas
que
no
son
software,
como
flujos
de
trabajo(workflows) en el sistema jurdico, estructura
y comportamiento de un sistema de vigilancia
mdica de un enfermo, y el diseo de hardware.

Requiere de tres elementos: los bloques bsicos de


construccin de UML, reglas que dictan como se puede
combinar los bloques bsicos y mecanismos comunes que
aplican con el UML.
Bloques bsicos de UML

Elementos
Estructurales
Nombres de los modelos UML, partes estticas que representan
conceptos o cosas materiales.
Clase: Descripcin de un conjunto de objetos que comparten los
mismos atributos, operaciones, relaciones y semntica.
Interfaz: Coleccin de operaciones que especifican un servicio de una
clase o componente.
Colaboracin: Interaccin y es una sociedad de roles y otros elementos
que colaboran para proporcionar un comportamiento cooperativo
mayor que la suma de los comportamientos de sus elementos.
Caso de Uso: Descripcin de un conjunto de secuencias de acciones
que ejecuta un sistema y que produce un resultado observable de
intereses para un actor particular.
Clase Activa: Clase cuyos objetos tienen uno o ms procesos o hilos de
ejecucin y, por tanto, pueden dar origen a actividades de control.
Componente: Parte modular del diseo del sistema que oculta su
implementacin tras un conjunto de interfaces externas.
Artefacto: parte fsica y reemplazable de un sistema que contiene
informacin fsica.
Nodo: elemento fsico que existe en tiempo

De comportamiento

Partes dinmicas de los modelos UML.


Interaccin:
Maquina de estados
Actividad:
Agrupacin
Partes organizativas de los modelos UML.
Paquete:
Anotacin son las partes explicativas de los modelos
UML
Notas:

Relaciones
Dependencia
Asociacin
Generalizacin
Realizacin

Diagramas

Representacin grafica de un conjunto de


elementos, visualizado la mayora de las
veces como un grafo conexo de
nodos(elementos) y arcos(relacionados).
Tipos:

Clases
Objetos
Componentes
Estructura compuesta
Casos de uso
Secuencia
Comunicacin Estados
Actividades
Despliegue
Paquetes
Tiempos
Diagrama de visin global de
interacciones.

Reglas de UML

Modelo bien formado semnticamente auto consistente y


esta en armona con todos sus modelos.
Reglas sintcticas y semnticas:
Nombres: como llamar elementos, relaciones y diagramas.
Alcance: contexto que da un significado especfico a un nombre.
Visibilidad: Cmo se puede ver y utilizar esos nombres por otros.
Integridad: Cmo se relaciona apropiada y consistente entre

elementos.
Ejecucin: Qu significa ejecutar o simular un modelo dinmico.

Modelos:
Abreviados: ciertos elementos se ocultan para simplificar la vista
Incompletos: pueden estar ausentes ciertos elementos.
Inconsistentes: No se garantiza la integridad del modelo.

Mecanismos comunes en UML

Simplifica
mediante
la
presencia
de
mecanismos comunes que se aplican a todo
lenguaje.
Especificaciones.
Adornos.
Divisiones comunes.
Mecanismos de extensibilidad.

La necesidad de ver los Sistemas Complejos desde

cualquier punto de vista


La Arquitectura es el artefacto ms importante que
puede emplearse para manejar los diferentes puntos
de vista, para controlar el desarrollo iterativo e
incremental de un sistema a lo largo del ciclo de vida
del mismo.
Por qu es importante la Arquitectura?
Un Sistema grande y complejo requiere de la
arquitectura para que los desarrolladores puedan
progresar hasta obtener una visin comn.
Se necesita la Arquitectura para:

Comprender el Sistema
Organizar el desarrollo
Fomentar la Reutilizacin
Hacer evolucionar el Sistema

La organizacin de un sistema software.


La seleccin de elementos estructurales y sus interfaces a
travs de los cuales se constituye el sistema.
Su comportamiento como se especifica en las
colaboraciones entre sus elementos.
La composicin de esos elementos estructurales y de
comportamiento en sistemas ms grandes.
El estilo arquitectnico que sigue la organizacin: los
elementos estticos, dinmicos, interfaces y sus
colaboraciones y su composicin.

La Arquitectura del software no tiene que ver solamente con


la estructura y el comportamiento del software, sino
tambin con el uso, la funcionalidad, el rendimiento, la
capacidad de adaptacin, la reutilizacin, la capacidad de
ser
comprendido,
las
restricciones
econmicas
y
tecnolgicas y los compromisos entre alternativas, as como
los aspectos estticos.

Vista de Casos de Usos.- Esta vista describe el


comportamiento del sistema tal y como es percibido por
los usuarios finales, analistas y encargados de las
pruebas. Esta vista no especifica realmente la
organizacin del sistema.

La Vista de diseo.- Soporta los requisitos funcionales del


sistema, es decir comprende las clases, las interfaces y
colaboraciones que forman el vocabulario del problema y su
solucin.
La Vista de Interaccin.- Esta vista abarca el rendimiento, la
escalabilidad y la capacidad de procesamiento del sistema.
La Vista de Implementacin.- Gestiona las configuraciones
de las distintas versiones del sistema a tra ves de archivos
independientes, que pueden unirse de varias formas para
formar un sistema en ejecucin.
La Vista de Despliegue.- Se ocupa principalmente de la
distribucin, entrega e instalacin de las partes que
conforman el sistema fsico.

UML

es bastante
independiente
del
proceso, lo que significa que no est
ligado a ningn ciclo de vida de desarrollo
de software particular. . Sin embargo,
para obtener el mximo beneficio de UML,
se debera considerar
un proceso que
fuese:

Dirigido por los casos de uso.


Centrado en la arquitectura.
Iterativo e incremental.

Dirigido por los casos de uso.- que los casos de uso se utilizan para
verificar y validar la arquitectura del sistema, para las pruebas y
para la comunicacin
entre las personas involucradas
en el
proyecto.
Centrado en la arquitectura.- se utiliza como un artefacto bsico
para conceptualizar, construir, gestionar y hacer evolucionar el
sistema en desarrollo.
Un proceso
iterativo.- involucra
versiones ejecutables. En conjunto,
incremental est dirigido por el riesgo,
nueva versin se encarga de atacar
significativos para el xito del proyecto.

la gestin de un flujo de
un proceso
iterativo e
lo que significa que cada
y reducir los riesgos ms

Hay cuatro fases en el ciclo de vida del desarrollo de software;


concepcin, elaboracin, construccin y transicin. En el diagrama,
los flujos de trabajo se representan frente a estas fases, mostrando
cmo varia a lo largo del tiempo el nivel de atencin que una fase
presta a un flujo de trabajo.

La concepcin.- es la primera fase del proceso, cuando la idea inicial


para el des- arrollo se lleva al punto de estar (al menos internamente)
suficientemente bien fundamentada para garantizar la entrada en la
fase de elaboracin.
La elaboracin.- es aqu donde se definen los requisitos del producto
y su arquitectura. En esta fase se expresan con claridad los requisitos
del sistema, son priorizados y se utilizan para crear una slida base
arquitectnica.
La construccin.- es cuando el software se lleva des- de una base
arquitectnica ejecutable basta su disponibilidad para la comunidad
de usuarios.
Los recursos se asignan al proyecto de forma apropiada para acometer
los riesgos.
La transicin.- es cuando el software es puesto en las manos de la
comunidad de usuarios. El proceso del software raramente termina
aqu porque, incluso durante esta fase, el sistema es mejorado
continuamente.
Se erradican errores de programacin y se aaden caractersticas
que no se incluan en las versiones anteriores.

Potrebbero piacerti anche