UNIVERSIDAD DE TALCA FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA CIVIL EN COMPUTACIÓN

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

Download "UNIVERSIDAD DE TALCA FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA CIVIL EN COMPUTACIÓN"

Transcripción

1 UNIVERSIDAD DE TALCA FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA CIVIL EN COMPUTACIÓN Estudio de las fortalezas y debilidades que exhiben los métodos ágiles en el contexto chileno de desarrollo de software: 5 casos RODRIGO ANDRÉS FAÚNDEZ MARIPANGUE Profesor Guía: Dr. Narciso Cerpa Torres Memoria para optar al título de Ingeniero Civil en Computación Curicó Chile Agosto, 2010

2 UNIVERSIDAD DE TALCA FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA CIVIL EN COMPUTACIÓN Estudio de las fortalezas y debilidades que exhiben los métodos ágiles en el contexto chileno de desarrollo de software: 5 casos RODRIGO ANDRÉS FAÚNDEZ MARIPANGUE Profesor Guía: Dr. Narciso Cerpa Torres Profesor Informante 1: Dr. Matthew Bardeen Profesor Informante 2: Pablo Rojas Valdés Memoria para optar al título de Ingeniero Civil en Computación Curicó Chile Agosto, 2010

3 DEDICATORIA Dedicado a mis queridos padres y hermano. I

4 AGRADECIMIENTOS Agradezco a todos quienes de una u otra forma hicieron posible mi travesía universitaria y la realización del presente trabajo, en particular: A mis viejos y queridos amigos de siempre, los cuales me han acompañado durante prácticamente toda mi vida. Aquellos con los que fui al colegio, viví en Curicó o compartí una banca y una conversación en la plaza de mi pueblo. Estimados, son los mejores. Los recuerdos que creamos juntos siempre van conmigo y me ayudan en los momentos difíciles. A mis nuevos amigos de la universidad, que me brindaron su apoyo y sincera amistad. Gracias a ustedes pude superar muchos de los obstáculos que la vida universitaria me colocó por delante. Espero que sigamos siendo amigos y que la vida les sonría siempre. A los profesores que me guiaron durante mi estadía como alumno de esta universidad y me entregaron las herramientas para realizar este trabajo. A las empresas que amablemente me recibieron para mostrarme su experiencia en el uso de métodos ágiles. Sin su ayuda mi trabajo no hubiera sido posible. Una vez más gracias. Finalmente quiero agradecer de forma especial a mis padres, los cuales siempre me entregaron su amor y apoyo incondicional, para ellos siempre me serán escasas las palabras y gestos de gratitud. También le agradezco a mi hermano la paciencia que me tiene. A todos muchas gracias. II

5 TABLA DE CONTENIDOS Página Dedicatoria... I Agradecimientos... II Tabla de contenidos... III Índice de tablas... VIII Índice de ilustraciones... X Resumen... XI 1. Introducción Descripción del contexto Descripción del problema Objetivos Objetivo general Objetivos específicos Alcances del proyecto Resumen Marco Teórico Métodos de desarrollo de software Actividades comunes de los métodos de desarrollo de software Métodos tradicionales Modelos generales Métodos ágiles... 9 III

6 Valores de los métodos ágiles Principios de los métodos ágiles Desarrollo ágil Técnicas empleadas por los métodos ágiles Tamaño de los equipos Gestión de personal Aplicabilidad de los métodos ágiles a través de distintos dominios de aplicación Agilidad de los métodos ágiles Resumen de métodos ágiles Enfoque balanceado Visiones Idea del Balance Diferencias entre métodos tradicionales y métodos ágiles Observaciones sobre el balance entre agilidad y disciplina Fortalezas y debilidades de métodos ágiles Fortalezas y debilidades genéricas de los métodos ágiles respecto a la organización Fortalezas y debilidades genéricas de los métodos ágiles respecto a las personas Fortalezas y debilidades genéricas de los métodos ágiles respecto al proceso Fortalezas y debilidades genéricas de los métodos ágiles respecto a la técnica IV

7 Fortalezas y debilidades genéricas de los métodos ágiles respecto al proyecto Fortalezas y debilidades particulares de Extreme Programming (XP) Fortalezas y debilidades particulares de Feature Driven Development (FDD) Fortalezas y debilidades particulares de Scrum Fortalezas y debilidades particulares de Adaptive Software Development (ASD) Fortalezas y debilidades particulares de Crystal Methods Fortalezas y debilidades particulares de Dynamic Systems Development Method (DSDM) Fortalezas y debilidades particulares de Lean Development (LD) y Lean Software Development (LSD) Resumen Metodología de Investigación Fases de la investigación Fase de preparación del estudio de casos Fase de aplicación del estudio de casos Fase de análisis Fase de muestra de resultados Resumen Diseño de la investigación Identificación del problema a investigar El problema a investigar A quienes vamos a investigar? V

8 4.2. Interrogantes a resolver con el estudio Análisis de la literatura previo a la generación de preguntas para el estudio de casos Preguntas del estudio Herramientas utilizadas durante el proceso de generación de preguntas para el estudio Recolección y manejo de datos Recolección y almacenamiento de los datos del estudio Disposición de los datos recolectados Resumen Resultados y análisis de resultados Respuestas a las preguntas planteadas en el estudio de casos Pregunta Nº1 y sus preguntas secundarias Pregunta Nº2 y sus preguntas secundarias Pregunta Nº3 y sus preguntas secundarias Pregunta Nº4 y sus preguntas secundarias Pregunta Nº5 y sus preguntas secundarias Fortalezas y debilidades de los métodos ágiles observadas en la realidad y su relación con la literatura Pregunta nº1 y sus preguntas secundarias. Fortalezas y debilidades Pregunta nº2 y sus preguntas secundarias. Fortalezas y debilidades Pregunta nº3 y sus preguntas secundarias. Fortalezas y debilidades Pregunta nº4 y sus preguntas secundarias. Fortalezas y debilidades Pregunta nº5 y sus preguntas secundarias. Fortalezas y debilidades VI

9 5.3. Resumen Conclusiones Del estudio teórico De la metodología propuesta Del diseño del estudio de casos De las preguntas del estudio De los objetivos trazados Del aprendizaje personal De las contribuciones Del trabajo futuro Bibliografía Anexos A. Metodología de investigación B. Preguntas para el estudio de casos VII

10 ÍNDICE DE TABLAS Página Tabla Métodos Ágiles Tabla Diferencias entre métodos tradicionales y ágiles Tabla Clasificación por dimensiones Tabla Fortalezas genéricas de los métodos ágiles respecto a la organización Tabla Debilidades genéricas de los métodos ágiles respecto a la organización Tabla Fortalezas y debilidades genéricas de los métodos ágiles respecto a las personas Tabla Fortalezas genéricas de los métodos ágiles respecto a las personas Tabla Debilidades genéricas de los métodos ágiles respecto a las personas Tabla Fortalezas y debilidades genéricas de los métodos ágiles respecto al proces Tabla Fortalezas genéricas de los métodos ágiles respecto al proceso Tabla Debilidades genéricas de los métodos ágiles respecto al proceso Tabla Fortalezas y debilidades genéricas de los métodos ágiles respecto a la técnica Tabla Fortalezas genéricas de los métodos ágiles respecto a la técnica Tabla Fortalezas genéricas de los métodos ágiles respecto al proyecto Tabla Debilidades genéricas de los métodos ágiles respecto al proyecto Tabla Fortalezas y debilidades particulares de Extreme Programming Tabla Fortalezas particulares de Extreme Programming Tabla Debilidades particulares de Extreme Programming Tabla Fortalezas y debilidades particulares de Feature Driven Development Tabla Fortalezas particulares de Feature Driven Development Tabla Debilidades particulares de Feature Driven Development Tabla Fortalezas particulares de Scrum Tabla Debilidades particulares de Scrum Tabla 2.24 Fortalezas particulares de Adaptive Software Development VIII

11 Tabla Debilidades Particulares de Adaptive Software Development Tabla Fortalezas particulares de Crystal Methods Tabla Debilidades particulares de Crystal Methods Tabla Fortalezas particulares de Dynamic Systems Development Methods Tabla Debilidades particulares de Dynamic Systems Development Methods Tabla Fortalezas particulares de Lean Development y Lean Software Development Tabla Clasificación de los documentos recolectados Tabla Clasificación por dimensiones Tabla 4.3 Preguntas desprendidas de la revisión bibliográfica Tabla Dispositivos empleados en la recolección de datos Tabla Actividades principales de las empresas estudiadas Tabla Tipos de empresas estudiadas Tabla Personas dedicadas a desarrollar software por medio de métodos ágiles en cada caso Tabla Métodos ágiles empleados por las empresas estudiadas Tabla Capacitación externa en el uso de métodos ágiles Tabla Tamaño de los equipos Tabla Errores del estudio Tabla Preparación del estudio de casos Tabla Aplicación del estudio de casos Tabla Análisis Tabla Muestra de resultados IX

12 ÍNDICE DE ILUSTRACIONES Página Ilustración Ciclo de construcción de valor Ilustración Niveles de agilidad Ilustración Decisiones y agilidad Ilustración Metodología de Investigación Ilustración Metodología de Investigación Ilustración Metodología de Investigación Ilustración Metodología de Investigación Ilustración Proceso de generación de preguntas para el estudio Ilustración Clasificación de las características de los Métodos Ágiles Ilustración Relación entre preguntas principales y secundarias X

