Ingeniería de Software
Orientado a Objetos
M.C. Juan Carlos Olivares Rojas
Agenda
Fundamentos de la Ingeniería de Software
Orientado a Objetos.
Análisis Orientado a Objetos
Diseño Orientado a Objetos
Métodos Orientados a Objetos
Fundamentos de la Ingeniería de
Software Orientado a Objetos.
• La identificación de clases y objetos forma
parte importante de la ISOO.
• La gestión de procesos es similar aunque se
necesita considerar otros elementos sobre
todo en el área de desarrollo, pero en
términos generales es el mismo proceso.
Análisis Orientado a Objetos
• Para construir un modelo de Análisis
Orientado a Objetos, se usan cinco principios
básicos:
• Se modela el dominio de la información
• Se describe la función.
• Se representa
modelo.
el
comportamiento
del
Análisis Orientado a Objetos
• Los modelos de datos funcional y de
comportamiento se dividen para mostrar más
detalles.
• Los modelos iniciales representan la esencia
del problema mientras que los últimos
aportan detalles de la implementación.
Análisis Orientado a Objetos
• Para realizar la Ingeniería de Requerimientos
se siguen los siguientes pasos:
• Los requisitos básicos del usuario deben
comunicarse entre el cliente y el ingeniero de
software.
• Identificar las clases
atributos y métodos).
(es
decir,
definir
Análisis Orientado a Objetos
• Se debe especificar una jerarquía de clases.
• Representan las relaciones objeto a objeto
• Modelar el comportamiento del objeto.
• Repetir iterativamente las tareas de la 1 a la
5 hasta completar el modelo.
Análisis Orientado a Objetos
• Los diagramas de clase son muy útiles en
esta etapa para encontrar un buen modelo
de solución.
• Los diagramas de caso de uso son útiles
para definir el entorno en donde se ejecutará
la aplicación.
Diseño Orientados a Objetos
• Consiste en representar un modelo de datos
que pueda ser fácilmente implantable con
algún lenguaje de programación orientado a
objetos.
• Los
objetos
son
componentes
potencialmente reutilizables, lo que hace que
el software sea más fácil de mantener.
Diseño Orientado a Objeto
• El proceso general para el diseño orientado a
objetos tiene varias etapas:
1.Comprender y definir el contexto y los modos
de utilización del sistema.
2.Diseñar la arquitectura del sistema.
3.Identificar los objetos principales en el
sistema.
Diseño Orientado a Objetos
4. Desarrollar los modelos de diseño.
5. Especificar las interfaces de los objetos.
• No es un proceso sistematizado al 100%,
por lo que necesita refinarse con varias
iteraciones.
Diseño Orientado a Objetos
• El primer paso consiste en identificar los
tipos de relaciones definidos en el sistema,
los cuales pueden ser internos y externos.
Estas relaciones pueden ser dos:
• El contexto del sistema: es un modelo
estático que describe a los otros sistemas en
ese entorno.
Diseño Orientado a Objetos
• El modelo que el sistema utiliza: es un
modelo dinámico que describe cómo
interactúa el sistema con su entorno.
• Con el diseño de contexto se puede crear
fácilmente el diseño arquitectónico de la
aplicación.
• Existen diversas técnicas para identiciar
objetos:
Diseño Orientado a Objetos
• Utilizar un análisis gramatical de la
descripción en lenguaje natural de un
sistema.
• Utilizar entidades tangibles (cosas).
• Utilizar un enfoque de comportamiento.
• Utilizar un análisis basado en escenarios.
Diseño Orientado a Objetos
• Existen dos tipos de modelos de diseño para
describir un diseño orientado a objetos:
• Modelos Estáticos.
• Modelos Dinámicos.
• Ejemplos de algunos modelos:
Diseño Orientado a Objetos
• Los modelos de subsistemas
• Los modelos de secuencia
• Los modelos de máquinas de estado
• La encapsulación de las clases hace que los
sistemas evolucionen de forma rápida y
sencilla.
Métodos Orientado a Objetos
• Existen diversas metodologías para la
realización de análisis y diseño orientado a
objetos como:
• Método de Booch: abarca un microproceso
de desarrollo y un macroproceso de
desarrollo.
• Método OMT (Rumbaugh)
Métodos Orientado a Obejtos
• Objectory (Jacobson)
• Método de Coad-Yourdon
• Método UML:
• Análisis: tiene 5 diferentes vistas con
diferentes diagramas en cada una de ellas.
Métodos Orientado a Objetos
• Vista usuario: representa el sistema
(producto) desde la perspectiva del usuario.
Se suele utilizar diagramas de casos de uso.
• Vista estructural: modela los datos y la
funcionalidad del sistema; es decir, la
estructura estática (clases, objetos y
relaciones).
Métodos Orientado a Objetos
• Vista del comportamiento: representa los
aspectos dinámicos o de comportamiento del
sistema. También muestra las interacciones
o colaboraciones entre los diversos
elementos estructurales descritos en vistas
anteriores.
• Vista de implementación Los aspectos
estructurales y de comportamiento se
representan aquí tal y como van a ser
implementados.
Métodos Orientado a Objetos
• Vista del entorno: aspectos estructurales de
comportamiento en el que el sistema a
implementar se representa.
• En cuestión de diseño se tienen dos
actividades principales:
• Diseño de sistema.
• Diseño de objetos.
¿Preguntas, dudas y
comentarios?