Tema 2 Modelos de proceso del software

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

Download "Tema 2 Modelos de proceso del software"

Transcripción

1 Tema 2 Modelos de proceso del software 1. Conceptos básicos 2. Procesos del ciclo de vida Procesos principales Procesos de soporte Procesos de la organización Modelo clásico Iterativo Variantes del ciclo de vida iterativo Ciclo de vida en espiral Modelo de métodos formales Desarrollo rápido de aplicaciones Modelo de desarrollo concurrente Programación extrema Modelos para sistemas orientados a objetos De agrupamiento Fuente Remolino Pinball Basado en componentes Proceso Unificado 1 María N. Moreno García 1. Conceptos básicos Proceso del software: conjunto de actividades y resultados asociados que conducen a la creación de un producto software [Sommerville, 2001] Ciclo de vida del software: Aproximación lógica a la adquisición, el suministro, el desarrollo, la explotación y el mantenimiento del software (norma IEEE 1074) [IEEE, 1999] El ciclo de vida incluye Ciclo de desarrollo del sistema Tiempo de vida del sistema Modelo de ciclo de vida: Marco de referencia que contiene los procesos, las actividades y las tareas involucradas en el desarrollo, la explotación y el mantenimiento de un producto de software, abarcando la vida del sistema desde la definición de los requisitos hasta la finalización de su uso (norma ISO ) [ISO/IEC, 1995] Actividad: conjunto de tareas Tarea: acción que transforma entradas en salidas Objetivos Proporcionar una estrategia de desarrollo y un enfoque sistemático en la realización de las actividades de desarrollo y mantenimiento de un sistema Ayudar a fijar objetivos Permitir un seguimiento de las necesidades de recursos 2

2 2. Procesos del ciclo de vida (I) Las actividades del ciclo de vida del software se pueden agrupar de la forma siguiente (norma ISO ) [ISO/IEC, 1995] Procesos principales Adquisición Suministro Desarrollo Explotación Mantenimiento Procesos de soporte Documentación Gestión de la configuración Aseguramiento de la calidad Verificación Validación Revisión conjunta Auditoría Resolución de problemas Procesos de la organización (generales) Gestión Procesos Principales Procesos de Soporte Mejora Adquisición Documentación Infraestructura Suministro Gestión de la configuración Formación Aseguramiento de la calidad Explotación Desarrollo Mantenimiento Verificación Validación Revisión conjunta Auditoría Resolución de problemas Procesos de la Organización Gestión Mejora Nuevos procesos (amendment ) Usabilidad Evaluación de productos Recursos Humanos Gestión de assets Gestión del programa de reutilización Ingeniería del dominio Infraestructura Formación 3 2. Procesos del ciclo de vida (II) Procesos principales: Son los que resultan útiles a las personas que inician o realizan el desarrollo, la explotación o el mantenimiento del software durante su ciclo de vida Proceso de adquisición: Actividades y tareas que se realizan para comprar un producto software Proceso de suministro: Actividades y tareas que el suministrador realiza Proceso de desarrollo: Contiene las actividades de análisis de requisitos, diseño, codificación, integración, pruebas e instalación y aceptación Proceso de explotación: Incluye la explotación del software y el soporte operativo a los usuarios Proceso de mantenimiento: Aparece cuando el software necesita modificaciones, ya sea en el código o en la documentación asociada, debido a un error, una deficiencia, un problema o la necesidad de mejora o adaptación 4

3 2. Procesos del ciclo de vida (III) Procesos de soporte: Sirven de apoyo al resto y se aplican en cualquier punto del ciclo de vida Proceso de documentación: Registra la información producida por un proceso o actividad en el ciclo de vida Proceso de gestión de la configuración: Aplica ciertos procedimientos y técnicas durante todo el ciclo de vida del sistema Proceso de aseguramiento de la calidad: Aporta la confianza de que los procesos y los productos software del ciclo de vida cumplen los requisitos especificados y se ajustan a los planes establecidos Proceso de verificación: Determina si los requisitos de un sistema o del software están completos y son correctos Proceso de validación: Sirve para determinar si el sistema o software final cumple con los requisitos previstos para su uso Proceso de revisión conjunta: Sirve para evaluar el estado del software y sus productos en una actividad del ciclo de vida o una fase de un proyecto Proceso de auditoría: Permite determinar, en los hitos predeterminados, si se han cumplido los requisitos, los planes y el contrato Proceso de resolución de problemas: Permite analizar y eliminar los problemas descubiertos durante el desarrollo, explotación, el mantenimiento u otro proceso 5 2. Procesos del ciclo de vida (IV) Procesos de la organización (generales): Los emplea una organización para llevar a cabo funciones tales como la gestión, la formación del personal o la mejora del proceso Proceso de gestión: Actividades y tareas genéricas que puede emplear cualquier organización que tenga que gestionar sus procesos, incluyendo planificación, seguimiento y control, y revisión y evaluación Proceso de infraestructura: Establece la infraestructura necesaria para cualquier otro proceso Proceso de mejora: Sirve para establecer, valorar, medir, controlar y mejorar los procesos del ciclo de vida del software Proceso de formación: Sirve para proporcionar y mantener al personal formado 6

4 2. Procesos del ciclo de vida (V) Proceso de adaptación: Sirve para realizar la adaptación básica de la norma ISO con respecto a los proyectos software. Es necesario comprender los procesos, las organizaciones y sus relaciones bajo diferentes puntos de vista Bajo el punto de vista del contrato, el comprador y el proveedor negocian y firman un contrato, empleando los procesos de adquisición y suministro Bajo el punto de vista de gestión, el comprador, el proveedor, el desarrollador, el operador y el personal de mantenimiento gestionan sus respectivos procesos para el proyecto software Bajo el punto de vista de explotación, el operador proporciona el servicio de explotación del software a los usuarios Bajo el punto de vista de ingeniería, el desarrollador o el personal de mantenimiento llevan a cabo sus respectivas tareas de ingeniería para producir o modificar los productos software Bajo el punto de vista de soporte, los grupos (tales como el de la gestión de la configuración, el aseguramiento de la calidad...) proporcionan servicios de apoyo a otros grupos en el cumplimiento de tareas únicas y específicas 7 Modelos tradicionales Formados por un conjunto de fases o actividades en las que que no tienen en cuenta la naturaleza evolutiva del software Clásico, lineal o en cascada Estructurado Iterativo o basado en prototipos Desarrollo rápido de aplicaciones (RAD) Modelos evolutivos Son modelos que se adaptan a la evolución que sufren los requisitos del sistema en función del tiempo En espiral Evolutivo Incremental Modelo de desarrollo concurrente Modelos para sistemas orientados a objetos Modelos con un alto grado de iteratividad y solapamiento entre fases De agrupamiento Fuente Remolino Pinball Basado en componentes UP 8

5 3.1. Modelo clásico (I) Conocido también como modelo lineal o en cascada Versión original se debe a W. W. Royce [Royce, 1970], apareciendo después numerosos refinamientos Características Está compuesto por una serie de fases que se ejecutan secuencialmente Obtención de documentos como criterio de finalización de fase Problemas de la progresión secuencial Desconocimiento de las necesidades por parte del cliente Inestabilidad de los requisitos No se ven resultados hasta muy avanzado el proyecto Efecto big bang próximo a la entrega Ciclo de vida clásico Modelo clásico (II) El modelo en cascada se representa frecuentemente en forma de V (de ahí que se le conozca también como ciclo en V) Demuestra que el desarrollo de las pruebas se efectúa de manera síncrona con el desarrollo del programa Esta aproximación permite probar lo que debía hacerse y no lo que se ha hecho Presenta una implantación ascendente Implica un gran número de dificultades Análisis validado por Pruebas funcionales Diseño Pruebas de integración Codificación Pruebas unitarias Aplicación Representación en V del ciclo de vida clásico 10

