martes, 13 de diciembre de 2016

Trabajo Colaborativo 4 FINAL PROYECTO DE GRADO

TRABAJO COLABORATIVO 4





PROYECTO DE GRADO (ING. DE SISTEMAS) 
GRUPO: 201014_7



TUTOR: WILMAR LIBERTO COPETE




ESTUDIANTES

JOHN ALEXANDER REYES CAMPOS - CÓDIGO: 79912231
JUAN CARLOS MONROY - CÓDIGO: 79748543
EDISON AUGUSTO LADINO - CÓDIGO: 79750997
ALEX EDUARDO MORENO ECHAVARRIA


UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
INGENIERÍA DE SISTEMAS
CEAD JOSÉ ACEVEDO Y GÓMEZ



BOGOTÁ D.C. DICIEMBRE 2016-II







ARTICULO

ESTUDIO Y ANÁLISIS DEL DESARROLLO DE SOFTWARE ÁGIL
Por: Edison Ladino, Jhon Alexander Reyes, Juan Carlos Moroy, Alex Moreno
UNAD Universidad Nacional a Distancia
Bogotá, Colombia.
Abstract: Este articulo se desarrolla con el fin de dar a conocer el funcionamiento eficaz de la tecnología desarrollo de software ágil en el proceso de implementación de una aplicación creada en la organización salud total en el área de desarrollo, performance y pruebas de software con el fin de dar la solución respectiva al entorno del problema en cuanto a la total administración y coordinación de los procesos que los ingenieros deben hacer siguiendo los parámetros permitidos en todo lo requerido para el desarrollo de software

INTRODUCCION

El desarrollo de software ágil se enfoca en la toma de decisiones para todo el desarrollo de proyectos de software donde su metodología se basa en la ingeniería de software el cual fundamenta y formaliza los requisitos, planteamientos y soluciones que tienen diversas evoluciones en el trascurrir de un proyecto. Esta metodología enfatiza la tecnología en cada iteración de los ciclos de vida de este enfocados en su planeación, análisis de requerimientos, diseño, codificación, pruebas y documentación teniendo su gran importancia en toda la calidad de ejecución de todos los pasos antes mencionados. Este método evoluciono a mediados de los años 90 en reacción de muchos análisis más estructurados y estrictos originados desde un modelo en cascada evidenciando procesos realmente estructurados.

PALABRAS CLAVE

  • Desarrollo
  • Ingeniería de software
  • Metodologías livianas
  • Proyectos
  • Pruebas
  • Software ágil

OBJETIVOS
1. Fundamentar, desde un principio, la ingeniería de sistemas como ciencia, a través de la conceptualización teórica de los sistemas, de las ciencias de la computación y de la informática.

2. Relacionar las tendencias, teorías y técnicas de análisis y solución de problemas con la aplicación de las ciencias de la computación.

3. Conocer e identificar de manera clara los elementos, características y propiedades de un sistema y su relación con el medio.

4. Determinar y sustentar la aplicación de la ingeniería de sistemas, según su desarrollo histórico y su proyección hacia el siglo XXI.


CONTENIDO

El software ágil busca optimizar el desarrollo de software a partir de metodologías livianas, las cuales derivan en conceptos como el Manifiesto Ágil, donde se describen otros conceptos como la Programación Extrema o XP, Cruz y Kanban.

Los proyectos de tamaño mediano o pequeño son ideales para poner en práctica esta tendencia tecnológica, basta con aplicar uno o los tres conceptos (XP, Cruz y Kanban) tal es el caso de XP, este tiene como objetivo el incluir al cliente por medio de interacción constante, pruebas unitarias y abstraer la documentación pre desarrollo del software donde están incluidos los requerimientos, además describe el lenguaje de programación, de esta forma se llega a un desarrollo de forma detallada.

CONCEPTO

El concepto Cruz busca también la interacción con el usuario final del software, pero este hace énfasis en las buenas prácticas, con eje en el trabajo en equipo y con enfoque a obtención de resultados. Cruz es ideal para aplicar en proyectos complejos y con exigencia de entrega de resultados inmediatos, por lo cual exige al programador ser creativo, competitivo y productivo.

