Sei sulla pagina 1di 113

Proceso Unificado de desarrollo

Facultad de Informtica Departamento de Lenguajes y Sistemas Informticos e Ingeniera de Software

UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID

Objetivos
Ofrecer una visin general del proceso unificado, sus actividades y herramientas. Presentar una visin simplificada del Lenguaje Unificado de Modelado (UML). Aprender la nocin de proceso y metodologa en la Orientacin a Objetos

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 2

Contenido
Introduccin al Proceso Unificado

Los flujos de trabajo fundamentales


Fases del proceso Organizacin del proyecto

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 3

Introduccin al Proceso Unificado

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 4

El proceso Unificado: Que es ?


Los sistemas son cada da ms grandes, existe una tendencia generalizada, esto hace que los procesos iterativos e incrementales sean imprescindibles. Es necesario un proceso comn, un mtodo que integre:
Gua para ordenar las actividades de un equipo. Direccin de las tareas de cada desarrollador por separado y

del equipo como un todo. Especificacin de los artefactos que deben ser desarrollados. Criterios para el control y la medicin de los productos y actividades del proyecto.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 5

El proceso Unificado: Caractersticas


Est basado en componentes e interfaces bien definidas

Utiliza el Lenguaje Unificado de Modelado (UML)


Aspectos caractersticos:
Dirigido por casos de uso
Centrado en la arquitectura Iterativo e incremental

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 6

El proceso Unificado: Estructura

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 7

El Proceso Unificado Dirigido por casos de uso


Caso de uso: Fragmento de funcionalidad que proporciona al usuario un resultado importante Modelo de casos de uso: Funcionalidad total del sistema Qu debe hacer el sistema para cada usuario? Guan todo el proceso de desarrollo En cada iteracin se identifican e implementan unos cuantos casos de uso Los casos de uso sirven para idear la arquitectura Se seleccionan los casos de uso ms representativos Se utiliza como partida para escribir el manual de usuario
O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 8

El Proceso Unificado Dirigido por casos de uso


Modelo de anlisis a partir de casos de uso
Crece incrementalmente

Se especifican a travs de diagramas de clases y de colaboracin


Al principio se examinan unos pocos casos de uso y se crean sus

realizaciones Cada clasificador puede participar en varias realizaciones distintas con distintos roles Clases estereotipadas de anlisis (entorno, control y entidad)

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 9

Un proceso dirigido por casos de uso


Realizacin de un caso de uso (anlisis):
Modelo de casos de uso Modelo de anlisis

Sacar dinero

trace

Sacar dinero

Salida

Interfaz cajero

Retirada efectivo

Cuenta

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 10

Un proceso dirigido por casos de uso


Modelo de casos de uso Modelo de anlisis

Sacar dinero

Salida

Retirada efectivo

Ingresar dinero

Cliente del banco


Transferencia

Cliente del banco

Interfaz cajero

Transferencia

Cuenta

Receptor dinero
O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Ingreso

Pgina 11

Un proceso dirigido por casos de uso


Diagrama de colaboracin para describir una realizacin:

1:Identificacin

2: solicitar retirada

:Interfaz cajero
3: validar y retirar

:Cliente del banco


5: entrega dinero

:Retirada efectivo
4: autorizar entrega

:Cuenta

:Salida

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 12

Un proceso dirigido por casos de uso


Modelo de diseo a partir del modelo de anlisis
Se adapta al entorno de implementacin

Se define con los mismos diagramas


El modelo de diseo es ms fsico y el modelo de anlisis ms

conceptual

Modelo de casos de uso


Sacar dinero
trace

Modelo de anlisis
Sacar dinero
trace

Modelo de diseo
Sacar dinero

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 13

Un proceso dirigido por casos de uso


Modelo de anlisis
Salida Interfaz cajero
trace Teclado Gestor de Cliente Dispositivo de visualizacin Cuenta Retirada de efectivo

Retirada efectivo
trace

Cuenta
trace

Modelo de diseo
Sensor de salida

trace

Alimentador de la salida Contador de efectivo Lector de tarjetas

Clase Persistente

Gestor de Transacciones

Gestor de Cuentas

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 14

Un proceso dirigido por casos de uso


Lector de tarjetas Dispositivo de visualizacin Cliente del banco Teclado Gestor de Transacciones Gestor de Cliente Clase Persistente

Alimentador de la salida Sensor de salida Contador de efectivo

Retirada de efectivo Gestor de Cuentas

Cuenta

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 15

Un proceso dirigido por casos de uso


:Lector de tarjetas :Dispositivo de visualizacin :Teclado :Gestor de Cliente :Contador de efectivo :Gestor de Transacciones

