Está en la página 1de 17

TECNOLOGIA DE OBJETOS

Ing. Karin Supo Gavancho

UNA PERSPECTIVA HISTRICA


La tecnologa de Objetos data de los aos 60,
cuando surge la necesidad de describir y simular
fenmenos como sistemas de comunicacin, redes
neurales, sistemas administrativos, etc.
La TOO se fundamenta en el proceso de
construccin y utilizacin de conocimientos, por lo
tanto, objetos y clases son los pasos ms
importantes en la bsqueda de una nueva
revolucin que reemplace, esta vez, parte del
esfuerzo que implica la organizacin y utilizacin
del conocimiento, del mismo modo que en la
primera, las mquinas reemplazaron el esfuerzo
fsico del hombre.

VENTAJAS DE UN LENGUAJE
ORIENTADO A OBJETOS
Fomenta la reutilizacin y extensin del cdigo.
Permite crear sistemas ms complejos.
Relacionar el sistema al mundo real.
Facilita la creacin de programas visuales.
Construccin de prototipos
Agiliza el desarrollo de software
Facilita el trabajo en equipo
Facilita el mantenimiento del software

VENTAJAS DE UN LENGUAJE
ORIENTADO A OBJETOS

Reutilizacin

Las clases son diseadas de tal manera que ellas


puedan ser reutilizadas en muchos sistemas. Para
maximizar la reutilizacin las clases deben ser
construidas de manera que puedan ser
personalizadas. Un objetivo permanente de las
tcnicas OO, es conseguir la reutilizacin masiva
en la construccin de software.

Estabilidad

Las clases diseadas para la reutilizacin repetida,


llegan a ser estables de la misma manera que los
microprocesadores y otros chips que son bastante
estables. Las aplicaciones sern construidas
utilizando chips de software.

VENTAJAS DE UN LENGUAJE
ORIENTADO A OBJETOS
Construccin de
Objetos de
complejidad
Creciente

Los objetos se construyen fuera de los objetos. Una buena


manera de fabricar es construir tomando una lista de
materiales de partes y subpartes existentes.

Confiabilidad

EL software construido a partir de una librera de clases


estables, es probable que se encuentre libre de errores,
respecto a construir software desde el inicio.

Verificacin de
Correcciones

El DOO con tcnica formal para la creacin de mtodos,


puede generar potencialmente software de alta confiabilidad.
Tcnicas para verificar y garantizar la operacin correcta de
una clase, probablemente estn disponibles en nuevas
generaciones de herramientas CASE OO.

VENTAJAS DE UN LENGUAJE
ORIENTADO A OBJETOS
Diseo Rpido

Nuevos Mercados
de Software
Diseo de Alta
Calidad
Integridad

Las aplicaciones son creadas tomando componentes preexistentes. Muchos


componentes son construidos de tal forma que, puedan ser observados,
personalizados, para un diseo particular.

Las compaas de software, deberan proporcionar libreras de clases para reas


especficas, fcilmente adaptables a las necesidades de la organizacin.

Los diseos son a menudo de alta calidad, ya que ellos se construyen a partir de
componentes que han sido aprobados y refinados repetidamente.

Las estructuras de Datos pueden ser utilizadas solamente con mtodos especficos.
Esto es particularmente importante en sistemas distribuidos y sistemas
CLIENTE/SERVIDOR, donde usuarios desconocidos pueden tratar de accesar al
sistema.

Facilidad de
Programacin

Los programas son construidos utilizando pequeas plazas de software las cuales son
generalmente fciles de crear.

Fcil
Mantenimiento

Los programas de mantenimiento generalmente cambiarn los mtodos


correspondientes a una clase. Cada clase realiza sus operaciones independientemente
de otras clases.

VENTAJAS DE UN LENGUAJE
ORIENTADO A OBJETOS

Creatividad

Implementadores hbiles en poderosas herramientas CASE Orientadas a Objetos laborando sobre


estaciones de trabajo, encuentran que puede generar rpidamente muchas ideas. Las herramientas
estimulan la creacin e implementan las invenciones. La genialidad individual puede ser ms creativa.

Ciclo de Vida
Dinmico

Los objetivos de desarrollo de un sistema, a menudo cambian durante la implementacin. Las herramientas
CASE Orientadas a Objetos, hacen los cambios durante el ciclo de vida rpidamente. Esto permite a los
diseadores de sistemas satisfacer mejor a los usuarios finales, adaptarse a los cambios, refinar los objetivos
y mejorar constantemente el diseo durante la implementacin.

