UN EJEMPLO: EL PROCESO UNIFICADO DE DESARROLLO (1ª parte)

Tamaño: px
Comenzar la demostración a partir de la página:

Download "UN EJEMPLO: EL PROCESO UNIFICADO DE DESARROLLO (1ª parte)"

Transcripción

1 UN EJEMPLO: EL PROCESO UNIFICADO DE DESARROLLO (1ª parte) The unified software development process, Ivar Jacobson, Grade Booch, James Rumbaug, Ed. Addison Wesley, 1999 El proceso unificado de desarrollo, Ivar Jacobson, Grade Booch, James Rumbaug, Ed. Addison Wesley, 1999 Ingeniería del Software 1

2 Un ejemplo: el Proceso Unificado Características del Proceso Unificado Flujos de trabajo fundamentales Iteración genérica Planificar Gestionar los riesgos Recursos Evaluar Ingeniería del Software 2

3 Un ejemplo: el Proceso Unificado Características del Proceso Unificado UML Basado en casos de uso Centrado en la arquitectura Iterativo-Incremental Modelos del proceso Flujos de trabajo fundamentales Iteración genérica Planificar Gestionar los riesgos Recursos Evaluar Ingeniería del Software 3

4 El Proceso Unificado (UP) Unificación de tres metodologías de desarrollo basadas en el paradigma orientado a objetos. OOSE: Object Oriented Software Engineering (Casos de Uso) Jacobson, I. Booch (Diseño) Booch, G. OMT: Object Modeling Technique (Análisis) Rumbaugh, J. Ingeniería del Software 4

5 El Proceso Unificado (UP) Es más que un proceso de desarrollo software un marco de trabajo que puede especializarse Basado en componentes conectados a través de interfaces Utiliza UML - Unified Modeling Language Dirigido por casos de uso Centrado en la arquitectura Iterativo e incremental Ingeniería del Software 5

6 UML UML es un lenguaje de modelado Permite la construcción de distintos modelos Diagramas de Clase, Diagramas de Casos de Uso, etc. Es autodescriptivo porque puede especificarse por medio de un diagrama de clases de UML. Bloques de construcción: Elementos: bloques básicos Relaciones: ligan los elementos Diagramas: agrupan colecciones de elementos ligados, aportando un significado adicional Ingeniería del Software 6

7 UML - Elementos y relaciones Elementos: Estructurales: Clases, Casos de Uso, Comportamiento: Interacción, Estados... Agrupación: Paquetes Anotación: Notas Relaciones: Dependencia (Relación de Uso) Asociación (Relación estructural) Generalización (Representación de la herencia.) Realización Ingeniería del Software 7

8 UML - Diagramas Ofrecen distintas perspectivas de una abstracción de la realidad Un mismo elemento puede aparecer en distintos diagramas En el modelo de un sistema no hay motivo para que aparezcan obligatoriamente todos los elementos. Estáticos(estructura) D. de Clases D. de Objetos D. de Componentes D. de Despliegue Dinámicos(comportamiento) Casos de Uso Secuencia Colaboración Estados Actividades Interacción Ingeniería del Software 8

9 Diagrama de clases Motor Piloto Vendedor de billetes Avión * 1 * Vuelo 1 * * Reserva { disjunta, completa } * Avión militar Avión comercial 1 Línea aérea { disjunta, completa } Avión de carga Avión de pasajeros Ingeniería del Software 9

10 Diagramas de Componentes Interfaz de Terminal Comment Control y Análisis Comment Gestión de Cuentas Comment Rutinas de Coneccion Comment Acceso a BD Comment Ingeniería del Software 10

11 Diagramas de Despliegue Servidor Central Acceso a BD Control y Análisis Comment Comment Rutinas de Coneccion Comment Terminal de Consulta Rutinas de Coneccion Comment Interfaz de Terminal Comment Punto de Venta Rutinas de Coneccion Comment Gestión de Cuentas Comment Interfaz de Terminal Comment Ingeniería del Software 11

12 Diagrama de casos de uso V enta Normal Cliente Venta en Rebajas Vendedor V enta en Oferta Ingeniería del Software 12

13 Diagrama de estados Esperando t arjeta tarjeta int ro ducida Leyendo tarjeta Esperando PIN Recogiendo tarjeta [ > 3 intentos ] PIN introducido( PIN ) Validando PIN [ correcto ] [ incorrec to ] Es perando opción Ingre sando ingreso( importe ) transferencia( cuenta, importe ) reintegro( importe ) Transferencia Reintegrando [ Not OK ] [ OK ] Expulsando dinero dinero retirado Expulsar Ingeniería del Software tarjeta 13

14 Diagrama de colaboración 5: cuenta dest ino 3: cantidad 1: transferencia 6: t rans ferencia (cuenta, cantidad) 11: OK : Cliente del banco : Interfaz de cajero : Transacción 2: teclee cant idad 4: teclee cuenta destino 12: transferencia realizada 8: OK 7: reintegro (cantidad) 9: ingreso (cantidad) 10: OK c uentaorigen : Cuenta c uentades tino : Cuenta Ingeniería del Software 14

15 Diagramas de Secuencia : Socio : Encargado : Libro : Ficha socio : Ficha libro : Préstamo Coger libro Solicitar préstam o Verificar situación socio Sit uación socio ok Verificar situación libro Situación libro ok Introducir préstamo Aut orizar prést amo Ingeniería del Software 15

16 Diagramas de actividad Pasajero Vendedor Airline Solicitar pasaje Verificar existencia vuelo Dar detalles vuelo Seleccionar vuelo Informar alternativas y precios Solicitar pago Reservar plazas Pagar pasaje Confirmar plaza reservada Emitir billete Ingeniería del Software 16

17 Dirigido por casos de uso Usuario: alguien o algo. Una interacción con el usuario es un caso de uso. Un caso de uso: Es una función del sistema que da al usuario un resultado útil. Captura los requisitos funcionales. Qué debe hacer el sistema para cada usuario? Modelo de casos de uso. Conducen el proceso de desarrollo: Modelos de diseño e implementación. Pruebas. Se desarrollan y evolucionan junto a la arquitectura del sistema. Ingeniería del Software 17

18 Centrado en la arquitectura Edificio: estructura, servicios, electricidad, fontanería,... Agrupa aspectos estructurales y dinámicos significativos Influencias: plataforma (BBDD, SO, protocolo de comunicación,...), aspectos legales, componentes reusables disponibles, requisitos no funcionales,... Es una vista del diseño completo que hace visibles las características principales. Cómo se relacionan casos de uso y arquitectura? Función y forma Ingeniería del Software 18

19 Centrado en la arquitectura Tareas: Crear una arquitectura inicial no específica de los casos de uso. Trabajar con un conjunto seleccionado de casos de uso que representan las tareas clave del sistema. Caso de uso - subsistemas, clases y componentes. Evolución. Ingeniería del Software 19

20 Iterativo - Incremental División del proyecto. Una iteración produce un incremento. Iteraciones controladas. Factores para la selección en una iteración: La iteración trata un grupo de casos que extienden la funcionalidad. La iteración trata los riesgos más importantes. Incremento no siempre es aditivo. Cada iteración: casos relevantes-diseño quiado por arquitecturaimplementar-verificar Beneficios. Ingeniería del Software 20

21 Iterativo - Incremental Varios ciclos que concluyen con un producto. Código fuente, manuales y documentos. Hitos por fases (Milestones) Ingeniería del Software 21

22 El proceso Papeles y actividades Analista de Sistemas Descubre Actores y Casos de Uso Estructura Modelo de Casos de Uso Planifica Test Diseña Test Evalua Test Ingeniero de pruebas Especifica Casos de Uso Detalla un Caso de Uso Integra Sistema Integrador de Sistemas Diseñador de Interface de Usuario Prototipo del Interfaz de Usuario Ejecuta Test de Integración Ingeniero de pruebas de integración Arquitecto Prioriza Casos de Uso Análisis de Arquitectura Diseño de Arquitectura Implementación de Arquitectura Ingeniero de Ejecuta test pruebas de del sistema sistema Ingeniero de Casos de Uso Analiza un Caso de Uso Diseña un Caso de Uso Ingeniero de Componentes Analiza una Clase Analiza un Paquete Diseña una clase Diseña un Subsistema Implementa Subsistema Implementa una clase Ejecuta Test Unitario Implementa Test Ingeniería del Software 22

23 El proceso El producto (salidas) # # $ %! #! # % #! & # & '(& " #! ) Ingeniería del Software 23

24 El proceso Fases, iteraciones y actividades, -. * $ * $++ " # # / / / 0 / 1 / 2 / 3 / 4 '$ ( Ingeniería del Software 24

25 El proceso Fases, iteraciones y actividades Una Fase es un intervalo de tiempo entre dos hitos importantes del proceso donde: Se cumple un conjunto definido de objetivos Se completan artefactos Se toman decisiones de continuar o no Iniciación, Elaboración, Construcción, Transición Dentro de cada fase hay varias iteraciones Una iteración representa un ciclo de desarrollo completo. El énfasis en cada flujo de trabajo es diferente dependiendo de la fase Ingeniería del Software 25

26 El proceso Fases, iteraciones y actividades Ingeniería del Software 26

27 Un ejemplo: el Proceso Unificado Características del Proceso Unificado Flujos de trabajo fundamentales Requisitos Análisis Diseño Implementación Pruebas Iteración genérica Planificar Gestionar los riesgos Recursos Evaluar Ingeniería del Software 27

28 Captura de requisitos La captura de requisitos es complicada Creamos código para otros Los usuarios no los conocen y les cuesta especificarlos de forma precisa Suelen ser varios usuarios sin una visión global Los requisitos cambian Las condiciones en las que se especifico un requisito varian Ingeniería del Software 28

