# data[].attributes.attachment_link.title
METODOLOGIA ORIENTADA A OBJETO KENDAL Y KENDAL

# data[].attributes.body
Conceptualización: Se describen los requerimientos para la solución del sistema.Comienza identificando las necesidades desde el punto de vista de los usuarios. Dichainformación puede ser extraída de los casos de uso y del dominio del problema.

Análisis: Entender y modelar el problema en el dominio de la aplicación.

Diseño del sistema: Determinar la arquitectura del sistema en términos de subsistemas.

Diseño de objetos: Refinar y optimizar el modelo de análisis, agregando conceptos de programación.

Código: Implementar las clases de objetos en un lenguaje de programación.

Pruebas: se realizan para verificar el comportamiento de las clases y objetos que se encuentran descritos en los escenarios.

# data[].attributes.body
Modelo de objetos. Describe la estructura estática de los objetos del sistema (identidad, relaciones con otros objetos, atributos y operaciones). El modelo de objetos proporciona el entorno esencial en el cual se pueden situar el modelo dinámico y el modelo funcional. El objetivo es capturar aquellos conceptos del mundo real que sean importantes para la aplicación. Se representa mediante diagramas de objetos.

Modelo dinámico. Describe los aspectos de un sistema que tratan de la temporización y secuencia de operaciones (sucesos que marcan los cambios, secuencias de sucesos, estados que definen el contexto para los sucesos) y la organización de sucesos y estados. Captura el control, aquel aspecto de un sistema que describe las secuencias de operaciones que se producen sin tener en cuenta lo que hagan las operaciones, aquello a lo que afecten o la forma en que están implementadas. Se representa gráficamente mediante diagramas de estado.

Modelo funcional. Describe las transformaciones de valores de datos (funciones, correspondencias, restricciones y dependencias funcionales) que ocurren dentro del sistema. Captura lo que hace el sistema, independientemente de cuándo se haga o de la forma en que se haga. Se representa mediante diagramas de flujo de datos

# data[].attributes.body
Análisis. El analista construye un modelo del dominio del problema, mostrando sus propiedades más importantes. El modelo de análisis es una abstracción resumida y precisa de lo que debe de hacer el sistema deseado y no de la forma en que se hará. Los elementos del modelo deben ser conceptos del dominio de aplicación y no conceptos informáticos tales como estructuras de datos. Un buen modelo debe poder ser entendido y criticado por expertos en el dominio del problema que no tengan conocimientos informáticos.

Diseño del sistema. El diseñador del sistema toma decisiones de alto nivel sobre la arquitectura del mismo. Durante esta fase el sistema se organiza en subsistemas basándose tanto en la estructura del análisis como en la arquitectura propuesta. Se selecciona una estrategia para afrontar el problema.

Diseño de objetos. El diseñador de objetos construye un modelo de diseño basándose en el modelo de análisis, pero incorporando detalles de implementación. El diseño de objetos se centra en las estructuras de datos y algoritmos que son necesarios para implementar cada clase. OMT describe la forma en que el diseño puede ser implementado en distintos lenguajes (orientados y no orientados a objetos, bases de datos, etc.).

Implementación. Las clases de objetos y relaciones desarrolladas durante el análisis de objetos se traducen finalmente a una implementación concreta. Durante la fase de implementación es importante tener en cuenta los principios de la ingeniería del software de forma que la correspondencia con el diseño sea directa y el sistema implementado sea flexible y extensible. No tiene sentido que utilicemos AOO y DOO de forma que potenciemos la reutilización de código y la correspondencia entre el dominio del problema y el sistema informático, si luego perdemos todas estas ventajas con una implementación de mala calidad.

# data[].attributes.body
Como puede verse es un tema del cual se puede obtener mucho contenido

# data[].attributes.body
La metodología orientada a objetos ha derivado de las metodologías anteriores a éste. Así como los métodos de diseño estructurado realizados guían a los desarrolladores que tratan de construir sistemas complejos utilizando algoritmos como sus bloques fundamentales de construcción, similarmente los métodos de diseño orientado a objetos han evolucionado para ayudar a los desarrolladores a explotar el poder de los lenguajes de programación basados en objetos y orientados a objetos, utilizando las clases y objetos como bloques de construcción básicos.

# data[].attributes.body
No modela la realidad, sino la forma en que las personas comprenden y procesan la realidad
Es un proceso ascendente basado en una abstracción de clases en aumento
Se basa en identificación de objetos, definición y organización de librerías de clases, y creación de macros para aplicaciones específicas
Utiliza menor cantidad de código
Es más reutilizable

# data[].attributes.body
Actualmente, el Análisis Orientado a Objetos (AOO) va progresando como método de análisis de requisitos por derecho propio y como complemento de otros métodos de análisis. En lugar de examinar un problema mediante el modelo clásico de entrada-proceso-salida (flujo de información) o mediante un modelo derivado exclusivamente de estructuras jerárquicas de información, el AOO introduce varios conceptos nuevos. Estos conceptos nuevos le parecen inusuales a mucha gente, pero son bastante naturales.

# data[].attributes.body
1. Definir actividades a llevarse a cabo en un Proyecto de S.I.
2. Unificar criterios en la organización para el desarrollo de S.I.
3. Proporcionar puntos de control y revisión
4. Asegurar la uniformidad y calidad tanto del desarrollo como del sistema en sí

# data[].attributes.body
El DSIOO presenta algunas características, de acuerdo a James Martin & James Odell (Análisis y Diseño Orientado a  Objetos):

Cambian nuestra forma de pensar sobre los sistemas. OO es más natural que las técnicas estructuradas para muchas personas. Después de todo, el mundo está formado por objetos.

Los sistemas suelen construirse a partir de objetos ya existentes.

Las complejidad de los objetos que podemos utilizar va en aumento, ya que los nuevos objetos se construyen a partir de otros, y éstos están a su vez constituidos por otros objetos.

La creación de sistemas es más fácil con técnicas OO, ya que las clases OO están diseñadas para reutilizarse.