ANÁLISIS ORIENTADO A OBJETO. Características de los Objetos: Identidad, Clasificación, Polimorfismo, Herencia y Encapsulado
ShadowKopaResumen29 de Octubre de 2019
3.866 Palabras (16 Páginas)539 Visitas
Capítulo I – INTRODUCCIÓN AL ANÁLISIS ORIENTADO A OBJETO
Características de los Objetos: Identidad, Clasificación, Polimorfismo, Herencia y Encapsulado.
Objeto: Es la instancia de una clase. Un objeto cuenta con una estructura (atributos) y acciones. Las acciones son todas las actividades que el objeto puede realizar.
Características:
-Identidad: Como el dato es cuantificado en entidades discretas y distinguibles llamadas objetos. C/u tiene su propia identidad, aunque tengan mismos atributos son objetos distintos.
-Clasificación: trata a los objetos con los mismos atributos y operaciones como objetos agrupados en clases.
-Polimorfismo: una misma operación se pueda comportar de forma diferente en clases distintas.
-Herencia: es poder compartir atributos y operaciones con otras clases basadas en relaciones jerárquicas. Cada subclase incorpora, o hereda, todas las propiedades de la superclase y además agrega sus propias propiedades. Las propiedades de una superclase no necesitan ser repetidas en cada subclase.
-Encapsulación: capacidad de los objetos de construir una cápsula a su alrededor que lo convierte en una caja negra, ocultando la información interna que manipulan. Aporta seguridad.
Abstracción: Su finalidad es aislar aquellos aspectos que sean importantes para algún objetivo y suprimir los que no lo sean.Se refiere a quitar las propiedades y acciones de un objeto para dejar sólo aquellas que sean necesarias. Diferentes tipos de problemas requieren distintas cantidades de información. Ej: Clase persona no es igual para un sistema médico que para un negocio.
Paradigma Orientado a Objeto. Análisis Orientado a Objetos.
Orientado a Objetos: Software organizado como una combinación discreta de objetos que incorpora estructura de datos y su comportamiento. Es esto en contraste con la programación convencional en la cual la estructura de datos y comportamiento están rara vez conectadas.
El desarrollo del paradigma de Orientado a Objetos (OO) trata los procesos y datos de forma conjunta.
El desarrollo orientado a objetos comprende dividir un programa en clases, donde estas clases estarán estructuradas por propiedades, atributos, variables, pretendiendo simular y describir de manera conceptual a un objeto, y lo importante de este desarrollo es que al usar el principio de encapsulamiento proporciona la ventaja de que se evite interferencias extrañas entre distintas partes del programa y podemos cambiar la implementación concreta de un objeto sin afectar al resto del sistema.
Análisis, Diseño, Diseño de Objetos.
OMT fue una de las metodologías de análisis y diseño orientados a objetos, más maduros y eficientes. La gran virtud aportada por esta metodología fue su carácter de abierta
Se divide en cuatro fases:
1- Análisis: comienza con la definición del problema, el análisis construye un modelo de la situación en el mundo real mostrando las propiedades importantes. El modelo de análisis es conciso, una abstracción precisa de qué hace el sistema, no como debería hacerse. Los objetos en el modelo deben ser conceptos a implementar para la computadora.
2- Diseño del sistema: el sistema destino es organizado en subsistemas basados en el análisis estructurado y en la arquitectura propuesta. El diseñador de sistemas debe decidir qué características de performance a optimizar, elige una estrategia para atacar el problema y hace ubicaciones tentativas de los recursos
3- Diseño de Objetos: El diseñador adiciona detalles de la implementación al modelo de diseño en concordancia con una estrategia establecida durante el diseño. El foco del diseñador de objetos es la estructura de datos y los algoritmos que necesita para implementar cada clase. Las clases de objetos que vienen del análisis son ahora argumentadas en el dominio de la computadora.
4-Implementación: Se traslada a un lenguaje de programación.
Modelos: (Los modelos no son independientes)
-Modelo objeto: Describe la estructura de los objetos en el sistema, su identidad, relaciones con otros objetos, sus atributos y sus operaciones. Provee la vista esencial para trabajar con los otros dos modelos.
-Modelo dinámico: describe los aspectos de un sistema que conciernen con el tiempo y la secuencia en la que se realizan las operaciones. No tiene en cuenta porque se hacen las operaciones o porque están.
-Modelo funcional: describe aquellos aspectos de un sistema que conciernen con las transformaciones de los valores. Captura que hace el sistema sin importarle como y quien lo hace.
Definición de Clase.
Clase: Describe un grupo de objetos con propiedades similares (atributos) y comportamientos similares (operaciones), relaciones comunes con otros objetos y semántica común. Es una abstracción que describe propiedades importantes para una aplicación y el resto es ignorado.
Funciones, Categorías. Atributos del sistema. Atributos en las funciones.
UML. Historia. Tipos de diagramas. Herramientas CASE: Rational Rose: características.
El Lenguaje Unificado de Modelado se creó con el objetivo de crear un estandar para representar y modelar la información con la que se trabaja en la fase de análisis y diseño.
Historia: Comenzó a gestarse cuando Rumbaugh se unió a la compañía Rational fundada por Booch queriendo unificar el método de Booch y el OMT. Luego se unió Jacobson e incluyó sus ideas. Además con las colaboraciones de otras compañías se llegó a primer borrador de UML.
Tipos de Diagramas:
[pic 1]
El UML hace tangible mediante diagramas la Arquitectura del sistema, la cual resulta de agrupar los distintos diagramas en vistas.
*Vista Casos de Uso: Proporciona información sobre el comportamiento y funcionalidad del sistema.
*Vista de Diseño: Proporciona información sobre el comportamiento y funcionalidad del sistema. (Diag de clases, de estados)
*Vista de Interacción: Proporciona información sobre el rendimiento del sistema, a escalabilidad y la capacidad de procesamiento necesaria. (Diag de secuencia, colaboración)
*Vista de Implementación: Establece el ensamblado del sistema y la gestión de la configuración. (Diag de componentes, paquetes)
*Vista de Despliegue: Permite establecer la topología del sistema, distribución y pautas de instalación. (Diag de despliegue)
Herramientas CASE: (Ingeniería de Software Asistida por Computadora) conjunto de métodos, utilidades y técnicas que facilitan la automatización del ciclo de vida del desarrollo de sistemas de información, completamente o en alguna de sus fases. Algunas funcionalidades que pueden traer:
*Módulos de diagramación (que puede permitir un num max de objetos, cant de diagramas en misma pantalla)
*Generador de código (características: qué lenguaje genera, posibilidad de modificarlo)
*Módulo generador de documentación: Características generación automática, combinar info textual y gráfica
*Módulo Analizador de Sintaxis
Diferencias con el Análisis Estructurado de Sistemas.
En la programación estructurada se basa en la ecuación Algoritmos + Estructura de Datos=Programas. En este tipo de programación los datos y el código se trata por separado y lo único que se realiza son funciones o procedimientos que tratan esos datos y los van pasando de unos a otros. La POO cuenta con las sig. Ventajas:
*Facilidad de Mantenimiento (son más fáciles de leer y comprender)
*Facilidad de modificar los programas: Se pueden realizar añadidos o supresiones a programas simplemente añadiendo o modificando objetos
*Reusabilidad: Un objeto bien diseñado se puede usar numerosas veces y en distintos proyectos.
Capítulo II – CASOS DE USO
Un caso de uso expresa todas las formas de usar un sistema para alcanzar un objetivo para un usuario. En conjunto, los casos de uso proporcionan todos los caminos útiles.
Un caso de uso exitoso debe cumplir los siguientes requisitos:
- Mantenerlos simples al narrar historias
- Entender el panorama general
- Enfocarse en el valor: el valor que prestará a sus usuarios, genera valor si realmente se usa.
- Construir el sistema por partes: Es un error intentar construir un sistema de una sola vez.
- Entregar el sistema en incrementos: C/ versión se implementa sobre la anterior (c/ incremento también)
- Adaptarse para cubrir las necesidades del equipo: Cuando hay comunicación con los usuarios se puede obtener una explicación personal de los requisitos, si esta colaboración no es posible los requisitos tendrń más detalle y pesarán más.
Actores, procesos. Caso de Uso: de alto nivel Diagrama de Caso de Usos.
Caso de Uso: Se utiliza una elipse con el nombre que comienza con un verbo en infinitivo. Un caso de uso describe un proceso de principio a fin, es decir una secuencia de eventos, las acciones y las
transacciones que se requieren para realizarlo.
Actores: Representa un conjunto coherente de roles que los usuarios (persona, hardware) de los casos de uso juegan al interactuar con estos. Representado por un monigote. Puedo representar categorías más generales y especificarlos a través de relaciones de generalización.
...