Post on 20-Jun-2015
description
transcript
Análisis y Diseño Análisis y Diseño Orientado a ObjetosOrientado a Objetos
UMSAUMSA(Univ. Mayor de San Andres Bolivia)(Univ. Mayor de San Andres Bolivia)
Septiembre 2005Septiembre 2005
Proceso de DesarrolloProceso de Desarrollo
Proceso de desarrollo de software – Basado en Unified Process
Planificación Construcción Aplicación
Ciclo de Ciclo de . . .desarrollo 1 desarrollo 2
Perfeccionarplan Análisis Diseño Construcción Pruebas
De dos semanas a dos meses
Proceso de DesarrolloProceso de Desarrollo
Proceso de desarrollo de software
Ciclo de Ciclo de Ciclo de . . .desarrollo 1 desarrollo 2 desarrollo 3
Caso de uso A:Versiónsimplificada--------------
Caso de uso A:Versióncompleta--------------
Caso de uso B----------------------------
Caso de uso C----------------------------
Proceso de DesarrolloProceso de Desarrollo
Proceso de desarrollo de software
Planificación Construcción Aplicación
Ciclo de Ciclo de . . .desarrollo 1 desarrollo 2
Perfeccionarplan Análisis Diseño Construcción Pruebas
De dos semanas a dos meses
Análisis OOAnálisis OO
Perfeccionarplan Análisis Diseño Construcción Pruebas
Definir losrequerimientos
Definir los casosde uso esenciales
Crear diagramasde casos de uso
Crear modeloconceptual
Crear elglosario
Definir diagramasde secuencia de
sistema
Definir loscontratos
Las tareas a realizarse en la etapa de análisis(dominio del problema) son las siguientes:
Diseño OODiseño OO
Perfeccionarplan Análisis Diseño Construcción Pruebas
Definir casosde uso reales
Definir reportes,interfaz de usuario,
secuencia de pantallas
Perfeccionar laarquitectura
Definir diagramasde interacción
Definir diagramas de diseño de clases
Definir esquemabase de datos
Las tareas a realizarse en la etapa de diseño (dominio de la solución) son las siguientes:
Análisis OOAnálisis OO
Las herramientas usadas en la etapa de análisis (investigacióndel problema) se pueden resumir en la siguiente tabla.
Herramienta de análisis Preguntas que contesta
Casos de uso ¿Cuáles son los procesos del dominio?
Modelo conceptual ¿Cuáles son los conceptos, los términos?
Diagramas de secuencia ¿Cuáles son los eventos y las operaciones del sistema?
Análisis OOAnálisis OO
Modelo ConceptualModelo Conceptual
Un modelo conceptual o modelo del dominio muestra gráficamente los conceptos (clases de objetos), los atributos y las asociaciones más importantes del dominio del problema. Supongamos que queremos hacer una simulación del juego de dados dónde un jugador lanza dos dados, sí obtiene 7 gana:
Modelo conceptual
Un modelo conceptual explica los conceptos significativos en undominio del problema, identificando los atributos y las asociaciones,y es la herramienta más importante del análisis orientado a objetos.
Los casos de uso son una importante herramienta para el análisis derequerimientos, pero realmente no están orientados a objetos. Unmodelo conceptual representa cosas del mundo real, no componentesdel software. En los diagramas UML se muestran conceptos (objetos),asociaciones entre conceptos (relaciones) y atributos de conceptos(atributos).
Modelo conceptualModelo conceptual
EjemploEjemplo
Caso de estudio: punto de venta
Supongamos como caso de estudio el sistema de una Terminalde Punto de Venta (TPDV). Esta Terminal es un sistema automatizado con el que se registran las ventas y se realizan los pagos.
Por lo general este tipo de sistemas comprenden hardware (un computador y un lector de código barras) y software (el sistema que se ejecuta en la Terminal).
Diagrama UML de Casos de Uso esenciales para el sistema de punto de venta:
Este esquema tiene por objeto ofrecer un diagrama contextual que nos permita conocer rápidamente los actores externos de un sistema y las formas básicas en que éstos lo utilizan.
Casos de usoCasos de uso
Un Diagrama de Casos de Uso más refinado para la etapa de diseño es el siguiente:
Casos de usoCasos de uso
La siguiente figura muestra un modelo conceptual parcial deldominio de la tienda y las ventas.
Modelo conceptualModelo conceptual
..*
Modelo conceptualModelo conceptualLa siguiente lista muestra un conjunto de conceptos idóneos para serincluidos en el modelo conceptual.
Objetos físicos o tangiblesEspecificaciones, diseño o descripciones de cosasLugaresTransaccionesLínea de transaccionesRol de las personasOtros sistemas de cómputo o electromecánicos externos al sistemaOrganizacionesEventosProcesosReglas y políticasCatálogosRegistros de finanzas, de trabajo, de contratos, de asuntos legalesInstrumentos y servicios financierosManuales y libros
A partir de esta lista de categorías de conceptos podemos generarun conjunto de conceptos para nuestro problema del punto de venta:
TDPV EspecificaciónDeProductoProducto VentasLíneadeProductosTienda CajeroVenta ClientePago GerenteCatálogoDeProductos
Modelo conceptualModelo conceptual
Por tanto, el modelo conceptual inicial del sistema de puntode venta (sin incluir atributos ni asociaciones) sería:
Modelo conceptualModelo conceptual
Asociaciones
Una asociación es una relación entre dos conceptos que indicaalguna conexión significativa entre ellos. Las asociaciones útilesa determinar, suelen incluir el conocimiento de una relación queha de preservarse por algún tiempo: puede tratarse de milisegundoso de años (según el contexto).
Modelo conceptualModelo conceptual
1..*
La multiplicidad define cuántas instancias de un tipo A pueden asociarse a una instancia del tipo B en determinado momento. Las expresiones de multiplicidad son las siguientes:
* cero o más, muchos
1..* uno o más
1..40 de uno a cuarenta
5 exactamente cinco
2,4,6 exactamente dos, cuatro o seis
Por ejemplo:
Modelo conceptualModelo conceptual
Los nombres de las asociaciones deben ser lo más claros posibles, y deben permitir leer y entender fácilmente las relaciones entre conceptos. Por eje.:
Modelo conceptualModelo conceptual
Modelo conceptualModelo conceptual
..*
Mostramos Conceptos,
Asociaciones, Multiplicidades y Atributos más
importantes
Práctica 3Práctica 3
• Elaborar el Modelo Conceptual para la aplicación seleccionada
• Especificar únicamente Conceptos, Asociaciones, Multiplicidades y Atributos Esenciales.
• Presentación y Defensa próxima clase.