Desarrollo ágil o tradicional: ¿existe el punto intermedio?

VN:F [1.9.3_1094]
Rating: 3.5/10 (2 votes cast)

Un muy interesante artículo en Computer me volvió a recordar como desde hace ya tiempo se observa en el día a día que cuando las organizaciones se plantean implantar un método ágil, y estudian en detalle la idoneidad para su organización, con sus clientes y tipo de proyectos, raramente implantan el método ágil al 100%, y lo que hacen son adaptaciones al mismo, muchas veces incorporándole prácticas formales, como, por ejemplo, el robustecer y hacer menos iterativa la fase de diseño de la arquitectura software.

Y aunque muchas veces se leen y escuchan ciertas “posturas ágiles” que insisten y recomiendan el “todo o nada” a la hora de adoptar prácticas ágiles, la realidad en las empresas parece que refleja posturas más moderadas, hibridas y orientadas por la necesidad, negocio y mejor práctica para cada organización y proyecto (como por ejemplo muestran estudios y encuestas realizadas en conferencias ágiles, en las que la mayoría de las personas que usaban métodos ágiles no usaban todos los principios ágiles). La experiencia dice que raramente se usan todos los principios ágiles o un método formal al 100%, si no que maneras de trabajar hibridas parecen estar imponiéndose.

Está bastante aceptado, y documentado, que el desarrollo ágil es más idóneo en proyectos con cambios considerables, y que para proyectos estables se obtiene más beneficio de realizar diseños más rigurosos y desarrollos “upfront”. Por otro lado existen dos tipos de organizaciones: las flexibles (poco jerárquicas, poco burocráticas, etc.) y las rígidas (jerárquicas, burocráticas, etc.), siendo una de las principales razones para no migrar de métodos formales a ágiles “la cultura rígida” de la organización. Los métodos ágiles se adaptan más a organizaciones flexibles y proyectos con cambios, mientras que los métodos más formales son más apropiados en organizaciones rígidas y proyectos estables. Pero ¿qué sucede si la organización es flexible y el proyecto estable? ¿Y qué sucede si la organización es rígida pero el proyecto es cambiante?

De mezclar culturas organizacionales flexibles o rígidas con proyectos cambiantes o estables están apareciendo cuatro métodos de desarrollo. Los ya mencionados métodos formales (más apropiados para organizaciones rígidas con proyectos estables) y los métodos ágiles (más apropiados en organizaciones flexibles con proyectos cambiantes), a los que se añaden los iterativos-formales (más apropiados para organizaciones rígidas con proyectos cambiantes) y los métodos ágiles optimizados o con algo de diseño “upfront” (más apropiados en organizaciones flexibles con proyectos estables)

En organizaciones rígidas en las que es difícil seguir un método ágil parecen adecuarse bien los Iterativos formales. Para estas organizaciones es difícil seguir los principios del manifiesto ágil que hablan de evitar procesos rígidos o que afectan a la documentación. Pero, no obstante, pueden añadir con más facilidad aquello que el manifiesto ágil recomienda a nivel de proyecto (aunque les sea difícil añadir lo que dice a nivel de organización), como, por ejemplo, incluir reuniones frecuentes con el cliente, iteraciones, etc. Métodos como el “agile unified process” o agile UP siguen esta filosofía.

En organizaciones flexibles con proyectos poco cambiantes (sistemas embebidos, proyectos críticos, proyectos con requisitos no funcionales, etc.) seguir un ágil optimizado puede traer muchas ventajas, como optimizar la arquitectura, minimizar el retrabajo y la integración.

Numerosas evidencias muestran que mayoritariamente se están usando alguno de estos nuevos métodos híbridos (ágiles con “upfront” o formales con componentes iterativos). Esto indica que argumentos en contra de los métodos ágiles, como que no hacen diseño de la arquitectura, o contra los métodos formales, como que no responden al cambio, pueden evitarse y que las posturas radicales son muchas veces teorías que finalmente se acaban adaptando a la realidad de cada empresa.

VN:F [1.9.3_1094]
Rating: 3.5/10 (2 votes cast)
  • PDF
  • Twitter
  • LinkedIn
  • del.icio.us
  • Facebook
  • RSS
  • Google Bookmarks
  • Blogplay
  • BarraPunto
  • Meneame
  • Netvibes

Deje un Comentario

Informe CHAOS: Visión y críticas sobre el éxito de los proyectos software

