Sesion1 El Triangulo Del Desarrollo de Software

29
SESIÓN 01: Triángulo de Desarrollo de software: UML, PUDS y Rational Rose Basado en el Libro Modelando con UML principios y aplicaciones de Cesar Liza Avila. Exposición del Ing. Javier Chávez Libro Proceso Unificado de desarrollo de Software de Ivar Jacobson, Grady Booch y James Rumbaugh Ing. Mónica Marca Aima e Ing. David Quevedo Velasco 2012-I 1 UNIVERSIDAD ANDINA DEL CUSCO ANALISIS Y DISEÑO DE SISTEMAS I

Transcript of Sesion1 El Triangulo Del Desarrollo de Software

Page 1: Sesion1 El Triangulo Del Desarrollo de Software

SESIÓN 01: Triángulo de Desarrollo de software: UML, PUDS y

Rational Rose Basado en el Libro Modelando con UML principios y aplicaciones de Cesar Liza Avila. Exposición del Ing. Javier Chávez

Libro Proceso Unificado de desarrollo de Software de Ivar Jacobson, Grady Booch y James Rumbaugh

Ing. Mónica Marca Aima e Ing. David Quevedo Velasco

2012-I1

UNIVERSIDAD ANDINA DEL CUSCOANALISIS Y DISEÑO DE SISTEMAS I

Page 2: Sesion1 El Triangulo Del Desarrollo de Software

Agenda

• Triángulo de Desarrollo de software.• Metodologías de desarrollo de software.– Ciclos de vida del software.– El Proceso Unificado de Desarrollo PUD.

• Herramienta Visual Rational Rosse.

2

Page 3: Sesion1 El Triangulo Del Desarrollo de Software

Herramienta Visual

Metodología de desarrollo de software: PUD

Notación

Iteracionesprelim

Iter.#1

Iter.#2

Iter.#n

Iter.#n+1

Iter.#n+2

Iter.#m

Iter.#m+1

Elaboración TransiciónConcepción Construcción

El Triángulo de Desarrollo de Software

3

Page 4: Sesion1 El Triangulo Del Desarrollo de Software

METODOLOGÍA DE DE DESARROLLO DE

SOFTWARE

• Existen varias Metodologías de Desarrollo de software o ciclos de vida del software.

• Existen estándares mundiales como el ISO 12207-1 y otros desarrollados a través del tiempo.

4

Page 5: Sesion1 El Triangulo Del Desarrollo de Software

Ciclo de vida del Software(ISO 12207-1)

5

Page 6: Sesion1 El Triangulo Del Desarrollo de Software

Ciclos de Vida del Software Ciclos de Vida Clásicos:

Modelo en Cascada (Waterfall). Modelo Incremental. Modelo en Espiral.

Ciclos de Vida Orientados a Objetos: Modelo de Agrupamiento (Cluster). Modelo Fuente. Modelo Remolino. Modelo del Proceso Unificado de Desarrollo de software

PUD Otros

La programación extrema o eXtreme Scrum aplicado al desarrollo de software. 6

Page 7: Sesion1 El Triangulo Del Desarrollo de Software

PROCESO UNIFICADODE DESARROLLO PUD

Iteracionesprelim

Iter.#1

Iter.#2

Iter.#n

Iter.#n+1

Iter.#n+2

Iter.#m

Iter.#m+1

Elaboración TransiciónConcepción Construcción

7

Page 8: Sesion1 El Triangulo Del Desarrollo de Software

Metodología de desarrollo PUD

IteraciónArquitectura

........ Iteración Desarrollo

…… Iteración Transición

……….

HITO HITO HITO HITO HITO HITO HITO HITO

IteraciónPreliminar

...

Concepción Elaboración Construcción Transición

Iteración Desarrollo

8

Page 9: Sesion1 El Triangulo Del Desarrollo de Software

Metodología de desarrollo

Iteracionesprelim

Iter.#1

Iter.#2

Iter.#n

Iter.#n+1

Iter.#n+2

Iter.#m

Iter.#m+1

Elaboración TransiciónConcepción ConstrucciónProcesos Generales

Modelo de Negocio

Fases

Iteraciones

Entrega

Procesos de Soporte

Control de cambios

Requerimientos

Diseño

Análisis