Por otra parte Kamban adapta el sistema que se encuentre en desarrollo a los requerimientos reales del cliente durante el ciclo del desarrollo del software, además presenta metodologías didácticas como lo es la implementación de herramientas visuales para que los desarrolladores de software hagan seguimiento del progreso del proyecto, además de su avance, sin que tenga que generarse desplazamientos innecesarios para conocer esta parte.

Actualmente, la metodología ágil más popular para la gestión de proyectos es Scrum el cual es un proceso en el que se aplican de manera regular un conjunto de buenas prácticas para trabajar colaborativamente, en equipo, y obtener el mejor resultado posible de un proyecto. Estas prácticas se apoyan unas a otras y su selección tiene origen en un estudio de la manera de trabajar de equipos altamente productivos.

En Scrum se realizan entregas parciales y regulares del producto final, priorizadas por el beneficio que aportan al receptor del proyecto. Por ello, Scrum está especialmente indicado para proyectos en entornos complejos, donde se necesita obtener resultados pronto, donde los requisitos son cambiantes o poco definidos, donde la innovación, la competitividad, la flexibilidad y la productividad son fundamentales.

En cuanto a la metodología SCRUM se pudo determinar que agiliza el proceso, porque se divide el problema en pequeñas tareas y las tareas tienen un tiempo que se ha determinado con anterioridad, El cliente puede comenzar a utilizar el producto rápidamente. Promueve el trabajo en equipo (los desarrolladores se comunican entre sí y se ayudan cuando alguna actividad da problemas), se reduce el tiempo perdido y da facilidad para añadir mejoras.

Por otra parte, también se disponen de metodologías específicas para el desarrollo de software que pretenden ser alternativas a estándares como ISO/IEC 15504, ISO/IEC 12207 y CMMI. Por ejemplo:

Extreme Programming (XP): La metodología ágil más radical y popular. XP se centra en el ciclo de vida del desarrollo de software.
Agile Modeling: Metodología para el modelado y la generación de documentación que se encuentra alineado con los principios del desarrollo ágil y que puede ser utilizado como substituto del UML estándar.
Las metodologías ágiles presentan un enfoque diametralmente opuesto a las metodologías predictivas, ofreciendo un enfoque más adecuado para determinados proyectos como el desarrollo de software. No obstante, es importante no caer en el extremo y dar por malo todo aquello que sea de un bando u otro.

En cada una de las entregas del software por parte del grupo de desarrollo se realizan diferentes pruebas y verificaciones con el fin de validar los siguientes ítems:

  • La visualización de los datos.
  • La respuesta y realización de las transacciones.
  • Que los estados de las actividades y documentos generados en el sistema se reflejen de acuerdo a la secuencia lógica requerida por el usuario.
  • La secuencia lógica de las funcionalidades y transacciones.
  • Cumplimiento de estándares de desarrollo y presentación.
  • Pruebas funcionales.
  • Pruebas no funcionales.
  • Verificación de documentación entregada.
  • Validación de ejecución de pruebas por parte del grupo de desarrollo.
  • Solución / corrección de incidentes reportados en el proceso de pruebas.
  • Otros que sean pertinentes.