VN:F [1.9.3_1094]
Rating: 0.0/10 (0 votes cast)

Leí en Projectsmart un nuevo artículo sobre el informe Chaos, “the curious case of the chaos report 2009” (gracias Maika por el enlace), que vuelve a entrar en un tema que en varias ocasiones hemos tratado en el blog: lo discutida que es mucha de la información que manejamos, y en la que nos basamos, en ingeniería software. En este caso, más dudas sobre el tan referenciado “chaos report”.

El informe CHAOS, que realiza el Standish Group, es el informe más famoso sobre el fracaso de los proyectos en el sector de las tecnologías de la información (TI) (y con él comienzan innumerables charlas de ingeniería del software y que tan bien ha venido durante años para realizar introducciones), suele realizarse cada dos años y su última edición es de abril de 2009.

1994 1996 1998 2000 2002 2004 2006 2009
Éxito 16% 27% 26% 28% 34% 29% 35% 32%
Deficientes 53% 33% 46% 49% 51% 53% 46% 44%
Fracasos 31% 40% 28% 23% 15% 18% 19% 24%

La edición 2009 del informe CHAOS muestra que los proyectos software tienen una tasa de éxito del 32%, frente al 35% del informe de 2006 y al 16% del de 1994. El éxito de los proyectos es ligeramente peor que en 2006 (32% vs 35%), pero mucho mejor que en 1994 (16%). Por otra parte, el 44% de los proyectos fueron deficientes (con retraso, por encima del presupuesto y/o con menos de los requisitos esperados) mientras que el 24% fracasaron (se cancelaron o se finalizaron pero el producto nunca se usó).

¿Cuál es la crítica? En este caso que mide el éxito de los proyectos sólo en base a si terminaron en tiempo, presupuesto y cumplieron con los requisitos… dejando fuera otros aspectos como la calidad, el riesgo y la satisfacción del cliente.

Esta crítica particular se suma a otras de las que ya hablamos hace tiempo, como que siempre se suele referenciar sólo el de 1994, que es el de peores resultados y el más sensacionalista, o  que muchos autores, tomando el informe del 94, suman directamente el 31% de fracasos y el 53% de deficientes concluyendo en que el 84% de los proyectos fracasan, creando, como afirma Glass, la sensación de que en software más del 70% de los proyectos fallan (triste imagen para nuestro sector).

No obstante, aunque el éxito de los proyectos debiera considerar otros factores, las cifras aún siguen siendo muy bajas. Y en cualquier caso, el informe CHAOS sigue siendo una medida de referencia para la industria de las TI.

VN:F [1.9.3_1094]
Rating: 0.0/10 (0 votes cast)
  • PDF
  • Twitter
  • LinkedIn
  • del.icio.us
  • Facebook
  • RSS
  • Google Bookmarks
  • Blogplay
  • BarraPunto
  • Meneame
  • Netvibes

Comentarios (2)

Abierta la inscripción para el curso online sobre procesos software con ISO 15504

VN:F [1.9.3_1094]
Rating: 9.0/10 (1 vote cast)

Recordaros que del 27 de agosto al 10 de septiembre se celebrará la segunda edición del curso online sobre la mejora de la calidad de los procesos software con ISO 15504 SPICE. El plazo de matriculación ya está abierto (aquí podéis encontrar toda la información).

Y como en otras ocasiones, al ser online no tendrás problemas de horario y si superas el examen final te enviaremos un diploma acreditativo (como el que tienen los ya más de 100 alumnos que han superado algún curso de Kybele Consulting y que aparecen en la relación de profesionales certificados), que en estos momentos de crisis siempre viene bien para el CV.

Hemos ampliado los ejercicios prácticos, y los podcast, que junto con los foros, cuestionarios, etc., tratarán temas como la visión general de la norma ISO/IEC 15504, la estructura de procesos de ISO/IEC 12207, evaluaciones, niveles de madurez, como integrarla con metodologías ágiles, etc.

Si estáis interesados, toda la información la podéis encontrar aquí. Apuntaros cuanto antes, las plazas son limitadas.

VN:F [1.9.3_1094]
Rating: 9.0/10 (1 vote cast)
  • PDF
  • Twitter
  • LinkedIn
  • del.icio.us
  • Facebook
  • RSS
  • Google Bookmarks
  • Blogplay
  • BarraPunto
  • Meneame
  • Netvibes

Deje un Comentario

Francisco Ros nos deja

VN:F [1.9.3_1094]
Rating: 10.0/10 (1 vote cast)