13 RESUMEN Los métodos ágiles son descritos en la literatura como una alternativa al desarrollo tradicional de software. Algunas de sus características más reconocibles son, una gran capacidad de adaptarse a los cambios que surgen durante un proyecto, la importancia que les dan a las personas, tiempos breves de desarrollo, etc. En la actualidad las propuestas hechas por los métodos ágiles han sido recogidas por diversas empresas tanto en Chile como en el extranjero. Entonces nuestro trabajo consistió en realizar una revisión de la literatura de los métodos ágiles, a fin de crear un estudio que permitiese conocer las experiencias de diversas empresas que desarrollan software por medio de estos métodos en Chile. En base a estas experiencias recogidas, se pudo establecer una serie de fortalezas y debilidades que presentan los métodos ágiles en la realidad. Además se realizaron recomendaciones a fin de disminuir el impacto de las debilidades que ellos presentan en los proyectos que se utilizan. XI

14 1. Introducción 1.1. Descripción del contexto En la actualidad, vivimos en un mundo donde la tecnología cambia de manera continua, al igual que el entorno en el cual se desenvuelven las empresas. En la industria del software, estos cambios se han notado de manera significativa, pues ahora los proyectos requieren asimilar estas nuevas condiciones durante su desarrollo [1-3]. En la ingeniería de software, existen los métodos tradicionales o basados en un plan, los cuales prometen estabilidad, predictibilidad y alta fiabilidad de sus procesos al momento de desarrollar software. Por otro lado tenemos a los métodos ágiles, quienes nos hacen la promesa de incrementar los niveles de satisfacción de los clientes, tiempos más cortos de desarrollo, bajas tasas de errores y soluciones rápidas a los cambios en los requisitos de un proyecto [4]. Sin embargo, los métodos tradicionales de desarrollo de software, no han sabido hacer frente de manera adecuada al entorno cambiante que envuelve a los proyectos en la actualidad. Debido a estas razones, han surgido con fuerza los métodos ágiles con una respuesta más apta al problema del desarrollo de software (costos, tiempo, requisitos). Si bien es cierto que los métodos ágiles han mostrado una gran cantidad de fortalezas, y han generado un cambio notable en la forma de producir software durante los últimos quince años, aún siguen presentando debilidades ante determinadas situaciones [1]. Los métodos ágiles han encontrado distintos niveles de acogida dentro de la comunidad de desarrolladores de software. Por un lado, existen personas que abogan por una búsqueda de equilibrio entre la agilidad y la disciplina, mientras que otros proponen un total reemplazo de los métodos tradicionales por los métodos ágiles [5]. 1

15 CAPÍTULO 1. INTRODUCCIÓN 2 Debido principalmente a las fortalezas que poseen los métodos ágiles por sobre los tradicionales, es que han sido utilizados en distintos lugares del mundo como una forma válida de desarrollar software, incluido Chile. Por las razones anteriormente expuestas, se hace interesante entonces un estudio acerca de las fortalezas y debilidades que muestran los métodos ágiles en la industria chilena de desarrollo de software Descripción del problema Actualmente en Chile existe cierto desconocimiento acerca de los métodos ágiles, pese a que han causado un gran impacto durante los últimos años en la industria del software [1]. Debido a estas razones surge el interés por descubrir que está sucediendo en el contexto chileno con su utilización. Los métodos ágiles de desarrollo de software, poseen una serie de fortalezas y debilidades, las cuales se revelan de distintas formas cuando son empleadas en los proyectos. Dentro de las fortalezas que la literatura ágil menciona, están la gran capacidad de responder ante los cambios en el entorno y en los requisitos de un proyecto, la disminución de los tiempos de desarrollo, el aumento de los niveles de satisfacción del cliente, etc. Por parte de las debilidades se menciona por ejemplo que poseen poca documentación y planificación lo cual en el transcurso del proyecto puede generar errores irrecuperables, también se habla de la dificultad para manejar equipos grandes, etc. [6]. Como se mencionó con anterioridad, la literatura de los métodos ágiles les atribuye una serie de fortalezas y debilidades, en este punto, se quiere hacer el nexo entre la teoría y la realidad específica de Chile. Para ello, es necesario saber cuáles son las fortalezas y debilidades teóricas de los métodos ágiles que se presentan también en proyectos chilenos, y cuáles no.

16 CAPÍTULO 1. INTRODUCCIÓN Objetivos Objetivo general Consiste en realizar un estudio de casos, con el fin de mostrar cuales son las fortalezas y debilidades que se observan durante la utilización de métodos ágiles, en proyectos de desarrollo de software realizados en Chile Objetivos específicos Realizar una revisión literaria de los métodos ágiles respecto a su teoría y experiencias ocurridas en otros lugares del mundo con su utilización. Diseñar un estudio de casos que conteste las preguntas surgidas a partir de la literatura. Aplicar el estudio a empresas que hayan utilizado métodos ágiles en Chile. Comparar la información obtenida durante la realización del estudio con la literatura, con el fin de determinar que características de los métodos ágiles son una fortaleza o una debilidad en el contexto chileno de desarrollo de software. En base a la comparación de la realidad del medio chileno de desarrollo de software con la literatura, entregar un conjunto de propuestas que permitan aprovechar las fortalezas de los métodos ágiles y disminuir el efecto de las debilidades. Cuando el presente trabajo esté finalizado, contendrá todas las conclusiones y recomendaciones desprendidas de la observación del uso de los métodos ágiles en Chile. Además esperamos que esta investigación pueda servir como guía para obtener ventajas de las fortalezas y disminuir el efecto de las debilidades a quienes pretenden emplear o emplean métodos ágiles en sus organizaciones. Este conocimiento acerca de las

17 CAPÍTULO 1. INTRODUCCIÓN 4 debilidades y fortalezas de los métodos ágiles se podría capitalizar por ejemplo, en una reducción de costos en los procesos de adopción y de desarrollo con este tipo de métodos Alcances del proyecto A continuación se exponen los alcances de la presente memoria: El trabajo está centrado en la experiencia de un conjunto de empresas que al momento de las entrevistas estaban desarrollando software por medio de métodos ágiles en Chile. El trabajo no excluyó a empresas que no estaban especializadas en el desarrollo de software. Tampoco excluyó a las empresas por tamaño, tiempo de utilización del método ágil, tipo de método ágil empleado, etc. Las experiencias fueron recogidas a través de entrevistas a un grupo de personas que trabajan con métodos ágiles en cada empresa. El estudio se encuentra acotado a un marco temporal que va desde diciembre de 2009 a abril de 2010, por lo cual los cambios ocurridos en las empresas fuera de ese período no se ven reflejados en este trabajo. Las fortalezas y debilidades de los métodos ágiles expuestas en el presente trabajo, representan una porción y no la totalidad de la fortalezas y debilidades que se pueden encontrar tanto en la realidad como en toda la literatura ágil existente. Este trabajo no es de carácter estadístico y sus conclusiones tampoco pueden ser generalizadas pues solo muestran una porción de la realidad y no representan a todas las empresas que emplean métodos ágiles en Chile.

18 CAPÍTULO 1. INTRODUCCIÓN Resumen En este capítulo se ha presentado una descripción general del trabajo a desarrollar en esta memoria. En un comienzo se describió el contexto y el problema que da origen a esta investigación, para luego pasar a definir y acotar los objetivos que se esperan conseguir al finalizar este trabajo. El siguiente capítulo es una revisión literaria donde se describen las bases teóricas que dan sustento a esta investigación. En él se describirán los distintos enfoques propuestos para desarrollar software, además de incluir un análisis en detalle de las fortalezas y debilidades de los métodos ágiles.

19 2. Marco Teórico En el presente capítulo se realizará una revisión literaria acerca de los métodos ágiles. En primer lugar y a modo introductorio se describirán los distintos enfoques utilizados para desarrollar software, para luego centrarnos en el estudio de los métodos ágiles con sus respectivas fortalezas y debilidades consignadas por la literatura Métodos de desarrollo de software Los métodos de desarrollo son una descripción simplificada del proceso que involucra el desarrollo de software [7]. Definen para cada método un conjunto distinto de actividades, acciones, tareas, fundamentos y productos del trabajo, necesarios para desarrollar software [8]. En un principio, el desarrollo de software era demasiado artesanal, y no permitía planificar y estimar el esfuerzo de forma adecuada, los proyectos eran bastante ambiciosos y la ausencia de metodologías generaba en más de una ocasión un caos durante el desarrollo [9, 10]. Con el objetivo de ordenar el caos existente durante el desarrollo de software, se comenzó a incorporar metodologías de otras áreas de la ingeniería, en las cuales también existían procesos, lo cual dio origen a los modelos prescriptivos del proceso o métodos tradicionales [8, 9]. La idea detrás de esta naciente propuesta era aplicar procedimientos y documentar durante todo el desarrollo, de modo tal de poder minimizar los riesgos y controlar la evolución de los proyectos [9]. De esta forma surgieron los métodos tradicionales y con posterioridad los métodos ágiles como un intento por superar las debilidades presentes en los primeros [8]. Además han surgido enfoques orientados al balance entre la agilidad que proponen los métodos agiles y la disciplina que imparten los métodos tradicionales, aprovechando de esta manera lo mejor que ambas propuestas poseen [4]. 6

20 CAPÍTULO 2. MARCO TEÓRICO Actividades comunes de los métodos de desarrollo de software Como hemos visto recientemente, a través de la historia de la ingeniería de software, han surgido distintas propuestas a la hora de desarrollar software y pese a sus diferencias existen actividades que les son comunes a todas [7]: Especificación de software: Se define la funcionalidad del software y las restricciones en su operación. Diseño e implementación del software: Se produce el software, de tal modo que cumpla con su especificación. Validación del software: Se valida el software para asegurarse que cumpla con lo que el cliente desea. Evolución del software: El software debe estar capacitado para facilitar el trabajo de hacerlo evolucionar, de tal manera que pueda cubrir las necesidades cambiantes del cliente Métodos tradicionales Los métodos tradicionales 1 fueron propuestos en un principio como una forma de ordenar el caos existente en el desarrollo de software. A través de la historia fueron entregando una serie de estructuras útiles para construir software de una forma razonable [8] [11]. Este tipo de métodos están orientados hacia la planificación y buscan mantener la estructura y orden en sus procesos. Por estas razones requieren procesos definidos, 1 En la literatura, los métodos tradicionales también son denominados como métodos prescriptivos, pesados, orientados al plan, convencionales o clásicos.

