Sie sind auf Seite 1von 40

LESE-1 Introducción al Modelado Visual,

UML y Metodología RUP

Rational Rose en el Desarrollo de


Software
Ruben González Blanco
Sergio Pérez Tobalina

1
Objetivos
LESE-1 Introducción al Modelado Visual

Proporcionar una perspectiva general


de UML, Ingeniería del Software y ES:E
Contextualizar el uso de herramientas
CASE (Rational Rose) en el desarrollo
de software

2
Contenido
LESE-1 Introducción al Modelado Visual

Modelado Visual de un Sistema


Software
 Herramientas CASE
UML
 Vistas y Diagramas UML
El Proceso Unificado (UP)
 Contexto ES:E

3
Contenido
LESE-1 Introducción al Modelado Visual

Modelado Visual de un Sistema


Software
 Herramientas CASE
UML
 Vistas y Diagramas UML
El Proceso Unificado (UP)
 ES:E

4
Modelo
LESE-1 Introducción al Modelado Visual

Es un esquema simplificado que


describe un sistema o realidad desde
un determinado punto de vista que
facilita su estudio y compresión

? ? Modelo
? (simplificado)
Sistema Software
Los modelos de un sistema software se
(complejo) expresan visualmente mediante el
lenguaje de modelado UML
5
Modelado en Ingeniería
LESE-1 Introducción al Modelado Visual

Arquitectura/Ingeniería de Ingeniería Software


Estructuras  Modelos UML del Sistema
 Vistas Edificio Software
 Vista 3D  Modelo de Casos de uso
 Alzado/Planta Perfil  Modelo Estructural
 Estructura del edificio  Modelo de Comportamiento
 Instalación Eléctrica  Modelo de Implementación
 Instalación Aire Acc.  Modelo de Despliegue

 ... FileMgr
