Вы находитесь на странице: 1из 67

Mtricas, Calidad y Planificacin

de Proyectos de Software

Introduccin
Cuando se planifica un proyecto se tiene que
obtener estimaciones del costo y esfuerzo humano
requerido por medio de las mediciones de
software que se utilizan para recolectar los datos
cualitativos acerca del software y sus procesos
para aumentar su calidad.
Estas mediciones, conocidas como mtricas del
software pueden ayudar a planificar proyectos de
software as como a medir su calidad.

Introduccin
Una de las partes ms crticas de un proyecto
informtico es averiguar lo que costara
desarrollarlo (horas-hombre, das-hombre, meseshombre, Euros, )

Mtricas
Una mtrica es una medida efectuada sobre algn
aspecto del sistema en desarrollo o del proceso
empleado.
Estas mtricas comparndolas con unos valores
(medidas) de referencia, permite obtener
conclusiones sobre el aspecto medido con el fin de
adoptar las decisiones necesarias.
La mtrica es un medio para controlar el
desarrollo de un sistema de software e intentar
aumentar su calidad.

Mtricas
Hay varias razones para medir un producto:
Para indicar la calidad del producto.
Para evaluar la productividad de la gente que
desarrolla el producto.
Para evaluar los beneficios en trminos de
productividad y de calidad, derivados del uso de
nuevos mtodos y herramientas de la ingeniera de
software.
Para establecer una lnea base para la
estimacin.

Para ayudar a justificar el uso de nuevas


herramientas o de formacin adicional.
5

Mtricas
Las mediciones del mundo fsico pueden
englobarse en dos categoras: medidas directas y
medidas indirectas.:
Medidas Directas.

En el proceso de ingeniera se encuentran el costo


y el esfuerzo aplicado, las lneas de cdigo
producidos, velocidad de ejecucin, el tamao de
memoria y los defectos observados en un
determinado periodo de tiempo.
Medidas Indirectas
Se encuentra la funcionalidad, calidad,
complejidad, eficiencia, fiabilidad, facilidad de
mantenimiento, etc.

Mtricas
Las mtricas del software son las que estn
relacionadas con el desarrollo del software como
funcionalidad, complejidad, eficiencia.
Mtricas Tcnicas.

Mtricas de Calidad
Mtricas de productividad
Mtricas orientadas a la persona.
Mtricas orientadas al tamao.

Mtricas orientadas a la funcin.


7

Mtricas
Otra clasificacin de las mtricas del
software son:
1.-Mtricas del producto.

1.1.-Mtricas de tamao
1.2.-Mtricas de calidad.

2.-Mtricas del proceso

Puntos de Funcin
Es una mtrica aceptada como estndar en
el mercado.
IFPUG (International Function Point
Users Group).

CPM 4.0 de 1994 (Counting Practice


Manual)
Iniciada por Albrecht en IBM. (1979)
9

Puntos de Funcin
Es una mtrica que se puede aplicar en las
primeras fases de desarrollo.
Se basa en caractersticas fundamentalmente externas de la aplicacin a
desarrollar.
Son elementos fcilmente identificables en
los diagramas de especificacin del sistema.
(DFD, Entidad-Relacin, DD)
10

Puntos de Funcin
Los usuarios los entienden perfectamente.
Observamos la aplicacin como una caja

negra.
Nos centramos en caracterstica visibles
del proyecto en estudio.
Mide dos tipos de caractersticas:
Los elementos de funcin (entradas,
salidas, ficheros, etc.)
Los factores de Complejidad.
11

Puntos de Funcin
Elementos de Funcin:
Entradas
Salidas

Consultas
Ficheros Lgicos Internos
Ficheros de Interfaz

12

Puntos de Funcin
Entradas:
Son todos aquellos procesos que hacen

llegar datos a la aplicacin desde el exterior, desde un usuario u otra aplicacin.


El flujo de datos deber tener una sola
direccin, del exterior al interior.
Como consecuencia de una entrada,
siempre deber actualizarse un fichero
lgico interno.
13

Puntos de Funcin
Entradas:
Ejemplos:
Pantallas de entrada de datos.
Lector de cdigos de barras.

Lector de tarjetas magnticas y

electrnicas.
Cptura de imgenes, voz, etc.

14

Puntos de Funcin
Clasificacin de las entradas:
DIFICULTAD

