Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Contenido
1. 2. INTRODUCCIN......................................................................................................................... 2 ESTIMACIONES ......................................................................................................................... 3 2.1. 2.2. 2.3. 2.4. 3. 4. 5. PORQUE ESTIMAR EL TAMAO. ................................................................................................... 3 CONTEXTO DE LA ESTIMACIN. .................................................................................................. 4 PRINCIPIOS DE LA ESTIMACIN DE TAMAO. .............................................................................. 4 ASIGNACIN R3 (REPORTE DE ANLISIS DE DEFECTOS) ........................................................ 13
1.
INTRODUCCIN
En esta semana estaremos revisando lo que es la estimacin y no es otra cosa ms que hacer una planeacin referente al proyecto de software. La planeacin se realiza en todos los mbitos, ya sea para realizar una tarea, escolar, laboral o de negocio. Para realizar la estimacin se necesita saber el tiempo, esfuerzo y dinero. Para saber con qu recursos podemos contar durante el desarrollo de nuestro sistema. A veces las estimaciones se realizan ya con la practica que uno vaya teniendo con la elaboracin de proyectos. Adems que con las estimaciones podemos hacer una toma de decisiones adecuada, para cuando se presenten imprevistos en el proyecto. En esta semana revisaremos los temas de: Porque estimar el tamao. Contexto de la estimacin. Proxies. Asignacin R3.
Con estos temas profundizaremos ms las estimaciones y nos estaremos adentrando ms a lo que son las mtricas de software.
2.
Estimacin:
ESTIMACIONES
2.1.
Anteriormente revisamos las mtricas, y cul es la funcin de una mtrica que es medir, si realmente cumple con las especificaciones que el cliente pide. La estimacin del tamao es para realizar comparaciones de proyectos anteriores y nos ayudan a estimar el tiempo y el esfuerzo invertido, durante el desarrollo del software. Un ejemplo de estimacin de tamao es cuando se quiere construir una casa se debe de estimar los metros de terreno para comprar el material, cuantos albailes de requieren para terminar la casa y el tiempo que se pide para entregarla. Lo mismo pasa para realizar la estimacin de tamao de un programa. Las estimaciones se hacen para no cometer errores, algunos errores clsicos de un proyecto de software son:
Mala planeacin
2.2.
Contexto de la estimacin.
El contexto de la estimacin de tamao, se refiere a la planeacin de un proyecto.es decir cmo ser la el proceso del desarrollo del proyecto. Tomando en cuenta las lneas de cdigo. Los desarrolladores utilizan tcnicas de estimacin para saber la estimacin de un proyecto. Estas tcnicas son: LDC. Lneas de cdigo PF; puntos de funcin Modelo COCOMO
2.3.
Para estimar el tamao de un programa se cuenta las mtricas de: Loc: es decir las lneas de cdigo del programa. COCOMO: que es un modelo para la estimacin de cdigo. Puntos de Funcin: es para estimar el tamao. Veremos un ejemplo de cmo se estima el tamao aplicando los puntos de funcin Para calcular los puntos de funcin hay que basarse en la siguiente tabla.
Nmero de entradas del usuario: es cuando el usuario realiza las entradas para cada aplicacin del sistema. Es decir cada que ingresa el usuario a cada interfaz que se requiera. Nmero de salidas del usuario: cada salida que el usuario proporciona a la aplicacin. Es decir cada que sale de una interfaz del sistema. Numero de archivos: es el nmero de entidades que el sistema va a requerir para su aplicacin.
Numero de interfaces externas: Son todas las interfaces legibles por la maquina. Es decir las pantallas del sistema. Nmero de peticiones de usuario: son las entradas y salidas interactivas que tiene el usuario en el sistema.
Ficheros Lgicos Internos(ILF) LGICOS 1 Registro Lgico 2 a 5 Registros Lgicos 6 o ms Registros Lgic. 1-19 Atributos BAJA BAJA MEDIA
Ficheros Lgicos Externos(EIF) LGICOS 1 Registro Lgico 2 a 5 Registros Lgicos 6 o ms Registros Lgic. 1-19 Atributos BAJA BAJA MEDIA
Pressman, R. s. (1998). Ingeniera del Softaware un Enfoque Prctico. Mxico: Mc Graw Hill.
2
Pressman, R. s. (1998). Ingeniera del Softaware un Enfoque Prctico. Mxico: Mc Graw Hill.
La clasificacin de los ficheros es tal y como los percibe el usuario en la aplicacin, es decir, son independientes del nmero de entradas a la aplicacin. Ejemplos de estos ficheros: Clientes Artculos. Proveedores.
Ficheros(EI, EQ) 0-1 2 3+ 1-4 C Bajo Bajo Medio 5-15 C Bajo Medio Alta
3
La clasificacin de las entradas (EI, EQ) son procesos que hacen llegar datos a la aplicacin desde el exterior. Es decir son todas las entradas que afecten a la aplicacin. Ejemplo: Imgenes. Pantalla de entrada de datos. Lector de cdigos de barra.
Ficheros (EO) 0-1 2-3 4+ 1-5 C Bajo Bajo Medio 6-19 C Bajo Medio Alta
4
La clasificacin de las salidas (EO) son procesos que hacen llegar datos a la aplicacin desde el exterior. Ejemplo: Transferencias de datos a otras. Pantallas de salida de datos.
Pressman, R. s. (1998). Ingeniera del Softaware un Enfoque Prctico. Mxico: Mc Graw Hill.
4
Pressman, R. s. (1998). Ingeniera del Softaware un Enfoque Prctico. Mxico: Mc Graw Hill.
Este es un ejemplo de cmo se aplican los puntos de funcin el lenguaje propuesto es Visual BASIC: En la siguiente tabla se presentan algunas tablas y como quedara en su contexto de si es archivo de entrada o salida. Paso 1 DET Cdigo cliente; nomcliente;dir_cliente; cp; Ciudad; persona_contacto;Tel_cliente;Datos _bancarios Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cdigo_cliente;Cod_producto;cantid ad;subtotal;cod_pedido;fecha_pedid o_;precio_total_pedido; Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto; Tel_cliente; Datos_bancarios;num_total_clientes Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cdigo_cliente;nombre_cliente; Tel_cliente; persona_contacto; Cod_producto;nom_producto;cantid ad;subtotal;cod_pedido;fecha_pedid o;precio_total_pedido Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios; Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios; Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos
Archivo clientes.
Archivo productos
Archivo pedidos
Listado de clientes.
Listado de productos
Consulta Cliente.
Consulta producto
Consulta pedido
Agregar Cliente
Modificar cliente
Borrar Cliente
_bancarios; Cod_producto;nom_producto;desc_ prod;costo_u;precio Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cod_producto Cdigo_cliente;nombre_cliente; Tel_cliente; persona_contacto Cod_producto; nom_producto; cantidad;subtotal;cod_pedido;fecha _pedido;precio_total_pedido
Tabla 5 Ejemplo de tipos de archivos
Paso 2 Identificar cuantos atributos tienen cada entidad. DET Cdigo cliente; nomcliente;dir_cliente; cp; Ciudad; persona_contacto;Tel_cliente;Datos _bancarios Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cdigo_cliente;Cod_producto;cantid ad;subtotal;cod_pedido;fecha_pedid o_;precio_total_pedido; Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto; Tel_cliente;Datos_bancarios;num_t otal_clientes Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cdigo_cliente;nombre_cliente; Tel_cliente; persona_contacto; Cod_producto;nom_producto;cantid ad;subtotal;cod_pedido;fecha_pedid o;precio_total_pedido Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos No_ atributos 8
Archivo clientes.
Archivo productos
Archivo pedidos
Listado de clientes.
Listado de productos
Consulta Cliente.
Consulta producto
11
Consulta pedido
Agregar Cliente
Modificar cliente
_bancarios; Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios; Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios; Cod_producto;nom_producto;desc_ prod;costo_u;precio Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cod_producto Cdigo_cliente;nombre_cliente; Tel_cliente; persona_contacto Cod_producto; nom_producto; cantidad;subtotal;cod_pedido;fecha _pedido;precio_total_pedido
5 7
1 11
Pas 3: una vez identificado los atributos procederemos, a identificar qu tipo de fichero es, si es de entrada (EI, EQ), salida (EO), archivo externo, archivo lgico (ILF). DET Cdigo cliente; nomcliente;dir_cliente; cp; Ciudad; persona_contacto;Tel_cliente;Datos _bancarios Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cdigo_cliente;Cod_producto;cantid ad;subtotal;cod_pedido;fecha_pedid o_;precio_total_pedido; Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios;num_total_clientes Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios Cod_producto;nom_producto;desc_ Archivos ILF
Archivo clientes.
ILF
Archivo productos
ILF
Archivo pedidos
EO
Listado de clientes.
Listado de productos
EO
EQ
EQ
Consulta pedido
Agregar Cliente
Modificar cliente
prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cdigo_cliente;nombre_cliente; Tel_cliente; persona_contacto; Cod_producto;nom_producto;cantid ad;subtotal;cod_pedido;fecha_pedid o;precio_total_pedido Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios; Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios; Cdigo_cliente;nombre_cliente;dir_c liente;CP;ciudad: persona_contacto;Tel_cliente;Datos _bancarios; Cod_producto;nom_producto;desc_ prod;costo_u;precio Cod_producto;nom_producto;desc_ prod;costo_u;precio;unidades_dispo nibles_num_mim;unidades Cod_producto Cdigo_cliente;nombre_cliente; Tel_cliente; persona_contacto Cod_producto; nom_producto; cantidad;subtotal;cod_pedido;fecha _pedido;precio_total_pedido
EQ
EI
EI
EI
EI EI
EI EI
Paso 4: Una vez identificado los tipos de archivos se procede a llenar la tabla que se muestra en la Fig. 2. Tenemos lo siguiente:
10
Factor de Ponderacin
Permetro de medicin Nmero de entrada de usuario Nmero de entrada de usuario Nmero de peticiones de salida de usuario Nmero de peticiones de usuario Nmero de peticiones de usuario Nmero de archivos. Numero de interfaces externas cuenta = Total cuenta 6 6 2 2 1 3 x x x x x x x Simple mediano 3 4 3 4 4 4 3 4 3 4 7 3 5 7 Complejo 6 36 6 18 7 8 6 6 6 4 15 21 10 93
En este ejemplo ya se realiz el clculo de los puntos de funcin sin ajustar, en seguida se realiza el clculo aproximado de las lneas de cdigo que se utilizara, para esto nos basaremos en la siguiente tabla. Lenguaje de programacin Ensamblador C Cobol Fortrain Pascal Ada Lenguajes orientados a objetos Lenguajes de 4 generacin Generadores de Cdigo Hojas de calculo Lenguajes Grficos Visuales Promedio de LCD para un PF 320 128 105 105 90 70 30 20 15 6 4
5
En el ejemplo, tenemos que nuestro sistema se realizara con visual BASIC, entonces el lenguaje a elegir en la tabla 6, es Lenguajes grficos visuales. VAF = 0.65 + (13/100)= 0.78
Tabla 10 Formula para calcular Factor de complejidad
Pressman, R. s. (1998). Ingeniera del Softaware un Enfoque Prctico. Mxico: Mc Graw Hill.
11
1 PF 9
Hasta este paso se realizo el clculo de los puntos de Funcin enseguida se procede a realizar el mtodo COCOMO (Modelo Constructivo de costos)
ESF = 2.4 (0.36)1.05 = 0.8577 Hombres Aqu el esfuerzo el resultado se da en hombres. TDES = Tiempo de desarrollo y su resultado es en meses. TDES = 2.5 (ESF) 0.38
Fig. 6 Frmula para calcular el tiempo de desarrollo
12
P = Productividad
2.4.
Esta plantilla tiene como fin introducir los defectos encontrados mientras se estn desarrollando los programas. Es decir se lleva a cabo una bitcora los defectos encontrados. Tomado en cuenta el tiempo en que se llevo eliminar los defectos que surgieron en el desarrollo del programa.
Pressman, R. s. (1998). Ingeniera del Softaware un Enfoque Prctico. Mxico: Mc Graw Hill.
13
Pressman, R. s. (1998). Ingeniera del Softaware un Enfoque Prctico. Mxico: Mc Graw Hill.
14
3.
CONCLUSIONES
La estimacin, nos ayuda a prever errores y poder corregirlos y a tomar las medidas necesarias para realizar una buena toma de decisiones, adems de que al paso de tiempo, nos ayuda a realizar estas estimaciones sin necesidad de realizar clculos ya que con la experiencia y la prctica de
15
4.
RECOMENDACIONES
Se te recomienda que leas las fuentes que se te proporciona en la bibliografa para un mejor aprendizaje.
5. Bibliografa
Pressman, R. s. (1998). Ingeniera del Softaware un Enfoque Prctico. Mxico: Mc Graw Hill.
16