Fundamentos de Ingeniería de Software [Modelos]

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Fundamentos de Ingeniería de Software [Modelos]"

Transcripción

1 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 1 / 59

2 Modelos de proceso de software Modelos de proceso de software I Un proceso de software es una secuencia de actividades que conducen a la elaboración de un producto de software. El desarrollo puede ser desde cero o extendiendo y modificando software ya existente. Actividades básicas de un proceso de software. Especificación del software. Definir el alcance del proyecto. Clientes Ingenieros. Desarrollo del software. Diseño y Programación. Ingenieros. Validación del software. Pruebas. Ingenieros + Clientes. Evolución del software. Estar al día con las necesidades del cliente. Ingenieros + Clientes. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 2 / 59

3 Modelos de proceso de software Modelos de proceso de software II Las descripciones de los procesos deben considerar: El producto final. Diseño de software arquitectura del software. Roles/Funciones. Responsabilidades y funciones de los involucrados en el proyecto. Precondiciones y postcondiciones. Declaraciones válidas de actividades/módulos del proceso. Se analizarán los siguientes modelos de proceso de software: En cascada. Royce En espiral. Barry Bohem Incremental. Orientado a la reutilización. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 3 / 59

4 Modelos de proceso de software Modelo en cascada I Modelo en cascada Se denomina modelo en cascada por que cada fase del modelo conduce a otra. También se conoce como ciclo de vida del software. Consiste de cinco fases. Análisis y definición de requerimientos. Diseño del sistema y del software. Implementación y pruebas de unidad. Integración y pruebas del sistema. Operación y mantenimiento. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 4 / 59

5 Modelos de proceso de software Modelo en cascada Modelo en cascada II Análisis y definición de requerimientos Se debe definir el alcance del proyecto -servicios, restricciones, metas- mediante consultas/entrevistas con el cliente y usuarios del sistema. Se debe establecer un documento de especificación de requisitos que servirá como referencia de lo que se debe hacer. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 5 / 59

6 Modelos de proceso de software Modelo en cascada Modelo en cascada III Diseño del sistema y del software Se establecen los requerimientos hardware y/o software del sistema global. Se deben describir a detalle los componentes principales del software y las relaciones entre ellos. Lo anterior debe quedar plasmado en un documento del diseño del software. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 6 / 59

7 Modelos de proceso de software Modelo en cascada IV Modelo en cascada Implementación y pruebas de unidad Se lleva a cabo la programación del diseño del sistema. Se deben realizar prototipos y pruebas sobre estos, que permitan detectar y corregir errores. La pruebas consisten en verificar que cada componente cumpla con su especificación. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 7 / 59

8 Modelos de proceso de software Modelo en cascada Modelo en cascada V Integración y pruebas del sistema Los componentes se integran a fin de formar el sistema global. Se debe verificar el funcionamiento del nuevo sistema acorde a los requerimientos establecidos. Se libera la nueva versión al cliente para sus usuarios también realicen pruebas. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 8 / 59

9 Modelos de proceso de software Modelo en cascada VI Modelo en cascada Operación y mantenimiento Una versión final del sistema queda instalada y puesta en práctica. Los errores que resulten deben ser corregidos. Las mejoras requeridas deben ser realizadas. El sistema debe ser flexible para adecuarse a nuevos requerimientos. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 9 / 59

10 Modelos de proceso de software Modelo en cascada VII Modelo en cascada Ventajas La organización y actividades de las fases se encuentran bien definidas. Funciona bien para proyectos donde se encuentran bien definidos los requerimientos y el software que se desea. La planificación es sencilla pues existe una secuencia bien definida de los pasos del proceso de software. La calidad del producto final es alta. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 10 / 59

11 Modelos de proceso de software Modelo en cascada Modelo en cascada VIII Desventajas Las iteraciones pueden ser costosas. Lleva demasiado tiempo atravesar por todo el ciclo. Algunas fases pueden quedar pendientes. Las actualizaciones pueden ser costosas. Si el proyecto es muy grande, su revisión completa puede implicar mucho tiempo. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 11 / 59

12 Modelo en espiral I Modelos de proceso de software Modelo en espiral Es un modelo evolutivo. El modelo se puede visualizar como una espiral donde cada iteración es un conjunto de actividades. Las nuevas actividades se eligen en función de la iteración anterior. Cada giro se puede visualizar como una nueva versión del sistema. Es un enfoque más práctico. Existen diversas variantes de este modelo: Bohem, seis regiones, ganar-ganar. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 12 / 59

13 Modelos de proceso de software Modelo en espiral Modelo en espiral II Modelo de Bohem Planificación. En la primera iteración se realizan la recolección de requisitos y la planificación del proyecto. Después, la planificación puede ir cambiando en base a los comentarios del cliente. Análisis de riesgo. En la primera iteración se realiza el análisis de riesgo basado en los requisitos iniciales. Después, este se adecua a la reacción del cliente. Ingeniería. Una nueva versión del sistema es liberada. Evaluación del cliente. El cliente pone a prueba el sistema incluso puede poner la versión en producción. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 13 / 59

