OOAD - Sistema orientado a objetos
Sabemos que la técnica de modelado orientado a objetos (OOM) visualiza cosas en una aplicación mediante el uso de modelos organizados alrededor de objetos. Cualquier enfoque de desarrollo de software pasa por las siguientes etapas:
- Analysis,
- Diseño y
- Implementation.
En la ingeniería de software orientada a objetos, el desarrollador de software identifica y organiza la aplicación en términos de conceptos orientados a objetos, antes de su representación final en cualquier lenguaje de programación o herramientas de software específicas.
Fases del desarrollo de software orientado a objetos
Las principales fases del desarrollo de software que utilizan la metodología orientada a objetos son el análisis orientado a objetos, el diseño orientado a objetos y la implementación orientada a objetos.
Análisis orientado a objetos
En esta etapa, se formula el problema, se identifican los requisitos del usuario y luego se construye un modelo basado en objetos del mundo real. El análisis produce modelos sobre cómo debe funcionar el sistema deseado y cómo debe desarrollarse. Los modelos no incluyen ningún detalle de implementación para que cualquier experto en aplicaciones no técnico pueda entenderlos y examinarlos.
Diseño orientado a objetos
El diseño orientado a objetos incluye dos etapas principales, a saber, diseño de sistemas y diseño de objetos.
System Design
En esta etapa se diseña la arquitectura completa del sistema deseado. El sistema se concibe como un conjunto de subsistemas interactuantes que a su vez está compuesto por una jerarquía de objetos interactuantes, agrupados en clases. El diseño del sistema se realiza de acuerdo tanto con el modelo de análisis del sistema como con la arquitectura del sistema propuesta. Aquí, el énfasis está en los objetos que componen el sistema más que en los procesos del sistema.
Object Design
En esta fase, se desarrolla un modelo de diseño basado tanto en los modelos desarrollados en la fase de análisis del sistema como en la arquitectura diseñada en la fase de diseño del sistema. Todas las clases requeridas están identificadas. El diseñador decide si:
- se crearán nuevas clases desde cero,
- cualquier clase existente se puede utilizar en su forma original, o
- las nuevas clases deben heredarse de las clases existentes.
Se establecen las asociaciones entre las clases identificadas y se identifican las jerarquías de clases. Además, el desarrollador diseña los detalles internos de las clases y sus asociaciones, es decir, la estructura de datos para cada atributo y los algoritmos para las operaciones.
Implementación y pruebas orientadas a objetos
En esta etapa, el modelo de diseño desarrollado en el diseño del objeto se traduce a código en un lenguaje de programación o herramienta de software apropiado. Se crean las bases de datos y se determinan los requisitos específicos de hardware. Una vez que el código está en forma, se prueba utilizando técnicas especializadas para identificar y eliminar los errores en el código.