You are on page 1of 13

Planificacin y Modelado

2.2 Evaluacin del Costo Beneficio


Actualmente el software es el elemento ms caro en los sistemas de
informacin, por lo que la estimacin debe realizarse cuidadosamente ya que
un gran error en la estimacin del costo puede ser lo que marque la diferencia
entre beneficios y prdidas.
Alagunas razones por las que debemos conocer el costo aproximado son:

Los costos pueden causar la cancelacin del proyecto

Los costos subestimados pueden no compensar el tiempo invertido por


el equipo del proyecto

La estimacin es una actividad compleja que se vale de modelos y


tcnicas, y estos se basan en mtricas, por lo que es necesario
profundizar sobre estas.

2.2.1 Mtricas de Software


Las mtricas de los proyectos nos dan indicadores derivados de ellos, los
cuales utiliza un administrador para adaptar el flujo de trabajo del proyecto y
las actividades tcnicas. Las mtricas recopiladas de proyectos anteriores se
utilizan como una base para la estimacin para el actual trabajo de software.
Las mediciones se pueden clasificar de dos maneras: medidas directas (p.ej.
medicin de un tornillo) y las medidas indirectas (p.ej. La calidad de los
tornillos).
Hay varias razones por las cuales es conveniente medir el software:
1. Para indicar la calidad del producto.
2. Para evaluar:
La productividad de la gente que desarrolla el producto
Los beneficios derivados del uso de nuevos mtodos y
herramientas de ingeniera del software.
Permitir una mejora continua al proceso de desarrollo de
software.
3. Para establecer lnea de base para la estimacin.
4. Para ayudar a justificar el uso de nuevas herramientas o de formacin
adicional.
1 Instituto Tecnolgico de Chihuahua II

Planificacin y Modelado

La mtrica es una medida cuantitativa, que es una recopilacin de los datos,


como puede ser el nmero de lneas de cdigo o numero de errores. Esto con el
fin de obtener indicadores que proporcionen una visin del proyecto.
Hay dos tipos de indicadores o mtricas, las cuales son:

Los indicadores del proceso: Que brinda una visin sobre la eficacia
de un proceso, evaluando lo que funciona y no. Su propsito es la mejora
continua del software, mejorando la calidad del proceso.

Los indicadores del proyecto: Se utilizan para supervisar el progreso


y controlar la calidad del producto, estimando el tiempo y esfuerzo.
Evaluando el estado, los posibles riesgos potenciales, detectar las reas
problemticas, ajustar flujos y tareas del trabajo, y evaluar la efectividad
del equipo de proyecto para controlar la calidad del software

Los modelos de medida de software, son entonces tiles para estimar y


predecir costos, medir productividad y calidad del producto, para esto, estas
medidas deben tener las siguientes caractersticas:

La medida debe ser objetiva

Debe ser definible con precisin para que puede ser evaluada (sencilla)

Fcilmente obtenible (un costo razonable)

La mtrica debe medir exactamente lo que se busca (valida)

Debe se relativamente insensible a cambios poco significativos en el


proceso o producto (robusta)

Nota: Las medidas se aplican a todo el ciclo de vida del desarrollo, desde que
se estiman los costos, al seguimiento y control de la fiabilidad de los productos
finales, y a la forma en que los productos cambian a travs del tiempo debido a
la aplicacin de mejoras.
Las mtricas de software se clasifican en dos tipos:

a) Mtricas del Producto: Son las que miden la complejidad del diseo,
tamao final del producto final (objeto y fuente) o el nmero de pginas
de la documentacin producida.

2 Instituto Tecnolgico de Chihuahua II

Planificacin y Modelado

b)

Mtricas del Proceso: Se refiere al tiempo de desarrollo total, el


esfuerzo en das/hombre de desarrollo del producto, metodologa
utilizada o nivel de experiencia de los programadores.

La estimacin del costo del software, nunca ser exacta, pero es posible
obtener una estimacin, por medio de la aplicacin sistemtica de pasos. Para
realizar la estimacin segura se tienen tres posibles opciones:
1. Realizar la estimacin hasta despus de haber terminado el desarrollo
del proyecto.
2. Basar las estimaciones en proyectos similares.
3. Desarrollar un modelo emprico.

Algunos de los factores que determinan el costo del desarrollo de un software


son:

Capacidad del programador: De la capacidad del programador