14 Modelos de proceso de software Modelo en espiral III Modelo en espiral Modelo de seis regiones Comunicación con el cliente. Se realiza la recolección de requisitos. Planificación. Planificación del proyecto -recursos, tiempo, etc.-. Análisis de riesgo. Análisis de riesgo basado en los requisitos. Tareas donde se ponen en claro los riesgos técnicos y todo lo relacionado al proyecto. Ingeniería. Construir toda la arquitectura del sistema. Construcción y adaptación. Programar, probar, instalar y dar soporte al usuario. Evaluación del cliente. Obtención de la reacción del cliente. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 14 / 59

15 Modelos de proceso de software Modelo en espiral IV Modelo en espiral Modelo ganar-ganar o teoría W [Boehm y Ross, 1989] Conjunto de precondiciones. Comprender la forma en que las personas quieren ganar. Establecer expectativas por parte de los implicados. Adecuar las tareas. Proceso de software. Establecer un plan realista. Planificar el proyecto. Identificar y gestionar los riesgos donde todos pierden o unos pierden y otros ganan. Mantener implicadas a las personas. Producto software. Adecuar el producto a las condiciones de éxito de los usuarios. Considerar a las personas que daran mantenimiento y soporte. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 15 / 59

16 Modelos de proceso de software Modelo en espiral V Modelo en espiral Ventajas Es un enfoque más realista en el desarrollo de sistemas. Es un modelo adaptativo. Existe mayor comunicación entre el desarrollador y el cliente. Durante la evolución del software se tienen diferentes prototipos. Se eliminan errores y al final se queda la mejor versión. Son mejores desarrollar con base en orientación a objetos. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 16 / 59

17 Modelos de proceso de software Modelo en espiral Modelo en espiral VI Desventajas Es difícil sostener y programar las interecciones con el cliente. Se requiere de gran habilidad para la evaluación de riesgos. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 17 / 59

18 Modelos de proceso de software Modelo incremental I Modelo incremental Como el modelo en espiral, este también es un modelo evolutivo. La idea es diseñar una implementación inicial y exponerla a los comentarios del usuario. La implementación pasa a través de varias versiones hasta llegar a un sistema final. Cada incremento o versión incorpora algunas de las funcionalidades que requiere el cliente. Las pimeras versiones incluyen las funciones más importantes. El cliente puede desde el inicio si lo que se desarrolla es lo que realmente requiere. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 18 / 59

19 Modelos de proceso de software Modelo incremental Modelo incremental II Bosquejo de descripción Se realiza un documento informal que contiene las principales funcionalidades deseables en el sistema. Este documento servirá como base para la especificación en forma. Especificación Contiene todos los requerimientos del cliente. El documento va evolucionando conforme avanza el proyecto y se adecua a los nuevos requerimientos por parte del cliente. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 19 / 59

20 Modelos de proceso de software Modelo incremental Modelo incremental III Desarrollo Se realiza la implementación con base en los requerimientos de cada iteración. Los errores encontrados en la iteración anterior son corregidos y se agrega la nueva funcionalidad. Validación El cliente evalúa la versión actual del sistema y proporciona las nuevas prioridades a los desarrolladores. Los desarrolladores obtienen retroalimentación constante por parte del cliente a través de las múltiples demostraciones del software. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 20 / 59

21 Modelos de proceso de software Modelo incremental IV Modelo incremental Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 21 / 59

22 Modelos de proceso de software Modelo incremental V Modelo incremental Ventajas Menor costo de desarrollo, pues la documentación es revisada y actualizada más frecuentemente. Es más fácil obtener retroalimentación del cliente. Para el cliente son más palpables los avances realizados a través de las demostraciones de software. La entrega de un software útil - aunque posiblemente no terminado- hacia el cliente se realiza en menor tiempo. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 22 / 59

23 Modelos de proceso de software Modelo incremental Modelo incremental VI Desventajas Las entregas deben ser frecuentes con el objetivo de poder medir el avance. Si no se cuenta con el suficiente personal trabajando sobre el proyecto puede resultar contraproducente. Si el software no tiene bases fléxibles los cambios pueden degradar el sistema. La incorporación de demasiados cambios puede resultar más difícil y costoso. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 23 / 59

24 Modelos de proceso de software Modelo orientado a la reutilización Modelo orientado a la reutilización I Algunos productos de software son desarrollados reutilizando diseños y/o componentes. Es una estrategia propuesta por Douglas McIlroy (Laboratorios Bell - AT&T Bell Laboratories and Bell Telephone Laboratories-) en Este modelo puede ir de la mano con otros modelos de software. Los componentes basados en reutilización pueden ser modificados para expander su funcionalidad. Componentes típicos a reutilizarse: Servicios Web. Disponibles de forma remota. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 24 / 59