:Cliente del banco

Introducir tarjeta Tarjeta introducida(ID) Solicitar PIN

Mostrar peticin
Especificar cdigo PIN Cdigo PIN Validar cdigo PIN Solicitar cantidad a retirar Mostrar peticin Especificar cantidad Cantidad(C) Disponib. Saldo(C)

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Solicitar retirada cantidad(C)

Pgina 16

Un proceso dirigido por casos de uso


Las clases se agrupan en subsistemas
subsystem Interfaz del CA Lector de tarjetas Cliente del banco Dispositivo de visualizacin Teclado Alimentador de la salida Sensor de salida Gestor de Cliente Contador de efectivo IEntrega IRetirada
O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

subsystem Transacciones

Gestor de Transacciones subsystem Efectivo Retirada de efectivo

subsystem Gestin de Cuentas Clase Persistente Gestor de Cuentas

ITransferen

Cuenta

Pgina 17

Un proceso dirigido por casos de uso


Modelo de implementacin a partir del modelo de diseo
Modelo de diseo
Gestor de Cliente

Modelo de implementacin
file trace

Sensor de salida
Alimentador de la salida

exe

Cliente.cpp
file trace

compilation

Cliente.exe

Contador de efectivo

Salida.cpp

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 18

Un proceso dirigido por casos de uso


Pruebas
Modelo de pruebas compuesto por:
Casos de prueba
Procedimientos de prueba

Modelo de casos de uso

Modelo de pruebas
trace

X
Sacar dinero

Sacar dinero

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 19

El Proceso Unificado Centrado en la arquitectura


Describe diferentes vistas del sistema Incluye los aspectos estticos y dinmicos ms significativos Es la forma del software La arquitectura y los casos de uso evolucionan en paralelo

Casos de uso

Software del sistema Capa intermedia

Sistemas heredados

Arquitectura

Estndares y polticas Requisitos no funcionales

Se empieza por la parte que no es especfica de los casos de Experiencia uso


O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Necesidades de distribucin

Pgina 20

Un proceso centrado en la arquitectura


La arquitectura se desarrolla principalmente en la fase de

elaboracin

Qu casos de uso tener en cuenta?


Los que representen riesgos ms importantes Los ms importantes para el usuario Funcionalidades significativas

Lnea base de la arquitectura


Esqueleto con pocos msculos

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 21

El Proceso Unificado Iterativo e incremental


Beneficios de un proceso iterativo controlado:
Coste del riesgo a un solo incremento

Reduce el riesgo de no sacar el producto en el calendario previsto


Acelera el ritmo de desarrollo Se adapta mejor a las necesidades del cliente

Se divide el trabajo en mini-proyectos Cada mini-proyecto es una iteracin que resulta en un incremento La iteracin
Trata un conjunto de casos de uso

Trata los riesgos ms importantes

En cada iteracin se persiguen unos objetivos concretos


O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 22

Un proceso iterativo e incremental


Iteracin genrica:

Planificacin

Requisitos
Anlisis Diseo Implementacin

Prueba

Evaluacin de la iteracin

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 23

Un proceso iterativo e incremental


Fases del proceso:
Inicio: Objetivos del ciclo de vida
Establecer mbito del sistema
Reducir peores riesgos Preparar el anlisis del negocio

Elaboracin: Arquitectura del ciclo de vida


Obtener lnea base de la arquitectura
Capturar mayora de requisitos Reducir siguientes riesgos

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 24

Un proceso iterativo e incremental


Fases del proceso
Construccin: Funcionalidad operativa inicial
Desarrollo del sistema entero

Transicin: Versin del producto


Producto preparado para su entrega al usuario Se ensea a los usuarios a utilizarlo

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 25

Personas, Proyecto, Producto y Proceso


Personas
Arquitectos, desarrolladores, ingenieros de prueba, personal de gestin,

usuarios, clientes El proceso de desarrollo afecta a las personas (viabilidad, gestin del riesgo, estructura de los equipos, planificacin, comprensin, cumplimiento) Formacin, entrenamiento y experiencia De recurso a trabajador (puestos que asumen las personas) Cada trabajador tiene un conjunto de responsabilidades y lleva a cabo un conjunto de actividades

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 26

Personas, Proyecto, Producto y Proceso


Proyecto
Elemento organizativo de gestin

El proyecto construye el producto


Secuencia de cambio. El sistema evoluciona Serie de iteraciones. Cada iteracin implementa un conjunto de

casos de uso o atena algunos riesgos. Mini-proyecto Patrn organizativo. Tipos de trabajadores y artefactos a conseguir

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 27

Personas, Proyecto, Producto y Proceso


