Está en la página 1de 39

PUNTOS FUNCIÓN

Y PUNTOS CASOS
DE USO
Diaz Vega Brando Jesus
Qué es el Análisis de Puntos de Función

◦ Es considerada la principal herramienta para la


medición funcional de productos de software y
de los procesos involucrados en su desarrollo.
Esta comprende conceptos que pueden ser
entendidos tanto por el desarrollador como por
los usuarios.
Qué es el Punto de Función
◦ Punto de Función (FP) es su unidad de
medida. Por lo tanto, pretende representar
una cantidad; en este caso, medición
independiente de la tecnología utilizada
para construir el software.
Qué mide el Análisis de Puntos de Función
◦ El APF mide lo que el software hace,
independiente como fue construido. Por lo tanto,
el proceso de medición o de conteo de puntos de
función es basado en la evaluación de los
requerimientos funcionales del usuario, como se
describe en los artefactos de desarrollo. El
procedimiento de la medición está escrito por el
IFPUG en su Manual de Prácticas de Conteo
(Counting Practices Manual).
Qué no mide directamente el Análisis de Puntos
de Función
◦ Es importante destacas que los puntos de
función no miden directamente el esfuerzo,
productividad y costo, porque ella produce una
medida de tamaño funcional de software. Sin
embargo, a partir del tamaño funcional
correlacionado con otras variables, se torna
posible identificar productividad, estimar
esfuerzo y/o costo de proyectos de software.
PUNTOS CASOS DE
USO
◦ El método de Puntos Casos de Uso (Use
Case Points) fue desarrollado en 1993
por Gustav Kamer, bajo la supervisión de
Ivar Jacobson (creador de los casos de
uso y gran promovedor del desarrollo de
UML y el Proceso Unificado).
◦ Este método ha sido ampliamente
utilizado por la empresa Rational. Su
principal ventaja es su rápida adaptación
a empresas que ya estén utilizando la
técnica de Casos de Uso.
◦ La técnica de estimación de Puntos de
Casos de uso es un método de estimación
de esfuerzo para proyectos de software, a
partir de sus casos de uso. El método
utiliza unos actores y casos de uso
relevados para calcular el esfuerzo que
significará desarrollarlos. A los casos de
uso se les asigna una complejidad basada
en transacciones, entendidas como una
interacción entre el usuario y el sistema,
mientras que a los actores se les asigna
una complejidad basada en su tipo, es
decir, si son interfaces con usuarios u
otros sistemas.
LOS PASOS DEL
MÉTODO
1) Clasificar cada interacción entre actor y caso de uso
según su complejidad y asignar un peso en función de ésta.
◦ Para poder clasificar la complejidad de los actores debemos analizar la interacción de éste con el sistema que se va a
desarrollar.
La complejidad de los actores puede corresponderse con una de las tres categorías posibles:
• a. Simple. Representa a otro sistema con una API definida. Se le asigna un peso de valor 1.
• b. Medio. Representa a otro sistema que interactúa a través de un protocolo de comunicaciones. Por ejemplo TCP/IP o a través
de un interfaz por línea de comandos. Se le asigna un peso de valor 2.
• c. Complejo. La interacción se realiza a través de una interfaz gráfica. Se le asigna un peso de valor 3.
2) Calcular la complejidad de cada caso de uso según
el número de transacciones o pasos del mismo
◦ Para calcular la complejidad de un caso de uso debemos determinar el número de transacciones, incluyendo los caminos
alternativos.
Se entiende por transacción a un conjunto de actividades atómicas, donde se ejecutan todas ellas o ninguna.
En función del número de transacciones que posee un caso de uso se clasifica el caso de uso como simple, medio o complejo,
siendo la asignación de pesos la que se muestra en la tabla siguiente:
3) Calcular los Puntos Casos de Uso No
Ajustados (UUCP) del sistema.
◦ Se obtienen sumando los Puntos Casos de Uso de todos y cada uno de los actores y casos de
uso que se han identificado y catalogado en función de su complejidad.
4) Cálculo de los Factores Técnicos (TCF).
◦ cada uno de los Factores Técnicos de la tabla siguiente se le asigna un valor de influencia en el proyecto entre 0 (no tiene
influencia) a 5 (esencial), 3 se considera de influencia media.
Obtenidos los grados de influencia se multiplican por el peso de cada factor y con la siguiente fórmula se calcula el Factor
Técnico que aplica:
5) Cálculo de los Factores de Entorno.
◦ A cada uno de los Factores de Entorno de la tabla siguiente se le asigna un valor de influencia en el proyecto entre 0 (no tiene
influencia) a 5 (esencial), 3 se considera de influencia media.
Obtenidos los grados de influencia se multiplican por el peso de cada factor y con la siguiente fórmula se calcula el Factor de
Entorno que aplica:
6) Obtención de los Puntos Casos de Uso
Ajustados.
◦ Una vez obtenido el número de Puntos Casos de Uso, si se quiere obtener el esfuerzo necesario para llevarlos a cabo en el
método se provee de un factor de productividad.
El autor propone un valor de 20 horas/persona aunque existen distintas propuestas sobre este valor.
◦ Este esfuerzo calculado no abarcaría a todas las fases del proyecto sino únicamente a la codificación de los Casos de Uso no
estando contemplada otras fases del desarrollo.
◦ Por tanto, para calcular el esfuerzo total del proyecto habría que estimar el esfuerzo en realizar el resto de actividades del
proyecto y sumarlas a las obtenidas por el método de Puntos Casos de Uso.
Efectuar la estimación de esfuerzo
utilizando casos de uso en relación a un
proyecto de software.
Cómo estimar el esfuerzo de desarrollo de software