Nmero de Campos o Atributos de la Entrada

ENTRADAS

0 1 ficheros
accedidos
2 ficheros
accedidos
3 + ficheros
accedidos

1-4 Atributos

5-15 Atributos 16 + Atributos

BAJA

BAJA

BAJA

MEDIA ALTA

MEDIA ALTA

MEDIA

ALTA
15

Puntos de Funcin
Salidas:
Son todos aquellos procesos que hacen

llegar datos desde la aplicacin hacia el


exterior, a un usuario o a otra aplicacin.
El flujo de datos deber tener una sola
direccin, del interior al exterior.

16

Puntos de Funcin
Salidas:
Ejemplos:
Pantallas de salida de datos.
Listados.

Grabacin de bandas magnticas.


Transferencia de datos a otras

aplicaciones, ya sea mediante ficheros


o transmisin de datos.
17

Puntos de Funcin
Clasificacin de las salidas:
DIFICULTAD

Nmero de Campos o Atributos de la Salida

SALIDAS

0 1 ficheros
accedidos
2 3 ficheros
accedidos
4 + ficheros
accedidos

1-5 Atributos

6-19 Atributos

20 + Atributos

BAJA

BAJA

MEDIA

BAJA

MEDIA ALTA

MEDIA ALTA

ALTA
18

Puntos de Funcin
Consultas:
Son todos aquellos procesos que estn
formados por una combinacin de entradas y
salidas, produciendo una consulta a los datos.
El flujo de datos deber tener dos direcciones.
Como consecuencia de una consulta no se
modifican los datos del sistema.
La complejidad de la consulta viene dada por
la mayor entre la entrada y la salida.
19

Puntos de Funcin
Ficheros Lgicos Internos:
Es un grupo de datos relacionados, tal

como los percibe el usuario y que son


mantenidos por la aplicacin.
Los ficheros se cuentan una sola vez,
independientemente del nmero de
procesos que los acceden.

20

Puntos de Funcin
Ficheros Lgicos Internos:
Ejemplos:
Clientes.
Socios.

Artculos.
Proveedores.

21

Puntos de Funcin
Clasificacin de las ficheros lgicos int.:
DIFICULTAD

Nmero de Campos o Atributos

FICHEROS
LGICOS

1-19 Atributos 20-50Atributos 51 + Atributos

1 Registro

BAJA

BAJA

BAJA

MEDIA ALTA

Lgico
2 a 5 Registros
Lgicos
6 o ms
Registros Lgic.

MEDIA ALTA

MEDIA

ALTA
22

Puntos de Funcin
Ficheros de Interfaz Externos:
Es un grupo de datos relacionados, tal

como los percibe el usuario, referenciados por la aplicacin y que son mantenidos por otra aplicacin.
Son ficheros internos de otra aplicacin.

23

Puntos de Funcin
Clasificacin de las ficheros de interfaz:
DIFICULTAD

Nm ero de Cam pos o Atributos

FICHEROS
DE INTERFAZ

1-19 Atributos

20-50Atributos 51 + Atributos

1 Entidad o

BAJA

BAJA

BAJA

MEDIA ALTA

Registro Lgico
2 a 5 Registros
Lgico
6 o m s
Registros Lgic.

MEDIA ALTA

MEDIA

ALTA
24

Puntos de Funcin
Puntos de Funcin Sin Ajustar (PFSA):
Simple
Cantidad * Peso

Entradas
Salidas
Consultas
Fic. Lgicos
Fic. Interfaz

Media
Cantidad * Peso

Compleja
Cantidad

Total

* Peso

*3
*4
*6
*4
*5
*7
*3
*4
*6
*7
* 10
* 15
*5
*7
* 10
Total puntos de funcin sin ajustar (PFSA)

25

Puntos de Funcin
Factores de complejidad (significado):

Valor Significado del valor


0

Sin influencia, factor no presente

Influencia insignificante, muy baja

Influencia moderada o baja

Influencia media, normal

Influencia alta, significativa

Influencia muy alta, esencial


26

Puntos de Funcin

FC1) Comunicacin de Datos.


Los datos usados en el sistema se envan o
reciben por lneas de comunicaciones.

27

Puntos de Funcin

FC1) Comunicacin de Datos (Valores):


