Sei sulla pagina 1di 17

Instituto tecnolgico de Felipe Carrillo puerto

DESARROLLO DE PROYECTOS SOFTWARE


ING. EDUARDO CASTILLO MOO

INVESTIGACION
DESARROLLO ORIENTADO A OBJETOS CON UML

Poot Pool Norma Magali


SEPTIEMBRE 2013

CONTENIDO
INTRODUCCIN ................................................................................................................................... 3 HISTORIA DE LA UML........................................................................................................................... 4 MODELADO VISUAL ............................................................................................................................. 5 POR QU ES NECESARIO EL UML? .................................................................................................... 6 QU ES EL UML? ............................................................................................................................... 6 DIAGRAMAS DE UML .......................................................................................................................... 7 DIAGRAMA DE CASOS DE USO.. ................................................................................................. 8 DIAGRAMA DE CLASES. ................................................................................................................ 8 DIAGRAMA DE OBJETOS. ............................................................................................................. 9 DIAGRAMA DE SECUENCIA. ......................................................................................................... 9 DIAGRAMA DE COLABORACIN. ............................................................................................... 11 DIAGRAMA DE ESTADOS. ........................................................................................................... 12 DIAGRAMA DE ACTIVIDADES. .................................................................................................... 12 DIAGRAMA DE COMPONENTES. ................................................................................................ 13 DIAGRAMA DE DISTRIBUCIN. .................................................................................................. 13 PROCESO DE DESARROLLO ............................................................................................................... 14 CONCLUSIN ..................................................................................................................................... 16 BIBLIOGRAFA .................................................................................................................................... 17

INTRODUCION Para un buen funcionamiento de un sistema, es importante plasmarlo en una representacin grfica, con el fin de conocer los procesos que se ejecutara y las variables que cambiara el estado del mismo. Los desarrolladores tienen que entender la idea y mantenerla en mente mientras se va creando el sistema. Un punto que se toma de gran importancia para lograr xito en la construccin de un sistema es establecer un vnculo entre el quien tiene la idea y el desarrollador. Desde tiempos remotos se ha buscado la forma de hacer una representacin grfica de diseos con el fin de obtener los mejores resultados. Pero no exista una estandarizacin en el cual los diseadores se basen y puedan compartir sus representaciones. Por las dificultades que se presentaba, se cre el Lenguaje Unificado de Modelado (UML) que se ha convertido en ese estndar tan ansiado para representar y modelar la informacin con la que se trabaja en las fases de anlisis y, especialmente, de diseo.

El objetivo de este estndar es plasmar los procesos que interviene en un sistema como todas las fases de un proyecto informtico: desde el anlisis con los casos de uso, el diseo con los diagramas de clases, objetos, etc., hasta la implementacin y configuracin con los diagramas de despliegue. En esta investigacin, se habla desde los inicios de UML hasta en la actualidad, como ha beneficiado o perjudicado los procesos a ejecutar en un proyecto. De igual forma, se menciona la clasificacin. Y como nosotros como futuros ingenieros, o arquitectos, se puede plasmar en una grfica nuestra idea y los hilos de proceso que se lleva a cabo con el objetivo de compartirlas sin mucha dificultad de entendimiento a los mismos.

HISTORIA DE LA UML El lenguaje UML comenz a gestarse en octubre de 1994, cuando Rumbaugh se uni a la compaa Rational fundada por Booch (dos reputados investigadores en el rea de metodologa del software).

El objetivo de ambos era unificar dos mtodos que haban desarrollado: el mtodo Booch y el OMT (Object Modelling Tool ).

El primer borrador apareci en octubre de 1995. En esa misma poca otro reputado investigador, Jacobson, se uni a Rational y se incluyeron ideas suyas. Estas tres personas son conocidas como Los tres amigos. Adems, este lenguaje se abri a la colaboracin de otras empresas para que aportaran sus ideas. Todas estas colaboraciones condujeron a la definicin de la primera versin de UML.

