Upload
poncecarol03
View
1.307
Download
0
Embed Size (px)
Citation preview
Curso: Análisis y Diseño de Sistemas IEquipo de Profesores del Curso
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)
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.
LA INGENIERÍA DE SOFTWARE Y RUP
Los Profesores del CursoLos Profesores del Curso
5
Contenido
Ingeniería de Software Proceso de Software Modelos de procesos de software RUP
Descripción Mejores prácticas Estructura
UML
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
7
UN ENFOQUE DE CALIDAD
PROCESO
MÉTODOS
HERRAMIENTAS
Ingeniería de Software como Tecnología Multicapa
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
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
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
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
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
13
¿Qué propone RUP?
14
Core ProcessWorflows
Core SupportingWorflows
Estructura de RUP
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
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
17
Roles
Analistas
Desarrolladores
Gestores
Apoyo
Especialistas en pruebas
.
.
.
Ejemplo
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
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
20
UMLhistoria
evolución
G. BoochI. Jacobson J. Rumbaugh
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
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.
23
Taxonomía de Diagramas UML 2.0
Package Diagram
Composite Structure Diagram
Interaction Overview Diagram
Timing Diagram
24
Taxonomía de Diagramas UML 2.2
Profile Diagram
25
Diagramas UML 2.0componente
dependenciaclase
asociación
objeto
enlace
interfaz proporcionada
interfaz requerida
puertoparte
26
Diagramas UML 2.0nodo conexión
paquete
partición acción flujo de control
inicio
fin
control de decisión
dependencia
27
Diagramas UML 2.0actor de negocio caso de uso de negocio
actor caso de uso
28
Diagramas UML 2.0
estado
transición
objeto
enlace Mensaje
Objeto Línea de vida
Periodo de actividad
29
Diagramas UML 2.0
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
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
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)