Dentro de la metodología ágil fue creado un manifiesto que nos indica que lo que se valora es:

  • Al individuo y las interacciones del equipo de desarrollo sobre el proceso y las herramientas. La gente es el principal factor de éxito de un proyecto software. Es más importante construir un buen equipo que construir el entorno. Muchas veces se comete el error de construir primero el entorno y esperar que el equipo se adapte automáticamente. Es mejor crear el equipo y que éste configure su propio entorno de desarrollo en base a sus necesidades.

  • Desarrollar software que funciona más que conseguir una buena documentación. La regla a seguir es “no producir documentos a menos que sean necesarios de forma inmediata para tomar una decisión importante”. Estos documentos deben ser cortos y centrarse en lo fundamental.

  • La colaboración con el cliente más que la negociación de un contrato. Se propone que exista una interacción constante entre el cliente y el equipo de desarrollo. Esta colaboración entre ambos será la que marque la marcha del proyecto y asegure su éxito.

  • Responder a los cambios más que seguir estrictamente un plan. La habilidad de responder a los cambios que puedan surgir alo largo del proyecto (cambios en los requisitos, en la tecnología, en el equipo, etc.) determina también el éxito o fracaso del mismo. Por lo tanto, la planificación no debe ser estricta sino flexible y abierta. Los valores anteriores inspiran los doce principios del manifiesto. Son características que diferencian un proceso ágil de uno tradicional. Los dos primeros principios son generales y resumen gran parte del espíritu ágil. El resto tienen que ver con el proceso a seguir y con el equipo de desarrollo, en cuanto metas a seguir y organización del mismo. Los principios son:

  1. La prioridad es satisfacer al cliente mediante tempranas y continuas entregas de software que le aporte un valor.

  1. Dar la bienvenida a los cambios. Se capturan los cambios para que el cliente tenga una ventaja competitiva.
  1. Entregar frecuentemente software que funcione desde un par de semanas a un par de meses, con el menor intervalo de tiempo posible entre entregas.

  1. La gente del negocio y los desarrolladores deben trabajar juntos a lo largo del proyecto.

  1. 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.

  1. 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.

  1. El software que funciona es la medida principal de progreso.

  1. Los procesos ágiles promueven un desarrollo sostenible. Los promotores, desarrolladores y usuarios deberían ser capaces de mantener una paz constante.


  1. La atención continua a la calidad técnica y al buen diseño mejora la agilidad.


  1. La simplicidad es esencial.


  1. Las mejores arquitecturas, requisitos y diseños surgen de los equipos organizados por sí mismos.


  1. En intervalos regulares, el equipo reflexiona respecto a cómo llegar a ser más efectivo, y según esto ajusta su comportamiento.

Si se toma un problema en un entorno real, se analiza y se implementa la tecnología de software Ágil, se desprenderán una serie de pasos en los cuales se inicia con el conocimiento del síntoma, esto es identificar los problemas que causan impacto negativo en el desarrollo del software.
A partir del conocimiento de los síntomas, se puede dar un pronóstico que ayuda a la caracterización real del problema, posteriormente con este conocimiento se puede dar un control al pronóstico donde se proponen acciones para superar el problema.

PLANEACIÒN

Para la planeación de de la solución existen herramientas que permiten abstraer las ideas que se conciben para la formulación de una solución, tal es el caso de la herramienta Decálogo de Bernal, consiste en una matriz en la cual se responden a unos conceptos representados por preguntas breves.

Cuando esta matriz es respondida en su totalidad, se logra mejor dimensionamiento de la solución que se va a abordad, sin embargo se necesita también de la comprensión de la gerencia de proyectos para poder aplicar de manera efectiva las ideas que apuntan a la solución, con el fin de evolucionarlas para que sean viables.

Con la gerencia de proyectos se logra la administración y organización de los recursos y los procesos, para que un proyecto culmine exitosamente dentro de los tiempos establecidos y con las técnicas necesarias para su ejecución, de carácter asertivo y efectivo.

En la gerencia de proyectos es importante incluir la identificación de los requisitos y condiciones, así se plantean objetivos claros y realizables, además se debe lograr el balance entre el alcance y el costo, sin dejar de lado las expectativas de los interesados en que el proyecto genere satisfacción en el usuario.
Puede haber varios factores que influyen en que un desarrollo ágil no llegue a buen puerto. Estos son algunos de ellos:

Equipo poco experimentado. Puede dar la sensación, si se compara con otros esquemas, de que la carga de trabajo es menor cuando se llevan a cabo desarrollos ágiles (precisamente por dividir el ciclo de desarrollo global en pequeñas iteraciones). Eso se puede deber a una falta de experiencia por parte de los desarrolladores, ya que el trabajo queda perfectamente planificado y distribuido si se conoce correctamente la metodología.

Falta de análisis inicial. Que las metodologías ágiles estén abiertas al cambio no significa que no haya que realizar una planificación inicial. Llevar a cabo un desarrollo ágil no es sinónimo de ir diseñando sobre la marcha, sino de ir afinando y perfeccionando, pero la fase de análisis inicial es imprescindible. Eso sí, el caso contrario es igual de perjudicial: no es necesario como hemos dicho que, de partida, se sepa perfectamente cómo se va a comportar el producto final y definir cada caso de uso al milímetro, ya que en las iteraciones se podrá ir mejorando y completando el desarrollo