25 Modelos de proceso de software Modelo orientado a la reutilización Modelo orientado a la reutilización II Colecciones de objetos. Que se agregan como parte de un marco de componentes (NET, J2EE, Compuware). Sistemas de software indipendientes. De uso específico. Consiste de seis etapas: Especificación de requerimientos. Análisis de componentes. Modificación de requerimientos. Diseño del sistema con reutilización. Desarrollo e integración. Validación del sistema. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 25 / 59

26 Modelos de proceso de software Modelo orientado a la reutilización Modelo orientado a la reutilización III Hewlett-Packard ha tenido éxito utilizando esta filosofía. Libro: Software reuse: Architecture process and organization for business success. Ivar Jacobson, Martin Griss, Patrik Jonsson, ACM Press, Martin Gris de Hewlett-Packard, Ivar Jacobso de Ericsson, Patrik Jonsson de Rational Software Corporation (Suecia). Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 26 / 59

27 Modelos de proceso de software Modelo orientado a la reutilización Modelo orientado a la reutilización IV Análisis de componentes Se realiza una búsqueda de los componentes más adecuados para cumplir con los requerimientos. Pocas veces la coincidencia es exacta. Modificación de requerimientos Se replican los componentes y se modifican para adecuarse a los requerimientos. La modificación puede consistir en ligeros cambios o extensión de la funcionalidad. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 27 / 59

28 Modelos de proceso de software Modelo orientado a la reutilización Modelo orientado a la reutilización V Diseño del sistema con reutilización Se diseña el marco conceptual o se modifica uno existente. Se debe denotar la diferencia entre los componentes reciclados y los nuevos. Desarrollo e integración Se hacen la implementaciones necesarias. Se realiza la integración de los componentes para la creación del producto final. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 28 / 59

29 Modelos de proceso de software Modelo orientado a la reutilización Modelo orientado a la reutilización VI Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 29 / 59

30 Modelos de proceso de software Modelo orientado a la reutilización Modelo orientado a la reutilización VII Ventajas Confiabilidad creciente. El software reutilizable ha sido probado más veces. Reducción de riesgo de proceso. Se conoce ya el costo del software existente. Intervención de especialistas. No se reinventa la rueda y los componentes encapsulan el conocimiento de varios expertos. Cumplimiento de estándares. Las aplicaciones presentan los mismos formatos de menús para los usuarios. Desarrollo acelerado. El software llega más rapido al mercado. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 30 / 59

31 Modelos de proceso de software Modelo orientado a la reutilización Modelo orientado a la reutilización VIII Desventajas Costos crecientes de mantenimiento. Si no se tiene acceso al código fuente no se podrán resolver incompatibilidades con el sistema. Falta de herramientas. Puede ser que los componentes no sean flexibles. No aceptación del software existente. No se tiene confianza sobre el software ya existente y siempre se desea rescribir con la intención de mejorar. Difícil comprensión y adaptación de los componentes a reutilizar. Los desarrolladores deben conocer todos los componentes y sus requerimientos. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 31 / 59

32 Actividades del proceso de software Actividades del proceso de software I Un proceso de software debe considerar la relación entre las actividades técnicas, colaborativas y administrativas con el objetivo de especificar, diseñar, implementar y probar un producto de software. Los desarrolladores de software se apoyan de múltiples herramientas para la creación de software. Editores de diseño. Diccionarios de datos. Compiladores. Depuradores. (Debugger) Software para la construcción del sistema. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 32 / 59

33 Actividades del proceso de software Actividades del proceso de software II La combinación de estas herramientas se conoce como Ambiente de Desarrollo Interactivo -Integrated Development Environment IDE-. Eclipse. Ver C, C++, Java, ActiveState Komodo. Ver. 7. IntelliJ IDEA. Ver Oracle JDeveloper. Ver. 11g. NetBeans. Ver Microsoft Visual Studio. Ver MyEclipse. Ver Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 33 / 59

34 Actividades del proceso de software Actividades del proceso de software III WinDev y WebDev. Ver Uniface. Ver Actividades que automatizan los IDE s: Modelos de sistemas gráficos. Generación de código a partir de los modelos de sistemas gráficos. Producción de interfaces de usuario a partir de descripciones del usuario. Depuración del programa. Traducción automatizada de programas escritos. Estudiaremos las 4 principales actividades del proceso. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 34 / 59

35 Actividades del proceso de software Especificación del software I Especificación del software La especificación del software -requerimientos- consiste en comprender y definir los servicios que requiere el sistema. Además se deben identificar las restricciones sobre la operación y el desarrollo del sistema. Los errores en esta etapa conducen a problemas en el futuro. El objetivo es elaborar el documento de requerimientos que cumplirá el sistema. Tal documento puede presentar dos niveles de abstracción: detallado del sistema y de usuario. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 35 / 59

36 Actividades del proceso de software Especificación del software Especificación del software II Estudio de factibilidad Las necesidades del usuario se cubren con las tecnologías actuales?. Costo-beneficio sujeto a restricciones presupuestales y de tiempo. Se decidirá si se continúa o no con un análisis más detallado. Obtención y análisis de requerimientos Consiste en derivar los requerimientos en base a sistemas existentes, necesidades de los usuarios, análisis de las tareas, entre otros. Desarrollar prototipos puede ayudar a entender lo requerido. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 36 / 59

