You are on page 1of 5

Construccin de una casa para Bethoven

Introduccin: Modelado y Desarrollo de Software

Puede hacerlo una sola persona Requiere: Modelado mnimo Proceso simple Herramientas simples

Construccin de una casa

Construccin de un rascacielos

Construida eficientemente y en un tiempo razonable por un equipo Requiere: Modelado Proceso bien definido Herramientas ms sofisticadas

Extremadamente complejo Requiere: Modelado ms complejo Proceso bien definido con estndares de calidad Herramientas mucho ms sofisticadas
Extrada desde la presentacin Software Architecture and UML de Grady Booch (Rational Software).

Claves en Desarrollo de Sistemas de Informacin


Notacin

Abstraccin - Modelado Visual


El modelado captura las partes esenciales del sistema
Orden Item

envo

Herramientas

Proceso

Proceso de Negocios Sistema Computacional

Notacin Visual - Beneficios


Manejar la complejidad

Historia en el diseo y desarrollo de sistemas (1 de 3)


Diseo:
Tradicional
DFD / DFI / IPO / HIP Diseo de pantallas y reportes Orientado a la funcionalidad de la empresa
Mltiples Sistemas

Interface de Usuario (Visual Basic, Java, ..)

Lgica del Negocio (C++, Java, ..)

Orientado a objetos
Modelo esttico y dinmico Casos de uso Diseo de pantallas y reportes Basado en el comportamiento de los objetos

Servidor de BDs (C++ & SQL, ..)

Modelar el sistema independientemente del lenguaje de implementacin

Componentes Reutilizados

Promover la Reutilizacin

Historia en el diseo y desarrollo de sistemas (2 de 3)


Lenguaje Simula67 (1967) Introdujo conceptos orientados a objetos Smaltalk (70s) - Primer lenguaje puro orientado a objetos C++ (80s) C con orientacin a objetos Objective C, Object Pascal, Ada En el inicio de los 90s se consolida la Orientacin a Objetos como una de las mejores maneras para resolver problemas.

Historia en el diseo y desarrollo de sistemas (3 de 3)


