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
03/06/2011
1.0
Versi贸n general sistema.
Autor de
m茅tricas
del
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
ENTRADAS EXTERNAS (EE) SALIDAS EXTERNAS (SE) CONSULTAS EXTERNAS (CE) NUMERO DE ARCHIVOS LOGICOS INTERNOS (ALI) NUMERO DE ARCHIVOS DE INTERFAZ EXTERNOS (AIE)
CONTEO 9
SIMPLE 3
PROMEDIO 4
COMPLEJO 6
TOTAL 36
7 1 3
4 3 7
5 4 10
7 10 15
28 4 30
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?
67-
891011121314-
3 ¿El sistema requiere entrada de datos en línea? 5 ¿La entrada de datos en línea requiere que la transacción de entrada se construya en varias pantallas u operaciones? 4 ¿Los ALI se ejecutan en línea? 5 ¿Las entradas, las salidas, los archivos o las consultas son complejos? 2 ¿Es complejo el procesamiento interno? 3 ¿El código utilizado será reutilizable? 3 ¿Se incluye la conversión e instalación el diseño? 5 ¿Está diseñado el sistema para instalaciones múltiples en diferentes organizaciones? 0 ¿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. 4. 5. 6. 7. 8. 9.
Tendrá acceso a pago en línea por medio de banca virtual. Realizara búsquedas de empleos. Realizara búsquedas de solicitantes. Realizara búsquedas de empresas. Ordenara los datos de empleos como hayan sido ingresados. Ordenara los datos de empresas como hayan sido ingresados. 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テ前 DE MORFOLOGIA Contactos #id_contacto: Integer +nombre_cont: String +direccion_cont: String +Puesto: String recibo +id_recibo: Integer +monto: Integer +fecha: Date
* 1
1
ofertas +id_oferta: Integer +fecha_inicial: Date +fecha_final: Date +edad: Integer +genero: String +id_depto: Integer +observacion: String +estado: String
empresa +id_em: Integer +nombre_em: String +id_dep: Integer +direccion_em: String +obdervaciones: String
cv +id_cv: Integer +archivo_nombre: String +archivo_peso: String +archivo_tipo: String +archivo: String
*
* 1
1 1
1
departamentos
1 *
1
1
+id_depto: Integer +nombre_dep: String
Contratacion
1
+id_oferta: Integer +id_em: Integer +id_contra: Integer
solicitante
1
profesion +id_prof: Integer +nombre_prof: String
1
1 1
* Telefonos +numero: Integer
*
TAMAテ前 DEL PROYECTO NODOS = 10 ARISTAS = 11 TAMAテ前 = N + A
+id_sol: Integer +nombre_sol: String +direcciテウn_sol: String +id_dep: Integer +tipo_sol: String +edad: Integer +observaciones_sol: String +estado: String
1 1
TAMAテ前 = 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 1) session_start (); 2) Header 3) Include 4) $variable 5) =
n2 1) $nombre 2) $contra 3) 0 4) Conectarse()
N1 1. session_start (); 2. Header 3. Include 4. $variable 5. =
1 1 1 8 8
6. $_POST 7. $link
2 2
8. mysql_query();
1
6) $_POST 7) $link
8) mysql_query(); 9)
mysql_num_rows(); 10) If 11) <= 12) {} 13) Echo 14) Exit (); 15) $numfields
N2
9.
mysql_num_rows(); 10. If 11. <= 12. {} 13. Echo 14. Exit (); 15. $numfields
1 1 1 1 1 1 2
16) $link
16. $link
2
17) $_SESSION
17. $_SESSION
2
18) <?php.
18. <?php.
1
19) ?>
19. ?>
1
19
4
38
1) $nombre 2) $contra 3) 0 4) Conectarse()
14
6 6 1 1
Total líneas código
36
2. INFORME DE EMPRESAS REGISTRADAS (PERFIL)
n1
n2
1) session_start (); 2) $_SESSION 3) If 4) Echo 5) Exit()
1. conectarse () 2. $nombre 3. $resultado 4. 0 5. $empresa
6) {}
7) Include() 8) $link 9) $user 10) $result 11) $numfield 12) $_SESSION 13) $numfields 14) Printf 15) mysql_close 16) mysql_query 17) While 18) mysql_free_result 19) mysql_fetch_array 20) $row 21) = 22) != 23) <= 24) <?php. 25) ?>
25
5
Total líneas código
N1
N2
1) session_start (); 2) $_SESSION 3) If 4) Echo 5) Exit()
1 2 2 3 2
6) {}
3
7) Include()
1
8) $link 9) $user 10) $result 11) $numfield 12) $_SESSION 13) $numfields 14) printf 15) mysql_close 16) mysql_query 17) While 18) mysql_free_result 19) mysql_fetch_array 20) $row 21) = 22) != 23) <= 24) <?php. 25) ?>
10 1 12 2 4 3 4 3 4 2 2 3 7 28 1 1 6 6
113
conectarse () $nombre $resultado 0 $empresa
3 3 6 5 11
28
15 3. INFORME SOLICITANTES DE EMPLEO (SOLICITANTES)
n1
n2
1. session_start (); 2. If 3. Else 4. Echo 5.
{}
7. Include() 9. $link 11. Printf 13. mysql_query
1. conectarse () 2. $resultado 3. $consultaresult1 4. 0 6. $consultaresult1 8. 10. 12. 14.
N1 1. session_start (); 2. If 3. Else 4. Echo 5.
{}
N2 1 1 2 3
6. Include()
1
7. $link 8. printf 9. mysql_query
2 1 1
1. conectarse () 2. $consultaresult1 3. $consultaresult1
1 3 3
15. while 17. mysql_fetch_array 19. $myrow 21. = 23. <?php. 25. ?>
16. 18. 20. 22. 24. 26.
15
10. While 11. mysql_fetch_array 12. $myrow 13. = 14. <?php. 15. ?>
5
Total líneas código
1 2 4 6 1 1
27
7
16
4. INSERTA UNA OFERTA EN EL SISTEMA (FORMOFERTA)
n1
n2
1. session_start (); 2. $_SESSION 3. If 4. Else 5. Echo 6. Exit() 7.
{}
8. Include() 9. $link 10. Printf 11. mysql_query 12. While 13. mysql_fetch_array 14. $myrow 15. = 16. != 17. <?php. 18. ?>
1. conectarse () 2. $nombre 3. $empresaresult 4. 0 5. $empresa 6.
17 Total líneas código
5
N1 1. session_start (); 2. $_SESSION 3. If 4. else 5. Echo 6. Exit() 7.
{}
N2 1 1 3 2 5 1 6
8. Include()
1
9. $link 10. printf 11. mysql_query 12. While 13. mysql_fetch_array 14. $myrow 15. = 16. != 17. <?php. 18. ?>
3 2 2 2 4 8 7 1 3 3
55
1. conectarse () 2. $empresaresult
1 6
7
36
5. INSERTA UNA OFERTA EN EL SISTEMA (MODOF)
n1 1. session_start (); 3. $_SESSION 5. If 7. Echo 9. Exit() 11. {}
13. Include()
n2 1. conectarse () 2. $oferta 3. $estado 4. 6.
N1
N2
2. session_start (); 4. $_SESSION 6. If 8. Echo 10. Exit()
1 1 1 1 1
12. {}
1
14. Include()
1
1. conectarse () 2. $oferta 3. $estado 5.
1 1 1
15. $link 17. $_POST 19. $result 21. mysql_query 23. != 25. <?php. 27. ?>
27
16. $link 18. $_POST 20. $result 22. mysql_query 24. != 26. <?php. 28. ?>
3
Total líneas código
2 2 1 1 1 2 2
18
3
15
6. REGISTRAR UNA EMPRESA (REGISTRAR)
n1
n2
1. session_start (); 2. $_SESSION 3. If 4. 5. Echo 6. Exit() 7.
1. conectarse () 2. $nombre 3. $dirección
{}
8. Include() 9. $link 10. $user 11. $_SESSION 12. mysql_query 13. = 14. !=
15. <?php. 16. ?>
16
3
Total líneas código
N1 1. session_start (); 2. $_SESSION 3. If 4. else 5. Echo 6. Exit()
N2 1 3 3 1 4 1
1. conectarse () 2. $nombre 3. $dirección
8. Include()
1
9. $link 10. $user 11. $_POST 12. mysql_query 13. = 14. !=
3 1 4 2 7 1
15. <?php.
2 2
7.
{}
16. ?>
3
38
1 2 1
4
28
7. VALIDAR LA INSERCION DE LA EMPRESA (REGISTRAREMPRESA)
n1
n2
1. session_start (); 2. $_SESSION 3. If 4. Echo 5. Exit() 6.
{}
7. Include() 8. $link 9. $user
1. conectarse () 2. $nombre 3. $Departmento 4. $Dirección 5. $Observaciones
N1 1. session_start (); 2. $_SESSION 3. If 4. Echo 5. Exit() 6.
{}
N2 1 3 3 4 1 3
7. Include()
1
8. $link 9. $user
3 1
1. conectarse () 2. $nombre 3. $Departmento 4. $Dirección 5. $Observaciones
1 2 1 1 1
10. mysql_query 11. = 12. != 13. <?php. 14. ?>
25
10. mysql_query 11. = 12. != 13. <?php. 14. ?>
5
Total líneas código
1 7 1 2 2
33
6
28
8. MUESTRA USUARIOS REGISTRADOS POR EL USUARIO (PERFILSOL)
n1
n2
1. session_start (); 2. $_SESSION 3. If 4. Echo 5. Exit() 6.
N1
1. conectarse () 2. $resultado 3. 0 4. $soli 5. $solist
{}
7. Include() 8. $link 9. mysql_query
10. <?php. 11. ?>
11
1 2 1 1 1
1. conectarse () 2. $result 3.
7. Include()
1
8. $link 9. mysql_query
2 1
10. <?php.
2 2
{}
1
11. ?>
5
Total líneas código
1. session_start (); 2. $_SESSION 3. If 4. Echo 5. Exit() 6.
N2
15
$soli
1 1 1
3
14
9. CONSULTA DE EMPLEOS (CONSULTA)
n1
n2
1. If 2. Else 3. do 4. Echo 5.
{}
6. Include() 7. $link 8. printf 9. mysql_query 10. mysql_fetch_array 11. $myrow 12. = 13. <?php. 14. ?>
1. conectarse () 2. $consultaresult1 7. 8. 9. 10.
N1
N2
1. If 2. Else 3. Do 4. Echo
3 3 3 6
1. conectarse () 2. $consultaresult1
6. Include()
1
7. $link 8. Printf 9. mysql_query 10. mysql_fetch_ar ray 11. $myrow 12. = 13. <?php. 14. ?>
4 6 3 6
11 10 3 3
5.
{}
9
1 9
14
2
Total líneas código
71
10
41
10. CONVERTIR USUARIO EN PREMIUM (REALIZAR PAGO)
n1
n2
1. session_start (); 2. $_SESSION 3. If 4. 5. 6. Echo 7. Exit() 8.
{}
9. Include() 10. $link 11. Printf 12. mysql_query 13. While 14. mysql_fetch_array 15. $row 16. = 17. != 18. <?php. 19. ?>
1. conectarse () 2. $empresaresult
19
n1
{}
7. Include() $link
{}
N2 1 1 1 1 1 3 1 4
9. Include()
1
10. $link 11. Printf 12. mysql_query 13. While 14. mysql_fetch_array 15. $myrow 16. = 17. != 18. <?php. 19. ?>
2 1 1 1 2 4 5 1 2 2
1. conectarse () 2. $empresaresult
1 3
35
4
N1
N2
22
n2
1. session_start (); 2. $_SESSION 3. If 4. Echo 5. Exit()
8.
8.
2
Total líneas código
6.
N1 1. session_start (); 2. $_SESSION 3. If 4. Else 5. Do 6. Echo 7. Exit()
1. conectarse () 2. $soli 3. $result 4. 5. 6. 7. 8.
1. session_start (); 2. $_SESSION 3. If 4. Echo 5. Exit() 6.
{}
7. Include() 8.
$link
1 1 1 1 1 1
1 2
1. conectarse () 2. $soli 3. $result 4. 5. 6. 7. 8.
1 1 1
9.
mysql_query 10. != 11. <?php. 12. ?>
12
9. 10. 11. 12.
9.
mysql_query 10. != 11. <?php. 12. ?>
3
1 1 2 2
15
9. 10. 11. 12.
3
11. MODIFICAR USUARIO (MODOSOL)
Total l铆neas c贸digo
14
12. CER CURRICULUM (SUBIRCV)
n1
n2
1. session_start (); 2. $_SESSION 3. If 4. Echo 5. Exit() 6.
N1 1. session_start (); 2. $_SESSION 3. If 4. Echo 5. Exit()
{}
6.
7. Include() 8. $link 9. != 10. <?php. 11. ?>
11
1 1 2 2 1 2
7. Isset
1
8.
1 1 2 2
$_GET 9. != 10. <?php. 11. ?>
0 Total l铆neas c贸digo
{}
N2
11
0
14
13. SUBE CURRICULUM A LA BD (INSERTARCUR)
n1 1. session_start (); 2. $_SESSION
3. If
n2 1. conectarse () 2. $binario_no mbre_temp oral 3. $binario_co ntenido
N1
N2
1. session_start ();
1
1. conectarse ()
1
2. $_SESSION
2
2. $binario_nombre_ temporal
3
3. If
2
3. $binario_contenid o
1
4. Echo
4. binario_no mbre
4. Echo
2
5. Exit()
5.
5. Exit()
2
5.
2
6.
6.
{}
7. Include() 8. addslashes(fr ead(fopen(file size))) 9.
Empty
$binario_pes o 6. $binario_tipo 7. $id_sol 8. $consulta_ins ertar 9.
$binario_no mbre_tempo ral
10. $_FILES 11. header 12. $link 13. mysql_query( 14. Or die 15. = 16. != 17. <?php. 18. ?>
19
6.
9.
Empty
10. $_FILES 11. header 12. $link 13. mysql_query( 14. Or die 15. = 16. != 17. <?php. 18. ?>
9
Total l铆neas c贸digo
{}
7. Include() 8. addslashes(fread( fopen(filesize)))
1 1
1
4. binario_nombre
8.
9.
1
$binario_peso
1
$binario_tipo 7. $id_sol $consulta_insertar
1 2 2
$binario_nombre_te mporal
3
5 2 2 1 1 9 1 2 2
39
15
22
14. DEVUELVE EMPLEADOS MASCULINOS Y FEMENINOS (CONSULTARGENERO)
n1
n2
1. $_POST 2. While 3. printf 4. mysql_free_result 5.
N1
1. conectarse () 2. $cgenero 3. $result
7. 8.
1. $_POST
1
1. conectarse ()
1
2. While 3. printf 4. mysql_free_result
1 1 1 1
2. $cgenero 3. $result
1 3
{}
5.
6. mysql_close $link
Total l铆neas c贸digo
{}
6. mysql_close 7.
mysql_query
9
N2
8.
3
1
$link
2
mysql_query
1
9
5
13 15. DEVUELVE EDAD DE EMPLEADOS (CONSULEDAD)
n1 1. Include 2. Printf 3. $_POST
n2 1. Conectarse() 2. $inicio 3. $fin
N1 Include Printf $_POST
N2 1 Conectarse() 1 $inicio 2 $fin
1 1 1
4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
$link mysql_query(); mysql_fetch_array() While = {} Row mysql_free_result mysql_close $link <?php. ?>
15 Total l铆neas c贸digo
4. $result
4
$link mysql_query(); mysql_fetch_array() While = {} Row mysql_free_result mysql_close $link <?php. ?>
2 $result 1 1 1 5 1 3 1 1 2 2 2
26
3
6
14 16. DEVUELVE EDAD DE EMPLEADOS SOLO PROFESION (CONSULTPROFESION)
n1 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Include Printf $_POST $link mysql_query(); mysql_fetch_array() While = {} Row mysql_free_result mysql_close $link <?php. ?>
15 Total l铆neas c贸digo
n2 1. Conectarse() 2. $profesion 3. $result
3
N1 Include Printf $_POST $link mysql_query(); mysql_fetch_array() While = {} Row mysql_free_result mysql_close $link <?php. ?>
N2 1 Conectarse() 1 $profesion 1 $result 2 1 1 1 4 1 3 1 1 2 2 2
24
1 1 3
5
13 17. USUARIOS PAGADOS A GRATUITOS (CONSULTIPO)
n1 1. 2. 3. 4. 5. 6.
Include Printf $_POST $link mysql_query(); mysql_fetch_array()
n2 1. Conectarse() 2. $tipo 3. $result
N1 Include Printf $_POST $link mysql_query(); mysql_fetch_array()
N2 1 Conectarse() 1 $tipo 1 $result 2 1 1
1 1 3
7. 8. 9. 10. 11. 12. 13. 14. 15.
While = {} Row mysql_free_result mysql_close $link <?php. ?>
While = {} Row mysql_free_result mysql_close $link <?php. ?>
15
3
Total líneas código
1 3 1 3 1 1 2 2 2
24
5
13 18. CERRAR SESION (SALIR)
n1 1. 2. 3. 4. 5. 6. 7. 8.
n2
N1
session_start Header session_unset session_destroy Echo exit <?php. ?>
session_start Header session_unset session_destroy Echo exit <?php. ?>
8
N2 1 2 1 1 1 1 1 1
9
Total líneas código
8 19. CERRAR SESION (SALIR)
n1 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Fuction If Strlen Return false Return true !preg_match < > {} <?php. ?>
11 Total líneas código
n2 1. 2. 3. 4. 5.
$error_clave $clave 6 16 validar_clave
5 26
N1 Fuction If Strlen Return false Return true !preg_match < > {} <?php. ?>
N2 1 5 2 5 1 3 1 1 6 1 1
27
$error_clave $clave 6 16 validar_clave
7 6 1 1 1
17
20. CREAR CONEXION (CONEXION)
n1 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Include Printf $_POST $link mysql_query(); mysql_fetch_array() While = {} Row mysql_free_result mysql_close $link <?php. ?>
15 Total l铆neas c贸digo
n2 1. Conectarse() 2. $tipo 3. $result
N1
N2
Include Printf $_POST $link mysql_query(); mysql_fetch_array() While = {} Row mysql_free_result mysql_close $link <?php. ?>
3
1 Conectarse() 1 $tipo 1 $result 2 1 1 1 4 1 3 1 1 2 2 2
24
1 1 3
5
13
21. COMPROVAR CORREO (COMPROBAR CORREO)
n1 1. Fuction 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
strrchr substr_count ! strstr substr strlen = && != >= < > == {} If Return Else
n2 1. comprobar_em ail 2. $mail_correcto 3. $result 4. 1 5. 0 6. $term_dom 7. $email 8. 6 9. $antes_dom 10. $caracter_ult
N1
N2
Fuction
1
comprobar_email
1
strrchr substr_count ! strstr substr strlen = && != >= < > == {} If Return Else
1 2 6 5 7 5 10 4 2 1 1 1 6 4 6 2 1
$mail_correcto $result 1 0 $term_dom $email 6 $antes_dom $caracter_ult
3 3 12 4 5 15 1 3 3
19. <?php. 20. ?>
<?php. ?>
21
1 1
10
Total líneas código
77
50
28
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 1 valusuarios.php 2 perfil.php
3 solicitantes.php
OBSERVACIONES validación de usuarios muestra las empresas registradas busca solicitantes de empleos según algún cirterio inserta una oferta en el sistema actualizacion de oferta
n1
n2
N1
N2
19
4
38
14
25
5
113
28
15
5
27
7
5
55
7
27
3
18
3
registra una empresa valida la insercion de 7 registrarempresa.php la empresa Muestra los usuarios registrados por el 8 perfilsol.php usuario consulta empleos dependiendo de un 9 consulta.php criterio convierte al usuario 10 realizar pago.php en premum
16
3
38
4
25
5
33
6
11
5
15
3
19
2
35
4
11 modosol.php
12
3
15
11
1E-07
11
3 1E07
19
9
39
15
9
3
9
5
5 modof.php 6 registrar.php
modifica el usuario vista de subir 12 subircv.php curriculum sube curriculum a la 13 insertarcur.php BD devuelve empleados masculinos o 14 consultagenero.php femeninos devuelve empleados 15 consuledad.php solo edad devuelve empleados 16 consultprofesion.php solo profesion usuarios pagados a 17 consultipo.php gratuitos 18 salir.php
cerrar sesion
V
NP
e
88.71062276 148.8338042 0.030 4948.72 127.7060452 209.9004903 0.014
14693
L COD 17 53 16
70.21299941 122.6733251 0.095 1288.07 17
4 formoferta.php
N
81.09650878 139.5144939 0.084 1660.22 133.1368501 211.7029839 0.074 2857.99 68.7548875
127.7060452 209.9004903 0.067 3148.51
2
71
15 28 28 41
49.66338828 14
115.964417 0.094 1236.95
36
90.1457726 0.303 297.481
41
10 55.30296891 92.62856044 0.029
3242
82.71062276 133.7700152 0.053 2541.63 47.77443751 83.67250473 0.167 502.035 38.05374548 57.74963262 0.182 317.623 109.2399478 189.5979881 0.063 3001.97
22 22 22 25 13
33.28421252 60.68119356 0.133 455.109 15
4
26
6
15
3
24
5
15
3
24
5
8
1E-07
9
1E07
66.60335893 115.0929376 0.089
1294.8
63.35824644
107.738289 0.080 1346.73
63.35824644
107.738289 0.080 1346.73
23.99999767 36.67969935 0.250 146.719
14 13 13 8
19 valcontra.php 20 Conexión 21 comprobarcorrreo
validacion de la contraseña conexión a base de datos comprovar correos que sean valido
11
5
27
17
15
3
24
5
21
10
77
50
49.66338828
90.1457726 0.053 1685.73
63.35824644
107.738289 0.080 1346.73
125.4579468 216.1028615 0.019 11345.4
RESULTADO FINAL Longuitud
Volumen
Nivel de programa Esfuerzo Total líneas de código
1569.1527 2647.9718
2.039
58704
494
PARA EL MANTENIMIENTO MODULOS DE VERSION ACTUAL 21
MODULOS CAMBIADOS 4 MODOF MODOSOL FORMOFERTA CONSULTAEDAD
MODULOS AÑADIDOS 2 SUBIRCV INSERTARCUR
MODULOS ELIMINADOS 6
DOMINIOS DEL PROCESO Y EL PROYECTO PROYECTO
LINEAS DE CODIGO
ESFUERZO
INVERSION Q
Sistema Empleo Seguro S.A.
494
588704
25,660
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
PAGINAS DE DOC
278
ERRORES
DEFECTOS
50
50
PERSONAL
5
26 13 28