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

PLANIFICACIN DEL PROYECTO DE SOFTWARE

Fases de Definicin de Software


Anlisis del sistema. Define el papel de cada elemento del sistema informtico, asignando finalmente al software el papel que va a desempear. Planificacin del proyecto de software. Una vez establecido el mbito del software, se analizan los riesgos, se asignan los recursos, se estiman los costos, se definen las tareas y se planifica el trabajo. Anlisis de Requerimientos. El mbito establecido para el software proporciona la direccin a seguir, pero antes de comenzar a trabajar es necesario disponer de una informacin mas detallada del mbito de informacin y de funcin del software.
2

Planeacin de Proyectos de Software

El objetivo principal de la planeacin del proyecto es establecer una estrategia pragmtica para controlar, rastrear y monitorear un proyecto tcnico complejo Por qu? Para que los resultados finales se obtengan a tiempo y con calidad!

Pasos
Alcance : entender el problema y el trabajo que debe ser realizado Estimacin : qu tanto esfuerzo? cunto tiempo? Riesgo : qu puede salir mal? cmo evitarlo? qu podemos hacer? Calendarizacin : cmo ubicamos los recursos a travs del tiempo? cules son los hitos? Estrategia de Control: cmo controlar la calidad?cmo controlar el cambio?

Escrbalo!
Alcance del Proyecto Estimaciones Riesgos Calendario Estrategia de Control

Plan de Proyecto de Software

Definir conjuntos de tareas


Datos de mtricas que indican un rea problema no deben ser considerados negativos. Estos datos son meramente un inidicador en la mejora del proceso

No obsesionarse una simple mtrica para excluir otras mtricas importantes

Definir una Red de Tareas Red de Actividades


I.3a Valuacin de Riesgos Tcnicos I.1 Alcance del Concepto I.2 Planeacin del Concepto I.3b Valuacin de Riesgos Tcnicos I.3c Valuacin de Riesgos Tcnicos Las 3 tareas I3 son aplicadas en paralelo a 3 diferentes funciones del concepto I.5a Implement. del Concepto

I.4. Prueba del Concepto

I.5b Implement. del Concepto I.5c Implement. del Concepto Las 3 tareas I5 son aplicadas en paralelo a 3 diferentes funciones del concepto

Integrar a,b,c

I.6 Reaccin del Cliente

Determinar la secuencia del flujo de tareas, la dependencia intertareas y la ruta crtica

Grfica de Gantt (Diagrama de Lnea de


Tiempo)
Tareas del Proyecto I.1.1 Identificar necesidades y beneficios Reunin con los clientes Identificar necesidades y restr. del proy. Establecer la declaracin del producto Hito: Declaracin del Producto Definida Definir la salida/control/entreada (OCI) Alcance de las funciones de teclado Alcance de las funciones por voz Alcance de los modos de interaccin Alcance del documento de diagnstico Alcance de otras funciones Documentar OCI (outpu, control, input) FTR: Revisar OCI con el cliente Revisar OCI como se requiere Hito: OCI definida (output,control,input) Definir la funcionalidad/comportamiento Definir las funciones de teclado Definir las funicones de entrada por voz Describir los modos de interaccin Describir el chequeo de ortografa/redacc. Describir otras funciones del WP FTR: Revisar definicin OCI con cliente Revisar como se requiere Hito: Definicin de OCI completada Aislar los elementos de software Hito: Elementos de Software Definidos Investigar disponibilidad de Sw existente Investigar componentes de edicin de texto Investigar componentes de entrada de voz Investigar componentes de adm. de arch. Investigar componentes ortogr./redaccin Hito: Identificacin de componente reusables Definir caractersticas tcnicas Evaluar la entrada por voz Evaluar el chequeo de gramtica Hito: Caractersticas Tcnicas Evaluadas Hacer una estimacin rpida del tamao Crear la Definicin del Alcance Revisar el alcance de docs con el cliente Revisar el documento como se requiere Hito: Documento de Alcance completado semana 1 semana 2 semana 3 semana 4 semana 5

I.1.2

I.1.3

I.1.4 I.1.5

I.1.6

I.1.7 I.1.8

