SlideShare a Scribd company logo
1 of 15
Download to read offline
Metodología Orientada a Objetos (OMT). Rumbaugh
El análisis y diseño orientado a objetos constituye una nueva forma de pensar
acerca de problemas empleando modelos que son útiles para comunicarse con
expertos en esa aplicación, modelar empresas, preparar documentación, diseñar
programas y bases de datos.
Un modelo es una abstracción de algo, cuyo objetivo es comprenderlo
antes de construirlo. Dado que los modelos omiten los detalles no
esenciales, es más sencillo manipularlos que manipular la entidad
original. La abstracción es una capacidad humana fundamental que nos
permite enfrentarnos a la complejidad. Los ingenieros, artistas y
artesanos han estado construyendo modelos durante miles de años
para probar los diseños antes de ejecutarlos. El desarrollo de sistemas
hardware y software no es una excepción. Para construir sistemas
complejos, el desarrollador debe abstraer distintas vistas del sistema,
construir modelos utilizando notaciones precisas, verificar que los
modelos satisfacen los requisitos del sistema y añadir, gradualmente,
detalles para trasformar los modelos en una implementación.
(Rumbaugh, 1996)
La esencia del análisis y diseño orientado a objetos es la identificación y
organización de conceptos del dominio de la aplicación, y no de su presentación
final en un lenguaje de programación, es decir, es un proceso conceptual
independiente de sí el lenguaje es orientado a objetos.
El uso del análisis y diseño orientado a objetos puede facilitar mucho la
creación de prototipos, y las técnicas de desarrollo evolutivo de software. Los
objetos son inherentemente reutilizables, y se puede crear un catálogo de objetos
que podemos usar en sucesivas aplicaciones. De esta forma, podemos obtener
rápidamente un prototipo del sistema, que pueda ser evaluado por el cliente, a
partir de objetos analizables, diseñados e implementados en aplicaciones
anteriores. Y lo que es más importante, dada la facilidad de reutilización de estos
objetos, el prototipo puede ir evolucionado hacia convertirse en el sistema final,
según vamos refinado los objetos de acuerdo a un proceso de especificación
incremental.
Cabe resaltar que los sistemas construidos hoy en día son más complejos que
los sistemas construidos en los años 70s y 80s. La complejidad funcional es
menos preocupante de como lo era antes, lo que ahora ha tomado una prioridad
alta es el modelar la comprensión del dominio del problema y las
responsabilidades del sistema, por lo que metodologías como la OMT (Object
Modeling Technique) se han convertido en una herramientas necesaria y de
mucha importancia para el desarrollo de software.
La metodología OMT fue creada por James Rumbaugh y Michael Blaha en
1991, mientras James dirigía un equipo de investigación de los laboratorios
General Electric. Cabe resaltar que Rumbaugh se unió a Rational Software en
1994, y trabajó allí con Ivar Jacobson y Grady Booch ("los Tres Amigos") para
desarrollar UML. Más tarde fusionaron sus metodologías de desarrollo de
software, OMT, OOSE y Booch en el Proceso Unificado Racional (RUP), una de
las metodologías más utilizadas en la actualidad.
En su momento, OMT fue una de las metodologías de análisis y diseño
orientada a objetos, más maduras y eficientes. La gran virtud aportada por esta
metodología fue su carácter de abierta (no propietaria), que le permitió ser de
dominio público y, en consecuencia, sobrevivir con enorme vitalidad. Lo que
facilitó su evolución para acoplarse a las necesidades futuras de la ingeniería de
software.
Tiene una fase de diseño no muy compleja y se centra mucho en un buen
análisis.
Divide el ciclo de vida del software en cuatro fases consecutivas:
1. Análisis de objetos: se centra en entender y modelar el problema en el
dominio de la aplicación.
2. Diseño del sistema: se determina la arquitectura del sistema en términos de
subsistemas.
3. Diseño de objetos: se refina y optimiza el análisis de objetos para
implementarlo.
4. Implementación: se codifica y prueba lo ya diseñado.
Figura 1. Ciclo de vida OMT
Aun cuando la descripción de esta técnica es lineal, el proceso de desarrollo
real es iterativo. Donde se repiten los pasos de desarrollo con grados de detalle
cada vez más finos, logrando así que cada iteración añada o clarifique
características en vez de modificar un trabajo ya realizado, por lo tanto, existe
menos posibilidades de introducir incongruencias y errores.
1. Análisis de Objetos
En primer lugar, se describe el problema. Se obtienen unos requisitos que no
den lugar a dudas (rendimiento, funcionalidad, contexto, …).
En segundo lugar se hacen los diagramas de objetos. En él se define la
estructura de los objetos y clases así como las relaciones que los unen.
Comprende tanto un diagrama de clases como un diccionario de datos que las
explique.
Posteriormente se crea un modelo dinámico para describir los aspectos de
control y evolución del sistema. Incluye un diagrama de flujo de sucesos del
sistema y un diagrama de estado por cada clase que tenga un comportamiento
dinámico.
Después se crea un modelo funcional que describa las funciones, los valores
de entrada y salida, e imponga las restricciones pertinentes. Se suelen usar los
diagramas de flujo de datos orientados a objetos.
Por último, se verifican todos los modelos creados y se itera para conseguir un
refinamiento de los tres modelos.
Resumiendo, los pasos a seguir son:
1. Se establece la definición del problema.
2. Se construye un modelo de objetos.
3. Se construye un modelo dinámico.
4. Se construye un modelo funcional.
5. Se verifican, iteran y refinan los tres modelos.
a) Modelo de Objetos
Los pasos para construir el modelo de objetos son los siguientes:
1. Identificación de objetos y/o clases.
2. Crear un diccionario de datos.
3. Identificación de las asociaciones y agregaciones entre los objetos.
4. Identificación de atributos y enlaces.
5. Organización y simplificación de las clases empleando herencia.
6. Verificación de las vías de acceso necesarias para llevar a cabo las
probables consultas.
7. Realizar las iteraciones necesarias para el refinamiento del modelo.
8. Agrupar las clases en módulos.
Modelo de objetos = Diagrama de modelo de objetos + diccionario de datos.
- Diagrama de clases
En él se describen las clases que se descubrieron para el sistema analizado
en términos del dominio del problema. Además se especifican los atributos y
operaciones que distinguen a cada una de las clases y las relaciones con las que
podemos conocer su responsabilidad en el sistema.
Notación: dentro del diagrama de clases, una clase se representa mediante un
rectángulo, donde pueden existir tres separaciones, en la primer parte se coloca el
nombre de la clase, en la segunda y tercera parte se pueden agregar los atributos
y las operaciones, pero si no se desea agregar ninguno de ellos, es porque no son
tan importantes para la comprensión del sistema, entonces el rectángulo solo se
queda con el nombre de la clase.
Cliente
Orden
Platillo
Crédito
Pago
Bebida
Efectivo
Atributos: Es un dato que distingue a una clase y que puede almacenar valores
para el mismo en cada instancia que genere la clase. Debe tener un nombre y el
tipo de dato que va a recibir. Los atributos se colocan en la segunda parte del
rectángulo de la clase, primero se coloca el nombre del atributo, después
precedido de dos puntos (:) el tipo de dato que recibirá y en algunos casos se
podrá especificar el valor inicial que recibe precedido por un signo de igual (=).
Operaciones: Las operaciones son funciones que pueden realizar las instancias
de una clase. Mediante ellas se pueden visualizar cuales son las
responsabilidades de cada clase dentro del sistema. Se colocan en la tercera
parte del rectángulo de la clase y debe de contener el nombre de la operación que
puede ir seguida de una lista de argumentos entre paréntesis y de un tipo de dato
que regresará precedido de dos puntos (:).
Relaciones (asociaciones): Representan los enlaces entre las instancias dentro
del diagrama. Se representan mediante una línea que conecta a las instancias
junto con el nombre de la asociación que por lo general es un verbo.
Clase 1 Clase 2Nombre_Asociación
Cuadro 1
Tipos de asociaciones
b) Modelo Dinámico
Los pasos para construir el modelo dinámico son los siguientes:
1. Preparación de escenarios de secuencias típicas de iteración.
2. Identificación de sucesos que actúan entre objetos.
3. Preparar un seguimiento de sucesos para cada escenario.
4. Construcción de un diagrama de estado para cada objeto.
5. Comparación de los sucesos intercambiados entre objetos para verificar la
congruencia.
Modelo dinámico = Diagrama global de flujo de sucesos + Diagrama de
estados
- Diagrama de Flujo de sucesos o Traza de sucesos
Una traza de eventos es una lista ordenada de eventos entre diferentes objetos
(actores) asignados a columnas en una tabla. Se utiliza para identificar mensajes
entre los actores de un cierto problema; de esta forma se pueden ver qué eventos
afectan directamente a cada actor. Este diagrama muestra la ocurrencia de los
eventos a través del tiempo, e indica un escenario que luego deberá ser incluido
en el diagrama de estado. Los estados en este diagrama son los intervalos que
ocurren entre cada evento; por lo que ayuda bastante en la identificación de los
estados.
Suceso: Es un evento que ocurre en un determinado momento del sistema y por
medio del cual se pueden transmitir valores entre los objetos.
Desarrollar el diagrama de traza de sucesos es el siguiente paso para
representar los escenarios después de haberlos realizado.
Cada objeto se muestra como una línea vertical. Los sucesos son
representados mediante una flecha que va desde el objeto emisor al objeto
receptor, y en el cual se puede incrementar el tiempo de arriba hacia abajo, según
avanza este. Mediante el diagrama de traza de sucesos se muestra la forma en
cómo los objetos se comunican entre sí enviándose mensajes, visto de otra forma,
son peticiones de operaciones a realizar que un objeto le pide a otro.
- Diagrama de Estados
Relaciona sucesos y estados. Un diagrama de estados se representa mediante
estados, restricciones, condiciones y acciones.
Estados: Los estados representan las respuestas de los objetos a varios sucesos
en determinado tiempo dentro del sistema. Dicha respuesta puede cambiar el
estado del objeto. Se representan mediante cuadros redondeados que contienen
un nombre.
Transiciones: Se representan mediante flechas que salen del estado receptor
hasta el estado destino y el nombre que se coloca en la flecha es el nombre del
suceso que dio lugar a dicha transición, cada transición que sale de un estado
corresponde a un suceso distinto, lo cual indica que no deben de existir sucesos
duplicados dentro de un estado.
Evento/[condición]/acción
Condiciones: Una condición se puede pensar como una protección en las
transiciones, debido a que si se cumple dicha condición la transición se dará y
podrá pasar el objeto de un estado a otro, si dicha condición no se cumple
inclusive podría pasar a otro estado mediante otra transición o quedarse en el
estado receptor hasta que la condición se cumpla.
Acción: Es una operación que va asociada a un suceso y se representa mediante
una barra “/” y el nombre de la acción, después del nombre de la transición.
c) Modelo Funcional
Los pasos para construir el modelo funcional son los siguientes:
1. Identificación de los valores de entrada y de salida.
2. Construcción de diagramas de flujo de datos que muestren las
dependencias funcionales.
3. Descripción de las funciones.
4. Identificación de restricciones.
5. Especificación de los criterios de optimización.
Modelo Funcional = Diagrama de flujo de datos + restricciones
Mediante el modelo funcional se puede observar los resultados que se
tienen de un cálculo de valores, especificando solamente entradas y salidas de los
valores, mas no como son calculados estos.
El modelo funcional consta básicamente de diagramas de flujo de datos. Los
diagramas de flujo de datos son grafos que muestran el flujo de valores de datos a
través de procesos los cuales modifican dichos valores para transformarlos en
otros.
Los diagramas de flujo están compuestos de:
Procesos: se representan mediante una elipse, los procesos tienen como entrada
datos, los cuales serán transformados, por lo cual un proceso es visto como un
método de una operación aplicada a una clase de objetos.
Nombre del Proceso
Flujo de datos: un flujo de datos conecta la salida de un proceso a la entrada de
otro. Se representa en el diagrama por medio de una flecha, la cual puede llevar el
nombre o el tipo de dato. Además de trasladar los datos a otros procesos, los
flujos de datos pueden usarse para copiar un valor, realizar la composición de un
agregado y así como su inverso.
Actores: los actores son objetos que consumen y producen datos generando
operaciones por sí mismos, estos se encuentran siempre en las fronteras del
diagrama indicando entradas y salidas de datos. Los actores también son
llamados terminadores debido a que su función principal es hacer concluir el flujo
de datos. En el diagrama son representados mediante rectángulos.
Almacenes de datos: son objetos cuya tarea es permitir el almacenamiento y
acceso de datos. Se representan en el diagrama mediante unas líneas paralelas
que tienen el nombre del almacén.
Teniendo ya la representación del sistema en los tres modelos, se lleva a cabo
una iteración general de cada uno de ellos.
1. Se deben comparar los tres modelos con la definición del problema y con el
conocimiento en el dominio de la aplicación.
2. Se añaden las operaciones claves descubiertas durante la preparación del
modelo funcional.
3. Se hace una verificación entre clases, atributos, asociaciones y operaciones de
tal manera que resulten congruentes.
4. Comprobar los modelos utilizando escenarios. Se desarrollan escenarios más
detallados, incluyendo condiciones de error.
5. Se realiza una iteración de los pasos anteriores, hasta considerar satisfactorio el
análisis.
Documento de Análisis = Definición del problema + modelo de objetos +
modelo dinámico + modelo funcional.
El documento abarca el análisis, el diseño y la implementación. Contiene una
notación gráfica para expresar modelos orientados a objetos, es posible modelar,
diseñar e implementar tanto a objetos en el dominio de la aplicación como a
objetos en el dominio de la computadora.
2. Diseño del Sistema.
El diseño del sistema es la estrategia de alto nivel para resolver el problema y
construir una solución, incluye decisiones acerca de la organización del sistema
(arquitectura del sistema) en subsistemas, la asignación de subsistemas a
componentes de hardware y software y decisiones fundamentales conceptuales y
de política que son las que constituyen el marco de trabajo para el diseño
detallado.
El modelo de diseño debe ser razonablemente eficiente y práctico a la hora de
codificar, tratando detalles de bajo nivel que se omiten en el modelo de análisis.
Los pasos a seguir son:
1. Organizar el sistema en subsistemas.
2. Identificar la concurrencia inherente en el problema.
3. Asignar los subsistemas a procesadores y a tareas.
4. Seleccionar la estrategia básica de implementación de los almacenes de datos,
en términos de estructuras de datos, archivos y bases de datos.
5. Identificar los recursos globales y determinar los mecanismos para controlar el
acceso a tales recursos.
6. Seleccionar una aproximación para implementar el control del software.
7. Consideraciones de condiciones de contorno.
8. Establecimiento de prioridades de compensación.
3. Diseño de Objetos
En el Diseño de Objetos se toman las decisiones necesarias para construir un
sistema sin descender a los detalles particulares de un lenguaje o sistema de base
de datos. El diseño de objetos es el comienzo de un desplazamiento con respecto
al mundo real, en el modelo de análisis, aproximándose a la orientación a la
computadora, necesaria para una implementación práctica.
Rumbaugh sugiere las siguientes etapas:
1. Obtención de las operaciones para el modelo de objetos a partir de los demás
modelos.
2. Diseño de algoritmos para la implementación de las operaciones.
3. Optimización de las vías de acceso a los datos.
4. Implementar el control del software completando la aproximación seleccionada
durante el diseño del sistema.
5. Ajuste de la estructura de clases para incrementar la herencia.
6. Diseño de la implementación de las asociaciones.
7. Se determina la representación exacta de los atributos que son objetos.
8. Empaquetamiento de las clases y asociaciones en módulos.
4. Implementación del Sistema.
Durante la implementación se codifican, tanto las estructuras en el dominio de
la aplicación como las estructuras en el dominio de la solución. La base que la
sustenta es el diseño de objetos.
El código puede ser una simple transición de las decisiones de diseño a las
características propias de un lenguaje.
Aquí se den hacer pruebas para determinar si el sistema está siendo
construido correctamente.
Referencias
- Metodologías para Análisis y Diseño Orientado a Objetos y
MDA. Disponible en [http://www.scribd.com/doc/12848359/Metodologias-
Para-Analisis-y-Diseno-Orientado-a-Objetos-y-MDA]
- Rumbaugh, James et al. (1996). Modelado y diseño orientados a objetos.
Madrid: Prentice Hall, 1996.
- Técnica de Modelado de Objetos (OMT) (James Rumbaugh). Disponible en
[http://www.itlalaguna.edu.mx/academico/carreras/sistemas/Analisis%20y%
20dise%C3%B1o%20orientado%20a%20objetos/rumbaugh.pdf]