En 1996 surge un desarrollo llamado JAVA (extensin de C++). En 1997-98 se desarrollan herramientas CASE orientadas a objetos: Rational Rose, Genexus, Visio, PowerDesigner, etc Del 98 a la fecha se desarrolla la arquitectura de objetos distribuidos RMI, CORBA (Common Object Request Broker Architecture, COM, DCOM Visual .NET (2002)

Metodologa tradicional Vs Orientada a Objetos (1 de 2)


Metodologa tradicional
Descompone el sistema funcionalmente. Implementa el sistema en base a una eficiente funcionalidad de la empresa. El sistema resultante puede ser muy frgil. Si la funcionalidad cambia? Se requerir de una transformacin masiva

Metodologa tradicional Vs Orientada a Objetos (1 de 2)


Anlisis Diseo Desarrollo Implementacin Mantenimiento

Metodologa OO
El sistema est basado en objetos dentro del dominio de la aplicacin. Cada objeto tiene sus propios atributos y responsabilidades. El sistema est compuesto de partes bien probadas. Los objetos interactan entre s para cumplir actividades

Anlisis Diseo Sistema Objetos Desarrollo de clases Implementacin de las clases

Ciclo de vida del desarrollo Orientado a Objetos


Realidad

Etapa de Anlisis

(1 de 2)

Comienza con una especificacin inicial del problema. Permite construir un modelo de la situacin del mundo real, mostrando sus propiedades ms importantes. El modelo resultante representa lo que el sistema debera hacer y no cmo lo hace.

Modelo OO de la realidad

Diseo OO

Cdigo de clases

Etapa de Anlisis

(2 de 2)

Diseo del Sistema

(1 de 2)

Los objetos en el modelo deben representar conceptos del dominio de la aplicacin y no conceptos de implementacin en la computadora, como: Estructuras de datos Instrucciones de computadora Un buen modelo es entendido y criticado por expertos en aplicaciones, quienes pueden no ser programadores ni diseadores de sistemas.

Tiene que ver con decisiones de alto nivel acerca de la estructura global del sistema. Se divide el sistema en subsistemas basado en el anlisis y estructura propuestos. Se definen tentativas localizaciones de recursos y caractersticas de funcionalidad.

Diseo del Sistema

(2 de 2)

Diseo de Objetos

(1 de 2)

Se considera cmo se van a distribuir los procesos y objetos. Se determina el tipo y ubicacin de: Hardware Software Datos

Se construye un modelo de objetos basado en el modelo de la etapa de anlisis, pero conteniendo detalles de la implementacin. El diseador aade detalles en el modelo de esta etapa de acuerdo con la estrategia establecida en el diseo del sistema. Esta etapa depende del Anlisis y el Diseo del Sistema.

Diseo de Objetos

(2 de 2)

Desarrollo de las clases


Las clases de objetos y sus relaciones son trasladadas a un lenguaje de programacin, base de datos o implementacin de hardware. El sistema debera ser: Flexible : permitir cambios a lo realizado Extensible : permitir agregar funcionalidades

Se definen estructuras de datos y algoritmos necesitados para implementar cada clase. Los objetos en el dominio de la aplicacin y los objetos en el dominio basado en la computadora estn definidos bajo los mismos conceptos y notaciones orientadas a objetos.

Implementacin de las clases


Usar las clases desarrolladas para ensamblar nuestro sistema Los conceptos Orientados a Objetos deben ser aplicados durante todo el ciclo de vida del desarrollo del sistema. Las clases pueden ser llevadas de etapa en etapa, sin cambios de notacin, pero ganando detalles de implementacin adicionales en las ltimas etapas.

Modelamiento
La construccin de todo sistema es consecuencia de modelos previamente establecidos Un modelo es una abstraccin de algo, que tiene como propsito el entendimiento de ese algo, antes de construirlo. Los modelos omiten detalles no esenciales Un buen modelo captura los aspectos cruciales de un problema

Propsito de los modelos


Probar una entidad fsica antes de construirla. Mejor comunicacin con los clientes. Mejor visualizacin. Reduccin de complejidad.

Modelos y diagramas
Un modelo captura una vista de un sistema del mundo real. Es una abstraccin de dicho sistema, considerando un cierto propsito. As, el modelo describe completa-mente aquellos aspectos del sistema que son relevantes al propsito del modelo, y a un apropiado nivel de detalle. Diagrama: una representacin grfica de una coleccin de elementos de modelado, a menudo dibujada como un grafo con vrtices conectados por arcos

Lenguajes de modelamiento
Booch (Grady Booch) OMT - Tcnica de Modelamiento de Objetos (James Rumbaugh) OOSE - Ingeniera de Software Orientada a Objetos (Ivar Jacobson) UML (Lenguaje de Modelamiento Unificado).

Modelos usados en OO (1 de 2)
Modelo de objetos (esttico) Modelo dinmico. Modelo Funcional (usado por OMT).

Modelos usados en OO (2 de 2)
Generalmente se utilizan los modelos estticos y dinmicos en la representacin de los sistemas orientados a objetos. El modelo funcional es parecido al Diagrama de Flujo de Datos utilizado en la metodologa tradicional. Sin embargo, el software final no est basado en este modelo.

Modelamiento esttico
Un modelo de objetos captura la estructura esttica de un sistema, mostrando: Los objetos dentro del mismo. Las relaciones entre objetos. Los atributos y operaciones que caracterizan a cada clase de objetos. Contiene un diagrama de objetos. Este diagrama contiene nodos que representan a las clases, y las lneas que relacionan estas clases.

Modelamiento dinmico
Describe los aspectos de un sistema que cambian con el tiempo. Es usado para especificar e implementar los aspectos de control de un sistema. Se examinan los cambios de los objetos y sus relaciones sobre el tiempo

You might also like