Verónica León Montes

Ingeniería en Sistemas Computacionales

Análisis y Diseño Orientado a Objetos

 ronyorev@hotmail.com

Grupo: 5851

1er. Parcial

2do.Parcial

 

1er  Parcial

 1.- Modelos

    1.1 Modelo de Estructura de Objetos (OSM)

    1.2 Modelado de Procesos de Negocios y Secuencias de Transacciones.

2.- Clases de Java Lang

    1.1 Mapeo entre tipo primitivo y su clase envoltura

Modelo de Estructura de Objetos (OSM)

Conceptos y propósito del modelo de estructura de objetos

El OSM es el modelo fundamental que provee un medio uniforme para modelar el sistema desde la captura de requerimientos en la etapa inicial del análisis hasta la implementación, atravesando todo el ciclo de desarrollo del sistema.

Este modelo identifica :

·                    las clases de objetos en la aplicación

·                    como las clases de objetos se asocian unas con otras

·                    como se comunican los objetos

·                    los detalles de cada clase de objetos, incluyendo atributos y operaciones

Durante el proceso de análisis y diseño, el OSM es definido en sucesivos niveles incrementales de detalle, hasta que el nivel necesario para la implementación es alcanzado.

Todos los demás modelos capturan detalles que alimentan es modelo.

El desarrollo de OSM es un proceso aditivo, diferenciándose esto del enfoque transformacional característico de otros métodos como el estructurado, donde los DFD del análisis son transformados en diagramas de estructura durante el diseño, con los consiguientes problemas que esto acarrea.

Durante el ciclo de desarrollo se aportan los siguientes elementos al modelo:

·                    Análisis del Negocio: se reconocen objetos claves del negocio y generan las abstracciones en las clases apropiadas (objetos entidad).

·                    Análisis de Requerimientos: se identifican asociaciones estructurales entre objetos y nuevas clases (entidad).

·                    Diseño lógico: Se incorporan todas las clases necesarias para la aplicación incluyendo los objetos de interfaz y de control.

·                    Diseño Físico: se incorporan todos los detalles remanentes para la implementación física de cada clase de objetos.

Componentes del modelo de estructura de objetos.

El componente básico del OSM es la clase de objetos.

Se distinguen tres tipos de clases:

·                    Objetos Entidad

·                    Objetos de Interfaz

·                    Objetos de Control.

Para cada clase identificada se describen:

·                    Operaciones

·                    Atributos

·                    Restricciones

Adicionalmente el OSM describe las asociaciones entre objetos o clases de objetos. Se distinguen los siguientes tipos de asociaciones:

·                    Relaciones Estáticas

·                    Herencia

·                    Agregación

·                    Comunicación por mensajes

[volver]

Modelado de Procesos de Negocios y Secuencias de Transacciones.

Conceptos y propósito del modelo de p. de negocios y sec. de trans.

Los requerimientos para una aplicación de negocios deben basarse en las actuales actividades del negocio, que la aplicación deberá soportar.

El Modelo de Procesos de Negocios (BPM) es usado durante el análisis del negocio (análisis del sistema actual) y provee un medio para describir el negocio.

El Modelo de Secuencia de Transacciones (TSM) es usado durante el análisis de requerimientos del negocio y provee un medio para describir la funcionalidad requerida de la aplicaciones para soportar los procesos de negocios.

El enfoque en los procesos de negocio durante el análisis del negocio provee el punto de partida para determinar qué se requiere de la aplicación.

Durante el análisis de requerimientos decidimos qué parte de los procesos de negocio deben computarizarse y describimos dichos requerimientos usando una o más secuencias de transacción (determinación de las fronteras de automatización).

Las secuencias de transacciones modelan que es lo que el usuario requiere de la aplicación (su contenido funcional).

Las secuencias de transacciones proveen la navegabilidad desde lo requerimientos del usuario a los objetos y operaciones que implementan dicha funcionalidad.

Las secuencias de transacciones proveen también un medio adecuado para comunicarse con el usuario en un leguaje y nivel de abstracción que él pueda comprender con facilidad.

Como parte del proceso de Diseño Lógico, las secuencias de transacciones son analizadas para identificar como los objetos y sus operaciones proveen la funcionalidad requerida por una secuencia de transacciones.

Posteriormente, durante el proceso de testeo de la aplicación, sirven de base para definir casos de testeos.

Proceso de Negocio

Un proceso de negocios es una colección de actividades que toman uno o más tipos de entrada, y crea una salida de valor para el cliente.

Un proceso de negocios describe desde el comienzo al fin la secuencia de eventos requeridos para producir un resultado de negocio significativo.

El cliente puede ser externo o interno a la organización.

Los procesos de negocio típicamente atraviesan los límites de la organización y de sus departamentos internos, evitando la clásica visión de compartimentos estancos. Por este motivo, cualquier modificación drástica a un proceso de negocio implica un cambio en la estructura organizacional.