29 Captura de requisitos Objetivo: guiar el desarrollo hacia el sistema correcto El cliente debe ser capaz de leer y comprender el resultado de la captura El resultado ayuda al jefe de proyecto a planificar las iteraciones y los recursos Usuarios muy diferentes Puntos de partida Diferentes Se deben reducir los riesgos Ingeniería del Software 29

30 Captura de requisitos Pasos a seguir Enumerar los requisitos candidatos Comprender el contexto del sistema Capturar requisitos funcionales Capturar requisitos no funcionales Se realizan de forma conjunta Ingeniería del Software 30

31 Captura de requisitos TAREA Enumerar requisitos candidatos Entender el contexto del sistema Capturar requisitos funcionales Capturar requisitos no funcionales PRODUCTOS (artifact) Lista de características Modelo de negocio o de dominio Modelo de casos de uso Requisitos suplementarios o casos individuales Ingeniería del Software 31

32 Artefactos de requisitos Modelo de casos de uso Actores Casos de uso Varios diagramas para diferentes perspectivas Descripción de la arquitectura Glosario Prototipo de la interfaz de usuario 1 Modelo de casos de uso Sistema de casos de uso * * Caso de uso Ingeniería del Software 32 $

33 Artefactos de requisitos Ingeniería del Software 33

34 Flujo de trabajo de la captura de requisitos funcionales (Actividades) Ingeniería del Software 34

35 Flujo de trabajo de la captura de requisitos funcionales (Actividades) Encontrar actores y casos de uso! " #$ Ingeniería del Software 35

36 Flujo de trabajo de la captura de requisitos funcionales (Actividades) Priorizar casos de uso! % Ingeniería del Software 36

37 Flujo de trabajo de la captura de requisitos funcionales (Actividades) Detallar un caso de uso! Ingeniería del Software 37

38 Flujo de trabajo de la captura de requisitos funcionales (Actividades) Prototipar la interfaz de usuario! Ingeniería del Software 38

39 Flujo de trabajo de la captura de requisitos funcionales (Actividades) Estructurar el modelo de casos de uso! Ingeniería del Software 39

40 Caso de uso Validar usuario Flujo de eventos ACCIÓN DEL ACTOR 1. Este caso de uso empieza cuando un Cliente introduce una tarjeta en el cajero 3. Introduce la clave RESPUESTA DEL SISTEMA 2. Pide la clave de identificación 4. Comprueba la clave 5. Si es válida presenta las opciones disponibles y se termina el caso de uso CAMINOS ALTERNATIVOS Línea 3. El cliente cancela la transacción Línea 4. La clave no es válida y se reinicia el caso de uso. Si ocurre tres veces se cancela la transacción y no se devuelve la tarjeta HAY QUE DEFINIR ESTOS DOS FLUJOS DE EVENTOS!! Ingeniería del Software 40

41 Caso de uso Sacar dinero Flujo de eventos ACCIÓN DEL ACTOR RESPUESTA DEL SISTEMA 1. Este caso de uso empieza cuando un Cliente ha sido identificado Presenta las opciones de operaciones disponible 2. Selecciona la operación de Reintegro 4. Introduce la cantidad requerida 6. Recoge la tarjeta. 7. Recoge el recibo 8. Recoge el dinero y termina el CU 3. Pide la cantidad a retirar. 5. Procesa la petición y da el dinero solicitado. Devuelve la tarjeta y genera un recibo Ingeniería del Software 41

42 Caso de uso Sacar dinero Flujo de eventos CAMINOS ALTERNATIVOS Línea 5: La cantidad solicitada supera el saldo. Se indica el error y se cancela la operación. Línea 5: La cantidad solicitada supera el límite diario. Se indica el error y se vuelve a pedir otra cantidad. Línea 5: En el cajero no hay dinero. HAY QUE DEFINIR ESTOS TRES FLUJOS DE EVENTOS!! Podríamos definir diagramas de estados Requisito no funcional asociado al caso de uso Sacar dinero: El tiempo de respuesta para un cliente debe ser <30 sg en el 90% de los casos Ingeniería del Software 42

43 Ejemplo. Cajero automático " :;; + ) 16 Ingeniería del Software 43

44 Análisis Se trabaja con conceptos Especificación más precisa de los requisitos Se utiliza el lenguaje de desarrolladores Facilita comprensión, preparación, modificación y mantenimiento de requisitos Primera aproximación al modelo de diseño Ingeniería del Software 44

