Vous êtes sur la page 1sur 19

Hoy en da la tecnologa orientada a objetos ya no se aplica

solamente a los lenguajes de programacin, adems se viene


aplicando en el anlisis y diseo con mucho xito, al igual que en
las bases de datos. Es que para hacer una buena programacin
orientada a objetos hay que desarrollar todo el sistema aplicando
esta tecnologa, de ah la importancia del anlisis y el diseo
orientado a objetos.

La programacin orientada a objetos es una de las formas ms


populares de programar y viene teniendo gran acogida en el
desarrollo de proyectos de software desde los ltimos aos. Esta
acogida se debe a sus grandes capacidades y ventajas frente a las
antiguas formas de programar.
Para entender este modelo debemos tratar con los
siguientes conceptos bsicos:

Objeto
Clase
Herencia
Un objeto podra ser real o abstracto, por ejemplo un beb,
una factura, una medida, una fecha, etc.
Conjunto de objetos que poseen caractersticas similares ,
es decir objetos del mismo tipo.
La herencia bsicamente consiste en que una clase puede
heredar sus variables y mtodos a varias subclases (la clase
que hereda es llamada superclase o clase padre). Esto
significa que una subclase, aparte de los atributos y
mtodos propios, tiene incorporados los atributos y
mtodos heredados de la superclase. De esta manera se
crea una jerarqua de herencia.
Abstraccin: La abstraccin consiste en captar las caractersticas esenciales de un
objeto, as como su comportamiento.

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.

Ocultamiento: Es la capacidad de ocultar los detalles internos del comportamiento


de una Clase y exponer slo los detalles que sean necesarios para el resto del
sistema.

Polimorfismo: capacidad que tienen objetos de diferentes clases de responder al


mismo mensaje. Comportamientos alternos entre clases derivadas relacionadas.

Servicio: Es el comportamiento de los objetos. Son mtodos o procedimientos, que


llegan a ser parte de los objetos, en forma muy similar a los atributos.
Anlisis : Investigacin: el anlisis se centra en una
investigacin del problema y definir los requerimientos

Diseo: Solucin: el diseo pone en relieve una


solucin lgica : como el sistema cumple con los
requerimientos
La esencia del Anlisis y Diseo OO consiste en situar el
dominio de un problema y una solucin lgica dentro de la
perspectiva de los objetos

Anlisis Diseo Construccin

Investigacin Solucin Lgica Codigo


del problema
Durante el Anlisis OO se identifica y describe los a
objetos dentro del dominio del problema. Ej,. En el caso de
un SI. De biblioteca los objetos: Libro, Biblioteca, Cliente.

Durante el Diseo OO, se procura definir los objetos


lgicos del software, que sern implementados en un
lenguaje de programacin oo. Ej el Objeto Libro tiene el
atributo titulo y el mtodo imprimir.
Finalmente durante la Construccin o Programacin
OO se implementa los componentes del diseo como una
clase libro en C++, Java, VB etc.
Representacin
Concepto en el anlisis
del dominio

Libro

titulo

Public class Libro {


Representacin en un public void print();
lenguaje oo.
private String titile: }
Las herramientas usadas en la etapa de anlisis (investigacin
del problema) se pueden resumir en la siguiente tabla.

Herramienta de anlisis Preguntas que contesta

Casos de uso Cules son los procesos del dominio?

Modelo conceptual Cules son los conceptos, los trminos?

Diagramas de secuencia Cules son los eventos y las operac. del sistema?
Como hemos podido observar el Anlisis y Diseo
Orientado a Objeto permite unificar y emplear diversas
metodologas de forma uniforme para optimizar la
realizacin de sistema, dado por el paradigma de la
integracin.
Existen similitudes en los conceptos si son llevados a la
interpretacin por cada metodologa.
El enfoque de AOO es modular, mientras que en otras
metodologas el enfoque es de proceso.
VENTAJAS DESVENTAJAS
Reutilizacin Alta curva de aprendizaje
Estabilidad Costosa
Comportamiento de objetos Requiere conocimientos
Construccin de clases ms adicionales
complejas No recomendable para proyectos
Confiabilidad pequeos
Nuevos mercados de Requiere personal especializado
software
Rpido diseo
Mayor calidad de diseo
Integridad
Programacin ms sencilla
Mantenimiento ms sencillo
A veces resulta difcil hacer una distincin clara entre anlisis OO y diseo
OO. En esencia el anlisis OO es una actividad de clasificacin, se analiza un
problema en un esfuerzo por determinar las clases de objetos que sern
aplicables al desarrollarse la solucin.
El anlisis determina tambin las relaciones y el comportamiento del objeto.
El diseo OO le posibilita al Ing. De software la posibilidad de indicar los
objetos que se derivan de cada clase y como estos objetos se relacionan con
otros.
Ilustra como se desarrollan las relaciones entre objetos, como se debe
implementar el comportamiento y como implementar la comunicacin entre
objetos.
Despus de realizado el proceso de anlisis completo el Ingeniero De software
se concentra en el diseo del sistema, esto se realiza a travs de la descripcin
de subsistemas necesarios para implementar los requerimientos del cliente.
Durante el diseo de subsistemas, es necesario para el ing. De
software definir cuatro componentes de diseo
Dominio del problema: Son los subsistemas responsables de la
implementacin de los requisitos del cliente directamente.
Interaccin humana: Los subsistemas, que implementan la
interfaz de usuario(esto incluye Subsistemas responsables de
interfaz grafica de usuario)
Gestin de tareas: Los subsistemas responsables del control y
coordinacin de tareas concurrentes que pueden
empaquetarse dentro de uno o varios subsistemas.
Gestin de datos: El subsistema que es responsable del
almacenamiento y recuperacin de objetos.
Aun que un numero considerables de autores sugieren modelos de proceso para
el diseo de sistemas OO, la secuencia de actividades propuesta por Rumbaugh
y sus colegas es uno de los temas mas definitivos.
Dividir el modelo de anlisis en subsistemas
Identificar la concurrencia dictada por el problema
Asignar subsistemas a procesadores y tareas
Elegir una estrategia bsica para la implementacin de la gestin de datos.
Identificar los recursos globales y mecanismos de control necesarios para
acceder a ellos
Disear un mecanismo de control apropiado para el sistema
Considerar como manipular las condiciones limites
Revisar y considerar los intercambios.
Para seguir con la metfora el diseo del sistema OO puede verse como el
plano arquitectnico de una casa. Ese plano especifica los propsitos de
cada aplicacin y mecanismos que comunican las habitaciones unas con
otras y con el entorno exterior.
El diseo de objetos se centra en las habitaciones, debemos desarrollar
un diseo detallados de atributos y operaciones.

Descripcin de objeto
Una descripcin del protocolo que establece interfaz de un objeto
definido cada mensaje que el objeto puede recibir y la correspondiente
operacin.