37 Actividades del proceso de software Especificación del software Especificación del software III Especificación de requerimientos Consiste en plasmar en un documento la información recopilada. Se contemplan los requerimientos del usuario y los del sistema. Validación de requerimientos Se verifica que los requerimientos sean realistas, coherentes y completos. Se corrigen los posibles errores encontrados en el documento. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 37 / 59

38 Actividades del proceso de software Especificación del software IV Especificación del software Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 38 / 59

39 Actividades del proceso de software Desarrollo e implementación I Desarrollo e implementación Esta estapa consiste en convertir las especificaciones en un sistema real. Un diseño de software implica describir la estructura del software a implementar, los componentes, las estructuras de datos a utilizar, las interfaces y los algoritmos. A los que realizan esta labor se le conoce como Arquitectos de Software -Software Architect-. Se parte de un diseño inicial que puede ser modificado o incrementado. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 39 / 59

40 Actividades del proceso de software Desarrollo e implementación II Desarrollo e implementación Se debe considerar que el software puede interactuar con otros sistemas. Sistema operativo Bases de datos Middleware Aplicaciones Si el sistema procesa ciertos datos entonces en el diseño del sistema se deben describir tales datos. Las herramientas de software permiten generar esqueletos a partir de diseños. Cada programador sigue su propia filosofía de desarrollo. Facíl Dfifícil Difícil Fácil Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 40 / 59

41 Actividades del proceso de software Desarrollo e implementación Desarrollo e implementación III Cada programador debe desarrollar pruebas del código que desarrollo y en su caso depurarlo. Es importante considerar múltiples casos de prueba. Diseño arquitectónico Se identifica la estructura global del sistema, los principales componentes y sus relaciones. Diseño de la base de datos Se crea el modelo -ER- de la base de datos y como será su representación física. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 41 / 59

42 Actividades del proceso de software Desarrollo e implementación Desarrollo e implementación IV Diseño de interfaz Se definen la interfaces entre los componentes. Los componentes deben ser como cajas negras para otros componentes. Si ya se cuenta con las especificaciones de la interfaz, los componentes se pueden desarrollar de forma concurrente. Diseño de componentes Se diseña el funcionamiento de cada componente. Cada programador se encarga del cómo teniendo siempre en cuenta el qué. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 42 / 59

43 Actividades del proceso de software Desarrollo e implementación V Desarrollo e implementación Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 43 / 59

44 Actividades del proceso de software Validación de software I Validación de software La validación del software consiste en probar que un sistema cumple tanto con sus especificaciones como con las espectativas del cliente. La principal técnica de validación consiste en utilizar datos ficticios para probar el sistema. Generalmente las pruebas van de lo particular a lo general. Defectos a un nivel global puede implicar el volver a verificar componentes ya revisados. Este es un proceso totalmente iterativo. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 44 / 59

45 Actividades del proceso de software Validación de software Validación de software II Prueba de desarrollo Es un proceso realizado por los programadores. Cada componente se prueba de forma independiente. Existen herramientas que automatizan este proceso o bien pueden ser creadas las propias. JUnit in Action, Petar Tahchiev, Felipe Leme, Vincent Massol and Gary Gregory, 2nd Ed Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 45 / 59

46 Actividades del proceso de software Validación de software Validación de software III Pruebas del sistema El objetivo es descubrir errores de las interacciones entre los componentes. También se busca verificar que el sistema cumple con los requerimientos funcionales. Puede consistir de varias etapas. Pruebas de aceptación El sistema se pone a prueba con datos reales. Los datos reales suelen revelar problemas no detectados con los datos ficticios. Permiten observar el rendimiento global del sistema. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 46 / 59

47 Actividades del proceso de software Validación de software IV Validación de software Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 47 / 59

48 Actividades del proceso de software Evolución del software I Evolución del software El software, a diferencia del hardware, puede ser modificado más facilmente. Es necesario que el software se adapte a las condiciones actuales: Avances tecnológicos. Cambios en el proceso de negocio. Cambios en los sistemas operativos o incluso el hardware. Nuevas necesidades del cliente. Raras veces el software creado es invariante a lo largo de su ciclo de vida. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 48 / 59

49 Actividades del proceso de software Evolución del software II Evolución del software Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 49 / 59

50 El Proceso Unificado El Proceso Unificado El Proceso Unificado Racional -Rational Unified Process RUPfue creado por Philippe Kruchten en Su antecesor es fue el Rational Objectory Process de Este es un modelo híbrido que considera la buena práctica en especificación y diseño y esta de acuerdo con la entrega de prototipos y entrega incremental. Este modelo puede ser utilizado según tres enfoques: Dinámico. Resalta las fases del modelo en el tiempo. Cliente. Estático. Presenta las actividades que se establecen para el proceso. Desarrolladores. Práctico. Sugiere buenas prácticas a utilizar durante el proceso. Desarrolladores. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 50 / 59