0: Sistema aislado del exterior
1: Batch, usa perifricos E o S remotos
2: Batch, usa perifricos E y S remotos

3: Captura de datos en lnea o teleproceso que pasa


los datos o sistema de consulta
4: Varios teleprocesos con mismo protocolo

5: Varios protocolos. Sistema Abierto y con interfaces de todo tipo al exterior.


28

Puntos de Funcin

FC2) Proceso Distribuido.


Existen procesos o datos distribuidos y el
control de stos forma parte del sistema.

29

Puntos de Funcin

FC2) Proceso distribuido (Valores):


0: Sistema totalmente centralizado
1: Sistema realiza procesos en un equipo,
salidas usadas va Sw por otros equipos
2: Sistema captura, los trata en otro
3: Proceso distribuido, trans. una sola direc.
4: idem, transferencia en ambas direcciones.
5: procesos cooperantes ejecutndose en
distintos equipos.
30

Puntos de Funcin

FC3) Objetivos de Rendimiento.


Si el rendimiento es un requisito del sistema,

es decir, es crtico algn factor como tiempo de


respuesta o cantidad de operaciones por hora.
Se tendr que hacer consideraciones especiales
durante el diseo, codificacin y mantenimiento.

31

Puntos de Funcin

FC3) Objetivo de Rendimiento (Valores):


0: Rendimiento normal ( no se da nfasis ).
1: Se indican requisitos, no medida especial.
2: Crtico en algunos momentos. Procesos acabados antes de prxima sesin de trabajo.
3: Tiempo de respuesta es crtico.
4: ... en diseo hacer anlisis de rendimiento en
tiempo respuesta o cantidad operaciones/hora.
5: .. uso herramientas para alcanzar el rendimiento
demandado por el usuario.
32

Puntos de Funcin

FC4) Integracin de la Aplicacin.


El sistema tendr que
ejecutarse en un equipo en el
que coexistir con otros,
compitiendo por los recursos,
teniendo que tenerse en cuenta
en las fase de diseo.

33

Puntos de Funcin

FC4) Integracin de la aplicacin (Valores):


0: No se indican restricciones
1: Existen las restricciones usuales
2: Caractersticas de seguridad o tiempos.
3: Restricciones en algn procesador
4: El Sw deber funcionar con restricciones de uso
en algn procesador.
5: Restricciones especiales para aplicacin en los
componentes distribuidos del sistema
34

Puntos de Funcin

FC5) Tasa de Transacciones.


La tasa de
transacciones ser
elevada. Se tendr que
hacer consideraciones
especiales durante el
diseo, codificacin e
instalacin.
35

Puntos de Funcin

FC5) Tasa de transacciones (Valores):


0: No se prevn picos.
1: Se prevn picos poco frecuentes (mensual).
2: Se prevn picos semanales.
3: Se prevn horas punta, diarias.
4: Tasa de trans. tan elevada que en diseo se hace
anlisis de rendimiento.
5: Anlisis de rendimiento en diseo, implementacin e instalacin.
36

Puntos de Funcin

FC6) Entrada de Datos


On-line.
La entrada de datos
ser directa desde el
usuario a la aplicacin,
de forma interactiva.

37

Puntos de Funcin

FC6) Entrada de datos on-line (Valores):


0: Todo es Batch.
1: 1%<entradas interactivas <7%.
2: 8%<entradas interactivas <15%.
3: 16%<entradas interactivas <23%.
4: 24%<entradas interactivas <30%.
5: Entradas interactivas >30%.

ppi-t2

38

Puntos de Funcin

FC7) Eficiencia para el


Usuario Final.
Se demanda eficiencia
para el trabajo del
usuario, es decir, se tiene
que disear e
implementar la
aplicacin con interfaces
fciles de usar y con
ayudas integradas.
ppi-t2

39

Puntos de Funcin

FC7) Eficiencia para el Usuario Final.


Tipos de elementos asociados a la eficiencia del
usuario.
Mens.
Uso de ratn.
Ayudas "en_lnea".
Movimiento automtico del cursor.
Efectos de Scroll (papiro).
Teclas de funcin predefinidas.
Lanzamiento de procesos Batch desde las
transacciones "en_lnea.
ppi-t2

40

Puntos de Funcin

FC7) Eficiencia para el Usuario Final.