21 CAPÍTULO 2. MARCO TEÓRICO 8 planificación predictiva, definición de tareas e hitos y documentación como producto intermedio entre las distintas etapas que se suceden durante el desarrollo [8] [10]. Los métodos tradicionales son capaces de soportar naturalmente, proyectos grandes en los cuales el software se puede desarrollar en conjunto con el hardware, y las forma de contrato que poseen son de precio fijo [10]. El proceso de desarrollo de los métodos tradicionales comienza con una fase de análisis de las necesidades de los clientes y usuarios. En base a la información que extraen de los clientes y usuarios, producen una extensa documentación que detalla los requisitos del sistema que se va a construir. El documento con los requisitos es usado posteriormente para generar el diseño de un sistema. Luego los programadores serán los encargados de usar el diseño para construir el sistema. Finalmente el sistema se prueba y despacha [7, 8] [11]. Los métodos tradicionales han sido empleados por muchos años y pueden diferir en algunos aspectos, pero en fondo siguen manteniendo un marco de trabajo que busca mantener el orden y estructura en sus procesos [8] Modelos generales A continuación se describen los modelos generales más comunes, en los cuales se basan la mayoría de los métodos tradicionales [7]: Cascada: Contempla la mayoría de las actividades del proceso de desarrollo tales como, especificación, desarrollo, validación y evolución. Cada una de ellas se representa de forma separada y se desarrollan de forma lineal. Desarrollo evolutivo: Contempla las actividades de especificación, desarrollo y validación. El sistema se desarrolla inicialmente de forma rápida a partir de especificaciones abstractas, para luego ser refinado en base a las peticiones del cliente de modo tal de generar un sistema que satisfaga sus necesidades.

22 CAPÍTULO 2. MARCO TEÓRICO 9 Ingeniería de software basada en componentes: Este enfoque se basa en la existencia de una gran cantidad de componentes reutilizables. Por consecuencia, el desarrollo del producto se enfoca en integrar los componentes en el sistema definitivo, en vez de generar un producto desde cero. Los modelos presentados aquí no son descripciones definitivas del proceso de desarrollo de software, pero pueden ser utilizadas para explicar en parte los distintos enfoques existentes. Si se prefiere pueden ser considerados como marcos de trabajo, los cuales pueden ser ampliados o adaptados con el fin de ajustarse a necesidades más específicas de los procesos de ingeniería de software [7] Métodos ágiles Los métodos ágiles nacen durante la década de los 90, debido al descontento por parte de algunos desarrolladores de software con los métodos tradicionales. Las principales críticas hacia los enfoques basados en la planificación eran [7]: La gran cantidad de esfuerzo que implica a proyectos de pequeña y mediana envergadura el uso de métodos tradicionales, llegando a veces a dominar el proceso de desarrollo. La gran cantidad de tiempo que se pasaba pensando en desarrollar el software, antes que invertirlo en el desarrollo y las pruebas. La poca flexibilidad de los métodos tradicionales al momento de realizar cambios a los requisitos durante el desarrollo. En base a las críticas hechas a los métodos tradicionales, los desarrolladores de software comenzaron a proponer enfoques alternativos al tradicional, dando como resultado el nacimiento de los métodos ágiles. Esta nueva forma de desarrollar software se basaba en estrategias adaptativas, iterativas, centradas en las personas, orientadas

23 CAPÍTULO 2. MARCO TEÓRICO 10 hacia las prestaciones y hacia la entrega de comunicación intensiva, en la cual se requería que el cliente se involucrara de manera directa con el desarrollo [7] [11, 12]. Actualmente existe una gran variedad de métodos ágiles, dentro de los cuales Extreme Programming (XP) es el más conocido por sobre métodos como Scrum, Feature Driven Development (FDD), Crystal Methods (CM), etc. [7] Valores de los métodos ágiles En el 2001, Kent Beck junto a otros 16 expertos firmaron el llamado manifiesto 2 ágil, en el cual establecieron valores relacionados a [7-9] [12-14]: Individuos e interacciones por sobre los procesos y herramientas: Las personas son el factor más importante para el éxito de un proyecto, por esta razón cobra mayor relevancia formar un buen equipo antes que construir el entorno. En muchas oportunidades se comete el error de crear primero el entorno y esperar a que las personas se adapten a él. Desde el punto de vista de los métodos ágiles se considera que es mejor crear primero el equipo, y esperar que las personas configuren su propio entorno en base a las necesidades que poseen. Software que funciona por sobre la documentación exhaustiva: Los documentos no se crean a menos que sean estrictamente necesarios para tomar una decisión. Los documentos deben ser breves y centrarse en lo fundamental. Colaboración con el cliente por sobre la negociación de contratos: Se propone que los clientes se involucren fuertemente a lo largo de todo el proceso de desarrollo, por medio de la constante interacción con el equipo de desarrollo. La colaboración entre ambas partes permitirá mejorar de manera significativa las posibilidades de éxito del proyecto. 2 Es posible revisar el manifiesto ágil en

24 CAPÍTULO 2. MARCO TEÓRICO 11 Responder ante el cambio por sobre el seguimiento de un plan: La capacidad de responder frente a los cambios que puedan surgir en los requisitos, en la tecnología, en el equipo, entre otros aspectos de un proyecto puede determinar el éxito o el fracaso del mismo. Por lo tanto la planificación deber ser flexible y no estricta de tal modo que pueda dar cabida a los cambios Principios de los métodos ágiles Los valores recientemente descritos, inspiraron doce principios para quienes deseen alcanzar la agilidad. Además resumen las principales diferencias entre los métodos ágiles y tradicionales. Los dos primeros resumen en gran medida el espíritu subyacente en los métodos ágiles, y el resto se centra en el equipo, las metas y la organización del proceso [8] [14]. I. La prioridad es satisfacer al cliente mediante tempranas y continuas entregas de software que le aporte un valor. II. Dar la bienvenida a los cambios. Se capturan los cambios para que el cliente tenga una ventaja competitiva. III. Entregar frecuentemente software que funcione, en un par de semanas a un par de meses, con el menor intervalo de tiempo posible entre entregas. IV. La gente del negocio y los desarrolladores deben trabajar juntos a lo largo del proyecto. V. Construir el proyecto en torno a individuos motivados. Darles el entorno y el apoyo que necesitan y confiar en ellos para conseguir finalizar el trabajo. VI. El diálogo cara a cara es el método más eficiente y efectivo para comunicar información dentro de un equipo de desarrollo.

25 CAPÍTULO 2. MARCO TEÓRICO 12 VII. El software que funciona es la medida principal de progreso. VIII. Los procesos ágiles promueven un desarrollo sostenible. Los promotores, desarrolladores y usuarios deberían ser capaces de mantener una paz constante. IX. La atención continua a la calidad técnica y al buen diseño mejora la agilidad. X. La simplicidad es esencial. XI. Las mejores arquitecturas, requisitos y diseños surgen de los equipos organizados por sí mismos. XII. En intervalos regulares, el equipo reflexiona respecto a cómo llegar a ser más efectivo, y según esto ajusta su comportamiento. En la práctica sin embargo estos principios son difíciles de llevar a cabo debido a que [7]: El cliente debe estar dispuesto a pasar tiempo con el equipo de desarrollo, además es difícil que pueda representar a cabalidad a todos los interesados del sistema. Los participantes de los equipos de desarrollo pueden no tener la personalidad adecuada que se requiere para el trabajo con métodos ágiles. Es difícil priorizar los cambios, y más aún cuando hay muchos interesados en el sistema, pues cada uno de ellos puede tener distintas prioridades. Finalmente mantener la simplicidad tanto en el desarrollo como en el proceso requiere de un trabajo extra, el cual bajo presión puede ser difícil de llevar a cabo de buena forma.

26 CAPÍTULO 2. MARCO TEÓRICO Desarrollo ágil Los métodos ágiles comienzan con una arquitectura muy simple del sistema, la cual está orientada hacia los requisitos que se irán implementando en cada iteración. Durante el transcurso del proyecto, la arquitectura va evolucionando, con el objetivo de mantenerse simple y poder dar cabida a los cambios que surjan durante este tiempo [15]. A medida que transcurre un proyecto ágil, se producen múltiples interacciones de carácter cíclico entre el cliente y los programadores. En este proceso tanto el cliente como los programadores van definiendo las características del sistema y los costos de su implementación [15], tal como se muestra en la siguiente ilustración. Ilustración Ciclo de construcción de valor. Adaptado de [15]

27 CAPÍTULO 2. MARCO TEÓRICO Técnicas empleadas por los métodos ágiles Los diferentes métodos ágiles promueven el uso de distintas técnicas y cuyo objetivo es minimizar el costo de realizar cambios [9]. A continuación se describen tres de las más utilizadas: Refactorización. Es una técnica utilizada para mejorar el código una vez que ha sido escrito y consiste en cambiar su estructura interna sin modificar su comportamiento externo. Esto permite mejorar el diseño del sistema y facilitar el entendimiento del código [14-18]. Pruebas automáticas exhaustivas. Consiste en probar el sistema y sus partes de manera continua, de modo de ir eliminando los errores en cuanto son detectados [14, 15]. Integración continúa. Es una práctica utilizada en el desarrollo de software, en donde los miembros del equipo, integran su código de manera frecuente (por lo general cada persona integra al menos una vez al día), dando como resultado una serie de integraciones por día. En cada integración se llevan a cabo a su vez los procesos de compilación y realización de pruebas, de modo de detectar los errores tan pronto como sea posible [14] [19] Tamaño de los equipos La mayoría de los métodos ágiles están orientado al trabajo con equipos pequeños 3 [20-25], lo cual facilita la comunicación directa entre las personas y les ayuda a reducir la cantidad de documentación que necesitan para trabajar [26]. A pesar de ello existen otros métodos como Crystal que entregan soporte a una gama más amplia en lo que se refiere al tamaño de los equipos de desarrollo [20] [26-29]. 3 Por ejemplo: Extreme Programming (XP) entrega soporte a equipos pequeños de hasta 16 desarrolladores [26].

