Empecemos por definir lo que puede ser un objeto o clase, para ello existen varias definiciones que nos pueden ser útiles.
Definición de Objeto:
Un objeto es algo real o abstracto acerca del cual almacenamos datos y métodos que manipulan dichos datos
Encapsulado de datos, operaciones que tratan dichos datos, y que observa un estado interno, que posee identidad
Definición de Clase:
Una clase es un grupo de objetos con propiedades (atributos) similares, comportamiento común (operaciones), relaciones comunes entre objetos, y semántica común.
Los objetos tienen una particularidad, y es que están basados en componentes que se relacionan entre ellos a través de interfaces, o lo que es lo mismo, son mas modulares y por lo tanto el trabajo se puede dividir en un conjunto de miniproyectos. Por tanto el modelo de ciclo de vida en cascada clásico no es muy adecuado en este sentido.
Además, hoy en día prevalece la tendencia a reducir los riesgos, y en este sentido, los ciclos de vida en cascada no proporcionan muchas facilidades.
Por tanto, es bastante común que los ciclos de vida típicos utilizados en una metodología de diseño orientado a objetos, sean de tipo iterativo e incremental. Por ejemplo el modelo en espiral es adaptable para este tipo de proyectos, y es muy usado en la actualidad en proyectos de gran envergadura.
No obstante, existen modelos de ciclos de vida específicos para metodologías de diseño orientado a objetos.
Vamos a dar paso a algunos de estos modelos que podemos encontrar:
Modelo Fuente
Es un tipo de ciclo de vida pensado para la orientación a objetos y ha sido posiblemente el más seguido junto con el UML. Un proyecto se divide en las siguientes fases:
1. Planificación del negocio
2. Construcción: Es la más importante y se divide a su vez en otras cinco
actividades
Planificación
Investigación
Especificación
Implementación
Revisión
3. Entrega
La primera y la tercera fase son independientes de la metodología de desarrollo orientado a objetos.
Cada clase puede tener un ciclo de vida sólo para ella debido a que cada una
puede estar en una fase diferente en un momento cualquiera. La ventaja es que
permite un desarrollo solapado e iterativo.
Unificado de Desarrollo (UML)
El Lenguaje de Modelado Unificado (UML:Unified Modeling Language) es la sucesión de una serie de métodos de análisis y diseño orientadas a objetos que aparecen a finales de los 80's y principios de los 90s.
UML es un lenguaje de modelado, no un método. El UML , fusiona los conceptos de la orientación a objetos aportados por Booch, OMT y OOSE , de los cuales hablaremos mas adelante.
UML incrementa la capacidad de lo que se puede hacer con otros métodos de análisis y diseño orientados a objetos. Los autores de UML apuntaron también al modelado de sistemas distribuidos y concurrentes para asegurar que el lenguaje maneje adecuadamente estos dominios.
El lenguaje de modelado es la notación (principalmente gráfica) que usan los métodos para expresar un diseño. El proceso indica los pasos que se deben seguir para llegar a un diseño.
La estandarización de un lenguaje de modelado es invaluable, ya que es la parte principal del proceso de comunicación que requieren todos los agentes involucrados en un proyecto informático. Si se quiere discutir un diseño con alguien más, ambos deben conocer el lenguaje de modelado y no así el proceso que se siguió para obtenerlo.
Características del modelo UML
Es un proceso de desarrollo de software centrado en el proceso que ejecuta un sistema SW, por tanto el ciclo de vida del desarrollo tiene estas características:
Dirigido por casos de uso
Centrado en la arquitectura
Es un modelo Iterativo e incremental.
Modelo Prototipo
Este modelo se describe de la siguiente manera:
ES una alternativa de enfoque para la definición de los requerimientos. Consiste en capturar un conjunto inicial de necesidades e implementarlas rápidamente con la intención declarada de expandirlas y refinarlas iterativamente al ir aumentando la compresión que tienen del sistema los usuarios y quien lo desarrolla.
Metodologias de Booch
El metodo de Booch esta orientado a analizar el modo los documentos y los requisitos del sistema en desarrollo.
Es un ciclo de vida iterativo y incremental, en el cual se mira el desarrollo del producto, que va evolucionando hacia el sistema final
La notacionen el metodo de Booch debe cumplir las siguientes funciones:
-Comunicar decisiones
-Proporcionar sermantica suficiente.
-Manipulacion de herramientas.
Metodologia de RUMBAUGH (OMT:Object Modeling Technique)
OMT es una de las metodologias de analisis y diseño de desarrollo de software orientado a objetos mas eficiente que existe en la actualidad. Es uno de los precursores de UML.
Las etapas de la OMT son:
- Análisis
- Diseño del sistema
- Diseño de objetos
- Implementación
Links Interesantes:
http://www.slideshare.net/hector_h30/metodologas-para-anlisis-y-diseo-orientado-a-objetos-1095524
https://sites.google.com/site/cursofpeanalistafuncional/modelos
http://www.docirs.cl/uml.htm
Informacion complementada con los apuntes del profesor.
No hay comentarios:
Publicar un comentario