◦ La fuente más frecuente de conflicto entre el cliente y el proveedor de un desarrollo de software a medida es la diferencia entre
las expectativas de plazos, costes y calidad y lo que realmente se entrega
Porqué es difícil estimar con fiabilidad

◦ Las estimaciones del esfuerzo requerido para desarrollar un programa tienen casi más de arte que de ciencia. Es posible
estimar con precisión cuánto se tarda y cuánto cuesta fabricar un tornillo, esto porque todos los tornillos son iguales, pero en el
caso del software cada programa es diferente. Existen, no obstante, varios modelos de estimación maduros y bien conocidos
que producen buenos resultados siempre y cuando estén correctamente calibrados.
La diferencia entre estimar, planificar y presupuestar

◦ Un desarrollo lo que quiere saber es cuánto dinero le va costar. Este cálculo requiere tres etapas: 1ª) estimación de esfuerzo,
2ª) planificación de proyecto y 3ª) negociación económica. Aquí vamos a cubrir sólo la parte de estimación de esfuerzo. La
razón es quela planificación requeriría otro artículo entero, y la negociación económica, cómo ya he explicado, suele consistir
en el regateo gitano más absoluto.
cómo ya he explicado, suele consistir en el regateo gitano más absoluto.
La moda actual es estimar el esfuerzo en unidades abstractas y no en horas/hombre. La razón es que el número de horas
requeridas para desarrollar una funcionalidad puede variar (y varía) mucho dependiendo de la naturaleza del proyecto, de la
calidad de las especificaciones y de la clase de mano de obra empleada.
Calcular el esfuerzo requerido en el desarrollo
de software de acuerdo a los casos de uso del
software.
◦ El ejemplo práctico a través del cual se describirá el método consiste en una aplicación Web para la gestión de información
telefónica, de reportes de averías, y de estadísticas de los estados de los teléfonos de un Centro de Educación Superior (CES).
Actualmente este proceso se realiza manualmente, provocando dificultades en la organización y control de la información
referente a los equipos telefónicos y a sus respectivos usuarios. La aplicación es desarrollada en la plataforma .Net, con
lenguaje C#. A continuación se presentan los actores y casos de uso identificados.
Cálculo de Puntos de Casos de Uso sin
Ajustar (UUCP)
◦ Para la estimación el primer paso que se lleva a cabo es el cálculo de los Puntos de Casos de Uso sin ajustar. Este valor se
calcula a partir de la siguiente ecuación:
◦ UUCP = UAW + UUCW donde,
◦ UUCP: Puntos de Casos de Uso sin ajustar
◦ UAW: Factor de Peso de los Actores sin ajustar
◦ UUCW: Factor de Peso de los Casos de Uso sin ajustar
Determinación del factor de peso de los
actores sin ajustar (UAW).
◦ Este valor se calcula mediante un análisis de la cantidad de Actores presentes en el sistema y la complejidad de cada uno de
ellos. La complejidad de los actores se establece, teniendo en cuenta en primer lugar, si se trata de una persona o de otro
sistema, y en segundo lugar, la forma en que el actor interactúa con el sistema .
Factores de peso de los actores.
Determinación del factor de peso en los casos
de uso sin ajustar (UUCW).
◦ Este valor se calcula mediante un análisis de la cantidad de Casos de Uso presentes en el sistema y la complejidad de cada uno
de ellos. La complejidad de los casos de uso se establecen teniendo en cuenta la cantidad de transacciones efectuadas en el
mismo, donde una transacción se entiende como una secuencia de actividades atómicas.
Factores de peso de los casos de uso.
◦ UUCW = 160
◦ Calculando
◦ UUCP = UAW + UUCW
◦ UUCP = 9 + 160
◦ UUCP = 169
Factores de complejidad técnica.
El Factor de
complejidad técnica se
calcula mediante la
siguiente ecuación:

Determinación del
factor ambiente (EF)
Las habilidades y el
entrenamiento del grupo
involucrado en el
desarrollo tienen un
gran impacto en las
estimaciones de tiempo.
Estos factores son los
que se contemplan en el
cálculo del Factor de
ambiente.
Factores de ambiente.
◦ El factor de ambiente se calcula mediante la siguiente ecuación:

◦ Cálculo de los Puntos de de Casos de Uso Ajustados:


◦ UCP = UUCP * TCF * EF
◦ UCP = 169 * 1.02 * 0.74
◦ UCP = 127.56
Cálculo del esfuerzo
◦ El esfuerzo en horas-hombre viene dado por:
◦ E = UCP * CF donde:
◦ E: esfuerzo estimado en horas-hombre.
◦ UCP: Puntos de casos de uso ajustados.
◦ CF: Factor de conversión (20 horas-hombre por defecto).
◦ E = 127.56 * 20
◦ E = 2551.2 Horas-hombres
◦ Se debe tener en cuenta que éste método proporciona una estimación del esfuerzo en horas-hombre contemplando sólo el
desarrollo de la funcionalidad especificada en los casos de uso.
Distribución genérica del esfuerzo.
Distribución real del esfuerzo.
Cálculo del esfuerzo total:
◦ ETotal = 6378 horas /hombre
◦ Cálculo del tiempo de desarrollo:
◦ TDesarrollo = ETotal/CHTotal CHTotal: Cantidad de hombres
◦ TDesarrollo = 6378/2
◦ TDesarrollo = 3189 horas
◦ Considerando que se trabajan 8 horas diarias:
◦ TDesarrollo = TDesarrollo/8 horas/día
◦ TDesarrollo = 3189 horas/8 horas/día
◦ TDesarrollo = 399 días aproximadamente
Cálculo del costo
◦ CostoTotal = ETotal * 2 * TH TH: Tarifa horaria(= 1.031)
◦ CostoTotal = 6378 * 2 * 1.031
◦ CostoTotal = 13151.45

También podría gustarte