32
Curso: Análisis y Diseño de Sistemas I Equipo de Profesores del Curso

Sesion1 adsi

Embed Size (px)

Citation preview

Page 1: Sesion1 adsi

Curso: Análisis y Diseño de Sistemas IEquipo de Profesores del Curso

Page 2: Sesion1 adsi

Logro del Curso

Al término del curso, el alumno elabora el modelado del negocio y la captura de requerimientos de una empresa real en el que identifica sus respectivos artefactos, aplicando la metodología RUP, el lenguaje de modelado UML y utilizando la herramienta CASE IBM Rational Software Architect (RSA)

Page 3: Sesion1 adsi

Logro de la Unidad

Unidad 1.- Ingenieria de Software, RUP y UML

• Al término de la unidad, el alumno describe las características, ventajas y desventajas de los modelos de proceso de software y la importancia de emplear la metodología RUP para modelar el ciclo de vida del desarrollo de un software.

Page 4: Sesion1 adsi

LA INGENIERÍA DE SOFTWARE Y RUP

Los Profesores del CursoLos Profesores del Curso

Page 5: Sesion1 adsi

5

Contenido

Ingeniería de Software Proceso de Software Modelos de procesos de software RUP

Descripción Mejores prácticas Estructura

UML

Page 6: Sesion1 adsi

6

¿Qué es Ingeniería? ¿Qué es software?Conjunto de conocimientos y técnicas científicas.

Elemento lógico del sistema.

Disciplina de la informática

¿Qué es Ingeniería de Software?

Desarrollar y mantener software de calidad

conocimientos técnicas métodos

ofrece

para

Ingeniería de Software

Page 7: Sesion1 adsi

7

UN ENFOQUE DE CALIDAD

PROCESO

MÉTODOS

HERRAMIENTAS

Ingeniería de Software como Tecnología Multicapa

Page 8: Sesion1 adsi

8

Conjunto de etapas cuyo objetivo es obtener un Software de calidad.

Proceso de Software

Ciclo de Vida del Software.

FASES GENÉRICASpresenta

es un

conocido como

DEFINICIÓN (QUÉ)

DESARROLLO (CÓMO)

MANTENIMIENTO(CAMBIO)

Fallos de definición

Errores

Modificaciones y adaptaciones

Page 9: Sesion1 adsi

9

Estrategia de desarrollo aplicado por ingenieros de software.Abstracción de un proceso real de desarrollo de software.

Modelo de Proceso de Software

Metodología: : “Quién debe hacer Qué, Cuándo y Cómo debe hacerlo”.

Seleccionar el modelo de proceso de software apropiado para la ingeniería de software que debe aplicar el equipo del proyecto.

cuál es el problema?

es una

define una

Page 10: Sesion1 adsi

10

Mantenimiento Análisis Diseño Prueba Código

Escuchar al cliente

El cliente prueba la maqueta

Construir y revisar la maqueta

Modelos de Proceso de Software

Page 11: Sesion1 adsi

11

Proceso de ingeniería de software orientado a objetos.

RUP (Rational Unified Process)

Conjunto de actividades necesarias que transforman los requerimientos del usuario en

el sistema de software.

Diversos tipos de software de sistemas, diversas áreas de aplicación, diferentes tipos de

organizaciones y diferentes tamaños de proyectos.

especializado para

es un

define un

El mejor estándar de modelado: UMLUML.trabaja con

Page 12: Sesion1 adsi

12

RUP Mejores prácticas

Desarrollo Iterativo

Modelamiento Visual

Control de Cambios

Administración de Requisitos

Arquitectura basada en

Componentes

Verificación Continua de la Calidad

Page 13: Sesion1 adsi

13

¿Qué propone RUP?

Page 14: Sesion1 adsi

14

Core ProcessWorflows

Core SupportingWorflows

Estructura de RUP

Page 15: Sesion1 adsi

15

<------------------------------------Tiempo------------------------------------>

Inicio Elaboración Construcción

Metas Principales

Transición

Fases

Definir el alcance y objetivos del proyecto.

Elaborar el Plan del proyecto, Especificación de características y Arquitectura base del sistema.

Trasladar el producto a la comunidad del usuario.

Construir y operar el producto.

-------------------------------------------------------------------------------------------...

Capa Específica

Capa General

Reserva Hospedaje

Facturacion

Maestro Clientes

Maestro de Habitacion

Consumo

Servicios

Reportes Seguridad

Page 16: Sesion1 adsi

16

Flujos de trabajo• Flujos de Trabajo para el desarrollo del sistemaFlujos de Trabajo para el desarrollo del sistema