More Related Content

What's hot

Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de Software
Roberth Loaiza
 
MODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWAREMODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWARE
Micky Jerzy
 
Diagramas de objetos
Diagramas de objetosDiagramas de objetos
Diagramas de objetos
still01
 
Programación Orientada a Objetos.ppt
Programación Orientada a Objetos.pptProgramación Orientada a Objetos.ppt
Programación Orientada a Objetos.ppt
NachoTValverde
 

What's hot (20)

Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de Software
 
METODOLOGÍA UWE (UML-BASED WEB ENGINEERING)
METODOLOGÍA UWE (UML-BASED WEB ENGINEERING) METODOLOGÍA UWE (UML-BASED WEB ENGINEERING)
METODOLOGÍA UWE (UML-BASED WEB ENGINEERING)
 
UML - Analisis de Sistemas
UML - Analisis de SistemasUML - Analisis de Sistemas
UML - Analisis de Sistemas
 
MODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWAREMODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWARE
 
UML. un analisis comparativo para la diagramación de software
UML.  un analisis comparativo para la diagramación de softwareUML.  un analisis comparativo para la diagramación de software
UML. un analisis comparativo para la diagramación de software
 
Diagramas de objetos
Diagramas de objetosDiagramas de objetos
Diagramas de objetos
 