Producto
Artefactos que se crean durante la vida del proyecto

Artefactos: Modelos, cdigo, ejecutables, documentacin,

diagramas UML, bocetos de la interfaz de usuario, prototipos, componentes, planes de prueba Artefactos de ingeniera y de gestin Coleccin de modelos

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 28

Personas, Proyecto, Producto y Proceso


Proceso
Conjunto de actividades para crear el producto Es una plantilla para crear proyectos

(Instancia del proceso)

Se define en trminos de flujos de trabajo (conjunto de

actividades) Se identifican trabajadores y artefactos Adaptacin o especializacin del proceso Se utilizan diagramas de actividad de UML para describir los flujos de trabajo

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 29

Los flujos de trabajo fundamentales

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 30

Tpicos
Artefactos

Trabajadores
Flujo de Trabajo

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 31

Work Flow de Requisitos

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 32

Introduccin
El esfuerzo principal en esta fase (requisitos) es desarrollar un modelo del sistema que se va a construir utilizando casos de uso y los lmites bajo los cuales opera. Los casos de uso son un medio intuitivo. nfasis en el valor aadido que proporciona al usuario. Descripcin en tres pasos:
Artefactos a desarrollar, Trabajadores que participan y El flujo de trabajo.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 33

Artefacto
Pieza de informacin utilizada o producida por un proceso de desarrollo de software Artefactos implicados durante la captura de requisitos
Modelo de Casos de Uso Actor
n

Glosario
Caso de Uso Prototipo de Interfaz de Usuario Descripcin de la Arquitectura
O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 34

Casos de Uso
Qu es un caso de uso? Un caso de uso es una secuencia de interacciones entre uno o varios actores y el sistema que tiene lugar bajo ciertas circunstancias y que:
Es iniciada por un actor. Se puede describir como una secuencia de actividades. Produce un resultado de valor observable para algn actor.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 35

Casos de uso
Se capturan requisitos de usuario a travs de casos de uso Son fundamentales para:
Identificar y especificar clases, subsistemas e interfaces Identificar y especificar casos de prueba Planificar las iteraciones e integracin del sistema

Nos guan a travs de los flujos de trabajo En cada iteracin se identifican e implementan unos cuantos casos de uso Los casos de uso sirven para idear la arquitectura Se seleccionan los casos de uso ms representativos Se utiliza como partida para escribir el manual de usuario
O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 36

Work Flow de Requisitos


Encontrar Actores y Casos de Uso

Analista de Sistemas

Estructurar el Modelo de Casos de Uso

Arquitecto

Priorizar los Casos de Uso

Especificador CU

Detallar los Casos de Uso

Diseador de Interfaz de usuario


O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Prototipar la Interfaz de Usuario


Pgina 37

Actividad: Encontrar actores y casos de uso


Lista de caractersticas Se utiliza slo para planificacin Estructura de las caractersticas:
Nombre y breve descripcin Estado (propuesto, aprobado, incluido,) Coste estimado implementacin Prioridad Nivel de riesgo (crtico, significativo, )

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 38

Actividad: Detallar un caso de uso


Alternativas:
Precondicin + Camino bsico + Caminos alternativos +

Poscondicin

Diagramas de estado

Diagramas de actividades
Diagramas de interaccin

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 39

Actividad: Estructurar los casos de uso


Identificar descripciones de funcionalidad compartida (herencia)
Casos de uso reales
Casos de uso abstractos

Identificar descripciones de funcionalidad adicional y opcional (extensin) Otras relaciones (inclusin)

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 40

Ejemplo
Cuando el cliente inserta su tarjeta en el cajero, la pantalla del cajero le pide que seleccione un idioma. El cliente realiza su seleccin. El cajero pregunta entonces al cliente cul es su nmero de identificacin personal ... ... el cliente recoge su dinero de la ranura del dispensador y saca su tarjeta de la ranura de tarjetas.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 41

Por qu utilizar casos de uso?


Un caso de uso ayuda a contestar las siguientes preguntas:
Quin hace qu? Cundo lo hace? Qu actividades se realizan? Qu elementos del sistema se utilizan?

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 42

Caso Prctico: Documento de Requisitos