duracin milestone

El Costo del Cambio de Requerimientos


60-100x

1.5-6x 1x Despus de liberacin

Definicin

Desarrollo

Utilizacin vs. Deterioro


Incremento de tasa de fallas debido a efectos colaterales

Tasa de Fallos

cambio curva actual

Curva idealizada Tiempo


10

Por qu se pagan las actividades de SQA?


costo para encontrar y corregir un defecto 100 60.00-100.00

escala logartmica

10

10.00

3.00
1.50 1 0.75

1.00

Req.

prueba Diseo cdigo pruebas de sistema

uso en campo
11

Medicin y Mtrica
... recolectar mtricas es muy difcil ... consume mucho tiempo ... es muy burocrtico ... no probarn nada ...

Cualquier cosas que necesites cuantificar debe ser medido y de alguna forma es superior a no medirlo del todo Tom Gilb

12

Por qu debemos medir?


Sealar Evaluar Predecir Mejorar

13

Medidas para el Administrador


proceso mtricas de proceso mtricas de proyecto medicin mtricas de producto producto

Qu usamos como base?


tamao? funcin?

14

Mtricas de Proceso
mayor enfoque sobre la calidad lograda como consecuencia del proceso repetible datos de SQA estadsticos
anlisis y categorizacin de errores

eficiencia en remocin de defectos


propagacin de fase en fase

reuso de datos

15

Mtricas de Proyecto
Esfuerzo/Tiempo por Tarea de Ing Sw Errores no cubiertos por hora de revisin Fechas de entrega reales vs programadas Nmero de cambios y sus caractersticas Distribucin del esfuerzo sobre tareas de Ing Sw
16

Mtricas sobre Producto


enfoque en la calidad de los entregables medidas del modelo de anlisis complejidad del diseo
complejidad algortmica interna complejidad arquitectnica complejidad del flujo de datos

medidas de cdigo medidas de la efectividad del proceso


eficiencia en remocin de defectos
17

Lineamientos sobre Mtricas


Utilizar el sentido comn y la sensitividad organizacional al interpretar los datos de las mtricas Proveer retroalimentacin regular a los individuos y equipos que han trabajado en recolectar medidas y mtricas. Trabajar con los equipos para establecer metas y mtricas claras que sern utilizadas para medirlos Nunca utilizar las mtricas para amenazar a los individuos o equipos
18

Normalizacin de las mtricas


Los datos normalizados son utilizados para evaluar el proceso y el producto (pero nunca a los individuos)
normalizacin orientada al tamao Por lneas de cdigo normalizacin orientada a la funcin Por puntos funcin

19

Mtricas tpicas orientadas al tamao


Errores por KLOC (Miles de Lneas de Cdigo) Defectos por KLOC $ por LOC pginas de documentos por KLOC errores / persona-mes LOC / persona-mes $ / pgina de documentacin
20

Mtricas Tpicas Orientadas a Funcin


errores por FP (cientos de lneas de cdigo) defectos por FP $ por FP pginas de documentacin por FP determinar el tipo de proyecto valorar el grado de rigor requerido seleccionar las tareas de ingeniera de softwre apropiadas FP por persona-mes

21

Por qu la preferencia a FP?


independencia del lenguaje de programacin utiliza inmediatamente caractersticas contables del dominio de informacin del problema no penalizar implementaciones que requieren menos LOCs que otras (vs. mantenimiento) facilitan el reuso y favorecen a las iniciativas orientadas a objetos
22

Calcular Puntos Funcin


Analizar el dominio de la informacin de la aplicacin y desarrollar el conteo

Establecer el conteo para cada dominio de entrada e interfaces de sistema

Pesar cada conteo por evaluacin de la complejidad

Asignar el nivel de complejidad o peso para cada conteo

evaluar la influencia de factores globales que afecten la aplicacin

Grado de importancia de factores externos Fi tales como reuso, concurrencia, SO,...

Puntos funcin = (conteo x peso) x C


Calcular puntos funcin

donde:
Factor de complejidad: C = (0.65 + 0.01 x N)

Grado de influencia: N = Fi

23

Analizar el Dominio de la Informacin