Refinamiento durante
la Construccin

Las personas creativas cambian constantemente el diseo de su trabajo mientras se est implementando.
Esto conduce a ms y mejores resultados. Los trabajos creativos objetivos, son una y otra vez refinados. Las
herramientas CASE Orientadas a Objetos proporcionan a los constructores de software la capacidad para
refinar el diseo durante la implementacin.

Modelamiento ms
realstico

El AOO modela la empresa o rea de negocio de una manera ms coherente y minuciosa que los mtodos
tradicionales de anlisis. El anlisis se traslada directamente al diseo e implementacin. Con tcnicas de
Anlisis, Diseo e Implementacin OO utiliza el mismo paradigma y lo refinan sucesivamente.

Interfase Grfica
Seductiva al Usuario
Independencia de
Diseo

Se debera utilizar interfaces grficas para usuarios, tal que sta apunte al icono que relacione al objeto.

Las clases son diseadas independientemente de plataforma de operacin, hardware o software. Las clases
emplean requerimientos y respuestas de forma. Esto permite que ellos sean utilizados con mltiples
sistemas operativos, DBMS, manejadores de redes, interfaces grficas para usuarios, etc.

VENTAJAS DE UN LENGUAJE
ORIENTADO A OBJETOS
Interoperatividad

Software de diferentes vendedores pueden trabajar juntos. Un vendedor puede utilizar clase de otros vendedores. La
interoperatividad de software de diferentes vendedores es uno de los objetivos ms importantes de los estndares de la
Orientacin a Objetos. Software desarrollados independientemente en lugares separados, deberan ser capaces de trabajar
juntos y presentarse como una unidad simple al usuario.

Computacin Cliente /
Servidor

En el sistema Cliente / Servidor, las clases en el software cliente deberan enviar sus requerimientos a las clases de software
servidor y recibir respuestas. Una clase servidor puede ser utilizada por muchos clientes. Esto puede accesar al software
nicamente a travs de los mtodos (as los datos se protegen de corrupciones).

Computacin masivamente
Distribuida

Redes alrededor del mundo emplearn directorios de software de objetos accesibles. El diseo orientado al objeto, es la clave
para la computacin masivamente distribuida. Las clases en una mquina interactuarn con cualquier otra, sin necesidad de
saber dnde residen. Ellas envan y reciben mensajes en formatos estndares.

Computacin Paralela

La velocidad de las maquinas., pueden ser ampliamente mejoradas mediante la instalacin de computadoras en paralelo. Se
pueden tener procesamientos simultneos y concurrentes en mltiples chips de procesadores (eventualmente, un chip puede
tener muchos procesadores). Objetos en diferentes procesadores se ejecutarn simultneamente, cada uno de ellos actuando
independientemente.

Alto Nivel de Automatizacin


de Bases de datos
Performance de Mquinas

Las estructuras en Base de Datos OO, estn ligadas a mtodos que toman acciones automticas. Una Base de Datos OO, tiene
su inteligencia construida en la forma de mtodos, mientras que otras bases de datos no.

La Bases de Datos OO han demostrado una mayor performance que las bases de datos relacionales para ciertas aplicaciones
con estructuras de datos ms complejas. Las bases de datos OO, la computacin concurrente y el diseo OO prometen
mayores saltos en la performance de las mquinas LANS basadas en sistemas Cliente/Servidor. Emplearn servidores de
Base de Datos concurrentes y OO.

VENTAJAS DE UN LENGUAJE
ORIENTADO A OBJETOS
Migracin

Existiendo o no aplicaciones OO, ellos pueden ser preservados convenientemente con


una cobertura OO, comunicndose entre ellos mediante mensajes estndares OO.

Mejores
herramientas
CASE

Las herramientas Case utilizarn tcnicas grficas para disear las clases y sus
interacciones, y para utilizar objetos existentes adaptados en nuevas aplicaciones.
Las herramientas deberan facilitar el modelamiento en trminos de eventos, triggers
(iniciadores), estado de los objetos, etc. Las herramientas de los CASE OO generan
cdigos tan pronto como una clase sea definida y permitir al diseador probar y
utilizar el mtodo creado.

Industriales de
Libreras de
Clases