Diagrama de Componentes
Diagrama de ComponentesDiagrama de Componentes
Diagrama de Componentes
 
Programación Orientada a Objetos.ppt
Programación Orientada a Objetos.pptProgramación Orientada a Objetos.ppt
Programación Orientada a Objetos.ppt
 
Uml
UmlUml
Uml
 
Metodología orientada a objetos
Metodología orientada a objetosMetodología orientada a objetos
Metodología orientada a objetos
 
Casos de uso
Casos de usoCasos de uso
Casos de uso
 
Caracteristicas rup
Caracteristicas rupCaracteristicas rup
Caracteristicas rup
 
Modelado del negocio
Modelado del negocioModelado del negocio
Modelado del negocio
 
Rational rose
Rational roseRational rose
Rational rose
 
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
 
Metodología WEB UWE
Metodología WEB UWEMetodología WEB UWE
Metodología WEB UWE
 
Metodologia Omt
Metodologia Omt Metodologia Omt
Metodologia Omt
 
HA2NV50 EQ8-StarUML
HA2NV50 EQ8-StarUMLHA2NV50 EQ8-StarUML
HA2NV50 EQ8-StarUML
 
Uml presentacion
Uml   presentacionUml   presentacion
Uml presentacion
 
Metodologia omt
Metodologia omtMetodologia omt
Metodologia omt
 