continuacin:
Seleccin mediante cursor de datos de la
pantalla;
Pantallas con muchos colores y efectos;
Posibilidad de "hard-copy".
Ventanas de "pop-up";
Aplicacin bilinge (cuenta por cuatro).
Aplicacin Multilinge (mas de dos, cuenta por
seis).
ppi-t2

41

Puntos de Funcin

FC7) Eficiencia para el Usuario Final


(Valores):
0: No se da nfasis al tema
1: 1 a 3 de los factores
2: 4 a 5 de los factores
3: 6 o ms factores, sin requerir eficiencia
4: ... con requerimientos que implican estudio de
los factores humanos en el diseo
5: se demandan prototipos y herramientas para
verificar que se alcanzaran los objetivos
ppi-t2

42

Puntos de Funcin

FC8) Actualizaciones Online.


Los ficheros maestros

y/o las Bases de Datos


son modificados de
forma interactiva.

ppi-t2

43

Puntos de Funcin

FC8) Actualizaciones On-line (Valores):


0: No hay.
1: De 1 a 3 ficheros con informacin de control;
cantidad baja y ficheros recuperables.
2: ... pero con 4 o ms ficheros de control
3: Actualizacin de ficheros importantes
4: ... esencial la proteccin ante prdidas
5: Gran cantidad de actualizaciones interactivas;
sistemas de recuperacin muy automatizados.
44

Puntos de Funcin

FC9) Lgica de Proceso Interno Compleja.


La complejidad interna en un proceso esta en
funcin de las siguientes caractersticas:
Especificados algoritmos matemticos
complejos.
Proceso con lgica compleja.
Especificado muchas excepciones, consecuencia de transacciones incompletas, que debern
tratarse.
Manejar mltiples dispositivos de entrada /
salida.
Se incorporarn sistemas de seguridad y
control.
45

Puntos de Funcin

FC9) Lgica de Proceso Interno Compleja


(Valores):
0: Ninguna de las caractersticas.
1: 1 Caracterstica.
2: 2 Caractersticas.
...
5: Las 5 caractersticas.

46

Puntos de Funcin

FC10) Reusabilidad del Cdigo.


Es necesario hacer consideraciones
especiales durante el diseo, codificacin
y mantenimiento para que el cdigo se
reutilice en otras aplicaciones.

47

Puntos de Funcin

FC10) Reusabilidad del Cdigo (Valores):


0: No se prev.
1: Reutilizar cdigo en la misma aplicacin.
2: Menos de un 10% de la aplicacin tiene en
cuenta las necesidades de + de 1 usuario.
3: El 10 % o ms ...
4: Aplicacin preparada para ser reutilizable a
nivel de cdigo.
5: Aplicacin preparada para ser reutilizable por
medio de parmetros.
ppi-t2

48

Puntos de Funcin

FC11) Contempla la conversin e instalacin.


Se proveern facilidades de conversin e instalacin
en el sistema, se tendr que hacer consideraciones
especiales durante el diseo, codificacin y pruebas
para que la conversin del sistema antiguo sean
fciles de realizar durante la puesta en marcha del
sistema nuevo.

Antiguo
ppi-t2

Nuevo
49

Puntos de Funcin

FC11) Contempla la conversin e instalacin (Valores).


0: No se requiere conversin.
1: Se solicita facilidad de instalacin.
2: Se solicitan procesos de conversin e
instalacin, no importantes para el proyecto.
3: ... si son importantes.
4: 2 y herramientas conversin e instalacin.
5: 3 y herramientas conversin e instalacin;
sistema crtico para la empresa.
ppi-t2

50

Puntos de Funcin

FC12) Facilidad de Operacin.


Facilitar la explotacin real de la aplicacin, dedicando especial atencin durante el diseo, codificacin y pruebas del sistema.
Se pueden tener en cuenta las siguientes posibilidades
de automatizacin:
Procesos de arranque, back-up y recuperacin
pero con intervencin del operador.
sin intervencin del operador (vale por 2).
Minimizar la necesidad de montar cintas u
otros dispositivos de almacenamiento externo.
Minimizar la necesidad de manejar papel.

ppi-t2

51

Puntos de Funcin

FC12) Facilidad de Operacin (Valores):


0: No se especifica nada.
1 a 4: Sumar la cantidad de items de la lista
anterior.