factor de ponderacin
parmetro de medida # de entradas de usuario # de salidas de usuario # de consultas # de archivos # of interfaces ext. conteo-total factor de complejidad conteo
simple prom. complejo

X 3
X 4 X 3

4
5 4

6
7 6

=
= =

X 7
X 5

10
7

15
10

=
=

puntos funcin

24

Considerar la Complejidad
Los factores se tasan en una escala 0 (sin importancia) 5 (muy importante)
comunicaciones de datos funciones distribuidas configuracin pesada tasa de transaccin entrada de datos en lnea eficiencia para el usuario actualizacin en lnea procesamiento complejo facilidad de instalacin facilidad operacional sites mltiples facilidad de cambios

25

Medicin de la Calidad
Correccin grado en el cual un programa opera conforme a las especificaciones Mantenibilidad grado en el que un programa es conveniente al cambio Integridad grado en el cual un programa permite el ataque externo Usabilidad grado en el cual un programa es fcil de usar

26

Estimacin por Puntos de Funcin

Contenido

Qu son los Puntos de Funcin (PF) Procedimiento de Estimacin de los Puntos de Funcin 1. Obtener Informacin del Sistema 2. Identificar los Componentes del Sistema 3. Calcular No. de Elementos y su Complejidad 4. Obtener los PF sin Ajustar (PFSA) 5. Obtener los PF Ajustados (PFA) 6. Clculo del Esfuerzo 7. Clculo de la Duracin del Proyecto 8. Clculo del Presupuesto del Proyecto

Qu son los Puntos de Funcin


Es una mtrica que permite traducir en un nmero el tamao de la funcionalidad que brinda un producto de software desde el punto de vista del usuario, a travs de una suma ponderada de las caractersticas del producto.
Componentes: EI : Procesos en los que se introducen datos y que suponen la actualizacin de cualquier archivo interno. EO: Procesos en los que se enva datos al exterior de la aplicacin. EQ: Procesos consistentes en la combinacin de una entrada y una salida, en el que la entrada no produce ningn cambio en ningn archivo y la salida no contiene informacin derivada. ILF: Grupos de datos relacionados entre s internos al sistema. EIF: Grupos de datos que se mantienen externamente.

Tabla de ponderaciones para EI, EQ y EO


Una vez obtenidos los diferentes elementos del sistema se utilizan las siguientes tablas para asignar pesos en funcin del nmero de atributos que tengan y el nmero de archivos a los que afecte.

Tabla de ponderaciones para ILF y EIF

Proceso de Estimacin Mediante PF


No. Entradas al Sistema (EI) Factor Correccin por Complejidad: No. Atributos de Entradas No. Salidas del Sistema (EO) Factor Correccin por Complejidad: No. Atributos de Salidas No. Consultas BD (EQ) No. Ficheros (ILF - EIF) Factor Correccin por Complejidad: No. Atributos de Ficheros

x +

Factor...

Puntos de Funcin Sin Ajustar Escala de 14 Factores de Complejidad

Estimacin del Esfuerzo

Datos de Productividad del Equipo

Ajuste de Complejidad Tcnica

Estimacin del Tiempo de Desarrollo

Puntos de Funcin Ajustados

Estimacin del Presupuesto

Clculo de los Puntos de Funcin Sin Ajustar


Por tanto los PFSA (Puntos de Funcin Sin Ajustar) se calculan como la suma de los productos de cada componente por su peso determinado en la tabla correspondiente. PFSA = PFTe + PFTo + PFTq + PFTif + PFTef

Componente EI EO EQ ILF EIF

Bajo Eb * 3 = _ Ob * 4 = _ Qb * 3 = _ IFb * 7 = _ EFb * 5 = _

Medio Em * 4 = _ Om * 5 = _ Qm * 4 = _ IFm * 10 = _ EFm * 7 = _

Alto Ea * 6 = _ Oa * 7 = _ Qa * 6 = _ IFa * 15 = _ EFa * 10 = _

Total PFTe PFTo PFTq PFTif PFTef

PFSA

Descripcin de Totales por componente