Viewers also liked (7)

Modelos dinamicos Orientado a Objetos
Modelos dinamicos Orientado a ObjetosModelos dinamicos Orientado a Objetos
Modelos dinamicos Orientado a Objetos
 
Metodologã­a orientada-a-objetos-omt.-rumbaugh
Metodologã­a orientada-a-objetos-omt.-rumbaughMetodologã­a orientada-a-objetos-omt.-rumbaugh
Metodologã­a orientada-a-objetos-omt.-rumbaugh
 
OOSE
OOSEOOSE
OOSE
 
Diseño de sistemas
Diseño de sistemasDiseño de sistemas
Diseño de sistemas
 
Metodologia orientada a objeto - libro
Metodologia orientada a objeto -  libroMetodologia orientada a objeto -  libro
Metodologia orientada a objeto - libro
 
Metodología orientadas a objetos
Metodología orientadas a objetosMetodología orientadas a objetos
Metodología orientadas a objetos
 
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREDISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
 

Similar to Metodología orientada a objetos (omt). rumbaugh

Tipos de modelo y metodologias
Tipos de modelo y metodologiasTipos de modelo y metodologias
Tipos de modelo y metodologias
Josafat Mtz
 
UML(Diseños de Sistemas)
UML(Diseños de Sistemas)UML(Diseños de Sistemas)
UML(Diseños de Sistemas)
josue salas
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
lordXDie
 
Modelado del AnáLisis
Modelado del AnáLisisModelado del AnáLisis
Modelado del AnáLisis
Carolina Rojas
 
Analisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetosAnalisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetos
Lex Marin
 
Glosario terminologia java
Glosario terminologia javaGlosario terminologia java
Glosario terminologia java
orus004
 

Similar to Metodología orientada a objetos (omt). rumbaugh (20)

Tipos de modelo y metodologias
Tipos de modelo y metodologiasTipos de modelo y metodologias
Tipos de modelo y metodologias
 
Metodologia uml
Metodologia umlMetodologia uml
Metodologia uml
 
Metodologia uml
Metodologia umlMetodologia uml
Metodologia uml
 
Metodologia UML
Metodologia UMLMetodologia UML
Metodologia UML
 
Planificacion de proyecto de software
Planificacion de proyecto de softwarePlanificacion de proyecto de software
Planificacion de proyecto de software
 
Metodologia de iconix jhon poo
Metodologia de iconix jhon pooMetodologia de iconix jhon poo
Metodologia de iconix jhon poo
 
