Está en la página 1de 20

División de Alta Tecnología – DAT

UML 2.3 con Enterprise Architect

ANALISIS Y DISEÑO DE SOFTWARE

UML 2.3 con Enterprise


Architect

OBJETIVOS DEL CURSO

 Usar UML para el análisis y diseño orientado a


objetos.
 Aplicar el análisis y diseño iterativo, basado en casos
de uso para desarrollar modelos eficientes y
robustos.
 Modelar clases, objetos, componentes, atributos,
operaciones, relaciones, multiplicidad.
 Analizar un problema concreto para representar una
realidad en objetos y transformarla en un modelo
UML por medio de una herramienta
 Manipular los diagramas en UML 2.3
 Generar código y actualizar el modelo.

División de Alta Tecnología - DAT

METODOLOGÍA DEL CURSO

 45 horas de Teoría y práctica.


 Material audiovisual
 Libro del curso, presentaciones
 Participación individual y grupal
 Laboratorios en clase

División de Alta Tecnología - DAT

1
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

EVALUACIÓN DEL CURSO

 PPC = Promedio de prácticas calificadas


 2 Prácticas calificadas (sesiones por definir)
 Tareas
 TF = Trabajo Final (Última sesión)
 EF = Examen Final (Penúltima sesión)

Promedio = 30% (PPC) + 30% TF + 40% EF

División de Alta Tecnología - DAT

UML 2.3 con Enterprise


Architect

Capitulo 1. Introducción al
Análisis y Diseño
orientado a Objetos

UML 2.3 con Enterprise Architect

Capítulo 1:
Introducción al Análisis y Diseño orientado
a Objetos

Temas:
1. Crisis del software
2. El modelado
3. Conceptos iniciales
4. Buenas prácticas

División de Alta Tecnología - DAT

2
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

UML 2.3 con Enterprise Architect

Capítulo 1:
Introducción al Análisis y Diseño orientado
a Objetos

1. Crisis del software

División de Alta Tecnología - DAT

Introducción al Análisis y Diseño orientado a Objetos

1. Crisis del Software

1.1 Introducción
1.2 Síntomas
1.3 Razones
1.4 Soluciones

División de Alta Tecnología - DAT

1.1. INTRODUCCIÓN

 La crisis del software:


 No satisface los requerimientos.
 No satisface las necesidades del cliente.
 Excede los presupuestos.
 Excede el cronograma inicial.

1. Crisis del Software

3
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

1.1. INTRODUCCIÓN

 Casos:
 El departamento de vehículos motorizados de
California gastó sobre $43 millones de dólares
en un sistema para fundir los sistemas de
conductores y registro de vehículos
 El sistema fue abandonado sin ni siquiera
haber sido usado.
 Un fallido esfuerzo de $165 millones de
dólares de American Airlines de vincular su
software de reserva de pasajes con el sistema
de reservaciones de Marriott, Hilton y Budget.

1. Crisis del Software

1.2. SÍNTOMAS

 Baja calidad del producto de software.


 Tiempo y presupuesto inicial excedido.
 Confiabilidad cuestionable.
 Altos requerimientos de personal para desarrollo
y mantenimiento.

Figura: http://thumbs.dreamstime.com/thumb_0/1083885788In01Lh.jpg

1. Crisis del Software

1.3. RAZONES

 Algunas razones:
 Base Inestable
 Fallas en el manejo del riesgo
 La complejidad del software

1. Crisis del Software

4
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

1.4. SOLUCIONES

 Se recomienda:
 Buen Análisis y Diseño
 Construir un modelo sencillo
 Usar un lenguaje de modelado
 Compatible con diversas herramientas

1. Crisis del Software

UML 2.3 con Enterprise Architect

Capítulo 1:
Introducción al Análisis y Diseño orientado
a Objetos

Temas:
1. Crisis del software
2. El modelado
3. Conceptos iniciales
4. Buenas prácticas

División de Alta Tecnología - DAT

Introducción al Análisis y Diseño orientado a Objetos

2. El modelado

2.1 Introducción
2.2 La importancia de modelar
2.3 Modelamiento
2.4 Métodos para el modelado

División de Alta Tecnología - DAT

5
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

2.2. LA IMPORTANCIA DE MODELAR

 La elaboración de un modelo para el desarrollo


de un sistema antes de su programación es tan
importante como tener un modelo (planos) y los
cimientos antes de construir una casa.

“Un modelo es la simplificación de la realidad”

2. El modelado

2.3. MODELAMIENTO

