Post on 04-Oct-2020
INGENIERIA DE SOFTWARE
Ing. Francisco Rodríguez Novoa
UNT – INGENIERIA INDUSTRIAL
Ing. Francisco Rodríguez
Tema 7
Modelo de Análisis
3
Rational Unified Process (RUP)
OBJETIVOS
• Conocer que el Análisis ve el ¿Qué? hace el sistema
respecto a sus funcionalidades
• Identificar las Actividades que se realizan en el Análisis
• Refinar los requerimientos capturados en la Fase de Inicio
• Analizar la Arquitectura Base para el sistema
• Realizar el Caso de Uso en base a las clases: Frontera,
Control y Entidad.
El Análisis en el Ciclo de Vida del Software
• Los requerimientos son refinados con el fin de estructurar todo el
sistema.
• El propósito es lograr un entendimiento más preciso de los
requerimientos a través de una descripción detallada y utilizando
el lenguaje del desarrollador.
• Se definen clases y sus responsabilidades para facilitar la
comprensión y estructuración del sistema.
• El foco principal del Análisis está en las primeras iteraciones de
la fase de elaboración.
• Contribuye a logro de una arquitectura estable en la siguiente
etapa.
• Los requerimientos son entendidos, y el análisis sirve como base
para el diseño y la implementación.
Análisis – Visión General
Análisis – Visión General
Análisis – Visión General
Flujo de trabajo del Análisis
• El objetivo del análisis es comprender el problema y
comenzar a desarrollar un modelo visual de lo que se está
tratando de construir, independiente de la tecnología a
utilizar en la aplicación, como el lenguaje de
programación. El análisis se centra en la traducción de los
requisitos funcionales en conceptos de software. La idea es
identificar los objetos que conforman el sistema,
centrándose en el comportamiento.
Actividades del Análisis
Artefactos del Análisis
Artefactos del Análisis
Diagrama de Colaboración
MODELO DE ANALISIS: jerarquía de PAQUETES DE
ANÁLISIS conteniendo CLASES DE ANÁLISIS y
REALIZACIONES DE CU.
– CLASES DE ANALISIS: representan una abstracción de una o varias
clases y/o subsistemas en el diseño del sistema.
– REALIZACIONES DE CASOS DE USO: descripción de la realización
de cada caso de uso en término de clases de análisis y la interacción
entre objetos de análisis.
– PAQUETES DE ANALISIS: permiten organizar el modelo de análisis
en piezas más manejables. Pueden contener realizaciones de casos de
uso, clases de análisis y otros paquetes de análisis.
DESCRIPCIÓN DE LA ARQUITECTURA: vista arquitectónica
del Modelo de Análisis mostrando sus artefactos más
significativos
Artefactos del Análisis
Modelo de Análisis
• El análisis orientado a objetos se traduce en el modelo de
análisis, el cual es usado para representar la estructura global del
sistema, describe la realización de casos de uso y sirve como una
abstracción del modelo de diseño.
• Durante el análisis, se identifica, de manera continua, nuevos
paquetes del análisis, clases y requisitos comunes a medida que
el modelo de análisis evoluciona, y los paquetes de análisis
concretos continuamente se refinan y mantienen.
• Las actividades que se realizan para elaborar el modelo de
análisis son los siguientes:
– Análisis de la Arquitectura
– Análisis de Casos de Uso
– Análisis de Clases
– Análisis de Paquetes
Modelo de Análisis. Características
• Proporciona un diseño preliminar, pues contiene paquetes
que se usan para organizar el modelo de análisis en piezas
más manejables, que representan abstracciones o
subsistemas y una primera vista del diseño.
• Puede ayudar a descubrir la necesidad de clases
adicionales.
• Proporciona una prueba de completitud a los casos de uso,
antes de pasar al diseño.
• Proporciona un diseño preliminar de la arquitectura del
sistema, denotando los paquetes de análisis de alto nivel.
Modelo de Casos de Uso vs. Modelo de Análisis
WORKERS - ANALISIS
ARQUITECTO: responsable de la integridad del modelo de
Análisis y de crear una vista arquitectónica que permita
avanzar en el desarrollo.
INGENIERO DE CASOS DE USO: responsable de la
integridad de las realizaciones de casos de uso.
INGENIERO DE COMPONENTES: responsable de la
integridad de clases de análisis y sus relaciones, y la integridad
de paquetes de análisis
WORKERS - ANALISIS
ACTIVIDADES - ANALISIS
ANALIZAR CADA CASO DE USO
Identificar Clases de Análisis UML- Diagrama de Clases
Describir la interacción entre objetos de análisis UML -Diagrama de
Colaboración, descripción Textual
Capturar requerimientos especiales
ANALISIS ARQUITECTONICO
Realizar un bosquejo del modelo de análisis identificando los
paquetes de análisis, clases de análisis y requerimientos especiales
más importantes.
ACTIVIDADES - ANALISIS
ANALIZAR PAQUETE
Agrupar clases en paquetes cuando es necesario.
Asegurar que cada paquete de análisis es lo más independiente
posible de otros.
Asegurar que cada paquete de análisis satisface su propósito de
realización de ciertas clases y casos de uso.
ANALIZAR CADA CLASE DE ANALISIS
Asignar un nombre, Identificar Atributos, Identificar relaciones.
Identificar Responsabilidades: compilación de todos los roles que la
clase juega en todas las realizaciones de casos de uso.
Capturar requerimientos especiales.
TIPOS DE CLASES DE ANALISIS
Clases de Análisis
Clases de análisis: Interfaz
Clases de análisis: Interfaz
Actor Clase Interfaz
Clases de análisis: Control
Clases de análisis: Control
Clases de análisis: Entidad
Ejemplo: Diagrama de Clases de Análisis y Diagrama de
Colaboración
ANÁLISIS DE CLASES
Los pasos que se realizan en esta actividad son los siguientes:
Identificación de responsabilidades y atributos
Identificación de asociaciones y agregaciones
Identificación de generalizaciones
ANÁLISIS DE CLASES
1. Identificación de responsabilidades y atributos
• El objetivo de esta tarea es identificar las responsabilidades y
atributos relevantes de una clase.
• Las responsabilidades de una clase definen la funcionalidad de esa
clase y están basadas en el estudio de los papeles que desempeñan
sus objetos dentro de los distintos casos de uso. A partir de estas
responsabilidades, se puede comenzar a encontrar las operaciones
que van a pertenecer a la clase. Éstas deben ser relevantes, simples y
participar en la descripción de la responsabilidad.
• Los atributos de una clase especifican propiedades de la clase, y se
identifican por estar implicados en sus responsabilidades. Los tipos
de estos atributos deberían ser conceptuales y conocidos en el
dominio.
ANÁLISIS DE CLASES
2. Identificación de asociaciones y agregaciones
• En esta tarea, se estudian los mensajes establecidos entre los objetos
del diagrama de interacción para determinar qué asociaciones
existen entre las clases correspondientes. Estas asociaciones suelen
corresponderse con expresiones verbales incluidas en las
especificaciones.
• Una asociación está caracterizada por los siguientes aspectos:
Los papeles que desempeña.
Su direccionalidad, que representa el sentido en el que se debe
interpretar
Su cardinalidad, que representa el número de instancias
implicadas en la asociación.
ANÁLISIS DE CLASES
3. Identificación de generalizaciones
• El objetivo de esta tarea es representar una organización de las
clases que permita una implementación sencilla de la herencia y
una agrupación semántica de las diferentes clases.
Factura
noFactura : Integer
fecha : Date = DATE()
igv : Double = 18.00
descuento : Currency = 0
Cliente
codCliente : Integer
direccion : String
telefono : Long
Producto
codProducto : Integer
descripcion : String
um : String
pu : Currency = 0.00
presentacion : String
DetalleFactura
noItem : Integer
cantidad : Integer = 0
descuento : Double
Pais
codPais : Integer
Descripcion : String
PersonaNatural
nombre : String
dni : String
PersonaJuridica
razonSocial : String
ruc : String
1..n1..n
realiza
1 0..n 1
reside
1..n
1
está compuesta
10..n
está asociada
DIAGRAMA DE CLASES
FIN