Esta primera versin se ofreci a un grupo de trabajo para convertirlo en 1997 en un estndar del OMG (Object Management Group http://www.omg.org). Este grupo, que gestiona estndares relacionados con la tecnologa orientada a objetos (metodologas, bases de datos objetuales, CORBA, etc.), propuso una serie de modificaciones y una nueva versin de UML (1.1), que fue adoptada por el OMG como estndar en noviembre de 1997. Desde aquella versin ha habido varias revisiones que gestiona la OMG Revition Task Force. La ltima versin aprobada es la 1.4. En estos momentos se est desarrollando una nueva versin en la que se incluirn cambios importantes (principalmente aadir nuevos diagramas) que conducirn a la versin 2.0 planificada para fines del 2002.

MODELADO VISUAL UML es un lenguaje de modelado. Un modelo es una simplificacin de la realidad. El objetivo del modelado de un sistema es capturar las partes esenciales del sistema. Para facilitar este modelado, se realiza una abstraccin y se plasma en una notacin grfica. Esto se conoce como modelado visual.

El modelado visual permite manejar la complejidad de los sistemas a analizar o disear. De la misma forma que para construir una choza no hace falta un modelo, cuando se intenta construir un sistema complejo como un rascacielos, es necesario abstraer la complejidad en modelos que el ser humano Pueda entender.

UML sirve para el modelado completo de sistemas complejos, tanto en el diseo de los sistemas software como para la arquitectura hardware donde se ejecuten.

Otro objetivo de este modelado visual es que sea independiente del lenguaje de implementacin, de tal forma que los diseos realizados usando UML se puedan implementar en cualquier lenguaje que soporte las posibilidades de UML (principalmente lenguajes orientados a objetos).

UML es adems un mtodo formal de modelado. Esto aporta las siguientes ventajas:

Mayor rigor en la especificacin. Permite realizar una verificacin y validacin del modelo realizado. Se pueden automatizar determinados procesos y permite generar cdigo a partir de los modelos y a la inversa (a partir del cdigo fuente generar los modelos). Esto permite que el modelo y el cdigo estn actualizados, con lo que siempre se puede mantener la visin en el diseo, de ms alto nivel, de la estructura de un proyecto.

POR QU ES NECESARIO EL UML? En los principios de la computacin, los programadores no realizaban anlisis muy profundos sobre el problema a resolver, Con frecuencia comenzaban a escribir el programa desde el principio, y el cdigo necesario se escriba conforme se requera. Hoy en da, es necesario contar con un plan bien analizado. Un cliente tiene que comprender qu es lo que har en equipo de desarrolladores; adems tiene que ser capaz de sealar cambios si no se han captado claramente sus necesidades. La clave para crear un sistema muy complejo, est en organizar el proceso de diseo de tal forma que los analistas, clientes, desarrolladores y otras personas involucradas en el desarrollo del sistema lo comprendan y convengan con l.

QU ES EL UML? El UML est compuesto por diversos elementos grficos que se combinan para conformar diagramas. Debido a que el UML es un lenguaje, cuenta con reglas para combinar tales elementos.

La finalidad de los diagramas es presentar diversas perspectivas de un sistema, a las cuales se les conoce como modelo. UML es ante todo un lenguaje. Un lenguaje proporciona un vocabulario y una regla para permitir una comunicacin. En este caso, este lenguaje se centra en la representacin grfica de un sistema.

Este lenguaje nos indica cmo crear y leer los modelos, pero no dice cmo crearlos. Esto ltimo es el objetivo de las metodologas de desarrollo.

Los objetivos de UML son muchos, pero se pueden sintetizar sus funciones:

Visualizar: UML permite expresar de una forma grfica un sistema de forma que otro lo puede entender.
6

Especificar: UML permite especificar cules son las caractersticas de un sistema antes de su construccin. Construir: A partir de los modelos especificados se pueden construir los sistemas diseados. Documentar: Los propios elementos grficos sirven como documentacin del sistema desarrollado que pueden servir para su futura revisin. Aunque UML est pensado para modelar sistemas complejos con gran cantidad de software, el lenguaje es los suficientemente expresivo como para modelar sistemas que no son informticos, como flujos de trabajo (workflow ) en una empresa, diseo de la estructura de una organizacin y por supuesto, en el diseo de hardware.

Un modelo UML est compuesto por tres clases de bloques de construccin:

1. Elementos: Los elementos son abstracciones de cosas reales o ficticias (objetos, acciones, etc.) 2. Relaciones: relacionan los elementos entre s. 3. Diagramas: Son colecciones de elementos con sus relaciones. DIAGRAMAS DE UML

Un diagrama es la representacin grfica de un conjunto de elementos con sus relaciones. En concreto, Un diagrama ofrece una vista del sistema a modelar. Para poder representar correctamente un sistema, UML ofrece una amplia variedad de diagramas para visualizar el sistema desde varias perspectivas. UML incluye los siguientes diagramas: Diagrama de casos de uso. Diagrama de clases. Diagrama de objetos. Diagrama de secuencia. Diagrama de colaboracin.
7

Diagrama de estados. Diagrama de actividades. Diagrama de componentes. Diagrama de distribucin.

DIAGRAMA DE CASOS DE USO Un caso de uso es una descripcin de las acciones de un sistema desde el punto de vista del usuario. Para los desarrolladores del sistema, sta es una herramienta valiosa, ya que es una tcnica de aciertos y errores para obtener los requerimientos del sistema desde el punto de vista del usuario. Esto es importante si la finalidad es crear un sistema que pueda ser utilizado por la gente en general (no solo por expertos en computacin).

A la figura correspondiente al usuario de la lavadora se le conoce como Actor. La elipse representa el caso de uso. El actor (la entidad que inicia el caso de uso) puede ser una persona u otro sistema. Usuario de la lavadora
Lavar ropa

DIAGRAMA DE CLASES Una clase es una categora o grupo de coas que tienen atributos y acciones similares. He aqu un ejemplo: cualquier cosa dentro de la clase Lavadoras tienen atributos como son la marca, el modelo, el nmero de serie y la capacidad. Entre las acciones de las cosas de esta clase se encuentran: agregar ropa, agregar detergente, activarse y sacar ropa. En este ejemplo de la notacin del UML que captura los atributos y acciones de una lavadora. Un rectngulo es el smbolo que representa a la clase, y se divide en tres reas. El rea superior contiene el nombre, el rea central contiene los atributos, y el rea inferior las acciones. Un diagrama de clases est formado por varios rectngulos de este tipo conectados por lneas que muestran la manera en que las clases se relacionan entre s. Lavadora marca modelo nmero de serie capacidad agregar ropa() agregar detergente() sacar ropa()

Los diagramas de clases facilitan las representaciones a partir de las cuales los desarrolladores podran trabajar. A su vez, los diagramas de clases colaboran en lo referente al anlisis. Permiten al analista hablarles a los clientes en su propia terminologa, lo cual hace posible que los clientes indiquen importantes detalles del problema que requieren ser resueltos. DIAGRAMA DE OBJETOS Un objeto es una instancia de clase (una entidad que tiene valores especficos de los atributos y acciones). Su lavadora, por ejemplo, podra tener la marca Laundatorium, el modelo Washmeister, el nmero de serie GL57774 y una capacidad de 7 Kg. En esta figura muestra la forma en que el UML representa a un objeto. Vea que el smbolo es un rectngulo, como una clase, pero el nombre est subrayado. El nombre de la instancia especifica se encuentra a la izquierda de los dos puntos (:), y el nombre de la clase a la derecha. DIAGRAMA DE SECUENCIAS Los diagramas de clases y los de objeto representan informacin esttica. No obstante, en un sistema funcional los objetos interactan entre s, y tales interacciones suceden con el tiempo. El diagrama de secuencias UML muestra la mecnica de la interaccin con base en tiempos. Mi Lavadora: Lavadora

Entre los componentes de la lavadora, por ejemplo, se encuentran: una manguera de agua (para obtener agua fresca), un tambor (donde se coloca la ropa) y un sistema de drenaje. Por supuesto, estos tambin son objetos (como ver, un objeto puede estar conformado por otros objetos).

Qu suceder cuando invoque al caso de uso Lavar ropa? Si damos por hecho que complet las operaciones agregar ropa, agregar detergente y activar, la secuencia sera ms o menos as:
9

1. El agua empezar a llenar el tambor mediante una manguera. 2. El tambor permanecer inactivo durante cinco minutos. 3. La manguera dejar de abastecer agua. 4. El tambor girar de un lado a otro durante quince minutos. 5. El agua jabonosa saldr por el drenaje. 6. Comenzar nuevamente el abastecimiento de agua. 7. El tambor continuar girando. 8. El abastecimiento de agua se detendr. 9. El agua del enjuague saldr por el drenaje 10. El tambor girar en una sola direccin y se incrementar su velocidad por cinco minutos. 11. El tambor dejar de girar y el proceso de lavado habr finalizado.

En la siguiente figura presenta un diagrama de secuencias que captura las interacciones que se realizan a travs del tiempo entre el abastecimiento de agua, el tambor y el drenaje (representados como rectngulos en la parte superior del diagrama). En este diagrama el tiempo se da de arriba hacia abajo.

Se puede caracterizar los pasos 1 y 2 como el estado de remojo, 3 y 4 como el estado de lavado, 5 y 7 como el estado de enjuague y del 8y al 10 como el estado de centrifugado.

10

DIAGRAMA DE COLABORACIN Los elementos de un sistema trabajan en conjunto para cumplir con los objetivos del sistema, y un lenguaje de modelado deber contar con una forma de representar esto. El diagrama de colaboraciones UML, diseado con este fin, se muestra en la siguiente figura. Este ejemplo agrega un cronometro interno al conjunto de clases que constituyen a una lavadora luego de cierto tiempo, el cronometro detendr el flujo de agua y el tambor comenzar a girar de un lado a otro.

11

DIAGRAMA DE ESTADOS En cualquier momento, un objeto se encuentra en un estado en particular. Una persona puede ser recin nacida, infante, adolescente, joven o adulta. Un elevador se mover hacia arriba, estar en estado de reposo o se mover hacia abajo. Una lavadora podr estar en la fase de remojo, lavado, enjuague, centrifugado o apagada. El diagrama de estados UML, que aparece en la figura, captura esta pequea realidad. Tambin muestra las transiciones de la lavadora de un estado a otro.
Lavado Remojo

El smbolo que est en la parte superior de la figura representa el estado inicial y el de la parte inferior el estado final.

Enjuague

Centrifugado

DIAGRAMA DE ACTIVIDADES Las actividades que ocurren dentro de un caso de uso o dentro del
Girar el tambor de un lado a otros 15 minutos

comportamiento de un objeto se dan, normalmente, en secuencia, como en los once pasos del diagrama de secuencias. En la siguiente figura muestra la forma en que el diagrama de actividades UML representa los pasos del 4 al 6 de tal secuencia.
Reiniciar el abastecimiento del agua
Vaciar el agua jabonosa

12

DIAGRAMA DE COMPONENTES El modelo desarrollo de software se realiza mediante componentes, lo que es particularmente importante en los procesos de desarrollo en equipo. Por ejemplo en la siguiente imagen se muestra la manera en que el UML representa un componente de software.

DIAGRAMA DE DISTRIBUCIN El diagrama de distribucin UML muestra la arquitectura fsica de un sistema informtico. Puede representar los equipos y dispositivos, mostrar sus interconexiones y el software que se encontrar en cada mquina. Cada computadora est representada por un cubo y las interacciones entre las computadoras estn representadas por lneas que conectan a los cubos.

Procesador Pequeo servidor Qube 2700WG de Cobalt Networks

Procesador Vectra VL Serie 7

Procesador Dell Dimension XPS R450

13

PROCESO DE DESARROLLO Aunque UML es bastante independiente del proceso de desarrollo que se siga, los mismos creadores de UML han propuesto su propia metodologa de desarrollo, denominada el Proceso Unificado de Desarrollo. El Proceso Unificado est basado en componentes, lo cual quiere decir que el sistema software en construccin est formado por componentes software interconectados a travs de interfaces bien definidos. Adems, el Proceso Unificado utiliza el UML para expresar grficamente todos los esquemas de un sistema software.

Pero, realmente, los aspectos que definen este Proceso Unificado son tres: es iterativo e incremental, dirigido por casos de uso y centrado en la arquitectura:

Dirigido por casos de uso: Basndose en los casos de uso, los desarrolladores crean una serie de modelos de diseo e implementacin que los llevan a cabo. Adems, estos modelos se validan para que sean conformes a los casos de uso. Finalmente, los casos de uso tambin sirven para realizar las pruebas sobre los componentes desarrollados.

Centrado en la arquitectura: En la arquitectura de la construccin, antes de construir un edificio ste se contempla desde varios puntos de vista: estructura, conducciones elctricas, fontanera, etc. Cada uno de estos aspectos est representado por un grfico con su notacin correspondiente. Siguiendo este ejemplo, el concepto de arquitectura software incluye los aspectos estticos y dinmicos ms significativos del sistema.

Iterativo e incremental: Todo sistema informtico complejo supone un gran esfuerzo que puede durar desde varios meses hasta aos. Por lo tanto, lo ms prctico es dividir un proyecto en varias fases. Actualmente se suele hablar de ciclos de vida en los que se realizan varios recorridos por todas las fases. Cada recorrido por las fases se denomina iteracin en el proyecto en la que se realizan varios tipos de trabajo (denominados flujos).
14

Adems, cada iteracin parte de la anterior incrementado o revisando la funcionalidad implementada. Se suele denominar proceso.

Proceso iterativo e incremental

El Proceso Unificado es un modelo complejo con mucha terminologa propia, pensado principalmente para el desarrollo de grandes proyectos. Es un proceso que puede adaptarse y extenderse en funcin de las necesidades de cada empresa.

15

CONCLUSIN Como bien se ha mencionado en el transcurso de la investigacin los diagramas ms interesante o de uso comn son los de caso de uso, clase y secuencia.

El diagrama de casos de usos representa grficamente los casos de uso que tiene un sistema. Se define un caso de uso como cada interaccin supuesta con el sistema a desarrollar, donde se representan los requisitos funcionales.

El diagrama de clases muestra un conjunto de clases, interfaces y sus relaciones. ste es el diagrama ms comn a la hora de describir el diseo de los sistemas orientados a objetos.

En el diagrama de secuencia se muestra la interaccin de los objetos que componen un sistema de forma temporal.

Tambin es importante mencionar que para el logro del xito de un sistema siempre hay que tener en cuenta la relacin que deben tener entre el desarrollador y el quien tiene la idea. De igual forma se tiene que terminar el anteproyecto para que se le haga entrega al cliente y verificar cualquier detalle. En esta etapa se busca mejorar el sistema y que el cliente entienda perfectamente los procesos que se ha representado en la grfica.

Los diagramas son muy necesarias para contar con diversas personas implicadas de un sistema, ya que implica personas las cuales tienen enfoques particulares en diversos aspectos del sistema. El escrupuloso diseo de un sistema involucra todas las posibles perspectivas, y el diagrama UML le da una forma de incorporar una perspectiva en particular. El objetivo es satisfacer a cada persona implicada.

16

BIBLIOGRAFA

APRENDIENDO UML EN 24 HORAS. JOSEPH SCHMULLER. PRENTICE HALL

INTERNET

http://lsi.ugr.es/~ig1/docis/casos%20de%20 uso.pdf http://www.sel.unsl.edu.ar/licenciatura/ings oft2/UML-DiagramaClaseObjeto.pdf http://astreo.ii.uam.es/~jlara/TACCII/5.1_Eje mplos_UML.pdf


http://www.magma.com.ni/~jorge/upoli_um

l/refs/Introducion_UML.pdf

17

Potrebbero piacerti anche