Cel: +52 (55) 3040-5403 Correo: mariana.velazquez@recluit.com
post-tittle

Consejos para mejorar los tiempos de desarrollo

Por: Reclu IT

11 de mayo de 2023

Los líderes IT enfrentan el constante desafío de reducir tiempos en el proceso del desarrollo de software, esto sin sacrificar la calidad del producto.

Aquí están cinco consejos clave para acelerar sus procesos de desarrollo de software:

  • Implementar la integración continua

Agile es ahora la norma y casi todas las organizaciones lo han implementado hasta cierto punto. Esta metodología viene en muchas formas, pero el objetivo es siempre el mismo: incorporar iteraciones y comentarios al proceso de desarrollo con planificación continua, pruebas continuas, integración continua y otros métodos de evolución continua tanto del proyecto como del software. Lo más importante es que enfocarse en capacitar al equipo para que colabore y se tomendecisiones juntos de manera rápida y efectiva.

CI es la práctica de integrar código en un repositorio compartido varias veces al día / semana. Luego, cada registro se verifica mediante una compilación automatizada, lo que permite a los equipos detectar problemas con anticipación. La idea es crear e integrar el software con frecuencia, con la misma frecuencia que cada registro de código, para detectar problemas lo antes posible. CI permite pruebas automatizadas, desacopla las compilaciones de software de las implementaciones de software y, básicamente, permite la implementación continua. Ejemplos de plataformas de CI son Jenkins, Microsoft Visual Studio VSTS / TFS, Atlassian Bamboo, TeamCity y más.

  • WIP (Work In Progress)

El consejo con respecto al flujo de trabajo sería administrar y limitar el WIP para cada uno de los pasos. La razón es que la productividad disminuye a medida que aumenta la multitarea. No hay trucos ni consejos para solucionarlo. Si utilizas un tablero kanban, se puede especificar el número máximo de tareas permitidas en cada columna. Como en el siguiente ejemplo:

WIP determinan la cantidad máxima (a veces también la mínima) de trabajo en cada etapa de su flujo de trabajo. Pronto aprenderás que no sólo limitar WIP reduciría la cantidad de trabajo «casi terminado», sino que también lo ayudaría a identificar ineficiencias y cuellos de botella en su tubería.

  • Definir estándares de desarrollo claros

Casi todos los equipos de software tienen sus propias mejores prácticas informales. Te sorprendería ver cuántas de esas «reglas no oficiales» cambiarán o simplemente desaparecerán una vez que comiencen a «formalizarlas». Estos estándares de desarrollo se pueden derivar por consenso o consultores de expertos, siempre que estén documentados, acordados por todos los equipos de su organización y, lo más importante, se apliquen continuamente a todos los niveles.

En estos estándares se debe enfatizar la documentación y el proceso de revisión del código. Después de todo, la falta de documentación reduce drásticamente la responsabilidad de los autores y dificulta el seguimiento del progreso. Todos sabemos lo frustrante y lento que puede ser comenzar a trabajar en una base de código con diversos estilos de programación y formato que parece una colcha, sin mencionar la gran mejora en la calidad y la seguridad que experimentará.

  • Implementar la automatización para las pruebas

Hay muchos beneficios de realizar las pruebas con herramientas automatizadas en términos de productividad y eficiencia, pero también hay un beneficio adicional importante en su costo de desarrollo. Como se detalla en la investigación del instituto Ponemon, corregir un defecto en una etapa temprana del proceso de desarrollo de software requiere mucho menos tiempo y recursos y, por lo tanto, reduce sustancialmente los costos de desarrollo.

  • Pensar en los desarrolladores

El desarrollo de software es un proceso creativo, que exige concentración y atención. Un desarrollador promedio está enfocado y es productivo durante las primeras 6-7 horas de su día. En términos de productividad, aumentará aproximadamente una hora después del comienzo del día y comenzará a bajar de 3 a 4 horas después. Después de 10 horas de programar, tus colaboradores pueden hacer más daño que bien. Además, ¿por qué querrías pagarles a tus desarrolladores para que trabajen cuando no son productivos como lo eran al principio del día?

imagen: @seventyfour

Deja tu comentario

Tu dirección de correo electrónico no será publicada.

Campos obligatorios(*)
post-tittle