UML(Diseños de Sistemas)
UML(Diseños de Sistemas)UML(Diseños de Sistemas)
UML(Diseños de Sistemas)
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Diseño de sistemas - UML - compendio
Diseño de sistemas  -  UML - compendioDiseño de sistemas  -  UML - compendio
Diseño de sistemas - UML - compendio
 
Diagramadeflujo 140115215731-phpapp02
Diagramadeflujo 140115215731-phpapp02Diagramadeflujo 140115215731-phpapp02
Diagramadeflujo 140115215731-phpapp02
 
Metodologia para el proyecto
Metodologia para el proyectoMetodologia para el proyecto
Metodologia para el proyecto
 
Modelado del AnáLisis
Modelado del AnáLisisModelado del AnáLisis
Modelado del AnáLisis
 
9. introducción a uml
9. introducción a uml9. introducción a uml
9. introducción a uml
 
Diagramas uml de un caso de uso
Diagramas uml de un caso de usoDiagramas uml de un caso de uso
Diagramas uml de un caso de uso
 
Analisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetosAnalisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetos
 
6.modelado de los requerimientos escenarios y clases
6.modelado de los requerimientos  escenarios y clases6.modelado de los requerimientos  escenarios y clases
6.modelado de los requerimientos escenarios y clases
 
Glosario terminologia java
Glosario terminologia javaGlosario terminologia java
Glosario terminologia java
 
Is.exp.329466
Is.exp.329466Is.exp.329466
Is.exp.329466
 
Diagramas uml de un caso de uso
Diagramas uml de un caso de usoDiagramas uml de un caso de uso
Diagramas uml de un caso de uso
 
Tema 2.UML parte 1.ppt
Tema 2.UML parte 1.pptTema 2.UML parte 1.ppt
Tema 2.UML parte 1.ppt
 

More from Wilfredy Inciarte

More from Wilfredy Inciarte (20)

Anatomia del icono wilfredy inciarte
Anatomia del icono   wilfredy inciarteAnatomia del icono   wilfredy inciarte
Anatomia del icono wilfredy inciarte
 
Metodologias de modelización r. fernandez
Metodologias de modelización   r. fernandezMetodologias de modelización   r. fernandez
Metodologias de modelización r. fernandez
 
Teoria general de sistemas e. bustos
Teoria general de sistemas   e. bustosTeoria general de sistemas   e. bustos
Teoria general de sistemas e. bustos
 
Teoria de sistemas
Teoria de sistemasTeoria de sistemas
Teoria de sistemas
 
Sistemas conceptos y caracteristicas
Sistemas conceptos y caracteristicasSistemas conceptos y caracteristicas
Sistemas conceptos y caracteristicas
 
Int. ing sistemas
Int. ing sistemasInt. ing sistemas
Int. ing sistemas
 
Etapas de un proyecto
Etapas de un proyectoEtapas de un proyecto
Etapas de un proyecto
 
Estudio de factibilidad
Estudio de factibilidadEstudio de factibilidad
Estudio de factibilidad
 
Principios y aplicaciones del análisis costo beneficio - e. morin
Principios y aplicaciones del análisis costo beneficio - e. morinPrincipios y aplicaciones del análisis costo beneficio - e. morin
Principios y aplicaciones del análisis costo beneficio - e. morin
 
Modelo para el analisis de los costos y beneficios
Modelo para el analisis de los costos y beneficiosModelo para el analisis de los costos y beneficios
Modelo para el analisis de los costos y beneficios
 
Guia del analisis costo beneficio - proyectos de inversion
Guia del analisis costo   beneficio - proyectos de inversionGuia del analisis costo   beneficio - proyectos de inversion
Guia del analisis costo beneficio - proyectos de inversion
 
Guia para la formulacion de royectos metodologia bpun
Guia para la formulacion de royectos   metodologia bpunGuia para la formulacion de royectos   metodologia bpun
Guia para la formulacion de royectos metodologia bpun
 
Manual de proyectos agencia andaluza del voluntariado
Manual de proyectos   agencia andaluza del voluntariadoManual de proyectos   agencia andaluza del voluntariado
Manual de proyectos agencia andaluza del voluntariado
 
Formulación y evaluación de proyectos de inversión e. pimentel
Formulación y evaluación de proyectos de inversión   e. pimentelFormulación y evaluación de proyectos de inversión   e. pimentel
Formulación y evaluación de proyectos de inversión e. pimentel
 
Evaluación de proyectos j. sarmiento
Evaluación de proyectos   j. sarmientoEvaluación de proyectos   j. sarmiento
Evaluación de proyectos j. sarmiento
 
Aspestos generales de la gestion de proyectos
Aspestos generales de la gestion de proyectosAspestos generales de la gestion de proyectos
Aspestos generales de la gestion de proyectos
 
Introducción a los microprocesadores j. sainz
Introducción a los microprocesadores   j. sainzIntroducción a los microprocesadores   j. sainz
Introducción a los microprocesadores j. sainz
 
Evolucion de los microprocesadores
Evolucion de los microprocesadoresEvolucion de los microprocesadores
Evolucion de los microprocesadores
 
Transformada de laplace
Transformada de laplaceTransformada de laplace
Transformada de laplace
 
Transformada de laplace y sus aplicaciones a las ecuaciones diferenciales j...
Transformada de laplace y sus aplicaciones a las ecuaciones diferenciales   j...Transformada de laplace y sus aplicaciones a las ecuaciones diferenciales   j...
Transformada de laplace y sus aplicaciones a las ecuaciones diferenciales j...
 

Recently uploaded

6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
Wilian24
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
UPTAIDELTACHIRA
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
pvtablets2023
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 

Recently uploaded (20)