Requisitos, Antecedentes, Objetivos y Alcance
Los requisitos iniciales se han obtenido directamente del cliente y usuario final. Se desea desarrollar una aplicacin para dar soporte a la matriculacin de los alumnos de una universidad. La aplicacin debe dar soporte a las siguientes funcionalidades: - Un alumno puede matricularse de curso completo o de asignaturas sueltas. - Cada alumno se matricula para una asignatura en concreto en un grupo en concreto, durante un periodo acadmico concreto. - Un profesor imparte una asignatura en un grupo - La aplicacin debe incorporar la gestin de profesores, es decir, aadir un nuevo profesor, borrarlo o modificar sus datos. - La aplicacin debe permitir al administrador inscribir alumnos en la universidad. - Entendemos por inscripcin crear su expediente, es decir, un alumno puede tener expediente pero no estar matriculado. - Si el alumno se matricula de curso completo elegir grupo y cursar todas las asignaturas en ese mismo grupo. - Tambin debe ser posible modificar el expediente de un alumno y en casos especiales borrarlo. - Todas las operaciones de borrado se realizan nicamente a nivel lgico. - La aplicacin debe permitir al administrador crear nuevos grupos y tambin borrarlos. - La aplicacin tambin debe dar soporte a la gestin de asignaturas, es decir, aadir, borrar y modificar. - El administrador tambin debe poder asignar un profesor a un grupo para una asignatura concreta. - La aplicacin funcionar en pcs con windows 95 y pocos recursos. - La aplicacin debe funcionar con un esquema cliente servidor, central. - El sistema desarrollado debe ser lo ms estndard posible. - Los alumnos se validarn para usar el sistema introduciendo su login y password en formulario.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 43

Caso Prctico: Casos de Uso (Vista Parcial)

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 44

Caso Prctico: Descripcin de un Caso de Uso


Descripcin de Casos de Uso
Nmero: 001 Nombre de Caso de Uso: Matricular Asignaturas Sueltas Actor(es): Alumno

Descripcin
Proceso que sigue un alumno a la hora de matricular una o varias asignaturas sueltas.

Flujo de Eventos
- Entrada en el sistema - Seleccin de las asignaturas que desea - Realizar matrcula

Requerimientos Especiales: El actor no puede ser un alumno de nuevo ingreso. Pre-Condiciones: Haber realizado un login exitoso en la aplicacin.
O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 45

Caso Prctico: Descripcin de un Caso de Uso


Descripcin de Casos de Uso
Nmero: 002 Nombre de Caso de Uso: Logn Actor(es): Alumno

Descripcin
Proceso que sigue un alumno para entrar en el sistema.

Flujo de Eventos
- Introducir el nombre de usuario - Introducir la password - Realizar Login

Requerimientos Especiales: Pre-Condiciones: N/A.

El actor no puede ser un alumno de nuevo ingreso.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 46

Caso Prctico: Prototipo de la Interfaz de Usuario


Caso de Uso Hacer Matrcula

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 47

Caso Prctico: Prototipo de la Interfaz de Usuario


Actividad: Login

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 48

Work Flow de Anlisis

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 49

Objetivos de Anlisis
Ofrecer una especificacin ms precisa de los requisitos que la que tenemos como resultado de los requisitos. Estructurar los requisitos de un modo que facilita su compresin, su preparacin, su modificacin y en general su mantenimiento. Considerar una primera aproximacin al Diseo.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 50

Work Flow de Anlisis


Anlisis de la Arquitectura

Arquitecto
Analizar un Caso de Uso

Ingeniero de casos de uso

Ingeniero de Componentes

Analizar una clase

Analizar un paquete

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 51

Artefacto: MODELO DE ANLISIS

Las clases de anlisis representan abstracciones de clases o subsistemas del diseo de sistema y dentro del modelo de anlisis, los casos de uso se describen mediante clases de anlisis y sus objetos.
Lo que se representa a travs de colaboraciones dentro del modelo de anlisis que llamamos realizaciones de caso de uso-anlisis.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 52

Artefacto: CLASE DE ANLISIS


Requisitos funcionales Ms evidente, mayor granularidad Una clase de anlisis, raramente define u ofrece un interface en trminos de operaciones y de sus signaturas. En cambio, su comportamiento se define mediante responsabilidades en un nivel ms alto y menos formal. Una clase de anlisis define atributos de un nivel bastante alto Una clase de anlisis participa en relaciones, aunque se trata de relaciones ms conceptuales Las clases de anlisis siempre encaja en uno de tres estereotipos bsicos: de interfaz, de control o de entidad

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 53

Artefacto: CLASES DE INTERFAZ


Las clases de interfaz representan a menudo, abstracciones de ventanas, formularios, paneles , interfaces de comunicaciones, interfaces de impresoras, sensores, terminales, y API (posiblemente no orientados a objetos)

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 54

Artefacto: CLASES DE ENTIDAD


Las clases de entidad se utilizan para modelar informacin que posee una vida larga y que es, a menudo, persistente. Suelen derivarse directamente de una clase de entidad del negocio.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 55

Artefacto: CLASES DE CONTROL