Las compaas de software comercializarn libreras para diferentes reas de


aplicacin. Las libreras de clases independientes de las aplicaciones, sern tambin
importantes y stas sern proporcionadas como facilidades de herramientas CASE
(VIC).

Libreras de
Clases
Corporativas

Las corporaciones, crearn sus propias libreras de clases que reflejen sus estndares
internos y requerimientos de aplicacin. La identificacin TOP-DOWN de los
OBJETOS del negocio, es un aspecto importante de la ingeniera de la Informacin.

VENTAJAS DE UN LENGUAJE
ORIENTADO A OBJETOS
Los diferentes beneficios afectan a diferentes
desarrolladores de diversas maneras. Examinaremos los
beneficios percibidos por:
Un Inventor

El

inventor de software requiere el conjunto de herramientas


del CASE Orientadas a Objetos, para generar cdigos tan
rpidos como l sobre la pantalla.

Fbrica de Software
Para

crear productos ricos e interesantes, el fabricante de


software requiere incorporar software de otros vendedores en
sus propios diseos.

Jefe de Informtica
El

objetivo es ensamblar aplicaciones de alta calidad tomando


partes reutilizables y utilizando un generador para todo
cdigo nuevo.

VENTAJAS DE UN LENGUAJE
ORIENTADO A OBJETOS

Un Equipo de Proyecto de Sistemas de Informacin


Las

herramientas CASE Orientadas a Objetos posibilitan al equipo


ajustar continuamente o disear la aplicacin mientras se est
construyendo para satisfacer las necesidades del usuario, tan
fielmente como sean posibles.

Un Integrador de Sistemas
Un

integrador de sistemas tiene que ver con:


Construccin del Sistema de Redes.
Maquinas y software de diferentes vendedores.
Un problema maysculo, es buscar que los software de los diferentes
vendedores trabajen juntos.
Uno de los beneficios ms importantes de la Orientacin a Objetos es
su nivel de reutilizacin. Las tcnicas Orientadas a Objetos permiten
alcanzar la reutilizacin de dos maneras:
Construir software tomando componentes (clases) que ya existen.
Crear clases modificadas utilizando herencia que les permite
reutilizar mtodos y estructuras de datos de clases de nivel superior.

CICLO DE VIDA DEL SOFTWARE


Una aproximacin lgica a la adquisicin, el
suministro, el desarrollo, la explotacin y el
mantenimiento del software
IEEE 1074
Un marco de referencia que contiene los procesos,
las actividades y las tareas involucradas en el
desarrollo, la explotacin y el mantenimiento de
un producto de software, abarcando la vida del
sistema desde la definicin de los requisitos hasta
la finalizacin de su uso
ISO 12207-1

CICLO DE VIDA DEL SOFTWARE

CICLO DE VIDA DEL SOFTWARE

CICLO DE VIDA DEL SOFTWARE


Definicin de objetivos: definir el resultado del
proyecto y su papel en la estrategia global.
Anlisis de los requisitos y su viabilidad: recopilar,
examinar y formular los requisitos del cliente y
examinar cualquier restriccin que se pueda aplicar.
Diseo general: requisitos generales de la
arquitectura de la aplicacin.
Diseo en detalle: definicin precisa de cada
subconjunto de la aplicacin.
Programacin (programacin e implementacin): es la
implementacin de un lenguaje de programacin para
crear las funciones definidas durante la etapa de diseo.

CICLO DE VIDA DEL SOFTWARE


Prueba de unidad: prueba individual de cada subconjunto
de la aplicacin para garantizar que se implementaron de
acuerdo con las especificaciones.
Integracin: para garantizar que los diferentes mdulos se
integren con la aplicacin. ste es el propsito de la prueba de
integracin que est cuidadosamente documentada.
Prueba beta (o validacin), para garantizar que el software
cumple con las especificaciones originales.
Documentacin: sirve para documentar informacin
necesaria para los usuarios del software y para desarrollos
futuros.
Implementacin
Mantenimiento: para todos los procedimientos correctivos
(mantenimiento correctivo) y las actualizaciones secundarias
del software (mantenimiento continuo).

MODELOS PARA DESARROLLO DE


SISTEMAS ORIENTADOS A OBJETOS
Investigar los modelos para desarrollo de
sistemas OO.
Dar ventajas y desventajas de los modelos de ciclo
de vida.