El rol de “Representante del cliente” no está cubierto correctamente. A menudo se intenta asignar esta labor a uno de los desarrolladores, y esto puede ser un problema si se pierde la visión de negocio que hay por detrás del desarrollo en sí.

Equipos poco enfocados. Es necesario, en cada iteración, entregar un software funcional como resultado de la misma. Para ello, el equipo de desarrollo debe enfocarse en ese proyecto, tratando de huir de tareas paralelas siempre que sea posible.

Usar la reunión diaria del equipo (la famosa daily) para resolver problemas. En las reuniones diarias, el equipo debería hablar de su avance en el proyecto, pero por lo general no es el mejor lugar para tratar de resolver problemas. Si surgieran temas que requieran de la ayuda de distintas personas para ser resueltos, habría que intentar acometerlos tras la daily por las personas adecuadas, liberando al resto del equipo.

Intentar abarcar demasiado en una iteración. Hay que tener claro hasta dónde se debe llegar en cada ciclo, ya que la sensación puede ser de un continuo cambio global sin principio ni final, pero esto es un error. Fijando los objetivos de cada iteración se ayuda a gestionar mejor el tiempo de cada persona y a enfocar sus esfuerzos para el entregable más próximo.

Cambios en los plazos, en la calidad, en los recursos o en el alcance. Se debe tratar de fijar, antes de cada iteración, lo que se va a llevar a cabo en ella, qué recursos se usarán o el nivel de calidad a alcanzar. Si variamos estos conceptos durante un ciclo, podemos encontrarnos con problemas que afectarán a sucesivas iteraciones. Cuando decimos que la metodología ágil está abierta al cambio nos referimos a que de una iteración pueden surgir nuevas ideas, nuevos enfoques, aspectos a mejorar… que pueden ser llevados a cabo posteriormente. Pero hay que evitar, en la medida de lo posible, que esto afecte a la iteración en curso.

CONCLUSIONES

El jefe de proyecto puede no tener conocimientos técnicos y dedicarse exclusivamente al control siguiendo los procedimientos establecidos y limitándose a la generación de informes, actas, diagramas de Gantt, WBS, etc… herramientas que facilitan la gestión pero que no forman parte del objetivo del proyecto. Un jefe de proyecto con estas características no podrá participar activamente en la toma de decisiones técnicas.

En proyectos largos, ceñirse a un plan estático puede provocar que el producto final ya no se cubra la totalidad de las necesidades del cliente dado que estas han cambiado desde el inicio. Por tanto, durante el propio desarrollo del producto, es posible que se deban ampliar las características diseñadas inicialmente con tal de que no sea obsoleto antes de su salida al mercado.

Incertidumbre: vivimos en un entorno rápido e inestable, donde cumplir el plan inicial no garantiza el éxito. La idea de “producto terminado” puede perder su sentido en determinados sectores (p.ej. software), dado que el producto siempre está en evolución. La capacidad de adaptación a partir de la retroalimentación e incorporación de nuevas ideas es fundame