Consejos para mejorar los tiempos de desarrollo

Por: Reclu IT

11 de mayo de 2023

Los líderes IT enfrentan el constante desafío de reducir tiempos en el proceso del desarrollo de software, esto sin sacrificar la calidad del producto.

Aquí están cinco consejos clave para acelerar sus procesos de desarrollo de software:

  • Implementar la integración continua

Agile es ahora la norma y casi todas las organizaciones lo han implementado hasta cierto punto. Esta metodología viene en muchas formas, pero el objetivo es siempre el mismo: incorporar iteraciones y comentarios al proceso de desarrollo con planificación continua, pruebas continuas, integración continua y otros métodos de evolución continua tanto del proyecto como del software. Lo más importante es que enfocarse en capacitar al equipo para que colabore y se tomendecisiones juntos de manera rápida y efectiva.

CI es la práctica de integrar código en un repositorio compartido varias veces al día / semana. Luego, cada registro se verifica mediante una compilación automatizada, lo que permite a los equipos detectar problemas con anticipación. La idea es crear e integrar el software con frecuencia, con la misma frecuencia que cada registro de código, para detectar problemas lo antes posible. CI permite pruebas automatizadas, desacopla las compilaciones de software de las implementaciones de software y, básicamente, permite la implementación continua. Ejemplos de plataformas de CI son Jenkins, Microsoft Visual Studio VSTS / TFS, Atlassian Bamboo, TeamCity y más.

  • WIP (Work In Progress)

El consejo con respecto al flujo de trabajo sería administrar y limitar el WIP para cada uno de los pasos. La razón es que la productividad disminuye a medida que aumenta la multitarea. No hay trucos ni consejos para solucionarlo. Si utilizas un tablero kanban, se puede especificar el número máximo de tareas permitidas en cada columna. Como en el siguiente ejemplo:

WIP determinan la cantidad máxima (a veces también la mínima) de trabajo en cada etapa de su flujo de trabajo. Pronto aprenderás que no sólo limitar WIP reduciría la cantidad de trabajo «casi terminado», sino que también lo ayudaría a identificar ineficiencias y cuellos de botella en su tubería.

  • Definir estándares de desarrollo claros

Casi todos los equipos de software tienen sus propias mejores prácticas informales. Te sorprendería ver cuántas de esas «reglas no oficiales» cambiarán o simplemente desaparecerán una vez que comiencen a «formalizarlas». Estos estándares de desarrollo se pueden derivar por consenso o consultores de expertos, siempre que estén documentados, acordados por todos los equipos de su organización y, lo más importante, se apliquen continuamente a todos los niveles.

En estos estándares se debe enfatizar la documentación y el proceso de revisión del código. Después de todo, la falta de documentación reduce drásticamente la responsabilidad de los autores y dificulta el seguimiento del progreso. Todos sabemos lo frustrante y lento que puede ser comenzar a trabajar en una base de código con diversos estilos de programación y formato que parece una colcha, sin mencionar la gran mejora en la calidad y la seguridad que experimentará.

  • Implementar la automatización para las pruebas

Hay muchos beneficios de realizar las pruebas con herramientas automatizadas en términos de productividad y eficiencia, pero también hay un beneficio adicional importante en su costo de desarrollo. Como se detalla en la investigación del instituto Ponemon, corregir un defecto en una etapa temprana del proceso de desarrollo de software requiere mucho menos tiempo y recursos y, por lo tanto, reduce sustancialmente los costos de desarrollo.

  • Pensar en los desarrolladores

El desarrollo de software es un proceso creativo, que exige concentración y atención. Un desarrollador promedio está enfocado y es productivo durante las primeras 6-7 horas de su día. En términos de productividad, aumentará aproximadamente una hora después del comienzo del día y comenzará a bajar de 3 a 4 horas después. Después de 10 horas de programar, tus colaboradores pueden hacer más daño que bien. Además, ¿por qué querrías pagarles a tus desarrolladores para que trabajen cuando no son productivos como lo eran al principio del día?

imagen: @seventyfour

Deja tu comentario

Tu dirección de correo electrónico no será publicada.

Campos obligatorios(*)

Política de privacidad de www.recluit.mx

Para recibir la información sobre sus Datos Personales, la finalidad y las partes con las que se comparte,
contacten con el Propietario.