Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Tablas de Metodologias

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 10

METODOLOGIA DESCRIPCION

La tecnología Scrum La metodología Scrum es un marco de trabajo o framework que se


utiliza dentro de equipos que manejan proyectos complejos. Es
decir, se trata de una metodología de trabajo ágil que tiene como
finalidad la entrega de valor en períodos cortos de tiempo y para
ello se basa en tres pilares: la transparencia, inspección y
adaptación. Al estar enmarcada dentro de las metodologías agile,
Scrum se basa en aspectos como: 
La flexibilidad en la adopción de cambios y nuevos requisitos
durante un proyecto complejo.
El factor humano.
La colaboración e interacción con el cliente.
El desarrollo iterativo como forma de asegurar buenos resultados.
Características:
1. Transparencia
Con el método Scrum todos los implicados tienen conocimiento de
qué ocurre en el proyecto y cómo ocurre. Esto hace que haya un
entendimiento “común” del proyecto, una visión global.
2. Inspección
Los miembros del equipo Scrum frecuentemente inspeccionan el
progreso para detectar posibles problemas. La inspección no es un
examen diario, sino una forma de saber que el trabajo fluye y que el
equipo funciona de manera auto-organizada.
3. Adaptación
Cuando hay algo que cambiar, el equipo se ajusta para conseguir el
objetivo del sprint. Esta es la clave para conseguir el éxito en
proyectos complejos, donde los requisitos son cambiantes o poco
definidos y en donde la adaptación, la innovación, la complejidad y
flexibilidad son fundamentales.
Los equipos de Scrum son auto-organizados y multifuncionales. Es
decir, cada uno es responsable de unas tareas determinadas y de
terminarlas en los tiempos acordados. Esto garantiza la entrega de
valor del equipo completo, sin necesidad de ayuda o la supervisión
minuciosa de otros miembros de la organización.
El proceso
En Scrum un proyecto se ejecuta en ciclos temporales cortos y de
duración fija. Cada iteración tiene que proporcionar un resultado
completo, un incremento de producto final que sea susceptible de
ser entregado con el mínimo esfuerzo al cliente cuando lo solicite.
El proceso parte de la lista de objetivos/requisitos priorizada del
producto, que actúa como plan del proyecto. En esta lista el cliente
(Product Owner) prioriza los objetivos balanceando el valor que le
aportan respecto a su coste (que el equipo estima considerando
la Definición de Hecho) y quedan repartidos en iteraciones y
entregas. 
Planificación de la iteración
El primer día de la iteración se realiza la reunión de planificación de
la iteración. Tiene dos partes:
Selección de requisitos (2 horas). El cliente presenta al equipo la
lista de requisitos priorizada del producto o proyecto. El equipo
pregunta al cliente las dudas que surgen y selecciona los requisitos
más prioritarios que prevé que podrá completar en la iteración, de
manera que puedan ser entregados si el cliente lo solicita.
Planificación de la iteración (2 horas). El equipo elabora la lista de
tareas de la iteración necesarias para desarrollar los requisitos
seleccionados. La estimación de esfuerzo se hace de manera
conjunta y los miembros del equipo se autoasignan las tareas,
se autoorganizan para trabajar incluso en parejas (o grupos
mayores) con el fin de compartir conocimiento (creando un equipo
más resiliente) o para resolver juntos objetivos especialmente
complejos.

La tecnología Ágil La metodología Agile es una fórmula para el desarrollo de


proyectos que necesitan rapidez y flexibilidad para adecuarse a
las necesidades del cliente, y siempre está enfocada a mejorar
resultados. Aplicar el enfoque Agile a los procesos internos de una
empresa es mucho más simple de lo que parece. En la metodología
Agile no se planifica ni se diseña el producto por adelantado,
evoluciona basándose en bucles de retroalimentación. Se trabaja por
períodos (denominados sprints), que pueden ser de dos o tres
semanas, y durante ese tiempo cada miembro del equipo debe
ejecutar una serie de tareas. Al final del sprint, se entregan los
avances y se comienza de nuevo el proceso. De este modo, el
cliente va recibiendo poco a poco novedades y puede ir marcando
prioridades o introduciendo cambios. 
ventajas de trabajar en Agile:
 