– Modelado del negocio– Requisitos– Análisis y Diseño– Implementación– Pruebas– Implantación

• Flujos de Trabajo para la gestión del proyectoFlujos de Trabajo para la gestión del proyecto– Configuración y administración de cambios– Administración del proyecto– Ambiente o entorno

Page 17: Sesion1 adsi

17

Roles

Analistas

Desarrolladores

Gestores

Apoyo

Especialistas en pruebas

.

.

.

Ejemplo

Page 18: Sesion1 adsi

18

Plantilla del sistema que permite entender la estructura y comportamiento del mismo.

Modelamiento Visual

Capturar las partes esenciales de un sistema.

PrecisoConsistenteFácil de comunicarFácil de cambiarLegible

características

provee una

ayuda a

Page 19: Sesion1 adsi

19

Lenguaje estándar

Artefactos del sistema software

visualizar especificar documentar

que permite

UML (Lenguaje Unificado de Modelado)

construir

LOGRO

↑↑ Productividad, ↓↓ Ciclo de vida del Sw, ↑↑ Calidad del Sistema

Page 20: Sesion1 adsi

20

UMLhistoria

evolución

G. BoochI. Jacobson J. Rumbaugh

Page 21: Sesion1 adsi

21

Especificaciones de UMLEspecificaciones OCL y para el Intercambio de Diagramas Especificaciones de Infraestructura y Superestructura

13 diagramas

Inicialmente

Se agregaron

14 diagramas

9 diagramas

Page 22: Sesion1 adsi

22

Bloques básicos de construcción: ElementosElementos, RelacionesRelaciones y DiagramasDiagramas.

Elementos principales de UML

ReglasReglas sintácticas sintácticas y semánticassemánticas..

Mecanismos comunes EspecificacionesEspecificaciones AdornosAdornos DivisionesDivisiones comunescomunes: dicotomía clase/objeto, interfaz/implementación y tipo/rol

Mecanismos de extensibilidadMecanismos de extensibilidad: estereotipos, valores etiquetados y restricciones.

Page 23: Sesion1 adsi

23

Taxonomía de Diagramas UML 2.0

Package Diagram

Composite Structure Diagram

Interaction Overview Diagram

Timing Diagram

Page 24: Sesion1 adsi

24

Taxonomía de Diagramas UML 2.2

Profile Diagram

Page 25: Sesion1 adsi

25

Diagramas UML 2.0componente

dependenciaclase

asociación

objeto

enlace

interfaz proporcionada

interfaz requerida

puertoparte

Page 26: Sesion1 adsi

26

Diagramas UML 2.0nodo conexión

paquete

partición acción flujo de control

inicio

fin

control de decisión

dependencia

Page 27: Sesion1 adsi

27

Diagramas UML 2.0actor de negocio caso de uso de negocio

actor caso de uso

Page 28: Sesion1 adsi

28

Diagramas UML 2.0

estado

transición

objeto

enlace Mensaje

Objeto Línea de vida

Periodo de actividad

Page 29: Sesion1 adsi

29

Diagramas UML 2.0

Page 30: Sesion1 adsi

30

Modelo de Vistas 4+1

Logical View

End-user Functionality

Implementation View

Programmers Software management

Process View

PerformanceScalability

System integrators

Deployment View

System topology Delivery, installation

Communication

System engineering

Use Case View

Vista Lógica

Diseño de Funcionalidades del Sistema

Vista de Procesos

Aspectos de concurrencia y sincronización

Vista de Implementación

Organización de elementos físicos que se implementa en el sistema (código)

Vista de Despliegue

Arquitectura física del sistema

Vista de Casos de Uso

Comportamiento del Sistema percibido por usuarios finales, analistas y encargados de las pruebas

Page 31: Sesion1 adsi

31

Para Recordar La Ingeniería de software ofrece conocimientos, técnicas y

métodos para desarrollar y mantener software de calidad

RUP es un proceso de ingeniería de software orientado a objetos.

RUP captura varias de las mejores prácticas en el desarrollo moderno de software.

RUP trabaja con el mejor estándar de modelado: UML.

UML es un lenguaje que permite visualizar, especificar, construir y visualizar artefactos del sistema de software

Page 32: Sesion1 adsi

Referencias

32

GRADY BOOCH, JAMES RUMBAUGH, IVAN JACOBSON

2006 El Lenguaje Unificado de Modelado – UML 2.0. Madrid: Pearson – Addison Wesley – 2da. Edición.(005.117 BOOC 2006)

PRESSMAN, ROGER S.2002 Ingeniería del Software: un enfoque prácticoMadrid: MC Graw-Hill.(005.1 PRES 2002)