51 El Proceso Unificado Fases del Proceso Unificado Fases del Proceso Unificado I Inicio Consiste en modelar el problema del cliente/empresa. Se deben identificar todas las entidades externas (personas y sistemas) que interactuarán con el sistema. Se deben identificar los requisitos necesarios para resolver el problema. Se valora la aportación del sistema al cliente/empresa. Se establece el alcance del proyecto. Pueden generarse algunas estimaciones imprecisas. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 51 / 59

52 El Proceso Unificado Fases del Proceso Unificado Fases del Proceso Unificado II Elaboración Se desarrolla la comprensión del problema. Se resuelven los altos riesgos. Puede que se encuentren más requisitos y se redefina el alcance. Las estimaciones se vuelven más realistas. Se establece un marco conceptual arquitectónico del sistema. Se establecen los casos de uso UML, el diseño arquitectónico y la planificación del proyecto. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 52 / 59

53 El Proceso Unificado Fases del Proceso Unificado Fases del Proceso Unificado III Construcción Consiste en el diseño, programación y pruebas del sistema. Al finalizar esta etapa debe entregarse un software funcionando y la documentación asociada. Transición Consiste en liberar la versión a los usuarios para que la usen en el entorno real. Es una fase costosa y problemática. La documentación del sistema debe ir completamente acorde a éste. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 53 / 59

54 El Proceso Unificado Actividades de ingeniería del Proceso Unificado Actividades de ingeniería del Proceso Unificado I Modelado del negocio Se modelan los procesos del negocio utilizando los casos de uso de la empresa. Requerimientos Se identifican los actores del sistema y se desarrollan los propios casos de uso. Análisis y diseño Se crea y documenta el diseño del sistema mediante modelos arquitectónicos, de componentes, de objetos y de secuencias. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 54 / 59

55 El Proceso Unificado Actividades de ingeniería del Proceso Unificado Actividades de ingeniería del Proceso Unificado II Administración del proyecto Debe existir una planificación que cumpla con las restricciones de costo y tiempo. Además se deben cubrir las necesidades y expectativas del cliente. Entorno Se porporcionan al equipo de desarrollo las herramientas adecuadas al producto que se desea crear. Implementación Se implementan y estructuran los componentes del sistema. La generación automática de código puede acelerar esta actividad. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 55 / 59

56 El Proceso Unificado Actividades de ingeniería del Proceso Unificado Actividades de ingeniería del Proceso Unificado III Pruebas Son un proceso iterativo que va de la mano con la implementación. Administración de la configuración Consiste de varias actividades: Se realiza el ensamblaje de los componentes, librerías, datos y la compilación para crear el ejecutable del sistema. Se realiza la administración de los cambios así como de las versiones. Despliegue Se libera el producto hacia los usuarios. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 56 / 59

57 El Proceso Unificado Actividades de ingeniería del Proceso Unificado Actividades de ingeniería del Proceso Unificado IV Tomado de Unificado Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 57 / 59

58 El Proceso Unificado Buenas prácticas del Proceso Unificado Buenas prácticas del Proceso Unificado I Desarrollo de software de manera interactiva Realizar el desarrollo en base a las prioridades del cliente. Gestión de requerimientos Documentar explícitamente los requerimientos y realizar los cambios necesarios sobre estos. Evaluar el impacto de cambios en el sistema antes de aceptarlos. Usar arquitecturas basadas en componentes Estructurar la arquitectura del sistema en base a componentes. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 58 / 59

59 El Proceso Unificado Buenas prácticas del Proceso Unificado Buenas prácticas del Proceso Unificado II Software modelado visualmente Utilizar modelos UML para refresentar procesos en la fases y actividades de ingeniería del Proceso Unificado. Verificar la calidad del software Asegurar que el software cumple con los estándares de calidad establecidos en la empresa. Controlar los cambios al software Gestionar los cambios mediante un controlador de versiones. Además se deben documentar los procedimientos y todo lo necesario para la configuración del sistema. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de fundamentos de ing. de software 59 / 59

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

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

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

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

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

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

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

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

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

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

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

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

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

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 MSDN Ingeniería de Software...1 Ingeniería del Software_/_ Ingeniería y Programación...1 Análisis de Requerimientos...2 Especificación...3 Diseño...4 Desarrollo en Equipo...5 Mantenimiento...6

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

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

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

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

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

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

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

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

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

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

El modelo de ciclo de vida cascada, captura algunos principios básicos:

El modelo de ciclo de vida cascada, captura algunos principios básicos: Ciclo de Vida del Software Un modelo de ciclo de vida define el estado de las fases a través de las cuales se mueve un proyecto de desarrollo de software. El primer ciclo de vida del software, "Cascada",

Más detalles

Empresa Financiera Herramientas de SW Servicios

Empresa Financiera Herramientas de SW Servicios Empresa Financiera Herramientas de SW Servicios Resulta importante mencionar que ésta es una empresa cuya actividad principal está enfocada a satisfacer las necesidades financieras de los clientes, a través

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