Las clases de control representan coordinacin, secuencia, transacciones, y control de otros objetos y se usan frecuentemente para encapsular el control de un caso de uso en concreto. Los aspectos dinmicos del sistema se modelan con clase de control, manejan y coordinan las acciones y los flujos de control principales, y delegan trabajo en otros objetos, es decir, objetos de interfaz y de entidad.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 56

Artefacto: REALIZACIN DE CASO DE USOANLISIS


Una realizacin de caso de uso-anlisis es una colaboracin dentro del modelo de anlisis que describe cmo se lleva a cabo y se ejecuta un caso de uso determinado en trminos de las clases de anlisis y de sus objetos de anlisis en interaccin. Una realizacin de caso de uso posee una descripcin textual del flujo de sucesos, diagramas de clase que muestran sus clases de anlisis participantes, y diagramas de interaccin que muestran la realizacin de un flujo o escenario particular del caso de uso en trminos de interacciones de objetos del anlisis.
trace
Caso de uso
O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Realizacin caso de uso -Anlisis


Pgina 57

ARTEFACTO: PAQUETE DE ANLISIS


Los paquetes del anlisis proporcionan un medio de organizar los artefactos del modelo de anlisis en piezas manejables. Un paquete de anlisis puede constar de clases de anlisis, de realizacin de casos de uso, y de otros paquetes de anlisis (recursivamente). Deben ser cohesivos y dbilmente acoplados Tienen las siguientes caractersticas: Pueden representar una separacin de intereses de anlisis Han de crearse basndose en los requisitos funcionales y en el dominio del problema Probablemente se convertirn en subsistemas
Reglas de negocio

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 58

Diagramas de clases
Diagrama ms comn de modelado estructural. Contiene: clases, interfaces, colaboraciones y relaciones.

Usos ms comunes:
Modelar el vocabulario del sistema. Modelar colaboraciones simples. Modelar el esquema lgico de una base de datos.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 59

Tcnicas comunes de modelado de diagramas de clases


Modelado de colaboraciones simples
Identificacin de los mecanismos (funciones o comportamientos de la

parte del sistema que se est modelando). Para cada uno, encontrar las clases, interfaces y otras colaboraciones que participan en la colaboracin, as como las relaciones entre ellos. Usar escenarios para recorrer la interaccin entre los elementos.

Modelado de un esquema lgico de una base de datos


Identificar clases persistentes, representndolas con el valor etiquetado

estndar {persistent}. Expandir los detalles estructurales de dichas clases. Aadir abstracciones intermedias para simplificar la estructura lgica. Separar el comportamiento de las clases persistentes en dos bloques: comportamiento intrnseco y tratamiento de los datos.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 60

Modelo en tres Capas

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 61

Caso Prctico: Colaboraciones. Login ok

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 62

Caso Prctico: Colaboraciones. No Login

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 63

Work Flow de Diseo

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 64

Work Flow de Diseo


Diseo de la Arquitectura

Arquitecto
Disear un Caso de Uso

Ingeniero de casos de uso

Ingeniero de Componentes

Disear una clase

Disear un subsistema

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 65

Realizacin de caso de uso-diseo


Diagramas de clase

Diagramas de interaccin (clases, subsistemas, interfaces)


Flujo de sucesos-diseo Requisitos de implementacin

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 66

Clases de Diseo
A la hora de construir un modelo de diseo hay que tomar en consideracin mltiples aspectos muy cercanos a la implementacin como por ejemplo el lenguaje. Hay que establecer la correspondencia entre las clases de anlisis y las de diseo, a un nivel muy bsico podramos considerar simplemente:
Clase de Entidad de Anlisis Clase que almacena datos. Clase de Control de Anlisis Clase que encapsula la lgica. Clase de Interfaz de Anlisis Formularios, Dilogos, Ventanas

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 67

Work Flow de Implementacin

Implementacin

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 68

Work Flow de Implementacin


Implementacin de la Arquitectura

Arquitecto
Integrar sistemas

Integrador de sistemas

Ingeniero de Componentes

Implementar un subsistema Implementar una clase Realizar prueba de unidad

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 69

Actividad: Integrar sistemas


Construir el software incrementalmente Control de versiones Integracin incremental El plan describe la secuencia de construcciones necesarias en una iteracin
Funcionalidad de la construccin Partes del modelo de implementacin afectados por la

construccin

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 70

Work Flow de Pruebas

Pruebas

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 71

Procedimiento de prueba
Cmo realizar uno o varios casos de prueba

Instrucciones para un individuo


Especificacin de interaccin manual Componente de prueba
Automatiza uno o varios procedimientos de prueba Puede utilizarse un modelo de diseo de pruebas

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 72

Work Flow de Pruebas