depende muchas veces el tiempo de desarrollo del software.
Complejidad del software: Dependiendo de la complejidad del
software es el costo de ste. Hay tres categoras globales de software:
software de bases de datos, software de base y software de aplicaciones.
Tamao del software: Este est implcito en los factores anteriores.
Nivel de confiabilidad: Todo software debe considerar la caracterstica
de ser confiable, por lo que no se considera muy relevante para el costo
del proyecto.

Entre las medidas directas se encuentran el costo y el esfuerzo aplicado, as


como las lneas de cdigo producido, la velocidad de ejecucin, el tamao de
memoria, los defectos observados, etc. Entre las medidas indirectas se
encuentran la funcionalidad, calidad, complejidad, eficiencia, fiabilidad,
facilidad de mantenimiento, etc.
Las Mtricas del Proyecto podemos clasificar el campo de las mtricas del
software tal como se muestra en la siguiente figura 11:

3 Instituto Tecnolgico de Chihuahua II

Planificacin y Modelado

Figura #10. Mtricas del proyecto


Mtricas orientadas al tamao
Son medidas directas del software y del proceso por el cual se desarrolla. La
medida mas utilizada es la longitud del cdigo fuente del software (nmero de
lneas del cdigo o en ingles Lines of code LOC). La Lnea de cdigo es
cualquier lnea de texto de un programa que no sea un comentario o lnea en
blanco, sin tener en cuenta el numero de instrucciones o partes de
instrucciones en la lnea. Esta medida suele representarse por NCLOC (No
Comentary Lines of code).
Para calcular la longitud de un programa se utiliza la siguiente frmula:
LOC = NCLOC + CLOC
Donde CLOC es el nmero de lneas de comentarios (Comentary Lines of Code)
El problema en el uso de este mtodo es que no se tome en cuente el concepto
de reutilizacin, as como los costos fijos, ni las tareas que se desarrollan que
no producen cdigo. Por lo que no debe ser utilizado este mtodo directamente
en la estimacin de esfuerzo o productividad.
Cuando se busca solo la nocin de pura longitud, se manejan dos alternativas
aceptables:
a) Medir la longitud en trminos de bytes de almacenamiento requerido
para contener el texto del programa.
b) Medir la longitud en trminos de nmero de caracteres en el texto del
programa. Si se conoce el numero medio de caracteres por lnea de
texto (NL); el nmero de lneas se calcula de la siguiente forma:
LOC = Char / NL

4 Instituto Tecnolgico de Chihuahua II

Planificacin y Modelado

Ventajas

Facilidad de clculo en cualquier proyecto

Existen herramientas de estimacin basadas en las Lneas de Cdigo

Desventajas

Las lneas de cdigo dependen del lenguaje de programacin ,


perjudicando a los programas cortos bien diseados

Comparar la productividad utilizando lenguajes diferentes puede llevar a


conclusiones errneas (El estilo de programacin depende de cada
persona)

Dificulta la estimacin en fases tempranas del desarrollo la cantidad de


lneas que tendr una aplicacin.

Ejemplo:
Si una organizacin de software mantiene registros sencillos, se puede crear una tabla de datos
orientados al tamao, como se muestra en la siguiente tabla:
Proyecto
aaa-01
ccc-04
fff-03
.

Esfuerzo
24
62
43
.

$
168
440
314
.

KLDC
12, 1
27, 2
20, 2
.

Pgs. Doc.
365
1224
1050
.

Errores
29
86
64
.

Gente
3
5
6
.

La tabla anterior lista cada proyecto de desarrollo de software de los ltimos aos y los
correspondientes datos originados al tamao de cada uno. Debe tenerse en cuenta que el esfuerzo y
el costo registrados en la tabla incluyen todas las actividades de ingeniera de software: anlisis,
diseo, codificacin y prueba. Con los datos de la tabla se pueden calcular valores medidos con
todos los proyectos como son:

Productividad = KLDC/persona-mes
Calidad = errores/KLDC
Costo = Dlares/KLD
Documentacin = pgs. de doc. /KLDC
Donde KLDC es miles de lneas de cdigo.

Mtricas orientadas a la funcin


5 Instituto Tecnolgico de Chihuahua II

Planificacin y Modelado

Es un mtodo para cuantificar el tamao y la complejidad de un sistema de software en termino de