1. Versatilidad, orientada a la consecución de objetivos
La gestión de proyectos no es algo preestablecido, no responde a un
patrón, sino que va orientado a la consecución de objetivos reales y
tangibles desde el primer mes.
Utiliza técnicas de Inbound Marketing (marketing de atracción),
pero siempre ajustable 100% a las necesidades del cliente.
 
2. Reestructuración de acciones
En la metodología Agile se trabaja con estrategias anuales, pero con
una revisión trimestral de las acciones que se están llevando a cabo.
De esta forma, esta estrategia se va modulando según los objetivos
del cliente.
3. Transparencia
Otro de los beneficios de la metodología Agile es que el proceso es
100% transparente, por lo que el cliente tiene el control en todo
momento de esa externalización de servicios. La forma de trabajar
es 100% transparente, a través de la metodología Scrum (por
Sprints u organizaciones de entregas de trabajo cada dos semanas).
Técnicas para aplicar la metodología ágil
Tableros Kanban
En primer lugar vamos a hablar sobre los Tableros Kanban. Es un
concepto sencillo de aplicar y muy útil. Consiste en dividir un
tablero en columnas que indican los estados por los que debe pasar
un proyecto.
Lo más común es dividir el tablero en cuatro columnas. En la
primer columna podemos poner «tareas que hacer» y en distintos
post-it indicar las tareas, en la segunda columna deberán indicarse
qué tareas están en proceso, en la tercera se incluirán las que están
en fase de prueba y en la última columna todas las tareas
finalizadas.
Diagrama Burndown
El diagrama Burndown, también denominado diagrama de trabajo
pendiente, permite conocer el tiempo que falta para terminar todas
las tareas pendientes en un sprint.
Son fáciles de diseñar , muy visuales para conocer cuánto tiempo
falta para acabar y su mantenimiento no es costoso.
Ventajas:
Mejora de la calidad del producto: Estas metodologías fomentan el
enfoque proactivo de los miembros del equipo en la búsqueda de la
excelencia del producto. Además, la integración, comprobación y
mejora continúa de las propiedades del producto mejora
considerablemente el resultado final.
Mayor satisfacción del cliente: El cliente está más satisfecho al
verse involucrado y comprometido a lo largo de todo el proceso de
desarrollo. Mediante varias demostraciones y entregas, el cliente
vive a tiempo real las mejoras introducidas en el proceso.
Mayor motivación de los trabajadores: Los equipos de trabajo
autogestionados, facilitan el desarrollo de la capacidad creativa y de
innovación entre sus miembros.
Trabajo colaborativo: La división del trabajo por distintos equipos y
roles junto al desarrollo de reuniones frecuentes, permite una mejor
organización del trabajo.
Uso de métricas más relevantes: Las métricas utilizadas para
estimar parámetros como tiempo, coste, rendimiento, etc. son
normalmente más reales en proyectos ágiles que en los
tradicionales. Gracias a la división en pequeños equipos y fases
podemos ser más conscientes de lo que está sucediendo.
Mayor control y capacidad de predicción: La oportunidad de revisar
y adaptar el producto a lo largo del proceso ágil, permite a todos los
miembros del proyecto ejercer un mayor control sobre su trabajo,
cosa que permite mejorar la capacidad de predicción en tiempo y
costes.
Reducción de costes: La gestión ágil del proyecto elimina
prácticamente la posibilidad de fracaso absoluto en el proyecto,
porque los errores se van identificando a lo largo del desarrollo en
lugar de esperar a que el producto esté acabado y toda la inversión
realizada.
Método Kanban Los sistemas Kanban consisten en un conjunto de formas de
comunicarse e intercambiar información entre los diferentes
operarios y sistemas de una línea de producción, de una empresa, o
entre proveedor y cliente. Su propósito es simplificar la
comunicación, agilizándola y evitando errores producidos por falta
de información.
El ejemplo más común de “Kanban” son las etiquetas que se les
incorporan a los productos mientras son fabricados, para que
posteriormente quede identificado a dónde tienen que enviarse o
qué características tiene. Los “Kanban” también pueden ser ordenes
de trabajo, es decir, incluir información acerca nos dé información
acerca de qué operaciones se deben hacer y con cada producto, en
qué cantidad, mediante qué medios y como transportarlo.
Ventajas de usar sistemas Kanban
Ventajas en los procesos productivos:
1.- Aumenta la flexibilidad de los procesos de producción y
transporte.
2.- Si se usa un sistema informatizado, permite conocer la situación
de todos los ítems en cada momento y dar instrucciones basadas en
las condiciones actuales de cada área de trabajo.
3.- Prevenir el trabajo innecesario y prevenir el exceso de papeleo
innecesario.
Ventajas en las operaciones logísticas:
1.- Mejor control del stock de material.
2.- Posibilidad de priorizar la producción: el tipo de producto con
más importancia o urgencia se pone primero que los demás.
3.- Se facilita el control de material.
Cómo implementar un sistema Kanban
Esta herramienta se implementa mediante 4 fases:
Fase 1: Diseñar el sistema Kanban que se usará posteriormente y
formar al personal en los principios de Kanban, y los beneficios de
usarlo.
Fase 2: Implementar Kanban en aquellas líneas de producción y
actividades con más actividad, donde se generan más problemas o
donde sea más importante evitar fallos y retrasos. El entrenamiento
con el personal debe continuar en la línea de producción.
Fase 3: Implementarlo en el resto de actividades. Se deben tomar en
cuenta las opiniones de los trabajadores ya que ellos son los que
mejor conocen el sistema.
Fase 4: En la última fase debe realizar la revisión del sistema
Kanban, para mejorarlo en base a la experiencia previa.
Cuáles son los beneficios clave
1. Estímulo del rendimiento. Análisis profundo y estimaciones que
permiten medir su rendimiento. Detección de cualquier problema
existente y ajuste del flujo de trabajo para ganar en eficiencia. El
método Kanban es muy flexible y le permite perfeccionar sus
procesos para obtener los mejores resultados.