Como identificar y definir procesos de negocio?

1.                Se identifican los productos/servicios significantes de los que es responsable el negocio y se asocia cada uno de ellos a uno o más procesos de negocios.

2.                Se identifican las entradas y eventos disparadores que inician cada proceso de negocio y se da un nombre a cada PN.

3.                Cada PN se describe especificando las actividades de alto nivel que se requieren para producir los productos y servicios.

Secuencia de Transacciones

El concepto de secuencia de transacciones es muy similar al concepto de Caso de Uso introducido por Jacobson en su metodología OOSE y de amplia difusión actualmente.

Una secuencia de transacciones es conceptualmente similar a un proceso de negocio. La diferencia radica en su alcance. El proceso de negocio se utiliza para comprender y modelar el funcionamiento de la empresa (negocio). Las secuencias de transacciones se utilizan para modelar los requerimientos funcionales de la aplicación que soportará determinados procesos de negocios.

Los procesos de negocio son trasladados en secuencias de transacciones durante el análisis de requerimientos.

El alcance de una secuencia de transacciones es el mismo de un proceso de negocios o de un subproceso muy significativo.

Una secuencia de transacciones puede implicar más de un usuario y función y puede extenderse en el tiempo, esto es no tener resolución inmediata.

El proceso de identificar requerimientos del usuario y secuencias de transacciones puede asistirse con la prototipación de interfaces.

Como identificar y definir secuencias de transacciones?

1.                Identificación a través de actores

1.                Identificar los actores que se comunicarán con el sistema.

2.                Para cada actor considerar:

1.               Cuales son las principales tareas del actor

2.               Qué accesos (lectura o escritura) requiere el actor del sistema

3.               Cuando el actor informará al sistema acerca de cambios fuera del sistema

4.               Cuando el actor será informado de cambios a través del sistema

2.                Identificación a través de eventos

Consiste en identificar a que eventos externos o temporales debe ser capaz de responder el sistema:

2.1 Confeccionar la lista de eventos.

2.2 Asociar una secuencia de transacciones para cada evento identificada.

Componentes y Herramientas de modelado de procesos de negocios y secuencias de transacciones

Para modelar y documentar procesos de negocios y secuencias de transacciones se utilizan los mismos diagramas y documentos:

1.                Diagrama de secuencia de transacciones (TSD)

2.                Descripción textual

3.                Diagrama de Interacción de Objetos (OID)

4.                Diagrama de Flujo de Actividad (AFD)

[volver]

 

Clases de Java Lang

MAPEO ENTRE TIPO PRIMITIVO Y SU CLASE ENVOLTURA

 

                La clase envoltura tiene el mismo nombre que el tipo de datos primitivo, (con la primera letra Mayuscula)

 

TIPO PRIMITIVO

ENVOLTURA

byte

Byte

short

Short

int

Integer

long

Long

char

Carácter

float

Float

double

Double

bolean

Boolean

 

                Para realizar la conversión de tipo primitivo a tipo no primitivo.

 

String miCadena=”#12345”

Int miEntero=Integer.parserInt(miCadena)

 

                byte_Byte.parseByte(a String)

                short_Short.parseShort(a String)

                int_Integer.parseInt(a String)

                long_Long.parseLong(a String)

                float_Float.parseFloat(a String)

                double_Double.parseFloat(a String)

                boolean_Boolean.parseBoolean(a String) 

EXCEPCIÓN:  Clase Character no tiene dicho método se tiene que preguntar al String por el carácter con el método charAt  Ejemplo:

 

String Hola=”Hola”;

Char e=Hola.charAt(1);

E=H ß número de posición.

2do Parcial

LENGUAJE UML (LENGUAJE DE MODELADO UNIFICADO)

El Lenguaje Unificado de Modelado preescribe un conjunto de notaciones y diagramas estándar para modelar sistemas orientados a objetos, y describe la semántica esencial de lo que estos diagramas y símbolos significan. Mientras que ha habido muchas notaciones y métodos usados para el diseño orientado a objetos, ahora los modeladores sólo tienen que aprender una única notación.

UML se puede usar para modelar distintos tipos de sistemas: sistemas de software, sistemas de hardware, y organizaciones del mundo real. UML ofrece nueve diagramas en los cuales modelar sistemas.

·         Diagramas de Casos de Uso para modelar los procesos 'business'.

·         Diagramas de Secuencia para modelar el paso de mensajes entre objetos.

·         Diagramas de Colaboración para modelar interacciones entre objetos.

·         Diagramas de Estado para modelar el comportamiento de los objetos en el sistema.

·         Diagramas de Actividad para modelar el comportamiento de los Casos de Uso, objetos u operaciones.

·         Diagramas de Clases para modelar la estructura estática de las clases en el sistema.