PREGUNTAS:

  1. ¿De qué forma se da el ciclo de vida del desarrollo del Software Ágil?
  1. De forma perpendicular
  2. De forma cíclica
  3. De forma piramidal
  4. De forma descendente
  1. Kamban permite:
  1. Disponer de un mínimo de espacio en la infraestructura
  2. Mejorar la actitud del cliente hacia el desarrollador de software
  3. Aplazar el tiempo de entrega del software
  4. Añadir requerimientos innecesarios al desarrollo del software
  1. ¿Cuál es la mejor forma de conocer los resultados de la tecnología de software ágil?
  1. Por medio de simulaciones en entornos virtuales, donde se da personalidad a los desarrolladores
  2. Implementando la tecnología en un entorno real
  3. Preguntando a quien tienen algo de idea en el tema pero no han puesto en práctica la tecnología
  4. Leyendo blogs en la Internet
  1. ¿Que se busca con el control al pronóstico?
  1. Proponer solución al problema de un entorno real
  2. Proponer dejar de lado los problemas e iniciar de ceros
  3. Ignorar el problema y seguir con el desarrollo
  4. Anotar todo lo que tenga que ver con el problema
  1. En el proceso de pruebas y control de calidad de software se puede encontrar?
  1. Un ajuste o modificación del software para ser verificado en cuanto a su funcionalidad y calidad
  2. Modificación de todos los parámetros de calidad en el software
  3. Ejecución de todos los procesos del ciclo de vida de un proyecto
  4. Seguimiento y control en el proceso de calidad
  1. Entre las diferentes actividades del proceso de pruebas y control de calidad encontramos algunas tales como?
  1. Entrega de requerimientos, actualización de software, verificación de calidad
  2. Recibir y asignar requerimiento, Verificar requerimiento, agendar fecha pruebas, Actualizar manuales usuario
  3. Pruebas y controles de requerimientos, funciones especificas, software detallado, análisis de pruebas
  4. Funcionalidad de procesos de calidad, ajustes de fechas, actualización de manuales de usuario
  1. Cuál es el objetivo del plan de pruebas?
  1. Verificar los objetivos específicos del sistema o proyecto
  2. Ajustar los procesos de software para todo lo requerido en los procesos de software
  3. Establecer las actividades para la planeación, diseño, ejecución y evaluación de pruebas que permitan identificar y corregir los defectos encontrados en las diferentes modificaciones hechas al software
  4. Funcionalidad de procesos de calidad, ajustes de fechas, actualización de manuales de usuario
  1. Que determina el alcance de un proyecto?
  1. Identificar todos los problemas que el proyecto necesite
  2. Verificar los objetivos específicos del sistema o proyecto
  3. Ajustar las fechas que el grupo de desarrollo necesite
  4. Las entregas del software por parte del grupo de desarrollo para posteriormente entrar en pruebas y verificaciones
  1. Que actores principales intervienen en el ciclo de vida de un proyecto?
  1. Personal de aseo, modelos del ciclo de vida, fases del proyecto
  2. Empleados, jefes de seguridad, área de sistemas, coordinadores
  3. Director del proyecto, cliente, Equipo de trabajo, coordinadores, patrocinadores, productores, ingenieros
  4. Implementación de software, planificación, ejecución, iniciación, control y entrega.
  1. En las entregas de software se realizan diversas pruebas con el fin de validar?
  1. La visualización de los datos con su respuesta y realización de las transacciones.
  2. Validaciones requeridas por el usuario
  3. Interacción con el cliente indicándole su implementación
  4. Funcionalidad de procesos de calidad, ajustes de fechas, actualización de manuales de usuario
  1. Cuáles son las fases de un proyecto?
  1. Prototipo, antecedentes, control, planeación
  2. Planeación, Ejecución, Iniciación, Control, Entrega
  3. Entrega, cronograma, tablas ejecución y entrega
  4. Control, prototipo, cronograma, actividades definidas
  1. Que debe conocer un ingeniero de sistemas para la ejecución de un proyecto?
  1. Implementación de software, planificación, ejecución, iniciación, control y entrega.
  2. Implementación de Software, Desarrollador, Programador y análisis de información
  3. Funcionalidad de procesos de calidad, ajustes de fechas, actualización de manuales de usuario
  4. Modificación de todos los parámetros de calidad en el software
  1. Que determina el Project Managment Office?
  1. Interacción con el cliente indicándole su implementación y funcionalidad
  2. Ajustar los procesos de software para todo lo requerido en los procesos de software
  3. Mantener los estándares de los procesos que relacionan la gestión en una organización hacia el ciclo de vida de un proyecto.
  4. Ejecución de todos los procesos del ciclo de vida de un proyecto
  1. Cuáles son los roles en la metodología SCRUM?
  1. Prototipo, antecedentes, control, planeación
  2. Ingenieros, desarrolladores, Coordinadores, Empleados
  3. Control, prototipo, cronograma, actividades definidas
  4. Product Owner, Stakeholders, Usuarios
  1. Que caracteriza mejor a la Gerencia de Proyectos:
  1. La disciplina que se necesita para administrar y organizar recursos y procesos
  2. La cantidad de productos a entregar en un proyecto
  3. El cumplimiento de los pasos para terminar exitosamente un proyecto cumpliendo los tiempos y costos planeados
  4. El interés por liderar mas empresas a lo largo de la Administración
  1. Qué incluye el gerenciamiento de un proyecto?