Cervantes
Concepto
sin objeto

Objeto sin
Concepto

Napoleón

2. El modelado

2.4. MÉTODOS PARA EL MODELAMIENTO

1 No-formales

2 Semi-formales

3 Formales

2. El modelado

6
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

UML 2.3 con Enterprise Architect

Capítulo 1:
Introducción al Análisis y Diseño orientado
a Objetos

Temas:
1. Crisis del software
2. El modelado
3. Conceptos iniciales
4. Buenas prácticas

División de Alta Tecnología - DAT

Introducción al Análisis y Diseño orientado a Objetos

3. Conceptos Iniciales
3.1 Objeto
3.2 Orientación a objetos
3.3 Principio del software OO
3.4 Clases

División de Alta Tecnología - DAT

3.1 OBJETO

“Es un ente real o conceptual que posee


características y comportamiento propios, únicos
e inconfundibles”

Computador
Andrea Lamas
Serie 26588-A

3. Conceptos Iniciales

7
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

3.1.2. CARACTERÍSTICAS

 Identidad:
 Cada objeto tiene una identidad única, incluso
si su estado es idéntico al de otro objeto.

3.1. Objeto

3.1.2. CARACTERÍSTICAS

 Atributos y Operaciones:
 Atributos:
 Nombre
 Estatura
 Edad

 Comportamiento
(operación):
 Caminar
 Hablar
 Saltar

3.1. Objeto

3.1.2. CARACTERÍSTICAS

 Comportamiento
 Agrupa las competencias de un objeto
 Conocido como OPERACIÓN
 Es consecuencia de un estímulo externo
(mensaje)
Ejemplo: Prender CPU

 Estado
 Representado por los valores de los
atributos
Ejemplo: Prendido, apagado

3.1. Objeto

8
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

3.1. OBJETOS. Identificación de elementos

Imaginemos que tenemos estacionado


en nuestra cochera un Audi - A8 6.0
450CV quattro, color azul que corre
hasta 250 km/h.

Marca = Audi
Modelo = A8 6.0 450CV quattro
Color = Azul
Velocidad Máxima = 250 km/h

Cuando a las características del objeto se le asignan valores, se dice


que el objeto tiene estados.

3. Conceptos iniciales

3.1.3. COMUNICACIÓN ENTRE OBJETOS

Objeto 1

: Mensaje A

Objeto 2

: Mensaje E
: Mensaje C

Objeto 3 Objeto 4

: Mensaje D

3.1. Objeto

LABORATORIO N° 1

 En este laboratorio, usted:


 Identificará los objetos del enunciado
 Establecerá la diferencia con otros elementos

División de Alta Tecnología - DAT

9
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

3.2. ORIENTACIÓN A OBJETOS

“Conjunto de disciplinas que desarrollan y


modelizan software que facilitan la construcción
de sistemas a partir de componentes.”

3. Conceptos Iniciales

3.3 PRINCIPIOS DEL SW OO

 Abstracción
 Encapsulamiento
 Principio cliente-servidor
 Jerarquías
 Polimorfismo
 Modularidad
 Persistencia

3. Conceptos Iniciales

3.4. CLASES

 Conjunto de objetos con características


(atributos) y comportamientos (operaciones)
similares.

Juan Arias José López Mary Falcón


DNI 07715221 DNI 08816721 DNI 05814423
CLASE:
Ate Lince San Borja
Persona

3. Conceptos Iniciales

10
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

3.4.2. NOMBRAMIENTO DE CLASES

 Guía de estilo:
 Usar un sustantivo singular.
 Los nombres de la clase deben empezar con
mayúsculas.
 No debe usarse el subrayado.
 Los nombres compuestos se ponen juntos y la
primera palabra se escribirá con mayúscula.

 Ejemplo:
 Alumno, SistemaDePago

3.4. Clases

3.4.3. NOTACIÓN DE CLASES EN UML

 Representación gráfica
 Nombre
 Estructura (atributos)
 Comportamiento (operaciones)

Profesor
-Apellidos
-Nombres
-Grado Academico
+consulta_grado()
+graba_sueldo()

Representación UML

3.4. Clases

LABORATORIO N° 2

 En este laboratorio, usted:


 Identificará las clases del enunciado.
 Establecerá la diferencia con los objetos.
 Identificará los elementos que servirán de
atributos a las clases.

División de Alta Tecnología - DAT

11
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

UML 2.3 con Enterprise Architect

Capítulo 1:
Introducción al Análisis y Diseño orientado
a Objetos