·         Diagramas de Objetos para modelar la estructura estática de los objetos en el sistema.

·         Diagramas de Componentes para modelar componentes.

·         Diagramas de Implementación para modelar la distribución del sistema.

UML es una consolidación de muchas de las notaciones y conceptos más usadas orientados a objetos. Empezó como una consolidación del trabajo de Grade Booch, James Rumbaugh, e Ivar Jacobson, creadores de tres de las metodologías orientadas a objetos más populares.

En 1996, el Object Management Group (OMG), un pilar estándar para la comunidad del diseño orientado a objetos, publicó una petición con propósito de un metamodelo orientado a objetos de semántica y notación estándares. UML, en su versión 1.0, fue propuesto como una respuesta a esta petición en enero de 1997. Hubo otras cinco propuestas rivales. Durante el transcurso de 1997, los seis promotores de las propuestas, unieron su trabajo y presentaron al OMG un documento revisado de UML, llamado UML versión 1.1. Este documento fue aprobado por el OMG en Noviembre de 1997. El OMG llama a este documento OMG UML versión 1.1. El OMG está actualmente en proceso de mejorar una edición técnica de esta especificación, prevista su finalización para el 1 de abril de 1999.

Notación y semántica estándar

UML preescribe una notación estándar y semánticas esenciales para el modelado de un sistema orientado a objetos. Previamente, un diseño orientado a objetos podría haber sido modelado con cualquiera de la docena de metodologías populares, causando a los revisores tener que aprender las semáticas y notaciones de la metodología empleada antes que intentar entender el diseño en sí. Ahora con UML, diseñadores diferentes modelando sistemas diferentes pueden sobradamente entender cada uno los diseños de los otros.

Aun así, UML no preescribe un proceso o método estándar para desarrollar un sistema. Hay varias metodologías existentes; entre las más populares se incluyen las siguientes:

·         Catalysis: Un método orientado a objetos que fusiona mucho del trabajo reciente en métodos orientados a objetos, y además ofrece técnicas específicas para modelar componentes distribuidos.

·         Objetory: Un método de Caso de Uso guiado para el desarrollo, creado por Ivar Jacobson.

·         Shlaer/Mellor: El método para diseñar sistemas de tiempo real, puesto en marcha por Sally Shlaer y Steven Mellor en dos libros de 1991, Ciclos de vida de Objetos, modelando el Mundo en Estados y Ciclos de vida de Objetos, Modelando el mundo en Datos (Prentice Hall). Shlaer/Mellor countinúan actualizando su método continuamente (la actualización más reciente es el OOA96 report), y recientemente publicaron una guía sobre cómo usar la notación UML con Shlaer/Mellor.

·         Fusion: Desarrollado en Hewlett Packard a mediados de los noventa como primer intento de un método de diseño orientado a objetos estándar. Combina OMT y Booch con tarjetas CRC y métodos formales. (www.hpl.hp.com/fusion/file/teameps.pdf)

·         OMT: La Técnica de Modelado de Objetos fue desarrollada por James Rumbaugh y otros, y publicada en el libro de gran influencia "Diseño y Modelado Orientado a Objetos" (Prentice Hall, 1991). Un método que propone análisis y diseño 'iterative', más centrado en el lado del análisis.

·         Booch: Parecido al OMT, y también muy popular, la primera y segunda edición de "Diseño Orientado a Objetos, con Aplicaciones" (Benjamin Cummings, 1991 y 1994), (Object-Oriented Design, With Applications), detallan un método ofreciendo también diseño y análisis 'iterative', centrándoso en el lado del diseño.

Además, muchas organizaciones han desarrollado sus propias metodologías internas, usando diferentes diagramas y técnicas con orígenes varios. Ejemplos son el método Catalyst por Computer Sciences Corporation (CSC) o el Worlwide Solution Design and Delivery Method (WSDDM) por IBM. Estas metodologías difieren, pero generalmente combinan análisis de flujo de trabajo, captura de los requisitos, y modelado de negocio con modelado de datos, con modelado de objetos usando varias notaciones (OMT, Booch, etc), y algunas veces incluyendo técnicas adicionales de modelado de objetos como Casos de Uso y tarjetas CRC. La mayoría de estas organizaciones están adoptando e incorporando el UML como la notación orientada a objetos de sus metodologías.

 

Algunos modeladores usarán un subconjunto de UML para modelar 'what they're after', por ejemplo simplemente el diagrama de clases, o solo los diagramas de clases y de secuencia con Casos de Uso. Otros usarán una suite más completa, incluyendo los diagramas de estado y actividad para modelar sistemas de tiempo real, y el diagrama de implementación para modelar sistemas distribuidos. Aun así, otros no estarán satisfechos con los diagramas ofrecidos por UML, y necesitarán extender UML con otros diagramas como modelos relacionales de datos y 'CRC cards'.

 

[volver]