OMT
Juan Carlos Olivares Rojas
Víctor Manuel Chávez Gaona
OMT Ingeniería de Software 2 2
IntroducciónIntroducción
Object Technoque Modeling
Creada por James Rumbaugh y Michael Blah...
OMT Ingeniería de Software 2 3
FasesFases
Análisis
Diseño del sistema
Diseño de objetos
Implementación
OMT Ingeniería de Software 2 4
ModelosModelos
Modelo de objetos
Modelo dinámico
Modleo funcional
OMT Ingeniería de Software 2 5
Modelo de ObjetosModelo de Objetos
Objetos y Clases
Objeto
Clases
Diagramas de objetos
Atri...
OMT Ingeniería de Software 2 6
Enlaces y asociaciones
Enlaces
Asociaciones
Multiplicidad
OMT Ingeniería de Software 2 7
Conceptos avanzados de enlaces y asociaciones
Atributos de los enlaces
Modelado de uan asoc...
OMT Ingeniería de Software 2 8
Generalización y herencia
Generalización
Herencia
Anulacíón
Construcciones de agrupamiento
...
OMT Ingeniería de Software 2 9
ConstrucciónConstrucción
Se identifican las clases de objetos
Se empieza a construir un dic...
OMT Ingeniería de Software 2 10
NotacionesNotaciones
OMT Ingeniería de Software 2 11
Modelo Avanzado de ObjetosModelo Avanzado de Objetos
Agregación
Clases abstractas
Herencia...
OMT Ingeniería de Software 2 12
NotacionesNotaciones
OMT Ingeniería de Software 2 13
Modelo DinámicoModelo Dinámico
Sucesos y Estados
Sucesos
Escenarios y seguimiento de suces...
OMT Ingeniería de Software 2 14
Operaciones
Diagramas de estados anidados
Concurrencia
Concurrencia de agregación
Concurre...
OMT Ingeniería de Software 2 15
Conceptos avanzados de modelado dinámico
Acciones de entrada y de salida
Acciones internas...
OMT Ingeniería de Software 2 16
ConstrucciónConstrucción
Se preparan escenarios de secuencias típicas de
interacción
Se id...
OMT Ingeniería de Software 2 17
NotacionesNotaciones
OMT Ingeniería de Software 2 18
Modelo FuncionalModelo Funcional
Diagramas de flujo de datos
Procesos
Flujo de datos
Actor...
OMT Ingeniería de Software 2 19
ConstrucciónConstrucción
Se identifican los valores de entrada y de salida
Se utilizan dia...
OMT Ingeniería de Software 2 20
NotacionesNotaciones
OMT Ingeniería de Software 2 21
AnálisisAnálisis
Definición del problema
Se construye un modelo de objetos:
Modelo de obje...
OMT Ingeniería de Software 2 22
Se construye un modelo funcional
Modelo funcional = diagramas de flujo de datos +
restricc...
OMT Ingeniería de Software 2 23
Diseño de SistemasDiseño de Sistemas
Se organiza el sistema en subsistemas
Se identifica l...
OMT Ingeniería de Software 2 24
Se identifican los recursos globales y se determinan los
mecanismos para controlar el acce...
OMT Ingeniería de Software 2 25
Diseño de ObjetosDiseño de Objetos
Se obtienen las operaciones para el modelo de
objetos a...
OMT Ingeniería de Software 2 26
Se ajusta la estructura de clases para incrementar la
herencia
Se diseña la implementación...
OMT Ingeniería de Software 2 27
VentajasVentajas
Proporciona una serie de pasos perfectamente
definidos al desarrollador
T...
OMT Ingeniería de Software 2 28
DesventajasDesventajas
Hay pocos métodos para encontrar
inconsistencias en los módulos
Int...
OMT Ingeniería de Software 2 29
APLICACIONESAPLICACIONES
Archivos.
Base de datos orientadas a objetos.
Estructura de datos...
OMT Ingeniería de Software 2 30
Herramientas CASE que soportan
OMT
Herramientas CASE que soportan
OMT
Excelerator II Inter...
OMT Ingeniería de Software 2 31
Sistema de cajero automático: ATM
(Automated Teller Machine)
Sistema de cajero automático:...
OMT Ingeniería de Software 2 32
Algunos requerimientosAlgunos requerimientos
El analista debe diseñar el software para los...
OMT Ingeniería de Software 2 33
Una red de CAUna red de CA
OMT Ingeniería de Software 2 34
MODELADO DE OBJETOSMODELADO DE OBJETOS
Identificar los objetos y la clase.
OMT Ingeniería de Software 2 35
Clases incorrectasClases incorrectas
OMT Ingeniería de Software 2 36
Clases correctasClases correctas
OMT Ingeniería de Software 2 37
Preparar un diccionario de datosPreparar un diccionario de datos
Cuenta Cuenta individual ...
OMT Ingeniería de Software 2 38
Identificar asociaciones entre
objetos
Identificar asociaciones entre
objetos
Locuciones V...
OMT Ingeniería de Software 2 39
Identificar asociaciones entre
objetos (continuación...)
Identificar asociaciones entre
ob...
OMT Ingeniería de Software 2 40
Diagrama inicial para un sistema
ATM.
Diagrama inicial para un sistema
ATM.
OMT Ingeniería de Software 2 41
Modelo de objetos de un CA con
sus atributos
Modelo de objetos de un CA con
sus atributos
OMT Ingeniería de Software 2 42
Organizar y simplificar la clase de
objetos usando herencia
Organizar y simplificar la cla...
OMT Ingeniería de Software 2 43
Iterar y refinar el modelo.Iterar y refinar el modelo.
OMT Ingeniería de Software 2 44
MODELADO DINÁMICOMODELADO DINÁMICO
Se preparan escenarios de secuencias típicas de interac...
OMT Ingeniería de Software 2 45
Escenario
normal(continuación...)
Escenario
normal(continuación...)
El CA verifica que la ...
OMT Ingeniería de Software 2 46
Escenario con excepcionesEscenario con excepciones
El CA verifica el número de serie y la ...
OMT Ingeniería de Software 2 47
Se prepara un seguimiento de
sucesos para cada escenario.
Se prepara un seguimiento de
suc...
OMT Ingeniería de Software 2 48
Diagrama de flujo de sucesosDiagrama de flujo de sucesos
OMT Ingeniería de Software 2 49
Se construye un diagrama de
estados.
Se construye un diagrama de
estados.
OMT Ingeniería de Software 2 50
MODELO FUNCIONALMODELO FUNCIONAL
Identificar los valores de entrada y salida.
OMT Ingeniería de Software 2 51
Construir diagramas de flujo de
datos que muestren las
dependencias funcionales.
Construir...
OMT Ingeniería de Software 2 52
Describir funciones.Describir funciones.
Actualizar cuenta (cuenta, cantidad, tipo-de-tran...
OMT Ingeniería de Software 2 53
DISEÑODISEÑO
Arquitectura del Sistema CA
OMT Ingeniería de Software 2 54
PseudocódigoPseudocódigo
Hacer para siempre
Mostrar pantalla principal
Leer tarjeta
Repeti...
OMT Ingeniería de Software 2 55
Pseudocódigo (continuación...)Pseudocódigo (continuación...)
OMT Ingeniería de Software 2 56
CONCLUSIONESCONCLUSIONES
OMT pone énfasis en la importancia del modelo y
uso del modelo pa...
OMT Ingeniería de Software 2 57
BIBLIOGRAFIABIBLIOGRAFIA
Modelado y diseño orientados a objetos Metodología
OMT. James Rum...
Próxima SlideShare
Cargando en…5
×

OMT

550 visualizaciones

Publicado el

Presentación de la Metodología OMT

Publicado en: Diseño
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
550
En SlideShare
0
De insertados
0
Número de insertados
4
Acciones
Compartido
0
Descargas
6
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

OMT

  1. 1. OMT Juan Carlos Olivares Rojas Víctor Manuel Chávez Gaona
  2. 2. OMT Ingeniería de Software 2 2 IntroducciónIntroducción Object Technoque Modeling Creada por James Rumbaugh y Michael Blaha en 1991 Metodología de Análisis y Diseño Orientada a Objetos
  3. 3. OMT Ingeniería de Software 2 3 FasesFases Análisis Diseño del sistema Diseño de objetos Implementación
  4. 4. OMT Ingeniería de Software 2 4 ModelosModelos Modelo de objetos Modelo dinámico Modleo funcional
  5. 5. OMT Ingeniería de Software 2 5 Modelo de ObjetosModelo de Objetos Objetos y Clases Objeto Clases Diagramas de objetos Atributos Operaciones y métodos
  6. 6. OMT Ingeniería de Software 2 6 Enlaces y asociaciones Enlaces Asociaciones Multiplicidad
  7. 7. OMT Ingeniería de Software 2 7 Conceptos avanzados de enlaces y asociaciones Atributos de los enlaces Modelado de uan asociación en forma de clase Nombre de rol Clasificación Cualificación Agregación
  8. 8. OMT Ingeniería de Software 2 8 Generalización y herencia Generalización Herencia Anulacíón Construcciones de agrupamiento Módulo Hojas
  9. 9. OMT Ingeniería de Software 2 9 ConstrucciónConstrucción Se identifican las clases de objetos Se empieza a construir un diccionario que contiene las descripciones de clases, atributos y asociaciones Se añaden las asociaciones entre clases Se añaden los atributos de objetos y de enlaces Se organizan y simplifican las clases de objetos empleando la herencia Se comprueban las vías de acceso empleando escenarios e iterando los pasos anteriores cuando sea conveniente
  10. 10. OMT Ingeniería de Software 2 10 NotacionesNotaciones
  11. 11. OMT Ingeniería de Software 2 11 Modelo Avanzado de ObjetosModelo Avanzado de Objetos Agregación Clases abstractas Herencia múltiple Metadatos Claves candidatas Restricciones
  12. 12. OMT Ingeniería de Software 2 12 NotacionesNotaciones
  13. 13. OMT Ingeniería de Software 2 13 Modelo DinámicoModelo Dinámico Sucesos y Estados Sucesos Escenarios y seguimiento de sucesos Estados Diagramas de estados Condiciones
  14. 14. OMT Ingeniería de Software 2 14 Operaciones Diagramas de estados anidados Concurrencia Concurrencia de agregación Concurrencia dentro de un objeto
  15. 15. OMT Ingeniería de Software 2 15 Conceptos avanzados de modelado dinámico Acciones de entrada y de salida Acciones internas Transición automática Envío de sucesos Sincronización de actvidades concurrentes
  16. 16. OMT Ingeniería de Software 2 16 ConstrucciónConstrucción Se preparan escenarios de secuencias típicas de interacción Se identiifcan sucesos entre objetos y se prepara un seguimiento de sucesos para cada escenario Se prepara un diagrama de flujo de sucesos para el sistema Se desarrolla un diagrama de estados para cada clase que tenga un comportamiento dinámico importante Se comprueba la congruencia y compleción de los sucesos compartidos entre diagramas de estados
  17. 17. OMT Ingeniería de Software 2 17 NotacionesNotaciones
  18. 18. OMT Ingeniería de Software 2 18 Modelo FuncionalModelo Funcional Diagramas de flujo de datos Procesos Flujo de datos Actores Almaecnes de datos Flujos de control Especificación de operaciones Restricciones
  19. 19. OMT Ingeniería de Software 2 19 ConstrucciónConstrucción Se identifican los valores de entrada y de salida Se utilizan diagramas de flujo de datos según sea necesario parta mostrar las dependencias funcionales Se describe lo que hace cada función Se identifican las restricciones Se especifican los criterios de optimización
  20. 20. OMT Ingeniería de Software 2 20 NotacionesNotaciones
  21. 21. OMT Ingeniería de Software 2 21 AnálisisAnálisis Definición del problema Se construye un modelo de objetos: Modelo de objetos = diagrama de modelo de objetos + diccionario de datos Se desarrolla un modelo dinámico Modelo dinámico = diagramas de estados + diagrama global de flujo de sucesos
  22. 22. OMT Ingeniería de Software 2 22 Se construye un modelo funcional Modelo funcional = diagramas de flujo de datos + restricciones Se verifican, iteran y refinan los 3 modelos Documento de análisis = definición del problema + modelo de objetos + modelo dinámico + modelo funcional
  23. 23. OMT Ingeniería de Software 2 23 Diseño de SistemasDiseño de Sistemas Se organiza el sistema en subsistemas Se identifica la concurrencia inherente en el problema Se asignan los subsistemas a procesadores y a tareas Se seleccioan la estrategia básica para implementar los almacenes d edatos en términos de estructuras de datos, archivos y bases de datos
  24. 24. OMT Ingeniería de Software 2 24 Se identifican los recursos globales y se determinan los mecanismos para controlar el acceso a los mismos Se selecciona un aaproximación para implementar el control del software Se consideran las condiciones de contorno Se establecen las prioridades de compensación Documento del diseño de sistema = estructura de la arquitectura básica del sistema y desiciones estratégicas de alto nivel
  25. 25. OMT Ingeniería de Software 2 25 Diseño de ObjetosDiseño de Objetos Se obtienen las operaciones para el modelo de objetos a partir d elos demás modelos Se diseñan algoritmos para implementar las operaciones Se optimizan las vías de acceso a los datos Se implementa el control del software completando la aproximación seleccionada durante el diseño del sistema
  26. 26. OMT Ingeniería de Software 2 26 Se ajusta la estructura de clases para incrementar la herencia Se diseña la implementación de las asociaciones Se determina la representación exacta de los atributos que son objetos Se empaquetan las clases y las asociaciones en módulos Documento de diseño = Modelo d eobjetos detallado + modelo dinámico detallado + modelo funcional detallado
  27. 27. OMT Ingeniería de Software 2 27 VentajasVentajas Proporciona una serie de pasos perfectamente definidos al desarrollador Tratamiento especial de la herencia Facilita el mantenimiento dada la gran cantidad de información que s egenera en el análisis Es fuerte en el análisis
  28. 28. OMT Ingeniería de Software 2 28 DesventajasDesventajas Hay pocos métodos para encontrar inconsistencias en los módulos Interacción de objetos no soportada explícitamente en ninguna herramienta gráfica Al ser un análisis iterativo no se sabe cuando empezar el diseño Es débil en el diseño
  29. 29. OMT Ingeniería de Software 2 29 APLICACIONESAPLICACIONES Archivos. Base de datos orientadas a objetos. Estructura de datos. Multimedias. Interactivas. Web. Cliente/Servidor. Distribuidas.
  30. 30. OMT Ingeniería de Software 2 30 Herramientas CASE que soportan OMT Herramientas CASE que soportan OMT Excelerator II Intersolv Inc. MetaEdit MetaCASE Consulting YO ObjectMarker, Mark V Software BOCS, Berard Software Eng. ObjectTeam, Candre Technologies, Inc. OMTool, Martin Marietta. Paradigm Plus, Protosoft.
  31. 31. OMT Ingeniería de Software 2 31 Sistema de cajero automático: ATM (Automated Teller Machine) Sistema de cajero automático: ATM (Automated Teller Machine) Diseñar el software para dar soporte a una red bancaria automatizada, que incluya tanto cajeros humanos como cajeros automáticos (CA), y que deberán ser compartidos por un consorcio de bancos.
  32. 32. OMT Ingeniería de Software 2 32 Algunos requerimientosAlgunos requerimientos El analista debe diseñar el software para los CA y para la red. Los cajeros automáticos se comunican con una computadora central que aprueba las transacciones con los bancos adecuados. El sistema necesita mantener unos registros adecuados y también las oportunas medidas de seguridad y debe admitir accesos concurrentes a una misma cuenta de forma correcta.
  33. 33. OMT Ingeniería de Software 2 33 Una red de CAUna red de CA
  34. 34. OMT Ingeniería de Software 2 34 MODELADO DE OBJETOSMODELADO DE OBJETOS Identificar los objetos y la clase.
  35. 35. OMT Ingeniería de Software 2 35 Clases incorrectasClases incorrectas
  36. 36. OMT Ingeniería de Software 2 36 Clases correctasClases correctas
  37. 37. OMT Ingeniería de Software 2 37 Preparar un diccionario de datosPreparar un diccionario de datos Cuenta Cuenta individual de un banco a la cual se le pueden aplicar transacciones. Las cuentas pueden ser de varios tipos; como mínimo serán de ahorro o a la vista. Un cliente puede tener más de una CA Punto que permite a los clientes introducir sus propias transacciones empleando una tarjeta de crédito como identificación. El CA interacciona con el cliente para obtener información de la transacción, la envía a la computadora central para su verificación y procesamiento, y suministra dinero al usuario. Suponemos que el CA no necesita funcionar independientemente de la red.
  38. 38. OMT Ingeniería de Software 2 38 Identificar asociaciones entre objetos Identificar asociaciones entre objetos Locuciones Verbales: La red bancaria incluye cajeros y CA El consorcio comparte los CA. El banco proporciona la computadora del banco. La computadora del banco proporciona las cuentas. La computadora del banco procesa las transacciones de cada cuenta. El banco posee el punto de caja.
  39. 39. OMT Ingeniería de Software 2 39 Identificar asociaciones entre objetos (continuación...) Identificar asociaciones entre objetos (continuación...) Locuciones verbales implícitas: El consorcio está formado por bancos. Los bancos tienen cuentas. El consorcio posee la computadora central. El sistema se encarga del registro. El sistema se encarga de la seguridad.
  40. 40. OMT Ingeniería de Software 2 40 Diagrama inicial para un sistema ATM. Diagrama inicial para un sistema ATM.
  41. 41. OMT Ingeniería de Software 2 41 Modelo de objetos de un CA con sus atributos Modelo de objetos de un CA con sus atributos
  42. 42. OMT Ingeniería de Software 2 42 Organizar y simplificar la clase de objetos usando herencia Organizar y simplificar la clase de objetos usando herencia
  43. 43. OMT Ingeniería de Software 2 43 Iterar y refinar el modelo.Iterar y refinar el modelo.
  44. 44. OMT Ingeniería de Software 2 44 MODELADO DINÁMICOMODELADO DINÁMICO Se preparan escenarios de secuencias típicas de interacción. Escenario normal El CA pide al usuario que inserte una tarjeta; el usuario inserta una tarjeta de crédito. El CA admite la tarjeta y lee su número de serie. El CA solicita la contraseña; el usuario escribe “1234”. El CA verifica el número de serie y la contraseña con el consorcio; esta la comprueba con el banco “39” y notifica la aceptación al CA. El CA pide al usuario que seleccione la clase de transacción que desea (retirar fondos, hacer un ingreso o una transferencia); el usuario selecciona retirar fondos.
  45. 45. OMT Ingeniería de Software 2 45 Escenario normal(continuación...) Escenario normal(continuación...) El CA verifica que la cantidad se encuentre dentro de los límites de crédito predefinidos, y pide al consorcio que procese la transacción; éste pasa la solicitud al banco, que eventualmente confirma el éxito de la misma y proporciona el nuevo saldo disponible en cuenta. El CA proporciona el dinero y pide al usuario que lo recoja; éste toma el dinero. El CA pregunta si el usuario desea continuar; éste dice que no. El CA imprime un recibo, expulsa la tarjeta y pide al usuario que la recoja; el usuario toma el recibo y la tarjeta. El CA pide a un usuario que inserte una tarjeta.
  46. 46. OMT Ingeniería de Software 2 46 Escenario con excepcionesEscenario con excepciones El CA verifica el número de serie y la contraseña con el consorcio, que los rechaza después de consultar con el banco adecuado. El CA indica que la contraseña es incorrecta, y pide al usuario que vuelva a escribirla; éste usuario escribe “1234”, y la tarjeta es admitida por el consorcio tras verificar el CA. El CA pide al usuario que seleccione la clase de transacción que desea; el usuario selecciona una retirada de fondos. El CA pregunta la cantidad de dinero; el usuario cambia de opinión y pulsa “cancelar”.
  47. 47. OMT Ingeniería de Software 2 47 Se prepara un seguimiento de sucesos para cada escenario. Se prepara un seguimiento de sucesos para cada escenario.
  48. 48. OMT Ingeniería de Software 2 48 Diagrama de flujo de sucesosDiagrama de flujo de sucesos
  49. 49. OMT Ingeniería de Software 2 49 Se construye un diagrama de estados. Se construye un diagrama de estados.
  50. 50. OMT Ingeniería de Software 2 50 MODELO FUNCIONALMODELO FUNCIONAL Identificar los valores de entrada y salida.
  51. 51. OMT Ingeniería de Software 2 51 Construir diagramas de flujo de datos que muestren las dependencias funcionales. Construir diagramas de flujo de datos que muestren las dependencias funcionales.
  52. 52. OMT Ingeniería de Software 2 52 Describir funciones.Describir funciones. Actualizar cuenta (cuenta, cantidad, tipo-de-transacción) -> dinero, recibo, mensaje Si la cantidad que se intenta retirar supera el saldo disponible, Rechazar la transacción y no entregar ningún dinero. Si la cantidad que se intenta retirar no supera el saldo disponible, Cargar el importe y dispensar el efectivo solicitado Si la transacción es un ingreso, Abandonar el importe y no dispensar efectivo. Si la transacción es una petición de saldo No dispensar efectivo. En todo caso, El recibo muestra el número del CA, fecha, hora, número de cuenta, tipo-de- transacción, importe (si lo hubiere) y nuevo saldo.
  53. 53. OMT Ingeniería de Software 2 53 DISEÑODISEÑO Arquitectura del Sistema CA
  54. 54. OMT Ingeniería de Software 2 54 PseudocódigoPseudocódigo Hacer para siempre Mostrar pantalla principal Leer tarjeta Repetir Pedir contraseña Leer contraseña Verificar cuenta Hasta que la verificación de cuenta sea correcta Repetir Repetir Preguntar clase de transacción Leer clase Leer cantidad Comenzar transacción Esperar que acabe Hasta que la transacción sea correcta Dispensar efectivo Esperar a que lo tome el cliente Preguntar si continúa Hasta que el usuario quiera terminar Expulsar tarjeta Esperar hasta que el cliente tome la tarjeta
  55. 55. OMT Ingeniería de Software 2 55 Pseudocódigo (continuación...)Pseudocódigo (continuación...)
  56. 56. OMT Ingeniería de Software 2 56 CONCLUSIONESCONCLUSIONES OMT pone énfasis en la importancia del modelo y uso del modelo para lograr una abstracción, en el cual el análisis esta enfocado en el mundo real para un nivel de diseño, también pone detalles particulares para modelado de recursos de la computadora.
  57. 57. OMT Ingeniería de Software 2 57 BIBLIOGRAFIABIBLIOGRAFIA Modelado y diseño orientados a objetos Metodología OMT. James Rumbaugh, Michael Blaha, William Premerlani, Frederick Hedí y William Lorensen. Editorial Prentice Hall 1996 Primera reimpresión. Metodologías orientadas a objetos (Revisión comparativa) Instituto Tecnológico de Morelia 1999 Monografía presentada por: Helio Bernandino Hernández Ponce http://www.mcc.unam.mx/~cursos/Objetos/Omt/omt.html

×