2. Organización y colaboración. La metodologia Kanban le permite


beneficiarse del poder del enfoque visual, mediante el uso de
columnas, carriles y tarjetas de colores. Usted será capaz de trabajar
en el mismo tablero que su equipo y colaborar en tiempo real. Los
tableros digitales Kanban le permitirán acceder a su flujo de trabajo
desde cualquier sitio, compartir tareas con facilidad y comunicarse
en su trabajo con sus colegas.

3. Distribución del trabajo. Una cómoda visión general de los


trabajos en curso y menos tiempo dedicado a la distribución y
presentación de los trabajos. Las estimaciones son imperfectas, por
consiguiente, un flujo constante de tareas reducirá su tiempo de
espera y el tiempo dedicado a la asignación de tareas.

La integración continua La integración continua es el nombre que se le da a la


automatización de las labores de compilación, test y análisis
estático del código. Esto se puede conseguir de muchas maneras, y
podemos llamar integración continua a todo lo que hay entre
un script que periódicamente ejecuta el trabajo y un servicio online
que lo haga. La integración continua (continuous integration en
inglés) es un modelo informático propuesto inicialmente por Martin
Fowler que consiste en hacer integraciones automáticas de un
proyecto lo más a menudo posible para así poder detectar fallos
cuanto antes. Entendemos por integración la compilación y
ejecución de pruebas de todo un proyecto.
Como funciona :
Descargará el código fuente desde el repositorio de control de
versiones (git, SVN, Mercurial...).
Compilará el código según sea necesario.
Realizará las pruebas unitarias y/o de integración.
Publicará los resultados de modo que sea accesibles.
El objetivo del desarrollo de las aplicaciones modernas es contar
con múltiples desarrolladores que trabajen de forma simultánea en
distintas funciones de la misma aplicación. La integración continua
(CI) ayuda a que los desarrolladores fusionen los cambios que
introducen en el código para incorporarlos a una división
compartida (o "rama") con más frecuencia, incluso diariamente.
Una vez que se fusionan los cambios implementados por un
desarrollador en una aplicación, se validan con el desarrollo
automático de la aplicación y la ejecución de distintos niveles de
pruebas automatizadas
Implementar esta práctica exitosamente involucra ciertos requisitos:
Tener un repositorio maestro donde esté disponible todo el código
fuente y del que cualquier integrante del equipo pueda obtenerlo.
Automatizar el proceso de integración para que cualquier persona
pueda generar una versión ejecutable del sistema a partir del código
fuente.
Automatizar las pruebas para que sea posible ejecutar la matriz
(suite) de pruebas en cualquier momento con un solo comando.
Asegurar que cualquiera puede obtener el ejecutable más reciente y
tener la confianza de que es la mejor versión hasta el momento.
Beneficios
Estos son algunos beneficios puntuales de la integración continua:
Reducir problemas de integración.
Mejorar la visibilidad del estatus del producto de software.
Acelerar la detección de fallas.
Disminuir el tiempo dedicado a depurar errores.
Evitar la espera para averiguar si un código funciona.
Como se implementa:
Mantener un repositorio único del código fuente.
Automatizar el proceso de integración (build).
Hacer que el producto de software se pueda probar a sí mismo.
Cada que se generan nuevas versiones en el repositorio (“hacer
commit”) se debe generar una nueva integración en una máquina
designada para ello (integration machine).
Mantener rápido el proceso de integración.
El ambiente de prueba debe ser un clon del ambiente de producción.
Los integrantes del equipo deben poder obtener fácilmente la
versión ejecutable más reciente.
Para que todo esto funcione se pueden establecer políticas que los
integrantes del equipo deban cumplir, tales como:
Registrar (commit) su código al menos una vez al día.
No registrar código con errores.
No registrar código sin probar.
No generar nuevas versiones con código que no funciona.
No pueden terminar sus actividades del día hasta haber registrado
su código y que el sistema se integre exitosamente.
Todos deben poder conocer el estatus en cualquier momento.
Automatizar el despliegue.