28 CAPÍTULO 2. MARCO TEÓRICO 15 A menudo el nivel de agilidad de un equipo de desarrollo de software está ligado a su tamaño. Esto se debe a que cuando crece el tamaño de un equipo, crece también la necesidad y la importancia de mantener una mayor cantidad de documentación para compartir los conocimientos y seguir el estado de un proyecto. La razón detrás de este aumento en la necesidad e importancia de la documentación, es que la comunicación directa entre los miembros de un equipo grande no es posible [26]. Debido a las razones recientemente expuestas, los equipos más pequeños tienden a ser más ágiles que los equipos grandes, pero a pesar de ello los principios básicos de la gestión de los métodos ágiles siguen siendo válidos y la mayoría de ellos se pueden emplear en equipos de mayor tamaño [26] Gestión de personal Los métodos ágiles confían en las personas tanto para resolver los problemas como para compartir la información [7-9] [12-14]. Sin embargo, el hecho de estar orientados hacia las personas puede representar una de sus principales debilidades, pues no son comunes las habilidades necesarias para conformar buenos equipos ágiles [26]. Los desarrolladores de un equipo ágil deben ser personas altamente calificadas [30], y estar altamente motivadas [21]. Además deben ser capaces de trabajar en equipo, comunicarse e interactuar con sus compañeros de trabajo y clientes, etc. Todas estas habilidades son requeridas debido a que el equipo es auto organizado y no puede hacer referencias a un proceso predefinido y detallado para resolver problemas y compartir los conocimientos [26] Aplicabilidad de los métodos ágiles a través de distintos dominios de aplicación Una de las preguntas claves acerca de los métodos ágiles es, si se pueden emplear en todos los dominios de aplicación. Pregunta que por lo demás aún está bajo investigación [26].

29 CAPÍTULO 2. MARCO TEÓRICO 16 En general, parece ser que los métodos ágiles son valiosos para la creación de software no crítico y con un tamaño limitado [26]. Por contrapartida, el uso de métodos ágiles se hace muy difícil o imposible en muchas áreas, como pueden ser, las aplicaciones críticas de seguridad [24] [31], o aplicaciones que son muy grandes o complejas [26]. Actualmente los investigadores están estudiando el uso de métodos ágiles en otras áreas, donde el comportamiento en tiempo real y las limitaciones de memoria son problemas comunes, como podría ser el caso de los teléfonos móviles y PDAs [26] Agilidad de los métodos ágiles Dentro del conjunto de métodos ágiles, podemos encontrar distintos niveles de agilidad entre un método u otro. Esta diferencia, está relacionada con aspectos tales como la simplicidad, adaptabilidad, excelencia técnica, prácticas de colaboración, etc. A continuación se ilustra un gráfico, en el cual se plasma esta diferencia, donde los valores más cercanos a 5 representan un nivel alto de agilidad, y los valores más próximos a 1 señalan un menor nivel de agilidad [14]. 5 Nivel de agilidad ASD CM DSDM FDD LSD Scrum XP Nivel de agilidad 4,8 4,5 3,6 3,6 3,9 4,7 4,8 Ilustración Niveles de agilidad. Adaptado de [14]

30 CAPÍTULO 2. MARCO TEÓRICO 17 En la ilustración 2.2, se observa que los niveles más altos de agilidad son alcanzados por Adaptive Software Development (ASD) y Extreme Programming (XP). El nivel intermedio, se encuentra ocupado por métodos tales como Scrum, Crystal Methods (CM) y Lean Software Development (LSD). Finalmente los métodos que presentan los niveles más bajos de agilidad dentro de este grupo son Dynamic Systems Development Method (DSDM) y Feature Driven Development (FDD) Resumen de métodos ágiles Tabla Métodos Ágiles MÉTODOS Adaptive Software Development (ASD) Crystal Methods (CM) Dynamic Systems Development Method (DSDM) DESCRIPCIÓN Jim Highsmith Método de desarrollo de software iterativo y tolerante a los cambios. Orientado hacia los componentes de software más que a las tareas. Su ciclo de vida consta de tres fases esenciales [14]: Especulación: Inicio del proyecto y planificación de las características del software. Colaboración: Desarrollo de las características. Aprendizaje: Revisión de la calidad del software y entrega al cliente. Alistair Cockburn Conjunto de métodos centrados en las personas y en la reducción al máximo de los artefactos producidos. El desarrollo se considera un juego cooperativo de invención y comunicación limitado por los recursos. El equipo de desarrollo es el factor clave por lo cual se debe invertir en mejorar sus habilidades y destrezas. El tamaño del equipo define el color del método, por ejemplo Crystal Clear (3 a 8 miembros) y Crystal Orange (25 a 50 miembros) [14]. Jennifer Stapleton Método iterativo e incremental donde el usuario y el equipo de desarrollo trabajan juntos. Consta de 5 fases, estudio de viabilidad, estudio del negocio, modelado funcional, diseño y construcción, y finalmente implementación. Las tres últimas fases son iterativas y existe una retroalimentación entre todas ellas [14].

31 CAPÍTULO 2. MARCO TEÓRICO 18 Extreme Kent Beck Programming Método de desarrollo de software iterativo que utiliza un enfoque orientado a (XP) objetos [8]. Centrado en potenciar las relaciones interpersonales como la clave para el éxito. Se basa en la retroalimentación continua entre el cliente y el equipo de desarrollo, búsqueda de la simplicidad y coraje para enfrentar los cambios [14]. Feature Driven Stephen Palmer y John Felsing Development Método de desarrollo de software basado en iteraciones cortas (hasta 2 semanas). (FDD) Centrada en las fases de diseño e implementación del sistema partiendo de una lista de características que debe reunir el software [14]. Lean Robert Charette, Mary Poppendieck y Tom Poppendieck, durante los años 80. Development Método que considera los cambios como riegos, propensos a transformase en (LD) y Lean oportunidades que mejoren la productividad del cliente si son manejados de Software forma adecuada. Su principal característica es introducir un mecanismo para Development implementar dichos cambios [14]. (LSD) Scrum Ken Schwaber y Jeff Sutherland 1995; Ken Schwaber y Mike Beedle Método de desarrollo de software iterativo. Cada iteración es denominada sprint y posee una duración máxima de 30 días. El producto de cada sprint es un incremento ejecutable, el cual se muestra al cliente. Otra característica de importancia son las reuniones diarias de 15 minutos, llevadas a cabo por el equipo de desarrollo para coordinarse [14] Enfoque balanceado En la presente sección se exponen algunos de los principales conceptos respecto a la propuesta que busca encontrar el equilibrio entre los métodos tradicionales y ágiles, de tal manera de aprovechar lo mejor de ambos.

32 CAPÍTULO 2. MARCO TEÓRICO Visiones Los métodos tradicionales y ágiles poseen dos visiones distintas acerca de como se debe producir software. Para los métodos tradicionales, la ausencia de planificación y control no permite alcanzar el éxito en los proyectos que se emprenden, por otro lado los métodos ágiles sostienen que la realidad es cambiante y que la rigidez lleva al fracaso en los proyectos [32]. Ambas visiones no han logrado ser la solución definitiva al problema del desarrollo de software, pues en la ingeniería de software ha sido imposible encontrar una solución que sirva para todos los problemas existentes [33] Idea del Balance Pese a que la visión de los métodos tradicionales como ágiles, parecen ser opuestas, ambos métodos pueden ser considerados como herramientas para ser utilizados en contextos específicos [10], de esta forma se aprovechan las ventajas de cada uno de ellos, para compensar las debilidades del otro [4]. El reto consiste entonces en balancear ambos enfoques de tal forma de aprovechar lo mejor de cada uno Diferencias entre métodos tradicionales y métodos ágiles Como hemos mencionado, tanto los métodos tradicionales como ágiles poseen distintas visiones acerca de la forma de producir software, lo cual no necesariamente implica que sean opuestas. Sin embargo la diferencia entre tradicional y ágil afecta aspectos relacionados con el proceso, el contexto del equipo y la organización [14]. Algunas de las diferencias más notables entre los métodos tradicionales y ágiles se exponen en la siguiente tabla.

33 CAPÍTULO 2. MARCO TEÓRICO 20 Tabla Diferencias entre métodos tradicionales y ágiles MÉTODOS TRADICIONALES MÉTODOS ÁGILES Basados en normas provenientes de estándares Basados en heurísticas provenientes de seguidos por el entorno de desarrollo. prácticas de producción de código. Cierta resistencia a los cambios. Especialmente preparados para cambios durante el proyecto. Proceso mucho más controlado, con numerosas Proceso menos controlado, con pocos políticas/normas. principios. Existe un contrato prefijado. No existe contrato tradicional o al menos es bastante flexible. El cliente interactúa con el equipo de desarrollo El cliente es parte del equipo de desarrollo. mediante reuniones. Grupos grandes y posiblemente distribuidos. Grupos pequeños (<10 integrantes) y trabajando en el mismo sitio. Más artefactos. Pocos artefactos. Más roles. Pocos roles. La arquitectura del software es esencial y se Menos énfasis en la arquitectura del expresa mediante modelos. software. Fuente: Métodologías ágiles para el desarrollo de software: extreme Programming (XP) [14]. La relación entre la agilidad y el grado de planificación, también es una importante diferencia, no sólo entre ambas visiones, sino que entre todos los métodos de desarrollo de software. Esta relación genera un espectro en el cual en un extremo tenemos a los métodos menos ágiles los cuales poseen un mayor grado de planificación y ceremonia, y en el otro a los más ágiles con una pequeña cantidad de planificación y ceremonia. Esto implica que un proceso con más planificación es menos ágil que uno con menos planificación [9], de forma similar a lo expuesto en la siguiente ilustración.

