26/07/2010
1
PUNTOS DE CASOS DE
USO
Clemmons, Roy K. (2006), Project Estimation With Use Case Points,
Diversified Technical Services, Inc., Febrero 2006
PUNTOS DE CASOS DE USO
(UCP) El tiempo para completar un proyecto se ve
afectado por lo siguiente: Nmero de pasos para completar el caso de uso El nmero y la complejidad de los actores Los requerimientos tcnicos del caso de uso, como la
concurrencia, la seguridad y rendimiento
Varios factores ambientales tales como el desarrollode equipos de experiencia y conocimientos.
Un mtodo de estimacin que tome en cuentalos factores mencionados en el ciclo de vida deun proyecto sera muy til para calcular: tiempo,costo y asignacin de recursos.
26/07/2010
26/07/2010
2
PUNTOS DE CASOS DE USO
(UCP) El UCP ofrece la posibilidad de estimar las
horas-hombre de un proyecto de software querequiere de casos de uso.
Es un mtodo de estimacin de esfuerzo de unproyecto de desarrollo de software a partir delos casos de uso.
Fue introducido por Gustav Karner en 1993(Universidad de Linkoping).
El mtodo utiliza los actores y casos de usoidentificados para calcular el esfuerzo quecostar desarrollarlos.
26/07/2010
La ecuacin UCP
UCP=UUCP*TCF*ECF*PF
donde:1. UUCP = Puntos de Caso de Uso sin ajustar
2. TCF = Factor de complejidad tcnica
3. ECF = Factor de Complejidad del Medio Ambiente
4. PF = Factor de productividad
NOTA: Cuando la productividad se incluye como uncoeficiente que expresa el tiempo, entonces laecuacin puede utilizarse para estimar el nmero dehoras-hombre necesarias para completar unproyecto.
26/07/2010
26/07/2010
3
Ejemplo hipottico
A continuacin se aplicar el mtodo dePuntos de Casos de Uso aplicado al
desarrollo de una aplicacin Web, cuyo
tiempo de culminacin llev: 990 horas-
hombre
26/07/2010
1. Clculo de los puntos de
casos de uso sin ajustar Da una idea un poco ms precisa de la dificultad
de los casos de uso e interfaces.
Se calculan con base en: Pesos de los Casos de Uso sin Ajustar (UUCW)
Basado en el nmero total de actividades (o pasos)contenidos en todos los escenarios del caso de uso.
Pesos de los Actores sin Ajustar (UAW) Basado en la combinacin de la complejidad de todos los
actores en todos los casos de uso.
La frmula es:UUCP = UAW + UUCW
26/07/2010
26/07/2010
4
UUCW (Pesos de los Casos de Uso sin Ajustar)
(1/2)
Hay tres categoras de Casos de Uso:
Categora de
Caso de Uso
Descripcin Peso
(factor)
Simple Transacciones= 3 menos
Clases= Menos de 5
5
Medio Transacciones= 4 a 7
Clases= 5 a 10
10
Complejo Transacciones= Ms de 7 transacciones
Clases= Ms de 10 clases
15
26/07/2010
UUCW (Pesos de los Casos de Uso sin Ajustar)
(2/2)
Frmula:
UUCW= (Cantidad de un Tipo de Caso Uso*Factor)
Tipo de
Caso de
Uso
Descripcin Peso
(factor)
Nmero
de
Casos
de Uso
Resulta
do
Simple Transacciones= 3 menos
Clases= Menos de 5
5 7 35
Medio Transacciones= 4 a 7
Clases= 5 a 10
10 13 130
Complejo Transacciones= Ms de 7
transacciones
Clases= Ms de 10 clases
15 3 45
Total UUCW 21026/07/2010
26/07/2010
5
UAW (Pesos de los Actores sin Ajustar)
(1/2)
Consiste en la evaluacin de lacomplejidad de los actores con los quetendr que interactuar el sistema.
Tipo de Actor Descripcin Peso
(factor)
Simple Otro sistema que interacta con el sistema a
desarrollar mediante una interfaz de
programacin (API).
1
Medio Otro sistema interactuando mediante un
protocolo (ej. TCP/IP) o una persona
interactuando a travs de una interfaz en modo
texto.
2
Complejo Una persona que interacta con el sistema
mediante una interfaz grfica (GUI).
3
26/07/2010
UAW (Pesos de los Actores sin Ajustar)
(2/2)
Frmula:
UAW= ( cantidad de un Tipo de Actor * Factor)Tipo de Actor Descripcin Peso
(factor)
Nmero de
Actores
Resultado
Simple Otro sistema que interacta con el
sistema a desarrollar mediante una
interfaz de programacin (API).
1 0 0
Medio Otro sistema interactuando a travs de
un protocolo (ej. TCP/IP) o una persona
interactuando a travs de una interfaz
en modo texto.
2 0 0
Complejo Una persona que interacta con el
sistema mediante una interfaz grfica
(GUI).
3 4 12
Total UAW 12
26/07/2010
26/07/2010
6
1. Clculo de los puntos de casos de uso
sin ajustar
UUCP=UUCW+UAW
UUCP=210+12
UUCP=222
2. TCF (Factor de Complejidad Tcnica)
(1/5)
ste se compone de 13 puntos queevalan la complejidad de los mdulos delsistema que se desarrolla.
Cada uno de estos factores tienen unpeso definido.
El factor de complejidad percibida essubjetivamente determinado por lapercepcin del equipo de desarrollo sobrela complejidad del proyecto.
26/07/2010
26/07/2010
7
2. TCF (Factor de Complejidad Tcnica)
(2/5)Factor
tcnico
Descripcin Peso
T1 Sistema distribuido 2
T2 Rendimiento o tiempo de respuesta 1
T3 Eficiencia del usuario final 1
T4 Procesamiento interno complejo 1
T5 El cdigo debe ser reutilizable 1
T6 Facilidad de instalacin 0.5
T7 Facilidad de uso 0.5
T8 Portabilidad 2
T9 Facilidad de cambio 1
T10 Concurrencia 1
T11 Caractersticas especiales de seguridad 1
T12 Provee acceso directo a terceras partes 1
T13 Se requiere facilidades especiales de entrenamiento
a usuario
1
2. TCF (Factor de Complejidad Tcnica)
(3/5)
Cada uno de estos factores se debenevaluar segn la siguiente escala:
Descripcin Valor
Irrelevante 0 a 2
Medio 3 a 4
Esencial 5
26/07/2010
26/07/2010
8
2. TCF (Factor de Complejidad Tcnica) (4/5)Factor
tcnico
Descripcin Peso Impacto
percibido
Factor
calculado
T1 Sistema distribuido 2 1 2
T2 Rendimiento o tiempo de respuesta 1 3 3
T3 Eficiencia del usuario final 1 3 3
T4 Procesamiento interno complejo 1 3 3
T5 El cdigo debe ser reutilizable 1 0 0
T6 Facilidad de instalacin 0.5 0 0
T7 Facilidad de uso 0.5 5 2.5
T8 Portabilidad 2 0 0
T9 Facilidad de cambio 1 3 3
T10 Concurrencia 1 0 0
T11 Caractersticas especiales de seguridad 1 0 0
T12 Provee acceso directo a terceras partes 1 3 3
T13 Se requiere facilidades especiales de
entrenamiento a usuario
1 0 0
Factor Total Tcnico 19.5
2. TCF (Factor de Complejidad Tcnica)
(5/5)
Formula para calcular el TCF: TCF=0.6+(0.01*Factor Total Tcnico)
Para el ejemplo: TCF=0.6+(0.01*19.5)
TCF=0.795
26/07/2010
26/07/2010
9
3. ECF (Factor de Complejidad Ambiental)
(1 / 4 )
Establece la experiencia del equipo dedesarrollo. Los factores sobre los cules se realiza la
evaluacin estn relacionados con las habilidades yexperiencia del grupo de personas involucradas conel desarrollo del proyecto.
Cada uno de estos factores se debe calificar conun valor de 0 a 5.
Un valor de 1 significa que el factor tiene unfuerte impacto negativo para el proyecto, 3 esmedio y 5 significa que tiene un fuerte impactopositivo.
26/07/2010
3. ECF (Factor de Complejidad Ambiental)
(2/ 4 )
Factor
Ambiental
Descripcin Peso
E1 Familiaridad con el modelo de proyecto utilizado
Familiaridad con UML
1.5
E2 Personal tiempo parcial -1
E3 Capacidad del analista lder 0.5
E4 Experiencia en la aplicacin 0.5
E5 Experiencia en orientacin a objetos 1
E6 Motivacin 1
E7 Dificultad del lenguaje de programacin -1
E8 Estabilidad de los requerimientos 2
26/07/2010
10
3. ECF (Factor de Complejidad Ambiental)
(2/ 4)Factor
Ambienta
l
Descripcin Peso Impacto
percibid
o
Factor
calculado
E1 Familiaridad con el modelo de
proyecto utilizado
Familiaridad con UML
1.5 5 7.5
E2 Personal tiempo parcial -1 0 0
E3 Capacidad del analista lder 0.5 5 2.5
E4 Experiencia en la aplicacin 0.5 0 0
E5 Experiencia en orientacin a
objetos
1 5 5
E6 Motivacin 1 5 5
E7 Dificultad del lenguaje de
programacin
-1 0 0
E8 Estabilidad de los requerimientos 2 3 6
Factor Ambiental Total 2626/07/2010
3. ECF (Factor de Complejidad Ambiental)
(2/ 4)
Frmula para calcular ECF: ECF = 1.4 + (-0.03 * Factor Ambiental Total)
Para el ejemplo: ECF = 1.4 + (-0.03 * 26)
ECF=0.62
26/07/2010
26/07/2010
11
Calculando los UCP
La frmula es: UCP=UUCP*TCF*ECF
Los valores obtenidos
UUCP=222
TCF=0.795
ECF=0.62
UCP=222*0.795*0.62
UCP=109.42 PUNTOS DE CASOS DE USO
26/07/2010
Agregando la productividad
Otro factor necesario para estimar elnmero de horas para completar el
proyecto, es:
Factor de Productividad (PF).
PF es la relacin de horas-hombrenecesitadas por cada punto de caso de
uso
26/07/2010
26/07/2010
12
Estimacin de las horas
Si no hay datos histricos que hayan sidorecabados se toman en cuenta dos posibilidades:
1.-Establecer una base para clculos de los UPC deproyectos completados anteriormente.
2.-Utilice un valor entre 15 y 30 dependiendo de laexperiencia y logros pasados del equipo de desarrollo. Sise trata de un nuevo equipo, use un valor de 20 para elprimer proyecto.
26/07/2010
Estimacin de horas/hombre
Total horas estimadas=UCP*PF
Total horas estimadas=109.42*20
Total horas estimadas=2180
Se consigue un esfuerzo estimado, que representauna parte del total del esfuerzo de todo el proyecto,generalmente un 40%.
NOTA: Despus de que el proyecto se completa, dividir el nmero
real de horas que se tard en terminar el proyecto por elnmero de UCP. El producto se convierte en el nuevo PF.
26/07/2010
26/07/2010
13
CONCLUSIONES
Esta tcnica tiene la ventaja de que su estimacinno se desva ms del 30% de la realidad.
Este mtodo provee informacin que, en muchos delos proyectos, es bsica para su implementacin Sobre todo, en los que no se tiene una idea muy clara de
cmo se va a logra el objetivo.
Este tipo de evaluacin es muy fcil de entender yutilizar, basta con tener las plantillas y se puederealizar fcil y rpidamente.
Ayuda a estimar los gastos como el recurso humanorequerido.
26/07/2010
RECOMENDACIONES Apoyarse en personas que tenga experiencia
en anlisis de proyectos y conocer elambiente de trabajo, para que los PCU seanlo ms acertados posibles.
Contar con una base histrica para utilizarlasde referencia a evaluaciones futuras.
Utilizar la tcnica de puntos de casos de usocuando se trabaje con el paradigmaorientado a objetos y con un ciclo de vidaiterativo-incremental.
Se recomienda realizar este tipo deevaluaciones para lograr una mayor precisinsobre los costos y tiempos de un proyecto.
26/07/2010
26/07/2010
14
Ejercicio:
Se analizar l software de CajeroAutomtico que incluye: retirar dinero,
depositar dinero y transferir dinero entre
cuentas y se calcularn los UCP sin
productividad y luego considerando que
es un equipo de trabajo nuevo calcular los
UCP con productividad.
Actores: Cliente
26/07/2010
Respuesta sobre Clculo de
Puntos de Casos de Uso
Cajero ATM
26/07/2010
15
Modelo de Casos de Uso Cliente del banco se identifica.Elige de qu cuenta va a sacar dinero y especfica la cantidad.
Sistema entrega la cantidad y la resta de su cuenta.
Cliente del banco se identifica.Elige cuenta origen para a sacar dinero y especfica la cantidad.
Elige a cuenta destino para transferir el dinero
Sistema resta de cuenta origen la cantidad a sacar y suma en cuenta
destino esa misma cantidad
Cliente recibe comprobante impreso.
Cliente del banco se identifica.Elige a cuenta destino para depositar dinero
Sistema acciona ventanilla de recepcin de sobres
Cliente recibe comprobante impreso.
Ecuacin completa con un Factor de
Productividad (FP)
UCP=UUCP*TCF*ECF*PF
UCP=Puntos de Casos de Uso
UUCP=Puntos de Casos de Uso sin ajustar
TCF= Factor de Complejidad Tcnica
ECF= Factor de Complejidad Ambiental
PF=Factor de Productividad
26/07/2010
16
Paso 1: Calcular Puntos de Casos de Uso sin Ajustar
UUCP = UAW + UUCW
{Pesos de los Actores sin Ajustar + Pesos de los Casos de Uso sin Ajustar}
Caso de Uso Tipo Peso Resultad
o
Sacar dinero Simple 5 5
Ingresar dinero Simple 5 5
Transferencia entre
cuentas
Simple 5 5
UUCW 15
UUCW= (Cantidad de un Tipo de Caso Uso*Factor)
UAW= ( cantidad de un Tipo de Actor*Factor)
Actor Nm. de Actores Peso Resultado
Cliente 1 3 3
UAW 3
UUCP = UAW + UUCW = 3 + 15 = 18
Paso 2. Clculo de TCP
TCF=0.6+(0.01*Factor Total Tcnico)=0.96
Factor
tcnico
Descripcin Peso
(valor fijo)
Impacto
percibido
Factor calculado
T1 Sistema distribuido 2 0 0
T2 Rendimiento o tiempo de respuesta 1 5 5
T3 Eficiencia del usuario final 1 5 5
T4 Procesamiento interno complejo 1 3 3
T5 El cdigo debe ser reutilizable 1 0 0
T6 Facilidad de instalacin 0.5 5 2.5
T7 Facilidad de uso 0.5 5 2.5
T8 Portabilidad 2 0 0
T9 Facilidad de cambio 1 5 5
T10 Concurrencia 1 5 5
T11 Caractersticas especiales de
seguridad
1 5 5
T12 Provee acceso directo a terceras
partes
1 3 3
T13 Se requiere facilidades especiales
de entrenamiento a usuario
1 0 0
Factor Total Tcnico 36
0-2 irrelevante
3-4 medio
5 esencial
26/07/2010
17
Paso 3: Clculo de ECF
ECF = 1.4 + (-0.03 * Factor Ambiental Total)=0.665
Factor
Ambient
al
Descripcin Peso Impacto
percibido
Factor
calculado
E1 Familiaridad con el modelo de proyecto
utilizado
1.5 5 7.5
E2 Personal part-time -1 3 -3
E3 Capacidad del analista lder 0.5 5 2.5
E4 Experiencia en la aplicacin 0.5 5 2.5
E5 Experiencia en orientacin a objetos 1 5 5
E6 Motivacin 1 5 5
E7 Dificultad del lenguaje de programacin -1 5 -5
E8 Estabilidad de los requerimientos 2 5 10
Factor Ambiental Total 24.5
1 significa que el factor tiene un fuerte impacto negativo para el proyecto3 es medio5 significa que tiene un fuerte impacto positivo
Pasos 4 y 5:
Clculo de UCP sin productividad
Clculo de UCP con productividad
Paso 4:
UCP=UUCP*TCF*ECF
UCP = 18 * 0.96 * 0.665 = 11.49
Paso 5:
UCP = 11.49 * PF
Dado que es un equipo nuevo usaremos PF =20
UCP = 11.49 * 20 = 229.82
26/07/2010
18
Interpretacin
Dado que
UCP result en 229.82 horas
Suponiendo 40 horas a la semana
El sistema se desarrollar en 5.74 semanas(aproximado a 6 semanas)