3.3 Descripcién de Metodologias orientadas a objetos
‘Surge en la década do 1860, su principal caractarstca es tomar a los procesos y datos en forma conjunta, Los sistemas
orientados a objetos se desarrolan alrededor de entidades del dominio del probleme, lo cual resulta en desarrolos bastante
stables. El anlisis onentado = objetos, a diferencia del estructurado, que considera comportamianta datos de forma separada
combina ambos. En el andlsis orentado a objets, la forma de model la realidad diflere del andlsis convencional. Modelamos ei
mundo en términos do tocs do objets y lo que lo ocure a dstos. Los modelos que constuimes on ol andlsis OO reffejan la
realidad do modo mas natural quo los dol anlisis tradicional de sistomas. Mocianto las téenicas OO constuimos software que
magelams Homee of rundo real. Cuando of mundo rel canbi, neato sofore et refs cai, oun 9 ont
Vora teal
Principtos fundementales:
Abstracaion:
Expresa las caractoristcas esenciales de un objeto, las cuales dstinguen al objeto oe los demas. Ademas de distingur entre los
‘bjetos provee limites conceptusles; 2s dear, define [a funeicn da un abjto, para datas la forma en que ee realiza, por eam,
todos sabemos que un coche puede avarvar, gitar a a derecha o relooader, pero no sabemos lo procedimientas que realiza para
(onorar estas accones.
Figura 1. Automei
Encapsulacion: Es la agrupacién dol estado y comportamiento para formar objotos, donde algunas partes son visible, miontras
que otras permanecen oailas. El yolante de un auto es una parte visible que permite comunicamos con mismo, en las
‘etodologias oriantadas a abjatos también as danominada intarfaz.
Figura 2. Interfaz de un auto.
Modularidad: Basato on el grincpio de “divide y vencerés", so refiore a descomponer el problema en pequefes bloques que
realicen una funesén en especifen,
Las caracteristicas principales de las metodologias orientadas a objetos:
+ Ofrecan una forma de penser més que una forma de programa.
+ Reducen la compleidad en el disero de software.
1 Permiten atacar los errores en el transcurso del diserio y no durante la implementacén, donde el costo de reparaciin es
bastante mayor
Las actividades son:
1. Encontrar los objetos (dominio de la aplicacion y problema parila).
2. Orgarizar os obleos (clases, asociaciones),
53, Desert cémo os objeto interactian (escenavios, casos da uso).
4, Dofnilas operaciones de los objeto (interfaces)
5. Dofnr fos objetos intornamente (atibutos)
Tal y como £0 moncioné on ol médulo antrior existan varias téenicas para ol modolado de sistomas, aunque la mayoria do los
rétodos estén de acuerdo en los conceptos para modelar un problema, Por ejemplo, para kentiica ls cbjetos en el dominio del
problema existeEscenarios: Capturar_comportamientos del sistema on guiones (scripts) 0 casos de uses para derivar los roles y
responsabildedes del sistema.
Tarjetas CRC: Lluvia de ideas entre un grupo de expertos, dando como resultado los objetos del dominio del problema que son
anoladas en as taretas,
Ingenieria de informacion: Identiicar la estructura de la informacién que se guarda y martiene por las aplicaciones, y mapearia
a objetos,
RResaltar texto: Una técica muy utlzada es subrayar nombres y verbos en la especificacién de requsios, es empleadia en OMT.
Los dlagramas que 82 utlizan tenen cleta simitud con los utlizados an las metodologias estucturadas, aunque, obviamente,
tienen sus lerencias. En cambio, os diagramas en las metodologias onentadas a objelos tenden a vatiat mas.
Ciclo de vida en el desarrollo de sofware orientado a objetos:
En oste cielo ol modelo fundamental es ol modelo de requsios, ya que a pati de este modelo se goneravén los restante.
Requisitos: E! modelo de casos do uso sive para expresar el modelo do requisites, ol cual se desarolla on cooperacién con
‘otros modelos, como so vers mis adelante.
Andiisis: La funcionalad especificada por el modelo de casos de uso se estructura en el modelo de analisis, que es estable con
‘espacio a cambios, siendo un madelolégico independianta del ambiente de implamentacion.
Diseo: La uncionalidad de los casos de uso ya esiructurada por el analsis es realizada por e! modelo de serio, adapténdase
al ambiente de implomentacién realy refnndose aun mis.
Implementacién: Los casos de uso son implementados mediante ol cédigo fuente en al modelo de implomentacién
Pruebas: Los casos de uso son probados a través delas prustas de componertes y prusbas de integracén
Documentacion: E| modelo de casos de uso debe ser documantado a lo laigo de las dversae actividades, dando luger a
{sintos documentos, como son los manuals de usuario, manuales de administration, etcétra,
‘Metodotogias orientadas a objetos més importantes
Enisten varias metocologias.orentadas. a objtos, cada una empleando sus propios diagramas y modelos, pero las mas
imporantes son:
FUSION (Object-Oriented Development),
DD (Responsibly-Driven Desion).
(OAD (Object-Oriented Analysis and Design)
(OAD (Object-Oriented Analysis and Design)
CONT (Object Modeing Technique)
(O0SE (Objectory Object Oriented Sotware Engineering).
(OOKIMOSES Object-Oriented Knowledge
(008A Object Onentd System Analyse.
(OOAD Object-Oriented Analysis and Design
(008A Object-Oriented Systems Analysis
(OBA Object Behavior Analysis
‘OORA Object Oriented Requirements Analyse.
(0080 Object-Oriented System Development
‘OOADIROSE Object-Oriented Analysis & Design.
Para analizar las metodologias se requlere de un curso completo por cada una, por l tanto, slo se comentarin en este tema las
‘atacteristicas mas importantes dela metodologia ONT.
Metodotogie OMT:
La motodologia OMT (Object Modeling Technique) fue croada por Jamos Rumbaugh y Michao! Blaha on 1991. ONT os una do las
‘metodologias de andlss disero mas madura, orentadas a objtos y ofcientes quo existen en la actualidad. Su principal ventaia
fs que es abiorta, lo que facia su dfusicn, Esto facita su evolucion para acoplarse a todas las necesidades actuals y fulures de
Ia ingoniecia do software, La metodologla ONT esta basada on e! dosarralio de un modelo del sstoma Visto desde tos aspects:
Modelo de objetos: Captura los objetes del sistoma y aus relaciones.
‘Modelo dindmico: Describe la reacciin de os objetos del sistema frente a sucesos y las interactiones entre objetos.
‘Modelo funcional: Espocicalastransformaciones de objtos y ls restriceiones apicabes a estas transformaciones.
La metodologia consta do las siguientes fases:
Analisis: El analsta construe un modelo dol dominio dol problema, mostrando sus propiodades ms importantes. E] modelo de
andiisis es una abstraccién resumida y procisa de lo que debe de hacer ol sistoma doseado y no dela forma on que s0 hard. Los
tlemantos del modelo deben ser conceptos del dominio de aplcacién y no conceptos informicas tales como bases de datos 0
lenquaies de programacién. El andlsis se inicia identiicando el problema y posteriormente se genera los res modelos (objeto,
sndmico y funciona).Disefio det sistema: El sistema 20 organiza an subsistomas, basdndase tanto an la estructura del anlisis com en la arquitactra
propuesta. Se selcciona una esiatega para aftontar el problema, Las distnias arquitecturas ponen disintos gracos de énfass en
los modelos. La arquitectura de sistema esta consttuida por su descomposicion en subsistemas, su concutTencia inherent, la
‘signaciin de subsistemas a hardware y a sofware, Ia adminjsraciin de dstor, In coordinacién de recursos globales, la
implementacén del control de softwar, las condiciones de conterno y las prieridades de compensacién. Se deben establecer
prieridades de compensacién entre tiempo y espacio, hardware y sofware, senclez, generaldad, efcienciay mantenimienio, Para
e810 n0 debe considerarse slo al sofware en si mismo, sina lambian al proceso de desarrollo,
Disefio de objetos: En esta fase se constryye un modelo de disero, basdndose en el modolo de andlisis que lleven incorporados
‘etales de implemeniaciin; es decr, durante esta fase se elaboran los modelos de andlisis, se renany, fnalmente, se optimizan
para producr un dish practico.
Durante esta fase se da prordad a as estructuras de datos y lo algorimos necasaris para implementar cada una de las clases
tracuciondo las operaciones identfcadas durante el andlsis en forma de algortmos sencilos, optimizando as la estructura del
‘medalo de cbjtos con ol abjetivo de lograr una implementacinefciete y opmizanco mecidas importantes de randimiento,
Implementacién: Las cases de objotos y las rolaclones desarroladas durante ol disefio se vaducon a un lenguaje de
programacién conereto, a una bass de datos 0 a una implomentacion on hardware, La etapa de programacién dobe ser muy
Pequena porque ya todas las decisiones fueron tomadas durante ol anaiss a sano,
<