34 CAPÍTULO 2. MARCO TEÓRICO 21 Ilustración Decisiones y agilidad. Adaptado de [9] Observaciones sobre el balance entre agilidad y disciplina Con el objetivo de describir un contexto para el enfoque balanceado, a continuación pasamos a resumir una serie de observaciones realizadas por Barry Boehm acerca del equilibrio entre agilidad y disciplina [4]: Tanto los métodos tradicionales como ágiles, no han logrado conformar la solución definitiva al problema de cómo desarrollar software, sin embargo son buenas aproximaciones, que permiten resolver parte del problema. Existen organizaciones donde un método domina claramente a otro. Esto se debe a que los métodos ágiles tiene mayor éxito en una cultura organizacional donde predomina el caos, a diferencia de los tradicionales que lo hacen en una donde predomina el orden. Las futuras aplicaciones necesitarán tanto de la disciplina que les pueda otorgar un método tradicional, como de la agilidad que les pueda brindar un método ágil. Esto se debe a que los grandes proyectos ya no podrán contar con bajas tasas de cambio y planificaciones extensas para el proceso, pues encarecería el costo del producto debido al rediseño y a la demora en la entrega.

35 CAPÍTULO 2. MARCO TEÓRICO 22 Están surgiendo métodos más equilibrados como es el caso de Crystal Orange, DSDM, FDD y Lean Software Development, lo mismo ocurre con las nuevas y más ligeras versiones de RUP. Es mejor utilizar un método simple (como los ágiles) que justifique la relación costobeneficio, que emplear un método del tipo todo incluido (como los tradicionales). Esto se debe a que los métodos tradicionales son difíciles de ser adaptados a una situación en particular por personas que no son expertas, además el ocupar a expertos puede ser un gasto innecesario que eleva los costos de un proyecto. Los métodos son importantes, pero las posibles soluciones que la ingeniería de software requiere se encuentran en la gestión de personal, los valores de las distintas personas y la comunicación Fortalezas y debilidades de métodos ágiles Conocer las fortalezas de los métodos ágiles, puede ayudar a diferenciar en que proyectos su utilización resultará más beneficiosa. De la misma manera saber cuáles son sus debilidades nos ayudará a tomar las medidas apropiadas con el fin de prevenir o mitigar las situaciones de riesgo. En esta sección se dispondrán en tablas, las distintas características de los métodos ágiles, que pueden representar una fortaleza, una debilidad o ambas dependiendo de la perspectiva con la cual se observe. Para su mejor visualización cada tabla representará una dimensión o aspecto distinto de los métodos ágiles, como se observa a continuación.

36 CAPÍTULO 2. MARCO TEÓRICO 23 Tabla Clasificación por dimensiones DIMENSIÓN RELACIONADA CON Organización Compromiso de la administración Entorno de la organización Personas Capacidad del equipo Participación del cliente Proceso Gestión del proyecto Definición del proyecto Técnica Técnicas ágiles de software Estrategias de entrega Proyecto Naturaleza del proyecto Tipo de proyecto Plan del proyecto Fuente: A survey study of critical success factors in agile software projects [34].

37 CAPÍTULO 2. MARCO TEÓRICO Fortalezas y debilidades genéricas de los métodos ágiles respecto a la organización Tabla Fortalezas genéricas de los métodos ágiles respecto a la organización CARACTERÍSTICA FORTALEZA Permiten la invención y desarrollo de nuevas características en entornos formales Los métodos ágiles permiten el desarrollo o invención de nuevas características para un producto en un entorno formal y grande [35]. y grandes. Obtienen mejores resultados donde Los métodos ágiles obtienen mejores resultados en organizaciones donde prospera el caos. En este prospera el caos. tipo de organizaciones, las personas cuentan con un mayor grado de libertad que en una donde prospera el orden [4]. Uso en organizaciones emergentes. Los métodos ágiles son adecuados para ser utilizados en organizaciones emergentes [2]. Tabla Debilidades genéricas de los métodos ágiles respecto a la organización CARACTERÍSTICA Existen dificultades con las certificaciones ISO y CMMI DEBILIDAD Con el uso de métodos ágiles sólo es posible alcanzar niveles de madurez CMMI entre 2 [29], y 3 [36, 37]. No garantizan aumentar el nivel de CMMI o ISO 9001 de una organización [38]. Las áreas del proceso más débiles para obtener una certificación ISO o CMMI son [29]: o La administración de requisitos. o La medición y análisis. o El control del producto y proceso.

38 CAPÍTULO 2. MARCO TEÓRICO 25 Adoptar un método ágil requiere de grandes cambios por parte de la organización. Difíciles de adoptar y emplear en organizaciones grandes. Las organizaciones que desean emplear métodos ágiles deben contar con un entono adecuado. Adoptar un método ágil no sólo requiere recursos, sino que también implica un cambio cultural por parte de la organización [3] [30] [39-43]. Distintos métodos ágiles, requieren cambios diferentes, tanto en la administración de la organización, como en la cultura de desarrollo de software de la misma [39]. Pocas organizaciones son psicológicamente o técnicamente capaces de asumir un enfoque ágil de manera rápida y eficaz [35]. La migración desde un método tradicional a uno ágil, implica grandes alteraciones en los procedimientos de trabajo, herramientas y técnicas, canales de comunicación, estrategias de solución de problemas y funciones de las personas [30]. Las culturas y organizaciones que están orientadas hacia la innovación pueden adoptar los métodos ágiles de manera más fácil [30]. Existe una gran dependencia de las capacidades de liderazgo y gestión ejecutiva dentro de una organización, para poder realizar con éxito una transición hacia un método ágil [35]. Al aumentar el tamaño de una organización, aumenta la dificultad para adoptar y utilizar métodos ágiles [25] [52]. Para emplear métodos ágiles se debe contar con un entorno que facilite la comunicación entre las personas, para lo cual ubicar a las personas más cerca resulta clave [31].

39 CAPÍTULO 2. MARCO TEÓRICO Fortalezas y debilidades genéricas de los métodos ágiles respecto a las personas Tabla Fortalezas y debilidades genéricas de los métodos ágiles respecto a las personas CARACTERÍSTICA FORTALEZA DEBILIDAD El equipo de desarrollo tiene la facultad de tomar sus propias decisiones. Mejora la organización del equipo y el producto en cual se trabaja [35] [42] [44-48]. La toma de decisiones se hace más difícil, debido a que tanto el cliente como los desarrolladores toman la mayoría de ellas, lo cual genera un entorno pluralista en el que existen diferentes actitudes, objetivos, disposiciones de los miembros del equipo, etc. [30]. Puede requerir un enorme esfuerzo por parte de la organización en cuanto a tiempo y paciencia construir una cultura de confianza y respeto entre sus empleados que permita facilitar la colaboración en la toma de decisiones [30]. Las personas trabajan físicamente más cerca. Reduce el costo de mover la información entre personas [49], y el tiempo que transcurre entre Mucho contacto con otras personas puede generar distracciones en el trabajo. [44]. la toma de la decisión y el paso a la acción. [50]. El trabajo se realiza junto al cliente. El cliente al ver la calidad del producto que obtiene, se da cuenta de lo importante que es Es difícil utilizar métodos ágiles cuando el cliente tiene restricciones en cuanto a su

TABLA DE CONTENIDOS. Dedicatoria... I. Agradecimientos... II. Tabla de contenidos... III. Índice de ilustraciones... X. Resumen...

TABLA DE CONTENIDOS. Dedicatoria... I. Agradecimientos... II. Tabla de contenidos... III. Índice de ilustraciones... X. Resumen... TABLA DE CONTENIDOS Página Dedicatoria... I Agradecimientos... II Tabla de contenidos... III Índice de tablas... VIII Índice de ilustraciones... X Resumen... XI 1. Introducción... 1 1.1. Descripción del

Más detalles

Qué es una Metodología Ágil?

Qué es una Metodología Ágil? Metodologías Ágiles Qué es una Metodología Ágil? www.agilealliance.com Las Metodologías Ágiles (AMs) valoran: Al individuo y las interacciones en el equipo de desarrollo más que a las actividades y las

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

Revista Granma Ciencia. Vol. 16, no. 2 mayo - agosto 2012 ISSN 1027-975X

Revista Granma Ciencia. Vol. 16, no. 2 mayo - agosto 2012 ISSN 1027-975X Título: Gestión de la Calidad en el Ciclo de Desarrollo del Software de proyectos que usan metodologías ágiles. Title: Quality Management in Development Cycle Software projects using agile methodologies.

Más detalles

Programación Extrema. Ing. Sebastian Priolo

Programación Extrema. Ing. Sebastian Priolo Programación Extrema Ing. Sebastian Priolo Metodologías Ágiles Menos orientadas a los documentos. Orientadas al código. El cambio es bienvenido. Procesos que cambian NO son predictivos Son adaptables Ejemplos

Más detalles

Metodologías Ágiles Desde una Perspectiva de Project Management. Fernando Contreras Velásquez Project Management & Engineering Services.

Metodologías Ágiles Desde una Perspectiva de Project Management. Fernando Contreras Velásquez Project Management & Engineering Services. Metodologías Ágiles Desde una Perspectiva de Project Management Fernando Contreras Velásquez Project Management & Engineering Services. Ing. Fernando Contreras Velásquez: PMP, PMI-SP, PMI-RMP Acerca del

Más detalles

METODOLOGÍA TRADICIONAL.

METODOLOGÍA TRADICIONAL. METODOLOGÍA TRADICIONAL. Teniendo en cuenta la filosofía de desarrollo de las metodologías, aquellas con mayor énfasis en la planificación y control del proyecto, en especificación precisa de requisitos