Planeación del Proyecto de Software:

Planeación del Proyecto de Software: Apéndice A. Cuestionarios del Sistema Evaluador Nivel2. Requerimientos de Administración: Goal 1: Los requerimientos del sistema asociados a software están bien controlados y existe un estándar para los

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

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

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

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

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

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

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

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

Más detalles

LISTA DE CHEQUEO NORMA NTC ISO 9001:2000 No. REQUISITOS EXISTE ESTADO OBSERVACIONES D: Documentado I: Implementado M: Mejorar SI NO D I M

LISTA DE CHEQUEO NORMA NTC ISO 9001:2000 No. REQUISITOS EXISTE ESTADO OBSERVACIONES D: Documentado I: Implementado M: Mejorar SI NO D I M No. REQUISITOS EXISTE ESTADO OBSERVACIONES 4. SISTEMA DE GESTION DE LA CALIDAD 4.1 Requisitos Generales La organización debe establecer, documentar, implementar y mantener un S.G.C y mejorar continuamente

Más detalles

Ciclo de Vida del Desarrollo de un Sistema de Información. Departamento de Ingeniería Industrial Universidad de Chile

Ciclo de Vida del Desarrollo de un Sistema de Información. Departamento de Ingeniería Industrial Universidad de Chile Ciclo de Vida del Desarrollo de un Sistema de Información Departamento de Ingeniería Industrial Universidad de Chile Temario Noción de un Ciclo de Vida Ventajas y Desventajas Modelos de Ciclos de Vida

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

rg.o cm a Espec e i c fica c ci c ó i n ó n d e e r e r q e uer e i r mi m en e tos o l@ rza e b Di D s i e s ño d e b as a e s s s d e d at a o t s

rg.o cm a Espec e i c fica c ci c ó i n ó n d e e r e r q e uer e i r mi m en e tos o l@ rza e b Di D s i e s ño d e b as a e s s s d e d at a o t s Especificación de requerimientos Diseño de bases de datos Documento de especificación del sistema 1. Definición del problema 2. Descripción funcional 2. 3. Restricciones 4. Diagramas de flujo de datos

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

CLASE 2: INTRODUCCIÓN A LA ING. DE SOFTWARE. MODELOS DE PROCESOS. MEJORES PRÁCTICAS. USB Ing. De Software. Prof. I. C. Martínez

CLASE 2: INTRODUCCIÓN A LA ING. DE SOFTWARE. MODELOS DE PROCESOS. MEJORES PRÁCTICAS. USB Ing. De Software. Prof. I. C. Martínez CLASE 2: INTRODUCCIÓN A LA ING. DE SOFTWARE. MODELOS DE PROCESOS. MEJORES PRÁCTICAS USB Ing. De Software. Prof. I. C. Martínez Ing. De Software Ingeniería de Software La Ingeniería de Software es la ciencia

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

Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta

Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta (Business Process Management, BPM). La Gerencia de los Procesos del Negocio: Se define como: "integración

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

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 Software. Es lo que se conoce como el ciclo de vida del software.

El Software. Es lo que se conoce como el ciclo de vida del software. El Software Hace referencia a los programas y toda la información asociada y materiales necesarios para soportar su instalación, operación, reparación, y mejora. Para construir un nuevo elemento software

Más detalles

Visión General GXflow. Última actualización: 2009

Visión General GXflow. Última actualización: 2009 Última actualización: 2009 Copyright Artech Consultores S. R. L. 1988-2009. Todos los derechos reservados. Este documento no puede ser reproducido en cualquier medio sin el consentimiento explícito de

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

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

http://www.informatizate.net

http://www.informatizate.net http://www.informatizate.net Metodologías De Desarrollo De Software María A. Mendoza Sanchez Ing. Informático - UNT Microsoft Certified Professional - MCP Analísta y Desarrolladora - TeamSoft Perú S.A.C.

Más detalles

Calidad de Sistemas de Información

Calidad de Sistemas de Información Calidad de Sistemas de Información Introducción (2) Concepto de calidad Conjunto de propiedades y características de un producto, proceso o servicio que le hace satisfacer las necesidades establecidas

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

Modelos de Ciclo de Vida de Desarrollo de Software en el Contexto de la Industria Colombiana de Software

Modelos de Ciclo de Vida de Desarrollo de Software en el Contexto de la Industria Colombiana de Software Modelos de Ciclo de Vida de Desarrollo de Software en el Contexto de la Industria Colombiana de Software Hugo F. Arboleda Jiménez. MSc. Docente-Investigador, Facultad de Ingenierías, Universidad de San

Más detalles

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio). 1 GLOSARIO A continuación se definen, en orden alfabético, los conceptos básicos que se han abordado a lo largo del desarrollo de la metodología para la gestión de requisitos bajo la Arquitectura Orientada

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

UNIVERSIDAD UNION BOLIVARIANA CARRERA DE INGENIERIA DE SISTEMAS