Planificar Pruebas Disear prueba Evaluar prueba

Ingeniero de pruebas

Ingeniero de pruebas de integracin

Realizar Prueba de integracin

Ingeniero de pruebas de sistema

Realizar prueba de sistema

Ingeniero de componentes

Implementar Prueba
Pgina 73

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Fases del proceso

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 74

Desarrollo iterativo e incremental

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 75

Analista de Encontrar actores y casos Estructurar el modelo de casos de de uso uso sistemas

Planificar prueba Disear prueba Evaluar prueba

Ingeniero de pruebas

Especificador de casos de uso

Detallar un caso de uso

Integrar sistemas

Integrador de sistemas

Diseador de interfaces

Prototipar la interfaz de usuario

Realizar prueba de integracin

Ingeniero de pruebas de int.

Arquitecto

Anlisis de la arquitectura Diseo de la Implementacin de la arquitectura Priorizar los casos arquitectura de uso

Realizar prueba de sistema

Ingeniero de pruebas de sis.

Ingeniero de casos de uso

Analizar un caso de uso

Disear un caso de uso Implementar pruebas

Analizar una clase

Disear una clase

Implementar un subsistema

Ingeniero de componentes

Analizar un paquete

Disear un subsistema

Realizar prueba de Implementar una clase unidad

76

Fase de inicio
Objetivo: Establece la viabilidad del proyecto Se fundamenta el anlisis de negocio inicial:
Se delimita el mbito del sistema
Se propone o esboza una arquitectura del sistema Se identifican riesgos crticos Se demuestra a los usuarios la utilidad del sistema propuesto

Sistema rentable econmicamente

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 77

Fase de inicio
La mayor parte se realiza en el flujo de requisitos Ajuste del proyecto al entorno
Proceso + herramientas + servicios para proyectos
Herramientas para los flujos de trabajo Herramientas para la gestin del proyecto

Identificar y mitigar/planificar riesgos crticos

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 78

Analista de Encontrar actores y casos Estructurar el modelo de casos de de uso uso sistemas

Planificar prueba Disear prueba Evaluar prueba

Ingeniero de pruebas

Especificador de casos de uso

Detallar un caso de uso

Integrar sistemas

Integrador de sistemas

Diseador de interfaces

Definir mbito del sistema Prototipar la interfaz de usuario Esbozar la arquitectura Anlisis de la arquitectura Diseo de la Implementacin de la arquitectura candidata Priorizar los casos
de uso arquitectura

Realizar prueba de integracin

Ingeniero de pruebas de int.

Realizar prueba de sistema

Ingeniero de pruebas de sis.

Arquitecto

Ingeniero de casos de uso

Analizar un caso de uso

Disear un caso de uso Implementar pruebas

Analizar una clase

Disear una clase

Implementar un subsistema

Ingeniero de componentes

Analizar un paquete

Disear un subsistema

Realizar prueba de Implementar una clase unidad

79

Fase de inicio
Requisitos
Enumerar requisitos candidatos

Comprender contexto del sistema


Recopilar requisitos funcionales
Encontrar actores y casos de uso Priorizar casos de uso

Detallar un caso de uso

Recoger requisitos no funcionales

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 80

Fase de inicio
Anlisis
Se completa alrededor del 5% del modelo

Anlisis de la arquitectura
Analizar un caso de uso

Diseo
Diseo de la arquitectura Colaboraciones entre clases y subsistemas Identificar interfaces entre clases y subsistemas Elegir software del sistema y elementos del middleware

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 81

Fase de inicio
Implementacin
No suele ser necesaria

Implementacin de un prototipo desechable

Prueba
Los ingenieros de pruebas consideran qu pruebas se requerirn Planes de prueba No se realizan pruebas

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 82

Fase de inicio
Modelo negocio Casos de uso identificados Casos de uso descritos Casos de uso analizados Casos de uso diseados, implementados y probados Lo suficiente para el prototipo

Fase inicio

50% -70%

50%

10%

5%

Fase elaboracin

Cerca del 100%

>80%

40% - 80%

20% - 40%

<10%

Fase construccin

100%

100%

100%

100% si se mantiene

100%

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 83

Fase de inicio
Productos de la fase:
Lista de caractersticas

Primera versin del modelo del negocio


Primera versin del modelo de casos de uso, de anlisis y de

diseo Descripcin de la arquitectura candidata Prototipo exploratorio Lista inicial de riesgos y clasificacin de casos de uso Plan para el proyecto Primer borrador del anlisis del negocio

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 84

Fase de elaboracin
Dos grandes objetivos:
Elaborar una arquitectura estable

Conocer suficientemente el sistema como para planificar en

