Metricas proyecto1
-
Upload
luis-gualberto -
Category
Documents
-
view
239 -
download
0
description
Transcript of Metricas proyecto1
METRICAS DEL SISTEMA Versión 1.0 3 de junio del 2011 Soluciones Informáticas S.A. Luis Godinez (Jefe de proyecto)
HISTORIAL DE REVISIONES
Fecha Versión Descripción Autor
03/06/2011 1.0 Versión general de métricas del sistema.
Luis Godinez (Jefe de proyecto).
TABLA DE CONTENIDOS
INTRODUCCION ............................................................................................................................................ 5
PROPOSITO .................................................................................................................................................. 5
ALCANCE ...................................................................................................................................................... 5
OBJETIVOS.................................................................................................................................................... 5
METRICA DE PUNTO DE FUNCION ..................................................................................................................... 6
METRICA PARA LA CALIDAD DE ESPECIFICACIÓN ............................................................................................. 7
REQUISITOS FUNCIONALES ............................................................................................................................. 7
REQUERIMIENTOS NO FUNCIONALES ............................................................................................................ 8
PARA EL MODELO DEL DISEÑO ........................................................................................................................ 10
DE MORFOLOGIA ............................................................................................................................................. 10
TAMAÑO DEL PROYECTO .............................................................................................................................. 10
BASADOS EN CLASES ........................................................................................................................................ 11
PARA EL CODIGO FUENTE ................................................................................................................................ 12
1. VALIDACION DE USUARIOS (VALUSUARIOS) ..................................................................... 12
2. INFORME DE EMPRESAS REGISTRADAS (PERFIL) .............................................................. 13
3. INFORME SOLICITANTES DE EMPLEO (SOLICITANTES) ..................................................... 13
4. INSERTA UNA OFERTA EN EL SISTEMA (FORMOFERTA) .................................................... 14
5. INSERTA UNA OFERTA EN EL SISTEMA (MODOF).............................................................. 14
6. REGISTRAR UNA EMPRESA (REGISTRAR) .......................................................................... 15
7. VALIDAR LA INSERCION DE LA EMPRESA (REGISTRAREMPRESA) ..................................... 15
8. MUESTRA USUARIOS REGISTRADOS POR EL USUARIO (PERFILSOL) ................................. 16
9. CONSULTA DE EMPLEOS (CONSULTA) .............................................................................. 16
10. CONVERTIR USUARIO EN PREMIUM (REALIZAR PAGO) ................................................ 17
11. MODIFICAR USUARIO (MODOSOL) ............................................................................... 18
12. CER CURRICULUM (SUBIRCV) ........................................................................................ 18
13. SUBE CURRICULUM A LA BD (INSERTARCUR) ............................................................... 18
14. DEVUELVE EMPLEADOS MASCULINOS Y FEMENINOS (CONSULTARGENERO) ............. 19
15. DEVUELVE EDAD DE EMPLEADOS (CONSULEDAD) ....................................................... 19
16. DEVUELVE EDAD DE EMPLEADOS SOLO PROFESION (CONSULTPROFESION) ............... 20
17. USUARIOS PAGADOS A GRATUITOS (CONSULTIPO) ..................................................... 20
18. CERRAR SESION (SALIR) ................................................................................................. 21
19. CERRAR SESION (SALIR) ................................................................................................. 21
20. CREAR CONEXION (CONEXION) ..................................................................................... 22
21. COMPROVAR CORREO (COMPROBAR CORREO) ........................................................... 22
PARA EL MANTENIMIENTO ............................................................................................................................. 24
DOMINIOS DEL PROCESO Y EL PROYECTO ...................................................................................................... 24
METRICAS DEL SISTEMA
INTRODUCCION En un sistema de información en el que se desea obtener calidad, es necesario contar con una forma de evaluar esta calidad y existen muchas formas pero dentro de una de las formas efectivas de evaluar dicha calidad nos encontramos las métricas que nos proporcionar diferentes herramientas y se detallan en este documento basado en un previo documento denominado plan de desarrollo de software.
PROPOSITO
El propósito del esté documento es proporcionar una herramienta que contribuya con el desarrollo y evaluación del sistema y conocer el nivel de calidad en donde nos encontramos para obtener una mejora continua.
ALCANCE
Las métricas evaluadas en este sistema se dan a lo largo de todo el proyecto ya que es necesario evaluar todos los puntos importantes desde el inicio hasta el fin e instalación del programa.
OBJETIVOS
1- Obtener software de calidad. 2- Proporcionar a los lideres del proyecto una visión y desarrollo general
del sistema. 3- Satisfacción del cliente. 4- Competitividad en el mercado.
SISTEMA #1
METRICA DE PUNTO DE FUNCION
CONTEO SIMPLE PROMEDIO COMPLEJO TOTAL
ENTRADAS EXTERNAS (EE) 9 3 4 6 36
SALIDAS EXTERNAS (SE) 7 4 5 7 28
CONSULTAS EXTERNAS (CE) 1 3 4 10 4
NUMERO DE ARCHIVOS LOGICOS INTERNOS (ALI)
3 7 10 15 30
NUMERO DE ARCHIVOS DE INTERFAZ EXTERNOS (AIE)
0 5 7 10 0
TOTAL 98
1- ¿El sistema requiere respaldo y recuperación confiable?
5
2- Se requieren comunicaciones de datos especializados para transferir información a la
aplicación, u obtenerla de ella?
3
3- ¿hay funciones distribuidas de procesamiento?
0
4- ¿El desempeño es crítico?
1
5- ¿el sistema se ejecutara en un entorno existente que tiene un uso pesado de operaciones?
3
6- ¿El sistema requiere entrada de datos en línea?
5
7- ¿La entrada de datos en línea requiere que la transacción de entrada se construya en
varias pantallas u operaciones?
4
8- ¿Los ALI se ejecutan en línea?
5
9- ¿Las entradas, las salidas, los archivos o las consultas son complejos?
2
10- ¿Es complejo el procesamiento interno?
3
11- ¿El código utilizado será reutilizable?
3
12- ¿Se incluye la conversión e instalación el diseño?
5
13- ¿Está diseñado el sistema para instalaciones múltiples en diferentes organizaciones?
0
14- ¿La aplicación está diseñada para facilitar el cambio y para que el usuario lo use
fácilmente?
4
Fi= (i= 1-14) valorado en las siguientes preguntas = 44
PF = 98 X [0.65 + 0.01 X 98]
PF = 98 X [1.06]
PF = 159.74
COSTO POR PUNTO DE FUNCION
Costo del proyecto según propuesta Q25, 660
Precio por punto de función Q161.00
METRICA PARA LA CALIDAD DE ESPECIFICACIÓN
REQUISITOS FUNCIONALES
1. Almacenará toda clase de papelerías del curriculum vitae de los solicitantes.
a. Almacenará los datos de empresas y personas suscritas al sistema.
2. Almacenará las ofertas de empleo de las empresas que desean colocar su anuncio.
3. Tendrá acceso a pago en línea por medio de banca virtual.
4. Realizara búsquedas de empleos.
5. Realizara búsquedas de solicitantes.
6. Realizara búsquedas de empresas.
7. Ordenara los datos de empleos como hayan sido ingresados.
8. Ordenara los datos de empresas como hayan sido ingresados.
9. Ordenara los solicitantes según tipo de pago.
REQUERIMIENTOS NO FUNCIONALES
1. El sistema deberá proporcionar tiempos de respuesta aceptables cuando se ejecuten los
procesos en línea del sitio web.
2. Las aplicaciones consultadas dentro del sitio web deberán ser vistas y consultadas por
todo tipo de usuario (dependiendo del privilegio que este tenga en el sitio) que desee
acceder a ellas, esto quiere decir que el sistema debe estar en la capacidad de dar
respuesta al acceso de cualquier usuario en línea.
3. El acceso al sitio web deberá de estar restringido por el uso de claves de usuarios, las
cuales serán asignadas a todos los usuarios de dicha aplicación. Las personas que deseen
acceder al sitio web deben de registrarse de los contrario no podrán acceder.
4. El sistema deberá de ser capaz de controlar y rechazar cualquier tipo de modificación que
no sea autorizada e informar al administrador sobre este tipo de incidente para tener el
conocimiento de dicha violación.
5. El sistema debe registrar eventos del sistema que permitan dar seguimiento a las
actividades de cada usuario en línea para su control.
6. El sistema deberá validar automáticamente la información ingresada en los formularios. En el proceso de validación de información, se deben tomar en cuenta aspectos tales como obligatoriedad de campos, longitud de caracteres permitida por campo, manejo de tipos de datos, etc.
7. El sistema deberá estar construido sobre una plataforma incremental y evolutiva, esto es para que cuando se necesiten nuevos requerimientos y funcionalidades dentro del sitio web no sea afectado el código de manera completa sino considerablemente, utilizando reutilización de componentes.
8. El sistema tendrá la capacidad de realizar o incorporar nuevas funcionalidades, modificar o borrar las mismas después de su construcción e implementación inicial.
9. El sistema contemplara requerimientos de crecimiento tanto para usuarios internos como externos.
10. Definir un modelo en 3 capas; datos, recursos y aplicaciones para optimizar la escalabilidad de la aplicación.
11. El sistema deberá garantizar una navegación aceptable para sus usuarios.
12. El sistema deberá proporcionar un servicio continuo al 100% para sus usuarios a la vez tendrá diseñado un plan de contingencia ante una posible falla del sistema.
13. El sistema contara con planes de recuperación antes posibles caídas del sistema. Empleando sistemas de respaldo, tratando de no perder información.
14. El sistema deberá ser capaz de tolerar errores. 15. El sistema deberá ser capaz de recuperarse de errores.
16. El sistema deberá ser capaz de tolerar cargas de información, procesos o usarios dentro de la aplicación.
17. El sistema contara con planes de contingencias para fallas o caídas del sistema. 18. El sistema deberá funcionar correctamente en los navegadores web convencionales, estos
pueden ser Mozilla Firefox, Internet Explorer, Google Chrome, opera en sus versiones actuales.
19. El sistema deberá funcionar en arquitectura de 32 y 64 bits. 20. Contar con un manual técnico del usuario de la aplicación para posibles futuras referencias
de la misma. 21. El sistema deberá de contar con la capacidad de permitir su fácil mantenimiento respecto
a los posibles errores durante la operación del sistema.
REQUISITOS DEL SISTEMA NO FUNCIONALES
nr = nf + nnf nr = 9 + 19 = 28
CALIDAD DE ESPECIFICACION
Qt = nui /nr
Según el criterio de 25
Qt = 25/28 = 0.89
PARA EL MODELO DEL DISEÑO
DE MORFOLOGIA
TAMAÑO DEL PROYECTO
NODOS = 10
ARISTAS = 11
TAMAÑO = N + A
Contactos
#id_contacto: Integer+nombre_cont: String+direccion_cont: String+Puesto: String
empresa
+id_em: Integer+nombre_em: String+id_dep: Integer+direccion_em: String+obdervaciones: String
departamentos
+id_depto: Integer+nombre_dep: String
ofertas
+id_oferta: Integer+fecha_inicial: Date+fecha_final: Date+edad: Integer+genero: String+id_depto: Integer+observacion: String+estado: String
Contratacion
+id_oferta: Integer+id_em: Integer+id_contra: Integer
profesion
+id_prof: Integer+nombre_prof: String
solicitante
+id_sol: Integer+nombre_sol: String+dirección_sol: String+id_dep: Integer+tipo_sol: String+edad: Integer+observaciones_sol: String+estado: String
cv
+id_cv: Integer+archivo_nombre: String+archivo_peso: String+archivo_tipo: String+archivo: String
recibo
+id_recibo: Integer+monto: Integer+fecha: Date
Telefonos
+numero: Integer
*
1
1
*
*
1
*
1
1
1
11
1
*
1
1
1
1
*
111
TAMAÑO = 10 + 11 = 21
PROFUNDIDAD
3 DE ARRIBA HACIA ABAJO
ANCHURA
6 DE IZQUIERDA A DERECHA
DENSIDAD DE LAS CONEXIONES
R = A/N
R = 11/10 = 1.1
BASADOS EN CLASES
Ma1 = 1 Md1= 1 Mi1=0
Ma2 = 1 Md2= 1 Mi2=0
Ma3= 2 Md3= 1 Mi3=1
Ma4 = 2 Md4= 1 Mi4= 1
Ma5 = 3 Md5= 1 Mi5= 2
Ma6 = 3 Ma7 = 2 Ma8 = 2 Ma9 = 3 Ma1 = 5
Md6= 2 Mi6= 1
Md7= 1 Mi7= 1
Md8= 1 Mi8= 1
Md9= 3 Mi9= 1
Md1= 4 Mi1= 1
SUMATORIAS Ma1 = 24 Mi= 9
MFH= 9/24 = 0.375
PARA EL CODIGO FUENTE
Estas métricas fueron realizadas sobre el código PHP que hace que esta página sea dinámica y
todo el código que fue realizado
.
1. VALIDACION DE USUARIOS (VALUSUARIOS)
n1 n2 N1 N2 1) session_start (); 1) $nombre 1. session_start (); 1 1) $nombre 6
2) Header 2) $contra 2. Header 1 2) $contra 6
3) Include 3) 0 3. Include 1 3) 0 1
4) $variable 4) Conectarse() 4. $variable 8 4) Conectarse() 1
5) = 5. = 8
6) $_POST 6. $_POST 2
7) $link 7. $link 2
8) mysql_query(); 8. mysql_query(); 1
9) mysql_num_rows(); 9. mysql_num_rows(); 1
10) If 10. If 1
11) <= 11. <= 1
12) {} 12. {} 1
13) Echo 13. Echo 1
14) Exit (); 14. Exit (); 1
15) $numfields 15. $numfields 2
16) $link 16. $link 2
17) $_SESSION 17. $_SESSION 2
18) <?php. 18. <?php. 1
19) ?> 19. ?> 1
19 4 38 14
Total líneas código 36
2. INFORME DE EMPRESAS REGISTRADAS (PERFIL)
n1 n2 N1 N2 1) session_start (); 1. conectarse () 1) session_start (); 1 conectarse () 3
2) $_SESSION 2. $nombre 2) $_SESSION 2 $nombre 3
3) If 3. $resultado 3) If 2 $resultado 6
4) Echo 4. 0 4) Echo 3 0 5
5) Exit() 5. $empresa 5) Exit() 2 $empresa 11 6) {} 6) {} 3
7) Include() 7) Include() 1 8) $link 8) $link 10
9) $user 9) $user 1
10) $result 10) $result 12
11) $numfield 11) $numfield 2
12) $_SESSION 12) $_SESSION 4
13) $numfields 13) $numfields 3
14) Printf 14) printf 4
15) mysql_close 15) mysql_close 3
16) mysql_query 16) mysql_query 4
17) While 17) While 2
18) mysql_free_result 18) mysql_free_result 2
19) mysql_fetch_array 19) mysql_fetch_array 3
20) $row 20) $row 7
21) = 21) = 28
22) != 22) != 1
23) <= 23) <= 1
24) <?php. 24) <?php. 6
25) ?> 25) ?> 6
25 5 113 28 Total líneas código 15
3. INFORME SOLICITANTES DE EMPLEO (SOLICITANTES)
n1 n2 N1 N2 1. session_start (); 1. conectarse () 1. session_start (); 1. conectarse () 1
2. If 2. $resultado 2. If 1 2. $consultaresult1 3
3. Else 3. $consultaresult1 3. Else 1 3. $consultaresult1 3
4. Echo 4. 0 4. Echo 2 5. {} 6. $consultaresult1 5. {} 3
7. Include() 8. 6. Include() 1
9. $link 10. 7. $link 2
11. Printf 12. 8. printf 1
13. mysql_query 14. 9. mysql_query 1
15. while 16. 10. While 1
17. mysql_fetch_array 18. 11. mysql_fetch_array 2
19. $myrow 20. 12. $myrow 4
21. = 22. 13. = 6
23. <?php. 24. 14. <?php. 1
25. ?> 26. 15. ?> 1
15 5 27 7 Total líneas código 16
4. INSERTA UNA OFERTA EN EL SISTEMA (FORMOFERTA)
n1 n2 N1 N2 1. session_start (); 1. conectarse () 1. session_start (); 1 1. conectarse () 1
2. $_SESSION 2. $nombre 2. $_SESSION 1 2. $empresaresult 6
3. If 3. $empresaresult 3. If 3
4. Else 4. 0 4. else 2
5. Echo 5. $empresa 5. Echo 5
6. Exit() 6. 6. Exit() 1
7. {} 7. {} 6
8. Include() 8. Include() 1
9. $link 9. $link 3
10. Printf 10. printf 2
11. mysql_query 11. mysql_query 2
12. While 12. While 2
13. mysql_fetch_array 13. mysql_fetch_array 4
14. $myrow 14. $myrow 8
15. = 15. = 7
16. != 16. != 1
17. <?php. 17. <?php. 3
18. ?> 18. ?> 3
17 5 55 7
Total líneas código 36
5. INSERTA UNA OFERTA EN EL SISTEMA (MODOF)
n1 n2 N1 N2 1. session_start (); 1. conectarse () 2. session_start (); 1 1. conectarse () 1
3. $_SESSION 2. $oferta 4. $_SESSION 1 2. $oferta 1
5. If 3. $estado 6. If 1 3. $estado 1
7. Echo 4. 8. Echo 1 5.
9. Exit() 6. 10. Exit() 1 11. {} 12. {} 1
13. Include() 14. Include() 1
15. $link 16. $link 2
17. $_POST 18. $_POST 2
19. $result 20. $result 1
21. mysql_query 22. mysql_query 1
23. != 24. != 1
25. <?php. 26. <?php. 2
27. ?> 28. ?> 2
27 3 18 3 Total líneas código 15
6. REGISTRAR UNA EMPRESA (REGISTRAR)
n1 n2 N1 N2 1. session_start (); 1. conectarse () 1. session_start (); 1 1. conectarse () 1
2. $_SESSION 2. $nombre 2. $_SESSION 3 2. $nombre 2
3. If 3. $dirección 3. If 3 3. $dirección 1
4. 4. else 1
5. Echo 5. Echo 4
6. Exit() 6. Exit() 1 7. {} 7. {} 3
8. Include() 8. Include() 1
9. $link 9. $link 3
10. $user 10. $user 1
11. $_SESSION 11. $_POST 4
12. mysql_query 12. mysql_query 2
13. = 13. = 7
14. != 14. != 1
15. <?php. 15. <?php. 2
16. ?> 16. ?> 2
16 3 38 4
Total líneas código 28
7. VALIDAR LA INSERCION DE LA EMPRESA (REGISTRAREMPRESA)
n1 n2 N1 N2 1. session_start (); 1. conectarse () 1. session_start (); 1 1. conectarse () 1
2. $_SESSION 2. $nombre 2. $_SESSION 3 2. $nombre 2
3. If 3. $Departmento 3. If 3 3. $Departmento 1
4. Echo 4. $Dirección 4. Echo 4 4. $Dirección 1
5. Exit() 5. $Observaciones 5. Exit() 1 5. $Observaciones 1 6. {} 6. {} 3
7. Include() 7. Include() 1 8. $link 8. $link 3
9. $user 9. $user 1
10. mysql_query 10. mysql_query 1
11. = 11. = 7
12. != 12. != 1
13. <?php. 13. <?php. 2
14. ?> 14. ?> 2
25 5 33 6 Total líneas código 28
8. MUESTRA USUARIOS REGISTRADOS POR EL USUARIO (PERFILSOL)
n1 n2 N1 N2 1. session_start (); 1. conectarse () 1. session_start (); 1 1. conectarse () 1
2. $_SESSION 2. $resultado 2. $_SESSION 2 2. $result 1
3. If 3. 0 3. If 1 3. $soli 1
4. Echo 4. $soli 4. Echo 1
5. Exit() 5. $solist 5. Exit() 1
6. {} 6. {} 1
7. Include() 7. Include() 1
8. $link 8. $link 2
9. mysql_query 9. mysql_query 1
10. <?php. 10. <?php. 2
11. ?> 11. ?> 2
11 5 15 3 Total líneas código 14
9. CONSULTA DE EMPLEOS (CONSULTA)
n1 n2 N1 N2 1. If 1. conectarse () 1. If 3 1. conectarse () 1
2. Else 2. $consultaresult1 2. Else 3 2. $consultaresult1 9
3. do 7. 3. Do 3
4. Echo 8. 4. Echo 6 5. {} 9. 5. {} 9
6. Include() 10. 6. Include() 1
7. $link 7. $link 4
8. printf 8. Printf 6
9. mysql_query 9. mysql_query 3
10. mysql_fetch_array 10. mysql_fetch_array
6
11. $myrow 11. $myrow 11
12. = 12. = 10
13. <?php. 13. <?php. 3
14. ?> 14. ?> 3
14 2 71 10 Total líneas código 41
10. CONVERTIR USUARIO EN PREMIUM (REALIZAR PAGO)
n1 n2 N1 N2 1. session_start (); 1. conectarse () 1. session_start (); 1 1. conectarse () 1
2. $_SESSION 2. $empresaresult 2. $_SESSION 1 2. $empresaresult 3
3. If 3. If 1
4. 4. Else 1
5. 5. Do 1
6. Echo 6. Echo 3
7. Exit() 7. Exit() 1
8. {} 8. {} 4
9. Include() 9. Include() 1
10. $link 10. $link 2
11. Printf 11. Printf 1
12. mysql_query 12. mysql_query 1
13. While 13. While 1
14. mysql_fetch_array 14. mysql_fetch_array 2
15. $row 15. $myrow 4
16. = 16. = 5
17. != 17. != 1
18. <?php. 18. <?php. 2
19. ?> 19. ?> 2
19 2 35 4 Total líneas código 22
n1 n2 N1 N2 1. session_start (); 1. conectarse () 1. session_start (); 1 1. conectarse () 1
2. $_SESSION 2. $soli 2. $_SESSION 1 2. $soli 1
3. If 3. $result 3. If 1 3. $result 1
4. Echo 4. 4. Echo 1 4.
5. Exit() 5. 5. Exit() 1 5.
6. {} 6. 6. {} 1 6.
7. Include() 7. 7. Include() 1 7.
8. $link 8. 8. $link 2 8.
11. MODIFICAR USUARIO (MODOSOL)
Total líneas código 14
12. CER CURRICULUM (SUBIRCV)
Total líneas código 14
13. SUBE CURRICULUM A LA BD (INSERTARCUR)
n1 n2 N1 N2 1. session_start
(); 1. conectarse
() 1. session_start (); 1 1. conectarse () 1
2. $_SESSION 2. $binario_nombre_temp
oral
2. $_SESSION 2 2. $binario_nombre_temporal
3
3. If 3. $binario_contenido
3. If 2 3. $binario_contenido
1
9. mysql_query 9. 9. mysql_query 1 9.
10. != 10. 10. != 1 10.
11. <?php. 11. 11. <?php. 2 11.
12. ?> 12. 12. ?> 2 12.
12 3 15 3
n1 n2 N1 N2 1. session_start (); 1. session_start (); 1
2. $_SESSION 2. $_SESSION 1
3. If 3. If 2
4. Echo 4. Echo 2
5. Exit() 5. Exit() 1
6. {} 6. {} 2
7. Include() 7. Isset 1
8. $link 8. $_GET 1
9. != 9. != 1
10. <?php. 10. <?php. 2
11. ?> 11. ?> 2
11 0 11 0
4. Echo 4. binario_nombre
4. Echo 2 4. binario_nombre 1
5. Exit() 5. $binario_peso
5. Exit() 2 5. $binario_peso 1
6. {} 6. $binario_tipo 6. {} 2 6. $binario_tipo 1
7. Include() 7. $id_sol 7. Include() 1 7. $id_sol 2
8. addslashes(fread(fopen(file
size)))
8. $consulta_insertar
8. addslashes(fread(fopen(filesize)))
1 8. $consulta_insertar 2
9. Empty 9. $binario_nombre_tempo
ral
9. Empty 1 9. $binario_nombre_temporal
3
10. $_FILES 10. $_FILES 5
11. header 11. header 2
12. $link 12. $link 2
13. mysql_query( 13. mysql_query( 1
14. Or die 14. Or die 1
15. = 15. = 9
16. != 16. != 1
17. <?php. 17. <?php. 2
18. ?> 18. ?> 2
19 9 39 15 Total líneas código 22
14. DEVUELVE EMPLEADOS MASCULINOS Y FEMENINOS (CONSULTARGENERO)
n1 n2 N1 N2 1. $_POST 1. conectarse
() 1. $_POST 1 1. conectarse () 1
2. While 2. $cgenero 2. While 1 2. $cgenero 1
3. printf 3. $result 3. printf 1 3. $result 3
4. mysql_free_result 4. mysql_free_result 1 5. {} 5. {} 1
6. mysql_close 6. mysql_close 1
7. $link 7. $link 2
8. mysql_query 8. mysql_query 1
9 3 9 5
Total líneas código 13
15. DEVUELVE EDAD DE EMPLEADOS (CONSULEDAD)
n1 n2 N1 N2 1. Include 1. Conectarse() Include 1 Conectarse() 1
2. Printf 2. $inicio Printf 1 $inicio 1
3. $_POST 3. $fin $_POST 2 $fin 1
16. DEVUELVE EDAD DE EMPLEADOS SOLO PROFESION (CONSULTPROFESION)
17. USUARIOS PAGADOS A GRATUITOS (CONSULTIPO)
4. $link 4. $result $link 2 $result 3
5. mysql_query(); mysql_query(); 1
6. mysql_fetch_array() mysql_fetch_array() 1
7. While While 1
8. = = 5
9. {} {} 1
10. Row Row 3
11. mysql_free_result mysql_free_result 1
12. mysql_close mysql_close 1
13. $link $link 2
14. <?php. <?php. 2
15. ?> ?> 2
15 4 26 6 Total líneas código 14
n1 n2 N1 N2 1. Include 1. Conectarse() Include 1 Conectarse() 1
2. Printf 2. $profesion Printf 1 $profesion 1
3. $_POST 3. $result $_POST 1 $result 3
4. $link $link 2
5. mysql_query(); mysql_query(); 1
6. mysql_fetch_array() mysql_fetch_array() 1
7. While While 1
8. = = 4
9. {} {} 1
10. Row Row 3
11. mysql_free_result mysql_free_result 1
12. mysql_close mysql_close 1
13. $link $link 2
14. <?php. <?php. 2
15. ?> ?> 2
15 3 24 5 Total líneas código 13
n1 n2 N1 N2 1. Include 1. Conectarse() Include 1 Conectarse() 1
2. Printf 2. $tipo Printf 1 $tipo 1
3. $_POST 3. $result $_POST 1 $result 3
4. $link $link 2
5. mysql_query(); mysql_query(); 1
6. mysql_fetch_array() mysql_fetch_array() 1
18. CERRAR SESION (SALIR)
19. CERRAR SESION (SALIR)
7. While While 1
8. = = 3
9. {} {} 1
10. Row Row 3
11. mysql_free_result mysql_free_result 1
12. mysql_close mysql_close 1
13. $link $link 2
14. <?php. <?php. 2
15. ?> ?> 2
15 3 24 5 Total líneas código 13
n1 n2 N1 N2 1. session_start session_start 1
2. Header Header 2
3. session_unset session_unset 1
4. session_destroy session_destroy 1
5. Echo Echo 1
6. exit exit 1
7. <?php. <?php. 1
8. ?> ?> 1
8 9
Total líneas código 8
n1 n2 N1 N2 1. Fuction 1. $error_clave Fuction 1 $error_clave 7
2. If 2. $clave If 5 $clave 6
3. Strlen 3. 6 Strlen 2 6 1
4. Return false 4. 16 Return false 5 16 1
5. Return true 5. validar_clave Return true 1 validar_clave 1
6. !preg_match !preg_match 3
7. < < 1
8. > > 1
9. {} {} 6
10. <?php. <?php. 1
11. ?> ?> 1
11 5 27 17
Total líneas código 26
20. CREAR CONEXION (CONEXION)
21. COMPROVAR CORREO (COMPROBAR CORREO)
n1 n2 N1 N2 1. Include 1. Conectarse() Include 1 Conectarse() 1
2. Printf 2. $tipo Printf 1 $tipo 1
3. $_POST 3. $result $_POST 1 $result 3
4. $link $link 2
5. mysql_query(); mysql_query(); 1
6. mysql_fetch_array() mysql_fetch_array() 1
7. While While 1
8. = = 4
9. {} {} 1
10. Row Row 3
11. mysql_free_result mysql_free_result 1
12. mysql_close mysql_close 1
13. $link $link 2
14. <?php. <?php. 2
15. ?> ?> 2
15 3 24 5 Total líneas código 13
n1 n2 N1 N2 1. Fuction 1. comprobar_em
ail Fuction 1 comprobar_email 1
2. strrchr 2. $mail_correcto strrchr 1 $mail_correcto 3
3. substr_count 3. $result substr_count 2 $result 3
4. ! strstr 4. 1 ! strstr 6 1 12
5. substr 5. 0 substr 5 0 4
6. strlen 6. $term_dom strlen 7 $term_dom 5
7. = 7. $email = 5 $email 15
8. && 8. 6 && 10 6 1
9. != 9. $antes_dom != 4 $antes_dom 3
10. >= 10. $caracter_ult >= 2 $caracter_ult 3
11. < < 1
12. > > 1
13. == == 1
14. {} {} 6
15. - - 4
16. If If 6
17. Return Return 2
18. Else Else 1
TABLA PARA ESTABLECER METRICAS DEL CODIGO: A continuación se presentan las métricas en esta tabla en donde por medio de formulas se calculo el nivel del programa, longuitud, volumen, el esfuerzo y las líneas de código.
NO NOMBRE OBSERVACIONES n1 n2 N1 N2 N V NP e L COD
1 valusuarios.php validación de usuarios
19 4 38 14 88.71062276 148.8338042 0.030 4948.72
17
2 perfil.php muestra las empresas registradas
25 5 113 28 127.7060452 209.9004903 0.014 14693
53
3 solicitantes.php
busca solicitantes de empleos según algún cirterio
15 5 27 7 70.21299941 122.6733251 0.095 1288.07
16
4 formoferta.php inserta una oferta en el sistema
17 5 55 7 81.09650878 139.5144939 0.084 1660.22
36
5 modof.php actualizacion de oferta
27 3 18 3 133.1368501 211.7029839 0.074 2857.99
15
6 registrar.php registra una empresa 16 3 38 4 68.7548875 115.964417 0.094 1236.95 28
7 registrarempresa.php valida la insercion de la empresa
25 5 33 6 127.7060452 209.9004903 0.067 3148.51
28
8 perfilsol.php
Muestra los usuarios registrados por el usuario
11 5 15 3 49.66338828 90.1457726 0.303 297.481
41
9 consulta.php
consulta empleos dependiendo de un criterio
14 2 71 10 55.30296891 92.62856044 0.029 3242
41
10 realizar pago.php convierte al usuario en premum
19 2 35 4 82.71062276 133.7700152 0.053 2541.63
22
11 modosol.php modifica el usuario 12 3 15 3 47.77443751 83.67250473 0.167 502.035 22
12 subircv.php vista de subir curriculum
11 1E-07 11 1E-07 38.05374548 57.74963262 0.182 317.623
22
13 insertarcur.php sube curriculum a la BD
19 9 39 15 109.2399478 189.5979881 0.063 3001.97
25
14 consultagenero.php
devuelve empleados masculinos o femeninos
9 3 9 5 33.28421252 60.68119356 0.133 455.109
13
15 consuledad.php devuelve empleados solo edad
15 4 26 6 66.60335893 115.0929376 0.089 1294.8
14
16 consultprofesion.php devuelve empleados solo profesion
15 3 24 5 63.35824644 107.738289 0.080 1346.73
13
17 consultipo.php usuarios pagados a gratuitos
15 3 24 5 63.35824644 107.738289 0.080 1346.73
13
18 salir.php cerrar sesion 8 1E-07 9
1E-07 23.99999767 36.67969935 0.250 146.719
8
19. <?php. <?php. 1
20. ?> ?> 1
21 10 77 50 Total líneas código 28
19 valcontra.php validacion de la contraseña
11 5 27 17 49.66338828 90.1457726 0.053 1685.73
26
20 Conexión conexión a base de datos
15 3 24 5 63.35824644 107.738289 0.080 1346.73
13
21 comprobarcorrreo comprovar correos que sean valido
21 10 77 50 125.4579468 216.1028615 0.019 11345.4
28
RESULTADO FINAL
PARA EL MANTENIMIENTO
MODULOS DE VERSION ACTUAL
MODULOS CAMBIADOS
MODULOS AÑADIDOS MODULOS ELIMINADOS
21 4 2 6
MODOF SUBIRCV
MODOSOL INSERTARCUR
FORMOFERTA
CONSULTAEDAD
DOMINIOS DEL PROCESO Y EL PROYECTO
PROYECTO LINEAS DE CODIGO
ESFUERZO INVERSION Q PAGINAS DE DOC
ERRORES DEFECTOS PERSONAL
Sistema Empleo Seguro S.A. 494 588704 25,660 278 50 50 5
DEFECTOS POR LINEAS DE CODIGO = 50/494 *100 10.12
ERRORES POR LINEAS DE CODIGO= 50/494 * 100 10.12
INVERSION POR LINEAS DE CODIGO = 25660/494 51.94
PERSONAL POR LINEAS DE CODIGO = 494/5 98.80
Longuitud Volumen Nivel de programa Esfuerzo Total líneas de código
1569.1527 2647.9718 2.039 58704 494