6 3.1. Modelo clásico (III) Modelo satisfactorio sólo en desarrollos conocidos y estables El desconocimiento y el riesgo suele ser alto en el desarrollo del software, debido La linealidad no se corresponde con la realidad Los retornos de información entre las fases se hacen necesarios para incorporar correcciones hacia arriba, en función de los descubrimientos realizados hacia abajo Estos retornos entre fases perturban la visión lineal dada por el ciclo de vida en cascada Los retornos están limitados a fases adyacentes Ciclo de vida clásico con realimentación Modelo iterativo (I) Características del ciclo iterativo [Muller, 1997] Se basa en la evolución de prototipos ejecutables, mesurables y evaluables Se van incorporando cambios en cada iteración Exige más atención e implicación de todos los actores del proyecto Minicascada Cada iteración reproduce el ciclo de vida en cascada, pero a una escala menor Los objetivos de cada iteración se establecen en función de la evaluación de las iteraciones precedentes Las fases tradicionales se cubre gradualmente en las diversas iteraciones Las actividades internas se solapan porque dentro de una iteración no necesitan terminarse de golpe, siendo la transición entre dos actividades progresiva Análisis N veces Fases Diseño Codificación Integración Planificación Análisis Diseño Codificación Evaluación Transición Entrega progresiva 12

7 3.2. Modelo iterativo (II) Evaluación de las iteraciones Deben definirse criterios de evaluación de las iteraciones Una iteración se marca por etapas intermedias que permitan medir los progresos. Debe haber al menos dos etapas Revisión inicial: fija los objetivos y criterios de la iteración Revisión de evaluación: valida los resultados Mitos sobre el ciclo de vida iterativo [Muller, 1997] El ciclo de vida iterativo favorece los apaños El ciclo de vida iterativo engendra problemas El ciclo de vida iterativo e incremental exige recomenzar n veces hasta que el resultado sea el adecuado El ciclo de vida iterativo es una excusa para no planificar y gestionar un proyecto El ciclo de vida iterativo sólo concierne a los desarrolladores El ciclo de vida iterativo favorece siempre añadir nuevas necesidades, sin fin 13 Ciclo en b 3.3. Variantes del ciclo de vida iterativo (I) Variante más sencilla del ciclo de vida iterativo La forma b fue identificada por Birrel y Ould [Birrel y Ould, 1985] Concentra las iteraciones sobre la construcción Cuando no se conocen todos los requisitos desde el principio, o se desea modificar aspectos arquitectónicos, se pueden añadir bucles a las fases iniciales Los ciclos son rápidos y la integración continua El objetivo de este modelo es suprimir el efecto big bang de una fase de integración al final del ciclo Se adapta a aplicaciones modestas o bien definidas Estudio de oportunidad Elaboración Estudio de oportunidad Elaboración Integración Construcción Integración Construcción Dos versiones del ciclo en b 14

8 3.3. Variantes del ciclo de vida iterativo (II) Ciclo en O Surge cuando las ramas secundarias del ciclo en b toman mayor relevancia que su flujo principal Deriva del ciclo en espiral de Boehm [Boehm, 1988], siendo descrito por P. Kruchten [Kruchten, 1991] Las iteraciones comprenden el análisis y el diseño Estudio de oportunidad Definición de la iteración Elaboración Evaluación Construcción Integración Ciclo en O Ciclo de vida en espiral (I) Fue propuesto inicialmente por B. Boehm [Boehm, 1986], [Boehm, 1988] Es un modelo de proceso de software evolutivo, que proporciona el potencial para el desarrollo rápido de versiones incrementales del software Características Puede considerarse como un metamodelo de proceso Principalmente, reúne características del modelo clásico y de prototipos Aparece el análisis de riesgo Se divide en un número de actividades estructurales, también denominadas regiones de tareas. Normalmente existen entre tres y seis En el modelo original de Boehm aparecen cuatro regiones de tareas Planificación, Análisis de riesgos, Ingeniería, Evaluación del cliente En [Pressman, 1998] se presenta una variante con seis regiones de tareas Comunicación con el cliente, Planificación, Análisis de riesgos, Ingeniería, Construcción y adaptación, Evaluación del cliente El avance se realiza desde el centro de la espiral hacia el exterior 16

9 3.4. Ciclo de vida en espiral (II) Determinar objetivos, alternativas y restricciones Plan para la próxima fase Plan de requisitos y del ciclo de vida Plan de desarrollo Plan de integracion y prueba Analisis de riesgo Analisis de riesgo Analisis de riesgo Analisis de riesgo Prototipo 1 Prototipo 2 Operacion Espec. requisitos Validacion requisitos V & V diseño Servicio. Evaluar alternativas Identificar y resolver riesgos Prototipo 3 Simulaciones Pruebas unidad Pruebas aceptación. Diseño Prototipo operativo Diseño detallado Codificación Desarrollo, verificación del siguiente nivel del producto Ciclo de vida en espiral [Boehm, 1988] Ciclo de vida en espiral (III) Ciclo de vida en espiral [Pressman, 1998] 18

10 3.5. Modelo de métodos formales Permiten especificar, desarrollar y verificar un sistema aplicando una notación matemática Algunas organizaciones de desarrollo de software aplican una variación de este enfoque, llamado ingeniería del software de sala limpia [Mills et al., 1987], [Dyer, 1992] Ventajas La ambigüedad, lo incompleto y la inconsistencia se descubren y se corrigen fácilmente Los métodos formales de diseño sirven como base para la verificación de programas Sirven de base para la generación automática de código Barreras para su implantación El desarrollo es bastante caro y lleva mucho tiempo El estudio de los métodos es costoso Es difícil establecer modelos como mecanismo de comunicación con los clientes Desarrollo rápido de aplicaciones (I) El modelo de desarrollo rápido de aplicaciones, DRA (RAD Rapid Application Development) o modelo de la caja de tiempo surgió como respuesta al modelo formal y al ciclo en espiral Enfatiza un ciclo de desarrollo extremadamente corto Modelo funcional en 60 ó 90 días No es un modelo bien definido Secuencia de integraciones de un sistema evolutivo o de prototipos que se revisan con el cliente descubrimiento de los requisitos Cada integración se restringe a un período de tiempo bien definido (caja de tiempo) Características Modelo secuencial: Separación en fases de cada caja de tiempo Integraciones constantes Centrado en el código más que en la documentación Desarrollo basado en componentes Uso efectivo de herramientas y frameworks Participación activa del usuario 20

11 3.6. Desarrollo rápido de aplicaciones (II) Cuando se utiliza en S.I. Automatizados, comprende las fases [Kerr y Hunter, 1994] Modelado de gestión Modelado de datos Modelado del proceso Generación de aplicaciones Pruebas y entrega Equipo nº 1 Modelado de gestión Equipo nº 2 Modelado de gestión Modelado de datos Equipo nº 3 Modelado de gestión Modelado de procesos Modelado de datos Modelado de procesos Modelado de datos Modelado de procesos Gener. de aplicaciones Pruebas y entrega Gener. de aplicaciones Pruebas y entrega Gener. de aplicaciones Pruebas y entrega De 60 a 90 días Modelo DRA [Kerr y Hunter, 1994] Desarrollo rápido de aplicaciones (III) Las limitaciones de tiempo demandan un ámbito de escalas Si una aplicación de gestión puede modularse de forma que pueda completarse cada una de las funciones principales en menos de tres meses, es un candidato del DRA. Cada una de estas funciones puede ser afrontadas por un equipo DRA diferente y ser integradas en una sola aplicación Inconvenientes [Butler, 1994] Los proyectos grandes necesitan los recursos humanos suficientes para crear el número correcto de equipos Se requiere de un compromiso de las partes involucradas 22