UNIVERSIDAD UNION BOLIVARIANA CARRERA DE INGENIERIA DE SISTEMAS UNIVERSIDAD UNION BOLIVARIANA CARRERA DE INGENIERIA DE SISTEMAS METODOLOGIAS AGILES PROCESO UNIFICADO AGIL (AUP) MATERIA : INGENIERIA SOFTWARE DOCENTE : LIC. ERVIN FLORES ESTUDIANTE : JORGE LUIS CORDERO

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

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

CAPÍTULO 1 Instrumentación Virtual

CAPÍTULO 1 Instrumentación Virtual CAPÍTULO 1 Instrumentación Virtual 1.1 Qué es Instrumentación Virtual? En las últimas décadas se han incrementado de manera considerable las aplicaciones que corren a través de redes debido al surgimiento

Más detalles

3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE

3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE 3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE Software Configuration Management (SCM) es una disciplina de la Ingeniería de Software que se preocupa de [Ber92] [Ber84] [Bou98] [Mik97]: Identificar y documentar

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

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

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

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

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

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

CONFIGURACIÓN DE LA METODOLOGÍA OPENUP V1.0. Centro Ideoinformática

CONFIGURACIÓN DE LA METODOLOGÍA OPENUP V1.0. Centro Ideoinformática CONFIGURACIÓN DE LA METODOLOGÍA OPENUP V1.0 Centro Ideoinformática Universidad de las Ciencias Informáticas Carretera a San Antonio Km 2 ½. Torrens. Boyeros. Ciudad de La Habana. Cuba Teléfono: + 53 (7)

Más detalles

Guía metodologíca para la gestión de proyectos de software basada en metodologías agiles, que integre las herramientas de seguimiento de actividades,

Guía metodologíca para la gestión de proyectos de software basada en metodologías agiles, que integre las herramientas de seguimiento de actividades, Guía metodologíca para la gestión de proyectos de software basada en metodologías agiles, que integre las herramientas de seguimiento de actividades, integración continua y repositorio distribuido de versiones.

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

Sistemas de gestión de la calidad Requisitos

Sistemas de gestión de la calidad Requisitos Sistemas de gestión de la calidad Requisitos 1 Objeto y campo de aplicación 1.1 Generalidades Esta Norma Internacional especifica los requisitos para un sistema de gestión de la calidad, cuando una organización

Más detalles

3. Horario laboral referencial: Lunes Viernes 8:00 a.m. a 6:00 p.m.

3. Horario laboral referencial: Lunes Viernes 8:00 a.m. a 6:00 p.m. Arquitecto de Datos 1. Línea de Negocios: Soluciones de Negocios 2. Funciones Específicas: Participar en la realización de las actividades técnicas de actualización y migraciones a versiones mejoradas

Más detalles

PERFILES OCUPACIONALES

PERFILES OCUPACIONALES PERFILES OCUPACIONALES A continuación se presenta la relación de los diferentes cargos que un ingeniero de sistemas de la Universidad de Lima puede desempeñar durante su vida profesional. También se presentan

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

Ingeniería de Software

Ingeniería de Software Ingeniería de Software 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. Definiciones

Más detalles

Modelo de Proceso de Desarrollo de Software

Modelo de Proceso de Desarrollo de Software Modelo de Proceso de Desarrollo de Software Documento de Actividades Gestión de Configuración (S.C.M.) Ingeniería de Software - Proyecto de Taller5 Andrea Delgado & Beatriz Pérez ÍNDICE ÍNDICE... 1 GESTIÓN

Más detalles

Gestión de la configuración en el software (SCM) Ingeniería de software Eduardo Ferreira, Martín Solari

Gestión de la configuración en el software (SCM) Ingeniería de software Eduardo Ferreira, Martín Solari Gestión de la configuración en el software (SCM) Ingeniería de software Eduardo Ferreira, Martín Solari 1 Temario Definiciones Problemas del cambio Elementos de la configuración Actividades de SCM Identificación

Más detalles

MACROPROCESO GESTIÓN TECNOLÓGICA

MACROPROCESO GESTIÓN TECNOLÓGICA Versión 1.0 Página 1 de 5 1. OBJETIVO Suministrar las fases para la puesta en producción de aplicaciones y sistemas de información desarrollados o adquiridos por el Instituto Colombiano de Bienestar Familiar

Más detalles

ADMINISTRACIÓN DE PROYECTOS

ADMINISTRACIÓN DE PROYECTOS ADMINISTRACIÓN DE PROYECTOS QUÉ ES LA ADMINISTRACIÓN DE PROYECTOS? Es la planeación, organización, dirección y control de los recursos para lograr un objetivo a corto plazo. También se dice que la administración

Más detalles

Aseguramiento de la Calidad

Aseguramiento de la Calidad ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ESTUDIO DE VIABILIDAD DEL SISTEMA... 2 ACTIVIDAD EVS-CAL 1: IDENTIFICACIÓN DE LAS PROPIEDADES DE CALIDAD PARA EL SISTEMA... 3 Tarea EVS-CAL 1.1: Constitución del Equipo