detalle la fase de construccin

Tareas bsicas:
Crear una lnea base para la arquitectura

Identificar riesgos significativos


Especificar atributos de calidad Estudiar 80% de los requisitos funcionales

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 85

Fase de elaboracin
Objetivos:
Recopilar la mayor parte de los requisitos

Establecer la lnea base de la arquitectura


Controlar riesgos crticos e identificar riesgos significativos Completar detalles del plan del proyecto

Planificacin de la fase Formacin del equipo

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 86

Analista de Encontrar actores y casos Estructurar el modelo de casos de de uso uso sistemas

Planificar prueba Disear prueba Evaluar prueba

Ingeniero de pruebas

Especificador de casos de uso

Detallar un caso de uso

Integrar sistemas

Desarrollar lnea base de la arquitectura

Integrador de sistemas

Diseador de interfaces

Refinar mayor parte de requisitos

Prototipar la interfaz de usuario

Realizar prueba de integracin

Ingeniero de pruebas de int.

Arquitecto

Anlisis de la arquitectura Diseo de la Implementacin de la arquitectura Priorizar los casos arquitectura de uso

Realizar prueba de sistema

Ingeniero de pruebas de sis.

Ingeniero de casos de uso

Analizar un caso de uso

Disear un caso de uso Implementar pruebas

Ingeniero de componentes

Disear una clase Analizar Alberto O. Sanjun,una clase Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software Analizar un paquete Disear un subsistema

Implementar un subsistema

Pgina Realizar prueba de 87 Implementar una clase unidad

Fase de elaboracin
Recopilar requisitos
Encontrar casos de uso y actores adicionales

Desarrollar prototipos de interfaces de usuario


Determinar prioridad de los casos de uso Detallar un caso de uso Estructurar el modelo de casos de uso

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 88

Fase de elaboracin
Anlisis
Anlisis de la arquitectura

Analizar un caso de uso


Analizar una clase Analizar un paquete

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 89

Fase de elaboracin
Diseo
Diseo de la arquitectura Identificar la arquitectura en capas Identificar subsistemas y sus interfaces Identificar clases significativas Si es un sistema distribuido, identificar nodos Disear un caso de uso

Disear una clase


Disear un subsistema

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 90

Fase de elaboracin
Implementacin
Implementacin de la arquitectura

Implementacin de una clase y de un subsistema


Integrar el sistema

Pruebas
Planificar las pruebas Disear las pruebas Realizar pruebas de integracin y pruebas de sistema

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 91

Fase de elaboracin
Anlisis del negocio Evaluacin de la fase de elaboracin Planificacin de la fase de construccin
Se planifica en detalle la 1 iteracin Se esboza el plan de las siguientes

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 92

Fase de elaboracin
Productos
Modelo del negocio completo

Versin de los modelos


Lnea base de la arquitectura Lista de riesgos actualizada Plan de proyecto para construccin y transicin

Manual de usuario (opcional)


Anlisis del negocio completo

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 93

Fase de construccin
Objetivo: La capacidad de operacin inicial Versin beta Requiere mayor nmero de iteraciones Tareas bsicas:
Extensin a todos los casos de uso
Finalizacin del anlisis, diseo, implementacin y prueba Mantenimiento de la integridad de la arquitectura Monitorizacin de los riesgos crticos y significativos.

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 94

Fase de construccin
Versin beta Se detallan todos los casos de uso Se modifica la descripcin de la arquitectura Se terminan todos los modelos Es la fase del desarrollo Se mitigan todos los riesgos excepto los de operacin

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 95

Fase de construccin
Esta fase comienza con la firma del contrato Asignacin de personal Se divide el trabajo atendiendo a subsistemas e interfaces Se preparan primeras versiones de manuales de usuario y cursos de formacin

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 96

Analista de Encontrar actores y casos Estructurar el modelo de casos de de uso uso sistemas

Planificar prueba Disear prueba Evaluar prueba

Ingeniero de pruebas

Especificador de casos de uso

Detallar un caso de uso

Integrar sistemas

Integrador de sistemas

Diseador de interfaces

Prototipar la interfaz de usuario Se

hace crecer el sistema

Realizar prueba de integracin

Ingeniero de pruebas de int.

Arquitecto

Anlisis de la arquitectura Diseo de la Implementacin de la arquitectura Priorizar los casos arquitectura de uso

Realizar prueba de sistema

Ingeniero de pruebas de sis.

Ingeniero de casos de uso

Analizar un caso de uso

Disear un caso de uso Implementar pruebas

Ingeniero de componentes

Disear una clase Analizar Alberto O. Sanjun,una clase Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software Analizar un paquete Disear un subsistema