Hace apenas unas semanas, en España, nos llegó la noticia de que Francisco Ros, después de 6 años, había sido sustituido del cargo de secretario de Estado de Telecomunicaciones y para la Sociedad de la Información (dependiente del Ministerio de Industria).

Especialmente en informática, Francisco Ros, entre otros aspectos, será recordado por el cariño que mantenían él, el sector y la profesión del ingeniero en informática; y que se reflejaba en ciertos mensajes de calor que los Colegios de Ingenieros en Informática solían dedicarle, como, por ejemplo, estos últimos a raíz de la polémica del “The Lisbon review 2010” y el retroceso de España en sociedad de la información…  “Los informáticos piden la cabeza de Francisco Ros”, “D. Francisco Ros Perán, quien ya ha demostrado su incapacidad para afrontar con éxito los retos que exige esta importante y estratégica área para la economía Española” o “Es necesaria la dimisión del actual Secretario [Francisco Ros], o su cese inmediato”. Aunque siempre hay opiniones para todos los gustos en esta vida.

El sustituto, el nuevo responsable de Telecomunicaciones, será Bernardo Lorenzo, nacido en Granada en el 53, Ingeniero en Telecomunicaciones y que trabajó en Telefónica. A ver qué tal avanza la cosa con el cambio, desde aquí deseamos y le deseamos lo mejor.

Twitter: http://twitter.com/jgarzas

VN:F [1.9.3_1094]
Rating: 10.0/10 (1 vote cast)
  • PDF
  • Twitter
  • LinkedIn
  • del.icio.us
  • Facebook
  • RSS
  • Google Bookmarks
  • Blogplay
  • BarraPunto
  • Meneame
  • Netvibes

Deje un Comentario

¿Qué que debe saber un profesional del software?

VN:F [1.9.3_1094]
Rating: 0.0/10 (0 votes cast)

Durante años numerosas iniciativas se han dedicado, y se dedican, a aportar su definición sobre lo que un profesional del software debe conocer. Desde Universidades (cada una con su propio plan de estudios en informática), empresas y Colegios hasta destacadas asociaciones, como por ejemplo la IEEE con su proyecto SWEBOK. Pero, ¿qué piensan los profesionales? ¿Qué conocimientos creen ellos qué se deben tener para desarrollar la profesión?

Con el objetivo de encontrar una respuesta dimos con un estudio (gracias Emanuel por la referencia) que en 2000 realizó una encuesta a 186 profesionales de 24 países (si bien el 77% de los mismos eran de Norteamérica) que trabajaban en diferentes puestos, con el siguiente resumen de resultados:

¿Cuáles son los conceptos más importantes?

1.    Lenguajes de programación específicos
2.    Estructuras de datos
3.    Patrones y diseño software
4.    Arquitecturas software
5.    Requisitos
6.    Conceptos de orientación a objetos
7.    Interfaces de usuario
8.    Ética y profesión
9.    Métodos de análisis y diseño
10.    Presentaciones
11.    Gestión de proyectos
12.    Pruebas, verificación y QA
13.    Diseño de algoritmos
14.    Escritura técnica
15.    Sistemas operativos

¿Cuáles son los conceptos menos importantes?

1.    Marketing
2.    Problemas numéricos
3.    Psicología
4.    Contabilidad
5.    Economía
6.    Matrices y algebra
7.    Filosofía
8.    Otro idioma (no inglés)
9.    Física
10.    Teoría de la información
11.    Teoría de grafos
12.    Teoría de colas
13.    Gráficos
14.    Procesamiento de la señal
15.    Teoría del control

Según estos resultados, destacan como menos importantes en el mundo profesional aquellos conceptos relacionados con economía y matemáticas. Y como más importantes los relacionados con lenguajes y diseño.

Sería interesante saber vuestra opinión. Que os parece que falta o sobra. Y sería curioso replicar el estudio en el momento actual (vamos a pensarlo) y comparar los resultados con lo que hoy se enseña en las carreras de informática, más aún en el caso de España, por los cambios en los estudios universitarios de informática a raíz de Bolonia.

VN:F [1.9.3_1094]
Rating: 0.0/10 (0 votes cast)
  • PDF
  • Twitter
  • LinkedIn
  • del.icio.us
  • Facebook
  • RSS
  • Google Bookmarks
  • Blogplay
  • BarraPunto
  • Meneame
  • Netvibes

Comentarios (5)