las funciones que el usuario desarrolla o desarrollara. Entendiendo como funciones a las entradas,
salidas archivos, etc.
Son medidas indirectas del software y del proceso por el cual se desarrolla. Estas mtricas se
centran en la funcionalidad o utilidad del programa. Los puntos de funcin (PFs) se obtienen
utilizando una relacin emprica basada en medidas cuantitativas del dominio de informacin del
software y valoraciones subjetivas de la complejidad del software.
Un Punto de Fusin es una mtrica que se compone de la suma ponderada de los totales de
entradas, salidas, consultas, archivos lgicos, e interfaces que se identifican en la aplicacin.
Los objetivos de estos son:

Medir lo que el usuario pide y recibe

Proporcionar una mtrica que de soporte al anlisis de la calidad y productividad

Ser independiente del cdigo fuente o el lenguaje

Medir independientemente de la tecnologa utilizada en la implantacin

Entradas: Pantallas o formularios a travs de los cuales el usuario agrega nuevos datos o actualiza
los existentes (Pantallas de datos, cintas magnticas discos, entradas sensoriales, lpiz magntico
mouse). Si una pantalla de entradas es muy grande para desplegarla en una vez (asumimos que son
ms de 80 col y 25 reg) y requiere de una segunda pantalla, el conjunto cuenta como una sola
entrada. Debemos considerar entradas que requieran procesamiento nico.
Salida: Pantallas o informes que la aplicacin produce. Las salidas que requieren procesamiento
separado deben ser contabilizadas en aplicaciones de remuneracin. Una funcin de salida que
genere 100 cheques se cuenta como una sola (Pantallas de datos de salida, informes impresos,
archivo en disco, sets de cheques). En general, contabilizaremos como salida entidades que son
referenciadas por nombres.
Archivos lgicos: Coleccin lgica de registros que la aplicacin actualiza. Estos pueden ser planos
en una base de datos, una rama de una base de datos jerrquica, una tabla de una base de datos
relacional.
Interfaces: Son los archivos compartidos con otras aplicaciones, como archivos en cintas
magnticas que vienen o van, bases de datos compartidas o listas de parmetros.
Consultas: son pantallas que permiten al usuario interrogar a la aplicacin y solicitar asistencia.
Tales como pantallas de ayuda(HELP).
Estas se dividen en la porcin de entrada y la de salida. Ejemplos de estas son consulta de un
usuario sin actualizar un archivo, mensajes de ayuda o seleccin. Una consulta tpica seria una
6 Instituto Tecnolgico de Chihuahua II

Planificacin y Modelado

reservacin area. La de entrada seria la pregunta que vuelos salen de un destino a una hora
determinada, y la de salida sera la respuesta.

Factores de clculo de punto de funcin.

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.

Comunicaciones de datos
Funciones distribuidas
Objetivos de performance
Configuracin fuertemente utilizado
Tasa de transacciones
Entrada de datos interactivas (en lnea)
Eficiencia del usuario final
Actualizacin en lnea
Complejo el procesamiento interno
Diseado el cdigo para ser reutilizable
Factibilidad de la instalacin
Factibilidad operacional
Sitios mltiples
Facilidad para los cambios

La escala de evaluacin para los factores de influencia:

Escala
0

Factor
Factor n o presente o sin
influencia

Influencia insignificantica

Influencia moderada

Influencia Promedio

Influencia significativa

Influencia fuerte

Parmetros
Significativos

Baja
Media
Alta
Complejida Complejida Complejida
d
d
d

7 Instituto Tecnolgico de Chihuahua II

Planificacin y Modelado

Entradas
Salidas
Archivos Lgicos
Archivos de
Interface
Consultas

x3
x4
x7

x4
x5
x 10

x6
x7
x 15

x5
x3

x7
x4

x 10
x6

Procedimiento para clculo del factor de ajuste:


1. Se asigna una evaluacin individual a cada uno de los 14 factores de influencia
2. Se suman las evaluaciones (esta dar un valor entre 0 y 70)
3. Multiplicar la suma de evaluaciones por 0.01, para obtener un valor decimal
4. Sumar 0.65 al valor decimal para crear un factor de complejidad (un valor entre 0.65 y
1.35)
Ejemplo: Supongamos un aplicacin con 10 entradas, 10 salidas, 10 consultas, 1 archivo de
datos y i archivo de interfaz, todos ellos de complejidad promedio. Supongamos que los
factores de influencia se determinaron de la siguiente manera:
F
F
F
F
F
F
F