Implementación

Certificación

Gestión del Proyecto

Entorno

9

Page 10: Sesion1 El Triangulo Del Desarrollo de Software

Vistas de un modelo

“Un modelo es una descripción completa de un sistema desde una perspectiva concreta”

Vistalógica

Vista deprocesos

Vista dedespliegue

Vista deimplementación

Vista de requerimientos

Diagrama de Clases

Diagrama de Objetos

Diagrama de Estado

Diagrama de Secuencia

Diagrama de Colaboración

Diagrama de Actividad

Diagrama de Casos de Uso

Diagrama de Componentes

Diagrama de Despliegue

10

Page 11: Sesion1 El Triangulo Del Desarrollo de Software

Herramientas de la Metodología

Modelo Casos de Uso

Modelo Análisis

Modelo de Componentes

Modelo de Despliegue

Modelo de Certificación

Diagr. de Casos de Uso

Diagr. de Clases/Objetos

Diagr. de Componentes

Diagr. de Despliegue

Diagr. de Colaboración

Diagr. deEstados

Diagr. de Secuencia

Diagr. de Actividad

ModeloDiseño

Requerimientos Análisis Diseño Implementación Certificación

11

Page 12: Sesion1 El Triangulo Del Desarrollo de Software

NOTACION: Lenguaje Unificado de Modelamiento

12

Page 13: Sesion1 El Triangulo Del Desarrollo de Software

Definición:

El UML es un lenguaje gráfico para la especificación, visualización, construcción y documentación de modelos orientados a objetos que representan sistemas intensivos en software.

= Unified Modeling Language

UML no es un método sino un lenguaje de modelamiento

El Lenguaje Unificado de Modelado

13

Page 14: Sesion1 El Triangulo Del Desarrollo de Software

UML toma lo mejor de varios métodos

Rumbaugh

Jacobson

Meyer

Harel

Wirfs-BrockFusion

Embly

Gamma et. al.

Shlaer-Mellor

Odell

Booch

Pre y Post condiciones

Máquinas de estado

Responsabilidades

Descripción de operaciones,numeración de mensajes

Singleton clases

Marcos de trabajo, patrones, notas

Ciclo de vida de objetos

Clasificación

14

Page 15: Sesion1 El Triangulo Del Desarrollo de Software

- Proporciona a los desarrolladores un lenguaje de

modelamiento ampliamente aceptado y listo para

usar.

- Integra las mejores prácticas del desarrollo de

software.

- Permite la intercambio de modelos entre las

diferentes

herramientas de software.

- Es independiente del lenguaje de programación y

de

métodos y procesos particulares de desarrollo de

software.

- Proporciona sus propios mecanismos de extensión

- Agrupa los conceptos de orientación a objetos

definiendo

su significado.

Características del UML

15

Page 16: Sesion1 El Triangulo Del Desarrollo de Software

Por qué aprender UML

-Porque UML es el lenguaje de modelado de objetos estándar dominante.-Porque es apoyado por metodólogos y empresas importantes en Tecnologías de Información.-Porque cuenta con la aprobación de la OMG como notación estándar.-Porque todas las herramientas modernas proporcionan soporte para UML.-Porque nos facilita el aprendizaje del enfoque orientado a objetos pues basta con aprender este estándar y no perdernos en toda la jungla de métodos y notaciones existentes.

16

Page 17: Sesion1 El Triangulo Del Desarrollo de Software

- Los lenguajes de modelado orientados al objeto comenzaron a aparecer a mediados de la década de '70.

- El número de lenguajes que modelaban objetos aumentó de menos de 10 a más de 50 durante el período entre 1989-1994.

Breve historia del UML

- Muchos de los que utilizaban estos lenguajes no encontraban satisfacción completa en ninguno de ellos, esto motivó la llamada "Guerra de los Métodos".

17

Page 18: Sesion1 El Triangulo Del Desarrollo de Software

. . . La “Guerra de los Métodos”

Existían muchos métodos y cada uno tenía un lenguaje de modelado propio.

Esto dificultó el aprendizaje, aplicación, construcción, uso de herramientas, etc.

Pugna entre los distintos gurús que defendían sus propios métodos y simbologías.

Se observa la necesidad de una notación estándar.

. . . Breve historia del UML