Implementar un subsistema

Pgina Realizar prueba de 97 Implementar una clase unidad

Fase de construccin
Requisitos
Encontrar casos de uso y actores: pequea fraccin

Desarrollar prototipos de interfaces de usuario


Determinar prioridad de los casos de uso Detallar un caso de uso: todos Estructurar el modelo de casos de uso: slo para los casos de uso

no desarrollados

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 98

Fase de construccin
Anlisis
Puede no mantenerse

Anlisis de la arquitectura
Analizar un caso de uso Analizar una clase Analizar un paquete

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 99

Fase de construccin
Diseo
Diseo de la arquitectura: prcticamente no se modifica

Las otras tres tareas se realizan para el resto de los casos de uso

(cerca del 90%)

Disear un caso de uso Disear una clase Disear un subsistema

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 100

Fase de construccin
Implementacin
Implementacin de la arquitectura: se actualiza si es necesario

Implementacin de una clase y de un subsistema: se pueden

utilizar stubs Pruebas de unidad: podr requerir corregir el diseo y la implementacin del componente Integrar el sistema: por capas. Define perodo de las construcciones

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 101

Fase de construccin
Pruebas
Planificar las pruebas

Disear las pruebas


Realizar pruebas de integracin: despus de cada construccin Realizar pruebas de sistema: hacia el final de las iteraciones Evaluar las pruebas

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 102

Fase de construccin
Productos
El plan de proyecto para la fase de transicin

El sistema software ejecutable


Todos los artefactos La descripcin de la arquitectura actualizada Versin preliminar del manual de usuario

Anlisis del negocio actualizado

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 103

Fase de transicin
Objetivo: Entrega del producto final Tareas bsicas:
Preparar el lugar y actualizar el entorno
Preparar manuales Ajustar el software al entorno del usuario Corregir defectos de la versin beta Evaluar y registrar las lecciones aprendidas Registrar asuntos tiles para la versin siguiente

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 104

Fase de transicin
Se completa la versin del producto Se gestionan los aspectos relativos al entorno del cliente Se corrigen los defectos de la versin beta Se terminan los manuales de usuario y cursos de formacin La atencin se desplaza a la correccin de defectos

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 105

Fase de transicin
Preparar la versin beta Instalacin Adaptar el producto a las circunstancias del usuario Completar los artefactos del proyecto Determinar cundo se acaba el proyecto

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 106

Fase de transicin
Si ya exista un software :
Sustitucin del sistema antiguo por el nuevo

Transferencia de datos del sistema antiguo: migracin y

conversin de datos

Evaluacin
De las iteraciones y de la fase

Autopsia del proyecto

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 107

Fase de transicin
Productos
El sistema software ejecutable + software instalacin

Documentos legales, contratos, licencias, garantas


Versin completa y corregida del producto, incluyendo los modelos

del sistema La descripcin de la arquitectura completa y actualizada Manuales y material de formacin del usuario, del operador y del administrador Referencias para la ayuda del cliente, cmo informar de defectos

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 108

Organizacin del proyecto

109

Planificacin de las fases


Asignaciones de tiempo Hitos principales Iteraciones por fases Plan de proyecto En la fase de inicio
Ajustar el PUD al proyecto y seleccionar herramientas
Reunir a gente con conocimientos especficos Entender el dominio Familiarizar al equipo con las herramientas

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 110

Planificacin de las iteraciones


La iteracin se planifica ms en detalle cuando est prxima Para planificar tenemos en cuenta:
Los casos de uso Los riesgos tcnicos Cambios en los requisitos Los subsistemas de implementacin

El n de iteraciones depende del proyecto

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 111

Administracin de riesgos
Se crea una lista de riesgos
Descripcin

Prioridad (crtico, significativo, rutinario)


Impacto: partes del proyecto afectadas Monitor: responsable del seguimiento del riesgo Responsabilidad: responsable de eliminarlo

Contingencia: lo que hacer cuando ocurra

Aparecen nuevos riesgos

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 112

Evaluacin de las iteraciones


Se evala al final de cada iteracin
Reconsiderar plan de la siguiente iteracin Modificar el proceso, adaptar las herramientas

El jefe del proyecto:


Determina si el trabajo est listo para pasar a la siguiente

iteracin Planea en detalle la siguiente iteracin Actualiza el plan de las siguientes Actualiza la lista de riesgos Compara el coste y la planificacin de la iteracin

O. Sanjun, Alberto Caramazana UNIVERSIDAD PONTIFICIA DE SALAMANCA EN MADRID Departamento de Lenguajes y Sistemas Informticos e Ingeniera del Software

Pgina 113

Potrebbero piacerti anche