1
2
3
4
5
6
7

0
0
4
3
3
4
4

F
F
F
F
F
F
F

8
9
10
11
12
13
14

2
3
0
4
4
5
4

La suma de los 14 factores de influencia es: 40


El clculo de los puntos de funcin sin ajustar es :
Parmetros
Significativos
Entradas
Salidas
Archivos Lgicos
Archivos de
Interface
Consultas

Numero

10
10
10

Baja
Alta
Complejida Complejida
d
d
4
40
5
50
4
40

1
1

10
7

La suma de los puntos de funcin es: 147


Calculo del factor de complejidad
8 Instituto Tecnolgico de Chihuahua II

10
7

Planificacin y Modelado

40 x 0.01 + 0.65 = 1.05


Calculo del valor final de puntos de funcin ajustado es:
147 x 1.05 = 154
Mtrica con la Tcnica de Punto de Equilibrio
El punto de equilibrio es el tiempo que tomara para que el total de los ingresos
incrementados y/o la reduccin de gastos sea igual al costo total del sistema
actual. Sin embargo, no toma en cuenta el valor del dinero en el tiempo. Los
nuevos sistemas normalmente tienen costos iniciales, debido a su gasto de
desarrollo, que son ms altos que el costo de correr los sistemas actuales.
El anlisis de punto de equilibrio se utiliza con frecuencia en las actividades de
negocios de todo tipo, incluyendo el anlisis proyectado de los sistemas de
informacin. Este mtodo compara el costo de utilizar el sistema actual con
aquel si se utilizara un nuevo sistema.
Punto de equilibrio (PE) = (Costo / Total de ingresos incrementados y/o reduccin de
gastos) x 12 (meses)

Durante el tiempo de uso despus del punto de equilibrio, el nuevo sistema