fetchDoc( ) )
DocumentList
add( )
delete( )
Document
name : int
docid : int user
mainWnd
fileMgrdocument
FileMgr
: gFile
Document
:repository
sortByName( numField : int
get( ) Repository DocumentList
open( ) read() fill the ƯÁ¤¹®¼¿¡ ´ëÇÑ º¸±â¸¦
»ç¿ëÀÚ°¡ ¿äûÇÑ´Ù.
1: Doc view request ( )

close( ) code..
FileList read( )
sortFileList( )
2: fetchDoc( )

fList create( )
fillDocument( )
add( )
delete( ) 1
3: create ( )

4: create ( )
FileManager
5: readDoc ( )
Document
ÈÀÏ°ü¸®ÀÚ´Â Àоî¿Â 6: fillDocument ( )
¹®¼ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼
rep °´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù.

Repository File 7: readFile ( )

(from Persistence) read( )


name : char * = 0
GrpFile 8: fillFile ( )
GraphicFile
readDoc( )
readFile( )
read( )
open( )
create( )
È¸é °´Ã¼´Â ÀоîµéÀÎ
°´Ã¼µé¿¡ ´ëÇØ À̸§º°·Î
Á¤·ÄÀ» ½ÃÄÑ È¸é¿¡
º¸¿©ÁØ´Ù.
9: sortByName ( )
File FileList
fillFile( )

Diagramas Diagramas

 Herramientas Modelado (ej)  Herramientas Modelado (ej)


Autocad Rational Rose
6
Modelado Visual
LESE-1 Introducción al Modelado Visual

Modelos que presentan gráficamente


alguna vista del sistema.
 Se crean mediante:
 Lápiz y Papel 
 Herramienta Software especifica 
 (por ej: Rational Rose)

CASE : Computer Aided Software Engineering

7
Contenido
LESE-1 Introducción al Modelado Visual

Modelado Visual de un Sistema


Software
 Herramientas CASE
UML
 Vistas y Diagramas UML
El Proceso Unificado (UP)
 Contexto ES:E

8
UML
LESE-1 Introducción al Modelado Visual

Es el lenguaje estándar de la industria


para el modelado visual de sistemas
orientados a objeto y/o basados en
componentes

UML no es:
• una metodología o proceso
• un lenguaje de programación

9
Nota: Paradigma Orientado a Objeto
LESE-1 Introducción al Modelado Visual

Desarrollo de un sistema software


mediante la construcción de unidades
reusables siguiendo los principios de :
 Abstracción
 Encapsulación
 Herencia
 Polimorfismo

10
Nota: Paradigma Basado en Componentes
LESE-1 Introducción al Modelado Visual

Desarrollo de un sistema software


mediante en el ensamblado de
unidades reusables siguiendo los
principios de:
 Componentes
 Interfaces
 Infraestructura

11
UML. Definición Formal
LESE-1 Introducción al Modelado Visual

Es un lenguaje estándar para


visualizar,especificar, construir y
documentar los artefactos que se
generan en el proceso de desarrollo de
un sistema software

12
Modelos UML
LESE-1 Introducción al Modelado Visual

Modelos UML describen características:


 Estáticas o de Estructura
 Dinámicas o de Comportamiento

13
Estructura de UML
LESE-1 Introducción al Modelado Visual

•Estructura
capturan (características estáticas)
Modelos
•Comportamiento
(características dinámicas)

organizado en

visualizado en
Vistas Arquitectonicas Diagramas

•Vista del Modelo de Usuario •Diagramas de Casos de Uso


•Vista del Modelo Estructural •Diagramas de Clases
•Vista del Modelo de Comportamiento •Diagramas de Objetos
•Vista del Modelo de Implementación •Diagramas de Secuencia
•Vista del Modelo Despliegue •Diagramas de Colaboración
•Diagramas de Estado
•Diagramas de Actividad
•Diagramas de Componentes
•Diagramas de Despliegue
14
Vista del Modelo de Usuario
LESE-1 Introducción al Modelado Visual

 Diagramas de Casos de Uso describen la


funcionalidad del sistema
 (requisitos automatización)

Course Registration System

Maintain a Course
Student Professor

Register to Course

Manage Curriculum
Billing System Registrar

15
Vista del Modelo de Usuario
LESE-1 Introducción al Modelado Visual

 Diagramas de Actividad:
 Describen como se desarrolla un flujo de
actividades entre elementos del sistema o del
dominio.

Student

Register to Course

Student System Billing System


Billing System
Select Course s Check Availability

Inform Not
Available
Confirm
Registration

Cancel
Registration

Calculate
Mail Professor Bill
Bill Student

16
Vista del Modelo Estructural (vista lógica)
LESE-1 Introducción al Modelado Visual

 Diagramas de Clases: describen la


estructura del sistema

ScheduleAlgorithm
RegistrationForm

RegistrationManager
0..*
1
addStudent(Course, Student)
Course
1
name
RegistrationUser 0..* numberCredits
name Student
open()
addStudent(Student)
major

3..10 1

4
Professor 1..*
CourseOffering
tenureStatus
location
1
0..4
open()
addStudent(Student}

17
Vista del Modelo Estructural (vista lógica)
LESE-1 Introducción al Modelado Visual

 Diagramas de Objetos: describen la


estructura del sistema en un momento
particular del tiempo
FIB1:Course

:RegistrationForm

:RegistrationManager

:RegistrationForm
FIB4:Course

Ann:Student
John:RegistrationUser

John:Student EDA :CourseOffering

ES:E :CourseOffering

Robert:Professor Mark:Student

18
Vista del Modelo de Comportamiento
LESE-1 Introducción al Modelado Visual

 Diagramas de Secuencia: describen la


interacción entre elementos del sistema en
el tiempo
registration registration ES:E
: Student FIB4: Course
form manager :Course Offering

1: fill in info

2: submit

3: add student to ESE:E

4: add student
5: are you open?

6: add student

19
Vista del Modelo de Comportamiento
LESE-1 Introducción al Modelado Visual

 Diagramas de Colaboración: describen la


interacción entre elementos del sistema en
el tiempo y en el espacio

course form :
1: set course info CourseForm
2: process

: Registrar 3: add course

theManager :
aCourse :
CurriculumManager
Course
4: new course

20
Vista del Modelo de Comportamiento
LESE-1 Introducción al Modelado Visual

 Diagramas de Estado : describen el


estado, condiciones y respuesta de los
elementos del sistema

Add student[ count < 10 ]

Add Student /
Initialization Set count = 0
Open
do: Initialize course
entry: Register student
exit: Increment count

Cancel

Cancel [ count = 10 ]
Course Class Canceled

do: Notify registered students Closed


Cancel
do: Finalize course

21
Vista del Modelo de Implementación
LESE-1 Introducción al Modelado Visual

Diagrama de Componentes: describe la


organización de los elementos físicos que
implementan sistema
Register.exe
Billing.exe

Billing
System

People.dll
User
Course.dll
Course

22
Vista del Modelo de Entorno
LESE-1 Introducción al Modelado Visual

 Diagrama de Despliegue: describe la


configuración del entorno de maquinas y
redes sobre el que se distribuyen
componentes y procesos del sistema

WebServer Database
ora8
Register.exe

SOAP
RMI

MQSeries Main
NT0034 Peoole.dll
Course.dll

UX0001
Billing.exe

23
Resúmen de Diagramas UML de un Sistema Software
LESE-1 Introducción al Modelado Visual
Repository DocumentList

Diagramas Estáticos FileMgr

fetchDoc( )
sortByName( )

FileList
DocumentList

add( )
delete( )
Document
name : int
docid : int
numField : int
get( )
open( )
close( )
read( )
sortFileList( )
read() fill the
code..
FileManager

Document
fList create( )
fillDocument( )
add( )
delete( )
1

GraphicFile
rep
File FileList
Repository File

Use Case 1 (from Persistence) read( ) GrpFile


name : char * = 0
readDoc( ) read( )
Actor A Actor B readFile( ) open( )
create( )
fillFile( )

Use Case 2

Diagramas de Clases Diagramas de Componentes


Use Case 3

Diagramas de Casos de Uso mainWnd : MainWnd Window95


Windows95

Windows95

¹®¼°ü¸®
Ŭ¶óÀ̾ðÆ®.EXE
¹®¼°ü¸® ¾ÖÇø´

fileMgr : FileMgr gFile : GrpFile Windows


NT

Solaris

¹®¼°ü¸® ¿£Áø.EXE

fileMgr : FileMgr Alpha


UNIX
ÀÀ¿ë¼¹ö.EXE

Windows
NT

IBM
Mainframe

document : Document µ¥ÀÌŸº£À̽º¼¹ö

repository : Repository
BO Contrapartida
[operación insertada]

Validar y Completar

Diagramas de Despliegue
Operación -Operador BO
-K+ (interfaz)

-KBO

Diagramas de Objetos
[ ok ] Calcular Flujos
de Caja

Notificar Error a Contabilizar -KBO


FO Operación -Host:Contabilidad (interfaz)

[error operación]
[ prima es en divisa ]
Generar Avances
para Extranjero
-Operador BO

-KBO
-Host: Liquidaciones (interfaz)

Enviar
Confirmación
Evalua
Confirmación
-KBO
-Host:SWIFT (interfaz)

-KBO

[ confirmación rechazada ]

Registrar Error

Diagramas Dinámicos
-Operador BO
-KBO (interfaz) [operación contratada]

Identificar
Motivo Rechazo
-Operador BO

Determinar Acciones
Correcion

[operacion no contratada]

Diagramas de Actividad 9: sortByName ( )


user
mainWnd fileMgr :
FileMgr
document :
Document
gFile repository

ƯÁ¤¹®¼¿¡ ´ëÇÑ º¸±â¸¦ 1: Doc view request ( )


»ç¿ëÀÚ°¡ ¿äûÇÑ´Ù.

mainWnd : MainWnd
add file 2: fetchDoc( )

1: Doc view request ( )


3: create ( )

2: fetchDoc( )
4: create ( ) gFile : GrpFile 4: create ( )

8: fillFile ( )
5: readDoc ( )
Writing
add file [ numberOffile==MAX ] /
flag OFF user : Clerk
fileMgr : FileMgr ÈÀÏ°ü¸®ÀÚ´Â Àоî¿Â
¹®¼ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼
°´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù.
6: fillDocument ( )

Openning
3: create ( )
7: readFile ( )
6: fillDocument ( )

close file 8: fillFile ( )

7: readFile ( )
È¸é °´Ã¼´Â ÀоîµéÀÎ 9: sortByName ( )
5: readDoc ( ) °´Ã¼µé¿¡ ´ëÇØ À̸§º°·Î
Á¤·ÄÀ» ½ÃÄÑ È¸é¿¡

close file document : Document º¸¿©ÁØ´Ù.


Closing
Reading repository : Repository

Diagramas de Estados Diagramas de Colaboracion Diagramas de Secuencia


24
Contenido
LESE-1 Introducción al Modelado Visual

Modelado Visual de un Sistema


Software
 Herramientas CASE
UML
 Vistas y Diagramas UML
El Proceso Unificado (UP)
 Contexto de ES:E

25
Desarrollo de Software. Las 4 “P”
LESE-1 Introducción al Modelado Visual

•Unified Process (UP)


Procesos
•Rational Unified (Process)
RUP

Plantilla •OPEN
•OOSP Automatización
•...
Participantes
Personas Proyecto Herramientas
•Modelado Visual UML
•Rational Rose, Visual UML, Objecteering
•Integrated Development Environment (IDE)
•Visual Studio .NET, NetBeans...
•Gestión de la Configuración
•CVS, ClearCase
Resultado
•Gestión de Requisitos
•RequiistPro,..
Producto •Automatización documentación
•SoDa
•Modelos •....
•Codigo fuente
•Ejecutables
•Documentación

26
Proceso de ingeniería software
LESE-1 Introducción al Modelado Visual

Es la definición de un conjunto de
actividades que permiten transformar
los requisitos de un cliente/usuario en
un sistema software.

Requisitos Proceso de Sistema Software


Desarrollo
Software

27
El Proceso Unificado de Desarrollo Software UP
LESE-1 Introducción al Modelado Visual

Es un proceso de ingeniería del software que


agrupa las 6 mejores prácticas de desarrollo
software que existen en el mercado
Tiempo
Contenido

28
UP – 6 Best Practices
LESE-1 Introducción al Modelado Visual

Desarrollar Iterativamente
Gestionar Requisitos
Usar Arquitecturas de Componentes
Modelar Visualmente (UML)
Continuamente Verificar Calidad del
Software
Controlar Cambios en el Software

29
UP - Carácteristicas
LESE-1 Introducción al Modelado Visual

Dirigido por Casos de Uso


 Funcionalidad de valor para los usuarios
Centrado en la Arquitectura
 Descripción de aspectos estáticos y dinámicos del
software que son mas significativos
Iterativo e Incremental
 Divide el trabajo en mini-proyectos que
incrementalmente crean el producto software

30
Modelos de un Sistema Software en UP
LESE-1 Introducción al Modelado Visual

realizado por

Bussiness Use Case Model Bussines Object Model automatizado por

Use Case Model

especificado por

realizado por

Analysis Model implementado por

Design Model distrbuido por

Modelos en el Proceso Implementation Model


verificado por

Unificado de desarrollo Deployment Model


software Test Model
31
Metodología ES:E
LESE-1 Introducción al Modelado Visual

Sigue la variante UP de Craig Larman


para la Especificación y Análisis de un
Sistema Software
“Applying UML and Patterns. An Introduction to Object Oriented Analysis
and Design and the Unified Process” Craig Larman. Ed Prentice Hall

ES:E se
centra en
Análísis

32
Metodolgia ES:E – UP Coverage
LESE-1 Introducción al Modelado Visual

ES:E

33
ES:E Disciplinas-Modelos-Artefactos
LESE-1 Introducción al Modelado Visual

Bussiness Modeling
 Modelo Conceptual

 Diagramas UML de Clases


 Restricciones OCL
Requirements/Analysis
 Modelo de Casos de Uso

 Diagramas UML de Casos de Uso


 Especificación de Casos de Uso
 Modelo de Comportamiento
 Diagramas UML de Secuencia
 Diagramas UML de Estados

34
Metodología - ES:E (especificación)
LESE-1 Introducción al Modelado Visual

Dominio
conceptos
reglas dominio

Restricciones OCL

Glosario Modelo Conceptual

Process Sale Payment


Authorization Service

System
: Payment
Cashier : Cashier
Authorization Service add file

makeNewSale()
Process Rental
enterItem(id,quantity)
Accounting add file [ numberOffile==MAX ] /
flag OFF
Writing

System
Openning

endSale()
close file
Cash In
makePayment(amount) close file
Closing
Reading

HR System validatePayment()
ok
Manage Users
performed

System

Requisitos Administrator

Mangage Accounts
Modelo Comportamiento
Automatización
... Descripciones c.u. Secuencia Eventos Diagramas Estados
Modelo Casos de Uso (actores-sistema) (objetos dominio /
Sistema) 35
Metodología - (Cursos Siguientes: Diseño)
LESE-1 Introducción al Modelado Visual

Glosario Modelo Conceptual


(atributos-relaciones)

Process Sale Payment


Authorization Service

System
: Payment
Cashier : Cashier
Authorization Service add file

makeNewSale()
Process Rental
enterItem(id,quantity)
Accounting add file [ numberOffile==MAX ] /
flag OFF
Writing

System
Openning

endSale()
close file
Cash In
makePayment(amount) close file
Closing
Reading

HR System validatePayment()
ok
Manage Users
performed

System
Administrator

Requisitos Mangage Accounts

Descripciones c.u. Diagramas Estados


Automatización ... Secuencia Eventos (objetos dominio
Casos de Uso Sistema)

1: makeNewSale() 2: create()
reg : sale :
POSRegister POSSale

: Cashier

3: create(amount)

p:

Arquitectura POSPayment

Diseño Clases Diseño Colaboraciones Clases para evento


(atributos/operaciones-relaciones) (secuencia de llamadas a métodos) 36
Práctica ES:E – Parte I – Modelo Conceptual
LESE-1 Introducción al Modelado Visual

Dominio
conceptos
reglas dominio

Restricciones OCL

Glosario Modelo Conceptual

Process Sale Payment


Authorization Service

System
: Payment
Cashier : Cashier
Authorization Service add file

makeNewSale()
Process Rental
enterItem(id,quantity)
Accounting add file [ numberOffile==MAX ] /
flag OFF
Writing

System
Openning

endSale()
close file
Cash In
makePayment(amount) close file
Closing
Reading

HR System validatePayment()
ok
Manage Users
performed

System

Requisitos Administrator

Mangage Accounts
Modelo Comportamiento
Automatización
... Descripciones c.u. Secuencia Eventos Diagramas Estados
Modelo Casos de Uso (actores-sistema) (objetos dominio /
Sistema) 37
Practica ES:E – Parte II – Modelo de Casos de Uso y
de Comportamiento
LESE-1 Introducción al Modelado Visual

Dominio
conceptos
reglas dominio

Restricciones OCL

Glosario Modelo Conceptual

Process Sale Payment


Authorization Service

System
: Payment
Cashier : Cashier
Authorization Service add file

makeNewSale()
Process Rental
enterItem(id,quantity)
Accounting add file [ numberOffile==MAX ] /
flag OFF
Writing

System
Openning

endSale()
close file
Cash In
makePayment(amount) close file
Closing
Reading

HR System validatePayment()
ok
Manage Users
performed

System

Requisitos Administrator

Mangage Accounts
Modelo Comportamiento
Automatización
... Descripciones c.u. Secuencia Eventos Diagramas Estados
Modelo Casos de Uso (actores-sistema) (objetos dominio /
Sistema) 38
Referencias
LESE-1 Introducción al Modelado Visual

“Understading UML” Shinan Salhir, http://home.earthlink.net/~salhir

“TheObjectOriented Paradigm” Shinan Salhir, http://home.earthlink.net/~salhir

“Applying UML and Patterns. An Introduction to Object Oriented


Analysis and Design and the Unified Process” Craig Larman. Ed Prentice
Hall
“EL Proceso Unificado de Desarrollo Software”, I. Jacobson, Grady
Booch, J. Rumbaugh, Ed Addison Wesley

39
LESE-1 Introducción al Modelado Visual

FIN

40

Das könnte Ihnen auch gefallen