Temas:
1. Crisis del software
2. El modelado
3. Conceptos iniciales
4. Buenas prácticas

División de Alta Tecnología - DAT

Introducción al Análisis y Diseño orientado a Objetos

4. Buenas Prácticas
4.1. Las 6 mejores prácticas
a) Desarrollar software iterativamente
b) Administrar los requerimientos
c) Utilizar arquitecturas basadas en componentes
d) Modelar software visualmente
e) Verificar la calidad del software
f) Controlar los cambios al software
4.2. Consecuencias de no aplicar las buenas prácticas

División de Alta Tecnología - DAT

4.1. LAS 6 MEJORES PRÁCTICAS

ADMINISTRAR REQUERIMIENTOS

Arquitecturas
Desarrollar Verificar Modelizar
Basadas en
Iterativamente Calidad Visualmente
Componentes

CONTROLAR CAMBIOS

4. Buenas Prácticas

12
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

4.1.1. DESARROLLAR SOFTWARE ITERATIVAMENTE

 Cada iteración resulta en un release ejecutable

Requerimientos
Análisis y Diseño
Planeamiento
Implementación
Planeamiento
Inicial Ambiente de
Administración

Distribución

Evaluación
Prueba

4.1. Las 6 mejores prácticas

4.1.1. DESARROLLAR SOFTWARE ITERATIVAMENTE

 Características:
 Los desentendimientos importantes se
evidencian tempranamente.
 Se alienta el feedback del usuario.
 Focalización en los temas más críticos, sin
distracciones.
 Testing continuo e iterativo: evaluación
objetiva.
 Detección temprana de inconsistencias entre
requerimientos, diseños e implementaciones.

4.1. Las 6 mejores prácticas

4.1.2. ADMINISTRAR LOS REQUERIMIENTOS

 Los requerimientos pueden ser adecuadamente


capturados y comunicados, a través de Casos de
Uso.
 Los Casos de Uso son importantes instrumentos
de planificación.

Modelo de Casos de Uso

Los Casos de Uso direccionan


el trabajo desde el análisis Realización influenciados por verifica
hasta el test

Modelo de Diseño
Modelo de Implementación Modelo de Test

4.1. Las 6 mejores prácticas

13
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

4.1.2. ADMINISTRAR LOS REQUERIMIENTOS

¿Cómo son interpretados los


requerimientos?

Necesito
algo para
balancearme
bajo un árbol
¿Cómo lo explicó el
cliente?

4.1. Las 6 mejores prácticas

¿Cómo son interpretados los requerimientos?

¿Cómo lo entendió el ¿Cómo fue descrito ¿Cómo fue analizado


líder del proyecto? por el consultor? y diseñado?

4.1. Las 6 mejores prácticas

¿Cómo son interpretados los requerimientos?

¿Cómo fue ¿Cómo fue ¿Cómo fue


programado? documentado? instalado?

4.1. Las 6 mejores prácticas

14
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

¿Cómo son interpretados los requerimientos?

¿Cómo fue ¿Qué soporte se ¿Qué necesitaba


cobrado? brindó? realmente el cliente?

4.1. Las 6 mejores prácticas

4.1.3. UTILIZAR ARQUITECTURAS BASADAS EN


COMPONENTES

 Un componente de software puede definirse como


una pieza no trivial de software, un módulo o un
subsistema que completa una función clara, tiene
límites claros y puede ser integrado en una
arquitectura bien definida.

Aplicación

Negocio

Arquitectura basada Middleware


en componentes
System-
software

4.1. Las 6 mejores prácticas

4.1.3. UTILIZAR ARQUITECTURAS BASADAS EN


COMPONENTES

 La Arquitectura de Software representa el


conjunto de decisiones significativas sobre la
organización de un sistema de software:
 Selección de los elementos estructurales y sus
interfaces, por los cuales el sistema está compuesto.
 Comportamiento, especificado como colaboraciones
entre los elementos.
 Composición en subsistemas de los elementos
estructurales y de comportamiento.
 Estilo de arquitectura que guía a la organización.

4.1. Las 6 mejores prácticas

15
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

4.1.4. MODELAR SOFTWARE VISUALMENTE

Subsistemas

La Modelización
Clases
Visual eleva el nivel
de abstracción
Código

4.1. Las 6 mejores prácticas

4.1.4. MODELAR SOFTWARE VISUALMENTE

 Beneficios:
 Los casos de uso permiten especificar