TDD (Desarrollo guiado por Es una metodología de desarrollo cuyo objetivo es crear primero las
pruebas) pruebas y luego escribir el software. Sus siglas en Inglés son: Test
Driven Development y en español significa: Desarrollo guiado por
pruebas. El test-driven development se orienta según los resultados
de los casos de prueba definidos por los desarrolladores. Su
estructura cíclica garantiza que el código se transmita al sistema
productivo únicamente cuando se hayan cumplido todos los
requisitos del software. En otras palabras, los elementos del código
se refactorizan y se vuelven a poner a prueba tantas veces como sea
necesario, hasta que el test ya no dé errores. Esta estrategia permite
enriquecer el software poco a poco con nuevas funciones,
redactando nuevo código fuente tras cada test superado. Por este
motivo, el TDD se considera un modelo incremental de desarrollo
de software.
Para el uso del TDD se deben combinar 2 metodologías: Test-first
development (escribir las pruebas primero)
y Refactoring (refactorización de código). Para esto, se usa un ciclo
de desarrollo que consta de 3 partes principales:
La prueba debe fallar. (Red: Muchas herramientas muestran los
fallos de las pruebas en rojo)
La prueba debe pasar. (Green: Al igual que lo anterior, las
herramientas muestran las pruebas que pasan en verde)
Se debe mejorar el código. (Refactoring)
Ventajas del TDD
Puedes mejorar el código de tu aplicación en cualquier momento sin
miedo a que dañes algo, ya que las pruebas ya las tienes listas y
deberán pasar siempre.
Los test que realizamos sobre las interfaces de nuestra app no
siempre son completos, generalmente es lo que nos acordamos
probar.
Los equipos de testing, development y analyst serán más felices.
La lectura del código será mucho mejor al tener ejemplos de uso
(las pruebas).
En la práctica se implementan las siguientes acciones:
Se definen todos los tests de la unidad a crear.Se toma un test
Se verifica que el test falla
Se escribe el código para pasar el test
Se verifica que el test pasa
Se refactoriza el código para eliminar la duplicación
Repetir el proceso hasta completar los tests

Metodología en v El modelo V o modelo en cuatro niveles es un modelo empleado en


