TRABAJO COLABORATIVO 4
PROYECTO DE GRADO (ING. DE SISTEMAS)
GRUPO: 201014_7
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:
- La prioridad es satisfacer al cliente mediante tempranas y continuas entregas de software que le aporte un valor.
- Dar la bienvenida a los cambios. Se capturan los cambios para que el cliente tenga una ventaja competitiva.
- Entregar frecuentemente software que funcione desde un par de semanas a un par de meses, con el menor intervalo de tiempo posible entre entregas.
- La gente del negocio y los desarrolladores deben trabajar juntos a lo largo del proyecto.
- 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.
- 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.
- El software que funciona es la medida principal de progreso.
- La atención continua a la calidad técnica y al buen diseño mejora la agilidad.
- La simplicidad es esencial.
- Las mejores arquitecturas, requisitos y diseños surgen de los equipos organizados por sí mismos.
- 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:
- ¿De qué forma se da el ciclo de vida del desarrollo del Software Ágil?
- De forma perpendicular
- De forma cíclica
- De forma piramidal
- De forma descendente
- Kamban permite:
- Disponer de un mínimo de espacio en la infraestructura
- Mejorar la actitud del cliente hacia el desarrollador de software
- Aplazar el tiempo de entrega del software
- Añadir requerimientos innecesarios al desarrollo del software
- ¿Cuál es la mejor forma de conocer los resultados de la tecnología de software ágil?
- Por medio de simulaciones en entornos virtuales, donde se da personalidad a los desarrolladores
- Implementando la tecnología en un entorno real
- Preguntando a quien tienen algo de idea en el tema pero no han puesto en práctica la tecnología
- Leyendo blogs en la Internet
- ¿Que se busca con el control al pronóstico?
- Proponer solución al problema de un entorno real
- Proponer dejar de lado los problemas e iniciar de ceros
- Ignorar el problema y seguir con el desarrollo
- Anotar todo lo que tenga que ver con el problema
- En el proceso de pruebas y control de calidad de software se puede encontrar?
- Un ajuste o modificación del software para ser verificado en cuanto a su funcionalidad y calidad
- Modificación de todos los parámetros de calidad en el software
- Ejecución de todos los procesos del ciclo de vida de un proyecto
- Seguimiento y control en el proceso de calidad
- Entre las diferentes actividades del proceso de pruebas y control de calidad encontramos algunas tales como?
- Entrega de requerimientos, actualización de software, verificación de calidad
- Recibir y asignar requerimiento, Verificar requerimiento, agendar fecha pruebas, Actualizar manuales usuario
- Pruebas y controles de requerimientos, funciones especificas, software detallado, análisis de pruebas
- Funcionalidad de procesos de calidad, ajustes de fechas, actualización de manuales de usuario
- Cuál es el objetivo del plan de pruebas?
- Verificar los objetivos específicos del sistema o proyecto
- Ajustar los procesos de software para todo lo requerido en los procesos de software
- 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
- Funcionalidad de procesos de calidad, ajustes de fechas, actualización de manuales de usuario
- Que determina el alcance de un proyecto?
- Identificar todos los problemas que el proyecto necesite
- Verificar los objetivos específicos del sistema o proyecto
- Ajustar las fechas que el grupo de desarrollo necesite
- Las entregas del software por parte del grupo de desarrollo para posteriormente entrar en pruebas y verificaciones
- Que actores principales intervienen en el ciclo de vida de un proyecto?
- Personal de aseo, modelos del ciclo de vida, fases del proyecto
- Empleados, jefes de seguridad, área de sistemas, coordinadores
- Director del proyecto, cliente, Equipo de trabajo, coordinadores, patrocinadores, productores, ingenieros
- Implementación de software, planificación, ejecución, iniciación, control y entrega.
- En las entregas de software se realizan diversas pruebas con el fin de validar?
- La visualización de los datos con su respuesta y realización de las transacciones.
- Validaciones requeridas por el usuario
- Interacción con el cliente indicándole su implementación
- Funcionalidad de procesos de calidad, ajustes de fechas, actualización de manuales de usuario
- Cuáles son las fases de un proyecto?
- Prototipo, antecedentes, control, planeación
- Planeación, Ejecución, Iniciación, Control, Entrega
- Entrega, cronograma, tablas ejecución y entrega
- Control, prototipo, cronograma, actividades definidas
- Que debe conocer un ingeniero de sistemas para la ejecución de un proyecto?
- Implementación de software, planificación, ejecución, iniciación, control y entrega.
- Implementación de Software, Desarrollador, Programador y análisis de información
- Funcionalidad de procesos de calidad, ajustes de fechas, actualización de manuales de usuario
- Modificación de todos los parámetros de calidad en el software
- Que determina el Project Managment Office?
- Interacción con el cliente indicándole su implementación y funcionalidad
- Ajustar los procesos de software para todo lo requerido en los procesos de software
- Mantener los estándares de los procesos que relacionan la gestión en una organización hacia el ciclo de vida de un proyecto.
- Ejecución de todos los procesos del ciclo de vida de un proyecto
- Cuáles son los roles en la metodología SCRUM?
- Prototipo, antecedentes, control, planeación
- Ingenieros, desarrolladores, Coordinadores, Empleados
- Control, prototipo, cronograma, actividades definidas
- Product Owner, Stakeholders, Usuarios
- Que caracteriza mejor a la Gerencia de Proyectos:
- La disciplina que se necesita para administrar y organizar recursos y procesos
- La cantidad de productos a entregar en un proyecto
- El cumplimiento de los pasos para terminar exitosamente un proyecto cumpliendo los tiempos y costos planeados
- El interés por liderar mas empresas a lo largo de la Administración
- 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:
- Si las respuesta son 1 y 2
- Si las respuestas son 3 y 4
- Si las respuestas son 1 y 3
- Si las respuestas son 2 y 4
- 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:
- Si las respuesta son 1 y 2
- Si las respuestas son 3 y 4
- Si las respuestas son 1 y 3
- Si las respuestas son 2 y 4
- 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:
- Si las respuesta son 1 y 2
- Si las respuestas son 3 y 4
- Si las respuestas son 1 y 3
- Si las respuestas son 2 y 4
- 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:
- Si las respuesta son 1 y 2
- Si las respuestas son 3 y 4
- Si las respuestas son 1 y 3
- Si las respuestas son 2 y 4
- ¿Los métodos de modelado son de dos tipos dirigidos y ágiles que diferencia tienen?
- 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.
- 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.
- 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.
- Todas las anteriores
- ¿Cuáles son los modelos de procesos de software?
- Modelo de Desarrollo incremental.
- Modelo de Ingeniería de software orientada a la reutilización
- Modelo en cascada.
- Todas las anteriores.
- ¿Dentro del modelo en cascada existen unas etapas cuáles son?
- Evolución del software
- Diseño e implementación del software.
- Especificación del software.
- Validación del software.
- Todas las anteriores.
- ¿Por qué se hace necesario hacer un levantamiento de requerimientos antes de desarrollar un sistema software?
- 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.
- Vamos a necesitar un punto de partida para saber lo que vamos a desarrollar
- Para obtener información referente de que es lo que se trata de desarrollar y que cumpla con las necesidades del usuario
- ¿En los métodos ágiles, en que parte el cliente interviene en el proceso de desarrollo?
- Confiablidad en el diseño
- Diseño rápido, liberaciones frecuentes de software
- Estructura de la documentación
- ¿En que se basa la decisión de usar un enfoque de desarrollo ágil?
- Tipo de software que se elabora y capacidades del equipo de desarrollo
- La programación extrema
- Actualizaciones de software
- La programación extrema, que característica integra para que existan buenas prácticas de programación.
- Mejoramiento continuo de software
- Poca agilidad en el desarrollo
- Ausencia del cliente en el equipo de desarrollo
- ¿Para crear características importantes en cuanto a la programación extrema, que se debe desarrollar?
- Reducción de gastos en el proceso
- Desarrollar pruebas automatizadas
- Liberaciones frecuentes de software
- ¿Qué ofrece el método Scrum para mejorar el diseño?
- Planeación en mejorar el trabajo
- Marco de referencia para la administración del proyecto
- Marco de referencia para mejorar la documentación
- ¿En qué se centran los conjuntos sprints?
- Son métodos agiles para sistemas grandes
- Son periodos fijos cuando se desarrolla un incremento de un sistema
- Integra muchos equipos de desarrollo para el proyecto
- ¿Dentro de la metodología Scrum en que se basa la planeación?
- Controlar los cambios de un sistema
- Dedican recursos significativos para el proceso del cambio.
- Priorizar un atraso de trabajo y seleccionar las tareas de importancia
- Una de estas opciones NO es correcta para una metodología ágil:
- Proceso mucho más controlado, con numerosas políticas/normas
- Grupos grandes y posiblemente distribuidos
- No existe contrato tradicional o al menos es bastante flexible
- La arquitectura del software es esencial y se expresa mediante modelos
- La siguiente se afirmación es VERDADERO ó FALSO:
“Los
ingenieros de software deben “tener buenos reflejos” para dar
cabida a los cambios descritos”
-VERDADERO
- Con el software ágil qué otras cosas podemos lograr?:
- Los ingenieros de software deben “tener buenos reflejos” para dar cabida a los cambios descritos.
- La agilidad reconoce que la planificación bajo condiciones de incertidumbre tiene sus límites y el plan de un proyecto debe ser flexible.
- 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).
- ¿Qué es un proceso adaptable?
- Un proceso es adaptable cuando es posible cambiar rápidamente el proyecto y las condiciones técnicas.
- Los principios definen el espíritu ágil de los procesos de desarrollo de software.
- Satisfacer al cliente mediante la entrega temprana y continua de software útil.
- 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
- La agilidad puede aplicarse a un proceso de software siempre y cuando:
- El proceso permite al equipo adaptar tareas y hacerlas más eficientes.
- La planificación debe comprender la fluidez del enfoque ágil.
- Dejar sólo los productos de trabajo que sean esenciales y concisos.
- El cliente reciba software funcional de forma incremental lo más rápido posible para el tipo de producto y ambiente de operación.
- Para muchos tipos de software el diseño y la construcción se entrelazan.
- ¿Cómo se logra alcanzar la agilidad del software?
- Satisfacer al cliente mediante la entrega temprana y continua de software útil.
- Aceptar los cambios de requerimientos, incluso en fases avanzadas del desarrollo.
- Un proceso ágil debe ser adaptable, lo cual ayuda a lidiar con la imprevisibilidad.
- 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.
- 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