18

Page 19: Sesion1 El Triangulo Del Desarrollo de Software

El desarrollo del UML comenzó en finales de 1994 en que Grady Booch y Jim Rumbaugh de Rational Software Corporation, comenzaron su trabajo sobre la unificación de los métodos de Booch y de OMT (Object Modeling Technique).

A finales de 1995, Ivar Jacobson y su compañía de Objectory se unieron a Rational y combinaron sus métodos.

Booch, Rumbaugh, y Jacobson, definieron

el UML 0,9 y 0,91 en junio y octubre de 1996.

. . . Breve historia del UML

19

Page 20: Sesion1 El Triangulo Del Desarrollo de Software

Modelando con UML

Use CaseDiagramsUse Case

DiagramsDiagramas de Casos de Uso

ScenarioDiagramsScenario

DiagramsDiagramas deColaboración

StateDiagramsState

DiagramsDiagramas deComponentes

ComponentDiagramsComponent

DiagramsDiagramas deDespliegue

StateDiagramsState

DiagramsDiagramas de Objetos

ScenarioDiagramsScenario

DiagramsDiagramas deEstados

Use CaseDiagramsUse Case

DiagramsDiagramas deSecuencia

StateDiagramsState

DiagramsDiagramas deClases

Diagramas deActividad

Modelo

20

Page 21: Sesion1 El Triangulo Del Desarrollo de Software

• HERRAMIENTAVISUAL

21

Page 22: Sesion1 El Triangulo Del Desarrollo de Software

ACCEDER AL RATIONAL ROSE

Botón Inicio/Programas / Rational Rose Enterprise Edition/ Rational Rose Enterprise Edition

22

Page 23: Sesion1 El Triangulo Del Desarrollo de Software

EMPEZAR A TRABAJAR EN EL RATIONAL ROSE

Se nos habilita una ventana de diálogo en la cual debemos de escoger el FRAMEWORK siguiente, correspondiente al Rational Unified Process

23

Page 24: Sesion1 El Triangulo Del Desarrollo de Software

ENTORNO DEL RATIONAL ROSE

24

Page 25: Sesion1 El Triangulo Del Desarrollo de Software

LAS CUATRO VISTAS DE LA ARQUITECTURA EN ROSE

• En el explorador tenemos cuatro carpetas que representan cuatro vistas de la arquitectura del sistema.

• Cada vista muestra una proyección de la arquitectura y usa un conjunto de diagramas.

• Cada vista se puede estructurar en paquetes, de manera que el diagrama Main suele estar formado por paquetes y sus relaciones.

• Las vistas de Rose son las siguientes:

25

Page 26: Sesion1 El Triangulo Del Desarrollo de Software

1. La Vista de Casos de Uso (Use Case View)

• Que es la vista en la que se presenta el comportamiento deseado del sistema: en ella se encontrarían los modelos relacionados con la captura de requisitos. Según el proceso que hemos visto en clase, en esta vista se ubicarían el modelo del negocio, el modelo conceptual, el modelo de casos de uso del sistema y los diagramas de secuencia del sistema.

26

Page 27: Sesion1 El Triangulo Del Desarrollo de Software

2. La Vista Lógica (Logical View)

• En la que encontraríamos los modelos que muestran el vocabulario y la funcionalidad (estructura y comportamiento) del sistema, a través de un conjunto de colaboraciones que realizan los casos de uso de la vista de casos de uso (colaboraciones que se modelan mediante diagramas de clases y diagramas de interacción: secuencia y colaboración).

27

Page 28: Sesion1 El Triangulo Del Desarrollo de Software

3. La Vista de Componentes (Component View)

• En la que se representa la implementación del sistema mediante componentes, la organización modular del software. Esta vista está relacionada con la gestión de la configuración del software. Los paquetes en esta vista se organizan en niveles. Un componente está relacionado con un archivo de software y un lenguaje de programación. Las clases de la vista lógica se asignarían a los componentes de la vista de componentes.

28

Page 29: Sesion1 El Triangulo Del Desarrollo de Software

4. La Vista de Despliegue (Deployment View)

• En la que se modela la distribución o despliegue de los componentes a los nodos de procesamiento del sistema. Muestra la topología, distribución e instalación del sistema.

29