diversos procesos de desarrollo, por ejemplo, en el desarrollo de
software. En los años 90 apareció su primera versión, pero con el
tiempo se ha ido perfeccionando y adaptando a los métodos
modernos de desarrollo. La idea básica, sin embargo, se remonta a
los años 70 y fue concebida como una especie de desarrollo
posterior del modelo de cascada.
Las fases del modelo V
En primer lugar, el modelo V define el curso de un proyecto en
fases individuales cada vez más detalladas:
Al principio del proyecto, el modelo prevé un análisis de las
especificaciones del sistema planificado (fase de especificaciones).
El proyecto se completa después con requisitos funcionales y no
funcionales para la arquitectura del sistema (fase funcional).
A esta fase le sigue el diseño del sistema, en el que se planifican los
componentes y las interfaces de este (fase de diseño).
Una vez completadas estas fases, se puede diseñar en detalle la
arquitectura del software (codificación).
El método V abarca las siguientes tareas:
Pruebas de unidad
Pruebas de integración
Integración del sistema
Validación
La “V” del nombre del modelo hace referencia a la forma como el
modelo compara las fases de desarrollo con las fases de control de
la calidad correspondientes. El brazo izquierdo de la letra V
contiene las tareas de diseño y desarrollo del sistema, y el derecho
las medidas de control de calidad de cada fase. En la unión entre los
dos brazos, se sitúa la implementación del producto. En los
proyectos de software, esto se refiere a la programación del
software.
Ventajas:

• La relación entre las etapas de desarrollo y los distintos tipos de


pruebas facilitan la localización de fallos.
• Es un modelo sencillo y de fácil aprendizaje
• Hace explícito parte de la iteración y trabajo que hay que revisar
• Especifica bien los roles de los distintos tipos de pruebas a realizar
• Involucra al usuario en las pruebas
Desventajas:

• Es difícil que el cliente exponga explícitamente todos los


requisitos
• El cliente debe tener paciencia pues obtendrá el producto al final
del ciclo de vida
• Las pruebas pueden ser caras y, a veces, no lo suficientemente
efectivas
• El producto final obtenido puede que no refleje todos los
requisitos del usuario
Metodología en cascada Se le denomina así por las posiciones que ocupan las diferentes
fases que componen el proyecto, colocadas una encima de otra, y
siguiendo un flujo de ejecución de arriba hacia abajo, como una
cascada.
El método de la cascada es considerado como el enfoque clásico
para el ciclo de vida del desarrollo de sistemas, se puede decir que
es un método puro que implica un desarrollo rígido y lineal.
Esta metodología cubre las tres etapas:
Descripción: Análisis, Diseño.
Desarrollo: Generación de código, Pruebas.
Mantención: Mantenimiento.
Clasificación de esta metodología.
Este modelo sugiere un desarrollo de software secuencia-lineal, que
se concibe como un conjunto de etapas que se ejecutan una tras
otra. La etapa siguiente comienza cuando termina la etapa anterior.
Etapas.
Análisis: Es la fase en la cual se reúnen todos los requisitos que
debe cumplir el software. En esta etapa es fundamental la presencia
del cliente que documenta y repasa dichos requisitos. El ingeniero
de software debe comprender el ámbito de la información del
software así como la función, el rendimiento y las interfaces
requeridas.
Diseño: Es una etapa dirigida hacia la estructura de datos, la
arquitectura del software, las representaciones de la interfaz y el
detalle procedimental (algoritmo). En forma general se hace un
esbozo de lo solicitado y se documenta haciéndose parte del
software.
Creación de código: Es la etapa en la cual se traduce el diseño para
que sea comprensible por la máquina. Esta etapa va a depender
estrechamente de lo detallado del diseño.
Pruebas: Esta etapa se centra en los procesos lógicos internos del
software, asegurando que todas las sentencias se han comprobado, y
en la detección de errores.
Mantenimiento: Debido a que el programa puede tener errores,
puede no ser del completo agrado del cliente o puede necesitar,
eventualmente acoplarse a los cambios en su entorno (sistema
operativo o dispositivos periféricos) o a que el cliente, requiera
ampliaciones funcionales o del rendimiento. Esto quiere decir que
no se rehace el programa, sino que sobre la base de uno ya existente
se realizan algunos cambios.
Ventajas.
Ha sido muy utilizado y, por lo tanto, está ampliamente contrastado.
El cliente tiene toda la información sobre el costo, el tamaño y la
línea de tiempo del proyecto por adelantado. Ellos y el equipo de
desarrollo también tienen una idea exacta sobre el resultado final
del programa y trabajan para lograrlo desde el principio.
Ayuda a detectar errores en las primeras etapas a bajo costo: El
tiempo que se pasa en diseñar el producto en las primeras fases del
proceso puede evitar problemas que serían más costosos cuando el
proyecto ya estuviese en fase de desarrollo.
Está dirigido por los tipos de documentos y resultados que deben
obtenerse al final de cada etapa.
La documentación es muy exhaustiva y si se une al equipo un
nuevo desarrollador, podrá comprender el proyecto leyendo la
documentación.
Ideal para proyectos estables, donde los requisitos son claros y no
van a cambiar a lo largo del proceso de desarrollo.