12 3.7. Modelo de desarrollo concurrente Propuesto por Davis y Sitaram [Davis y Sitaram, 1994] Características Representación mediante un conjunto de actividades, tareas y estados asociados a ellas Todas las actividades existen concurrentemente, pero residen en estados diferentes Define una serie de acontecimientos que disparan transiciones de estado a estado para cada una de las actividades de la ingeniería del software Ninguna Ninguna Actividad de análisis Bajo Bajo desarrollo desarrollo Cambios Cambios en en espera espera Bajo Bajo revisión Bajo revisión Bajo modificación En En línea línea base base Hecho Hecho Un elemento del modelo de desarrollo concurrente Programación extrema La programación extrema [Beck, 1999] es un nuevo y controvertido enfoque de desarrollo de software basado en el modelo incremental Este nuevo enfoque es el precursor de una nueva corriente denominada el modelado ágil Está indicado para Equipos de tamaño mediano o pequeño Requisitos imprecisos y cambiantes Características: El juego de la planificación Versiones pequeñas Metáfora Diseño sencillo Hacer pruebas Refactoring Programación en parejas Propiedad colectiva Integración continua Cliente in-situ Estándares de codificación 24

13 3.9 Modelos para sistemas OO (I) Características Eliminación de las fronteras entre fases Desarrollo basado en componentes reutilizables Desarrollo iterativo e incremental Las tareas de cada fase se realizan de forma iterativa Existe un ciclo de desarrollo que permite la evolución del sistema Alto grado de iteración y solapamiento El sistema se divide en un conjunto de particiones que se van desarrollando e integrando de forma incremental Se pueden combinar con modelos tradicionales Modelos para sistemas OO (II) Modelo remolino Definido por James Rumbaugh [Rumbaugh, 1992] Las metodologías de desarrollo no ofrecen una visión real del ciclo de vida en el desarrollo orientado al objeto El ciclo de vida de un desarrollo orientado al objeto es desordenado, involucrando múltiples iteraciones interrelacionadas El modelo en cascada asume una sola dimensión de iteración, consistentes en la fase de proceso Pueden identificarse otras dimensiones Amplitud: tamaño del desarrollo, por ejemplo en número de elementos Profundidad: referida al nivel de abstracción o detalle Madurez: grado de compleción, corrección y elegancia Alternativas: Diferentes soluciones a un problema Alcance: Propósitos y objetivos del sistema, ya que los requisitos van cambiando a lo largo del proyecto Las diferentes dimensiones pueden anidarse de varias formas Ejemplo: profundidad - madurez - amplitud Desarrollo multiciclo en forma de remolino en lugar de una cascada 26

14 3.9 Modelos para sistemas OO (III) Modelo Pinball (I) Propuesto por Ambler [Ambler, 1994] Modelo muy didáctico El pinball refleja la forma que se desarrolla Pelota Proyecto o subproyecto Jugador Equipo de desarrollo De forma iterativa se procede a encontrar clases, atributos, métodos y relaciones (actividades que pueden englobarse en la fase de análisis) y definir colaboraciones, herencia, agregación y subsistemas (actividades de diseño), y por último se pasa a la programación, prueba e implementación Como en el pinball los pasos se pueden dar en cualquier orden y de forma simultánea Modelos para sistemas OO (IV) Modelo Pinball (II) Dos estilos de juego A lo seguro Con tecnologías y métodos probados Al límite Con más riesgo (se pueden conseguir beneficios espectaculares) Proceso iterativo 28

15 3.9 Modelos para sistemas OO (V) Modelo de agrupamiento (I) Propuesto por Bertrand Meyer [Meyer, 1990] Concepto clave: AGRUPAMIENTO (cluster) [Meyer, 1999] Unidad organizativa básica Grupo de clases relacionadas o, recursivamente, clusters relacionados Unidad natural para el desarrollo por parte de un único desarrollador Evita el efecto todo-nada propio del modelo en cascada Tiene un componente secuencial y un componente concurrente Existencia de diferentes subciclos de vida (uno para cada cluster) que pueden solaparse en el tiempo Cada subciclo de vida que gobierna el desarrollo de un cluster está formado por Especificación, Diseño, Implementación, Verificación/Validación y Generalización Modelos para sistemas OO (VI) Modelo de agrupamiento (II) Enfoque ascendente La ocultación de la información posibilita la forma del modelo de clusters de ingeniería concurrente Tiempo Espec DisRea ValGen Agrupamiento n Espec DisRea ValGen Agrupamiento 2 Espec DisRea ValGen Agrupamiento 1 Tiempo Distribución temporal de las fases de cada agrupamiento 30

16 3.9 Modelos para sistemas OO (VII) Modelo fuente (I) Definido por Henderson-Sellers y Edwards en 1990 [Henderson- Sellers y Edwards, 1990] Representa gráficamente el alto grado de iteración y solapamiento que hace posible la tecnología de objetos Propone dos modelos de ciclo de vida Para el sistema completo Para cada clase o módulo: Cada clase puede estar en una fase diferente del ciclo de vida durante el desarrollo del sistema El modelo permite la integración del análisis de dominio: identificación, análisis y especificación de requisitos comunes de un dominio de aplicación específico Modelos para sistemas OO (VIII) Modelo fuente (II) Mantenimiento Evolución Utilización Pruebas Sistema Pruebas Unitarias Codificación Componentes Diseño Conceptual Análisis Estudio de viabilidad y requisitos Piscina SW Generalización Re-evaluación Utilización Prueba Implementación Diseño de Componente Diseño Conceptual Modelo fuente para el sistema y para un componente Análisis Requisitos Piscina SW Generalización Re-evaluación 32

17 3.9 Modelos para sistemas OO (IX) Desarrollo basado en componentes (I) Configura aplicaciones a partir de componentes de software preparados [Pressman, 2001] Enfoque iterativo y evolutivo [Nierstrasz, 1999] Se enmarca en un contexto más amplio: ingeniería del software basada en componentes Modelos para sistemas OO (X) Desarrollo basado en componentes (II) El objetivo de la ingeniería del dominio es identificar, construir, catalogar y diseminar un conjunto de componentes de software que tienen aplicación en el software actual y futuro dentro de un dominio de aplicación particular [Presman, 2001] Ingeniería del software basada en componentes 34

18 3.9 Modelos para sistemas OO (XI) Desarrollo basado en componentes (III) Cualificación de componentes: Asegura que un componente candidato llevará a cabo la función necesaria, encajará en el estilo arquitectónico del sistema y tendrá la calidad requerida Adaptación de componentes: Elimina conflictos de integración Enmascaramiento de caja blanca, gris o negra Composición de componentes: Ensambla componentes cualificados, adaptados y diseñados para la arquitectura establecida Ingeniería de componentes: Diseño de componentes para su reutilización Actualización de componentes: El software actual se reemplaza a medida que se dispone de nuevas versiones de componentes Modelos para sistemas OO (XII) El proceso unificado (I) Definido por Rational Software Corporation [Jacobson et al., 2000] Evolución del proceso Objectory de Rational Utilización de UML [Booch et al., 1999] como lenguaje de modelado Basado en componentes El sistema software en construcción está formado por componentes software interconectados a través de interfaces bien definidas Características Conducido por casos de uso Los casos de usos se implementan para asegurar que toda la funcionalidad se realiza en el sistema y verificar y probar el mismo. Como los casos de uso contienen las descripciones de las funciones, afectan a todas las fases y vistas Centrado en la arquitectura La arquitectura se describe mediante diferentes vistas del sistema. Es importante establecer una arquitectura básica pronto, realizar prototipos, evaluarla y finalmente refinarla durante el curso del proyecto Iterativo e incremental Resulta práctico dividir los grandes proyectos en mini proyectos, cada uno de los cuales es una iteración que resulta en un incremento 36