45 Artefactos de análisis ( ( '! &' ' ' Ingeniería del Software 45

46 Artefacto: Modelo de Análisis * * ) ' ' * * * * '! &' Ingeniería del Software 46

47 Artefacto: Clases de Análisis Una clase de análisis representa una abstracción de una o mas clases del diseño del sistema Se centra en el tratamiento de los requisitos funcionales Son evidentes en el dominio del problema. Sus atributos, operaciones y relaciones están a un nivel mayor de abstracción. Pueden clasificarse fácilmente en clases de entidad, interfaz y de control. Ingeniería del Software 47

48 Artefacto: Clases de Análisis ' Ingeniería del Software 48

49 Artefacto: Realización de caso de usoanálisis Define como se lleva a cabo y se ejecuta un caso de uso en términos de clases del análisis y de sus objetos de análisis en colaboración. Una realización de caso de uso queda definida por: Diagramas de clases del análisis Diagramas de interacción de objetos del análisis Una descripción textual del flujo de sucesos Ingeniería del Software 49

50 Artefacto: Realización de caso de usoanálisis (Diag. De Clases) Ingeniería del Software 50

51 Artefacto: Realización de caso de usoanálisis (Diag. De Colaboración) Ingeniería del Software 51

52 Artefacto: Realización de caso de usoanálisis: (Desc. Textual) El comprador consulta a través del IU Solicitud de Pago las facturas gestionadas por el sistema para encontrar las recibidas (1,2). El IU Solicitud de Pago utiliza el Gestor de Pedidos para comprobar las facturas con sus correspondientes confirmaciones de pedido Ingeniería del Software 52

53 Artefacto: Paquete del análisis Proporcionan un medio para organizar los artefactos del modelo de análisis en piezas manejables. Son cohesivos y débilmente acoplados Basados en los requisitos funcionales y en el dominio del problema. Generan subsistemas del diseño * ' * ' *! & ' Ingeniería del Software 53

54 Artefacto: Descripción de la Arquitectura Contiene una Vista de la arquitectura del modelo de análisis Descomposición del modelo en paquetes Clases fundamentales: De entidad, importante en dominio De interfaz, comunicación importante De control, con amplia cobertura Generales, centrales y con muchas relaciones Realizaciones de casos de uso Ingeniería del Software 54

55 Flujo de trabajo del análisis 1. Análisis de la arquitectura Identificar paquetes de análisis Identificar clases de entidad Requisitos comunes 2. Analizar (refinar) un caso de uso Identificar clases de análisis Describir interacciones entre los objetos del análisis Capturar req. especiales sobre la realización del CU 3. Analizar una clase Identificar responsabilidades y atributos Identificar relaciones: asoc., agreg. y gener. Capturar req. especiales sobre la realización del CU 4. Analizar un paquete Ingeniería del Software 55

56 Actividades ' ( ( Ingeniería del Software 56

57 Actividades: Análisis de la Arquitectura '! ' ' % % ' Ingeniería del Software 57

58 Actividades: Analizar un caso de uso! (! & ' % ' ' Ingeniería del Software 58

59 Actividades: Analizar una clase! & ' ( ' ' Ingeniería del Software 59

60 Actividades: Analizar un paquete % ' ( ' ' Ingeniería del Software 60

61 Análisis del caso de uso: Validar usuario Validar usuario Realización en análisis Interfaz de caj ero UsuariosDelB anc o (from Logical View) A utenticar (from L ogi cal Vie w) Ingeniería del Software 61

62 Análisis del caso de uso: Validar usuario Secuencia correcta 3: código 1: introducir tarjeta 4: autentica (datos, código) : Cliente del banco 7: visualiza (opciones) 2: teclear código: Interfaz de cajero : Autenticar 5: valida (datos, codigo) 8: seleccioneopcion (opciones) 6: OK : UsuariosDelBanco Ingeniería del Software 62

63 Análisis del caso de uso: Validar usuario. Código incorrecto 3: código 1: introducir tarjeta 4: autentica (datos, código) : Cliente del banco 2: teclear código 8: teclear código 7: visualiza (error) : Interfaz de cajero : Autenticar 5: valida (datos, codigo) 6: Error : UsuariosDelBanco Ingeniería del Software 63

64 Análisis del caso de uso: Transferencia - Suponemos que el usuario ya ha sido identificado (se ha ejecutado el caso de uso anterior). - Ahora selecciona la opción transferencia. Consideramos que la cuenta origen es la de la tarjeta y hay que teclear la destino. - El importe y el número de cuenta destino deben darse juntos. Evitar condiciones de carrera: mirar primero si hay saldo y luego sacar. Transferencia Realización en análisis Interfaz de cajero Transacción Cuenta Ingeniería del Software 64

65 Análisis del caso de uso: Transferencia Secuencia correcta 5: cuenta destino 3: cantidad 1: transferencia 6: transferencia (cuenta, cantidad) 11: OK : Cliente del banco : Interfaz de cajero : Transacción 2: teclee cantidad 4: teclee cuenta destino 8: OK 7: reintegro (cantidad) 9: ingreso (cantidad) 12: transferencia realizada 10: OK cuentaorigen : Cuenta cuentadestino : Cuenta Ingeniería del Software 65

66 Análisis del caso de uso: Transferencia No hay saldo en la cuenta origen 5: cuenta destino 3: cantidad 1: transferencia 6: transferencia (cuenta, cantidad) 9: no hay fondos : Cliente del banco : Interfaz de cajero : Transacción 2: teclee cantidad 7: reintegro (cantidad) 4: teclee cuenta destino 8: no hay saldo 10: no hay fondos cuentaorigen : Cuenta Ingeniería del Software 66

67 Análisis del caso de uso: Transferencia No se puede acceder a la cuenta destino 5: cuenta destino 11: rollback 3: cantidad 1: transferencia 6: transferencia (cuenta, cantidad) 12: error : Cliente del banco : Interfaz de cajero : Transacción 2: teclee cantidad 4: teclee cuenta destino 8: OK 7: reintegro (cantidad) 9: ingreso (cantidad) 10: error 13: error cuentaorigen : Cuenta cuentadestino : Cuenta Ingeniería del Software 67

68 Modelo de clases de análisis Cliente del banco Interfaz de cajero Transacción Cuenta Autenticar UsuariosDelBanco Ingeniería del Software 68

69 Análisis de las clases CLASE CUENTA. Interviene en tres casos de uso: - sacar dinero reintegro (importe) - ingresar dinero ingreso (importe) - transferencia las dos operaciones anteriores atributos - - > saldo Ingeniería del Software 69

70 Análisis de las clases CLASE TRANSACCIÓN Interviene en cuatro casos de uso: - validar usuario autentica (datos, código) atributos - - > código cuenta - sacar dinero retirardinero (importe) - ingresar dinero ingresardinero (importe) - transferencia transferencia (cuenta, cantidad) rollback Ingeniería del Software 70

71 Diseño Se modela el sistema para que de soporte a los requisitos funcionales y no funcionales. Su entrada esencial es el modelo de análisis (una comprensión detallada de los requisitos) Propósitos: Profundizar en la requisitos no funcionales y restricciones dependientes de la plataforma. Crear una entrada apropiada para la implementación Descomponer los trabajos de implementación en partes mas manejables y que permitan concurrencia. Capturar las interfaces entre los subsistemas. Es el centro de atención final de la fase de elaboración e iteraciones iniciales de la fase de construcción Ingeniería del Software 71

72 Artefactos de diseño ( (! & ( ) Ingeniería del Software 72

73 Artefactos de diseño: modelo de diseño Modelo de objetos UML que contiene el diseño de la aplicación. Describe la realización física de los casos de uso: como afectan los requisitos funcionales, no funcionales y otras restricciones. * * ) ) * * * *! & * * ( Ingeniería del Software 73

74 Artefactos de diseño: Clase de diseño Sintaxis del lenguaje de programación Visibilidad de atributos y operaciones (public, private, protected) Traducción de las relaciones Métodos por pseudocódigo Estereotipos que se correspondan con construcciones del lenguaje de programación. Pueden realizar interfaces + ( Ingeniería del Software 74

75 Artefactos de diseño: Realización de un caso de uso-diseño Es una colaboración en el modelo de diseño que describe como se realiza un caso de uso en termino de clases y objetos de diseño Contenido: Diagramas de clases de realización Diagramas de interacción (clases, subsistemas, interfaces) Flujo de sucesos-diseño Requisitos de implementación, -! & '! & Ingeniería del Software 75

76 Artefactos de diseño: Subsistema de Diseño Para organizar los artefactos del diseño en piezas mas manejables. Debe ser cohesivo y débilmente acoplado * ) + * * * * (! Ingeniería del Software & 76

77 Artefactos de diseño: Interfaz Se utilizan para especificar las operaciones que proporcionan las clases y subsistemas de diseño Separan la especificación de funcionalidad en término de operaciones de sus implementaciones en términos de métodos + * + * ( ) Ingeniería del Software 77

78 Artefactos de diseño: Descripción de la Arquitectura Descomposición en subsistemas Traza con clases de análisis Clases fundamentales (abstractas) Clases generales y centrales Realizaciones de caso de uso Ingeniería del Software 78

79 Artefactos de diseño: Modelo de Despliegue Representa una correspondencia entre la arquitectura del Hardware y la arquitectura del Software Describe la distribución física del sistema en nodos de computo. Cada nodo representa un recurso de computo Las relaciones entre nodos representan medios de comunicación entre ellos. La funcionalidad de un nodo se determina por los componentes que se le asignan *. Ingeniería del Software 79

80 Diseño: Actividades ( ( Ingeniería del Software 80

81 Diseño: Actividades 1. Diseño de la arquitectura Identificar nodos y configuración, subsistemas, clases 2. Diseñar un caso de uso Identificar clases de diseño y subsistemas Distribuir comportamiento del CU Capturar requisitos de implementación 3. Diseñar una clase 4. Diseñar un subsistema Ingeniería del Software 81

82 Actividades: Diseño de la Arquitectura ) (! ' % ' % Ingeniería del Software 82

83 Actividades: Diseño de un caso de uso! ' (! & ) ( Ingeniería del Software 83

84 Actividades: Diseño de una clase! & ( ( ' Ingeniería del Software 84

85 Actividades: Diseño de un Subsistema % ( ) ) ( ( Ingeniería del Software 85

86 Diseño del caso de uso: Validar usuario Validar usuario Realizac ión en diseño (from Use Case View) Lec tordetarjetas Pantalla GestorDeCliente Us uariosdelb anco Teclado Transacc ión Ingeniería del Software 86

87 Diseño del caso de uso: Validar usuario Secuencia correcta : Cliente del banco : Lect ordetarjetas : Pantalla : Teclado : GestorDeCliente : Transacción : UsuariosDelBanco 1: leertarjeta 2: introducirtarjeta (tarjet a) 3: datostarjeta (tarjeta) 4: vis ualizar (Introducir PIN) 5: OK 7: introducirpin (PIN) 6: leerpin 8: datospin (PIN) 9: autent ic a (datos, PIN) 10: valida (datos, PIN) 11: OK 12: almacenadatos (datos) 14: visualizar (opciones) 13: visualiza (opciones) Ingeniería del Software 87

88 Diseño del caso de uso: Validar usuario Código incorrecto : Cliente del banco : Lect ordetarjetas : Pantalla : Teclado : GestorDeCliente : Transacción : UsuariosDelBanco 1: leertarjeta 2: introducirtarjeta (tarjet a) 3: datostarjeta (tarjeta) 4: vis ualizar (Introducir PIN) 5: OK 7: introducirpin (PIN) 6: leerpin 8: datospin (PIN) 9: autent ic a (datos, PIN) 10: valida (datos, PIN) 11: E rror 13: visualizar (error PIN) 12: visualiza (error PIN) Hay más escenarios: anular transacción y tres intentos Ingeniería del Software 88

89 Diseño del caso de uso: Transferencia - Suponemos que el usuario ya ha sido identificado (se ha ejecutado el caso de uso anterior). Ahora selecciona la opción transferencia. Transferenc ia (from Use Case View) Realización en diseño, trans ferenc ia Teclado 2 Pantalla GestorDeCliente Trans ac ción Cu entas Cu enta Ingeniería del Software 89

90 Diseño del caso de uso: Transferencia Secuencia correcta : Cliente del banco : Teclado : Pantalla : GestorDeCliente : Transacción : Cuentas : Cuenta 1: opcion (transferencia) 2: transferencia 3: visualizar (Teclee im porte) 4: IntroducirImporte 5: importe 6: visualizar (Teclee cuenta destino) 7: cuentades tino (cuenta) 8: cuentadestino (cuenta) 9: transferencia (cuentaorigen, cuentadestino,importe) 10: reintegro (cuentaorigen, importe) 11: reintegro (importe) 12: OK 13: OK 14: ingreso (cuentadestino, importe) 15: ingreso (im porte) 17: OK 16: OK 18: OK 19: vis ualizar (Transferencia realizada) 20: visualizar (Retire su tarjeta) Ingeniería del Software 90

91 Diseño del caso de uso: Transferencia No hay saldo en la cuenta origen : Cliente del banco : Teclado : Pantalla : GestorDeCliente : Transacción : Cuentas : Cuen ta 1: opcion (transferencia) 2: transferencia 3: visualizar (Teclee im port e) 4: IntroducirImporte 5: importe 6: visualizar (Te clee cuent a destino) 7: cuentades tino (cuenta) 8: cuentadestino (cuenta) 9: t ransferencia (cuentao rigen, cuen tadestin o,impo rt e) 10: reintegro (cuentaorigen, importe) 11: reintegro (importe) 12: no hay saldo 13: no hay saldo 14: no hay fondos 15: visualiz ar ((No hay fondos)) 16: visualizar (Retire su tarjeta) Ingeniería del Software 91

92 Modelo de clases de diseño CajonDinero UsuariosDelBanco Impresora Cliente del banco LectorDeTarjetas GestorDeCliente Transacción Pantalla Cuentas Teclado DarDinero Cuenta Ingeniería del Software 92

93 Diseño de las clases Pantalla Lec tordetarjetas vis ualizar(m ensaje : St ring) c rearpantalla() : Pantalla crearlec tor() : Lect ordetarjetas leertarjeta() : dato s Tarj eta Teclado creartec lado() : Tec lado leerpin() : unpin leeropc ion() : unaopcion leercantidad() : Dinero leernum Cuenta() : unidcuenta Im presora Gesto rdecli ente crear() : GestorDeCliente c reacajerovi rtual() inici ars esion() crearimpresora() : Im pres ora imprimir(mensaje : String) CajonDinero DarDinero crearcajon() : CajonDi nero abrircajon() crear() : DarDinero cerra rcajon() expulsar(im porte : Dinero) contarcantidad() : Dinero Ingeniería del Software 93

94 Diseño de las clases micliente : GestorDeCliente datostarjeta : DatosTarjeta numintentosfallidos : 1..3 = 0 cuentas : Cuentas usuarios : UsuariosDelBanco Transacción almacenardatos(datos : DatosTarjeta) validar(importe : Dinero, cantidad : Dinero) autenticar(datos : DatosTarjeta, PIN : UnPIN) : Boolean retirardinero(importe : Dinero) : Boolean ingresardinero(importe : Dinero) : Boolean trasnsferencia(cuentaorigen : Cuenta, cuentadestino : Cuenta, importe : Dinero) : Boolean GestorDeCliente mitransaccion : Transacción crear() : GestorDeCliente creacajerovirtual() iniciarsesion() visualizar(resultados : String) cuentas : Dictionary Cuentas UsuariosDelBanco usuarios : Dictionary reintegro(cuenta : Cuenta, importe : Dinero) : Boolean ingreso(cuenta : Cuenta, importe : Dinero) : Boolean validar(datos : DatosTarjeta, PIN : UnPIN) : Boolean Cuenta datos : DatosCuenta limitediario : Dinero = reintegro(importe : Dinero) : Boolean ingreso(importe : Dinero) : Boolean Ingeniería del Software 94

95 Clase GestorDeCliente Esperando t arjeta tarjeta int ro ducida Leyendo tarjeta Esperando PIN Recogiendo tarjeta [ > 3 intentos ] PIN introducido( PIN ) Validando PIN [ correcto ] [ incorrec to ] Es perando opción Ingre sando ingreso( importe ) transferencia( cuenta, importe ) reintegro( importe ) Transferencia Reintegrando [ Not OK ] [ OK ] Expulsando dinero dinero retirado Expulsar Ingeniería del Software tarjeta 95

96 Implementación Se implementa el sistema en términos de componentes: ficheros de código fuente, scripts, ficheros de código binarios, ejecutables y similares. Objetivos: planificar las integraciones de sistema necesarias en cada iteración distribuir el sistema asignando componentes ejecutables a nodos en el diagrama de despliegue implementar las clases y subsistemas encontrados durante el diseño probar los componentes individualmente, integrarlos (compilandolos y enlazandolos en uno o más ejecutables) Ingeniería del Software 96

97 Artefactos de implementación ( ( ( $ ( $ ( Ingeniería del Software 97

98 Artefactos de implementación: Modelo de Implementación Cómo los elementos del modelo de diseño (clases) se implementan en términos de componentes (ficheros de código fuente, ejecutables...) Cómo se organizan los componentes (de acuerdo con los mecanismos de estructuración y modularización del entorno de implementación y los lenguajes de programación utilizados) Cómo dependen los componentes unos de otros Ingeniería del Software 98

99 Artefactos de implementación: Modelo de Implementación * * ) $ ) $ * * * * ( Ingeniería del Software 99

100 Artefactos de implementación: Componente Empaquetamiento físico de los elementos de un modelo cada uno puede implementar varios elementos dependiendo del lenguaje que se utilice. Proporcionan las mismas interfaces que los elementos que implementan. Tienen: relaciones de traza con los elementos del diseño que implementan. dependencias de compilación entre ellos (unos deben haberse compilado antes para poder compilar otros). Ingeniería del Software 100

101 Artefactos de implementación: Componente <<executable>> programa que puede ser ejecutado en un nodo <<file>> fichero que contiene código fuente o datos <<library>> librería estática o dinámica <<table>> una tabla de base de datos <<document>> un documento, - ( ( Ingeniería del Software 101

102 Artefactos de implementación: Subsistema de Implementación Forma de organizar los artefactos del modelo de implementación en trozos más manejables. Un subsistema puede estar formado por: componentes interfaces otros subsistemas (recursivamente) Se manifiestan a través de un mecanismo de empaquetamiento concreto de un entorno de implementación determinado. Paquete en Java Proyecto en VB Etc. * * * ) $ * * ( + Ingeniería del Software 102

103 Artefactos de implementación: Interfaz Un componente que implementa una interfaz debe implementar correctamente todas las operaciones del interfaz. Un subsistema que implementa una interfaz debe contener componentes que proporcionen la interfaz u otros subsistemas que la proporcionen. + * * ( + ) $ Ingeniería del Software 103

104 Artefactos de implementación: Descripción de la arquitectura La descomposición del modelo de implementación en subsistemas, sus interfaces y las dependencias entre ellos (cómo vienen dados por los equivalentes del modelo de diseño suele ser innecesario representarlos) Componentes clave (los que tienen traza a clases de diseño significativas arquitectónicamente, y los ejecutables) Ingeniería del Software 104

105 Artefactos de implementación: Plan de Integración de las Construcciones Describe la secuencia de construcciones necesarias en una iteración. Para cada construcción debe describir: funcionalidad que se espera que sea implementada en esa construcción (lista de casos de uso o escenarios o parte de ellos, también puede incluir requisitos adicionales) partes del modelo de implementación afectadas por la construcción (lista de los subsistemas y componentes necesarios para implementar esa funcionalidad) Ingeniería del Software 105

106 Implementación: Actividades ( ( ( ( ( (! Ingeniería del Software 106

107 Actividades: Implementación de la Arquitectura ' % ( % $ Ingeniería del Software 107

108 Actividades: Integrar el Sistema! ( $ ( $ Ingeniería del Software 108

109 Actividades: Implementar un Subsistema % ( ( ) $ ) ( ( Ingeniería del Software 109

110 Actividades: Implementar una Clase ( ( ( Ingeniería del Software 110

111 Actividades: Realizar una Prueba de Unidad ( (! Ingeniería del Software 111

112 Prueba Verificamos el resultado de la implementación probando cada construcción Objetivos de la prueba Planificar las pruebas necesarias para cada iteración (pruebas de sistema y pruebas de integración) Diseñar e implementar las pruebas diseñando los casos de prueba Realizar las diferentes pruebas. Ingeniería del Software 112

113 Artefactos de pruebas Modelo de pruebas Casos de prueba Procedimientos de prueba Componentes de prueba Plan de prueba Defectos Evaluación de la prueba Sistema de pruebas X Componente Caso de prueba Procedimiento de prueba Ingeniería del Software de prueba 113 * X

114 Flujo de trabajo de pruebas 1. Planificar prueba 2. Diseñar prueba Describir casos de prueba de cada construcción Identificar y estructurar los procedimientos de prueba 3. Implementar prueba 4. Realizar pruebas de integración 5. Realizar prueba de sistema 6. Evaluar prueba Ingeniería del Software 114

115 Resumiendo... <<trace>> <<trace>> Caso de uso Realización en análisis Realización en diseño Ingeniería del Software 115

116 Resumiendo... <<trace>> Realización en diseño Realización en implementación <<desing subsystem>> <<trace>> (1:1) <<implem. subsystem>> <<file>> <<file>> Ingeniería del Software 116

117 Un ejemplo: el Proceso Unificado Características del Proceso Unificado Flujos de trabajo fundamentales Iteración genérica División del trabajo en fases Planificar Gestionar los riesgos Recursos Evaluar Ingeniería del Software 117

118 Iteración genérica Incluye: Planificación Flujos de trabajo fundamentales Requisitos Análisis Diseño Implementación Pruebas Evaluación El contenido varía para adaptarse al objetivo de cada fase. Ingeniería del Software 118

119 División del trabajo en fases Fase de inicio: establecer viabilidad Objetivo: Análisis del negocio: casos de uso fundamentales para el negocio Actividades: 1. Delimitar el ámbito (interfaces con otros sistemas) 2. Proponer una arquitectura especialmente en lo nuevo, arriesgado o difícil (expresada en función de algunos modelos) 3. Identificar riesgos críticos (los que afecten a la viabilidad) 4. Demostrar a usuarios y clientes un prototipo (exploratorio) Ingeniería del Software 119

120 División del trabajo en fases Fase de elaboración: factibilidad Objetivo Arquitectura estable para guiar el sistema Estimación de de costes para fases sisguientes con precisión Actividades: 1. Línea base de la arquitectura. Consiste en: modelos, descripción de la arquitectura e implementación ejecutable de la arquitectura. 2. Identificación de riesgos que pueden perturbar los planes y costes posteriores. 3. Especificar niveles para los atributos de calidad: fiabilidad y tiempo de respuesta. 4. Recopilar casos de uso para el 80% de los requisitos funcionales para planificar la fase de construcción. 5. Planificación: personal, coste. Ingeniería del Software 120

121 División del trabajo en fases Fase de construcción Objetivo Versión beta Actividades: 1. Terminar la identificación, descripción y realización de todos los casos de uso. 2. Finalizar el análisis, el diseño la implementación y pruebas. 3. Mantener la integridad de la arquitectura. 4. Monitorizar los riesgos críticos. Ingeniería del Software 121

122 División del trabajo en fases Fase de transición: en el entorno del usuario Objetivo Producto final Actividades: 1. Preparar las actividades, por ejemplo, el lugar. 2. Aconsejar sobre el entorno de funcionamiento. 3. Manuales y documentos para la entrega. 4. Ajustar el software al entorno del usuario. 5. Corregir los defectos detectados en la versión beta. Lecciones aprendidas Asuntos útiles para la versión siguiente Ingeniería del Software 122

123 Un ejemplo: el Proceso Unificado Características del Proceso Unificado Flujos de trabajo fundamentales Iteración genérica Planificar Las fases Las iteraciones Los criterios de evaluación Gestionar los riesgos Recursos Evaluar Ingeniería del Software 123

124 Planificar Varias iteraciones en cuatro fases Información sobre el sistema propuesto Planificar Plan de proyecto Información del dominio Plan de iteración Experiencia pasada Ingeniería del Software 124

125 Planificar las fases Establecer: Asignaciones de tiempo y fecha de entrega por cada fase (inestable hasta fin de elaboración) Hitos principales y criterios de aceptación Iteraciones por fase y qué se realiza en ellas. Depende de la complejidad del sistema. Plan de proyecto: fechas y criterios de objetivos principales y división de fases en iteraciones Pensar a largo plazo Ingeniería del Software 125

126 Planificar las iteraciones Definimos: Planificación de la Iteración: cuanto tiempo, fecha de terminación. Contenido de la Iteración: Contenido. Ya está esbozado en el plan del proyecto pero al comenzar cada iteración se debe detallar: Casos de uso Riesgos técnicos que se deben identificar en forma de casos de uso Cambios que han sufrido los requisitos o defectos encontrados Subsistemas que se deben implementar Personal El plan de la iteración siguiente se va detallando. El número de iteraciones de cada fase esta determinado por la complejidad del sistema. Ingeniería del Software 126

127 Planificar las iteraciones La 1ª iteración suele ser más difícil Ajustar el PU al proyecto y seleccionar herramientas Seleccionar personal y crear equipo. Familiarizarlo con el proyecto y las herramientas Entender el dominio Lista de riesgos Ingeniería del Software 127

128 Planificar los criterios de evaluación Criterios para establecer la satisfacción de los objetivos de cada iteración (medidos u observados): Requisitos funcionales en casos de uso Requisitos no funcionales de esos requisitos funcionales Requisitos no funcionales sueltos Requisitos verificables (pruebas) Requisitos generales (prototipo) Productos intermedios para determinar el progreso del trabajo Ingeniería del Software 128

129 Un ejemplo: el Proceso Unificado Características del Proceso Unificado Flujos de trabajo fundamentales Iteración genérica Planificar Gestionar los riesgos Priorizar los casos de uso Categorías de riesgos Recursos Evaluar Ingeniería del Software 129

130 Riesgos Lista de riesgos: BD Identificador Descripción Prioridad (crítico, significativo, rutinario) Impacto: qué parte del proyecto se ve afectada Monitor: responsable del seguimiento Responsabilidad: reponsable de eliminarlo Contingencia: qué hacer si se materializa Jefe de proyecto celebra reuniones periódicas para revisar el estado de los riesgos Ingeniería del Software 130

131 Riesgos Influencia en el plan de iteraciones Desarrollar prototipo para conocer riesgo Incrementar el esfuerzo Prolongar la planificación Calidad o rendimiento Planificar acciones sobre los riesgos En cada fase o iteración se eliminan o se prepara plan de contingencia No planificarlos: modificaciones, retrasos A veces no se descubren Ingeniería del Software 131

132 Priorizar los casos de uso Los casos de uso (escenarios) guían las iteraciones Se ordenan según el riesgo que conllevan Evitar: cambiar la arquitectura no satisfacer los requisitos (producto no correcto) Los riesgos se transforman en casos de uso que se priorizan Ej: Riesgo: Dar dinero sin haber saldo Caso de uso: habrá un escenario en que se solicite una cantidad mayor que el saldo. Ingeniería del Software 132

133 Priorizar los casos de uso Primeras iteraciones Riesgos relacionados con el ámbito del sistema y arquitectura Últimas iteraciones Añadir más funciones Categorías de riesgos: Específicos Arquitectónicos De requisitos Ingeniería del Software 133

134 Categorías de riesgos Específicos de un producto Técnicos Implementar un caso de uso mitiga el riesgo Deben tratarse uno a uno (no está en el PU) De requisitos Puede crecer Estamos desarrollando el producto correcto? Qué casos de uso aseguran que el sistema puede evolucionar? Solución: requisitos, modelo de negocio» uso real en prototipos Ingeniería del Software 134

135 Categorías de riesgos Arquitectónicos No establecer una arquitectura flexible Fases de inicio y elaboración Cómo determinar casos de uso importantes para la arquitectura correcta? Casos de uso críticos (los más importantes para los usuarios del sistema y los que tienen requisitos no funcionales como rendimiento, tiempo de respuesta,...) Otras categorías de casos de uso: secundarios, auxiliares, opcionales 80% de casos de uso descritos en elaboración para hacer la planificación detallada y estar seguros de haber considerado lo importante para la arquitectura Ingeniería del Software 135

136 Un ejemplo: el Proceso Unificado Características del Proceso Unificado Flujos de trabajo fundamentales Iteración genérica Planificar Gestionar los riesgos Recursos Evaluar Ingeniería del Software 136

137 Recursos Cuánto cuestan las fases de inicio y elaboración? Quién las costea? Cuánto duran? Depende del proyecto Considerar: Hay experiencia? Cómo es la base de componentes? Es una nueva entrega? Es distribuido?... Ingeniería del Software 137

138 Recursos Tiempo: Inicio 5%, elaboración 20%, construcción 65%, transición 10% Recursos Inicio 10%, elaboración 30%, construcción 50%, transición 10% Más incógnitas, más tiempo y recursos en inicio y elaboración. Ingeniería del Software 138

139 Un ejemplo: el Proceso Unificado Características del Proceso Unificado Flujos de trabajo fundamentales Iteración genérica Planificar Gestionar los riesgos Recursos Evaluar Las fases Las iteraciones Ingeniería del Software 139

140 Evaluar iteraciones y fases Jefe de proyecto (documento) Objetivos: evaluar iteraciones según criterios: presupuesto, tiempo, requisitos de calidad, resultados de las pruebas reconsiderar el plan de la siguiente iteración modificar el proceso evaluar y modificar criterios Es frecuente no alcanzar los criterios. Prolongar el trabajo a la iteración siguiente: Modificar o extender el modelo de casos de uso Modificar o extender la arquitectura Modificar o extender los subsistemas desarrollados Buscar otros riesgos Incorporar ciertas habilidades al equipo Puede que solo falte tiempo Ingeniería del Software 140

141 La siguiente iteración A partir de la evaluación anterior, el jefe de proyecto: Determina si se puede pasar a la siguiente iteración Si hay que rehacer, cuándo Planificar en detalle siguiente iteración Actualizar el plan de las iteraciones posteriores a la siguiente Actualizar riesgos y plan del proyecto Evolución del conjunto de modelos Ingeniería del Software 141

Ejercicio Guiado de Análisis y Diseño Orientado a Objetos. Ejemplo: CAJERO AUTOMÁTICO

Ejercicio Guiado de Análisis y Diseño Orientado a Objetos. Ejemplo: CAJERO AUTOMÁTICO Ejercicio Guiado de Análisis y Diseño Orientado a Objetos Ejemplo: CAJERO AUTOMÁTICO El siguiente ejercicio muestra las diferentes actividades que se realizan dentro del desarrollo de un producto software

Más detalles

El Proceso Unificado de Desarrollo de Software

El Proceso Unificado de Desarrollo de Software El Proceso de Desarrollo de Software Ciclos de vida Métodos de desarrollo de software El Proceso Unificado de Desarrollo de Software 1 Fases principales del desarrollo de software Captura de requisitos:

Más detalles

PROCESO UNIFICADO CAPTURA DE REQUISITOS

PROCESO UNIFICADO CAPTURA DE REQUISITOS PROCESO UNIFICADO CAPTURA DE REQUISITOS El proceso unificado de desarrollo, Ivar Jacobson, Grady Booch, James Rumbaugh, Ed. Addison Wesley, 1999 The unified software development process, Ivar Jacobson,

Más detalles

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: 1. Proporcionar una guía de actividades para el trabajo en equipo. (Guía detallada para el desarrollo

Más detalles

Solución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Gobierno Municipal del Cantón Bolívar

Solución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Gobierno Municipal del Cantón Bolívar Gobierno Municipal del Cantón Bolívar Versión: Solución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Plan de Desarrollo de Software Universidad

Más detalles

El proceso unificado en pocas palabras

El proceso unificado en pocas palabras El Proceso Unificado de Desarrollo de Software Ivar Jacobson Grady Booch James Rumbaugh Addison Wesley Resumen Capítulo 1. El proceso unificado: dirigido por casos de uso, centrado en la arquitectura,

Más detalles

OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen Keywords Historia del Surgimiento

OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen Keywords Historia del Surgimiento OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen A través de este artículo se ofrece un panorama amplio y de alto nivel sobre la especificación y los diferentes diagramas del Lenguaje

Más detalles

ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN

ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN Clase 6: Ingeniería de Requerimientos Metododología y Ejemplo Primer Cuatrimestre 2015 Mg. María Mercedes Vitturini

Más detalles

Gestión y Desarrollo de Requisitos en Proyectos Software

Gestión y Desarrollo de Requisitos en Proyectos Software Gestión y Desarrollo de Requisitos en Proyectos Software Ponente: María Jesús Anciano Martín Objetivo Objetivo Definir un conjunto articulado y bien balanceado de métodos para el flujo de trabajo de Ingeniería

Más detalles

Plan de estudios ISTQB: Nivel Fundamentos

Plan de estudios ISTQB: Nivel Fundamentos Plan de estudios ISTQB: Nivel Fundamentos Temario 1. INTRODUCCIÓN 2. FUNDAMENTOS DE PRUEBAS 3. PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL 4. TÉCNICAS ESTÁTICAS 5. TÉCNICAS DE DISEÑO DE PRUEBAS 6. GESTIÓN DE

Más detalles

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,

Más detalles

COPPEL MANUAL TÉCNICO MCC DE SISTEMAS PROGRAMACIÓN DESCRIPCIÓN DEL PROCESO DE ARQUITECTURA DE SOFTWARE

COPPEL MANUAL TÉCNICO MCC DE SISTEMAS PROGRAMACIÓN DESCRIPCIÓN DEL PROCESO DE ARQUITECTURA DE SOFTWARE COPPEL MANUAL TÉCNICO MCC DE SISTEMAS PROGRAMACIÓN DESCRIPCIÓN DEL PROCESO DE ARQUITECTURA DE SOFTWARE Creado en May/14 Objetivo: Contar con una guía de las actividades que se deben realizar en esta fase,

Más detalles

Sistemas de Información II. Introducción al Proceso Unificado de Desarrollo de Software. Autor: Ing. Silverio Bonilla 1

Sistemas de Información II. Introducción al Proceso Unificado de Desarrollo de Software. Autor: Ing. Silverio Bonilla 1 Introducción al Proceso Unificado de Desarrollo de Software Autor: Ing. Silverio Bonilla 1 James Rumbaugh et al. Concepto de Método Una metodología de ingeniería del software es un proceso para producir

Más detalles

6 Anexos: 6.1 Definición de Rup:

6 Anexos: 6.1 Definición de Rup: 6 Anexos: 6.1 Definición de Rup: Es un producto del proceso de ingeniería de software que proporciona un enfoque disciplinado para asignar tareas y responsabilidades dentro de una organización del desarrollo.

Más detalles

Objetivo Las personas que realicen el curso aprenderán a:

Objetivo Las personas que realicen el curso aprenderán a: Objetivo Las personas que realicen el curso aprenderán a: Describir el proceso de desarrollo de software orientado a objetos, lo que incluye las metodologías y los flujos de trabajo de la programación

Más detalles

Ingeniería de Software: Parte 2

Ingeniería de Software: Parte 2 Ingeniería de Software: Parte 2 Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes.

Más detalles

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1.1 Introducción Este método proporciona un soporte para el diseño creativo de productos de software, inclusive a escala industrial.

Más detalles

Primer avance de proyecto de software para la gestión de inscripciones en cursos

Primer avance de proyecto de software para la gestión de inscripciones en cursos Primer avance de proyecto de software para la gestión de inscripciones en cursos 1. Introducción Andrés Felipe Bustamante García, Carolina Sarmiento González En este documento se presentan los resultados

Más detalles

Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL

Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL DNI Apellidos y nombre 1. Cuál de las siguientes afirmaciones no es una causa de los problemas del software?

Más detalles

Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática

Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática Metodología Evolutiva Incremental Mediante Prototipo y Técnicas Orientada a Objeto (MEI/P-OO)

Más detalles

Metodología básica de gestión de proyectos. Octubre de 2003

Metodología básica de gestión de proyectos. Octubre de 2003 Metodología básica de gestión de proyectos Octubre de 2003 Dentro de la metodología utilizada en la gestión de proyectos el desarrollo de éstos se estructura en tres fases diferenciadas: Fase de Éjecución

Más detalles

El Proceso Unificado Rational para el Desarrollo de Software.

El Proceso Unificado Rational para el Desarrollo de Software. Instituto de Electrónica y Computación El Proceso Unificado Rational para el Desarrollo de Software. Carlos Alberto Fernández y Fernández Huajuapan de León, Oaxaca 26 de octubre de 2000 Objetivo Proporcionar

Más detalles

DCU Diagramas de casos de uso

DCU Diagramas de casos de uso DCU Diagramas de casos de uso Universidad de Oviedo Departamento de Informática Contenidos Introducción Elementos básicos Más sobre los actores Más sobre los casos de uso Más sobre las asociaciones Otros

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los

Más detalles

Metodologías de Desarrollo de Sistemas de Información

Metodologías de Desarrollo de Sistemas de Información Metodologías de Desarrollo de Sistemas de Información Metodología para el Desarrollo de SI Las metodologías son sistemas completos de técnicas que incluyen procedimientos paso a paso, productos resultante,

Más detalles

I. T. en Informática de Sistemas. Facultad de Informática

I. T. en Informática de Sistemas. Facultad de Informática I. T. en Informática de Sistemas. Facultad de Informática Construcción de Software Caso práctico para clase Modelo de casos de uso Objetivos del proyecto Los dos grandes objetivos de este proyecto son

Más detalles

DESARROLLO DE SOFTWARE DEFINICIÓN GENERAL DEL PROCESO GABY LORENA GUERRERO LEYDI ROCIO ERAZO PABLO FELIPE MIRANDA WALTER ALEXIS ANTE

DESARROLLO DE SOFTWARE DEFINICIÓN GENERAL DEL PROCESO GABY LORENA GUERRERO LEYDI ROCIO ERAZO PABLO FELIPE MIRANDA WALTER ALEXIS ANTE DESARROLLO DE SOFTWARE DEFINICIÓN GENERAL DEL PROCESO GABY LORENA GUERRERO LEYDI ROCIO ERAZO PABLO FELIPE MIRANDA WALTER ALEXIS ANTE UNIVERSIDAD DEL CAUCA FACULTAD DE INGENIERÍA ELECTRÓNICA Y TELECOMUNICACIONES

Más detalles

INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones

INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones Univ. Cantabria Fac. de Ciencias Patricia López Modelo de Casos de Uso vs Modelo de Análisis Modelo de Casos de Uso Modelo de Análisis Descrito con el

Más detalles

Patrones de software y refactorización de código

Patrones de software y refactorización de código Patrones de software y refactorización de código Introducción y antecedentes de los patrones de software Los patrones permiten construir sobre la experiencia colectiva de ingenieros de software habilidosos.

Más detalles

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los

Más detalles

Modelado Avanzado con Casos de Uso. Diseño de Software Avanzado Departamento de Informática

Modelado Avanzado con Casos de Uso. Diseño de Software Avanzado Departamento de Informática Modelado Avanzado con Casos de Uso Especificación Gráfica de Casos de Uso Una simple secuencia de acciones no puede describir adecuadamente la riqueza de situaciones que se pueden presentar en un caso

Más detalles

Ingeniería de Software I

Ingeniería de Software I Ingeniería de Software I Plan de iteraciones RUP Proceso Iterativo e Incremental El ciclo de vida iterativo se basa en la evolución de prototipos ejecutables que se muestran a los usuarios y clientes (miniproyectos)

Más detalles

Ingeniería del Software. Diseño. Diseño en el PUD. Diseño de software. Patrones arquitectónicos. Diseño Orientado a Objetos en UML

Ingeniería del Software. Diseño. Diseño en el PUD. Diseño de software. Patrones arquitectónicos. Diseño Orientado a Objetos en UML Diseño Diseño en el PUD Diseño de software Patrones arquitectónicos Diseño Orientado a Objetos en UML 1 Iteración en PUD Planificación de la Iteración Captura de requisitos: Modelo de casos de uso, Modelo

Más detalles

Entidad Formadora: Plan Local De Formación Convocatoria 2010

Entidad Formadora: Plan Local De Formación Convocatoria 2010 Entidad Formadora: Enterprise Architect Comenzando Puede iniciar Enterprise Architect desde el ícono que se creó en su escritorio de Windows durante la instalación, o alternativamente: 1. Abrir el menú

Más detalles

http://www.cem.itesm.mx/extension/ms

http://www.cem.itesm.mx/extension/ms Diplomado Programación orientada a objetos con Java y UML Las empresas necesitan contar con sistemas de información modernos, ágiles y de calidad para alcanzar sus objetivos y ser cada vez más competitivos

Más detalles

Administración de proyectos. Organizar, planificar y programar los proyectos de software

Administración de proyectos. Organizar, planificar y programar los proyectos de software Administración de proyectos Organizar, planificar y programar los proyectos de software Administración de proyectos Trata de las actividades que hay que realizar para asegurar que el software se entregará

Más detalles

Ing. Norman Vargas Chévez Facultad de Electrotecnia y Computación Universidad Nacional de Ingeniería e-mail: norman.vargas@uni.edu.

Ing. Norman Vargas Chévez Facultad de Electrotecnia y Computación Universidad Nacional de Ingeniería e-mail: norman.vargas@uni.edu. MODELACIÓN DEL PROCESO DE INFORMACIÓN EN LA COMPRA VENTA DE ENERGÍA EN EL MERCADO ELÉCTRICO DEREGULADO EN NICARAGUA - DESDE EL PUNTO DE VISTA DEL CENTRO NACIONAL DE DESPACHO DE CARGA- Ing. Norman Vargas

Más detalles

PRU. Fundamento Institucional. Objetivos. Alcance

PRU. Fundamento Institucional. Objetivos. Alcance PRU INSTRUCCIONES: a continuación se describe el flujo de trabajo correspondiente al área de procesos de PRUEBAS para el desarrollo de software, en el cual se debe apoyar para la ejecución de sus actividades;

Más detalles

Resumen obtenido de: Roger S. Pressman, Ingeniería de Software. Un enfoque práctico, quinta edición, 2002. Introducción al Diseño de Software

Resumen obtenido de: Roger S. Pressman, Ingeniería de Software. Un enfoque práctico, quinta edición, 2002. Introducción al Diseño de Software Principio de Diseño Resumen obtenido de: Roger S. Pressman, Ingeniería de Software. Un enfoque práctico, quinta edición, 2002 Introducción al Diseño de Software Qué es el diseño? Representación ingenieril

Más detalles

UML, ejemplo sencillo sobre Modelado de un Proyecto

UML, ejemplo sencillo sobre Modelado de un Proyecto UML, ejemplo sencillo sobre Modelado de un Proyecto Normal &DOLILFDU 0L3DQRUDPD 626 (VFULEHSDUD1RVRWURV Por Armando Canchala Contenido Introducción Objetivo Requerimientos Casos de Uso Subcasos de Uso

Más detalles

Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado

Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado 1. Introducción Unified Modeling Languaje Fuente: Booch- Jacobson-Rumbauch y diversos sitios Internet, entre otros:

Más detalles

DIAGRAMA DE CLASES EN UML

DIAGRAMA DE CLASES EN UML DIAGRAMA DE CLASES EN UML Mg. Juan José Flores Cueto jflores@usmp.edu.pe Ing. Carmen Bertolotti Zuñiga cbertolotti@usmp.edu.pe INTRODUCCIÓN UML (Unified Modeling Language) es un lenguaje que permite modelar,

Más detalles

Los requisitos de un Sistema de Información

Los requisitos de un Sistema de Información Captura de requisitos Captura de Requisitos en el PUD Los requisitos de un Sistema de Información Modelo de Casos de Uso Otros instrumentos 1 Iteración en PUD Planificación de la Iteración Captura de requisitos:

Más detalles

PUD: Proceso de Desarrollo Unificado

PUD: Proceso de Desarrollo Unificado PUD: Proceso de Desarrollo Unificado 1 1998 Genealogía del PUD Rational Unified Process 5.0 1997 Rational Objectory Process 4.1 UML 1996 Rational Objectory Process 4.0 1995 Método Ericsson Rational Approach

Más detalles

Anteproyecto Fin de Carrera

Anteproyecto Fin de Carrera Universidad de Castilla-La Mancha Escuela Superior de Informática Anteproyecto Fin de Carrera DIMITRI (Desarrollo e Implantación de Metodologías y Tecnologías de Testing) Dirige: Macario Polo Usaola Presenta:

Más detalles

Gestión de Configuración del Software

Gestión de Configuración del Software Gestión de Configuración del Software Facultad de Informática, ciencias de la Comunicación y Técnicas Especiales Herramientas y Procesos de Software Gestión de Configuración de SW Cuando se construye software

Más detalles

INFORME Nº1 PROPUESTA METODOLÓGICA Y PLAN DE TRABAJO DESARROLLO DE UN SISTEMA INTEGRADO DE GESTIÓN PARA EL GOBIERNO REGIONAL DE ATACAMA

INFORME Nº1 PROPUESTA METODOLÓGICA Y PLAN DE TRABAJO DESARROLLO DE UN SISTEMA INTEGRADO DE GESTIÓN PARA EL GOBIERNO REGIONAL DE ATACAMA INFORME Nº1 PROPUESTA METODOLÓGICA Y PLAN DESARROLLO DE UN SISTEMA INTEGRADO DE GESTIÓN PARA EL GOBIERNO REGIONAL DE ATACAMA con destino a GORE DE ATACAMA ELIMCO SISTEMAS Alfredo Barros Errázuriz 1954

Más detalles

Fundamentos de Ingeniería del Software. Capítulo 3. Análisis de Requisitos Introducción a los casos de uso

Fundamentos de Ingeniería del Software. Capítulo 3. Análisis de Requisitos Introducción a los casos de uso Fundamentos de Ingeniería del Software Capítulo 3. Análisis de Requisitos Introducción a los casos de uso Cap 3. Análisis de Requisitos Estructura 1. Actividades iniciales. 2. Técnicas de recogida de la

Más detalles

Planificación de Sistemas de Información

Planificación de Sistemas de Información Planificación de Sistemas de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ACTIVIDAD 1: INICIO DEL PLAN DE SISTEMAS DE INFORMACIÓN... 4 Tarea 1.1: Análisis de la Necesidad del... 4 Tarea 1.2: Identificación

Más detalles

PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO...

PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO... Tabla de Contenido PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO... 2 1. LA PRESENCIA DE INFORMACIÓN Y AYUDA ÚTIL PARA COMPLETAR LOS TRÁMITES EN LÍNEA.... 2 2. LA DISPONIBILIDAD DE DIVERSOS

Más detalles

Planificación de Sistemas de Información

Planificación de Sistemas de Información Planificación de Sistemas de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS...1 ACTIVIDAD 1: INICIO DEL PLAN DE SISTEMAS DE INFORMACIÓN...4 Tarea 1.1: Análisis de la Necesidad del...4 Tarea 1.2: Identificación

Más detalles

Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN

Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN Proceso de Negocio (Business Process) Conjunto estructurado, medible de actividades para producir un producto.

Más detalles

Desarrollo de un Sistema de Gestión de Proyectos mediante el framework GWT

Desarrollo de un Sistema de Gestión de Proyectos mediante el framework GWT Proyecto de Fin de Carrera Universidad Politécnica de Valencia Escuela Técnica Superior de Informática Desarrollo de un Sistema de Gestión de Proyectos mediante el framework GWT Realizado por: Dirigido

Más detalles

ITZOFT, una metodología de desarrollo de sistemas basada en el Proceso Unificado de Rational. Resumen

ITZOFT, una metodología de desarrollo de sistemas basada en el Proceso Unificado de Rational. Resumen ITZOFT, una metodología de desarrollo de sistemas basada en el Proceso Unificado de Rational. Sergio Valero Orea, svalero@utim.edu.mx, UTIM, Izúcar de Matamoros, Puebla. Resumen El desarrollo de sistemas

Más detalles

Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre

Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre Cenditel, Mayo 2011 Licencia de Uso Copyright (c) 2010, Alvarez J., Solé S., Briceño R., Fundación CENDITEL. La Fundación CENDITEL

Más detalles

Mantenimiento de Sistemas de Información

Mantenimiento de Sistemas de Información de Sistemas de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ACTIVIDAD MSI 1: REGISTRO DE LA PETICIÓN...4 Tarea MSI 1.1: Registro de la Petición... 4 Tarea MSI 1.2: Asignación de la Petición... 5 ACTIVIDAD

Más detalles

2.- Diseño del comportamiento: Diagrama de actividades. Mª Antonia Zapata

2.- Diseño del comportamiento: Diagrama de actividades. Mª Antonia Zapata 2.- Diseño del comportamiento: Diagrama de actividades Mª Antonia Zapata Introducción Los diagramas de actividades sirven para representar el comportamiento dinámico de un sistema haciendo hincapié en

Más detalles

Ejemplo de desarrollo software empleando UML

Ejemplo de desarrollo software empleando UML Introducción El objetivo de este documento es mostrar un ejemplo de desarrollo de software para la gestión de artículos deportivos de una empresa del sector de ventas de deportes a clientes tanto a mayoristas

Más detalles

Propuesta Matriz de Actividades para un Ciclo de Vida de Explotación de Datos

Propuesta Matriz de Actividades para un Ciclo de Vida de Explotación de Datos Propuesta Matriz de Actividades para un Ciclo de Vida de Explotación de Datos Britos, P. 1,2 ; Fernández, E. 2,1 ; García Martínez, R 1,2 1 Centro de Ingeniería del Software e Ingeniería del Conocimiento.

Más detalles

Ejemplo de Análisis Orientado a Objetos ATMs

Ejemplo de Análisis Orientado a Objetos ATMs Ejemplo de Análisis Orientado a Objetos ATMs Se desea diseñar el software necesario para una red bancaria provista de cajeros automáticos (ATMs), que serán compartidos por un consorcio de bancos. Cada

Más detalles

DISEÑO DE FUNCIONES (TRATAMIENTOS)

DISEÑO DE FUNCIONES (TRATAMIENTOS) DISEÑO DE FUNCIONES (TRATAMIENTOS) Diseño Estructurado. Estrategias para Derivar el Diagrama de Estructura. Diseño de Módulos Programables. 1. DISEÑO ESTRUCTURADO El Diseño es el proceso por el cual se

Más detalles

La Necesidad de Modelar. Diseño de Software Avanzado Departamento de Informática

La Necesidad de Modelar. Diseño de Software Avanzado Departamento de Informática La Necesidad de Modelar Analogía Arquitectónica Tiene sentido poner ladrillos sin hacer antes los planos? El modelo, los planos, ayuda a afrontar la complejidad del proyecto. Cuál es el lenguaje adecuado

Más detalles

Análisis del Sistema de Información

Análisis del Sistema de Información Análisis del Sistema de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 2 ACTIVIDAD ASI 1: DEFINICIÓN DEL SISTEMA... 6 Tarea ASI 1.1: Determinación del Alcance del Sistema... 6 Tarea ASI 1.2: Identificación

Más detalles

DISEÑO DE COMPONENTES DE SOFTWARE *

DISEÑO DE COMPONENTES DE SOFTWARE * DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP * Resumen del capítulo 10 de libro de [Pressman 2010] V:18-11-2008 (c) P. Gomez-Gil, INAOE.

Más detalles

Unidad III. Planificación del proyecto de software

Unidad III. Planificación del proyecto de software Planificación del proyecto de software Unidad III 3.1. Aplicación de herramientas para estimación de tiempos y costos de desarrollo de software: GANTT, PERT/CPM, uso de software para la estimación de tiempos

Más detalles

Índice. http://www.dicampus.es

Índice. http://www.dicampus.es Módulo 2 UML Índice Introducción a UML Lenguaje Unificado de Modelado (UML) Diagramas UML Diagramas de casos de uso Diagramas estructurales: Clases Diagramas estructurales: Objetos Diagramas de interacción:

Más detalles

Implantación y Aceptación del Sistema

Implantación y Aceptación del Sistema y Aceptación del Sistema 1 y Aceptación del Sistema ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 2 ACTIVIDAD IAS 1: ESTABLECIMIENTO DEL PLAN DE IMPLANTACIÓN...5 Tarea IAS 1.1: De finición del Plan de... 5 Tarea IAS

Más detalles

Planificación, Gestión y Desarrollo de Proyectos

Planificación, Gestión y Desarrollo de Proyectos Planificación, Gestión y Desarrollo de Proyectos Conceptos básicos Planificación de un proyecto Gestión de un proyecto Desarrollo de un proyecto 1 Conceptos básicos: Proyecto Conjunto de actividades que

Más detalles

SISTEMA DE ESPECIICACION DE REQUERIMIENTOS

SISTEMA DE ESPECIICACION DE REQUERIMIENTOS SISTEMA DE ESPECIICACION DE REQUERIMIENTOS Presentado por: Jefferson Peña Cristian Álvarez Cristian Alzate 10 CONTENIDO 1. INTRODUCCIÓN 1.1. PROPÓSITO 1.2. AMBITO DEL SISTEMA 1.3. DEFINICIONES, ACRÓNIMOS

Más detalles

PROCEDIMIENTO ESPECÍFICO. Código G114-01 Edición 0

PROCEDIMIENTO ESPECÍFICO. Código G114-01 Edición 0 Índice 1. TABLA RESUMEN... 2 2. OBJETO... 2 3. ALCANCE... 2 4. RESPONSABILIDADES... 3 5. ENTRADAS... 3 6. SALIDAS... 3 7. PROCESOS RELACIONADOS... 3 8. DIAGRAMA DE FLUJO... 4 9. DESARROLLO... 5 9.1. PROYECTO

Más detalles

Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales

Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales Modulo 03 UML: Vista de Casos de Uso Artefacto: Actores Catedrático MSC. Jose Juan Aviña Grimaldo e-mail josejuan_avina@gmail.com

Más detalles

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos 2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven

Más detalles

Unidad VI: Supervisión y Revisión del proyecto

Unidad VI: Supervisión y Revisión del proyecto Unidad VI: Supervisión y Revisión del proyecto 61. Administración de recursos La administración de recursos es el intento por determinar cuánto, dinero, esfuerzo, recursos y tiempo que tomará construir

Más detalles

SINAUTO. (Captura Requirimientos) GRUPO 03

SINAUTO. (Captura Requirimientos) GRUPO 03 SINAUTO (Captura Requirimientos) GRUPO 03 Iker Jauregi ikerjauregivicente@hotmail.com Iñigo Arregui bateman2012@gmail.com Javier Arce arcjav@hotmail.com Jorge García. jgfand@gmail.com Patxi Campos.patxi948@wanadoo.es

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Técnica de modelado de objetos (I) El modelado orientado a objetos es una técnica de especificación semiformal para

Más detalles

PLAN DE MEJORAS. Herramienta de trabajo. Agencia Nacional de Evaluación de la Calidad y Acreditación

PLAN DE MEJORAS. Herramienta de trabajo. Agencia Nacional de Evaluación de la Calidad y Acreditación PLAN DE MEJORAS Herramienta de trabajo Agencia Nacional de Evaluación de la Calidad y Acreditación Índice 1 Introducción...3 2 Pasos a seguir para la elaboración del plan de mejoras...5 2.1 Identificar

Más detalles

TEMA 7: DIAGRAMAS EN UML

TEMA 7: DIAGRAMAS EN UML TEMA 7: DIAGRAMAS EN UML Diagramas en UML El bloque de construcción básico de UML es un Diagrama Introducción a UML 2 1 Modelo de Casos de Uso (MCU) Todos los casos de uso constituyen el MCU que describe

Más detalles

Fundamentos del diseño 3ª edición (2002)

Fundamentos del diseño 3ª edición (2002) Unidades temáticas de Ingeniería del Software Fundamentos del diseño 3ª edición (2002) Facultad de Informática necesidad del diseño Las actividades de diseño afectan al éxito de la realización del software

Más detalles

Operación 8 Claves para la ISO 9001-2015

Operación 8 Claves para la ISO 9001-2015 Operación 8Claves para la ISO 9001-2015 BLOQUE 8: Operación A grandes rasgos, se puede decir que este bloque se corresponde con el capítulo 7 de la antigua norma ISO 9001:2008 de Realización del Producto,

Más detalles

El Proceso Unificado de Desarrollo de Software

El Proceso Unificado de Desarrollo de Software El Proceso Unificado de Desarrollo de Software Contenidos 1. Visión General del Proceso Unificado...3 Introducción...3 Dirigido por Casos de Uso...3 Centrado en la Arquitectura...3 Iterativo e Incremental...4

Más detalles

Capitulo III. Diseño del Sistema.

Capitulo III. Diseño del Sistema. Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje

Más detalles

Planificación, Administración n de Bases de Datos. Bases de Datos. Ciclo de Vida de los Sistemas de Información. Crisis del Software.

Planificación, Administración n de Bases de Datos. Bases de Datos. Ciclo de Vida de los Sistemas de Información. Crisis del Software. Planificación, n, Diseño o y Administración n de Crisis del Software Proyectos software de gran envergadura que se retrasaban, consumían todo el presupuesto disponible o generaban productos que eran poco

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

Testing. Tipos, Planificación y Ejecución de Pruebas

Testing. Tipos, Planificación y Ejecución de Pruebas Testing Tipos, Planificación y Ejecución de Pruebas Contenido Definiciones del Testing de Software Objetivos, conceptos Tipos de Test Testing a-la RUP Rol del Testing en el proceso Artefactos Trabajadores

Más detalles

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos:

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos: Tutorial de UML Introducción: El Lenguaje de Modelamiento Unificado (UML - Unified Modeling Language) es un lenguaje gráfico para visualizar, especificar y documentar cada una de las partes que comprende

Más detalles

INGENIERÍA DE SOFTWARE CICLOS DE VIDA Y METODOLOGIAS

INGENIERÍA DE SOFTWARE CICLOS DE VIDA Y METODOLOGIAS INGENIERÍA DE SOFTWARE CICLOS DE VIDA Y METODOLOGIAS Rubby Casallas, Andrés Yie Departamento de Sistemas y Computación Facultad de Ingeniería Universidad de los Andes Agenda Contexto Ciclos de vida: Modelo

Más detalles

Syllabus. www.techeraperu.com cursos@techeraperu.com

Syllabus. www.techeraperu.com cursos@techeraperu.com Syllabus www.techeraperu.com cursos@techeraperu.com Este curso está dirigido para los Encargados de Desarrollar los Sistemas de Información y aplicar una Metodología basada en RUP para controlar el Ciclo

Más detalles

Diseño de Sistemas Universidad CAECE Año 2005

Diseño de Sistemas Universidad CAECE Año 2005 Diseño de Sistemas Universidad CAECE Año 2005 Introducción El siguiente ejemplo muestra la aplicación del proceso de desarrollo de software según Ivar Jacobson. En muchos de los pasos el método ha sido

Más detalles

Gestión de la Configuración

Gestión de la Configuración Gestión de la ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ESTUDIO DE VIABILIDAD DEL SISTEMA... 2 ACTIVIDAD EVS-GC 1: DEFINICIÓN DE LOS REQUISITOS DE GESTIÓN DE CONFIGURACIÓN... 2 Tarea EVS-GC 1.1: Definición de

Más detalles

Figure 7-1: Phase A: Architecture Vision

Figure 7-1: Phase A: Architecture Vision Fase A Figure 7-1: Phase A: Architecture Vision Objetivos: Los objetivos de la fase A son: Enfoque: Desarrollar una visión de alto nivel de las capacidades y el valor del negocio para ser entregado como

Más detalles

Estándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008

Estándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008 Estándares para planes de calidad de software Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008 DIFERENCIA ENTRE PRODUCIR UNA FUNCION Y PRODUCIR UNA FUNCION

Más detalles

5. Gestión de la Configuración del Software (GCS)

5. Gestión de la Configuración del Software (GCS) 5. Gestión de la Configuración del Software (GCS) 5.1. La Configuración del Software El resultado del proceso de ingeniería del software es una información que se puede dividir en tres amplias categorías:

Más detalles

EXÁMEN DE VALIDACIÓN DE COMPETENCIAS PROFESIONALES DE PARADIGMAS DE DESARROLLO DE SOFTWARE

EXÁMEN DE VALIDACIÓN DE COMPETENCIAS PROFESIONALES DE PARADIGMAS DE DESARROLLO DE SOFTWARE GUÍA DE EXAMEN EXÁMEN DE VALIDACIÓN DE COMPETENCIAS PROFESIONALES DE PARADIGMAS DE DESARROLLO DE SOFTWARE Instrucciones Deberás leer correctamente todo el contenido de ésta guía, ya que tiene como propósito

Más detalles

Área Académica: Sistemas Computacionales. Profesor: I.S.C. Guadalupe Hernández Coca

Área Académica: Sistemas Computacionales. Profesor: I.S.C. Guadalupe Hernández Coca Área Académica: Sistemas Computacionales Tema: Ciclo de Vida de un Sistema de Base de Datos Profesor: I.S.C. Guadalupe Hernández Coca Periodo: Julio Diciembre de 2011 Keywords: Data base, Conceptual design,

Más detalles

Unidad 9. Implementación. M.C. Martín Olguín

Unidad 9. Implementación. M.C. Martín Olguín Unidad 9 Implementación M.C. Martín Olguín Implementación Es la traducción directa del diseño en un lenguaje de programación. Es decir, en la implementación se construyen los componentes: Archivos de código

Más detalles

Ingeniería de Software. Pruebas

Ingeniería de Software. Pruebas Ingeniería de Software Pruebas Niveles de prueba Pruebas unitarias Niveles Pruebas de integración Pruebas de sistema Pruebas de aceptación Alpha Beta Niveles de pruebas Pruebas unitarias Se enfocan en

Más detalles

INGENIERÍA DEL SOFTWARE I Tema 8. Contexto y Requisitos del Sistema (en desarrollo OO)

INGENIERÍA DEL SOFTWARE I Tema 8. Contexto y Requisitos del Sistema (en desarrollo OO) INGENIERÍA DEL SOFTWARE I Tema 8 Contexto y Requisitos del Sistema (en desarrollo OO) Univ. Cantabria Fac. de Ciencias Francisco Ruiz y Patricia López Objetivos del Tema Conocer en detalle la técnica de

Más detalles

rg.o El l c i c c i l c o l o de d vi v d i a d a cm a l@ rza e de d u n u n si s s i t s e t ma m a de d in i f n or o ma m c a i c ó i n ó b

rg.o El l c i c c i l c o l o de d vi v d i a d a cm a l@ rza e de d u n u n si s s i t s e t ma m a de d in i f n or o ma m c a i c ó i n ó b El ciclo de vida de un sistema de información El ciclo de vida de un sistema de información El proceso de desarrollo de software Modelos de ciclo de vida El ciclo de vida de una base de datos El proceso

Más detalles