Mosqueda Cruz María del Carmen

Bibliografía
Encarna Avellan. (2020). Metodología Scrum: qué es y cómo funciona. 5 Marzo 2020, de We are
marketing Sitio web: https://www.wearemarketing.com/es/blog/metodologia-scrum-que-es-y-como-
funciona.html

Xavier Albalabejo. (2020). Qué es SCRUM. Abril 2020, de Proyectos Agiles.org Sitio web:
https://proyectosagiles.org/que-es-scrum/

ENCARNA ABELLÁN. (2020). ¿Qué es la metodología Agile y qué beneficios tiene para tu
empresa?. 6 Febrero 2020, de We are marketing Sitio web:
https://www.wearemarketing.com/es/blog/que-es-la-metodologia-agile-y-que-beneficios-tiene-para-
tu-empresa.html

Silvia Martinez . (2019). ¿Qué es la metodología ágil?. 2019, de Superrhheroes Sitio web:
https://superrhheroes.sesametime.com/la-metodologia-agil/

VANESSA ROSSELLÓ VILLÁN. (2019). Las metodologías ágiles más utilizadas y sus ventajas
dentro de la empresa. 15 Marzo 2019, de IBES Sitio web: https://www.iebschool.com/blog/que-
son-metodologias-agiles-agile-scrum/

Rodrigo González González. (2019). Método Kanban – Cómo disminuir retrasos y crear un sistema
de producción eficiente. 2019, de APDC Home Sitio web: https://www.pdcahome.com/metodo-
kanban/

Anónimo. (2018). ¿Por qué utilizar la metodología Kanban?. 2018, de Kanbantool Sitio web:
https://kanbantool.com/es/metodologia-kanban

Jorge Turrado . (2019). Integración continua: qué es y por qué deberías aprender a utilizarla cuanto
antes. 3 de julio de 2019, de Campus MVP Sitio web:
https://www.campusmvp.es/recursos/post/integracion-continua-que-es-y-por-que-deberias-
aprender-a-utilizarla-cuanto-antes.aspx

Anónimo. (2019). ¿Qué son la integración/distribución continuas (CI/CD)?. 2019, de RedHat Sitio
web: https://www.redhat.com/es/topics/devops/what-is-ci-cd

Pedro Galván. (2020). Integración Continua. 2020, de SG Sitio web:


https://sg.com.mx/revista/54/integraci-n-continua

Alexys Lozada. (2018). ¿Qué es el TDD?. 2018, de ED Team Sitio web: https://ed.team/blog/que-
es-el-tdd

Anónimo. (2020). Test-driven development: así funciona este método. 29 Septiembre 2020, de
Digital Guide Ionos Sitio web: https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/que-
es-el-test-driven-development/

Anónimo. (2019). CICLO DE VIDA EN "V". 2019, de Ingeniería de Software Sitio web:
https://ingsoftware.weebly.com/ciclo-de-vida-en-v.html

Desarrollo Web. (2020). ¿Qué es el modelo V?. 28 Septiembre 2020, de Gigital Guide IONOS Sitio
web: https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/modelo-v/

Raquel Brull. (2018). Ingeniería del Software. Metodología Cascada. 8 Abril 2018, de Medium.com
Sitio web: https://medium.com/@raquelbrull/metodolog%C3%ADa-cascada-f114683031e9

También podría gustarte