Puntos historia vs Puntos Función. Que no, que no son lo mismo.
Os traigo otro clásico, otro debate que se ha convertido ya en tradicional, el de comparar, digo casi equiparar, puntos función con puntos historia. Suele darse en aquellos lugares que vienen de un entorno más clásico y tradicional, usando puntos función, y quieren dar un ligero paso a la agilidad… usando puntos historia, pero sin dejar muy lejos el pasado.
Total, como ambos tienen la palabra “puntos” en su nombre pues… serán lo mismo ¿no? Pues no, no. Vamos con algunas diferencias…
Los puntos historia miden tamaño en función del “esfuerzo” y los puntos función tamaño en función de la “complejidad”
Los Puntos Función son una métrica, obtenida tras aplicar una formula, que pretende establecer el tamaño en función de la complejidad de los requisitos. Para más datos, hace ya sus añitos te dejé por estos lugares algo que ya hasta suena a antiguo: Los puntos función. Una breve introducción a la estimación software.
Los puntos historia son una unidad usada, normalmente, para establecer el “tamaño” de una historia de usuario en función del esfuerzo. Una historia de usuario de 2 puntos historia se estima que requerirá el doble de esfuerzo que una historia de 1 punto historia. Ya lo hemos contado varias veces (en el libro el libro “Cómo sobrevivir… A la planificación de un proyecto ágil” de 233 Grados de TI, en los post Como estimamos proyectos Scrum o en general ágiles y en ¿Qué es la velocidad en un proyecto software?).
Los puntos historia trabajan con requisitos poco documentados (si falta información se busca la interacción entre personas) y los puntos función necesitan requisitos exhaustivos
Los puntos función suelen venir de la mano del ciclo de vida en cascada, del proyecto cerrado, de la especificación de requisitos pormenorizada. Necesitan requisitos altamente detallados, usualmente en papel, para poder sacar de ellos todos los datos necesarios para lanzar las formulas de su cálculo. Datos del tipo a ficheros que tocará la implementación de ese requisito, procesos, entradas, salidas (así resumidamente, que no quiero hacer complejo el post).
Los puntos historia suelen usarse con historias de usuario, recuerda lo de la historia de usuario en las metodologías ágiles.
Los puntos historia se basan en la experiencia y los puntos función en formulas
Los puntos historia se obtienen desde el conocimiento global del equipo, su experiencia, y los puntos función en base a formulas predefinidas (obtenidas por otros en función de datos estadísticos, aunque el calculo final se tenga que parametrizar según el caso concreto)
Los puntos historia no están ni mucho menos tan normalizados como los puntos función
Lo cual no es ni mucho menos un problema, es una forma diferente de ver las cosas. Mientras que los puntos historia se asignan normalmente desde el conocimiento compartido del equipo (véanse técnicas como el planning poker), para los puntos función hay numerosas, arduas, complejas y amplias normas y metodologías para su cálculo, véanse algunas de muchas… ISO 20968:2002 Mk II Function Point Analysis, ISO 20926:2009 IFPUG, ISO/IEC 19761 COSMIC-FFP o ISO/IEC 24570 NESMA.