19 3.9 Modelos para sistemas OO (XIII) El proceso unificado (II) El Proceso Unificado se repite a lo largo de una serie de ciclos Cada ciclo consta de cuatro fases: Inicio: se define el alcance del proyecto y se desarrollan los casos de negocio Elaboración: se planifica el proyecto, se especifican en detalle la mayoría de los casos de uso y se diseña la arquitectura del sistema Construcción: se construye el producto Transición: el producto se convierte en versión beta. Se corrigen problemas y se incorporan mejoras sugeridas en la revisión Dentro de cada fase se puede, a su vez, descomponer el trabajo en iteraciones con sus incrementos resultantes Cada fase termina con un hito, cada uno de los cuales se caracteriza por la disponibilidad de un conjunto de componentes de software Objetivos de los hitos: Toma de decisiones para continuar con la siguiente fase Controlar el progreso del proyecto Proporcionar información para la estimación de tiempo y recursos de proyectos sucesivos Modelos para sistemas OO (XIV) El proceso unificado (III) Cada ciclo concluye con una versión del producto para los clientes Inicio Elaboración Construcción Transición tiempo Vista Línea base de arquitectura Capacidad inicial Versión del producto Inicio Elaboración Construcción Transición Prelim Iteración... Arqu. Iteración... Des. Des. Iteración Iteración... Trans. Iteración... Versión Versión Versión Versión Versión Versión Versión 38

20 3.9 Modelos para sistemas OO (XV) El proceso unificado (IV) Las iteraciones discurren a lo largo de los flujos de trabajo Fases Flujos de trabajo Requisitos Inicio Elaboración Construcción Transición Análisis Diseño Implementación Pruebas Iteraciones preliminares ite r. #1 ite r. #2 iter. #n iter. #n+1 ite r. #n +2 iter. #m iter. #m +1 Iteraciones 39 Bibliografía Ambler, S. W. In search of a generic SDLC for object systems. Object Magazine, 4(6): 76-78, Beck, K. Embracing Change with Extrem Programming, IEEE Computer 32, pp , Birrel, N. D., Ould, M.A. A practical Handbook for Software Development. Cambridge University Press, Boehm, B. W. A Spiral Model of Software Development and Enhancement. ACM Software Engineering Notes, 11(4): Boehm, B. W. A Spiral Model of Software Development and Enhancement. Computer, 21(5): 61-72, Booch, G., Rumbaugh, J., Jacobson, I. El Lenguaje Unificado de Modelado. Addison Wesley, Butler, J. Rapid Application Development in Action. Managing System Development, Applied Computer Research, 14(5):6-8. May, Davis, A., Sitaram, P. A concurrent Process Model for Software Development, Software Engineering Notes, ACM Press, 19(2): 38-51, Dyer, M. The Cleanroom Approach to Quality Software Development. Wiley, Graham, I. Métodos orientados a objetos, Adison-Wesley, Henderson-Sellers, B., Edwards, J. M. The fountain Model for object-oriented systems development, Object Magazine, julio/agosto, pp 71-79, Henderson-Sellers, B., Edwards, J. M. The object-oriented systems life cycle, Communications of the ACM, 33(9): , IEEE. IEEE Software Engineering Standards Collection 1999 Edition. Volume 2: Process Standards. IEEE Computer Society Press, ISO/IEC. Information Technology Software Life Cycle Processes. Technical ISO/IEC 12207:1995(E),

21 Bibliografía Jacobson, I., Booch, G., Rumbaugh, J. El Proceso Unificado de Desarrollo, Addison Wesley, Kerr, J., Hunter, R. Inside RAD, McGraw-Hill, Kruchten, P. Un processus de développement de logiciel itératif et centré sur lárchitecture, Proceedings of the 4th International Conference on Software Engineering. Toulouse, Paris, Martin, J. Rapid Application Development, Prentice Hall, Meyer, B. La Nueva Cultura del Desarrollo de Software, Systems, pp Septiembre, Meyer, B. Construcción de software orientado a objetos, Prentice Hall, Mills, H. D., Dyer, M., Linger, R. Cleanroom Software Engineering, IEEE Software, 4(5): September Muller, P. A. Modelado de objetos con UML, Eyrolles-Ediciones Gestión 2000, Nierstrasz,O., Gibbs, S.J., Tsichritzis, D. Component-Oriented Software Development. CACM, 35(9): , Piattini, M.G. et al. Análisis y diseño detallado de aplicaciones Informáticas de Gestión, Rama, Pressman, R. S. Ingeniería del Software, un enfoque práctico, 4ª Edición. Mc Graw Hill, Pressman, R. S. Ingeniería del Software, un enfoque práctico, 5ª Edición. Mc Graw Hill, Royce, W. W. Managing the Development of Large Software Systems: Concepts and Techniques, In Proceedings WESCON. August, Rumbaugh, J. Over the waterfall and into the whirlpool, JOOP, mayo, pp 23-26, Sommerville, I. Software Engineering, 6 th ed., Addison Wesley,

TEMA 2 Modelos de proceso del software

TEMA 2 Modelos de proceso del software TEMA 2 Modelos de proceso del software María N. Moreno García Departamento de Informática y Automática Universidad de Salamanca Contenidos 1. Conceptos básicos 2. Procesos del ciclo de vida 3. Modelos

Más detalles

Cristian Blanco www.cristianblanco.es

Cristian Blanco www.cristianblanco.es 3.1.- INTRODUCCIÓN Para realizar el desarrollo de cualquier proyecto de software es necesario llevar una sistemática de trabajo, que nos asegure el éxito del mismo. Lo que tenemos que evitar, en el desarrollo

Más detalles

CICLO DE VIDA DEL SOFTWARE. Una aproximación lógica a la adquisición, el suministro, el desarrollo, la explotación y el mantenimiento del software

CICLO DE VIDA DEL SOFTWARE. Una aproximación lógica a la adquisición, el suministro, el desarrollo, la explotación y el mantenimiento del software 3.010 CONCEPTO DE CICLO DE VIDA Una aproximación lógica a la adquisición, el suministro, el desarrollo, la explotación y el mantenimiento del software IEEE 1074 Un marco de referencia que contiene los

Más detalles

CICLO DE VIDA DEL SOFTWARE

CICLO DE VIDA DEL SOFTWARE CICLO DE VIDA DEL SOFTWARE 1. Concepto de Ciclo de Vida 2. Procesos del Ciclo de Vida del Software 3. Modelo en cascada 4. Modelo incremental 5. Modelo en espiral 6. Prototipado 7. La reutilización en

Más detalles

Tema 2. Ingeniería del Software I feliu.trias@urjc.es

Tema 2. Ingeniería del Software I feliu.trias@urjc.es Tema 2 Ciclo de vida del software Ingeniería del Software I feliu.trias@urjc.es Índice Qué es el ciclo de vida del Software? El Estándar 12207 Modelos de proceso Qué es el Ciclo de Vida del SW? Definición

Más detalles

Modelos de desarrollo de software. septiembre de 2007 1

Modelos de desarrollo de software. septiembre de 2007 1 Modelos de desarrollo de software septiembre de 2007 1 Referencias básicas Ingeniería de software. Un enfoque práctico. Pressman, R. Quinta edición. Mc. Graw Hill 2002 Ingeniería de software. Sommerville,

Más detalles

Ciclo de vida del Software

Ciclo de vida del Software Tema 2: Ciclo de vida del Software Marcos López Sanz Índice Qué es el ciclo de vida del Software? La norma 12207-2008 Modelos de desarrollo Qué es el Ciclo de Vida del SW? Es una sucesión de etapas por

Más detalles

Ingeniería de Software I

Ingeniería de Software I Ingeniería de Software I Agenda Objetivo. Unidades de aprendizaje. Formas de evaluación. Bibliografía. 2 Datos del profesor Correo electrónico: egonzalez@upemor.edu.mx Asesorías Jueves de 11:00 a 13:00