Más detalles

Unidades temáticas de Ingeniería del Software. Fases del proceso de desarrollo 4ª edición (2008)

Unidades temáticas de Ingeniería del Software. Fases del proceso de desarrollo 4ª edición (2008) Unidades temáticas de Ingeniería del Software Fases del proceso de desarrollo 4ª edición (2008) Facultad de Informática organización del desarrollo El ciclo de vida del software abarca el proceso de desarrollo,

Más detalles

Fundamentos de Ingeniería del Software. Capítulo 12. Herramientas CASE

Fundamentos de Ingeniería del Software. Capítulo 12. Herramientas CASE Fundamentos de Ingeniería del Software Capítulo 12. Herramientas CASE Herramientas CASE Estructura 1. Introducción 2. Características deseables 3. Componentes de una herramienta CASE 4. Taxonomías de herramientas

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

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

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

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

Instituto Nacional de Tecnología Industrial TESTING DE SOFTWARE

Instituto Nacional de Tecnología Industrial TESTING DE SOFTWARE Instituto Nacional de Tecnología Industrial TESTING DE SOFTWARE Laboratorio de Testing y Aseguramiento de Calidad de Software Disertante: A.C. Gabriel Miretti Agenda Presentación del Laboratorio de Testing

Más detalles

SOLICITUD DE DESARROLLO Y ACTUALIZACIÓN DE APLICACIONES G OBIERNO D E L A CIUDAD DE BUENOS AIRES

SOLICITUD DE DESARROLLO Y ACTUALIZACIÓN DE APLICACIONES G OBIERNO D E L A CIUDAD DE BUENOS AIRES G OBIERNO D E L A CIUDAD DE BUENOS AIRES D irección General Adjunta de Sistemas Infor máticos SOLICITUD DE DESARROLLO Y ACTUALIZACIÓN DE APLICACIONES Página 1 de 16 Fecha de creación: 25/02/2009 Tabla

Más detalles

Resumen General del Manual de Organización y Funciones

Resumen General del Manual de Organización y Funciones Gerencia de Tecnologías de Información Resumen General del Manual de Organización y Funciones (El Manual de Organización y Funciones fue aprobado por Resolución Administrativa SBS N 354-2011, del 17 de

Más detalles

RESUMEN. IV P á g i n a

RESUMEN. IV P á g i n a RESUMEN El Sistema Web para el Control de la Caja de Ahorros de SENECA, fue desarrollado siguiendo las fases establecidas por la Metodología RUP (Proceso Unificado de Rational). Las fases de esta metodología

Más detalles

Preguntas más frecuentes sobre PROPS

Preguntas más frecuentes sobre PROPS Preguntas más frecuentes sobre PROPS 1. Qué es un modelo? Un modelo es un marco común para toda la organización. Está alineado con los estándares de gestión de proyectos, como PMBOK, ISO10006, ISO9000

Más detalles

Análisis y Diseño de Aplicaciones

Análisis y Diseño de Aplicaciones Análisis y Diseño de Aplicaciones Ciclo de Vida Docente: T/RT Gonzalo Martínez CETP EMT Informática 3er Año Introducción En el desarrollo de sistemas, el ciclo de vida son las etapas por las que pasa un

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

SISTEMAS DE PLANEACIÓN DE RECURSOS EMPRESARIALES 2008

SISTEMAS DE PLANEACIÓN DE RECURSOS EMPRESARIALES 2008 2.1 FACTORES SEGÚN ERP s Propuesta metodológica para la gestión del conocimiento durante la implantación de sistemas ERP Propuesta metodológica La propuesta metodológica aquí desarrollada parte de un modelo

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

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

CAPITULO VI PLAN DE IMPLEMENTACIÓN DEL SISTEMA DE PRESUPUESTOS DE COSTOS DE TIEMPOS ESTÁNDARES DE CONFECCIÓN DE PRENDAS DE VESTIR DE TEJIDO DE PUNTO.

CAPITULO VI PLAN DE IMPLEMENTACIÓN DEL SISTEMA DE PRESUPUESTOS DE COSTOS DE TIEMPOS ESTÁNDARES DE CONFECCIÓN DE PRENDAS DE VESTIR DE TEJIDO DE PUNTO. 204 CAPITULO VI PLAN DE IMPLEMENTACIÓN DEL SISTEMA DE PRESUPUESTOS DE COSTOS DE TIEMPOS ESTÁNDARES DE CONFECCIÓN DE PRENDAS DE VESTIR DE TEJIDO DE PUNTO. 6.1 INTRODUCCIÓN El éxito de la aplicación del

Más detalles

Curso. Introducción a la Administracion de Proyectos

Curso. Introducción a la Administracion de Proyectos Curso Introducción a la Administracion de Proyectos Tema 5 Procesos del área de Integración INICIAR PLANEAR EJECUTAR CONTROL CERRAR Desarrollar el Acta de Proyecto Desarrollar el Plan de Proyecto Dirigir

Más detalles