PFTe : Total Puntos de Funcin para las entradas del sistema. PFTo : Total Puntos de Funcin para las salidas del sistema. PFTq: Total Puntos de Funcin para las consultas del sistema. PFTif: Total Puntos de Funcin para los archivos internos del sistema. PFTef: Total Puntos de Funcin para los archivos externos del sistema.

Descripcin del problema ejemplo


Para mostrar la mtrica de Puntos de Funcin se tom como ejemplo las condiciones de un sistema de gestin de un hotel, en el cual se tuvieron en cuenta los subsistemas, Gestin de cocina, Gestin de mostrador, Gestin de administracin y la Gestin de configuracin del sistema. En este sistema se consideran 8 archivos internos (platos del men, pedidos de cocina, clientes, habitaciones, reservas, estancias, configuracin y usuarios). El diagrama de contexto y el diagrama de flujo de datos nivel 0 se describen a continuacin.

Obtener Informacin del Sistema


1
Se requiere conocimiento global del sistema y construir un Modelo de entidades primarias. Ejemplo:

Obtener Informacin del Sistema


1
Se requiere conocimiento global del sistema y construir un Modelo de entidades primarias. Ejemplo:

Identificar los Componentes del Sistema


2
Identificar los Componentes del Sistema
A partir de: Diagramas de Casos de Uso (UML) Diagramas de Contexto o DFD (P. Estructurada)

Componentes a Identificar:

Entradas Salidas Consultas Ficheros Lgicos Internos

Ficheros Externos

Calcular No. Elementos y su Complejidad


3
Contar los Elementos de cada Componente y su Complejidad
Componentes Identificados
Cantidad

Entradas
Complejidad

Salidas
Consultas

Ficheros Lgicos Internos


Cantidad

Ficheros Externos
Complejidad

Definicin de los Componentes del Sistema


Entradas: 9 entradas de complejidad alta para el subsistema mostrador, 3 entradas de complejidad alta para el subsistema cocina, 2 entradas de complejidad baja y 4 entradas de complejidad media para el subsistema administracin y 4 entradas de complejidad baja para el subsistema configuracin.

Salidas: 9 salidas de complejidad alta y 1 de complejidad media para el subsistema mostrador, 3 salidas de complejidad alta y 1 de complejidad baja para el subsistema cocina, 2 salidas de complejidad baja, 4 salidas de complejidad media y 3 salidas de complejidad alta para el subsistema administracin y slo una salida de complejidad baja para el subsistema configuracin.
Consultas: 2 consultas de complejidad baja para el subsistema mostrador, 3 consultas de complejidad baja para el subsistema cocina, 1 consulta de complejidad baja y 3 de complejidad alta para el subsistema administracin y finalmente una consulta de complejidad baja para el subsistema configuracin. Ficheros Lgicos Internos: 8 almacenes intermedios de datos de complejidad alta. Ficheros Externos: No se utilizaron almacenes externos de datos.

Clculo de los Puntos de Funcin Sin Ajustar


PFSA = PFTe + PFTo + PFTq + PFTif + PFTef PFSA = 106 + 146 + 39 + 15 + 0 = 306 PF
Componente EI EO EQ ILF EIF Bajo 6 * 3 = 18 4 * 4 = 16 7 * 3 = 21 0*7=0 0*5=0 Medio 4 * 4 = 16 5 * 5 = 25 0*4=0 0 * 10 = 0 0*7=0 Alto 12 * 6 = 72 15 * 7 = 105 3 * 6 = 18 1 * 15 = 15 0 * 10 = 0 Total 106 146 39 15 0 306

Obtener los PF Sin Ajustar


4
Asignar los Puntos de Funcin a cada Componente de acuerdo a las tablas
Componentes Identificados
Cantidad

Entradas
Complejidad PFSA

Salidas
Consultas

Ficheros Lgicos Internos


Ficheros Externos

Tablas Correspondientes a cada Componente

Obtener los PF Ajustados


5
Obtener PF Ajustados
Obtencin Componentes Identificados ACT
Factor de Ajuste Comunicacin de Datos Proceso Distribuido Puntaje
Min Max

0 0 0 0 0 0 0 0 0 0 0 0 0 0

