Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1 Tecnologia Orientada A Objetos y Metodlogias Emergentes PDF
1 Tecnologia Orientada A Objetos y Metodlogias Emergentes PDF
Objetos
Clases
Herencia
Envo de mensajes
1. Objetos
Entender que es un objeto es la clave para entender cualquier
lenguaje orientado a objetos.
Existen muchas definiciones que se le ha dado al Objeto. Primero
empecemos entendiendo que es un objeto del mundo real. Un
objeto del mundo real es cualquier cosa que vemos a nuestro
alrededor. Digamos que para leer este artculo lo hacemos a travs
del monitor y una computadora, ambos son objetos, al igual que
nuestro telfono celular, un rbol o un automvil.
Analicemos un poco ms a un objeto del mundo real, como la
computadora. No necesitamos ser expertos en hardware para
saber que una computadora est compuesta internamente por
varios componentes: la tarjeta madre, el chip del procesador, un
disco duro, una tarjeta de video, y otras partes ms. El trabajo en
conjunto de todos estos componentes hace operar a una
computadora.
Internamente, cada uno de estos componentes puede ser
sumamente complicado y puede ser fabricado por diversas
compaas con diversos mtodos de diseo. Pero nosotros no
necesitamos saber cmo trabajan cada uno de estos componentes,
como saber que hace cada uno de los chips de la tarjeta madre, o
cmo funciona internamente el procesador. Cada componente es
=
=
=
Ford
Focus
Azul
4. Envo de Mensajes
Un objeto es intil si est aislado. El medio empleado para que un
objeto interacte con otro son los mensajes. Hablando en trminos
un poco ms tcnicos, los mensajes son invocaciones a los mtodos
de los objetos.
Caractersticas asociadas al POO
Abstraccin
La abstraccin consiste en captar las caractersticas esenciales de
un objeto, as como su comportamiento. Por ejemplo, volvamos al
ejemplo de los automviles, Qu caractersticas podemos abstraer
de los automviles? O lo que es lo mismo Qu caractersticas
semejantes tienen todos los automviles? Todos tendrn una
marca, un modelo, nmero de chasis, peso, llantas, puertas,
variables
mtodos
Encapsulamiento
El encapsulamiento consiste en unir en la Clase las caractersticas y
comportamientos, esto es, las variables y mtodos. Es tener todo
esto es una sola entidad. En los lenguajes estructurados esto era
imposible. Es evidente que el encapsulamiento se logra gracias a la
abstraccin y el ocultamiento que veremos a continuacin.
La utilidad del encapsulamiento va por la facilidad para manejar la
complejidad, ya que tendremos a las Clases como cajas negras
donde slo se conoce el comportamiento pero no los detalles
internos, y esto es conveniente porque nos interesar ser conocer
qu hace la Clase pero no ser necesario saber cmo lo hace.
Ocultamiento
Historia de 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.
Es un lenguaje de modelado visual que se usa para especificar,
visualizar, construir y documentar artefactos de un sistema de
software. Se usa para entender, disear, configurar, mantener y
controlar la informacin sobre los sistemas a construir.
UML capta la informacin sobre la estructura esttica y el
comportamiento dinmico de un sistema. Un sistema se modela
como una coleccin de objetos discretos que interactan para
realizar un trabajo que finalmente beneficia a un usuario externo.
El lenguaje de modelado pretende unificar la experiencia pasada
sobre tcnicas de modelado e incorporar las mejores prcticas
actuales en un acercamiento estndar.
UML no es un lenguaje de programacin. Las herramientas pueden
ofrecer generadores de cdigo de UML para una gran variedad de
lenguaje de programacin, as como construir modelos por
ingeniera inversa a partir de programas existentes.
Construcciones de implementacin:
Los modelos UML tienen significado para el anlisis lgico y para la
implementacin fsica. Un componente es una parte fsica
reemplazable de un sistema y es capaz de responder a las
peticiones descritas por un conjunto de interfaces. Un nodo es un
recurso computacional que define una localizacin durante la
ejecucin de un sistema. Puede contener componentes y objetos.
Mecanismos de extensin:
UML tiene una limitada capacidad de extensin pero que es
suficiente para la mayora de las extensiones que requiere el da a
da sin la necesidad de un cambio en el lenguaje bsico. Un
estereotipo es una nueva clase de elemento de modelado con la
misma estructura que un elemento existente pero con restricciones
adicionales.
Organizacin del modelo:
La informacin del modelo debe ser dividida en piezas coherentes,
para que los equipos puedan trabajar en las diferentes partes de
forma concurrente. El conocimiento humano requiere que se
organice el contenido del modelo en paquetes de tamao modesto.
Los paquetes son unidades organizativas, jerrquicas y de propsito
general de los modelos de UML. Pueden usarse para
almacenamiento, control de acceso, gestin de la configuracin y
construccin de bibliotecas que contengan fragmentos de cdigo
reutilizable.
Elementos de anotacin
Los elementos de anotacin son las partes explicativas de los
modelos UML. Son comentarios que se pueden aplicar para
describir, clasificar y hacer observaciones sobre cualquier elemento
de
un
modelo.
El tipo principal de anotacin es la nota que simplemente es un
smbolo para mostrar restricciones y comentarios junto a un
elemento
o
un
conjunto
de
elementos
Relaciones
Existen cuatro tipos de relaciones entre los elementos de un
modelo UML. Dependencia, asociacin, generalizacin y
realizacin,
estas
se
describen
a
continuacin
Dependencia
Es una relacin semntica entre dos elementos en la cual un
cambio a un elemento (el elemento independiente) puede afectar a
la semntica del otro elemento (elemento dependiente). Se
representa como una lnea discontinua, posiblemente dirigida, que
a
veces
incluye
una
etiqueta.
Asociacin
Es una relacin estructural que describe un conjunto de enlaces, los
cuales son conexiones entre objetos. La agregacin es un tipo
especial de asociacin y representa una relacin estructural entre
un todo y sus partes. La asociacin se representa con una lnea
continua, posiblemente dirigida, que a veces incluye una etiqueta.
A menudo se incluyen otros adornos para indicar la multiplicidad y
roles
de
los
objetos
involucrados
Generalizacin
Es una relacin de especializacin / generalizacin en la cual los
objetos del elemento especializado (el hijo) pueden sustituir a los
objetos del elemento general (el padre). De esta forma, el hijo
comparte la estructura y el comportamiento del padre.
Grficamente, la generalizacin se representa con una lnea con
Diagramas
Los diagramas se utilizan para representar diferentes perspectivas
de un sistema de forma que un diagrama es una proyeccin del
mismo. UML proporciona un amplio conjunto de diagramas que
normalmente se usan en pequeos subconjuntos para poder
representar las cinco vistas principales de la arquitectura de un
sistema.
Diagramas de Clases
Muestran un conjunto de clases, interfaces y colaboraciones, as
como sus relaciones. Estos diagramas son los ms comunes en el
modelado de sistemas orientados a objetos y cubren la vista de
diseo esttica o la vista de procesos esttica (s incluyen clases
activas).
Diagramas de Objetos
Muestran un conjunto de objetos y sus relaciones, son como fotos
instantneas de los diagramas de clases y cubren la vista de diseo
Diagramas de Estados
Muestran una mquina de estados compuesta por estados,
transiciones, eventos y actividades. Estos diagramas cubren la vista
dinmica de un sistema y son muy importantes a la hora de
modelar el comportamiento de una interfaz, clase o colaboracin.
Diagramas de Actividades
Son un tipo especial de diagramas de estados que se centra en
http://java.ciberaula.com/articulo/tecnologia_orientada_objetos/
Proceso Unificado de Rational
El Proceso Unificado de Rational (Rational Unified Process en
ingls, habitualmente resumido como RUP) es un proceso de
desarrollo de software desarrollado por la empresa Rational
Software, actualmente propiedad de IBM. Junto con el Lenguaje
Unificado de Modelado UML, constituye la metodologa estndar
ms utilizada para el anlisis, diseo, implementacin y
documentacin de sistemas orientados a objetos.
Adaptar el proceso
El proceso deber adaptarse a las necesidades del cliente ya que es
muy importante interactuar con l. Las caractersticas propias del
proyecto u organizacin, el tamao del mismo, as como su tipo o
las regulaciones que lo condicionen, influirn en su diseo
especfico. Tambin se deber tener en cuenta el alcance del
proyecto en un rea subformal para hacer un proceso de
satisfaccin del software.
Equilibrar prioridades
Enfocarse en la calidad
El control de calidad no debe realizarse al final de cada iteracin,
sino en todos los aspectos de la produccin. El aseguramiento de la
calidad forma parte del proceso de desarrollo y no de un grupo
independiente.
Ciclo de vida
Fases
Establece oportunidad y alcance
Identifica las entidades externas o actores con las que se trata
Identifica los casos de uso
RUP comprende 2 aspectos importantes por los cuales se
establecen las disciplinas:
'Proceso': Las etapas de esta seccin son: (Revise nuevamente la
grfica)
Modelado de negocio
Requisitos
Anlisis y Diseo
Implementacin
Pruebas
Despliegue
Soporte: En esta parte nos encontramos con las siguientes etapas:
Gestin del cambio y configuraciones
Gestin del proyecto
Entorno
La estructura dinmica de RUP es la que permite que ste sea un
proceso de desarrollo fundamentalmente iterativo, y en esta parte
se ven inmersas las 4 fases descritas anteriormente:
Inicio (tambin llamado Incepcin o Concepcin).
Elaboracin.
Desarrollo (tambin llamado Implementacin, Construccin).
Cierre (tambin llamado Transicin).
Inicio:
Documento Visin
Especificacin de Requisitos
Elaboracin:
Diagramas de caso de uso
Construccin:
Documento Arquitectura que trabaja con las siguientes vistas:
Vista Lgica
o
o
Diagrama de clases
Modelo E-R (Si el sistema as lo requiere)
Vista de Implementacin
o
o
o
Diagrama de Secuencia
Diagrama de estados
Diagrama de Colaboracin
Vista Conceptual
o
Modelo de dominio
Vista fsica
o
Un poco de historia
Los orgenes de RUP se remontan al modelo espiral original de
Barry Boehm. Ken Hartman, uno de los contribuidores claves de
RUP colabor con Boehm en la investigacin. En 1995 Rational
Software compr una compaa sueca llamada Objectory AB,
fundada por Ivar Jacobson, famoso por haber incorporado los casos
de uso a los mtodos de desarrollo orientados a objetos. El Rational
Unified Process fue el resultado de una convergencia de Rational
Approach y Objectory (el proceso de la empresa Objectory AB). El
primer resultado de esta fusin fue el Rational Objectory Process, la
primera versin de RUP, fue puesta en el mercado en 1998, siendo
el arquitecto en jefe Philippe Kruchten.
Comentarios sobre Alcance del RUP
La metodologa RUP es ms apropiada para proyectos grandes
(Aunque tambin pequeos), dado que requiere un equipo de
trabajo capaz de administrar un proceso complejo en varias etapas.
En proyectos pequeos, es posible que no se puedan cubrir los
costos de dedicacin del equipo de profesionales necesarios.
Comentarios sobre Metodologa
Por otro lado, en lo que se refiere a la metodologa esta comprende
tres fases claves: Dirigido por los casos de uso, centrado en la
arquitectura, iterativo e incremental.
En lo referente a dirigido por los casos de uso, est enfocado hacia
el cliente y se utilizan con algunas modificaciones tal vez, hasta la
disciplina de pruebas, en la cual, un caso de uso puede a su vez
tener uno o ms casos de prueba.