Métodos de Medición en Puntos Función (IV): COSMIC FFP

Imagen de Rbut.


Como veíamos en nuestros artículos anteriores, los Puntos Función son una herramienta que se utiliza en muchas empresas para la valoración de los proyectos.

Vimos que había varios métodos y de ellos íbamos a tratar los siguientes: IFPUG, NESMA, Mk-II, COSMIC y FiSMA.

En el primer artículo veíamos en qué consistía el método de IFPUG, con la segunda parte vimos en qué consiste el método de NESMA, en la tercera entrega pudimos ver el funcionamiento del método MkII y ahora continuamos mostrando el método COSMIC.

COSMIC

El Método COSMIC FFP. Desarrollado por el Common Software Metrics Internacional Consortium, el denominado método Full Function Points o en general COSMIC-FFP o COSMIC, es considerado como el primer método de medición funcional de segunda generación.

Originalmente, el método fue desarrollado en 1997 por un equipo de la Universidad de Québec encabezado por el profesor Denis St-Pierre con el fin de ampliar el dominio funcional del método de puntos función hacia entornos en tiempo real.

En 1999, el Consorcio Internacional de Métricas del Software Comunes encabezado por Alain Abran y Charles Symons publican la primera versión del manual de conteo del COSMIC FFP (la numeración de la versión es la 2.0).

En 2001 se publica la versión 2.1, con una serie de aclaraciones sobre conceptos de la primera versión.

En 2003 se publica la versión 2.2, reconocida como estándar con la norma ISO/IEC 19761.

En 2009 se publica la última versión hasta la fecha la 3.0.1 que mantiene las mismas reglas de medición pero clarifica algunos conceptos.

En el método de COSMIC el tamaño funcional del software bajo medición se obtiene como un valor proporcional al número de movimientos de datos de dicho software.

Niveles

Para ello el software se entiende que está dividido en distintos Niveles (Layers) de forma jerárquica. Cada Nivel sólo puede comunicarse con sus niveles inmediatamente superior o inmediatamente inferior.

Dentro de cada nivel el software se agrupa en componentes llamados Pares (Peers) teniendo todos ellos el mismo nivel jerárquico.

Los Procesos Funcionales se recogen dentro de los distintos Pares.
El intercambio de información entre distintos niveles se realiza a través de sus respectivos Procesos Funcionales.

Las entidades de una aplicación se asocian en Grupos de Datos.

Movimientos de Datos

Un Proceso Funcional se forma de distintos Movimientos de Datos que son la unidad en la que mide el método. Hay 4 tipos de movimientos de datos básicos que son:

  • Entrada – E (Entry). Un dato que cruza la aplicación hasta el proceso funcional.
  • Salida – X (Exit). Un dato que cruza la aplicación fuera del proceso funcional.
  • Lectura – R (Read). Mueve un único grupo de datos a través de la frontera de la aplicación desde el grupo de datos hasta el proceso funcional.
  • Escritura – W (Write). Mueve un único grupo de datos a través de la frontera de la aplicación desde el proceso funcional hasta el medio de almacenamiento persistente.

Todo Proceso Funcional debe contemplar al menos dos movimientos de datos:

  • una Entrada (Entry).
  • una Salida (Exit) ó una Escritura (Write).

Es decir, que como mínimo debe aceptar un dato de entrada y debe mostrar un dato en la salida o debe guardar en el almacenamiento persistente.

Un Movimiento de Datos tiene un valor asignado de 1 CFP (Cosmic Function Point).


Tamaño

El Tamaño de un Proceso Funcional viene determinado por la suma del tamaño de los movimientos de datos que lo forman.

El tamaño de una Pieza de Software en un determinado ámbito se obtiene sumando los tamaños funcionales de los procesos funcionales de los cuales consta dicha pieza de software.

En el caso de que estemos hablando de modificaciones de software existente, el tamaño de la modificación de un proceso funcional es la suma de los tamaños de los movimientos de datos que han sido añadidos, modificados o eliminados de dicho proceso funcional.

De igual forma, el tamaño de los cambios de una Pieza de Software en un determinado ámbito se obtendrá como la agregación de los tamaños de los cambios de los procesos funcionales de los cuales consta dicha pieza de software.
La suma total nos dará el tamaño funcional del software que estamos midiendo.

Continuaremos en el último artículo con el método de FiSMA.

Julián Gómez

Te Ayudo a Dirigir tus Proyectos al Éxito. Sólo puedes ir más rápido, juntos podemos ir más lejos ¿Conectamos?

View Comments

Recent Posts

El Último vídeo del viernes del año: Vuela como un dragón

Este año ha sido complicado. En el sentido de que ha sido un año duro.…

4 meses ago

Ultimo video del viernes del año: Sé diferente

Y el año se acaba. Después de tantos días juntos en este blog hoy llegamos…

1 año ago

Vídeo del viernes: Kadenko, una luz en la navidad

Las compañías energéticas están en el ojo del huracán con los precios que estamos sufriendo…

1 año ago

El Haiku: Antes que nada, la clave del éxito es… (Graham Bell)

Sin duda hay una creencia muy extendida que piensa que las cosas se consiguen porque…

1 año ago

El Haiku: Sólo porque hayas hecho un buen plan… (Taylor Swift)

El Haiku de hoy de Taylor Swift me encanta. Resume perfectamente lo que no debes…

1 año ago

Vídeo del viernes: Aquaduct, Cómo acarrear y filtrar agua con el poder de nuestras piernas

Las ideas innovadoras siempre son interesantes para que nos puedan inspirar. Si además ayudan a…

1 año ago