Más detalles

Fundamentos de Ingeniería del Software. Capítulo 7. Modelos del ciclo de vida del software

Fundamentos de Ingeniería del Software. Capítulo 7. Modelos del ciclo de vida del software Fundamentos de Ingeniería del Software Capítulo 7. Modelos del ciclo de vida del software Caminar sobre las aguas y desarrollar programas a partir de las especificaciones es fácil, si ambas están congeladas

Más detalles

Programación orientada a

Programación orientada a Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación

Más detalles

Departamento de Informática y Sistemas Facultad de Informática Campus Universitario de Espinardo Murcia Profesor: Juan Antonio López Quesada

Departamento de Informática y Sistemas Facultad de Informática Campus Universitario de Espinardo Murcia Profesor: Juan Antonio López Quesada Departamento de Informática y Sistemas Facultad de Informática Campus Universitario de Espinardo Murcia Profesor: Juan Antonio López Quesada Índice de contenidos 1.- El proceso software 2.- Estándares

Más detalles

INTRODUCCIÓN AL DESARROLLO DEL SOFTWARE

INTRODUCCIÓN AL DESARROLLO DEL SOFTWARE INTRODUCCIÓN AL DESARROLLO DEL SOFTWARE 2.1.- CONCEPTO DE CICLO DE VIDA El problema más importante en cualquier departamento de sistemas de información de una empresa es definir un marco de eferencia común

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

Modelos de Proceso Tradicionales

Modelos de Proceso Tradicionales Modelos de Proceso Tradicionales Capitulo 2,QJHQLHUtDGHO6RIWZDUH (VSHFLDOL]DFLyQHQ*HUHQFLDGH6LVWHPDVGH,QIRUPDFLyQ 8QLYHUVLGDG6DQWLDJRGH&DOL Profesor: MSc. MIGUEL ANGEL NIÑO ZAMBRANO Programación: Tiempo

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

SCOPE PLANNING IN SOFTWARE PROJECTS PLANIFICACIÓN DEL ALCANCE EN PROYECTOS DE SOFTWARE

SCOPE PLANNING IN SOFTWARE PROJECTS PLANIFICACIÓN DEL ALCANCE EN PROYECTOS DE SOFTWARE Recibido: 23 de febrero de 2011 Aceptado: 29 de marzo de 2011 SCOPE PLANNING IN SOFTWARE PROJECTS PLANIFICACIÓN DEL ALCANCE EN PROYECTOS DE SOFTWARE MSc. Ailin Orjuela, MSc. Luis Alberto Esteban, MSc.

Más detalles

Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 2: EL CICLO DE VIDA DEL SOFTWARE

Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 2: EL CICLO DE VIDA DEL SOFTWARE Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 2: EL CICLO DE VIDA DEL SOFTWARE 1 DEFINICIÓN DE CICLO DE VIDA DEL SOFTWARE ISO/IEC 12207-1 Marco de referencia que contiene

Más detalles

INGENIERÍA DEL SOFTWARE I Tema 2. Procesos de Ingeniería del Software. Univ. Cantabria Fac. de Ciencias Francisco Ruiz

INGENIERÍA DEL SOFTWARE I Tema 2. Procesos de Ingeniería del Software. Univ. Cantabria Fac. de Ciencias Francisco Ruiz INGENIERÍA DEL SOFTWARE I Tema 2 Procesos de Ingeniería del Software Univ. Cantabria Fac. de Ciencias Francisco Ruiz Objetivos Comprender las relaciones entre los conceptos de proceso software, ciclo de

Más detalles

DESARROLLO DE SOFTWARE CON CALIDAD PARA UNA EMPRESA

DESARROLLO DE SOFTWARE CON CALIDAD PARA UNA EMPRESA DESARROLLO DE SOFTWARE CON CALIDAD PARA UNA EMPRESA Resumen AUTORIA CARLOS CABALLERO GONZÁLEZ TEMATICA INFORMÁTICA ETAPA ESO-BACHILLERATO-CFGM(ESI,ASI,DSI) Se describe la revolución que supuso la incursión

Más detalles

Instruir al alumno con los conceptos, modelos, teorías y principios básicos estudiados en la Ingeniería de Software

Instruir al alumno con los conceptos, modelos, teorías y principios básicos estudiados en la Ingeniería de Software Universidad de Colima Dirección General de Educación Superior Facultad de Ingeniería Mecánica y Eléctrica Licenciatura en Ingeniería en Sistemas Computacionales I. DATOS GENERALES P R O G R A M A A N A

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

14. Ingeniería de software. Ing. Alejandro Adorjan

14. Ingeniería de software. Ing. Alejandro Adorjan 14. Ing. Alejandro Adorjan : un enfoque en ingeniería de requerimientos Introducción La ingeniería de software es una disciplina que estudia la aplicación de la teoría, el conocimiento y la práctica de

Más detalles

TEMA 1 INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE. Dr. José Ignacio Peláez Sánchez E.T.S.I. Informática de Sistemas. 3 er Curso.

TEMA 1 INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE. Dr. José Ignacio Peláez Sánchez E.T.S.I. Informática de Sistemas. 3 er Curso. TEMA 1 INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE Dr. E.T.S.I. Informática de Sistemas. 3 er Curso. Año 2004/2005 Visión General Importancia de la Ingeniería del Software. Retraso en la llegada de la Ingeniería

Más detalles

Contenidos. Parte I - Introducción Capítulo 1 - Evolución. Capítulo 2 Condiciones de trabajo en el Desarrollo de Software

Contenidos. Parte I - Introducción Capítulo 1 - Evolución. Capítulo 2 Condiciones de trabajo en el Desarrollo de Software IX Contenidos Prólogo... XIX Prefacio... XXI Guía de lectura...xxiii Parte I - Introducción Capítulo 1 - Evolución 1.1 Introducción... 2 1.2 Los hitos en la evolución histórica del desarrollo de software...

Más detalles

Tema 1 Introducción a la Ingeniería de Software

Tema 1 Introducción a la Ingeniería de Software Tema 1 Introducción a la Ingeniería de Software Curso Ingeniería de Software UMCA Profesor Luis Gmo. Zúñiga Mendoza 1. Software En la actualidad todo país depende de complejos sistemas informáticos. Podemos

Más detalles

cilred.com CICLO DE VIDA DEL SOFTWARE & METODOLOGIAS DE DESARROLLO DE SOFTWARE ING. EDUARDO CRUZ ROMERO eduar14_cr@hotmail.com cilred.

cilred.com CICLO DE VIDA DEL SOFTWARE & METODOLOGIAS DE DESARROLLO DE SOFTWARE ING. EDUARDO CRUZ ROMERO eduar14_cr@hotmail.com cilred. cilred.com CICLO DE VIDA DEL SOFTWARE & METODOLOGIAS DE DESARROLLO DE SOFTWARE ING. EDUARDO CRUZ ROMERO eduar14_cr@hotmail.com cilred.com CICLO DE VIDA DEL SOFTWARE Para apreciar un poco más el problema

Más detalles

Rational Unified Process (RUP)

Rational Unified Process (RUP) Rational Unified Process (RUP) Este documento presenta un resumen de Rational Unified Process (RUP). Se describe la historia de la metodología, características principales y estructura del proceso. RUP

Más detalles

Pontificia Universidad Católica Argentina

Pontificia Universidad Católica Argentina Carrera : Ingeniería Informática Pontificia Universidad Católica Argentina PROGRAMA DE INGENIERÍA DE SOFTWARE I 2010 Ubicación en el Plan de Estudios : 3 er Año, cuatrimestral Carga Horaria : 8 hs / semana

Más detalles

INGENIERÍA DEL SOFTWARE