5 5 5 4 5 5 5 5 5 5 5 5 5 5

Entradas

Objetivos de Rendimiento Configuracin de Explotacin Compartida Tasa de transacciones

PFSA = 306

Entrada de Datos en Lnea Eficiencia con el Usuario Final Actualizaciones en Lnea Lgica de Proceso Interno Compleja Reusabilidad del Cdigo Conversin e Instalacin contempladas

PFA=PFSA* [0.65+[0.01*ACT]]

Facilidad de Operacin Instalaciones Mltiples Facilidad de Cambios

Obtener los PF Ajustados


5
Obtener Ajuste de la Complejidad Tcnica
El sistema para determinar la valoracin de uno de los Factores de Ajuste: Ej: Comunicacin de Datos: Los datos usados en el sistema se envan o reciben por lneas de comunicaciones. La valoracin para este factor se determina a travs de la eleccin de las siguientes alternativas: a) 0 = Sistema Aislado del exterior (slo usuarios directos) b) 1 = Aplicacin batch con entrada de datos remota o (exclusiva) utilizacin de perifricos de salida remotos. c) 2 = Aplicacin batch con entrada de datos remota y utilizacin de perifricos de salida remotos. d) 3 = Aplicacin de captura de datos En-Lnea o hay un sistema de teleproceso que pasa los datos a la aplicacin batch o sistema de consulta. e) 4 = Varios teleprocesos pero con el mismo protocolo de comunicaciones. (para el presente caso) f) 5 = Hay teleproceso con varios protocolos de comunicacin. Sistema Abierto y con interfaces de todo tipo al exterior. NOTA: (la sumatoria de las valoraciones de los 14 factores dar el valor para el ACT

N de Factor 1 2 3 4 5 6 7 8 9 10

N de Factor Comunicacin de Datos Proceso Distribuido Objetivos de Rendimiento Configuracin de Explotacin Compartida Tasa de transacciones Entrada de Datos en Lnea Eficiencia con el Usuario Final Actualizaciones en Lnea Lgica de Proceso Interno Compleja Reusabilidad del Cdigo

Valor 0..5

4 4 1 1 3 5 2 3 1 1

11
12 13 14

Conversin e Instalacin contempladas


Facilidad de Operacin Instalaciones Mltiples Facilidad de Cambios Ajuste de Complejidad Tcnica (ACT)

0
1 2 4 32

Clculo del Esfuerzo


6
Clculo del Esfuerzo
Entorno y Lenguaje Esfuerzo Lneas de Cdigo por PF 300 100 20 Horas por PF

PFA = 296.82

Lenguajes 2GL: Ensamblador, C, Lenguajes 3GL: Cobol Lenguajes 4GL: VisualXX

20 a 30 10 a 20 5 a 10

Cambiar horas/efectivas por horas productivas estimadas

LNEAS DE CDIGO = PFA * (LINEAS POR PF)

Esfuerzo horas/persona = PFA / [1 / 8 persona / hora)] = 296.82 / 0.125 = 2374.5 horas/persona

Clculo de la Duracin del Proyecto


7
Clculo de la Duracin del Proyecto

HORAS POR PERSONA = 2374.5

DURACIN DEL PROYECTO EN HORAS = 2374.5 horas/persona / 5 personas = 474.91 horas por miembro DURACIN EN MESES = 474.91 horas / 100 horas/mes = 4 meses 15 dias

Se asigna la cantidad de participantes en el proyecto

Horas/mes productivas estimadas en el proyecto Calculadas de 20 das laborables y De 5 horas productivas estimadas de las 8 de la jornada laboral normal diaria

Clculo del Presupuesto del Proyecto


8
Clculo del Presupuesto del Proyecto

DURACIN DEL PROYECTO EN MESES = 5 meses

Participante 1: Sueldo Participante 2: Sueldo Participante n: Sueldo

Costo Total del Proyecto =


sueldos 1 participante del proyecto * 5 participantes * 5 meses

+
Otros costos necesarios durante la realizacin del proyecto = 2000 * 5 * 5 = 50000
En la prctica se deben especificar Otros costos de operacin para determinar el presupuesto total del proyecto

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