1. Permitir que los requisitos se vayan manifestando por si solos
2. Establecer objetivos complejos y que reten al Administrador
3. Identificar los requisitos y condiciones
4. Establecer objetivos que sean claros y realizables

A continuación seleccione las dos respuestas correctas a las anteriores preguntas:
  1. Si las respuesta son 1 y 2
  2. Si las respuestas son 3 y 4
  3. Si las respuestas son 1 y 3
  4. Si las respuestas son 2 y 4
  1. Según PMI cuales son áreas del conocimiento para la Gerencia de Proyectos:
1. Gerencia de Adquisición de contratos
2. Gerencia de la dirección de las áreas mas grandes
3. Gerencia de tiempo
4. Subgerencia de gobierno

A continuación seleccione las dos respuestas correctas a las anteriores preguntas:
  1. Si las respuesta son 1 y 2
  2. Si las respuestas son 3 y 4
  3. Si las respuestas son 1 y 3
  4. Si las respuestas son 2 y 4
  1. Cuáles acciones mejoran las interacciones entre áreas y sub áreas de desarrollo de software con mejor rendimiento y optimización de recursos para brindar mejor calidad?
1. La visualización del equipo
2. La visualización de los datos
3. La intervención de la gerencia
4. La verificación de la documentación entregada

A continuación seleccione las dos respuestas correctas a las anteriores preguntas:
  1. Si las respuesta son 1 y 2
  2. Si las respuestas son 3 y 4
  3. Si las respuestas son 1 y 3
  4. Si las respuestas son 2 y 4
  1. Qué se logra con la técnica SCRUM al aplicarla?

1. Un acuerdo de entrega posterior a la fecha establecida con el cliente
2. Un convenio con el cliente para que no solicite cambios
3. Promueve el trabajo en equipo
4. El cliente puede comenzar a usar el software de manera rápida

A continuación seleccione las dos respuestas correctas a las anteriores preguntas:
  1. Si las respuesta son 1 y 2
  2. Si las respuestas son 3 y 4
  3. Si las respuestas son 1 y 3
  4. Si las respuestas son 2 y 4
  1. ¿Los métodos de modelado son de dos tipos dirigidos y ágiles que diferencia tienen?
  1. Los modelos dirigidos se llevan de acuerdo a un plan establecido donde están las actividades que fueron planeadas por anticipado y los avances de cada proceso se miden de acuerdo a este plan; mientras que los modelados agiles la planeación es incremental y es más fácil modificar el proceso para reflejar los requerimientos cambiantes del cliente.
  2. Los modelos dirigidos no permiten al programador hacer su labor sin antes tener un análisis previo de lo que va realizar mientras que en los modelos agiles hacen que el programador comienza su labor lo más pronto posible y entregar el software lo más rápido posible.
  3. Los modelos dirigidos plantean que antes de seguir con cualquier otra fase del proceso de desarrollo se cumpla la anterior de forma rígida; mientras que los modelados agiles permiten ir haciendo modificación sobre un proceso anterior y avanzar de forma rápida.
  4. Todas las anteriores
  1. ¿Cuáles son los modelos de procesos de software?
    1. Modelo de Desarrollo incremental.
    2. Modelo de Ingeniería de software orientada a la reutilización
    3. Modelo en cascada.
    4. Todas las anteriores.
  1. ¿Dentro del modelo en cascada existen unas etapas cuáles son?
  1. Evolución del software
  2. Diseño e implementación del software.
  3. Especificación del software.
  4. Validación del software.
  5. Todas las anteriores.
  1. ¿Por qué se hace necesario hacer un levantamiento de requerimientos antes de desarrollar un sistema software?
  1. Estos requerimientos deben estar claros puesto que partimos de ellos para modelar el software y estos requerimientos son lo que el cliente pide que desarrollemos y los que al final debemos entregarle de forma funcional.
  2. Vamos a necesitar un punto de partida para saber lo que vamos a desarrollar
  3. Para obtener información referente de que es lo que se trata de desarrollar y que cumpla con las necesidades del usuario
  1. ¿En los métodos ágiles, en que parte el cliente interviene en el proceso de desarrollo?
  1. Confiablidad en el diseño
  2. Diseño rápido, liberaciones frecuentes de software
  3. Estructura de la documentación
  1. ¿En que se basa la decisión de usar un enfoque de desarrollo ágil?
  1. Tipo de software que se elabora y capacidades del equipo de desarrollo
  2. La programación extrema
  3. Actualizaciones de software
  1. La programación extrema, que característica integra para que existan buenas prácticas de programación.
    1. Mejoramiento continuo de software
    2. Poca agilidad en el desarrollo
    3. Ausencia del cliente en el equipo de desarrollo
  1. ¿Para crear características importantes en cuanto a la programación extrema, que se debe desarrollar?

    1. Reducción de gastos en el proceso
    2. Desarrollar pruebas automatizadas
    3. Liberaciones frecuentes de software
  1. ¿Qué ofrece el método Scrum para mejorar el diseño?
    1. Planeación en mejorar el trabajo
    2. Marco de referencia para la administración del proyecto
    3. Marco de referencia para mejorar la documentación
  1. ¿En qué se centran los conjuntos sprints?
    1. Son métodos agiles para sistemas grandes
    2. Son periodos fijos cuando se desarrolla un incremento de un sistema
    3. Integra muchos equipos de desarrollo para el proyecto
  1. ¿Dentro de la metodología Scrum en que se basa la planeación?
    1. Controlar los cambios de un sistema
    2. Dedican recursos significativos para el proceso del cambio.
    3. Priorizar un atraso de trabajo y seleccionar las tareas de importancia
  1. Una de estas opciones NO es correcta para una metodología ágil:
    1. Proceso mucho más controlado, con numerosas políticas/normas
    2. Grupos grandes y posiblemente distribuidos
    3. No existe contrato tradicional o al menos es bastante flexible
    4. La arquitectura del software es esencial y se expresa mediante modelos
  1. La siguiente se afirmación es VERDADERO ó FALSO:

Los ingenieros de software deben “tener buenos reflejos” para dar cabida a los cambios descritos”

-VERDADERO
  1. Con el software ágil qué otras cosas podemos lograr?:
    1. Los ingenieros de software deben “tener buenos reflejos” para dar cabida a los cambios descritos.
    2. La agilidad reconoce que la planificación bajo condiciones de incertidumbre tiene sus límites y el plan de un proyecto debe ser flexible.
    3. La agilidad también fomenta actitudes y estructuras grupales que facilitan la comunicación (entre integrantes del equipo, entre tecnólogos y ejecutivos, y entre ingenieros de software y gerentes).
  1. ¿Qué es un proceso adaptable?
    1. Un proceso es adaptable cuando es posible cambiar rápidamente el proyecto y las condiciones técnicas.
    2. Los principios definen el espíritu ágil de los procesos de desarrollo de software.
    3. Satisfacer al cliente mediante la entrega temprana y continua de software útil.
    4. El proceso de copia de seguridad adaptable de sub archivos de inclusión/exclusión es válido sólo para procesos de copia de seguridad y de restauración.

PREGUNTAS DE SELECCIÓN MÚLTIPLE
  1. La agilidad puede aplicarse a un proceso de software siempre y cuando:
    1. El proceso permite al equipo adaptar tareas y hacerlas más eficientes.
    2. La planificación debe comprender la fluidez del enfoque ágil.
    3. Dejar sólo los productos de trabajo que sean esenciales y concisos.
    4. El cliente reciba software funcional de forma incremental lo más rápido posible para el tipo de producto y ambiente de operación.
    5. Para muchos tipos de software el diseño y la construcción se entrelazan.
  1. ¿Cómo se logra alcanzar la agilidad del software?
    1. Satisfacer al cliente mediante la entrega temprana y continua de software útil.
    2. Aceptar los cambios de requerimientos, incluso en fases avanzadas del desarrollo.
    3. Un proceso ágil debe ser adaptable, lo cual ayuda a lidiar con la imprevisibilidad.
    4. Los partidarios del desarrollo ágil argumentan que un proceso ágil bien diseñado permite la incorporación tardía de cambios sin impacto drástico en tiempo y costo.
    5. La agilidad reconoce que la planificación bajo condiciones de incertidumbre tiene sus límites y el plan de un proyecto debe ser flexible.





No hay comentarios:

Publicar un comentario