INGENIERÍA DEL SOFTWARE INGENIERÍA DEL SOFTWARE Sesión No. 2 Nombre: Procesos de ingeniería del software INGENIERÍA DEL SOFTWARE 1 Contextualización La ingeniería de software actualmente es muy importante, pues con los avances

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

Ingeniería de Software

Ingeniería de Software Ingeniería de Software Tabla de Contenidos PARTE I INTRODUCCIÓN Capítulo 1: Evolución Los hitos en la evolución histórica del Desarrollo de Software Problemas y soluciones... Fallas, malas estimaciones

Más detalles

Interacción Persona - Ordenador

Interacción Persona - Ordenador Interacción Persona - Ordenador Diseño de la interfaz en la Ingeniería del Software Dr. Pedro Latorre Dra. Sandra Baldassarri Dra. Eva Cerezo Ingeniería del Software Ingeniería del Software: Definición

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

Aplicación de una Metodología basada en Mediciones para la Gestión de Calidad de Software

Aplicación de una Metodología basada en Mediciones para la Gestión de Calidad de Software Aplicación de una Metodología basada en Mediciones para la Gestión de Calidad de Software Jorge Bozo jbozo@inf.ucv.cl Escuela de Ingeniería Informática Universidad Católica de Valparaíso Valparaíso, Chile

Más detalles

Escuela Politécnica Superior. Proyectos de Desarrollo Software. Capítulo 5. daniel.tapias@uam.es. Dr. Daniel Tapias Curso 2014/ 15 PROYECTOS

Escuela Politécnica Superior. Proyectos de Desarrollo Software. Capítulo 5. daniel.tapias@uam.es. Dr. Daniel Tapias Curso 2014/ 15 PROYECTOS Escuela Politécnica Superior Proyectos de Desarrollo Software Capítulo 5 Dr. Daniel Tapias Curso 2014/ 15 daniel.tapias@uam.es PROYECTOS PROGRAMA DE LA ASIGNATURA Capítulo 1: Introducción. Capítulo 2:

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

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

Software. + Estructuras de Datos + Documentación

Software. + Estructuras de Datos + Documentación INT Introducción Software...2 Metodologías y Herramientas...5 Procesos de Software...8 Modelos de Proceso Software...9 Visión Genérica de la IS...15 Métrica Versión 3...17 Estructura Principal...20 Interfaces...22

Más detalles

Análisis de la gestión de configuración de software aplicada al modelo de espiral

Análisis de la gestión de configuración de software aplicada al modelo de espiral Análisis de la gestión de configuración de software aplicada al modelo de espiral Abstract No hay nada permanente, excepto el cambio Heráclito (540 475 A.C.)- Grecia Fernandez, Sebastian Osso, Mariano

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

Tema 2. El Ciclo de Vida del Software (ISG1-ITIG)

Tema 2. El Ciclo de Vida del Software (ISG1-ITIG) Tema 2. El Ciclo de Vida del Software (ISG1-ITIG) Grupo de Ingeniería del Software Antonio José Sáenz Albanés (C.T.O) Reconocimiento No Comercial Compartir Igual - 3.0 - España 1 Objetivos del Tema Qué

Más detalles

Departamento de Lenguajes y Sistemas Informáticos. Ciclo de vida del software

Departamento de Lenguajes y Sistemas Informáticos. Ciclo de vida del software El Ciclo de Vida Software Departamento de Lenguajes escuela técnica superior de ingeniería informática Grupo de Ingeniería a Software Febrero 2006 Versión original: Amador Durán Toro (septiembre 2004)

Más detalles

El Proceso de Desarrollo de Software. Diseño de Software Avanzado Departamento de Informática

El Proceso de Desarrollo de Software. Diseño de Software Avanzado Departamento de Informática El Proceso de Desarrollo de Software La Ingeniería del Software Ingeniería... La profesión en la que el conocimiento de las ciencias naturales y matemáticas, ganado con estudio, experiencia y práctica,

Más detalles

TEMA 1 Sistemas de información

TEMA 1 Sistemas de información TEMA 1 Sistemas de información María N. Moreno García Departamento de Informática y Automática Universidad de Salamanca Contenidos 1. Conceptos básicos 2. Elementos de un sistema de información 3. Estructura

Más detalles

Proceso de desarrollo de software

Proceso de desarrollo de software Introducción Proceso de desarrollo de software Un sistema informático está compuesto por hardware y software. En cuanto al hardware, su producción se realiza sistemáticamente y la base de conocimiento

Más detalles

Capítulo 12 Ingeniería de software: el proceso para el desarrollo de software

Capítulo 12 Ingeniería de software: el proceso para el desarrollo de software Capítulo 12 Ingeniería de software: el proceso para el desarrollo de software Por Alfredo Weitzenfeld Ridel y Silvia Guardati Buemo El desarrollo de software es una de las actividades más importantes de