comportamiento sin ambigüedades.
 Quedan expuestas las arquitecturas
inflexibles o no modulares.
 El diseño refleja sus inconsistencias más
rápidamente.
 Existen herramientas que proveen soporte
para la modelización visual.

4.1. Las 6 mejores prácticas

4.1.5. VERIFICAR LA CALIDAD DEL SOFTWARE

 La actividad fundamental de esta práctica es el


testing.
 Evaluar continuamente la calidad de un sistema
con respecto a funcionalidad, confiabilidad y
performance.

Encontrar y reparar un Costo


problema de software después
de la implementación puede
resultar de 100 a 1000 veces
más costoso
Desarrollo Implementación

4.1. Las 6 mejores prácticas

16
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

4.1.5. VERIFICAR LA CALIDAD DEL SOFTWARE

 Beneficios:
 La evaluación del estado del proyecto es
objetiva, pues se evalúan resultados de test.
 Se exponen las inconsistencias en los
requerimientos, diseños e implementaciones.
 Se focaliza en las áreas de riesgo más alto.
 Los defectos se identifican en forma
temprana.
 Existen herramientas automatizadas para el
testing de funcionalidad, confiabilidad y
performance.

4.1. Las 6 mejores prácticas

4.1.6. CONTROLAR LOS CAMBIOS AL SOFTWARE

El manejo del cambio es más que apenas comprobar dentro y fuera de


archivos. Incluye el manejo de espacios de trabajo, del desarrollo
paralelo, de la integración y de construcciones.

4.1. Las 6 mejores prácticas

4.1.6. CONTROLAR LOS CAMBIOS AL SOFTWARE

 Beneficios:
 Las solicitudes de cambios formales facilitan
la claridad de comunicación.
 Los espacios de trabajo aislados reducen la
interferencia entre los miembros del equipo
que trabajan en paralelo.
 Las estadísticas de cantidad de cambios
proveen buenas métricas para evaluar
objetivamente el estado del proyecto.
 La propagación del cambio es evaluable y
controlable.
 Los cambios pueden ser mantenidos en
sistemas automáticos.

4.1. Las 6 mejores prácticas

17
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

4.2. CONSECUENCIAS DE NO APLICAR LAS


BUENAS PRÁCTICAS

Baja
Calidad del
software

4. Buenas Prácticas

4.2.1. Detección del fracaso en un proyecto

 No cumplen sus objetivos.


 Se exceden considerablemente en el tiempo.
 Se exceden de su presupuesto.
 No se comprendieron las necesidades del
usuario.
 No se previó el impacto de los requerimientos
de cambios.
 Se descubrieron muy tarde falencias graves
en el Proyecto.
 Hay módulos que no se pueden integrar.
 Interferencias entre los miembros del equipo.

4.2. Consecuencias de no aplicar las buenas prácticas

4.2.3. LAS MEJORES PRÁCTICAS ENFRENTAN LAS CAUSAS

4.2. Consecuencias de no aplicar las buenas prácticas

18
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

SOLUCIÓN A LOS PROBLEMAS DE SW

 Mejorar el proceso de desarrollo de Software

Seleccionar el Seleccionar el
mejor método de mejor estándar
desarrollo de modelado

División de Alta Tecnología - DAT

LABORATORIO N° 3

 En este laboratorio, usted:


 Reconocerá las 6 mejores prácticas.
 Identificará como se aplican las 6 mejores
prácticas en el desarrollo de un proyecto.

División de Alta Tecnología - DAT

BIBLIOGRAFÍA RECOMENDADA

 UML 2 Toolkit.
 OMG Press
 Autores: Hans-Erik Eriksson, Magnus Perker,
Brian Lyons, David Fado.

 UML 2.0,
 Anaya Multimedia
 Autores: Jim Arlow, Ila Neustadt

División de Alta Tecnología - DAT

19
División de Alta Tecnología – DAT
UML 2.3 con Enterprise Architect

BIBLIOGRAFÍA RECOMENDADA

 El Proceso Unificado de Desarrollo de Software.


 Jacobson I., Rumbaugh J., BOOCH G.
 2000. Addison Wesley.
 El Lenguaje Unificado de Modelado.
 Jacobson I., Rumbaugh J., BOOCH G.
 2000. Addison Wesley.
 El Lenguaje Unificado de Modelado. Manual de
Referencia.
 Jacobson I., Rumbaugh J., BOOCH G.
 2000. Addison Wesley.

División de Alta Tecnología - DAT

20

También podría gustarte