muestra en forma normal mayores beneficios que el antiguo. El periodo antes
de que el punto de equilibrio se alcance se conoce como periodo de inversin,
mientras que el periodo despus de este punto es el periodo de retorno (Fig.
#12).

Figura #12. Punto equilibrio.


Mtrica de Anlisis de Recuperacin

9 Instituto Tecnolgico de Chihuahua II

Planificacin y Modelado

El mtodo de recuperacin, en relacin con los costos acumulados junto con


sus beneficios para un nuevo sistema, determina el periodo de recuperacin,
es decir, el lapso que debe pasar antes de que los beneficios se igualen a los
costos.
En la acumulacin pronosticada de costos y beneficios que se muestra los
costos excedan a los beneficios por $ 22,602 al final del primer ao, y por $
3,410 durante el segundo. Sin embargo durante el tercer ao los beneficios
excedieron a los costos. Esto indica que los costos se haban cubierto. El
periodo de recuperacin, por lo tanto fue un poco mayor a los dos aos (Fig.
#13).
Costo del nuevo
sistema

Beneficios del nuevo


sistema

Diferencia
neta

Ao
1

$50,350*

$27,740

$-22,610

Ao
2

$31,800

$51,000

$-3,410

Ao
3

$38,000

$58,000

$16,590

Ao
4

$43,000

$55,000

$28,590

Ao
5

$48,000

$49,000

$21,590

* Incluye los costos de desarrollo durante el primer ao.


Figura #13. Anlisis de recuperacin.

Anlisis del valor Presente

Para que un proyecto de sistemas se desarrolle y utilice sobre un periodo que


se planea a futuro, a menudo es difcil comparar los costos de hoy en da con el
valor total de los beneficios del da de maana. La inflacin, los cambios en los
costos y las fluctuaciones de las tasas de inters alteran el valor de los fondos
de inversin.
El mtodo del valor presente del anlisis costo/beneficio permite superar las
dificultades anteriores. En la actualidad, a travs de este mtodo se calculan
10 Instituto Tecnolgico de Chihuahua II

Planificacin y Modelado

los costos y beneficios del sistema en trminos del valor de la inversin en


comparacin con aquel entonces.

El factor crtico de este tipo de anlisis es la seleccin de la tasa de inters,


factor de porcentaje semejante a la tasa de inters para los prstamos, o el
costo del capital de una empresa; puede tomarse la tasa de inters que maneja
actualmente el banco.
* Factor = 1/(1 + t)^n
Donde: t = tasa de interes.
n = numero de perodos.

El factor puede obtenerse tambin por medio de la tabla del valor presente.

Las tablas (Fig. #14 y 15) muestran los valores presentes de los costos y los
beneficios de un proyecto. Con el objeto de calcular los valores presentes netos
se determina un nmero decimal que representa el 20% (en este caso) para
cada ao del proyecto. El decimal vara de ao con ao para reflejar el tiempo
hacia el futuro. El nmero de cada ao se multiplica por los costos y los
beneficios de cada ao, para posteriormente sumar los costos y los beneficios
y as compararlos como si se pagaran con fondos del da de hoy. Si los
beneficios exceden a los costos la inversin se considera normalmente buena.

A
o

Costos
sistema

del

Factor
del
presente (20%)*

$50,350

0.833

$41,942

$31,800

0.694

$22,069

$38,000

0.579

$22,002

$43,000

0.482

$20,726

$48,000

0.402

$19,296

11 Instituto Tecnolgico de Chihuahua II

valor

Valor
presente

Planificacin y Modelado

Valor presente
costos

de

los $126,035

Figura #13. Costos.

A
o

Beneficios del
sistema

Factor del valor


presente (20%)*

Valor
presente

$27,740

0.833

$23,107

$51,000

0.694

$35,394

$58,800

0.579

$34,045

$55,000

0.482

$26,510

$49,000

0.402

$19,698

Valor presente de los


beneficios

$138,754

Figura #14. Beneficios.


Estimacin del esfuerzo:
La estimacin del esfuerzo es la tcnica ms utilizada para calcular el costo de un proyecto de
ingeniera de software. En la resolucin de cada tarea del proyecto se aplica un nmero determinado
de personas/da/mes o /ao. Se asocia un costo a cada unidad de esfuerzo y se deriva el costo total
estimado.
Al igual que en las tcnicas LDC y PF, la estimacin del esfuerzo comienza con una delimitacin de
las funciones del software, obtenidas del mbito del proyecto. Para cada funcin debe realizarse una
serie de tareas de ingeniera de software (anlisis de requisitos, diseo, implementacin y pruebas).
Se pueden representar las funciones con sus tareas de ingeniera del software asociadas en una tabla,
como el siguiente ejemplo.

Tareas Funcionales
IUFC
AG2D
AG3D
GBD
FVGC
CP

Anlisis de requisitos
1
2
2.5
2
1.5
1.5

Diseo
2
10
12
6
11
6

12 Instituto Tecnolgico de Chihuahua II

Codificacin
0.5
4.5
6
3
4
3.5

Prueba
3.5
9.5
11
4
10.5
5

Total
7
26
31.5
15
27
16

Planificacin y Modelado

MAD
Total*
Tarifa($)
Costo($)

4
14.5
5,200
75,400

14
61
4,800
292,800

5
26.5
4,250
112,625

7
50.5
4,50
227,250

30
152.5
708,075

* Todas las estimaciones estn en persona-mes.


Esfuerzo estimado para todas las tareas = $152,5
Costo estimado para todas las tareas = $708,075
Se calculan los costos y el esfuerzo para cada funcin y cada tarea de ingeniera del software. Para
estimar esfuerzos se pueden considerar la siguiente formula:

Donde K es el esfuerzo, L es el nmero de lneas esperadas,

es una constante del estado de la

tecnologa y refleja las restricciones intrnsecas que frenan el progreso del programador (los valores
tpicos pueden ser:

= 11,000 para un entorno excelente), y

es el tiempo de desarrollo.

Existen cuatros tcnicas bsicas y comunes:


1. La opinin de expertos: Esta tcnica se basa en la experiencia
profesional de los participantes en el proyecto de estimacin. En algunos
casos simplemente se calcula la media de los valores ofrecidos por las
distintas personas.
2. La anloga: Es una aproximacin ms formal que la experiencia de los
expertos se basa en la comparacin directa de uno o ms proyectos
pasados, con esto se pueden evaluar las diferencias entre el nuevo
proyecto y loa antiguos y extrapolar costos
3. La descomposici: se descompone el producto en componentes mas
pequeos. En esta tcnica el responsable de cada componente que hay
que construir estimando el costo, para estimar el costo mediante la
suma de todos los costos de los componentes

13 Instituto Tecnolgico de Chihuahua II

You might also like