Más detalles

Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases

Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases 3.2 TÉCNICA DE MODELADO DE OBJETOS (OMT) (JAMES RUMBAUGH). 3.2.1 Introducción. En este documento se trata tanto el OMT-1 como el OMT-2, el primero contenido en el Libro Modelado y Diseño Orientado (Metodología

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

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

GUÍA DOCENTE INGENIERÍA DEL SOFTWARE Grado en Ingeniería Informática. Profesorado: Juan Manuel Gimeno Illa Montserrat Sendin Veloso

GUÍA DOCENTE INGENIERÍA DEL SOFTWARE Grado en Ingeniería Informática. Profesorado: Juan Manuel Gimeno Illa Montserrat Sendin Veloso Año académico 2014-15 GUÍA DOCENTE INGENIERÍA DEL SOFTWARE Grado en Ingeniería Informática Profesorado: Juan Manuel Gimeno Illa Montserrat Sendin Veloso Información general de la asignatura Denominación

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

CAPÍTULO 3 LA INGENIERÍA DE SOFTWARE 3.1. INTRODUCCIÓN 3.2. FUNDAMENTOS

CAPÍTULO 3 LA INGENIERÍA DE SOFTWARE 3.1. INTRODUCCIÓN 3.2. FUNDAMENTOS CAPÍTULO 3 LA INGENIERÍA DE SOFTWARE 3.1. INTRODUCCIÓN En este capítulo se desean presentar los fundamentos en que se basa el software educativo (sección 3.2): los métodos, las herramientas y los procedimientos

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

Introducción a Rational Unified Process (RUP)

Introducción a Rational Unified Process (RUP) Qué es un Proceso de Desarrollo de SW? Introducción a Patricio Letelier letelier@dsic.upv.es Departamento Sistemas Informáticos y Computación (DSIC) (UPV) - España Define Quién debe hacer Qué, Cuándo y

Más detalles

El Proceso Unificado

El Proceso Unificado El Proceso Unificado de Desarrollo de Software Prof. Gustavo J. Sabio Alcance de la presentación QA Entradas Proceso de desarrollo Salida equipo Cliente sistemas Cliente necesidades actividades varias

Más detalles

Modelo Para el Desarrollo de los Procesos Administrativos de la Micro y Pequeña Industria de Software

Modelo Para el Desarrollo de los Procesos Administrativos de la Micro y Pequeña Industria de Software Modelo Para el Desarrollo de los Procesos Administrativos de la Micro y Pequeña Industria de Software García Ramírez Ma. Leticia, Luna Vilchis Patricia y Chaparro Sánchez Ricardo Facultad de Informática,

Más detalles

Un modelo de proceso es una representación abstracta de un proceso. Presenta una descripción de un proceso desde una perspectiva particular.

Un modelo de proceso es una representación abstracta de un proceso. Presenta una descripción de un proceso desde una perspectiva particular. El proceso software Un conjunto estructurado de actividades y resultados asociados que conducen a la creación de un producto de software Especificación: Definir la funcionalidad y las restricciones en

Más detalles

Gestión de. Requisitos previos. Carácter ECTS. Periodo NINGUNOO. Idiomas en Inglés. Departamento. Ciencias de. Presentación. Despacho y.

Gestión de. Requisitos previos. Carácter ECTS. Periodo NINGUNOO. Idiomas en Inglés. Departamento. Ciencias de. Presentación. Despacho y. = =drð^=al`bkqb qfqri^`flkbp=ab=do^al= TITULACIÓN: INGENIERÍA DE SISTEMAS DE INFORMACIÓN CURSO: Segundo ASIGNATURA: Ingeniería del Software I Nombre del Módulo o Materia al que pertenece la asignatura.

Más detalles

Documentando la arquitectura de software Principios básicos por Omar Gómez

Documentando la arquitectura de software Principios básicos por Omar Gómez Documentando la arquitectura de software Principios básicos por Omar Gómez En la actualidad, uno de los temas candentes que se habla dentro de la comunidad de desarrollo de software es el referente a las

Más detalles

IT Project Management Desarrollo de Software

IT Project Management Desarrollo de Software IT Project Management Desarrollo de Software Es posible una mezcla de Waterfall y Agile? Cómo se acerca el PMBOK a Agile? Autor: Norberto Figuerola Resulta muy frecuente que se suela confundir una aproximación

Más detalles

Evolución de Plantillas Genéricas para la descripción de Casos de Uso a Plantillas Genéricas para Análisis y Diseño

Evolución de Plantillas Genéricas para la descripción de Casos de Uso a Plantillas Genéricas para Análisis y Diseño Evolución de Plantillas Genéricas para la descripción de Casos de Uso a Plantillas Genéricas para Análisis y Diseño Ing. Marcela Daniele AC. Daniel Romero Dpto. de Computación. Facultad: Ciencias Exactas,

Más detalles

Ingeniería de software

Ingeniería de software Ingeniería de software MSC-0102 Nombre de la asignatura: Ingeniería de Software Línea de trabajo: Asignatura básica Tiempo de dedicación del estudiante a las actividades de: DOC TIS TPS Horas totales Créditos

Más detalles

Procesos de Ingeniería del Software

Procesos de Ingeniería del Software INGENIERÍA DEL SOFTWARE I Tema 3 Procesos de Ingeniería del Software Universidad Cantabria Facultad de Ciencias Juan Hernández, Francisco Ruiz Objetivos y Bibliografía Comprender las relaciones entre los

Más detalles

TRABAJO FINAL ESPECIALIDAD EN CONTROL Y GESTION DE SOFTWARE GESTIÓN DE CONFIGURACIÓN DE PRODUCTOS SOFTWARE EN ETAPA DE DESARROLLO

TRABAJO FINAL ESPECIALIDAD EN CONTROL Y GESTION DE SOFTWARE GESTIÓN DE CONFIGURACIÓN DE PRODUCTOS SOFTWARE EN ETAPA DE DESARROLLO TRABAJO FINAL ESPECIALIDAD EN CONTROL Y GESTION DE SOFTWARE GESTIÓN DE CONFIGURACIÓN DE PRODUCTOS SOFTWARE EN ETAPA DE DESARROLLO Autor: Lic. Claudio Jorge Rancán Directora: M.Ing. Paola Britos Julio 2003

Más detalles

Curso: El Proceso de Desarrollo de Software

Curso: El Proceso de Desarrollo de Software Curso: El Proceso de Desarrollo de Software EL PROCESO DE DESARROLLO DE SOFTWARE... 1 OBJETIVO...1 CONTENIDO...1 BIBLIOGRAFÍA...4 DOCENTE...4 MODALIDAD DEL DESARROLLO...4 El proceso de Desarrollo de Software

Más detalles

Programa de la asignatura Curso: 2009 / 2010 ANÁLISIS E INGENIERÍA DEL SOFTWARE (1296)

Programa de la asignatura Curso: 2009 / 2010 ANÁLISIS E INGENIERÍA DEL SOFTWARE (1296) Programa de la asignatura Curso: 2009 / 2010 ANÁLISIS E INGENIERÍA DEL SOFTWARE (1296) PROFESORADO Profesor/es: MARIA BELEN VAQUERIZO GARCIA - correo-e: belvagar@ubu.es FICHA TÉCNICA Titulación: INGENIERÍA

Más detalles

PROGRAMA ANALÍTICO PLAN DE ESTUDIOS 2011

PROGRAMA ANALÍTICO PLAN DE ESTUDIOS 2011 Asignatura: Asignatura: INGENIERÍA DE SOFTWARE I CARRERA : Licenciatura en Sistemas de Información (LSI) y Licenciatura en Ciencias de la Computación FCEFN. (LCC) AÑO: 3er. Año CREDITO HORARIO: 7 horas

Más detalles

Fundamentos de Ingeniería de Software [Modelos]

Fundamentos de Ingeniería de Software [Modelos] Fundamentos de Ingeniería de Software [Modelos] M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 13-I Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software

Más detalles

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO FACULTAD DE CS. QUIMICAS, FISICAS Y MATEMATICAS I. DATOS GENERALES DEPARTAMENTO ACADEMICO DE INFORMATICA SILABO 1.1 Asignatura : SISTEMAS DE INFORMACION II 1.2 Categoría : OE 1.3 Código : IF202AIN 1.4

Más detalles

INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN

INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN INVESTIGACIÓN DOCUMENTAL Alumno: Alejandra Virrueta Méndez Carrera: Ingeniería en Informática. Docente: Esmeralda Villegas Zamudio Asignatura: Fundamentos de

Más detalles

Ingeniería de Software Dr. Marcello Visconti Z. Ingeniería de Software

Ingeniería de Software Dr. Marcello Visconti Z. Ingeniería de Software Universidad Técnica Federico Santa María Departamento de Informática Ingeniería de Software Dr. Marcello Visconti Z. Programa Proceso de Software y Paradigmas de Desarrollo Gestión de Proyectos Fases del

Más detalles

Resumen. Introducción

Resumen. Introducción Arquitectura de software para Sistemas de Información Ambiental Urciuolo Adriana, Iturraspe Rodolfo, Parson Ariel, Esteban Natalia Universidad Nacional de la Patagonia San Juan Bosco Sede Ushuaia, Darwin

Más detalles

Proceso Unificado de Rational (RUP)

Proceso Unificado de Rational (RUP) Especialización en Telemática Proceso Unificado de Rational (RUP) Arquitecturas de Sistemas Telemáticos Dr. Ing. Álvaro Rendón Gallón Cali, mayo de 2012 Temario 2 Antecedentes Objetivos Características

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

PROCESO Y PROYECTO DE INGENIERIA DE SOFTWARE. Carlos Barra Peñaloza *

PROCESO Y PROYECTO DE INGENIERIA DE SOFTWARE. Carlos Barra Peñaloza * 1 PROCESO Y PROYECTO DE INGENIERIA DE SOFTWARE Carlos Barra Peñaloza * El Ciclo de Vida del Software. El Ciclo de Vida del Software (CVS) describe todo el proceso de software de un sistema dado, desde

Más detalles

Desarrollo y comercialización de productos de software [El proceso unificado]

Desarrollo y comercialización de productos de software [El proceso unificado] Desarrollo y comercialización de productos de software [El proceso unificado] M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 13-P Sergio Luis Pérez (UAM CUAJIMALPA) Curso de desarrollo

Más detalles

Preguntas y respuestas (rebatibles) sobre metodologías de desarrollo de software

Preguntas y respuestas (rebatibles) sobre metodologías de desarrollo de software Preguntas y respuestas (rebatibles) sobre metodologías de desarrollo de software Introducción Este documento recopila las preguntas, opiniones y respuestas que se produjeron en un pequeño curso sobre las

Más detalles

Fundamentos de Ingeniería del Software. Capítulo 11. Reutilización del software

Fundamentos de Ingeniería del Software. Capítulo 11. Reutilización del software Fundamentos de Ingeniería del Software Capítulo 11. Reutilización del software Reutilización del software. Estructura 1. Reutilización del software 2. Beneficios de la reutilización 3. Dificultades para

Más detalles

CONCEPTOS DE CALIDAD Y CALIDAD DEL SOFTWARE

CONCEPTOS DE CALIDAD Y CALIDAD DEL SOFTWARE CONCEPTOS DE CALIDAD Y CALIDAD DEL SOFTWARE INTRODUCCIÓN El avance informático actual es muy alto comparado con lo se tenía en los años 90, al hablar de desarrollo de software se hace más notable, en el

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

Programación del curso

Programación del curso Ingeniería Software 4º Físicas Programación del curso José M. Drake (drakej@unican.es) Patricia López Martínez ( lopezpa@unican.es ) Computadores y Tiempo Real Santander, 2008 Ingeniería de Programación

Más detalles

Tema III: Gestión de la Configuración. Diana Marcela Sánchez Fúquene Ingeniería del Software de Gestión

Tema III: Gestión de la Configuración. Diana Marcela Sánchez Fúquene Ingeniería del Software de Gestión Tema III: Gestión de la Configuración. Diana Marcela Sánchez Fúquene Ingeniería del Software de Gestión Introducción Gestión de la Configuración del Software (GCS / SCM) Def.- Arte de identificar, organizar,

Más detalles

Fundamentos de Ingeniería del Software. Capítulo 9. Métrica 3

Fundamentos de Ingeniería del Software. Capítulo 9. Métrica 3 Fundamentos de Ingeniería del Software Capítulo 9. Métrica 3 Métrica 3. Estructura 1. MÉTRICA - Objetivos 2. Ámbito de aplicación 3. Alcance del método 4. Versiones 5. MÉTRICA V.3 - Objetivos 6. Influencias

Más detalles

Fundamentos de Ingeniería del Software. Capítulo 6. El proceso del software

Fundamentos de Ingeniería del Software. Capítulo 6. El proceso del software Fundamentos de Ingeniería del Software Capítulo 6. El proceso del software Cap. 6. El proceso del software. Estructura 1. El proceso software 2. Estándares en ingeniería del software Utilidad de los estándares

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

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Análisis y Diseño de Sistemas : T-INF107

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Análisis y Diseño de Sistemas : T-INF107 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Tercero Requisitos Duración Horas Semana : 06 horas Versión : v.0110 II. SUMILLA: : COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería

Más detalles

SISTEMAS DE INFORMACIÓN II TEORÍA

SISTEMAS DE INFORMACIÓN II TEORÍA CONTENIDO: CICLO DE VIDA VISIÓN TRADICIONAL DEL CICLO DE VIDA DEL DESARROLLO DE SISTEMAS DE INFORMACIÓN STEMAS DE INFORMACIÓN Material diseñado y elaborado por: Prof. Luis Eduardo Mendoza M. Material revisado

Más detalles

Contenidos. Tema 3. El Método de desarrollo. El Proceso Unificado. Objetivos del tema. 3.1 Métodos actuales de desarrollo OO

Contenidos. Tema 3. El Método de desarrollo. El Proceso Unificado. Objetivos del tema. 3.1 Métodos actuales de desarrollo OO Tema 3. El Método de desarrollo. El Proceso Unificado Miguel A. Laguna Contenidos 3.1 Métodos actuales de desarrollo OO 3.1.1 Concepto de Método y Proceso 3.1.2 Generaciones de métodos OO 3.2 El Proceso

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

I GE IERÍA DEL SOFTWARE. Mª Dolores Carballar Falcón 28935146L

I GE IERÍA DEL SOFTWARE. Mª Dolores Carballar Falcón 28935146L I GE IERÍA DEL SOFTWARE. Mª Dolores Carballar Falcón 28935146L REFERE CIA AL SISTEMA EDUCATIVO ACTUAL. Los contenidos de este tema, están enfocados a introducir al alumno en el concepto de Ingeniería del

Más detalles

Ciclo de vida y Requerimientos de software. Laboratorio de Programación

Ciclo de vida y Requerimientos de software. Laboratorio de Programación Ciclo de vida y Requerimientos de software Laboratorio de Programación b d ó Parte 1 Un modelo es una estructura guía, abstracciones, marcos del proceso que pueden se extendidos y adaptados d para crear

Más detalles

PROCESOS DE DESARROLLO DE SOFTWARE Y MATERIALES EDUCATIVOS COMPUTARIZADOS SOFTWARE DEVELOPMENT PROCESS AND COMPUTER EDUCATIONAL MATERIALS

PROCESOS DE DESARROLLO DE SOFTWARE Y MATERIALES EDUCATIVOS COMPUTARIZADOS SOFTWARE DEVELOPMENT PROCESS AND COMPUTER EDUCATIONAL MATERIALS PROCESOS DE DESARROLLO DE SOFTWARE Y MATERIALES EDUCATIVOS COMPUTARIZADOS SOFTWARE DEVELOPMENT PROCESS AND COMPUTER EDUCATIONAL MATERIALS Victor Esteller vestelle@uc.edu.ve Elsy Medina emedina@uc.edu.ve

Más detalles

Diseño Basado en Componentes. Curso 2008/09

Diseño Basado en Componentes. Curso 2008/09 Tabla de contenidos Diseño Basado en Componentes Técnicas relacionadas con Reutilización Introducción: por qué reutilizar?, qué reutilizar? Técnicas: Ingeniería de dominios Líneas de productos (Product-lines)

Más detalles

Curso: Arquitectura de Software (201101-Nuevo Pensum) Profesor: Juan Bernardo Quintero Institución: Universidad de Antioquia

Curso: Arquitectura de Software (201101-Nuevo Pensum) Profesor: Juan Bernardo Quintero Institución: Universidad de Antioquia Curso: Arquitectura Software (201101-Nuevo Pensum) Profesor: Juan Bernardo Quintero Institución: Universidad Antioquia 1. Objetivo General Brindar a los estudiantes herramientas para facilitar el uso metodologías

Más detalles

Ges3ón de Proyectos So9ware

Ges3ón de Proyectos So9ware Ges3ón de Proyectos So9ware Tema 2.1 Integración Carlos Blanco Bueno Félix Óscar García Rubio Este tema se publica bajo Licencia: Crea5ve Commons BY- NC- ND 4.0 Objetivos Ampliar los conocimientos básicos

Más detalles

Guía Docente Curso 2012-2013

Guía Docente Curso 2012-2013 ESCUELA TÉCNIICA SUPERIIOR DE IINGENIIERÍÍA Guía Docente Curso 2012-2013 Titulación Ingeniería Informática DATOS DE LA ASIGNATURA * * Asignatura en experiencia piloto de implantación del sistema de créditos

Más detalles

Introducción ÍNDICE INTRODUCCIÓN...1 APORTACIONES DE MÉTRICA VERSIÓN 3...2

Introducción ÍNDICE INTRODUCCIÓN...1 APORTACIONES DE MÉTRICA VERSIÓN 3...2 Introducción ÍNDICE INTRODUCCIÓN...1 APORTACIONES DE MÉTRICA VERSIÓN 3...2 PROCESOS PRINCIPALES DE MÉTRICA VERSIÓN 3...3 PLANIFICACIÓN DE SISTEMAS DE INFORMACIÓN (PSI)...4 DESARROLLO DE SISTEMAS DE INFORMACIÓN...5

Más detalles

RUP. Rational Unified Process

RUP. Rational Unified Process RUP Rational Unified Process Rational Unified Process Basado en 6 mejores prácticas de la industria de software: Desarrollo incremental Administración de requisitos Uso de arquitecturas basadas en componentes

Más detalles