5: Sistema automtico sin intervencin


humana.

ppi-t2

52

Puntos de Funcin

FC13) Instalaciones Mltiples.


El sistema ha de incluir los requerimientos de
diversas empresas o departamentos en
donde se ejecutara (incluso plataformas).
Estas caractersticas se estarn presentes
durante el diseo, codificacin y pruebas.

ppi-t2

53

Puntos de Funcin

FC13) Instalaciones Mltiples (Valores):


0: 1 solo lugar.
1: Mltiples lugares, mismo Hw y Sw.
2: En diseo se tiene en cuenta el caso (1).
3: En diseo se tiene en cuenta mltiples
entornos Hw y Sw.
4: Se documenta y planea para (1) y (2).
5: Idem, para (3).
ppi-t2

54

Puntos de Funcin

FC14) Facilidad de Cambios.


Se tendr que hacer

consideraciones
especiales durante el
diseo, codificacin y
mantenimiento para
que en el sistema sea
fcil de introducir
cambios y fcil de
adaptar al usuario.
ppi-t2

55

Puntos de Funcin

FC14) Facilidad de Cambios.


Items a tener en cuenta:
Consultas flexibles del usuario:
Simples con condiciones. lgicas And/Or que
implican un nico fichero lgico
Medias con cond. lgicas sobre ms de 1 F.L. (por 2).
Complejas con condiciones lgicas complejas que
afectan a varios F.L. (por 3).
Parmetros de la aplic. con tablas ajenas al cdigo:
El cambio se hace efectivo al arrancar el sistema.
El cambio es interactivo (por 2).

ppi-t2

56

Puntos de Funcin

FC14) Facilidad de Cambios (Valores):


0: No se especifica nada
1: Un tem de valor 1
2: Items por valor 2
3: ...
5: Items por valor 5

57

Puntos de Funcin
Tabla para el clculo de los FC
#

Factor de Complejidad

Comunicacin de Datos.

Proceso Distribuido.

Rendimiento

Configuracin Operacional compartida

Ratio de Transacciones

Entrada de Datos EN-LNEA

Eficiencia con el Usuario Final

Actualizaciones EN-LNEA

Complejidad del Proceso Interno

Valor
(0..5)

10 Reusabilidad del Cdigo


11 Contempla la Conversin e Instalacin
12 Facilidad de Operacin (back up, etc.)
13 Instalaciones Mltiples
14 Facilidad de Cambios
Factor de Complejidad Total (FCT)

? Valori

58

Puntos de Funcin
Clculo de los PFA:
PFA = PFSA * (0,65 + (0.01 * FC))
Cada factor de complejidad afecta en

+/- 2,5% en los PFSA


PFSA * 65% <= PFA <= PFSA * 135%

59

Puntos de Funcin
Estimacin del Esfuerzo Requerido:
Partimos de los datos histricos de la
Organizacin.
Esfuerzo =
PFA * Promedio_Organizacin( Lenguaje)

60

Puntos de Funcin
Estimacin del Esfuerzo Requerido (Datos
histricos)
Nombre
Proyecto

Puntos de
Funcin

Lenguaje

Snia
Palncia
Turia
Albufera
Magro
Cabriel
Jcar
Serpis
Montnegre
Segura

200
150
375
500
425
800
180
325
225
470

COBOL
PASCAL
4GL
PASCAL
4GL
PASCAL
PASCAL
4GL
PASCAL
COBOL

Esfuerzo en Horas/PF
horas
5.017
2.569
3.011
9.479
3.342
13.349
2.800
2.541
4.528
13.218

25
17
8
19
8
17
16
8
20
28

61

Puntos de Funcin
Tabla de estimacin del Esfuerzo Requerido /
Puntos de Funcin
Lenguaje

Horas/PF LDC/PF

Ensamblador

20 a 30

320

Cobol ANSI 85

10 a 20

100

Lenguajes 4GL

5 a 10

40
Ver Ejercicio

62

Puntos de Funcin
Entradas:

63

Puntos de Funcin
Salidas:

ppi-t2

64

Puntos de Funcin
Consultas:

65

Puntos de Funcin
Ficheros lgicos internos:

66

Puntos de Funcin
Ficheros de Interfaz Externos:
DIAGRAMA DE CONTEXTO

67

Вам также может понравиться