Más detalles

Manifiesto Ágil: Historia

Manifiesto Ágil: Historia Agile Manifesto and agile principles andmanifestoagile Nombre del Paper: agileprinciples. Fecha de publicación: Febrero 2001 Publicación: www.agilemanifesto.org Autores: ( XP ) 1.Kent Beck ( XP 2.Mike

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

METODOLOGÍA TRADICIONAL.

METODOLOGÍA TRADICIONAL. COMPARACIÓN DE METODOLOGÍAS METODOLOGÍA TRADICIONAL. Teniendo en cuenta la filosofía de desarrollo de las metodologías, aquellas con mayor énfasis en la planificación y control del proyecto, en especificación

Más detalles

Metodologías Lean-Agile: retos, ventajas y los enfoques modernos de calidad y valor. Luis Nava lunava@gmail.com

Metodologías Lean-Agile: retos, ventajas y los enfoques modernos de calidad y valor. Luis Nava lunava@gmail.com Metodologías Lean-Agile: retos, ventajas y los enfoques modernos de calidad y valor Luis Nava lunava@gmail.com Apropiación de nuevas metodologías: En todas las regiones del mundo, la combinación de las

Más detalles

Desarrollo Ágil. Software Engineering: A Practitioner s Approach Roger S. Pressman, Ph.D. Tomás Balderas Contreras Ingeniería de Software I

Desarrollo Ágil. Software Engineering: A Practitioner s Approach Roger S. Pressman, Ph.D. Tomás Balderas Contreras Ingeniería de Software I Desarrollo Ágil Software Engineering: A Practitioner s Approach Roger S. Pressman, Ph.D. Tomás Balderas Contreras Ingeniería de Software I Coordinación de Ciencias Computacionales INAOE 2011 Preguntas

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

Ingeniería de Software. Procesos. Proyecto de Ingeniería. Metodologías. Metodologías. Metodologías. Metodologías de desarrollo

Ingeniería de Software. Procesos. Proyecto de Ingeniería. Metodologías. Metodologías. Metodologías. Metodologías de desarrollo Ingeniería de Software Procesos Laboratorio de Ingeniería de Software 2004 La ingeniería de software trata sobre la aplicación de practicas y métodos para construir productos de software que cumplan las

Más detalles

Tema 3. Procesos ligeros de desarrollo de software.

Tema 3. Procesos ligeros de desarrollo de software. Ingeniería del Software II 2011 Tema 3. Procesos ligeros de desarrollo de software. Tipos de procesos ligeros. Tipos de procesos ligeros: Desarrollo Rápido de Software. Desarrollo Ágil. Programación Extrema.

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

The Agile Manifesto. Que es el Manifiesto Ágil?

The Agile Manifesto. Que es el Manifiesto Ágil? Que es el Manifiesto Ágil? Lista de principios y valores Declaración de conceptos que guían el desarrollo de software Creado en Febrero del 2001 por la alianza ágil. 17 personas representantes de: Extreme

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

PDSM: PROCESO DE DESARROLLO DE SOFTWARE MIXTO COMBINANDO RUP Y SCRUM. Mariani, María Florencia Okabe, Evangelina

PDSM: PROCESO DE DESARROLLO DE SOFTWARE MIXTO COMBINANDO RUP Y SCRUM. Mariani, María Florencia Okabe, Evangelina PDSM: PROCESO DE DESARROLLO DE SOFTWARE MIXTO COMBINANDO RUP Y SCRUM Mariani, María Florencia Okabe, Evangelina Agenda Introducción Metodologías RUP SCRUM Proyectos PDSM: Definición y Aplicación del proceso

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

Son aplicables las metodologías ágiles a la dirección de megaproyectos?

Son aplicables las metodologías ágiles a la dirección de megaproyectos? Son aplicables las metodologías ágiles a la dirección de megaproyectos? Ing. Carla Fernández C, PMP 1 Metodologías Ágiles Son aplicables? Megaproyectos 2 1 El tradicional enfoque de cascada Análisis Diseño

Más detalles

AGILE MANIFESTO. Guillermo Caro Murillo. Intención:

AGILE MANIFESTO. Guillermo Caro Murillo. Intención: Intención: AGILE MANIFESTO Experiencias personales Experiencias personales en temas relacionados con Agile Casos de éxito y fracaso Es posible utilizarlo? Es conveniente? Guillermo Caro Murillo Ingeniero

Más detalles

John E. Santos González Rubally Guzman Luis G Rios

John E. Santos González Rubally Guzman Luis G Rios John E. Santos González Rubally Guzman Luis G Rios Introducción: Planificación y Desarrollo de Sistemas Éste capítulo es bien importante para nosotros los IT, ya que en el mismo se cubren tópicos esenciales

Más detalles

Administración de la calidad del software.

Administración de la calidad del software. UNIVERSIDAD IBEROAMERICANA ESTUDIOS CON RECONOCIMIENTO DE VALIDEZ OFICIAL POR DECRETO PRESIDENCIAL DEL 3 DE ABRIL DE 1981 ADMINISTRACIÓN DE LA CALIDAD DEL SOFTWARE UNA NUEVA FORMA DE TRABAJAR TESIS Que

Más detalles

Potencia tu talento y el de los que te rodean MÉTODO SIDECAR. No basta saber, se debe también aplicar. No es suficiente querer, se debe también hacer.

Potencia tu talento y el de los que te rodean MÉTODO SIDECAR. No basta saber, se debe también aplicar. No es suficiente querer, se debe también hacer. No basta saber, se debe también aplicar. No es suficiente querer, se debe también hacer. Johan Wolfgang Goethe INDICE 1. 2. OBJETIVO PROCESO Evaluación ANTES: Perfil de partida. Evaluación DESPUÉS: Perfil

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

Liderazgo efectivo y ejemplar Los líderes de una organización, deben establecer directrices y crear la visión de centrarse en los clientes con

Liderazgo efectivo y ejemplar Los líderes de una organización, deben establecer directrices y crear la visión de centrarse en los clientes con Liderazgo efectivo y ejemplar Los líderes de una organización, deben establecer directrices y crear la visión de centrarse en los clientes con valores claros y visibles, de manera estratégica, balanceando

Más detalles

Personas TI Ingeniería de Software BPO Capacitación

Personas TI Ingeniería de Software BPO Capacitación Personas TI Ingeniería de Software BPO Capacitación Nosotros Somos la empresa líder a nivel nacional en servicios de apoyo a proyectos tecnológicos. Desarrollamos servicios integrados de TI a la medida

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

Implantación y Aceptación del Sistema

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

Más detalles

Una estructura conceptual para medir la efectividad de la administración

Una estructura conceptual para medir la efectividad de la administración Una estructura conceptual para medir la efectividad de la administración Tópico especial para gestión del mantenimiento La necesidad de un sistema de medición de la efectividad Mediante el uso de una o

Más detalles

El Gerente de Proyecto. 3: El Gerente de Proyecto. Analogía - Responsabilidades. Liderazgo del Proyecto. Responsabilidades Implícitas

El Gerente de Proyecto. 3: El Gerente de Proyecto. Analogía - Responsabilidades. Liderazgo del Proyecto. Responsabilidades Implícitas 3: El Gerente de Proyecto El Gerente de Proyecto Selección del Gerente de Proyecto Habilidades Requeridas Criterios aplicables a la Selección. Descripción de Tareas. Project Charter 1 2 Responsabilidades

Más detalles

Autoevaluación Institucional con fines de Acreditación. Guía para la elaboración del Plan de Mejoramiento

Autoevaluación Institucional con fines de Acreditación. Guía para la elaboración del Plan de Mejoramiento Autoevaluación Institucional con fines de Acreditación Guía para la elaboración del Plan de Mejoramiento Contenido 1. Introducción... 4 2. Objetivo de la guía... 4 3. Aspectos a considerar... 4 3.1 Autoevaluación...5

Más detalles

Industrialice sus aplicaciones para lograr el alto rendimiento

Industrialice sus aplicaciones para lograr el alto rendimiento Technology Industrialice sus aplicaciones para lograr el alto rendimiento Los ejecutivos de TI continúan buscando métodos con los cuales poder aumentar, de manera medible, tanto la eficiencia como la efectividad

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

UNIVERSIDAD NACIONAL DE ASUNCIÓN FACULTAD DE CIENCIAS ECONOMICAS ESCUELA DE CONTABILIDAD AUDITORIA INFORMATICA

UNIVERSIDAD NACIONAL DE ASUNCIÓN FACULTAD DE CIENCIAS ECONOMICAS ESCUELA DE CONTABILIDAD AUDITORIA INFORMATICA UNIVERSIDAD NACIONAL DE ASUNCIÓN FACULTAD DE CIENCIAS ECONOMICAS ESCUELA DE CONTABILIDAD AUDITORIA INFORMATICA TRABAJO PRÁCTICO DE AUDITORIA INFORMATICA Profesor: Lic. Marco Antonio Leiva Fernández 5to

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

Glosario. actividad. 1. (tarea) 2. es un subproceso que no requiere mas descomposición.

Glosario. actividad. 1. (tarea) 2. es un subproceso que no requiere mas descomposición. Glosario Aclaraciones Los conceptos del glosario están ordenados alfabéticamente. Un concepto puede ser un único término como meta o una frase como ambiente de ingeniería de software centrado en procesos.

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

PERFIL DEL INGENIERO DE SISTEMAS FUSM

PERFIL DEL INGENIERO DE SISTEMAS FUSM PERFIL DEL INGENIERO DE SISTEMAS FUSM PERFIL DEL INGENIERO DE SISTEMAS DE LA FUSM El perfil del Ingeniero de Sistemas presencial de la Fundación Universitaria San Martín, Bogotá, está en capacidad de modelar

Más detalles

UNIDAD 3 EL PROCESO DE EDUCCIÓN

UNIDAD 3 EL PROCESO DE EDUCCIÓN UNIDAD 3 EL PROCESO DE EDUCCIÓN 3. EL PROCESO DE EDUCCIÓN... 1 3.1.DEFINICIONES... 1 3.2.EL PROCESO DE EDUCCIÓN... 2 3.3.PARTICIPANTES... 5 3.4.PROBLEMAS DE LA EDUCCIÓN... 7 3.1. Definiciones En los últimos

Más detalles

ISO 9001:2008 y Agile. Nuestra experiencia

ISO 9001:2008 y Agile. Nuestra experiencia ISO 9001:2008 y Agile Nuestra experiencia Contenidos 1. Quiénes somos 2. Por qué ISO 9001 3. Qué es ISO 9001 4. Qué es Agile 5. Estrategia 6. Diseño 7. Lecciones aprendidas Quiénes somos? Quiénes somos?

Más detalles

Mejora Ágil de Procesos

Mejora Ágil de Procesos Mejora Ágil de Procesos Introducción Después de haber implementado por muchos años modelos de mejora, de dirección de proyectos y diferentes marcos ágiles, llegué a la conclusión de que el camino hacia

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

4 a 8 semanas. Equipos pequeños 5 a 9 miembros. Informal. Cara a cara. En cada entrega el cliente dará su aportación. Sólo documentación básica

4 a 8 semanas. Equipos pequeños 5 a 9 miembros. Informal. Cara a cara. En cada entrega el cliente dará su aportación. Sólo documentación básica Tiempo para cada iteración recomendado ASD 4 a 8 semanas AUP Primeras iteraciones más tiempo que las demás. Tamaño del equipo Equipos pequeños 5 a 9 miembros Todos los tamaños Comunicación en el equipo

Más detalles

INTRODUCCIÓN: Una Visión Global del Proceso de Creación de Empresas

INTRODUCCIÓN: Una Visión Global del Proceso de Creación de Empresas INTRODUCCIÓN: Una Visión Global del Proceso de Creación de Empresas 1 INTRODUCCIÓN. Una visión global del proceso de creación de empresas Cuando se analiza desde una perspectiva integral el proceso de

Más detalles

Introducción En los años 60 s y 70 s cuando se comenzaron a utilizar recursos de tecnología de información, no existía la computación personal, sino que en grandes centros de cómputo se realizaban todas

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

Gestión de proyectos ágil: conceptos básicos

Gestión de proyectos ágil: conceptos básicos Gestión de proyectos ágil: conceptos básicos NST-0003 Rev. 0.1 http://www.navegapolis.net Juan Palacio, 2006 Gestión de proyectos clásica Introducción Los entornos de negocio de muchos sectores han experimentado

Más detalles

4.1.1_Reunión de Planificación de Sprint (Sprint Planning Meeting) 4.1.2_Objetivo del Sprint (Sprint Goal) 4.1.4_Revisión de Sprint (Sprint Review)

4.1.1_Reunión de Planificación de Sprint (Sprint Planning Meeting) 4.1.2_Objetivo del Sprint (Sprint Goal) 4.1.4_Revisión de Sprint (Sprint Review) 1_Visión general de SCRUM 2_Teoría de Scrum 3_El Equipo Scrum (Scrum Team) 3.1_El Dueño de Producto (Product Owner) 3.2_El Equipo de Desarrollo (Development Team) 3.3_El Scrum Master 4_Eventos de Scrum

Más detalles

Mantenimiento de usuarios y grupos Gestión de políticas y estándares Administración de aplicaciones Gestión de servidores Soporte técnico

Mantenimiento de usuarios y grupos Gestión de políticas y estándares Administración de aplicaciones Gestión de servidores Soporte técnico Somos una compañía del área de tecnología informática. Es nuestro objetivo el transformar ideas y necesidades en soluciones tecnológicas y negocios apropiados en beneficio de usted, nuestro cliente. Le

Más detalles

ADMINISTRACIÓN ÁGIL DE PROYECTOS. 21 HORAS (21 horas de capacitación son las requeridas por el PMI para optar por la Certificación Ágil de Proyectos)

ADMINISTRACIÓN ÁGIL DE PROYECTOS. 21 HORAS (21 horas de capacitación son las requeridas por el PMI para optar por la Certificación Ágil de Proyectos) ADMINISTRACIÓN ÁGIL DE PROYECTOS 21 HORAS (21 horas de capacitación son las requeridas por el PMI para optar por la Certificación Ágil de Proyectos) Dictada en alianza con Alpha Consultoría (México). Este

Más detalles

Gestión de Proyectos Ágil

Gestión de Proyectos Ágil P S + Gestión de Proyectos Ágil Preparación para la Certificación PMI-ACP (Agile Certified Professional) Poder Ser Más / www.podersermas.es Valor estratégico de la formación en Servicios Profesionales

Más detalles

Calidad. Calidad en procesos y productos

Calidad. Calidad en procesos y productos Calidad Calidad en procesos y productos La calidad es el conjunto de características de un elemento, producto o servicio, que le confieren la aptitud de satisfacer una necesidad implícita y explícita.

Más detalles

Cómo Comprar Software de Calidad. Pablo Straub Consultor

Cómo Comprar Software de Calidad. Pablo Straub Consultor Cómo Comprar Software de Calidad Pablo Straub Consultor El Problema Testimonio de un comprador de software a medida Nos entregaron el sistema informático mucho después de la fecha original y nos costó

Más detalles

La Autoridad de Certificación Global para Profesionales de Scrum y Ágil

La Autoridad de Certificación Global para Profesionales de Scrum y Ágil La Autoridad de Certificación Global para Profesionales de Scrum y Ágil SCRUM es un Marco Ágil iterativo e incremental para manejar proyectos complejos. Un Scrum (abreviatura de scrummage) es un método

Más detalles

Personas IT Ingeniería de Software BPO Capacitación

Personas IT Ingeniería de Software BPO Capacitación Personas IT Ingeniería de Software BPO Capacitación Nosotros Somos una empresa con 23 años de Chile y Colombia. Desarrollamos servicios integrados a través de nuestras 4 unidades de negocio, Outsourcing

Más detalles

Inteligencia de negocios desde la perspectiva cubana: factores críticos de éxito.

Inteligencia de negocios desde la perspectiva cubana: factores críticos de éxito. Tomado de: La inteligencia de negocios desde la perspectiva cubana: retos y tendencias. Informe publicado en TodoBI. Autora: MSc. Ivette Marrero Antunez Consultora de inteligencia empresarial. E-mail:

Más detalles

CAMPOS DE ACTUACIÓN O DOMINIOS DE EGRESO PSICOLOGÍA, SOCIOLOGÍA Y TRABAJO SOCIAL. Facultad de Ciencias Sociales (FACSO)

CAMPOS DE ACTUACIÓN O DOMINIOS DE EGRESO PSICOLOGÍA, SOCIOLOGÍA Y TRABAJO SOCIAL. Facultad de Ciencias Sociales (FACSO) CAMPOS DE ACTUACIÓN O DOMINIOS DE EGRESO PSICOLOGÍA, SOCIOLOGÍA Y TRABAJO SOCIAL Facultad de Ciencias Sociales (FACSO) Documento de Trabajo n 3 15 de Octubre 2014 1 INTRODUCCIÓN La reforma curricular se

Más detalles

1. PROCESOS DEL PROJECT MANAGEMENT

1. PROCESOS DEL PROJECT MANAGEMENT INDICE 1. PROCESOS DEL PROJECT MANAGEMENT 1.1 Procesos del Proyecto 1.2 Grupos de Proceso 1.3 Interacciones del Proceso 1.4 Adaptación de las interacciones del proceso 2. AREAS DEL CONOCIMIENTO DEL PROJECT

Más detalles

CAPITULO V DISEÑO DEL CUADRO DE MANDO INTEGRAL

CAPITULO V DISEÑO DEL CUADRO DE MANDO INTEGRAL CAPITULO V DISEÑO DEL CUADRO DE MANDO INTEGRAL Al hablar del balance scorecard, no deberíamos referirnos al mismo como Proyecto, sino más bien como Programa. Esto solamente para dar al balanced scorecard

Más detalles

SCRUM Metodología de trabajo ágil

SCRUM Metodología de trabajo ágil SCRUM Metodología de trabajo ágil UN ENFOQUE PRÁCTICO Página 1 Página 2 Índice Introducción Características Criterios de referencia Fortalezas de Scrum Trazabilidad Definición Tipos Los Sprint Prácticas

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

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

Modelo de calidad IT Mark

Modelo de calidad IT Mark Modelo de calidad IT Mark Agenda de Trabajo 1. Área de Calidad 2. Introducción IT Mark 3. Proceso del Negocio 3.1 Ten Square. 3.2 Evaluación 3.3 Evidencias 3.4 Presentación de resultados. 4. Proceso de

Más detalles

Tema II Métodos Ágiles

Tema II Métodos Ágiles Tema II Métodos Ágiles Dr. Javier Garzás javier.garzas@urjc.es Universidad Rey Juan Carlos ÍNDICE 1 METODOLOGÍAS ÁGILES VS TRADICIONALES 2 METODOLOGÍAS HÍBRIDAS 3 SCRUM 4 PRÁCTICAS ÁGILES 5 OTRAS METODOLOGÍAS

Más detalles

Gestión de proyectos: formal o ágil?

Gestión de proyectos: formal o ágil? NST-0004 Rev. 0.1 http://www.navegapolis.net Juan Palacio, 2006 Gestión de proyectos: formal o ágil? Ágil, clásica, predictiva? Al surgir en los 80 una nueva forma de gestionar proyectos, se hizo necesario

Más detalles

Gestión de Proyectos A Guide to the Project Management Body of Knowledge (Pmbok Guide) Profesor Guillermo E. Badillo Astudillo

Gestión de Proyectos A Guide to the Project Management Body of Knowledge (Pmbok Guide) Profesor Guillermo E. Badillo Astudillo Gestión de Proyectos A Guide to the Project Management Body of Knowledge (Pmbok Guide) Profesor Guillermo E. Badillo Astudillo Todas las slides siguientes están tomadas de la guía de los fundamentos para

Más detalles

Administración Ágil de. Juan Banda, MSc, CSP

Administración Ágil de. Juan Banda, MSc, CSP Administración Ágil de Proyectos Juan Banda, MSc, CSP Expositor Juan Banda es un Project Manager y Agile Coach que ha trabajado en empresas grandes (de más de 300 empleados) que se dedican a hacer outsourcing

Más detalles

Definir el problema/oportunidad. Desarrollar soluciones alternativas. Seleccionar la solución. Desarrollar / Seleccionar-Adquirirconfigurar

Definir el problema/oportunidad. Desarrollar soluciones alternativas. Seleccionar la solución. Desarrollar / Seleccionar-Adquirirconfigurar 1 Definir el problema/oportunidad Definir problema de negocio o la oportunidad de mejora utilizando el pensamiento sistémico. Mapa Conceptual Desarrollar soluciones alternativas Seleccionar la solución

Más detalles

Mantenimiento del Software

Mantenimiento del Software Mantenimiento del Software S4 Francisco Ruiz, Macario Polo Grupo Alarcos Dep. de Informática ESCUELA SUPERIOR DE INFORMÁTICA UNIVERSIDAD DE CASTILLA-LA MANCHA http://alarcos.inf-cr.uclm.es/doc/mso/ Ciudad

Más detalles

Mejores prácticas para el éxito de un sistema de información. Uno de los problemas de información dentro de las empresas es contar con datos

Mejores prácticas para el éxito de un sistema de información. Uno de los problemas de información dentro de las empresas es contar con datos ANEXO VI. Mejores prácticas para el éxito de un sistema de información Uno de los problemas de información dentro de las empresas es contar con datos importantes del negocio y que éstos estén aislados

Más detalles

1 2 Qué Hace Que Un Equipo De Trabajo Trabaje En Equipo?

1 2 Qué Hace Que Un Equipo De Trabajo Trabaje En Equipo? 1 2 Qué Hace Que Un Equipo De Trabajo Trabaje En Equipo? GERARDO LACOUTURE Probablemente, la frase trabajo en equipo sea una de las más utilizadas al momento de pensar en cuáles son los factores que nos

Más detalles

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

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

Más detalles

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

Planificación de Sistemas de Información

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

Más detalles

El modelo Scrum. NST-0010 Rev. 0.1

El modelo Scrum. NST-0010 Rev. 0.1 NST-0010 Rev. 0.1 http://www.navegapolis.net Juan Palacio, 2006 Scrum: La teoría El origen. Scrum es una metodología ágil de desarrollo de proyectos que toma su nombre y principios de los estudios realizados

Más detalles

Planificación de Sistemas de Información

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

Más detalles

Barcelona Activa Capital humà

Barcelona Activa Capital humà Barcelona Activa Capital humà Estratègies per a la recerca de feina Conoce y PRACTICA la Entrevista de Incidentes Críticos (BEI) Contenidos Conoce y PRACTICA la Entrevista de Incidentes Críticos (BEI)

Más detalles

La Dinámica Digital y su Evolución

La Dinámica Digital y su Evolución La Dinámica Digital y su Evolución POR: DIANE NOBOA www.mediapressconsulting.com LA DINÁMICA DIGITAL Y SU EVOLUCIÓN La dinámica digital en las empresas aumenta en importancia, pero pocas implementan modelos

Más detalles

Ingeniería de Sistemas I

Ingeniería de Sistemas I Ingeniería de Sistemas I Metodologías Ágiles 1 Agenda Metodologías Ágiles, Origen Valores y Principios de las Metodologías Ágiles Ejemplos de Metodologías Ágiles SCRUM XP SCRUM y XP Agilidad o Disciplina?

Más detalles

CONSULTORIA & CAPACITACION EMPRESARIAL

CONSULTORIA & CAPACITACION EMPRESARIAL HACIA UN NUEVO MARCO CONCEPTUAL DE LIDERAZGO Líder es aquel que Impulsa al Desarrollo y transformación Educativa, incentivando el Rescate de valores y principios morales. Emprendamos una labor Dedicada

Más detalles

Escuela Politécnica Superior. Organización Empresarial y Proyectos. Capítulo 6. daniel.tapias@uam.es. Dr. Daniel Tapias Curso 2014/ 15 PROYECTOS

Escuela Politécnica Superior. Organización Empresarial y Proyectos. Capítulo 6. daniel.tapias@uam.es. Dr. Daniel Tapias Curso 2014/ 15 PROYECTOS Escuela Politécnica Superior Organización Empresarial y Proyectos Capítulo 6 Dr. Daniel Tapias Curso 2014/ 15 daniel.tapias@uam.es PROYECTOS PROGRAMA DE LA ASIGNATURA Capítulo 1: Introducción. Capítulo

Más detalles

ESCUELA POLITÉCNICA NACIONAL

ESCUELA POLITÉCNICA NACIONAL ESCUELA POLITÉCNICA NACIONAL FACULTAD DE INGENIERÍA DE SISTEMAS PROPUESTA DE APLICACIÓN DE SCRUM PARA MINIMIZAR LOS RIESGOS EN UN PROYECTO DE DESARROLLO DE SOFTWARE. PROYECTO PREVIO A LA OBTENCIÓN DEL

Más detalles

BPM: Articulando Estrategia, Procesos y Tecnología

BPM: Articulando Estrategia, Procesos y Tecnología BPM: Articulando Estrategia, Procesos y Tecnología Resumen: La competitividad es el imaginario que dirige las acciones empresariales en la actualidad. Lograr condiciones que permitan competir con mayores

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

Guía Rápida Proceso de Desarrollo OPENUP/OAS Universidad Distrital Francisco José de Caldas Oficina Asesora de Sistemas

Guía Rápida Proceso de Desarrollo OPENUP/OAS Universidad Distrital Francisco José de Caldas Oficina Asesora de Sistemas Guía Rápida Proceso de Desarrollo OPENUP/OAS Universidad Distrital Francisco José de Caldas Oficina Asesora de Sistemas Información General del Documento Versión Actual del Documento 0.0.0.7 Descripción

Más detalles

CONCEJO MUNICIPAL DE CHOCONTA- CUNDINAMARCA

CONCEJO MUNICIPAL DE CHOCONTA- CUNDINAMARCA CONCEJO MUNICIPAL DE CHOCONTA- CUNDINAMARCA PLAN DE MANEJO DE RIESGOS Contenido PLAN DE MANEJO DE RIESGOS.... 3 Elaboración del mapa de riesgos... 3 Monitoreo... 4 Autoevaluación... 4 Metodología... 7

Más detalles

EL Papel del Psicólogo como Promotor del Aprendizaje Organizacional

EL Papel del Psicólogo como Promotor del Aprendizaje Organizacional EL Papel del Psicólogo como Promotor del Aprendizaje Organizacional Mtra. Gisela Montiel Roldán Índice El Papel tradicional del Psicólogo. 3 Las herramientas del Aprendizaje Organizacional 6 El Papel del

Más detalles

El Aseguramiento de la Calidad nace como una

El Aseguramiento de la Calidad nace como una Las normas ISO 9000:2000 de Sistemas de Gestión de la Calidad Leticia Colín O. La familia de normas NMX ISO 9000 del año 2000 está constituida por tres normas básicas, complementadas con un número reducido

Más detalles

CAPITULO IV TRABAJO EN EQUIPO

CAPITULO IV TRABAJO EN EQUIPO CAPITULO IV TRABAJO EN EQUIPO 4.1. Definición de equipo de trabajo Equipo es un pequeño número de personas con habilidades complementarias que se comprometen con un objetivo común, un conjunto de metas

Más detalles

Diseño de Procesos al Servicio de la Gestión

Diseño de Procesos al Servicio de la Gestión Gestión y servicios Tecnológicos Ltda. Diseño de Procesos al Servicio de la Gestión www.gyst.cl info@gyst.cl Gestión y servicios Tecnológicos Ltda. En Algunas Empresas... En numerosos proyectos de variada

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

Mejora Continua y Calidad Total

Mejora Continua y Calidad Total Universidad de Buenos Aires -Facultad de Ciencias Económicas Cátedras de Sistemas Administrativos y Calidad y Productividad Universidad de Belgrano Cátedra de Administración n I y II Instituto Universitario

Más detalles

UNIVERSIDAD TÉCNICA DEL NORTE FACULTAD DE INGENIERÍA EN CIENCIAS APLICADAS ESCUELA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES

UNIVERSIDAD TÉCNICA DEL NORTE FACULTAD DE INGENIERÍA EN CIENCIAS APLICADAS ESCUELA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES UNIVERSIDAD TÉCNICA DEL NORTE FACULTAD DE INGENIERÍA EN CIENCIAS APLICADAS ESCUELA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES TEMA: La Programación Extrema aplicada al desarrollo del Sistema Informático

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

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

La transformación de los servicios centrados en la ciudadanía

La transformación de los servicios centrados en la ciudadanía La transformación de los servicios centrados en la ciudadanía Canadá está inmerso en un proceso intenso para mejorar y desarrollar sus servicios en líneacon el objeto de garantizar la mejora continua.

Más detalles

DESCRIPCION DEL CURSO Formación de Tutores de cursos a distancia desarrollados en entornos virtuales de aprendizaje

DESCRIPCION DEL CURSO Formación de Tutores de cursos a distancia desarrollados en entornos virtuales de aprendizaje DESCRIPCION DEL CURSO Formación de Tutores de cursos a distancia desarrollados en entornos virtuales de aprendizaje Destinatarios Este curso está destinado a aquellos docentes de la educación superior

Más detalles