6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 

Metodología orientada a objetos (omt). rumbaugh

  • 1. Metodología Orientada a Objetos (OMT). Rumbaugh El análisis y diseño orientado a objetos constituye una nueva forma de pensar acerca de problemas empleando modelos que son útiles para comunicarse con expertos en esa aplicación, modelar empresas, preparar documentación, diseñar programas y bases de datos. Un modelo es una abstracción de algo, cuyo objetivo es comprenderlo antes de construirlo. Dado que los modelos omiten los detalles no esenciales, es más sencillo manipularlos que manipular la entidad original. La abstracción es una capacidad humana fundamental que nos permite enfrentarnos a la complejidad. Los ingenieros, artistas y artesanos han estado construyendo modelos durante miles de años para probar los diseños antes de ejecutarlos. El desarrollo de sistemas hardware y software no es una excepción. Para construir sistemas complejos, el desarrollador debe abstraer distintas vistas del sistema, construir modelos utilizando notaciones precisas, verificar que los modelos satisfacen los requisitos del sistema y añadir, gradualmente, detalles para trasformar los modelos en una implementación. (Rumbaugh, 1996) La esencia del análisis y diseño orientado a objetos es la identificación y organización de conceptos del dominio de la aplicación, y no de su presentación final en un lenguaje de programación, es decir, es un proceso conceptual independiente de sí el lenguaje es orientado a objetos. El uso del análisis y diseño orientado a objetos puede facilitar mucho la creación de prototipos, y las técnicas de desarrollo evolutivo de software. Los objetos son inherentemente reutilizables, y se puede crear un catálogo de objetos que podemos usar en sucesivas aplicaciones. De esta forma, podemos obtener rápidamente un prototipo del sistema, que pueda ser evaluado por el cliente, a partir de objetos analizables, diseñados e implementados en aplicaciones anteriores. Y lo que es más importante, dada la facilidad de reutilización de estos objetos, el prototipo puede ir evolucionado hacia convertirse en el sistema final, según vamos refinado los objetos de acuerdo a un proceso de especificación incremental.
  • 2. Cabe resaltar que los sistemas construidos hoy en día son más complejos que los sistemas construidos en los años 70s y 80s. La complejidad funcional es menos preocupante de como lo era antes, lo que ahora ha tomado una prioridad alta es el modelar la comprensión del dominio del problema y las responsabilidades del sistema, por lo que metodologías como la OMT (Object Modeling Technique) se han convertido en una herramientas necesaria y de mucha importancia para el desarrollo de software. La metodología OMT fue creada por James Rumbaugh y Michael Blaha en 1991, mientras James dirigía un equipo de investigación de los laboratorios General Electric. Cabe resaltar que Rumbaugh se unió a Rational Software en 1994, y trabajó allí con Ivar Jacobson y Grady Booch ("los Tres Amigos") para desarrollar UML. Más tarde fusionaron sus metodologías de desarrollo de software, OMT, OOSE y Booch en el Proceso Unificado Racional (RUP), una de las metodologías más utilizadas en la actualidad. En su momento, OMT fue una de las metodologías de análisis y diseño orientada a objetos, más maduras y eficientes. La gran virtud aportada por esta metodología fue su carácter de abierta (no propietaria), que le permitió ser de dominio público y, en consecuencia, sobrevivir con enorme vitalidad. Lo que facilitó su evolución para acoplarse a las necesidades futuras de la ingeniería de software. Tiene una fase de diseño no muy compleja y se centra mucho en un buen análisis. Divide el ciclo de vida del software en cuatro fases consecutivas: 1. Análisis de objetos: se centra en entender y modelar el problema en el dominio de la aplicación. 2. Diseño del sistema: se determina la arquitectura del sistema en términos de subsistemas. 3. Diseño de objetos: se refina y optimiza el análisis de objetos para implementarlo. 4. Implementación: se codifica y prueba lo ya diseñado.
  • 3. Figura 1. Ciclo de vida OMT Aun cuando la descripción de esta técnica es lineal, el proceso de desarrollo real es iterativo. Donde se repiten los pasos de desarrollo con grados de detalle cada vez más finos, logrando así que cada iteración añada o clarifique características en vez de modificar un trabajo ya realizado, por lo tanto, existe menos posibilidades de introducir incongruencias y errores. 1. Análisis de Objetos En primer lugar, se describe el problema. Se obtienen unos requisitos que no den lugar a dudas (rendimiento, funcionalidad, contexto, …). En segundo lugar se hacen los diagramas de objetos. En él se define la estructura de los objetos y clases así como las relaciones que los unen. Comprende tanto un diagrama de clases como un diccionario de datos que las explique.
  • 4. Posteriormente se crea un modelo dinámico para describir los aspectos de control y evolución del sistema. Incluye un diagrama de flujo de sucesos del sistema y un diagrama de estado por cada clase que tenga un comportamiento dinámico. Después se crea un modelo funcional que describa las funciones, los valores de entrada y salida, e imponga las restricciones pertinentes. Se suelen usar los diagramas de flujo de datos orientados a objetos. Por último, se verifican todos los modelos creados y se itera para conseguir un refinamiento de los tres modelos. Resumiendo, los pasos a seguir son: 1. Se establece la definición del problema. 2. Se construye un modelo de objetos. 3. Se construye un modelo dinámico. 4. Se construye un modelo funcional. 5. Se verifican, iteran y refinan los tres modelos. a) Modelo de Objetos Los pasos para construir el modelo de objetos son los siguientes: 1. Identificación de objetos y/o clases. 2. Crear un diccionario de datos. 3. Identificación de las asociaciones y agregaciones entre los objetos. 4. Identificación de atributos y enlaces. 5. Organización y simplificación de las clases empleando herencia. 6. Verificación de las vías de acceso necesarias para llevar a cabo las probables consultas. 7. Realizar las iteraciones necesarias para el refinamiento del modelo. 8. Agrupar las clases en módulos.
  • 5. Modelo de objetos = Diagrama de modelo de objetos + diccionario de datos. - Diagrama de clases En él se describen las clases que se descubrieron para el sistema analizado en términos del dominio del problema. Además se especifican los atributos y operaciones que distinguen a cada una de las clases y las relaciones con las que podemos conocer su responsabilidad en el sistema. Notación: dentro del diagrama de clases, una clase se representa mediante un rectángulo, donde pueden existir tres separaciones, en la primer parte se coloca el nombre de la clase, en la segunda y tercera parte se pueden agregar los atributos y las operaciones, pero si no se desea agregar ninguno de ellos, es porque no son tan importantes para la comprensión del sistema, entonces el rectángulo solo se queda con el nombre de la clase. Cliente Orden Platillo Crédito Pago Bebida Efectivo
  • 6. Atributos: Es un dato que distingue a una clase y que puede almacenar valores para el mismo en cada instancia que genere la clase. Debe tener un nombre y el tipo de dato que va a recibir. Los atributos se colocan en la segunda parte del rectángulo de la clase, primero se coloca el nombre del atributo, después precedido de dos puntos (:) el tipo de dato que recibirá y en algunos casos se podrá especificar el valor inicial que recibe precedido por un signo de igual (=). Operaciones: Las operaciones son funciones que pueden realizar las instancias de una clase. Mediante ellas se pueden visualizar cuales son las responsabilidades de cada clase dentro del sistema. Se colocan en la tercera parte del rectángulo de la clase y debe de contener el nombre de la operación que puede ir seguida de una lista de argumentos entre paréntesis y de un tipo de dato que regresará precedido de dos puntos (:).
  • 7. Relaciones (asociaciones): Representan los enlaces entre las instancias dentro del diagrama. Se representan mediante una línea que conecta a las instancias junto con el nombre de la asociación que por lo general es un verbo. Clase 1 Clase 2Nombre_Asociación Cuadro 1 Tipos de asociaciones b) Modelo Dinámico Los pasos para construir el modelo dinámico son los siguientes: 1. Preparación de escenarios de secuencias típicas de iteración. 2. Identificación de sucesos que actúan entre objetos. 3. Preparar un seguimiento de sucesos para cada escenario.
  • 8. 4. Construcción de un diagrama de estado para cada objeto. 5. Comparación de los sucesos intercambiados entre objetos para verificar la congruencia. Modelo dinámico = Diagrama global de flujo de sucesos + Diagrama de estados - Diagrama de Flujo de sucesos o Traza de sucesos Una traza de eventos es una lista ordenada de eventos entre diferentes objetos (actores) asignados a columnas en una tabla. Se utiliza para identificar mensajes entre los actores de un cierto problema; de esta forma se pueden ver qué eventos afectan directamente a cada actor. Este diagrama muestra la ocurrencia de los eventos a través del tiempo, e indica un escenario que luego deberá ser incluido en el diagrama de estado. Los estados en este diagrama son los intervalos que ocurren entre cada evento; por lo que ayuda bastante en la identificación de los estados. Suceso: Es un evento que ocurre en un determinado momento del sistema y por medio del cual se pueden transmitir valores entre los objetos.
  • 9. Desarrollar el diagrama de traza de sucesos es el siguiente paso para representar los escenarios después de haberlos realizado. Cada objeto se muestra como una línea vertical. Los sucesos son representados mediante una flecha que va desde el objeto emisor al objeto receptor, y en el cual se puede incrementar el tiempo de arriba hacia abajo, según avanza este. Mediante el diagrama de traza de sucesos se muestra la forma en cómo los objetos se comunican entre sí enviándose mensajes, visto de otra forma, son peticiones de operaciones a realizar que un objeto le pide a otro. - Diagrama de Estados Relaciona sucesos y estados. Un diagrama de estados se representa mediante estados, restricciones, condiciones y acciones. Estados: Los estados representan las respuestas de los objetos a varios sucesos en determinado tiempo dentro del sistema. Dicha respuesta puede cambiar el estado del objeto. Se representan mediante cuadros redondeados que contienen un nombre. Transiciones: Se representan mediante flechas que salen del estado receptor hasta el estado destino y el nombre que se coloca en la flecha es el nombre del suceso que dio lugar a dicha transición, cada transición que sale de un estado corresponde a un suceso distinto, lo cual indica que no deben de existir sucesos duplicados dentro de un estado. Evento/[condición]/acción
  • 10. Condiciones: Una condición se puede pensar como una protección en las transiciones, debido a que si se cumple dicha condición la transición se dará y podrá pasar el objeto de un estado a otro, si dicha condición no se cumple inclusive podría pasar a otro estado mediante otra transición o quedarse en el estado receptor hasta que la condición se cumpla. Acción: Es una operación que va asociada a un suceso y se representa mediante una barra “/” y el nombre de la acción, después del nombre de la transición. c) Modelo Funcional Los pasos para construir el modelo funcional son los siguientes: 1. Identificación de los valores de entrada y de salida. 2. Construcción de diagramas de flujo de datos que muestren las dependencias funcionales. 3. Descripción de las funciones. 4. Identificación de restricciones.
  • 11. 5. Especificación de los criterios de optimización. Modelo Funcional = Diagrama de flujo de datos + restricciones Mediante el modelo funcional se puede observar los resultados que se tienen de un cálculo de valores, especificando solamente entradas y salidas de los valores, mas no como son calculados estos. El modelo funcional consta básicamente de diagramas de flujo de datos. Los diagramas de flujo de datos son grafos que muestran el flujo de valores de datos a través de procesos los cuales modifican dichos valores para transformarlos en otros. Los diagramas de flujo están compuestos de:
  • 12. Procesos: se representan mediante una elipse, los procesos tienen como entrada datos, los cuales serán transformados, por lo cual un proceso es visto como un método de una operación aplicada a una clase de objetos. Nombre del Proceso Flujo de datos: un flujo de datos conecta la salida de un proceso a la entrada de otro. Se representa en el diagrama por medio de una flecha, la cual puede llevar el nombre o el tipo de dato. Además de trasladar los datos a otros procesos, los flujos de datos pueden usarse para copiar un valor, realizar la composición de un agregado y así como su inverso. Actores: los actores son objetos que consumen y producen datos generando operaciones por sí mismos, estos se encuentran siempre en las fronteras del diagrama indicando entradas y salidas de datos. Los actores también son llamados terminadores debido a que su función principal es hacer concluir el flujo de datos. En el diagrama son representados mediante rectángulos.
  • 13. Almacenes de datos: son objetos cuya tarea es permitir el almacenamiento y acceso de datos. Se representan en el diagrama mediante unas líneas paralelas que tienen el nombre del almacén. Teniendo ya la representación del sistema en los tres modelos, se lleva a cabo una iteración general de cada uno de ellos. 1. Se deben comparar los tres modelos con la definición del problema y con el conocimiento en el dominio de la aplicación. 2. Se añaden las operaciones claves descubiertas durante la preparación del modelo funcional. 3. Se hace una verificación entre clases, atributos, asociaciones y operaciones de tal manera que resulten congruentes. 4. Comprobar los modelos utilizando escenarios. Se desarrollan escenarios más detallados, incluyendo condiciones de error. 5. Se realiza una iteración de los pasos anteriores, hasta considerar satisfactorio el análisis. Documento de Análisis = Definición del problema + modelo de objetos + modelo dinámico + modelo funcional. El documento abarca el análisis, el diseño y la implementación. Contiene una notación gráfica para expresar modelos orientados a objetos, es posible modelar, diseñar e implementar tanto a objetos en el dominio de la aplicación como a objetos en el dominio de la computadora.
  • 14. 2. Diseño del Sistema. El diseño del sistema es la estrategia de alto nivel para resolver el problema y construir una solución, incluye decisiones acerca de la organización del sistema (arquitectura del sistema) en subsistemas, la asignación de subsistemas a componentes de hardware y software y decisiones fundamentales conceptuales y de política que son las que constituyen el marco de trabajo para el diseño detallado. El modelo de diseño debe ser razonablemente eficiente y práctico a la hora de codificar, tratando detalles de bajo nivel que se omiten en el modelo de análisis. Los pasos a seguir son: 1. Organizar el sistema en subsistemas. 2. Identificar la concurrencia inherente en el problema. 3. Asignar los subsistemas a procesadores y a tareas. 4. Seleccionar la estrategia básica de implementación de los almacenes de datos, en términos de estructuras de datos, archivos y bases de datos. 5. Identificar los recursos globales y determinar los mecanismos para controlar el acceso a tales recursos. 6. Seleccionar una aproximación para implementar el control del software. 7. Consideraciones de condiciones de contorno. 8. Establecimiento de prioridades de compensación. 3. Diseño de Objetos En el Diseño de Objetos se toman las decisiones necesarias para construir un sistema sin descender a los detalles particulares de un lenguaje o sistema de base de datos. El diseño de objetos es el comienzo de un desplazamiento con respecto al mundo real, en el modelo de análisis, aproximándose a la orientación a la computadora, necesaria para una implementación práctica. Rumbaugh sugiere las siguientes etapas:
  • 15. 1. Obtención de las operaciones para el modelo de objetos a partir de los demás modelos. 2. Diseño de algoritmos para la implementación de las operaciones. 3. Optimización de las vías de acceso a los datos. 4. Implementar el control del software completando la aproximación seleccionada durante el diseño del sistema. 5. Ajuste de la estructura de clases para incrementar la herencia. 6. Diseño de la implementación de las asociaciones. 7. Se determina la representación exacta de los atributos que son objetos. 8. Empaquetamiento de las clases y asociaciones en módulos. 4. Implementación del Sistema. Durante la implementación se codifican, tanto las estructuras en el dominio de la aplicación como las estructuras en el dominio de la solución. La base que la sustenta es el diseño de objetos. El código puede ser una simple transición de las decisiones de diseño a las características propias de un lenguaje. Aquí se den hacer pruebas para determinar si el sistema está siendo construido correctamente. Referencias - Metodologías para Análisis y Diseño Orientado a Objetos y MDA. Disponible en [http://www.scribd.com/doc/12848359/Metodologias- Para-Analisis-y-Diseno-Orientado-a-Objetos-y-MDA] - Rumbaugh, James et al. (1996). Modelado y diseño orientados a objetos. Madrid: Prentice Hall, 1996. - Técnica de Modelado de Objetos (OMT) (James Rumbaugh). Disponible en [http://www.itlalaguna.edu.mx/academico/carreras/sistemas/Analisis%20y% 20dise%C3%B1o%20orientado%20a%20objetos/rumbaugh.pdf]