Sei sulla pagina 1di 176

UNIVERSIDAD “JOSÉ CARLOS MARIÁTEGUI”

FACULTAD DE INGENIERÍA”

CARRERA PROFESIONAL DE INGENIERÍA DE SISTEMAS E


INFORMÁTICA

“DESARROLLO DE UN SISTEMA WEB DE CONTROL DOCUMENTARIO PARA


MEJORAR LA GESTIÓN ADMINISTRATIVA DE LA OFICINA DE SERVICIOS
ACADÉMICOS, EVALUACIÓN Y REGISTRO CENTRAL DE LA UNIVERSIDAD
JOSÉ CARLOS MARIÁTEGUI”

Trabajo Informe presentado por:

BACHILLER BEYKER ALBERT GUTIERREZ QUISPE

Moquegua, Enero del 2013


DEDICATORIA:
A Dios:

Con todo lo que soy y he logrado ser,


te dedico este trabajo, tú que estas
presente en cualquier lugar, en
cualquier momento, circunstancia y
hasta donde permitas que sea yo.

A mis Padres:

Dedico el presente trabajo a mis


padres que me vieron nacer y que su
enseñanza y sus buenas costumbres
han creado en mi sabiduría haciendo
que hoy tenga el conocimiento de lo
que soy.

i
RESUMEN

En el presente informe de prácticas se describe y especifica las diversas actividades


realizadas como practicante en la Oficina de Servicios Académicos, Evaluación y
Registro Central (OSAERC) de la Universidad José Carlos Mariátegui.

Se realizó un estudio de las actividades y procesos referente a la gestión


administrativa de documentos recibidos y emitidos por dicha oficina; no contando en
la actualidad con un Sistema Web de Control Documentario.

El proyecto en mención describe la situación actual y la problemática de la gestión


de documentos en la oficina de OSAERC, así como también el Planteamiento y
Sistematización de los Procesos a través del desarrollo de un Sistema Web de
Control Documentario, a través de la aplicación del enfoque del análisis y diseño
Orientado a Objetos, con el fin de dar solución a dicha problemática.

Por último se presentan los resultados y conclusiones obtenidas del proyecto


planteado obteniendo resultados exitosos los cuales ayudarán a mejorar la gestión
administrativa de la oficina.

INTRODUCCIÓN

ii
La elaboración de este informe de Prácticas Pre-profesionales, tiene el propósito de
demostrar y dar a conocer como también poner en práctica todos los conocimientos
adquiridos por el estudiante durante sus años previos de formación profesional. Y
de esta manera, el estudiante universitario se expone a ser evaluado por la
Institución, en su desenvolvimiento profesional.

Existen hoy en día instituciones que utilizan el campo virtual para el desarrollo de
sus actividades cotidianas tanto de enseñanza como en el plano administrativo. En
los países Latinoamericanos, es una preocupación ya que el surgimiento de las
nuevas tecnologías hace que puedan quedar desfasadas en este nuevo mundo tan
acelerado.

iii
ÍNDICE DE CONTENIDO
DEDICATORIA:........................................................................................................ I
RESUMEN............................................................................................................... II
INTRODUCCIÓN ..................................................................................................... II
CAPÍTULO I ............................................................................................................ 2
1 GENERALIDADES DE LA INSTITUCIÓN: .................................................. 2
1.1. NOMBRE O RAZÓN SOCIAL: .............................................................. 2
1.2. UBICACIÓN DE LA INSTITUCIÓN: ...................................................... 2
1.3. ACTIVIDADES DE LA INSTITUCIÓN: .................................................. 2
1.4. RESEÑA HISTÓRICA: .......................................................................... 3
1.5. FINALIDAD: .......................................................................................... 5
1.6. VISIÓN: ................................................................................................. 5
1.7. MISIÓN: ................................................................................................ 5
1.8. ORGANIGRAMA ................................................................................... 6
1.9. LUGAR DE EJECUCIÓN DE LAS PRÁCTICAS PRE –
PROFESIONALES: ......................................................................................... 6
1.9.1. NOMBRE DEL ÁREA: .................................................................... 6
1.9.2. DESCRIPCIÓN DEL ÁREA DE TRABAJO: ................................... 6
1.9.3. OBJETIVOS OFICINA OSAERC PRE-GRADO: ............................ 7
1.10. ESTRUCTURA TEMÁTICA: .................................................................. 8
1.10.1. RESUMEN: .................................................................................... 8
1.10.2. DESCRIPCIÓN DEL PROBLEMA: ................................................. 8
1.11. OBJETIVOS DE LAS PRÁCTICAS PRE- PROFESIONALES: .............. 9
1.11.1. JUSTIFICACIÓN: ........................................................................... 9
1.11.2. OBJETIVO GENERAL: .................................................................. 9
1.11.3. OBJETIVOS ESPECÍFICOS: ........................................................10
CAPÍTULO II ......................................................................................................... 12
2 FUNDAMENTO TEÓRICO: ........................................................................12
2.1. PHP: ....................................................................................................12
2.2. SISTEMA: ............................................................................................13
2.3. MySQL: ................................................................................................14
2.4. DBDesigner (Diseñador de una Base de Datos): .................................15
2.5. RATIONAL ROSE: ...............................................................................16
2.6. UML: ....................................................................................................17
Diagrama de casos de uso: .......................................................18
Caso de uso: ...........................................................................18
Actor: ......................................................................................19
Descripción de casos de uso: .................................................20
Diagrama de Clases: .................................................................20
Clase: .....................................................................................20
Diagramas de Colaboración: .....................................................21
Diagrama de Estado: .................................................................21
Diagrama de Actividad:..............................................................22
Diagramas de Componentes: ....................................................23
Diagramas de Implementación: .................................................23
2.7. SGBD:..................................................................................................24
2.8. MODELO OOHDM o Método de Diseño de Hipermedia Orientado ......24
2.8.1. MODELO CONCEPTUAL: ............................................................27
2.8.2. DISEÑO NAVEGACIONAL:10 ........................................................27
2.8.3. DISEÑO DE INTERFAZ ABSTRACTA:11 ......................................29
2.8.4. IMPLEMENTACIÓN: .....................................................................29
2.9. ANÁLISIS ORIENTADA A OBJETOS: .................................................30
CAPÍTULO III ........................................................................................................ 32
3 MATERIAL Y MÉTODO UTILIZADO EN LAS PRÁCTICAS
PREPROFESIONALES: ....................................................................................32
3.1. MATERIALES: .....................................................................................32
3.1.1. RECURSOS HUMANOS:..............................................................32
3.1.2. RECURSOS DE HARDWARE ......................................................32
3.1.3. RECURSOS DE SOFTWARE: ......................................................33
3.2. METODOLOGÍA: .................................................................................33
3.3. ANÁLISIS DEL SISTEMA: ...................................................................34
3.3.1. IDENTIFICACIÓN DEL PROYECTO: ...........................................34
3.3.2. DESARROLLO DEL SISTEMA SISCOD:......................................34
3.3.2.1. DIAGRAMA GENERAL DEL SISTEMA .....................................34
3.3.2.2. DIAGRAMA DE CASO DE USO: ...............................................35
3.3.2.2.1. DESCRIPCIÓN DE ACTORES:............................................38
3.3.2.2.2. DESCRIPCIÓN DEL SISTEMA: ...........................................40
3.3.2.2.3. ESPECIFICACIÓN DE CASOS DE USO DE NEGOCIO: .....41
3.3.2.3. DIAGRAMA DE ITERACIÓN: ....................................................61
A. CASO DE USO: BUSCAR USUARIO: .....................................................61
B. CASO DE USO: REGISTRAR USUARIO: ...............................................61
C. CASO DE USO: MODIFICAR USUARIO: ................................................62
D. CASO DE USO: ELIMINAR USUARIO: ...................................................64
E. CASO DE USO: BUSCAR DOCUMENTO: ..............................................65
F. CASO DE USO: MODIFICAR DOCUMENTO: .........................................66
G. CASO DE USO: ELIMINAR DOCUMENTO: ............................................67
H. CASO DE USO: BUSCAR DOCUMENTO ...............................................68
I. CASO DE USO: BUSCAR USUARIO: .....................................................69
J. CASO DE USO: REGISTRAR USUARIO: ...............................................70
K. CASO DE USO: MODIFICAR USUARIO: ................................................71
L. CASO DE USO: ELIMINAR USUARIO: ...................................................72
M. CASO DE USO: REGISTRAR DOCUMENTO: ....................................73
N. CASO DE USO: MODIFICAR DOCUMENTO: .........................................74
O. CASO DE USO: ELIMINAR DOCUMENTO: ............................................75
P. CASO DE USO: BUSCAR DOCUMENTO: ..............................................76
3.4. MODELO CONCEPTUAL: ...................................................................77
3.4.1. DIAGRAMA DE CLASES: .............................................................77
3.5. DISEÑO NAVEGACIONAL: .................................................................78
3.5.1. DIAGRAMA DE COMPONENTES: ...............................................78
A. ESTRUCTURA DEL SISTEMA: ...............................................................78
3.5.1.1. MENÚ DEL ADMINISTRADOR: ................................................79
3.5.1.2. MENÚ DEL USUARIO: ..............................................................80
3.5.2. DIAGRAMA DE DESPLIEGUE: ....................................................81
A. DISTRIBUCIÓN FÍSICA DEL SISTEMA: .................................................81
3.6. DISEÑO DE LA INTERFAZ ABSTRACTA:...........................................82
3.6.1. MODELO DE LA BASE DE DATOS: .............................................86
3.7. IMPLEMENTACIÓN: ............................................................................87
3.7.1. MIGRACIÓN DEL MODELO DE LA BASE DE DATOS EN
DBDESIGNER A MYSQL: ...........................................................................87
A. PROCESO DE EXPORTACION DEL DBDESIGNER: .............................87
B. PROCESO DE IMPORTACIÓN AL MYSQL: ...........................................90
3.7.2. CODIGO DE CONEXIÓN A LA BASE DE DATOS CON PHP: .....95
CAPÍTULO IV ........................................................................................................ 97
4 RESULTADOS DE LA PRÁCTICA REALIZADA: ......................................97
4.1. ADMINISTRADOR: ..............................................................................98
4.1.1. DOCUMENTO EMITIDO: ............................................................100
4.1.2. DOCUMENTO RECIBIDO: .........................................................105
4.1.3. ÁREA: .........................................................................................110
4.1.4. ESCUELA: ..................................................................................111
4.1.5. FACULTAD: ................................................................................112
4.1.6. PERSONA: .................................................................................113
4.1.7. AÑO: ...........................................................................................114
4.1.8. SEDE: .........................................................................................115
4.1.9. GRADO:......................................................................................116
4.1.10. USUARIO: ..................................................................................117
4.1.11. TIPO USUARIO: .........................................................................118
4.1.12. TIPO DOCUMENTO: ..................................................................119
4.1.13. TIPO REFERENCIA:...................................................................120
4.1.14. ESTADO DEL DOCUMENTO: ....................................................121
4.1.15. ORIGEN:.....................................................................................122
4.1.16. USUARIO: ..................................................................................123
............................................................................................................................ 124
CAPÍTULO V ....................................................................................................... 125
5 CONCLUSIONES Y SUGERENCIAS: ......................................................125
5.1. CONCLUSIONES: .............................................................................125
5.2. RECOMENDACIONES: .....................................................................126
............................................................................................................................ 127
CAPÍTULO VI ...................................................................................................... 128
6 BIBLIOGRAFIA: .......................................................................................128
............................................................................................................................ 131
CAPÍTULO VII ..................................................................................................... 132
7 ANEXOS:..................................................................................................132
7.1. CÓDIGO FUENTE: ............................................................................132
GLOSARIO ......................................................................................................... 161
ÍNDICE DE FIGURAS

CAPÍTULO I ............................................................................................................ 2
1 GENERALIDADES DE LA INSTITUCIÓN: ................................................... 2
Figura 1.1. Organigrama de la Universidad José Carlos Mariátegui ................. 6
CAPÍTULO II ......................................................................................................... 12
2 FUNDAMENTO TEÓRICO: ........................................................................ 12
Figura 2.1 Ejemplo de código PHP. ............................................................... 13
Figura 2.2 Diseño de una Base de Datos en DBDesigner. ............................. 16
Figura 2.3 Interfaz de Rational Rose. ............................................................. 17
Figura 2.4 Ejemplo UML Diagrama de Clases. .............................................. 24
CAPÍTULO III ........................................................................................................ 32
3 MATERIAL Y MÉTODO UTILIZADO EN LAS PRÁCTICAS
PREPROFESIONALES: .................................................................................... 32
Figura 3.1 Diagrama General del Sistema ..................................................... 34
Figura 3.3 Gestión de Documento Recibido y Emitido. .................................. 35
Figura 3.4 Búsqueda de Documento Recibido ............................................... 36
Figura 3.5 Búsqueda de Documento Emitido ................................................. 36
Figura 3.6 Gestión de Usuario. ...................................................................... 37
Figura 3.7 Validar usuario .............................................................................. 37
Figura 3.8 Diagrama de secuencia para el caso de uso Buscar usuario ........ 61
Figura 3.9 Diagrama de secuencia para el caso de uso Registrar usuario ..... 62
Figura 3.10 Diagrama de secuencia para el caso de uso Modificar usuario ... 63
Figura 3.11 Diagrama de secuencia para el caso de uso Eliminar usuario..... 64
Figura 3.12 Diagrama de secuencia para el caso de uso Registrar
Documento ..................................................................................................... 65
Figura 3.13 Diagrama de secuencia para el caso de uso Modificar
documento ...................................................................................................... 66
Figura 3.14 Diagrama de secuencia para el caso de uso Eliminar
documento ...................................................................................................... 67
Figura 3.15 Diagrama de secuencia para el caso de uso Buscar documento 68
Figura 3.16 Diagrama de colaboración para el caso de uso Buscar usuario .. 69
Figura 3.17 Diagrama de colaboración para el caso de uso Registrar
usuario............................................................................................................ 70
Figura 3.18 Diagrama de colaboración para el caso de uso Modificar
usuario............................................................................................................ 71
Figura 3.19 Diagrama de colaboración para el caso de uso Eliminar usuario 72
Figura 3.20 Diagrama de colaboración para el caso de uso Registrar
documento ...................................................................................................... 73
Figura 3.21 Diagrama de colaboración para el caso de uso Modificar
documento ...................................................................................................... 74
Figura 3.22 Diagrama de colaboración para el caso de uso Eliminar
documento ...................................................................................................... 75
Figura 3.23 Diagrama de colaboración para el caso de uso Buscar
Documento ..................................................................................................... 76
Figura 3.24 Diagrama de clases .................................................................... 77
Figura 3.25 Diagrama de componentes estructura del sistema ...................... 78
Figura 3.26 Diagrama de componentes menú del administrador ................... 79
Figura 3.27 Diagrama de componentes menú del usuario ............................. 80
Figura 3.28 Diagrama de despliegue distribución física del sistema .............. 81
Figura 3.29 Interfaz de Documento Emitido ................................................... 82
Figura 3.30 Interfaz de Documento Emitido ................................................... 83
Figura 3.31 Interfaz de Consulta Documento Emitido. ................................... 84
Figura 3.32 Interfaz de Consulta Documento Remite. .................................... 85
Figura 3.33 Modelo de la Base de Datos ....................................................... 86
Figura 3.34 Selección de la opción de exportación en el menú ...................... 87
Figura 3.35 Selección de las opciones para la exportación ............................ 88
Figura 3.36 Guardando el archivo con la consulta para la creación ............... 89
Figura 3.37 Ventana phpMyAdmin de creación de Base de Datos ................. 90
Figura 3.50: Búsqueda del Archivo exportado en phpMyAdmin. .................... 91
Figura 3.51: Ventana phpMyAdmin con el archivo encontrado. ..................... 92
Figura 3.38 Ventana phpMyAdmin con mensaje de ejecución con éxito. ....... 93
Figura 3.52: Ventana MyAdmin con la Base de Datos ya importado. ............. 94
Figura 3.39 Código de la clase para la conexión con la base de datos .......... 95
CAPÍTULO IV ........................................................................................................ 97
4 RESULTADOS DE LA PRÁCTICA REALIZADA: ...................................... 97
Figura 4.1 Página Principal ............................................................................ 97
Figura 4.2 Menú del Sistema. ........................................................................ 98
Figura 4.3 Inicio del Sistema. ......................................................................... 98
Figura 4.4 Menú del Administrador. ............................................................... 99
Figura 4.5 Ventana de mantenimiento de Documento Emitido. .................... 100
Figura 4.6 Formulario de Búsqueda de Documento Emitido. ....................... 101
Figura 4.7 Exportando los Datos de la búsqueda a Microsoft Excel. ............ 102
Figura 4.8 Datos Exportados a Excel. .......................................................... 103
Figura 4.9 Detalle de la Consulta de documento emitido. ............................ 104
Figura 4.10 Ventana de mantenimiento de Documento Recibido. ................ 105
Figura 4.11 Formulario de Búsqueda de Documento Recibido. ................... 106
Figura 4.12 Exportando los Datos de la búsqueda a Microsoft Excel. .......... 107
Figura 4.13 Datos Exportados a Excel. ........................................................ 108
Figura 4.14 Detalle de la Consulta de documento recibido. ......................... 109
Figura 4.15 Ventana de la opción Área. ....................................................... 110
Figura 4.16 Ventana de la opción Escuela ................................................... 111
Figura 4.17 Ventana de la opción Facultad. ................................................. 112
Figura 4.18 Ventana de la opción Facultad. ................................................. 113
Figura 4.19 Ventana de la opción Año. ........................................................ 114
Figura 4.20 Ventana de la opción Año. ........................................................ 115
Figura 4.21 Ventana de la opción Año. ........................................................ 116
Figura 4.22 Ventana de la opción Usuario. .................................................. 117
Figura 4.23 Ventana de la opción Tipo Usuario. .......................................... 118
Figura 4.24 Ventana de la opción Tipo Documento...................................... 119
Figura 4.25 Ventana de la opción Tipo Referencia....................................... 120
Figura 4.26 Ventana de la opción Estado del Documento. ........................... 121
Figura 4.27 Ventana de la opción Origen del Documento. ........................... 122
Figura 4.28 Inicio del Usuario al Sistema. .................................................... 123
Figura 4.29 Menú del Usuario. ..................................................................... 123
ÍNDICE DE CUADROS
CAPÍTULO III ........................................................................................................ 32
3 MATERIAL Y MÉTODO UTILIZADO EN LAS PRÁCTICAS
PREPROFESIONALES: .................................................................................... 32
Tabla 3.1 Recursos Humanos ........................................................................ 32
Tabla 3.2 Especificación de casos de uso Buscar Año. .................................. 42
Tabla 3.3 Especificación de caso de uso Registrar Año. ................................ 43
Tabla 3.4 Especificación de caso de uso Modificar Año. ................................ 46
Tabla 3.5 Especificación de caso de uso Eliminar Año. .................................. 48
Tabla 3.6 Especificación de casos de uso Buscar Usuario. ............................ 49
Tabla 3.7 Especificación de caso de uso Registrar Usuario. .......................... 50
Tabla 3.8 Especificación de caso de uso Modificar Usuario. .......................... 53
Tabla 3.9 Especificación de caso de uso Eliminar Usuario. ............................ 54
Tabla 3.10 Especificación de caso de uso Registrar Documento. .................. 56
Tabla 3.11 Especificación de caso de uso Modificar Documento. .................. 58
Tabla 3.12 Especificación de caso de uso Eliminar Documento. .................... 59
Tabla 3.13 Especificación de caso de uso Buscar Documento. ...................... 61
CAPÍTULO I
GENERALIDADES DE LA
INSTITUCIÓN
CAPÍTULO I

1 GENERALIDADES DE LA INSTITUCIÓN:

1.1. NOMBRE O RAZÓN SOCIAL:

Universidad José Carlos Mariátegui

1.2. UBICACIÓN DE LA INSTITUCIÓN:

Departamento : Moquegua
Provincia : Mariscal Nieto
Distrito : Moquegua
Jirón : Ayacucho Nº 393
Teléfono : (053) - 46 – 1110

1.3. ACTIVIDADES DE LA INSTITUCIÓN:

La Universidad se dedica a:
 La Investigación Científica.
 Estudio constante.
 Educación superior integral.
 Formación académico profesional.
 Difusión de cultura.
Con mira a convertirse en una de las mejores Universidades tanto a nivel
Regional como Nacional, trabaja arduamente en la Implementación de
Infraestructuras tanto en Moquegua como en Ilo, a la vez está
implementando sus laboratorios con tecnología de punta para así poder
formar verdaderos profesionales, capaces de desenvolverse en cualquier
ámbito laboral. Ofrece Diplomados, Segundas Especialidades. Pro
Títulos, Centro Pre Universitario, Centro de Computo y Sistemas y de
Idiomas Escuela de Post Grado con Maestrías y Doctorados, campos
deportivos, y en cuanto a carreras a Distancia, contando de esta manera
con alumnado de distintas partes del Perú.

2
1.4. RESEÑA HISTÓRICA:

Fue creada como UNIVERSIDAD PRIVADA DE MOQUEGUA por ley Nº


25153 del 23 de diciembre de 1989 con las carreras profesionales:
Ingeniería de Minas, Ingeniería Mecánica, Ingeniería Civil, Ingeniería
Ambiental, Ingeniería Pesquera e Ingeniería
Agroindustrial.

Desde su inicio fue su sede principal en el distrito de Moquegua, provincia


de Mariscal Nieto, departamento de Moquegua, donde figura como
persona jurídica sin fines de lucro y empezó a brindar su servicio
educativo el 15 de abril de 1991. Desde esa fecha se ha convertido por
méritos propios en una progresista ventana hacia el desarrolla integral de
todos aquellos que son conscientes que para cumplir su sol para con la
sociedad, la mejor forma es a través de una eficiente profesionalización,
por la cual se ha convertido en una firme esperanza de consolidación de
metas de grandeza espiritual y calidad humana.

En el Puerto Industrial de Ilo, en el año 1996 empezaron sus actividades


académicas con tres carreras profesionales: Ingeniería Mecánica,
Derecho y Contabilidad.

El 03 de abril del 2001 La Comisión Organizadora presidida por el Doctor


Miguel Fuentes Chávez y la presidían el Doctor Juan Rodríguez
Pantigoso como Vicepresidente Administrativo y el Licenciado Ramón
Vera Robalcaba como Vicepresidente Académico, asumieron con
entrega y convicción el gran compromiso, frente a la plana docente, la
familia estudiantil y el pueblo en conjunto de institucionalizar la
universidad, la misma que se hizo efectiva en un lapso de 13 meses. Por
eso el 28 de mayo del 2002 se consiguió el gran sueño de su
institucionalización mediante resolución Nº 389-2002-ANR y como fruto
de esta resolución el 13 de noviembre del 2002 se promulgó el primer
estatuto de la Universidad y posteriormente el 30 de diciembre del mismo

3
año, fueron elegidos el Rector y Vicerrector en un ambiente democrático
y en estricto cumplimiento de la ley universitaria y del mencionado
estatuto, actos que garantizan la autonomía y credibilidad de la
Universidad Privada de Moquegua "José Carlos Mariátegui".

Desde aquella memorable fecha, figura en su historial institucional como


autoridades de la Universidad Privada de Moquegua "José Carlos
Mariátegui", su primer Rector Mgr. Alberto Coayla Vilca y Vicerrector Dr.
Javier Flores Arocutipa, quienes por su experiencia y capacidad en estas
lides, se han convertido en auténticos líderes de avanzada al poner en
práctica todo un conjunto de procesos del sistema de educación superior
universitaria, con lo que asegura que egresen de sus aulas, profesionales
de excelente calidad, competitivos en cualquier latitud regional nacional
y del exterior.

Actualmente, nuestra Universidad oferta trece carreras profesionales y


son las siguientes:

 Ingeniería Comercial.
 Ingeniería Agronómica.
 Ingeniería Civil.
 Ingeniería Mecánica Eléctrica.
 Ingeniería de Sistemas e Informática.
 Ingeniería Pesquera.
 Ingeniería Ambiental.
 Obstetricia.
 Contabilidad.
 Odontología.
 Derecho.
 Educación.
 Enfermería.

4
1.5. FINALIDAD:

La Universidad JOSÉ CARLOS MARIÁTEGUI de Moquegua, es una


institución que tiene como finalidad brindar estudios superiores
universitarios tanto presencial como a distancia, utilizando métodos muy
eficaces que permiten lograr formar profesionales capaces, eficientes,
eficaces y con un nivel formativo igual o mejor que el brindado en otras
universidades.

1.6. VISIÓN:

Hacer de cada hombre un profesional o académico de excelencia al


servicio de la equidad social mundial.

1.7. MISIÓN:

Formamos profesionales, académicos, investigadores, tecnólogos.


Creativos, competentes y comprometidos con la solución de los
problemas de la comunidad, generando y desarrollando conocimientos
científicos, humanísticos; a través de los cuales se formulen alternativas
de desarrollo humano, cultura, bienestar y equidad social.

5
1.8. ORGANIGRAMA

Figura 1.1. Organigrama de la Universidad José Carlos Mariátegui


Fuente: www.ujcm.edu.pe

1.9. LUGAR DE EJECUCIÓN DE LAS PRÁCTICAS PRE –


PROFESIONALES:

1.9.1. NOMBRE DEL ÁREA:

OSAERC: Oficina de Servicios Académicos, Evaluación y


Registro Central de Pre-Grado.

1.9.2. DESCRIPCIÓN DEL ÁREA DE TRABAJO:

La Oficina de Servicios Académicos Evaluación y Registro


Central se encarga de la administración del historial académico

6
de los alumnos de las modalidades de Presencial, Semi-
presencial, Programa Especial, Distancia y Complementación
Académica de la Universidad José Carlos Mariátegui.

1.9.3. OBJETIVOS OFICINA OSAERC PRE-GRADO:

 Codificar a los ingresantes de las diferentes modalidades y


Carreras Profesionales.
 Realizar el Proceso de Matrículas el que consta en Registrar
e ingresar las notas de los alumnos de las diferentes carreras
profesionales de la modalidad Presencial, Semi-presencial,
Distancia, Programa Especial y Complementación
Académica.
 Emitir Actas y Registros de Evaluación a la dirección de las
Carreras Profesionales para distribuir a los docentes de las
asignaturas a su cargo, según la carga lectiva correspondiente
al semestre académico.
 Tramitar con la ANR la elaboración de Carnets Universitarios
de los alumnos de la Modalidad Presencial, Semi-presencial,
Distancia, así como los alumnos de la Escuela de Post-Grado.
 Elaborar Record Académicos, Constancias de Biblioteca y
Conformidad de Documentos solicitados por los alumnos de
Pre Grado.
 Elaborar los certificados de Estudios en conformidad con las
Actas existentes y en estricto acatamiento a las calificaciones
contenidas en las mismas.
 Elaborar Listados de estudiantes y egresados de Pre Grado
pertenecientes al Tercio y Quinto Superior de acuerdo a las
BD existentes en la Oficina.
 Mantener y custodiar los expedientes de admisión de los
alumnos de las diferentes Carreras Profesionales de la

7
Modalidad Presencial, Semi-presencial, Distancia, Programa
Especial y Complementación Académica.
 Verificar la correcta convalidación de cursos de los alumnos
ingresantes extraordinarios e ingresar los cuadros de
Convalidación al Sistema Académico utilizado en OSAERC de
los alumnos de Pre Grado.
 Verificar e ingresar la correcta Adecuación al Nuevo Plan de
Estudios de los alumnos que retoman sus estudios y/o
alumnos que se acogen al Nuevo Plan de Estudios.

1.10. ESTRUCTURA TEMÁTICA:

1.10.1. RESUMEN:

El presente proyecto titulado “Desarrollo de un Sistema Web de


Control Documentario para Mejorar la Gestión Administrativa de
la Oficina de Servicios Académicos, Evaluación y Registro
Central de la Universidad José Carlos Mariátegui”. Ha sido
desarrollado con la finalidad de demostrar que se puede mejorar
la gestión académica y administrativa mediante el desarrollo e
implementación de un sistema bajo tecnología Web, lo que
permite accesos remotos a la información; obteniendo consultas
y reportes, disminuyendo el tiempo de gestión de la información.
Específicamente se utilizará código PHP, con MySql como gestor
de base de datos, para su desarrollo se utilizo el Lenguaje de
Modelado UML y la Programación Orientada a Objetos.

1.10.2. DESCRIPCIÓN DEL PROBLEMA:

La Universidad José Carlos Mariátegui, no cuenta con un sistema


de información para la gestión administrativa del control
documentario que de la Oficina de Servicios Académicos,
Evaluación y Registro Central. La documentación es manejada
por un sistema manual, que únicamente el personal encargado en
la oficina, la cual es la secretaria tiene acceso; es decir el resto del

8
personal no tiene acceso a ningún tipo de información. Lo cual
general problemas recurrentes en el área tales como:

 Oficios e Informes con una misma numeración.


 No tener conocimiento exacto de los documentos
recibidos.
 Emitir más de una respuesta a un solo documento.

1.11. OBJETIVOS DE LAS PRÁCTICAS PRE- PROFESIONALES:

1.11.1. JUSTIFICACIÓN:

La Universidad José Carlos Mariátegui, apuesta por la innovación


tecnológica y busca alcanzar niveles altos de calidad en servicios
tanto académicos como administrativos para destacar de entre
las universidades.

Por lo tanto la implementación de un Sistema de Información Web


como resultado de una investigación y desarrollo respectivo,
permitirá:

 Agilizar los trámites administrativos que realiza la Oficina de


Servicios Académicos, Evaluación y Registro Central.
 Contribuir al desarrollo de la Institución.
 Controlar la documentación recibida para mejorar el tiempo de
respuesta a ello.
 A la institución ganar prestigio y el reconocimiento, por parte
de la comunidad estudiantil y casa superiores aledañas, por la
celeridad y eficiencia con que lleva a cabo los procesos
administrativos.
1.11.2. OBJETIVO GENERAL:

9
 Desarrollar un Sistema Web de Control Documentario para
mejorar la gestión administrativa de la Oficina de Servicios
Académicos, Evaluación y Registro Central de la Universidad
José Carlos Mariátegui.

1.11.3. OBJETIVOS ESPECÍFICOS:

 Analizar los procesos de la documentación recibida y emitida


para optimizar el tiempo.
 Diseñar un sistema de control documentario que permita
realizar accesos remotos permitiendo así disminuir el tiempo
de gestión de la información.
 Diseño del Sistema usando la metodología web OOHDM
(MÉTODO DE DISEÑO DE HIPERMEDIA ORIENTADO A
OBJETOS).
 Diseñar y Desarrollar el Sistema Web utilizando el lenguaje de
programación PHP y el sistema gestor de base de datos
MySql

10
CAPÍTULO II
FUNDAMENTO TEÓRICO

11
CAPÍTULO II

2 FUNDAMENTO TEÓRICO:

2.1. PHP:

El PHP (Profesional Home Pages - Páginas Personales Profesionales)


es un lenguaje para la creación de páginas web. Es una solución para la
construcción de Webs con independencia de la Base de Datos (aunque
normalmente se usará MySQL) del servidor Web (aunque normalmente
se usará Apache), válida para cualquier plataforma (Unix, Windows,
Mac). El objetivo final es conseguir la integración de las páginas HTML
con aplicaciones que corran en el servidor como procesos integrados en
el mismo, y no como un proceso separado, como ocurre con los CGIs
(aunque PHP también puede funcionar como un CGI) . Igualmente
interesa que dichas aplicaciones sean totalmente independientes del
navegador (lo que no ocurre con otros lenguajes basados en scripts como
JavaScript o VisualBasic Script).1

El lenguaje de programación interpretado PHP nació como Personal


Home Page (PHP) Tools. Fue creado por el programador danés

Rasmus Lerdorf en 1994 para la creación de páginas web dinámicas.2

_______________________________________________________________________________

1 F.Javier Garcia Catellano TUTORIAL DE PHP, disponible en: http://flanagan.urg.es/php/index2.htm.


2 Definicion de PHP – disponible en: http://definicion.de/php/.

12
Figura 2.1 Ejemplo de código PHP.
Fuente: www.flanagan.ugr.es/php/index2.htm.

El acrónimo recursivo, sin embargo, actualmente está vinculado a PHP


Hypertext Pre-Processor. El lenguaje es administrado por The PHP
Group y no cuenta con una especificación formal. La Free Software
Foundation, por lo tanto, considera la licencia PHP como parte del
software libre.

2.2. SISTEMA:

Un sistema es un conjunto de partes o elementos organizados y


relacionados que interactúan entre sí para lograr un objetivo. Los
sistemas reciben (entrada) datos, energía o materia del ambiente y
proveen (salida) información, energía o materia.

Un sistema puede ser físico o concreto (una computadora, un televisor,


un humano) o puede ser abstracto o conceptual (un software) Cada
sistema existe dentro de otro más grande, por lo tanto un sistema puede
estar formado por subsistemas y partes, y a la vez puede ser parte de un
supersistema.
Los sistemas tienen límites o fronteras (Ver: frontera de un sistema), que
los diferencian del ambiente. Ese límite puede ser físico (el gabinete de

13
una computadora) o conceptual. Si hay algún intercambio entre el
sistema y el ambiente a través de ese límite, el sistema es abierto, de lo
contrario, el sistema es cerrado.3

El ambiente es el medio en externo que envuelve física o


conceptualmente a un sistema. El sistema tiene interacción con el
ambiente, del cual recibe entradas y al cual se le devuelven salidas. El
ambiente también puede ser una amenaza para el sistema.

Sistema es un conjunto de sistemas organizados que interactúan entre sí


y con su ambiente para lograr objetivos comunes, operando sobre
información, sobre energía o materia u organismos para producir como
salida información o energía o materia u organismos.

2.3. MySQL:

El software MySQL proporciona un servidor de base de datos SQL


(Structured Query Language) veloz, multi-hilo, multiusuario y robusto.
El servidor está proyectado tanto para sistemas críticos en producción
soportando intensas cargas de trabajo como para empotrarse en
sistemas de desarrollo masivo de software. El software MySQL tiene
licencia dual, pudiéndose usar de forma gratuita bajo licencia GNU o bien
adquiriendo licencias comerciales de MySQL AB en el caso de no desear
estar sujeto a los términos de la licencia GPL. MySQL es una marca
registrada de MySQL AB.

 Uso de MySQL:

MySQL es muy popular en aplicaciones web, y es componente de las


plataformas LAMP, MAMP, WAMP, entre otras. MySQL suele
combinarse con el popular lenguaje PHP.

______________________________
3 Definición de Sistema – disponible en: http://www.alegsa.com.ar/Dic/sistema.php.

14
 Características de MySQL:

 MySQL está escrito en C y C++.


 Emplea el lenguaje SQL para consultas a la base de datos.
 MySQL Server está disponible como freeware bajo licencia GPL.
 MySQL Enterprise es la versión por suscripción para empresas,
con soporte las 24 horas.
 Trabaja en las siguientes plataformas: AIX, BSDi, FreeBSD, HP-
UX, GNU/Linux, Mac OS X, NetBSD, Novell NetWare, OpenBSD,
OS/2 Warp, QNX, SGI IRIX, Solaris, SunOS, SCO OpenServer,
SCO UnixWare, Tru64, Microsoft Windows (95, 98, ME, NT, 2000,
XP y Vista).

2.4. DBDesigner (Diseñador de una Base de Datos):

DBDesigner 4 es un sistema visual de diseño de bases de datos que


integra el diseño de bases de datos, modelado, creación u mantenimiento
en un ambiente sencillo y sin complicaciones.

Combina características profesionales con una interfaz de usuario clara


y simple para ofrecer el modo más eficiente de manipular sus bases de
datos.4

DBDesigner 4 es equivalente a productos como Designer de Oracle,


Rational Rose de IBM, ERwinde Computer Associates y DataArchitect de
theKompany pero es un proyecto de código abierto disponible para
Microsoft Windows 2000/XP y Linux KDE/Gnome. Se distribuye bajo la
Licencia Pública General.

DBDesigner 4 está desarrollado y optimizado para la Base de datos de


código abierto MySQL para dar soporte a usuarios de My SQL con una
herramienta de diseño poderosa y disponible en forma gratuita.
________________________________________
4
DBDesigner – disponible en: http//www.freedownloadmanager.org/es/downloads/DBDesigner_4_3178_p/

15
Todas las características específicas de MySQL han sido construidas
para ofrecer el modo más conveniente de diseñar y mantener el control
de sus bases de da datos de MySQL.

Figura 2.2 Diseño de una Base de Datos en DBDesigner.


Fuente: www.freedownloadmanager.org/es/downloads/DBDesigner_4_3178_p/

2.5. RATIONAL ROSE:

Es una herramienta software para el Modelado Visual mediante UML de


sistemas software.

 Permite Especificar, Analizar, Diseñar el sistema antes de Codificarlo.

 Características Rational Rose:

 Mantiene la consistencia de los modelos del sistema software.


 Chequeo de la sintaxis UML.
 Generación Documentación automáticamente.
 Generación de Código a partir de los Modelos.
 Ingeniería Inversa (crear modelo a partir código).

16
Figura 2.3 Interfaz de Rational Rose.
Fuente: www.monografias.com/trabajos5/insof/insof.shtml

2.6. UML:

UML es un lenguaje para especificar, construir, visualizar y documentar


los artefactos de un sistema de software orientado a objetos (OO). Un
artefacto es una información que es utilizada o producida mediante un
proceso de desarrollo de software.

UML se quiere convertir en un lenguaje estándar con el que sea posible


modelar todos los componentes del proceso de desarrollo de
aplicaciones. Sin embargo, hay que tener en cuenta un aspecto
importante del modelo: no pretende definir un modelo estándar de
desarrollo, sino únicamente un lenguaje de modelado. Otros métodos de
modelaje como OMT (Object Modeling Technique) o Booch sí definen
procesos concretos. En UML los procesos de desarrollo son diferentes
según los distintos dominios de trabajo; no puede ser el mismo el proceso
para crear una aplicación en tiempo real, que el proceso de desarrollo de
una aplicación orientada a gestión, por poner un ejemplo.

17
Las diferencias son muy marcadas y afectan a todas las fases del
proceso. El método del UML recomienda utilizar los procesos que otras
metodologías tienen definidos.

 Elementos de UML:

 Diagrama de casos de uso:

Los diagramas de casos de uso describen las relaciones y las


dependencias entre un grupo de casos de uso y los actores
participantes en el proceso.
Es importante resaltar que los diagramas de casos de uso no
están pensados para representar el diseño y no puede describir
los elementos internos de un sistema. Los diagramas de casos de
uso sirven para facilitar la comunicación con los futuros usuarios
del sistema, y con el cliente, y resultan especialmente útiles para
determinar las características necesarias que tendrá el sistema.
En otras palabras, los diagramas de casos de uso describen qué
es lo que debe hacer el sistema, pero no cómo.

 Caso de uso:

Un caso de uso describe, desde el punto de vista de los


actores, un grupo de actividades de un sistema que produce
un resultado concreto y tangible.

Los casos de uso son descriptores de las interacciones típicas


entre los usuarios de un sistema y ese mismo sistema.
Representan el interfaz externo del sistema y especifican qué
requisitos de funcionamiento debe tener este (recuerde,
únicamente el qué, nunca el cómo).

18
Cuando se trabaja con casos de uso, es importante tener
presentes algunas sencillas reglas:

 Cada caso de uso está relacionado como mínimo con un actor.


 Cada caso de uso es un iniciador (es decir, un actor).
 Cada caso de uso lleva a un resultado relevante (un resultado
con «valor intrínseco»).

Los casos de uso pueden tener relaciones con otros casos de uso.
Los tres tipos de relaciones más comunes entre casos de uso son:

 <<include>> que especifica una situación en la que un caso


de uso tiene lugar dentro de otro caso de uso.

 <<extends>> que especifica que en ciertas situaciones, o en


algún punto (llamado punto de extensión) un caso de uso será
extendido por otro.

 Generalización que especifica que un caso de uso hereda las


características del «super» caso de uso, y puede volver a
especificar algunas o todas ellas de una forma muy similar a
las herencias entre clases.

 Actor:

Un actor es una entidad externa (de fuera del sistema) que


interacciona con el sistema participando (y normalmente
iniciando) en un caso de uso. Los actores pueden ser gente
real (por ejemplo, usuarios del sistema), otros ordenadores o
eventos externos. 5

19
Los actores no representan a personas físicas o a sistemas,
sino su rol. Esto significa que cuando una persona interactúa
con el sistema de diferentes maneras (asumiendo diferentes
papeles), estará representado por varios actores. Por ejemplo,
una persona que proporciona servicios de atención telefónica
a clientes y realiza pedidos para los clientes estaría
representada por un actor «equipo de soporte» y por otro actor
«representante de ventas».

 Descripción de casos de uso:

Las descripciones de casos de uso son reseñas textuales del


caso de uso. Normalmente tienen el formato de una nota o un
documento relacionado de alguna manera con el caso de uso,
y explica los procesos o actividades que tienen lugar en el caso
de uso.

 Diagrama de Clases:

Los diagramas de clases muestran las diferentes clases que


componen un sistema y cómo se relacionan unas con otras. Se
dice que los diagramas de clases son diagramas «estáticos»
porque muestran las clases, junto con sus métodos y atributos, así
como las relaciones estáticas entre ellas: qué clases «conocen» a
qué otras clases o qué clases «son parte» de otras clases, pero
no muestran los métodos mediante los que se invocan entre ellas.
___________________________________
5
Ingeniería de Software UML – disponible en: http://www.monografia.com/trabajos5/insof/insof.shtml.

 Clase:

20
Una clase define los atributos y los métodos de una serie de
objetos. Todos los objetos de esta clase (instancias de esa
clase) tienen el mismo comportamiento y el mismo conjunto de
atributos (cada objetos tiene el suyo propio). En ocasiones se
utiliza el término «tipo» en lugar de clase, pero recuerde que
no son lo mismo, y que el término tipo tiene un significado más
general.

 Diagramas de Colaboración:

Los diagramas de colaboración muestran las interacciones que


ocurren entre los objetos que participan en una situación
determinada. Esta es más o menos la misma información que la
mostrada por los diagramas de secuencia, pero destacando la
forma en que las operaciones se producen en el tiempo, mientras
que los diagramas de colaboración fijan el interés en las
relaciones entre los objetos y su topología.

En los diagramas de colaboración los mensajes enviados de un


objeto a otro se representan mediante flechas, mostrando el
nombre del mensaje, los parámetros y la secuencia del mensaje.
Los diagramas de colaboración están indicados para mostrar una
situación o flujo programa específicos y son unos de los mejores
tipos de diagramas para demostrar o explicar rápidamente un
proceso dentro de la lógica del programa.

 Diagrama de Estado:
Los diagramas de estado muestran los diferentes estados de
un objeto durante su vida, y los estímulos que provocan los
cambios de estado en un objeto.
Los diagramas de estado ven a los objetos como máquinas de
estado o autómatas finitos que pueden estar en un conjunto

21
de estados finitos y que pueden cambiar su estado a través de
un estímulo perteneciente a un conjunto finito. Por ejemplo, un
objeto de tipo NetServer puede tener durante su vida uno de
los siguientes estados:

 Listo.
 Escuchando.
 Trabajando.
 Detenido.

y los eventos que pueden producir que el objeto cambie de


estado son

 Se crea el objeto.
 El objeto recibe un mensaje de escucha.
 Un cliente solicita una conexión a través de la red.
 Un cliente finaliza una solicitud.
 La solicitud se ejecuta y ser termina.
 El objeto recibe un mensaje de detención, etc.

 Diagrama de Actividad:

Los diagramas de actividad describen la secuencia de las


actividades en un sistema. Los diagramas de actividad son una
forma especial de los diagramas de estado, que únicamente (o
mayormente) contienen actividades.

Los diagramas de actividad soportan actividades tanto


secuenciales como paralelas. La ejecución paralela se representa
por medio de iconos de fork/espera, y en el caso de las actividades

22
paralelas, no importa en qué orden sean invocadas (pueden ser
ejecutadas simultáneamente o una detrás de otra).6

 Diagramas de Componentes:

Los diagramas de componentes muestran los componentes del


software (ya sea las tecnologías que lo forman como Kparts,
componentes CORBA, Java Beans o simplemente secciones del
sistema claramente distintas) y los artilugios de que está
compuesto como los archivos de código fuente, las librerías o las
tablas de una base de datos.

Los componentes pueden tener interfaces (es decir clases


abstractas con operaciones) que permiten asociaciones entre
componentes.

 Diagramas de Implementación:

Los diagramas de implementación muestran las instancias


existentes al ejecutarse así como sus relaciones. También se
representan los nodos que identifican recursos físicos,
típicamente un ordenador así como interfaces y objetos
(instancias de las clases).

_____________________________________
6
Introducción a UML – disponible en: http://docs.kde.org/stable/es/kdesdk/umbrello/uml-elements.html.

23
Figura 2.4 Ejemplo UML Diagrama de Clases.
Fuente: www.fabforce.net/dbdesigner4/images/ss/dbd4_ss_simplemodel.png

2.7. SGBD:

Sistema de Gestión de Base de Datos o en Ingles Database management


system (DBMS), es una agrupación de programas que sirven para definir,
construir y manipular una Base de Datos7.

En la manipulación de la base de datos, los SGBD deben incluir un control


de concurrencia, ósea deben permitir a varios usuarios tener acceso
“simultaneo” a la base de datos. Controlar la concurrencia implica que si
varios usuarios acceden a la base de datos, la actualización de los datos
se haga de forma controlada para que no haya problemas.

___________________________________
7
Carmen B. Navarrete – Centro de Referencia Linux UAM – IBM, Publicación “Introducción a las Bases de Datos”.2003, pág 35.

2.8. MODELO OOHDM o Método de Diseño de Hipermedia Orientado

24
a. Objetos:

El modelo OOHDM u Object Oriented Hypermedia Design Methodology,


para diseño de aplicaciones hipermedia y para la Web, fue diseñado por
D. Schwabe, G. Rossi, and S. D. J. Barbosa y es una extensión de HDM
con orientación a objetos, que se está convirtiendo en una de las
metodologías más utilizadas. Ha sido usada para diseñar diferentes tipos
de aplicaciones hipermedia como galerías interactivas, presentaciones
multimedia y, sobre todo, numerosos sitios web.

Al igual que RMM, este método se inspira en el modelo HDM, pero lo que
le distingue claramente del primero es el proceso de concepción
orientado a objetos. OOHDM propone el desarrollo de aplicaciones
hipermedia mediante un proceso de 4 etapas:

- Diseño Conceptual.
- Diseño Navegacional.
- Diseño de Interfaces Abstractas.
- Implementación.

Cada etapa de la concepción define un esquema objeto específico en el


que se introducen nuevos elementos (clases).

En la primera etapa se construye un esquema conceptual representado


por los objetos de dominio o clases y las relaciones entre dichos objetos.
Se puede usar un modelo de datos semántico estructural (como el
modelo de entidades y relaciones). El modelo OOHDM propone como
esquema conceptual basado en clases, relaciones y subsistemas.

En la segunda etapa, el diseñador define clases navegacionales tales


como nodos, enlaces y estructuras de acceso (índices y visitas guiadas)

25
inducidas del esquema conceptual. Los enlaces derivan de las relaciones
y los nodos representan ventanas lógicas (views) sobre las clases
conceptuales. A continuación, el diseñador describe la estructura
navegacional en términos de contextos navegacionales. Un contexto
navegacional es un conjunto de nodos, enlaces, clases de contextos y
otros contextos navegacionales (contextos anidados) - igual que en HDM
definen agrupaciones- que pueden ser definidos por comprensión o
extensión, o por enumeración de sus miembros.

Los nodos se enriquecen con un conjunto de clases especiales que


permiten presentar atributos así como métodos o comportamientos
cuando se navega en un contexto particular. Durante esta etapa, es
posible adaptar los objetos navegacionales para cada contexto, de forma
similar a las perspectivas de HDM.

OOHDM no propone un modelo enriquecido para el dominio de la


aplicación, por lo que deja libre al diseñador para elegir el modelo de
especificación del dominio. Sin embargo, el modelo hipermedia está
definido en dos niveles de abstracción: las clases navegacionales y los
contextos navegacionales. En el momento de la especificación de las
clases navegacionales es cuando el diseñador define las
correspondencias y, aunque OOHDM sugiere algunas, no impone
metáforas preestablecidas tan sistemáticamente como RMM. Los nodos
inducidos de las clases del modelo del dominio y los enlaces inducidos
de las relaciones del modelo del dominio se pueden precisar. Como el
segundo nivel está consagrado a la especificación de la navegación,
expresada exclusivamente sobre los objetos navegacionales (no sobre
los elementos del modelo del dominio), constituye un mecanismo que
permite enriquecer el modelo hipermedia.

La tercera etapa está dedicada a la especificación de la interfaz abstracta.


Así, se define la forma en la cual deben aparecer los contextos

26
navegacionales. También se incluye aquí el modo en que dichos objetos
de interfaz activarán la navegación y el resto de funcionalidades de la
aplicación, esto es, se describirán los objetos de interfaz y se los asociará
con objetos de navegación. La separación entre el diseño navegacional
y el diseño de interfaz abstracta permitirá construir diferentes interfaces
para el mismo modelo navegacional.

Por fin, la cuarta etapa, dedicada a la puesta en práctica, es donde se


hacen corresponder los objetos de interfaz con los objetos de
implementación.

Aunque los ejemplos que ilustran el método sean siempre del mismo tipo,
OOHDM es un método abierto porque, por una parte, el modelo del
dominio no viene impuesto y por otra parte, el soporte en objetos del
método permite la especialización de las clases navegacionales y de los
contextos navegacionales. El objetivo de OOHDM es cubrir la concepción
de todo tipo de aplicaciones hipermedia.8

2.8.1. MODELO CONCEPTUAL:

“Durante la primera fase se realiza el modelado del dominio del


hiperdocumento utilizando algún método análisis orientado a
objetos de Sistemas de Información, por ejemplo OMT,
obteniendo así un esquema conceptual de clases en el que,
además de clases abstractas y objetos, se representan las
relaciones entre ellas, incluidas las de herencia y agregación, y
los correspondientes atributos (que pueden ser de cualquier tipo,
desde simples cadenas de caracteres a gráficos, imágenes,
texto, sonido, etc.) y métodos asociados a las clases”9.
_____________________________
8
Modelado OOHDM - disponible en: http//www.hipertexto.info/documentos/oohdm.htm
9
Daniel Schwabe y Gustavo Ross, disponible en: http://www.di.inf.puc-rio.br/schwabe/papers/TAPOSRevised.pdf
2.8.2. DISEÑO NAVEGACIONAL:10

27
La primera generación de aplicaciones de multimedia intentaba
realizar la navegación a través de un espacio de información
usando un solo modelo de datos de hipermedia. A pesar de estos
problemas que son bien conocidos en la comunidad de la
hipermedia, ellos raramente han sido tomados en cuenta por los
diseñadores de Multimedia y Web Sites.

El mayor esfuerzo de diseño normalmente se ha puesto en


aspectos de interfaz del usuario y la estructura de la navegación
se construye en jerarquías simples. Ahora que los navegadores
(Browser) de Web son la interfaz, y a veces el Host, para los tipos
diferentes de aplicaciones, hay un riesgo en la navegación a ser
considerada simplemente otro tipo de de omportamiento de
aplicación. En OOHDM, la navegación es considerada un paso
crítico en el diseño de una aplicación de hipermedia. Un Modelo
de navegación se construye como una vista más de un modelo
conceptual y permite la construcción de modelos diferentes
según los perfiles diferentes de los usuarios. Cada modelo de
navegación proporciona una vista "Subjetiva" del modelo
conceptual.

_______________________________________
10
Carvalho, G Rossi, disponible en: http://www.di.inf.puc-rio.br/schwabe/HT96WWW/section3.html

28
2.8.3. DISEÑO DE INTERFAZ ABSTRACTA:11

Una vez que las aplicaciones de estructura navegacional han sido


definidos, se debe especificar ahora aspectos de la interfaz. Esto
significa definir la manera en que diferentes objetos de
navegación aparecerán, qué objetos de navegación de la interfaz
se activara y otra funcionalidad de aplicación, y qué
transformaciones de la interfaz tendrán lugar y cuando.

Una separación ordenada entre ambas preocupaciones, de


navegación y diseño de interfaz abstracta, permite construir
interfaces diferentes para el mismo modelo de navegación,
llevando a un grado más alto de independencia de tecnología de
la interfaz de usuario. En suma, esta separación permite
entender mejor la aplicación global de la estructura para indicar
qué transformaciones claramente en la interfaz serán
transformaciones navegacionales.

2.8.4. IMPLEMENTACIÓN:

En esta fase, el diseñador realmente implementará el diseño.


Hasta ahora, todos los modelos fueron deliberadamente
construidos de semejante manera en lo que se refiere a ser
independiente de la plataforma de implementación; en esta fase
el ambiente particular de (tiempo de ejecución) runtime se toma
el derecho de acceso a un servidor o a la red internet. A
continuación se fijará cómo los diseños de OOHDM pueden ser
implementados en el WWW, tener cuidado para no arreglar una
sola alternativa, desde que hay muchos acercamientos posibles
a través de los cuales esto puede ser logrado.

_____________________________
11
Coleman Introducción Orientado a Objetos, disponible en http://www.di.inf.puc-rio.br/schwabe/HT96WWW/section3.html

29
Cuando la fase de implementación se alcanza, el diseñador ya
tiene definido los artículos de información que son parte del
dominio del problema.

2.9. ANÁLISIS ORIENTADA A OBJETOS:

El análisis orientado a objetos, es desarrollar una serie de modelos que


describan el software de computadora al trabajar para satisfacer un
conjunto de requisitos definidos por el cliente. El AOO forma un modelo
de análisis multiparte para satisfacer este objetivo. El modelo de análisis
ilustra información, funcionamiento y comportamiento dentro del contexto
de los elementos del modelo de objetos12.

_______________________
12
Ingenieria de software, un enfoque practico, Roger S. Pressman, 5aEdición, pág 133

30
CAPÍTULO III
MATERIAL Y MÉTODO
UTILIZADO EN LAS
PRÁCTICAS
PREPROFESIONALES

31
CAPÍTULO III

3 MATERIAL Y MÉTODO UTILIZADO EN LAS PRÁCTICAS


PREPROFESIONALES:

3.1. MATERIALES:

3.1.1. RECURSOS HUMANOS:


CANTIDAD RECURSO HUMANO

Tabla 3.1 Recursos Humanos


Fuente: Propia

3.1.2. RECURSOS DE HARDWARE

 01 Laptop Intel(R) Core(TM)i7 CPU


 Procesador : Intel(R) Core(TM)i7 CPU Q720
@ 1.60GHz.
 Memoria : RAM de 4.00 GB
 Disco Duro : 500 GB
 Sistema Operativo : Windows 7
 Tarjeta de Sonido y Audio : NVIDIA High Definition
Audio.
 01 Impresora Laser Jet 1610.

32
3.1.3. RECURSOS DE SOFTWARE:

 Microsoft Windows 7.
 Microsoft Office 2007 (Microsoft Excel y Microsoft Word).
 DBDesigner, para el modelamiento Web.
 Rational Rose Enterprise Edition v.2003.
 XAMPP para Windows.
 Apache Web Server Version 2.2.4.
 PHP Script Language Version 5.2.3.
 MySQL Database Version 5.0.45.
 Notepad++ v5.6.6 para la programación, tanto para el código
HTML como código PHP.
 Navicat 8 for MySQL.

3.2. METODOLOGÍA:

La Metodología utilizada es OOHDM (Object Oriented Hypermedia


Design Method), por lo que la metodología elegida es un método para el
desarrollo de aplicaciones web.

Los modelos orientados a objetos se construyen en cada paso que


mejora los modelos diseñados en iteraciones anteriores y consta de las
siguientes fases:

 Análisis del Sistema.


 Fase Conceptual.
 Fase Navegacional.
 Fase de Interfaz Abstracta.
 Fase de Implementación.

33
3.3. ANÁLISIS DEL SISTEMA:

3.3.1. IDENTIFICACIÓN DEL PROYECTO:

a) TÍTULO:
“Desarrollar un Sistema Web de Control Documentario para
mejorar la gestión administrativa de la Oficina de Servicios
Académicos, Evaluación y Registro Central de la Universidad
José Carlos Mariátegui.

b) DESCRIPCIÓN:

El presente sistema es un software desarrollado con la


finalidad de mejorar la gestión del control documentario
recibido y emitido por la oficina de OSAERC.

Este sistema registrará y nos ayudará a realizar consultas de


los documentos recepcionados por la oficina como: oficios,
informes, resoluciones, fut, etc; para que puedan ser atendidos
y emitir información sobre el estado en que se encuentran.

c) AUTOR:
Bach. Beyker Albert Gutierrez Quispe.

3.3.2. DESARROLLO DEL SISTEMA SISCOD:

3.3.2.1. DIAGRAMA GENERAL DEL SISTEMA

Figura 3.1 Diagrama General del Sistema


Fuente: Propia

34
3.3.2.2. DIAGRAMA DE CASO DE USO:

 GESTIÓN DE AÑO:

Figura 3.2 Gestión de Año


Fuente: Propia

 GESTIÓN DE DOCUMENTO RECIBIDO Y


EMITIDO:

Figura 3.3 Gestión de Documento Recibido y Emitido.


Fuente: Propia

35
 BÚSQUEDA DE DOCUMENTO RECIBIDO:

Figura 3.4 Búsqueda de Documento Recibido


Fuente: Propia

 BÚSQUEDA DE DOCUMENTO EMITIDO:

Figura 3.5 Búsqueda de Documento Emitido


Fuente: Propia

36
 GESTIÓN DE USUARIO:

Figura 3.6 Gestión de Usuario.


Fuente: Propia

 VALIDAR USUARIO:

Figura 3.7 Validar usuario


Fuente: Propia

37
3.3.2.2.1. DESCRIPCIÓN DE ACTORES:

Nombre del Actor : Empleado.

Definición : Es la persona
que labora en la
empresa y brinda
la atención al
cliente (alumno).

Notas : Es de tres tipos:


Usuario, Visitante
y Administrador.

Nombre del Actor : Usuario.

Definición : Es la persona
que utiliza el
sistema pero con
acceso limitado.

Notas : Manipula los


datos de los
documentos
recibidos y
emitidos por la
oficina.

Nombre del Actor : Visitante.

Definición : Es la persona
que realiza

38
búsquedas en el
sistema.

Notas : Manipula los


datos de los
documentos para
realizar
búsquedas por
número de
documentos
recibidos y
emitidos, por
asunto, por
número de
expediente, por
estado, etc.

Nombre del Actor : Administrador

Definición : Es la persona
que se encarga de
administrar, y el
único con acceso
completo al
Sistema.

Notas : Manipula los


datos de los
documentos
recibidos y
emitidos por la
oficina. de los

39
alumnos, el
periodo (año y
fase), los
diferentes tipos de
documentos
aceptados por el
sistema,
asociaciones,
especialidades,
sedes,
resoluciones y
otras opciones
exclusivas como
el registro de
nuevos usuarios.

3.3.2.2.2. DESCRIPCIÓN DEL SISTEMA:

Nombre :SISCOD
(Sistema de
Control
Documentario).

Definición : Con éste nombre


haremos
referencia al
sistema
encargado de
manejar la
información de los
expedientes de
los alumnos, así

40
como el resto de
información
necesaria para
este.

3.3.2.2.3. ESPECIFICACIÓN DE CASOS DE


USO DE NEGOCIO:

CU_01: Buscar Año.


Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se realiza la consulta de los años existentes.
Precondición: Ninguna.
Secuencia Paso Acción
Normal 1 El Empleado selecciona
Administración Año en el menú.
2 El Sistema muestra el formulario de
Año y las opciones de búsqueda.
3 El Empleado selecciona la opción de
búsqueda e ingresa el criterio para la
búsqueda.
4 El Sistema se encarga de generar la
consulta para buscar.
5 El Sistema entrega la consulta
generada a la Base de Datos.
6 La Base de Datos procesa la consulta.
7 La Base de Datos entrega los
resultados de la consulta al Sistema.
8 El Sistema muestra los resultados al
Empleado.

41
Postcondición: El Sistema muestra una lista con los resultados de
la búsqueda.
excepciones Paso Acción
6’  El sistema no mostrara nada si
la base de datos no devuelve
resultados.
Rendimiento Paso Cota de tiempo
1...8 El promedio de la consulta dura 35
segundos.
Frecuencia Indefinida.
Comentarios Ninguno.

Tabla 3.2 Especificación de casos de uso Buscar Año.


Fuente: Propia

CU_02: Registrar Año.


Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se realiza el servicio para registrar un Año.
Precondición: Ninguna.
Secuencia Paso Acción
Normal 1 El Empleado selecciona
Administración Año en el menú.
2 El Sistema muestra el formulario de
Año y las opciones de búsqueda.
3 El Empleado ingresa los datos al
formulario Año.
4 El Sistema realiza la validación de los
datos ingresados.
5 El Sistema muestra los mensajes de la
validación.

42
6 El Empleado selecciona la opción
guardar.
7 El Sistema realiza la validación de los
datos ingresados antes de generar la
consulta de guardado.
8 El Sistema Genera la consulta
necesaria para guardar.
9 El Sistema entrega la consulta
generada a la Base de Datos.
10 La Base de Datos se encarga de
procesar la consulta.
11 La Base de Datos entrega los
resultados de la consulta al sistema.
12 El Sistema muestra un mensaje
satisfactorio.
Postcondición: El Sistema registra el Año ingresado y muestra el
mensaje de guardado con éxito.
excepciones Paso Acción
4’ y 5’  El sistema muestra un mensaje
de error en la validación si los
datos ingresados no cumplen
las respectivas condiciones.
Rendimiento Paso Cota de tiempo
1...12 El promedio del registro dura 35
segundos.
Frecuencia Indefinida.
Comentarios Ninguno.

Tabla 3.3 Especificación de caso de uso Registrar Año.


Fuente: Propia

43
CU_03: Modificar Asociación.
Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se encuadra el servicio para modificar un Año.
Precondición: El Año ya debe estar registrado.
Secuencia Paso Acción
Normal 1 El Empleado selecciona
Administración Año en el menú.
2 El Sistema muestra el formulario de
Año y las opciones de búsqueda.
3 El Empleado selecciona la opción de
búsqueda e ingresa el criterio para la
búsqueda.
4 El Sistema se encarga de generar la
consulta para buscar.
5 El Sistema entrega la consulta
generada a la Base de Datos.
6 La Base de Datos procesa la consulta.
7 La Base de Datos entrega los
resultados de la consulta al Sistema.
8 El Empleado selecciona una Año de la
lista de resultados.
9 El Empleado selecciona una Año de la
lista de resultados.
10 El Sistema pasa los datos al
formulario.
11 El Sistema muestra los datos en el
formulario.
12 El Empleado modifica los datos en el
formulario.

44
13 El Sistema valida los datos al ser
ingresados.
14 El Sistema muestra los mensajes de
validación.
15 El Empleado selecciona la opción
modificar.
16 El Sistema realiza la validación de los
datos ingresados antes de generar la
consulta de modificación.
17 El Sistema Genera la consulta para
modificar.
18 El Sistema entrega la consulta
generada a la Base de Datos.
19 La Base de Datos procesa la consulta.
20 La Base de Datos entrega los
resultados de la consulta al Sistema.
21 El Sistema muestra un mensaje
satisfactorio.
Postcondición: El Sistema modifica el Año y muestra un mensaje
de modificado con éxito.
excepciones Paso Acción
13’ y 16'  El sistema muestra un mensaje
de error en la validación si los
datos ingresados no cumplen
las respectivas condiciones..
Rendimiento Paso Cota de tiempo
1...21 El promedio de la modificación dura 1
minuto.
Frecuencia Indefinida.
Comentarios Ninguno.

45
Tabla 3.4 Especificación de caso de uso Modificar Año.
Fuente: Propia

CU_04: Eliminar Año.


Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se encuadra el servicio para eliminar un Año.
Precondición: El Año ya debe estar registrado.
Secuencia Paso Acción
Normal 1 El Empleado selecciona
Administración Año en el menú.
2 El Sistema muestra el formulario de
Año y las opciones de búsqueda.
3 El Empleado selecciona la opción de
búsqueda e ingresa el criterio para la
búsqueda.
4 El Sistema se encarga de generar la
consulta para buscar.
5 El Sistema entrega la consulta
generada a la Base de Datos.
6 La Base de Datos procesa la consulta.
7 La Base de Datos entrega los
resultados de la consulta al Sistema.
8 El Empleado selecciona una Año de la
lista de resultados.
9 El Empleado selecciona una Año de la
lista de resultados.
10 El Sistema pasa los datos al
formulario.
11 El Sistema muestra los datos en el
formulario.

46
12 El Empleado modifica los datos en el
formulario.
13 El Sistema valida los datos al ser
ingresados.
14 El Sistema muestra los mensajes de
validación.
15 El Empleado selecciona la opción
modificar.
16 El Sistema realiza la validación de los
datos ingresados antes de generar la
consulta de modificación.
17 El Sistema Genera la consulta para
modificar.
18 El Sistema entrega la consulta
generada a la Base de Datos.
19 La Base de Datos procesa la consulta.
20 La Base de Datos entrega los
resultados de la consulta al Sistema.
21 El Sistema muestra un mensaje
satisfactorio.
Postcondición: El Sistema modifica el Año y muestra un mensaje
de modificado con éxito.
excepciones Paso Acción
13’ y 16'  El sistema muestra un mensaje
de error en la validación si los
datos ingresados no cumplen
las respectivas condiciones..
Rendimiento Paso Cota de tiempo
1...21 El promedio de la modificación dura 1
minuto.
Frecuencia Indefinida.

47
Comentarios Ninguno.

Tabla 3.5 Especificación de caso de uso Eliminar Año.


Fuente: Propia

CU_04: Buscar Usuario.


Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se realiza la consulta de los Usuarios
existentes.
Precondición: Solo los administradores pueden buscar Usuarios.
Secuencia Paso Acción
Normal 1 El Empleado selecciona Opciones de
Administrador - Usuario en el menú.
2 El Sistema muestra el formulario de
Usuario y las opciones de búsqueda.
3 El Empleado selecciona la opción de
búsqueda e ingresa el criterio para la
búsqueda.
4 El Sistema se encarga de generar la
consulta para buscar.
5 El Sistema entrega la consulta
generada a la Base de Datos.
6 La Base de Datos procesa la consulta.
7 La Base de Datos entrega los
resultados de la consulta a Sistema
8 El Sistema muestra los resultados al
Empleado.
Postcondición: El Sistema muestra una lista con los resultados de
la búsqueda.
excepciones Paso Acción

48
6’  El sistema no mostrara nada si
la base de datos no devuelve
resultados.
Rendimiento Paso Cota de tiempo
1...8 El promedio de la consulta dura 35
segundos.
Frecuencia Indefinida.
Comentarios Ninguno.

Tabla 3.6 Especificación de casos de uso Buscar Usuario.


Fuente: Propia

CU_05: Registrar Usuario.


Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se realiza el servicio para registrar un Usuario.
Precondición: Solo los administradores pueden registrar
Usuarios.
Secuencia Paso Acción
Normal 1 El Empleado selecciona Opciones de
Administrador -Usuario en el menú.
2 El Sistema muestra el formulario de
Usuario y las opciones de búsqueda.
3 El Empleado ingresa los datos al
formulario Usuario.
4 El Sistema realiza la validación de los
datos ingresados.
5 El Sistema muestra los mensajes de la
validación.
6 El Empleado selecciona la opción
guardar.

49
7 El Sistema realiza la validación de los
datos ingresados antes de generar la
consulta de guardado.
8 El Sistema Genera la consulta
necesaria para guardar.
9 El Sistema entrega la consulta
generada a la Base de Datos.
10 La Base de Datos se encarga de
procesar la consulta.
11 La Base de Datos entrega los
resultados de la consulta al Sistema.
12 El Sistema muestra un mensaje
satisfactorio.
Postcondición: El Sistema registra el Usuario ingresado y muestra
el mensaje de guardado con éxito.
excepciones Paso Acción
4’ y 5’  El sistema muestra un mensaje
de error en la validación si los
datos ingresados no cumplen
las respectivas condiciones.
Rendimiento Paso Cota de tiempo
1...12 El promedio del registro dura 35
segundos.
Frecuencia Indefinida.
Comentarios Ninguno.

Tabla 3.7 Especificación de caso de uso Registrar Usuario.


Fuente: Propia

CU_06: Modificar Usuario.


Versión: 1.0

50
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se encuadra el servicio para modificar un
Usuario.
Precondición: El Usuario ya debe estar registrado. Solo los
administradores pueden modificar Usuarios.
Secuencia Paso Acción
Normal 1 El Empleado selecciona Opciones de
Administrador - Usuario en el menú.
2 El Sistema muestra el formulario de
Usuario y las opciones de búsqueda.
3 El Empleado selecciona la opción de
búsqueda e ingresa el criterio para la
búsqueda.
4 El Sistema se encarga de generar la
consulta para buscar.
5 El Sistema entrega la consulta
generada a la Base de Datos.
6 La Base de Datos procesa la consulta.
7 La Base de Datos entrega los
resultados de la consulta al Sistema.
8 El Sistema muestra los resultados al
Empleado.
9 El Empleado selecciona un Usuario de
la lista de resultados.
10 El Sistema pasa los datos al
formulario.
11 El Sistema muestra los datos en el
formulario.
12 El Empleado modifica los datos en el
formulario.

51
13 El Sistema valida los datos al ser
ingresados.
14 El Sistema muestra los mensajes de
validación.
15 El Empleado selecciona la opción
modificar.
16 El Sistema realiza la validación de los
datos ingresados antes de generar la
consulta de modificación.
17 El Sistema Genera la consulta para
modificar.
18 El Sistema entrega la consulta
generada a la Base de Datos.
19 La Base de Datos procesa la consulta.
20 La Base de Datos entrega los
resultados de la consulta al Sistema.
21 El Sistema muestra un mensaje
satisfactorio.
Postcondición: El Sistema modifica el Usuario y muestra un
mensaje de modificado con éxito.
excepciones Paso Acción
13’ y 16'  El sistema muestra un mensaje
de error en la validación si los
datos ingresados no cumplen
las respectivas condiciones.
Rendimiento Paso Cota de tiempo
1...21 El promedio de la modificación dura 1
minuto.
Frecuencia Indefinida.
Comentarios Ninguno.

52
Tabla 3.8 Especificación de caso de uso Modificar Usuario.
Fuente: Propia

CU_01: Eliminar Usuario.


Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se encuadra el servicio para modificar un
Usuario.
Precondición: El Usuario ya debe estar registrado. Solo los
administradores pueden modificar Usuarios.
Secuencia Paso Acción
Normal 1 El Empleado selecciona Opciones de
Administrador - Usuario en el menú.
2 El Sistema muestra el formulario de
Usuario y las opciones de búsqueda.
3 El Empleado selecciona la opción de
búsqueda e ingresa el criterio para la
búsqueda.
4 El Sistema se encarga de generar la
consulta para buscar.
5 El Sistema entrega la consulta
generada a la Base de Datos.
6 La Base de Datos procesa la consulta.
7 La Base de Datos entrega los
resultados de la consulta al Sistema.
8 El Sistema muestra los resultados al
Empleado.
9 El Empleado selecciona un Usuario de
la lista de resultados.
10 El Sistema pasa los datos al
formulario.

53
11 El Sistema muestra los datos en el
formulario.
12 El Empleado selecciona la opción
eliminar.
13 El Sistema Genera la consulta para
eliminar.
14 El Sistema entrega la consulta
generada a la Base de Datos.
15 La Base de Datos procesa la consulta.
16 La Base de Datos entrega los
resultados al Sistema.
17 El Sistema muestra un mensaje
satisfactorio.
Postcondición: El Sistema modifica el Usuario y muestra un
mensaje de modificado con éxito.
excepciones Paso Acción
- Ninguno.
Rendimiento Paso Cota de tiempo
1...17 El promedio de la eliminación dura 30
segundos.
Frecuencia Indefinida.
Comentarios Ninguno.

Tabla 3.9 Especificación de caso de uso Eliminar Usuario.


Fuente: Propia
CU_07: Registrar Documento (Emitido-Recibido).
Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se realiza el servicio para registrar un
Documento (Emitido-Recibido).

54
Precondición: Solo los usuarios con permiso pueden registrar
documento.
Secuencia Paso Acción
Normal 1 El Empleado selecciona Documento –
Emitido – Mantenimiento O
Documento – Emitido –
Mantenimiento, según sea el caso.
2 El Sistema muestra el formulario 69 de
Documento Emitido o Documento
Recibido, según sea el caso, y las
opciones de búsqueda.
3 El Empleado revisa el documento a
registrar.
4 El Empleado ingresa los datos al
formulario.
5 El Sistema realiza la validación de los
datos ingresados.
6 El Sistema muestra los mensajes de la
validación.
7 El Empleado selecciona la opción
guardar.
8 El Sistema realiza la validación de los
datos ingresados antes de generar la
consulta de guardado.
9 El Sistema Genera la consulta
necesaria para guardar.
10 El Sistema entrega la consulta
generada a la Base de Datos.
11 La Base de Datos se encarga de
procesar la consulta.

55
12 La Base de Datos entrega los
resultados de la consulta al Sistema.
13 El Sistema muestra un mensaje
satisfactorio.
Postcondición: El Sistema registra el Documento ingresado y
muestra el mensaje de guardado con éxito.
excepciones Paso Acción
4’ y 6’  El sistema muestra un mensaje
de error en la validación si los
datos ingresados no cumplen
las respectivas condiciones.
Rendimiento Paso Cota de tiempo
1...12 El promedio del registro dura 35
segundos.
Frecuencia Indefinida.
Comentarios Ninguno.
Tabla 3.10 Especificación de caso de uso Registrar Documento.
Fuente: Propia
CU_08: Modificar Documento (Emitido-Recibido).
Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se encuadra el servicio para modificar un
Documento (Emitido-Recibido).
Precondición: El Documento ya debe estar registrado. Solo los
usuarios con permiso pueden modificar
documento.
Secuencia Paso Acción
Normal 1 El Empleado selecciona Documento –
Emitido – Mantenimiento O
Documento – Emitido –
Mantenimiento, según sea el caso.

56
2 El Sistema muestra el formulario de
Documento Emitido o Documento
Recibido, según sea el caso, y las
opciones de búsqueda.
3 El Empleado ingresa el número de
registro y selecciona la opción buscar.
4 El Sistema se encarga de generar la
consulta para buscar.
5 El Sistema entrega la consulta
generada a la Base de Datos.
6 La Base de Datos procesa la consulta.
7 La Base de Datos entrega los
resultados al Sistema.
8 El Sistema pasa los datos al
formulario.
9 El Sistema muestra los datos en el
formulario.
10 El Empleado modifica los datos en el
formulario.
11 El Sistema valida los datos al ser
ingresados.
12 El Sistema muestra los mensajes de
validación.
13 El Empleado selecciona la opción
modificar.
14 El Sistema realiza la validación 73 de
los datos ingresados antes de generar
la consulta de modificación.
15 El Sistema Genera la consulta para
modificar.
16 El Sistema entrega la consulta
generada a la Base de Datos.

57
17 La Base de Datos procesa la
consulta.
18 La Base de Datos entrega los
resultados de la consulta al Sistema.
19 El Sistema muestra un mensaje
satisfactorio.
Postcondición: El Sistema modifica el Usuario y muestra un
mensaje de modificado con éxito.
excepciones Paso Acción
11’ y 14'  El sistema muestra un
mensaje de error en la
validación si los datos
ingresados no cumplen las
respectivas condiciones.
Rendimiento Paso Cota de tiempo
1...19 El promedio de la modificación dura 1
minuto.
Frecuencia Indefinida.
Comentarios Ninguno.

Tabla 3.11 Especificación de caso de uso Modificar Documento.


Fuente: Propia
CU_01: Eliminar Documento (Emitido-Recibido).
Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se encuadra el servicio para eliminar un
Documento (Emitido-Recibido).
Precondición: El Documento ya debe estar registrado. Solo los
usuarios con permiso pueden eliminar documento.
Secuencia Paso Acción
Normal 1 El Empleado selecciona Documento –
Emitido – Mantenimiento O
Documento – Emitido –
Mantenimiento, según sea el caso.
2 El Sistema muestra el formulario de
Documento Emitido o Documento
Recibido, según sea el caso, y las
opciones de búsqueda.
3 El Empleado ingresa el número de
registro y selecciona la opción buscar.
4 El Sistema se encarga de
generar la consulta para buscar.

58
5 El Sistema entrega la consulta
generada a la Base de Datos.
6 La Base de Datos procesa la
consulta.
7 La Base de Datos entrega los
resultados al Sistema.
8 El Sistema pasa los datos al
formulario.
9 El Sistema muestra los datos en el
formulario.
10 El Empleado selecciona la opción
modificar.
11 El Sistema realiza la validación de los
datos ingresados antes de generar la
consulta de modificación.
12 El Sistema Genera la consulta para
modificar.
13 El Sistema entrega la consulta
generada a la Base de Datos.
14 La Base de Datos procesa la
consulta.
15 La Base de Datos entrega los
resultados de la consulta al Sistema.
16 El Sistema muestra un mensaje
satisfactorio.
Postcondición: El Sistema elimina el Documento y muestra un
mensaje de eliminado con éxito.
excepciones Paso Acción
- Ninguno.
Rendimiento Paso Cota de tiempo
1...16  El promedio de la eliminación
dura 30 segundos.
Frecuencia Indefinida.
Comentarios Ninguno.

Tabla 3.12 Especificación de caso de uso Eliminar Documento.


Fuente: Propia

CU_09: Buscar Documento (Emitido-Recibido).


Versión: 1.0
Autor: Gutierrez Quispe Beyker Albert.
Descripción: Aquí se encuadra el servicio para buscar un
Documento (Emitido-Recibido).
Precondición: El Documento debe estar registrado.
Secuencia Paso Acción

59
Normal 1 El Empleado selecciona Documento –
Emitido – Consulta O Documento –
Emitido – Consulta, según sea el
caso.
2 El Sistema muestra las opciones de
búsqueda.
3 El Empleado selecciona la(s)
opción(es) e ingresa el criterio de
búsqueda.
4 El Sistema Genera la consulta para
buscar..
5 El Sistema entrega la consulta
generada a la Base de Datos.
6 La Base de Datos procesa la
consulta.
7 La Base de Datos entrega los
resultados de la consulta al Sistema.
8 El Sistema muestra los resultados al
Empleado.
9 El Empleado selecciona un resultado.
10 El Sistema Genera la consulta para
buscar más detalladamente.
11 El Sistema entrega la consulta
generada a la Base de Datos.
12 La Base de Datos procesa la
consulta.
13 La Base de Datos entrega los
resultados de la consulta al Sistema.
14 El Sistema genera una nueva ventana
donde aparece el formulario
Documento Emitido O Documento
Recibido, según sea el caso, con los
datos.
15 El sistema muestra la nueva venta al
empleado.
Postcondición: El Sistema muestra detalladamente los datos del
expediente.
excepciones Paso Acción
8’  El sistema no mostrara nada si
la base de datos no devuelve
resultados.
Rendimiento Paso Cota de tiempo
1...15 El promedio de la consulta dura 1 a 2
minutos.
Frecuencia Indefinida.
Comentarios Ninguno.

60
Tabla 3.13 Especificación de caso de uso Buscar Documento.
Fuente: Propia

3.3.2.3. DIAGRAMA DE ITERACIÓN:


 DIAGRAMA DE SECUENCIA:
A. CASO DE USO: BUSCAR USUARIO:

Figura 3.8 Diagrama de secuencia para el caso de uso Buscar usuario


Fuente: Propia
B. CASO DE USO: REGISTRAR USUARIO:

61
Figura 3.9 Diagrama de secuencia para el caso de uso Registrar usuario
Fuente: Propia

C. CASO DE USO: MODIFICAR USUARIO:

62
Figura 3.10 Diagrama de secuencia para el caso de uso Modificar usuario
Fuente: Propia

63
D. CASO DE USO: ELIMINAR USUARIO:

Figura 3.11 Diagrama de secuencia para el caso de uso Eliminar usuario


Fuente: Propia

64
E. CASO DE USO: BUSCAR DOCUMENTO:

Figura 3.12 Diagrama de secuencia para el caso de uso Registrar Documento


Fuente: Propia

65
F. CASO DE USO: MODIFICAR DOCUMENTO:

Figura 3.13 Diagrama de secuencia para el caso de uso Modificar documento


Fuente: Propia

66
G. CASO DE USO: ELIMINAR DOCUMENTO:

Figura 3.14 Diagrama de secuencia para el caso de uso Eliminar documento


Fuente: Propia

67
H. CASO DE USO: BUSCAR DOCUMENTO

Figura 3.15 Diagrama de secuencia para el caso de uso Buscar documento


Fuente: Propia

68
 DIAGRAMA DE COLABORACIÓN:
I. CASO DE USO: BUSCAR USUARIO:

Figura 3.16 Diagrama de colaboración para el caso de uso Buscar usuario


Fuente: Propia

69
J. CASO DE USO: REGISTRAR USUARIO:

Figura 3.17 Diagrama de colaboración para el caso de uso Registrar usuario


Fuente: Propia

70
K. CASO DE USO: MODIFICAR USUARIO:

Figura 3.18 Diagrama de colaboración para el caso de uso Modificar usuario


Fuente: Propia

71
L. CASO DE USO: ELIMINAR USUARIO:

Figura 3.19 Diagrama de colaboración para el caso de uso Eliminar usuario


Fuente: Propia

72
M. CASO DE USO: REGISTRAR DOCUMENTO:

Figura 3.20 Diagrama de colaboración para el caso de uso Registrar documento


Fuente: Propia

73
N. CASO DE USO: MODIFICAR DOCUMENTO:

Figura 3.21 Diagrama de colaboración para el caso de uso Modificar documento


Fuente: Propia

74
O. CASO DE USO: ELIMINAR DOCUMENTO:

Figura 3.22 Diagrama de colaboración para el caso de uso Eliminar documento


Fuente: Propia

75
P. CASO DE USO: BUSCAR DOCUMENTO:

Figura 3.23 Diagrama de colaboración para el caso de uso Buscar Documento


Fuente: Propia

76
3.4. MODELO CONCEPTUAL:
3.4.1. DIAGRAMA DE CLASES:

Figura 3.24 Diagrama de clases


Fuente: Propia

77
3.5. DISEÑO NAVEGACIONAL:
3.5.1. DIAGRAMA DE COMPONENTES:
A. ESTRUCTURA DEL SISTEMA:

Figura 3.25 Diagrama de componentes estructura del sistema


Fuente: Propia

78
3.5.1.1. MENÚ DEL ADMINISTRADOR:

Figura 3.26 Diagrama de componentes menú del administrador


Fuente: Propia

79
3.5.1.2. MENÚ DEL USUARIO:

Figura 3.27 Diagrama de componentes menú del usuario


Fuente: Propia

80
3.5.2. DIAGRAMA DE DESPLIEGUE:
A. DISTRIBUCIÓN FÍSICA DEL SISTEMA:

Figura 3.28 Diagrama de despliegue distribución física del sistema


Fuente: Propia

81
3.6. DISEÑO DE LA INTERFAZ ABSTRACTA:

Figura 3.29 Interfaz de Documento Emitido


Fuente: Propia

82
Figura 3.30 Interfaz de Documento Emitido
Fuente: Propia

83
Figura 3.31 Interfaz de Consulta Documento Emitido.
Fuente: Propia

84
Figura 3.32 Interfaz de Consulta Documento Remite.
Fuente: Propia

85
3.6.1. MODELO DE LA BASE DE DATOS:

Figura 3.33 Modelo de la Base de Datos


Fuente: Propia

86
3.7. IMPLEMENTACIÓN:
3.7.1. MIGRACIÓN DEL MODELO DE LA BASE DE DATOS EN
DBDESIGNER A MYSQL:
A. PROCESO DE EXPORTACION DEL DBDESIGNER:
1. Damos click en el menu File->Export->SQL créate Scrit

Figura 3.34 Selección de la opción de exportación en el menú


Fuente: Propia

2. En la ventana que aparece seleccionamos las


siguientes opciones:
 All Tables.
 Define Primary Keys.
 Create Indices.
 Output Table Options.
 Output Estándar Inserts.
y damos click en el botón Save Script to file.

87
Figura 3.35 Selección de las opciones para la exportación
Fuente: Propia

88
3. Seleccionamos la ubicación donde se guardara el
archivo bdsisdoc.sql, el cual contiene la consulta para
crear la base de datos, y damos click en el botón
Guardar.

Figura 3.36 Guardando el archivo con la consulta para la creación


Fuente: Propia

89
B. PROCESO DE IMPORTACIÓN AL MYSQL:

1. Desde el phpMyAdmin, creamos una Base de Datos


con el nombre “BDSISCOD” y presionamos Crear

Figura 3.37 Ventana phpMyAdmin de creación de Base de Datos


Fuente: Propia

90
2. Luego seleccionamos la opción Importar y luego
Examinar_, para abrir el archivo generado con la
exportación del DBDesigner.

Figura 3.50: Búsqueda del Archivo exportado en phpMyAdmin.


Fuente: Propia

91
3. Después presionamos el botón Continuar.

Figura 3.51: Ventana phpMyAdmin con el archivo encontrado.


Fuente: Propia

92
4. Listo, ya contamos con nuestra Base datos en mysql, y
listo para interactuar con PHP.

Figura 3.38 Ventana phpMyAdmin con mensaje de ejecución con éxito.


Fuente: Propia

93
Figura 3.52: Ventana MyAdmin con la Base de Datos ya importado.
Fuente: Propia

94
3.7.2. CODIGO DE CONEXIÓN A LA BASE DE DATOS CON PHP:

Figura 3.39 Código de la clase para la conexión con la base de datos


Fuente: Propia

95
CAPÍTULO IV
RESULTADOS DE LA
PRÁCTICA REALIZADA

96
CAPÍTULO IV

4 RESULTADOS DE LA PRÁCTICA REALIZADA:

En este capítulo se realizará la descripción del Sistema de Control


Documentario.

Figura 4.1 Página Principal


Fuente: Propia

 El sistema de Control Documentario cuenta con un menú, el cual se


encuentra en la parte superior y permanente en los formularios de
registro y consulta de documentos, solo para VISITANTES.
 Ya que el menú se modifica cuando se inicia sesión, apareciendo más
opciones de acuerdo a los permisos que tiene el empleado.

97
Figura 4.2 Menú del Sistema.
Fuente: Propia.

4.1. ADMINISTRADOR:
El administrador tiene todas las opciones del sistema. Para el acceso al
sistema de Control Documentario se tiene que ingresar el usuario y
password, el cual es:

Usuario : BEYKER
Password : 123

Figura 4.3 Inicio del Sistema.


Fuente: Propia

98
Luego de iniciar sesión con la cuenta del ADMINISTRADOR, el menú
que aparece por defecto varía apareciendo más opciones en la barra
de menú, la misma que se puede observar a continuación.

Figura 4.4 Menú del Administrador.


Fuente: Propia.

99
4.1.1. DOCUMENTO EMITIDO:

Permite el mantenimiento y búsqueda de los documentos


emitidos.

Para registrar los documentos emitidos es necesario llenar


obligatoriamente los campos del formulario que tienen asterisco.

Figura 4.5 Ventana de mantenimiento de Documento Emitido.


Fuente: Propia

 En el formulario búsqueda del documento emitido, se tiene las opciones


de buscar el documento emitido por: año, sede, número de documento,
tipo de documento, área, etc, la misma consulta que nos ayuda para
minimizar el tiempo de la búsqueda.

100
Figura 4.6 Formulario de Búsqueda de Documento Emitido.
Fuente: Propia

101
 Luego de haber realizado la consulta del documento emitido, se tiene la
opción de exportar los datos a Microsoft Excel.

Figura 4.7 Exportando los Datos de la búsqueda a Microsoft Excel.


Fuente: Propia

102
Figura 4.8 Datos Exportados a Excel.
Fuente: Propia

103
 Si aun resultado se da click en la columna ver más (+), nos mostrara una
nueva ventana con el formulario de mantenimiento del documento
emitido, en donde aparece los datos del documento en consulta.

Figura 4.9 Detalle de la Consulta de documento emitido.


Fuente: Propia

104
4.1.2. DOCUMENTO RECIBIDO:

Permite el mantenimiento y búsqueda de los documentos


recibidos.
Para registrar los documentos recibidos es necesario llenar
obligatoriamente los campos del formulario que tienen asterisco.

Figura 4.10 Ventana de mantenimiento de Documento Recibido.


Fuente: Propia

105
 En el formulario búsqueda del documento recibido, se tiene las opciones
de buscar el documento recibido por: remite, año, sede, número de
registro, número de documento, tipo de documento, área, etc, la misma
consulta que nos ayuda para minimizar el tiempo de la búsqueda.

Figura 4.11 Formulario de Búsqueda de Documento Recibido.


Fuente: Propia

106
 Luego de haber realizado la consulta del documento recibido, se tiene
la opción de exportar los datos a Microsoft Excel.

Figura 4.12 Exportando los Datos de la búsqueda a Microsoft Excel.


Fuente: Propia

107
Figura 4.13 Datos Exportados a Excel.
Fuente: Propia

108
 Si aun resultado se da click en la columna ver más (+), nos mostrara una
nueva ventana con el formulario de mantenimiento del documento
recibido, en donde aparece los datos del documento en consulta.

Figura 4.14 Detalle de la Consulta de documento recibido.


Fuente: Propia

109
4.1.3. ÁREA:
Permite administrar y buscar el área.

Figura 4.15 Ventana de la opción Área.


Fuente: Propia

110
4.1.4. ESCUELA:
Permite administrar y buscar la Escuela Profesional.

Figura 4.16 Ventana de la opción Escuela


Fuente: Propia

111
4.1.5. FACULTAD:
Permite administrar y buscar la Facultad.

Figura 4.17 Ventana de la opción Facultad.


Fuente: Propia

112
4.1.6. PERSONA:

Permite administrar y buscar la persona.

Figura 4.18 Ventana de la opción Facultad.


Fuente: Propia

113
4.1.7. AÑO:
Permite administrar y buscar el año.

Figura 4.19 Ventana de la opción Año.


Fuente: Propia.

114
4.1.8. SEDE:
Permite administrar y buscar la sede.

Figura 4.20 Ventana de la opción Año.


Fuente: Propia.

115
4.1.9. GRADO:
Permite administrar y buscar el grado.

Figura 4.21 Ventana de la opción Año.


Fuente: Propia.

116
4.1.10. USUARIO:
Permite administrar y buscar los usuarios.

Figura 4.22 Ventana de la opción Usuario.


Fuente: Propia.

117
4.1.11. TIPO USUARIO:
Permite administrar y buscar los tipos de usuario.

Figura 4.23 Ventana de la opción Tipo Usuario.


Fuente: Propia.

118
4.1.12. TIPO DOCUMENTO:
Permite administrar y buscar los tipos de documentos.

Figura 4.24 Ventana de la opción Tipo Documento.


Fuente: Propia.

119
4.1.13. TIPO REFERENCIA:
Permite administrar y buscar los tipos de referencias.

Figura 4.25 Ventana de la opción Tipo Referencia.


Fuente: Propia.

120
4.1.14. ESTADO DEL DOCUMENTO:
Permite administrar y buscar el estado del documento.

Figura 4.26 Ventana de la opción Estado del Documento.


Fuente: Propia.

121
4.1.15. ORIGEN:
Permite administrar y buscar el origen del documento.

Figura 4.27 Ventana de la opción Origen del Documento.


Fuente: Propia.

122
4.1.16. USUARIO:

El usuario solo tiene algunas de las opciones del sistema.

Figura 4.28 Inicio del Usuario al Sistema.


Fuente: Propia.

 Al ingresar al sistema como usuario se tiene las opciones del menú a


registrar y realizar consultas de documentos recibidos y emitidos.

Figura 4.29 Menú del Usuario.


Fuente: Propia.

123
CAPÍTULO V
CONCLUSIONES Y
SUGERENCIAS

124
CAPÍTULO V

5 CONCLUSIONES Y SUGERENCIAS:

5.1. CONCLUSIONES:

 Se logró desarrollar el Sistema Web de Control Documentario, con el


que se obtuvo resultados positivos, reduciéndose así el tiempo de
búsqueda de información sobre los documentos recibidos e
información de respuesta de documentos emitidos brindando así una
mejor gestión administrativa a los estudiantes.

 El resultado de un análisis riguroso sobre los procesos de la


documentación y con el uso de tecnologías web, permitió crear una
base de datos de los procesos realizados y así se consiguió minimizar
tiempos de búsqueda y una mejor organización con los documentos
recibidos y emitidos.

 Se realizó la configuración del sistema de comunicaciones remotas


de acuerdo al diseño establecido para el sistema web de control
documentario que permitirá la disminución de tiempo en la gestión de
información y logrará también poner la información al alcance de todo
el personal de la oficina.

 La metodología OOHDM, permitió el desarrollo de la aplicación web


junto con la utilización de sus cuatro etapas a desarrollar.

 El uso del lenguaje de programación PHP, es el más adecuado para


el desarrollo de un sistema Web ya que este lenguaje es muy utilizado
con las bases de datos MySql, además que MySql es un software
libre.

125
5.2. RECOMENDACIONES:

 Evaluar constantemente el sistema para detectar las nuevas


necesidades y/o requerimientos que se presenten para
posteriormente actualizar el sistema.

 Utilizando técnicas para análisis se logra obtener una adecuada


imagen de los procesos que se realiza en la oficina para así tener un
mejor entendimiento de lo que se quiere lograr en el sistema.

 Haciendo que la información sea accesible para todos los miembros


de la oficina, se logra la disminución del tiempo en el desarrollo de
cada una de sus actividades; es por ello que todo sistema de consulta
es de vital importancia en toda organización.

 Se recomienda la utilización de la metodología OOHDM, ya que es un


método para desarrollar aplicaciones web.

 El lenguaje que se recomienda utilizar para desarrollar un sistema


web es el lenguaje de programación PHP, el mismo que sirve para
manejar base de datos, y también para controlar la información que
llega desde el usuario.

126
CAPÍTULO VI
BIBLIOGRAFIA

127
CAPÍTULO VI

6 BIBLIOGRAFIA:

 LIBROS IMPRESOS:

 Vázquez Mollo Virginia, Molina Cáceres Juan José, Ríos López Cecilia
(2004), Metodología de Objetos UML y RUP, I Edición, Universidad José
Carlos Mariátegui, 507 páginas, Perú, Pág. 3 al 45, 50 al 85.

 Burch Jhon G. - Grudnitski,Gary (2007) “Diseño de Sistemas de


Información”, Wesley Iberoamericana, S.A. Quinta Edición. cita Pág. 23,
U.S.A.

 Roger S. Presuman (2007), Ingeniería de Software un enfoque, 5ª


Edición, Colombia, Pág. 20, 50,75.

 Roger Pressman. Ingeniería de Software un enfoque práctico. Quinta


Edición. McGRAW-HILL. 2002. pp. 25, 166, 132, 324-325, 524-526, 499.

 Sergio Matsukawa Maeda (2004), Análisis y Diseño Orientados a Objetos


con UML y Rational Rose, 1ra Edición: Diciembre 2004, Empresa Editora
Macro E.I.R.L., Perú, Pág. 20 al 80.

 Xavier Ferré Grau - María Isabel Sánchez, (2007), Desarrollo Orientado


a Objetos con UML, II Edición, S. Editorial, Pág. 5 al 25.

 LIBROS DIGITALES:

 GÓMEZ A. (2004), “Metodología de Desarrollo lo de Aplicaciones Web”,


Disponible en: agomez@micorp.com.ve, [descargado].

128
 Autor: Xavier Ferré Grau - María Isabel Sánchez Segura (2004), Lenguaje
Unificado de Modelado, España, disponible en:
http://www.clikear.com/manuales/uml, [web en línea].

 Curso Visual de Computación, Alberto Martínez De Arredondo (2000).


Lexus Editores S.A.

 Lars Torben (2004), “Manual de PHP 4”, Disponible en:


http://www.php.net/docs.php, [descargado].

 DIRECCIONES ELECTRÓNICAS:

 WIKIPEDIA (2007), “PHPMYADMIN”, Disponible en:


http://es.wikipedia.org/wiki/phpmyadmin, [web en línea].

 TUTORIAL DE PHP, Autor: Javier García Castellano, Disponible en:


http://flanagan.ugr.es/php/index2.htm, [web en línea].

 WIKIPEDIA (2007), “APACHE”, Disponible en:


http://es.wikipedia.org/wiki/servidor_http_apache, [web en línea].

 DEFINICIÓN Y USO DE CLASES EN PHP, Disponible en:


http://www.webtaller.com/construccion/lenguajes/php/lecciones/de finicion-
uso-clases-php.php, [web en línea].

 MODELO OOHDM, Disponible en:


http://www.hipertexto.info/documentos/oohdm.htm, [web en línea].

 METODOLOGÍAS WEB OOHDM, Disponible en:


http://es.scribd.com/doc/55661469/OOHDM, [web en línea].

 INGENIERÍA DE SOFTWARE UML, Disponible en:


http://www.monografias.com/trabajos5/insof/insof.shtml, [web en línea].

129
 WIKIPEDIA PHP, Disponible en: http://es.wikipedia.org/wiki/PHP, [web en
línea].

130
CAPÍTULO VII
ANEXOS

131
CAPÍTULO VII

7 ANEXOS:

7.1. CÓDIGO FUENTE:

 PÁGINA DE INICIO:

 Index.php

<?php
session_start();
if ($_SESSION['autenticado']=='SI')
{
$nombres=$_SESSION['usuario'];
$cargo=$_SESSION['cargo'];
// $idAdministrador=$_SESSION['idAdministrado'];
$BV="<span>".strtoupper("$nombres")." ($cargo)"." <a
target='gutierrez' href='public/w.php' class='leo' >Cerrar Sesion
</a></span>";

}
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<title>Sistema de Control Documentario- SISCOD</title>


<meta name="Universidad Jose Carlos Mariategui"
content="sisdoc,contactenos">
<meta name="keywords" content="UJCM, Universidad,
Mariategui, sisdoc">
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">
<link rel="stylesheet" type="text/css"
href="public/css/estilos.css">
<script type="text/javascript"
src="public/js/codigo.js"></script>
<script
type="text/javascript"src="public/js/jquery.js"></script><meta http-
equiv="content-type" content="application/xhtml+xml;
charset=UTF-8">
<link rel="stylesheet" type="text/css" media="screen"
href="public/css/layout1.css">
<link rel="stylesheet" type="text/css" media="screen"
href="public/css/stack-example3.css">
<link href="public/css/dropdown/dropdown.css" media="all"
rel="stylesheet" type="text/css" />

132
<link
href="public/css/dropdown/themes/nvidia.com/default.advanced.cs
s" media="all" rel="stylesheet" type="text/css" />
<script type="text/javascript"
src="public/js/swfobject.js"></script>
<noscript>
<style type="text/css">
#dock { top: -32px; }
a.dock-item { position: relative; float: left;
margin-right: 10px; }
.dock-item span { display: block; }
.stack { top: 0; }
.stack ul li { position: relative; }
</style>
</noscript>
<script type="text/javascript"
src="public/js/jquery.min.js"></script>
<script type="text/javascript" src="public/js/fisheyeiutil.
min.js"></script>
<script type="text/javascript" src="public/js/dock
example1.js"></script>
<script type="text/javascript" src="public/js/stack-
1.js"></script>
<script>
function ajustar(){
var altura =
window.frames['gutierrez'].document.body.scrollHeight;// Obtengo
altura del documento
document.getElementById('gutierrez').height =
altura+400;// Cambio altura de iframe
}
</script>
</head>
<body
onload="menuSlider.init('menucabecera','menucabeceraslide')"
bgcolor="#ffffff" onresize="ajustar()">
<table border='0' id="ujcmhead" align="center" cellpadding="0"
cellspacing="0" width="860">
<tbody>
<tr>
<td width="95" bgcolor="#DEE7F7">
</td>
<td height="31" bgcolor="#DEE7F7"></td>
<td align="right" bgcolor="#DEE7F7"><script
type="text/javascript">fecha();</script><span
id="fecha"></span></td>
</tr>
<tr>
<td colspan='3'>
<div id="header">

133
<div style="color:blue; font: 20px Broadway BT;">
<CENTER>
<P style="color:red; font: 35px Broadway
BT;">SISTEMA DE CONTROL DOCUMENTARIO</P>
<P style="color:blue; font: 20px Britannic
Bold;">"UNIVERSIDAD JOSÉ CARLOS MARIÁTEGUI"</P>
<H1></H1>
</CENTER>
</div>
<h1>
<table width="860">
<tr><td width="180">
<img src="public/img/logo.png" alt="SISCOD" width="70" />
SISCOD
</td><td align="CENTER" style="color:#81BE18; font: 20px Comic
Sans MS;">OSAERC</BR> PRE-GRADO
</td><td width="180" align="right">
<img src="public/img/ujcm.gif" width="70"/>
</td></tr>
</h1>

<table width="860">
<tr><td>
<ul class="dropdown dropdown-horizontal">
<li>
<a href="./" class="dir">Inicio</a>
</li>

<?php
if ($_SESSION['autenticado']=='SI')
{
switch($_SESSION['cargo']){
case 'USUARIO':
require_once ('public/menu/menuUser.php');
break;
case 'ADMINISTRADOR':
require_once
('public/menu/menuAdmin.php');
break;
}
}else{
?>
<li>
<a href="presentacion/FrmLogin.php" target='gutierrez'
class="dir">Ingresar</a>
</li>
<li><a href="./" class="dir">Consulta</a>
<ul>
<li><a href="presentacion/FrmConsultaEmitido.php"
target='gutierrez'>Documento Emitido</a></li>

134
<li><a
href="presentacion/FrmConsultaRecibido.php"
target='gutierrez'>Documento Recibido</a></li>
</ul>
</li>
<?php
}
?>
<li>
<a href="public/manual.pdf" target='gutierrez'
class="dir">Manual</a>
</li>
<li>
<a href="public/acerca.php" target='gutierrez'
class="dir">Acerca de..</a>
</li>
</ul>
</td>
<td><div style="font-size: 9;">
Programaddr: Bach. Beyker Albert Gutierrez
Quispe.</br>E-mail: beyker_gutierre@hdtmail.cdm
</div>
</td>
</tr>

<tr><td colspan='2' bgcolor="#E7EBF7"><div id="session">


<?php echo "</br>"; ?>
</div></td>
</tr>
</table>
</div><?php echo $BV."</br>"; ?>
</td>
</tr>
<tr>
<td colspan="3">
<div id="ini">
<?php include
"presentacion/FrmLogin.php"; ?>
</div>
<iframe src="" frameborder="0"
marginheight="0" marginwidth="0" scrolling="no"
width="100%" id="gutierrez" name="gutierrez"
onload="ajustar();">
</iframe>
</td>
</tr>
</tbody>
</table>
<div id="contenidos">
<table border="0" cellpadding="0" cellspacing="0">

135
<tbody>
<tr>
<td><img src="public/img/spacer.gif" alt=""
border="0" height="1" width="12"></td>
</tr>
<tr>
<td rowspan="7" colspan="4">
<td><img src="public/img/spacer.gif" alt=""
border="0" height="77" width="1"></td>
</tr>
</tbody>
</table>

</div>
<?php
if ($_SESSION['autenticado']=='SI')
{
switch($_SESSION['cargo']){
case 'USUARIO':
require_once ('public/menu/menuUser.php');
break;
case 'ADMINISTRADOR':
require_once
('public/menu/menuAdmin.php');
break;
}
?>
<?php
}
?>
<center>
<table border='0' cellpadding="0" cellspacing="0" width="860">
<tr>
<td bgcolor="#DEE7F7" width='100%'
height='10'></td>
</tr>
<tr>
<td colspan="3" background="public/partes_r25_c4.jpg">
<strong>SISCOD © 2011</strong><br>
Prdgramaddr: Bach. Beyker Albert Gutierrez Quispe.</br>
E-mail: beyker_gutierre@hdtmail.cdm
<br><br>
</td>
<tr>
</table>
</center>
<script src="index.js" type="text/javascript"></script>
</body></html>

136
 Index.js:
$('.leo').click(function(){
$.ajax({
type: "POST",
url: "presentacion/CSession.php",
data: "boton=cerrar",
success: function(html)
{
$('#session').html(html);
}
})
});

 CLASE CONEXIÓN:
 Conexión.php:
<?php
class conexion
{
var $server="localhost";
var $user="root";
var $pass="";
var $bd="BDSISCOD";
public $conn;
function conectar()
{
$this->conn=new mysqli($this->server,$this-
>user,$this->pass,$this->bd);
}
function cerrar()
{
$this->conn->close();
}
}
?>

 FORMULARIO DOCUMENTO RECIBIDO:


 FrmDocumentoRecibido.php:
<?php
session_start();
if ($_SESSION['autenticado']=='SI')
{
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">
<title>DocumentoRecibido</title>

137
<script src="../public/js/jquery.js"
type="text/javascript"></script>
<script src="../public/js/jquery.validate.js"
type="text/javascript"></script>
<script src="../public/js/tab.js" type="text/javascript"
></script>
<link href="../public/css/insidestyle.css" rel="stylesheet"
type="text/css"/>
<style>
.dropdownEffect
{
width: 170px;
}
table.tmin th {
border-width: 1px;
border-style: solid;
border-color: #a9c6c9;
padding: 0px 0px 0px 0px;
margin:0;
width:180:
line-height: 1.2em;
font-size: 12px;
background-color:#3F6DA7;
color:white;
}
.campo{
color:white;
}
</style>

</head>
<body BGCOLOR="#4C4C4C">
<center>
<P class="ftitle">DOCUMENTO RECIBIDO</P>
<form id="registro" name="registro" action="">
<div id="warning"></div>
<table border='1' class='ctb'>
<tr>
<td colspan="2" >
<table class='ctb' width="100%">
<tr>
<th>Creado</th>
<td width="50%"><div id="loginC"></div></td>
<th>Modificado</th>
<td width="50%"><div id="loginM"></div></td>
</tr>
<tr>
<th>Fecha</th>
<td><div id="fechaC"></div></td>
<th>Fecha</th>

138
<td><div id="fechaM"></div></td>
</tr>
</table>
</td >
</tr>
<tr>
<td WIDTH='340'>
<table>
<tr>
<th colspan="2"><table border='1' class="tmin"
width="100%">
<tr>
<th width="25%"><div
id="primero"><img src="../public/img/first.png"
width="30"></div></th>
<th width="25%"><div
id="anterior"><img src="../public/img/previous.png"
width="30"></div></th>
<th width="25%"><div
id="siguiente"><img src="../public/img/next.png"
width="30"></div></th>
<th width="25%"><div
id="ultimo"><img src="../public/img/last.png"
width="30"></div></th>
</tr>
</table>
</th>
</tr>
<tr>
<th><label class="campo">Id</label></th>
<td><input type="text" name="id" id="id" value='' size="18"
class='textboxEffect'/>
<input type="button" id="boton"
name="boton" value="Buscar" class="submitbutton"/>
<input type="hidden" name="nwarning"
id="nwarning" class='textboxEffect'/>
</td>
</tr>
<tr>
<th><label class="campo"># Registro</label></th>
<td><input type="text" id="nRegistro"
name="nRegistro" class="textboxEffect"/>
<span class="required">*</span>
</td>
</tr>
<tr>
<th><label class="campo">TipoDocumento</label></th>
<td><div id="tipoDocumento">
<select name='idTipoDocumento'
id='idTipoDocumento' class='dropdownEffect'>

139
<option value='-1'>Selecciona
una Tipo de Documento...</option>
</select>
</div>
<span class="required">*</span>
</td>
</tr>
<tr>
<th><label class="campo"># Documento</label></th>
<td><input type="text" id="nDocumento"
name="nDocumento" class="textboxEffect"/>
</td>
</tr>
<tr>
<th><label class="campo">Remite</label></th>
<td><div id="pRemite">
<select name='idRemite'
id='idRemite' class='dropdownEffect'>
<option value='-1'>Selecciona
una Persona...</option>
</select>
</div>
<span class="required">*</span>
</td>
</tr>
<tr>
<th><label class="campo">Asunto</label></th>
<td><input type="text" id="asunto" name="asunto"
class="textboxEffect"/>
</td>
</tr>
<tr>
<th><label class="campo">Origen</label></th>
<td><div id="origen">
<select name='idOrigen' id='idOrigen'
class='dropdownEffect'>
<option value='-1'>Selecciona
una Origen...</option>
</select>
</div>
<span class="required">*</span>
</td>
</tr>
<tr>
<th><label class="campo">Area</label></th>
<td><div id="area">
<select name='idArea' id='idArea'
class='dropdownEffect'>
<option value='-1'>Selecciona
una Area...</option>

140
</select>
</div>
</td>
</tr>
<tr>
<th><label class="campo">Sede</label></th>
<td><div id="sede">
<select name='idSede' id='idSede'
class='dropdownEffect'>
<option value='-1'>Selecciona
una Año...</option>
</select>
</div>
</td>
</tr>
<tr>
<th><label class="campo">Recibe</label></th>
<td><div id="recibe">
<select name='idRecibe'
id='idRecibe' class='dropdownEffect'>
<option value='-1'>Selecciona
una Usuario...</option>
</select>
</div>
<span class="required">*</span>
</td>
</tr>
<tr>
<th><label class="campo">Recoge</label></th>
<td><div id="pRecoge">
<select name='idRecoge'
id='idRecoge' class='dropdownEffect'>
<option value='-1'>Selecciona
una Persona...</option>
</select>
</div>
</td>
</tr>
<tr>
<th><label class="campo">AreaDerivada</label></th>
<td><div id="areaDerivada">
<select name='idArea' id='idArea'
class='dropdownEffect'>
<option value='-1'>Selecciona
una Area...</option>
</select>
</div>
</td>
</tr>
<tr>

141
<th><label class="campo">Estado</label></th>
<td><div id="estado">
<select name='idEstado'
id='idEstado' class='dropdownEffect'>
<option value='-1'>Selecciona
un Estado...</option>
</select>
</div>
<span class="required">*</span>
</td>
</tr>
<tr>
<th><label class="campo">Año</label></th>
<td><div id="anyo">
<select name='idAnyo' id='idAnyo'
class='dropdownEffect'>
<option value='-1'>Selecciona
un Año...</option>
</select>
</div>
<span class="required">*</span>
</td>
</tr>
<tr>
<th><label class="campo">Remite</label></th>
<td><input type="text" id="remite" name="remite"
class="textboxEffect"/>
</td>
</tr>
<tr>
<th><label class="campo">F. Recepcion</label></th>
<td><input type="text" id="fechaRecepcion"
name="fechaRecepcion" class="textboxEffect"/>
</td>
</tr>
<tr>
<th><label class="campo">F. Entrega</label></th>
<td><input type="text" id="fechaEntrega"
name="fechaEntrega" class="textboxEffect"/>
</td>
</tr>
<tr>
<th><label class="campo">Observacion</label></th>
<td><textarea id="observacion" name="observacion"
class="textareaEffect" cols="15" rows="1"></textarea>
</td>
</table>
</td>
</tr>
</table>

142
<table>
<tr>
<th>
<input type="button" id="boton" name="boton" value="Nuevo"
class="submitbutton"/>
<input type="button" id="boton" name="boton"
value="Guardar" class="submitbutton"/>
<input type="button" id="boton" name="boton"
value="Actualizar" class="submitbutton"/>
<input type="button" id="boton" name="boton"
value="Eliminar" class="submitbutton"/>
</th>
</tr>
<tr>
<th><div id="msg"></div></th>
</tr>
<tr>
<th><div id="listado"></div></th>
</tr>
</table>
</form>
</center>
<script src="FrmDocumentoRecibido.js"
type="text/javascript"></script>
<script src="../public/js/efectos.js"
type="text/javascript"></script>
</body>
</html>
<?php
}else{
echo "no tienes permiso para ver esto";
}
?>

 FrmDocumentoRecibido.js:
$(document).ready(function(){
// $('#oTitulo').hide();
// $('#oCertificado').hide();
cargarTipoDocumento();//Carga el select de
TipoDocumento
cargarRemite();//Carga el select de Remite
cargarOrigen();//Carga el select de TipoOrigen
cargarArea();//Carga el select de Area
cargarSede();//Carga el select de Sede
cargarRecibe();//Carga el select de Recibe
cargarRecoge();//Carga el select de Recoge
cargarAreaDerivada() //Carga el select de AreaDerivada
cargarEstado() //Carga el select de Estado
cargarAnyo() //Carga el select de Anyo
comprobar();

143
})
function comprobar(){
$.validator.addMethod("posit",function(value,element,regex
p){
var re= new RegExp(regexp);
return this.optional(element) || re.test(value);
},"Campo obligatorio");
$("#registro").validate({
rules:{
idTipoDocumento:{
required:true,
posit:"^[0-9]+$"
},
idRemite:{
required:true,
posit:"^[0-9]+$"
},
idOrigen:{
required:true,
posit:"^[0-9]+$"
},
idRecibe:{
required:true,
},
idEstado:{
required:true,
posit:"^[0-9]+$"
},
idAnyo:{
required:true,
posit:"^[0-9]+$"
},
nRegistro:{
posit:"^[0-9]+$"
}
},
messages:{
idTipoDocumento:{
required:"Campo obligatorio"
},
idRemite:{
required:"Campo obligatorio"
},
idOrigen:{
required:"Campo obligatorio"
},
idRecibe:{
required:"Campo obligatorio"
},
idEstado:{

144
required:"Campo obligatorio"
},
idAnyo:{
required:"Campo obligatorio"
},
nRegistro:{
posit:"Solo digitos"
}
},
showErrors: function(errorMap, errorList) {
$("#warning").html("Tu formulario contiene " +
this.numberOfInvalids() + " error(es).");
$("#nwarning").val(this.numberOfInvalids());
this.defaultShowErrors();
},
debug: false,
errorContainer: $("#warning"),
success: function(label){
label.text("ok!").addClass("success");
},
submitHandler:function(){
alert("Los datos han sido enviados");
}
});
}
function cargarTipoDocumento()
{
$.ajax({
type: "POST",
url: "CTipoDocumento.php",
data: "boton=cargarSelect",
success: function(html)
{
$("#tipoDocumento").html(html);
}
});
}
function cargarRemite()
{
$.ajax({
type: "POST",
url: "CPersona.php",
data: "boton=cargarSelect",
success: function(html)
{
$("#pRemite").html(html);
}
});
}
function cargarOrigen()

145
{
$.ajax({
type: "POST",
url: "COrigen.php",
data: "boton=cargarSelect",
success: function(html)
{
$("#origen").html(html);
}
});
}
function cargarArea()
{
$.ajax({
type: "POST",
url: "CArea.php",
data: "boton=cargarSelect",
success: function(html)
{
$("#area").html(html);
}
});
}
function cargarSede()
{
$.ajax({
type: "POST",
url: "CSede.php",
data: "boton=cargarSelect",
success: function(html)
{
$("#sede").html(html);
}
});
}
function cargarRecibe()
{
$.ajax({
type: "POST",
url: "CUsuario.php",
data: "boton=cargarSelect",
success: function(html)
{
$("#recibe").html(html);
}
});
}
function cargarRecoge()
{
$.ajax({

146
type: "POST",
url: "CPersona.php",
data: "boton=cargarSelect2",
success: function(html)
{
$("#pRecoge").html(html);
}
});
}
function cargarAreaDerivada()
{
$.ajax({
type: "POST",
url: "CArea.php",
data: "boton=cargarSelect2",
success: function(html)
{
$("#areaDerivada").html(html);
}
});
}
function cargarEstado()
{
$.ajax({
type: "POST",
url: "CEstado.php",
data: "boton=cargarSelect",
success: function(html)
{
$("#estado").html(html);
}
});
}
function cargarAnyo()
{
$.ajax({
type: "POST",
url: "CAnyo.php",
data: "boton=cargarSelect",
success: function(html)
{
$("#anyo").html(html);
}
});
}
$(":button").click(function()
{
var war="";
var id = $('#id').val();
var idTipoDocumento = $('#idTipoDocumento').val();

147
var idRemite = $('#idRemite').val();
var idOrigen= $('#idOrigen').val();
var idArea= $('#idArea').val();
var idSede = $('#idSede').val();
var idRecibe = $('#idRecibe').val();
var idRecoge = $('#idRecoge').val();
var idAreaDerivada = $('#idAreaDerivada').val();
var idEstado = $('#idEstado').val();
var idAnyo = $('#idAnyo').val();
var nRegistro = $('#nRegistro').val();
var nDocumento = $('#nDocumento').val();
var remite = $('#remite').val();
var asunto = $('#asunto').val();
var fechaRecepcion = $('#fechaRecepcion').val();
var fechaEntrega = $('#fechaEntrega').val();
var observacion = $('#observacion').val();
var boton=$(this).val();
var war="";
switch(boton)
{
case 'Buscar':
data="campo=dr.id"+"&operador=="+"&valor="+id+
"&boton="+boton;
div="#listado";
break;
case 'Guardar':
$("form:first").submit();
war=$("#nwarning").val();
data="id="+id+"&idTipoDocumento="+idTipoDocumen
to+"&
idRemite="+idRemite+
"&idOrigen="+idOrigen+"&idArea="+idArea+"&idSede
="+id
Sede+"&idRecibe="+idRecibe+
"&idRecoge="+idRecoge+"&idAreaDerivada="+idArea
Deriv
ada+"&idEstado="+idEstado+
"&idAnyo="+idAnyo+"&nRegistro="+nRegistro+"&nDo
cume
nto="+nDocumento+"&remite="+remite+
"&asunto="+asunto+"&fechaRecepcion="+fechaRece
pcion
+"&fechaEntrega="+fechaEntrega+
"&observacion="+observacion+
"&boton="+boton;
div="#msg";
break;
case 'Actualizar':
$("form:first").submit();
war=$("#nwarning").val();

148
data="id="+id+"&idTipoDocumento="+idTipoDocumen
to+"&
idRemite="+idRemite+
"&idOrigen="+idOrigen+"&idArea="+idArea+"&idSede
="+id
Sede+"&idRecibe="+idRecibe+
"&idRecoge="+idRecoge+"&idAreaDerivada="+idArea
Deriv
ada+"&idEstado="+idEstado+
"&idAnyo="+idAnyo+"&nRegistro="+nRegistro+"&nDo
cume
nto="+nDocumento+"&remite="+remite+
"&asunto="+asunto+"&fechaRecepcion="+fechaRece
pcion
+"&fechaEntrega="+fechaEntrega+
"&observacion="+observacion+
"&boton="+boton;
div="#msg";
break;
case 'Eliminar':
data="id="+id+"&boton="+boton;
div="#msg";
break;
case 'Nuevo':
limpiar();
exit;
}
if(war>0){
exit;
}
$.ajax({
type: "POST",
url: "CDocumentoRecibido.php",
data: data,
success: function(html)
{
$(div).html(html);
}
});
/*
if(boton==='Actualizar'){
$.ajax({
type: "POST",
url: "CDocumentoRecibido.php",
data="campo=dr.id"+"&operador=="+"&valor="+id+
"&boton=Buscar",
success: function(html)
{
$("#listado").html(html);
}

149
});
}
*/
});
function limpiar()
{
$('#msg').html('');
$('#id').val("");
$('#idTipoDocumento').val("");
$('#idRemite').val("");
$('#idOrigen').val("");
$('#idArea').val("");
$('#idSede').val("");
$('#idRecibe').val("");
$('#idRecoge').val("");
$('#idAreaDerivada').val("");
$('#idEstado').val("");
$('#idAnyo').val("");
$('#nRegistro').val("");
$('#nDocumento').val("");
$('#remite').val("");
$('#asunto').val("");
$('#fechaRecepcion').val("");
$('#fechaEntrega').val("");
$('#observacion').val("");
}
function llenarCampos(id,idTipoDocumento,idRemite,idOrigen,
idArea,idSede,idRecibe,idRecoge,idAreaDerivada,idEstado,
idAnyo,nRegistro,nDocumento,remite,asunto,fechaRecepcion,fech
aEntrega,observacion,
loginC,fechaC,loginM,fechaM)
{
alert("Registro #: "+nRegistro);
$('#id').val(id);
$('#idTipoDocumento').val(idTipoDocumento);
$('#idRemite').val(idRemite);
$('#idOrigen').val(idOrigen);
$('#idArea').val(idArea);
$('#idSede').val(idSede);
$('#idRecibe').val(idRecibe);
$('#idRecoge').val(idRecoge);
$('#idAreaDerivada').val(idAreaDerivada);
$('#idEstado').val(idEstado);
$('#idAnyo').val(idAnyo);
$('#nRegistro').val(nRegistro);
$('#nDocumento').val(nDocumento);
$('#remite').val(remite);
$('#asunto').val(asunto);
$('#fechaRecepcion').val(fechaRecepcion);
$('#fechaEntrega').val(fechaEntrega);

150
$('#observacion').val(observacion);
$('#loginC').html(loginC);
$('#fechaC').html(fechaC);
$('#loginM').html(loginM);
$('#fechaM').html(fechaM);
}
$('#primero').click(function()
{
$('#msg').html('');
data="campo=dr.id"+"&operador=="+"&boton=Buscar
&opci
on=primero";
$.ajax({
type: "POST",
url: "CDocumentoRecibido.php",
data: data,
success: function(html)
{
$("#listado").html(html);
}
});
});
$('#ultimo').click(function()
{
$('#msg').html('');
data="campo=dr.id"+"&operador=="+"&boton=Buscar
&opci
on=ultimo";
$.ajax({
type: "POST",
url: "CDocumentoRecibido.php",
data: data,
success: function(html)
{
$("#listado").html(html);
}
});
});
$('#siguiente').click(function()
{
$('#msg').html('');
var id = $('#id').val();
if(id===''){
alert('El Campo Id no puede estar vacio');
}else{
data="campo=dr.id"+"&operador=="+"&id="+id+"&bot
on=B
uscar&opcion=siguiente";
$.ajax({
type: "POST",

151
url: "CDocumentoRecibido.php",
data: data,
success: function(html)
{
$("#listado").html(html);
}
});
}
});
$('#anterior').click(function()
{
$('#msg').html('');
var id = $('#id').val();
if(id===''){
alert('El Campo Id no puede estar vacio');
}else{
data="campo=dr.id"+"&operador=="+"&id="+id+"&bot
on=B
uscar&opcion=anterior";
$.ajax({
type: "POST",
url: "CDocumentoRecibido.php",
data: data,
success: function(html)
{
$("#listado").html(html);
}
});
}
});

 DocumentoRecibido.php:

<?php
require_once ('configuracion.php');
require_once (PER . DIRECTORY_SEPARATOR .
'Conexion.php');
/**
* Descripcion of DocumentoRecibido
*
*
*/
class DocumentoRecibido
{
private $_id;
private $_idTipoDocumento;
private $_idRemite;
private $_idOrigen;
private $_idArea;
private $_idSede;

152
private $_idRecibe;
private $_idRecoge;
private $_idAreaDerivada;
private $_idEstado;
private $_idAnyo;
private $_nRegistro;
private $_nDocumento;
private $_remite;
private $_asunto;
private $_fechaRecepcion;
private $_fechaEntrega;
private $_observacion;
private $_loginC;
private $_fechaC;
private $_loginM;
private $_fechaM;
const TABLA='documentoRecibido';
public function __construct($id="",
$idTipoDocumento="",
$idRemite="",
$idOrigen="", $idArea="", $idSede="", $idRecibe="",
$idRecoge="", $idAreaDerivada="", $idEstado="",
$idAnyo="", $nRegistro="",
$nDocumento="", $remite="", $asunto="",
$fechaRecepcion="", $fechaEntrega="", $observacion="",
$loginC="", $fechaC="", $loginM="", $fechaM="")
{
$this->_id = $id;
$this->_idTipoDocumento = $idTipoDocumento;
$this->_idRemite = $idRemite;
$this->_idOrigen = $idOrigen;
$this->_idArea = $idArea;
$this->_idSede = $idSede;
$this->_idRecibe = $idRecibe;
$this->_idRecoge = $idRecoge;
$this->_idAreaDerivada = $idAreaDerivada;
$this->_idEstado = $idEstado;
$this->_idAnyo = $idAnyo;
$this->_nRegistro = $nRegistro;
$this->_nDocumento = $nDocumento;
$this->_remite = $remite;
$this->_asunto = $asunto;
$this->_fechaRecepcion = $fechaRecepcion;
$this->_fechaEntrega = $fechaEntrega;
$this->_observacion = $observacion;
$this->_loginC = $loginC;
$this->_fechaC = $fechaC;
$this->_loginM = $loginM;
$this->_fechaM = $fechaM;
$this->mc=new conexion();

153
}
function setValor($valor)
{
$this->valorBusqueda=$valor;
}
function setOperador($operador)
{
$this->operador=$operador;
}
function setCampo($campo)
{
$this->campoBusqueda=$campo;
}
function setOrderBy($orderBy)
{
$this->orderBy=$orderBy;
}
function setoOrderBy($oOrderBy)
{
$this->oOrderBy=$oOrderBy;
}
function setLimitI($desde)
{
$this->limitI=$desde;
}
function setLimitF($cantidad)
{
$this->limitF=$cantidad;
}
public function guardar()
{
$sql="INSERT INTO ".self::TABLA." VALUES('$this-
>_id','$this->_idTipoDocumento','$this->_idRemite',
'$this->_idOrigen','$this->_idArea','$this-
>_idSede','$this->_idRecibe',
'$this->_idRecoge','$this-
>_idAreaDerivada','$this->_idEstado','$this->_idAnyo','$this-
>_nRegistro',
'$this->_nDocumento','$this->_remite','$this-
>_asunto','$this->_fechaRecepcion','$this->_fechaEntrega','$this-
>_observacion',
'$this->_loginC','$this->_fechaC','$this-
>_loginM','$this->_fechaM')";
$this->mc->conectar();
$this->mc->conn->query($sql);
$id=$this->mc->conn->insert_id;
$this->mc->cerrar();
return $id;
}
public function actualizar()

154
{
$sql="UPDATE ".self::TABLA." SET
idTipoDocumento='$this->_idTipoDocumento',idRemite='$this-
>_idRemite',
idOrigen='$this->_idOrigen',idArea='$this-
>_idArea',idSede='$this->_idSede',
idRecibe='$this-
>_idRecibe',idRecoge='$this->_idRecoge',idAreaDerivada='$this-
>_idAreaDerivada',
idEstado='$this->_idEstado',idAnyo='$this-
>_idAnyo',nRegistro='$this->_nRegistro',nDocumento='$this-
>_nDocumento',
remite='$this->_remite',asunto='$this-
>_asunto',fechaRecepcion='$this-
>_fechaRecepcion',fechaEntrega='$this->_fechaEntrega',
observacion='$this-
>_observacion',loginM='$this->_loginM',
fechaM='$this->_fechaM'
WHERE id='$this->_id'";
$this->mc->conectar();
$this->mc->conn->query($sql);
$this->mc->cerrar();
}
public function eliminar()
{
$sql="DELETE FROM ".self::TABLA." WHERE
id='$this->_id'";
$this->mc->conectar();
$this->mc->conn->query($sql);
$this->mc->cerrar();
}
public function cambiarEstado()
{
$sql="UPDATE ".self::TABLA." SET
idEstado='$this->_idEstado' WHERE id='$this->_id'";
$this->mc->conectar();
$this->mc->conn->query($sql);
$this->mc->cerrar();
}
public function buscarDocumentoRecibido()
{
$aValor=explode ("*", $this->valorBusqueda);
$aCampo=explode ("*", $this->campoBusqueda);
$aOperador=explode ("*", $this->operador);
$where="";
$n=count($aValor);
for($i=0;$i<$n;$i++){
if(isset($this->campoBusqueda)){
if($aValor[$i]<>'0'){
if(isset($aOperador[$i]) and

155
($aOperador[$i]<>'LIKE')){
$where.=" AND
".$aCampo[$i] ." ".$aOperador[$i] ." '".$aValor[$i]."' ";
}else{
$where.=" AND
".$aCampo[$i] ." LIKE '%".$aValor[$i] ."%' ";
}
}
}
}
$orderBy="ORDER BY ";
$aOrderBy=explode (",", $this->oOrderBy);
$m=count($aOrderBy);
for($i=0;$i<$m;$i++){
if($aOrderBy[$i]<>''){
$orderBy.=$aOrderBy[$i] .",";
}
}
if(isset($this->orderBy)){
$orderBy.="$this->orderBy";
}else{
$orderBy.="dr.nRegistro";
}
if(isset($this->limitI)){
$limit="LIMIT $this->limitI,$this->limitF";
}
$sql="SELECT
dr.id,
dr.idTipoDocumento,
dr.idRemite,
dr.idOrigen,
dr.idArea,
dr.idSede,
dr.idRecibe,
dr.idRecoge,
dr.idAreaDerivada,
dr.idEstado,
dr.idAnyo,
dr.nRegistro,
dr.nDocumento,
dr.remite,
dr.asunto,
dr.fechaRecepcion,
dr.fechaEntrega,
dr.observacion,
dr.loginC,
dr.fechaC,
dr.loginM,
dr.fechaM,
td.tipoDocumento,

156
(
SELECT
count(documentorecibido.id)
FROM
documentorecibido,
referencia,
estado,
tiporeferencia
where
referencia.idDocumentoRecibido = documentorecibido.id AND
documentorecibido.idEstado = estado.idEstado AND
referencia.idTipoReferencia = tiporeferencia.idTipoReferencia
AND
estado.estado LIKE 'ate%' AND
tiporeferencia.tipoReferencia LIKE 'ate%' AND
idDocumentoRecibido =dr.id
) AS nAtencion,
CONCAT(p.nombre,' ',p.apellido) as remite,
o.origen as origen,
a.area as area,
s.nombre as sede,
u.login as recibe,
CONCAT(p1.nombre,' ',p1.apellido) as recoge,
a1.area as areaDerivada,
e.estado as estado,
an.anyo as anyo
FROM
documentoRecibido AS dr,
tipoDocumento as td,
persona as p,
origen as o,
area as a,
sede as s,
usuario as u,
persona as p1,
area as a1,
estado as e,
anyo as an
WHERE
dr.idTipoDocumento=td.idTipoDocumento AND
dr.idRemite=p.idPersona AND
dr.idOrigen=o.idOrigen AND
dr.idArea=a.idArea AND
dr.idSede=s.idSede AND
dr.idRecibe=u.login AND
dr.idRecoge=p1.idPersona AND
dr.idAreaDerivada=a1.idArea AND
dr.idEstado=e.idEstado AND
dr.idAnyo=an.idAnyo AND
dr.nRegistro LIKE '%%' "

157
.$where." ".$orderBy." ".$limit;
$this->mc->conectar();
$res=$this->mc->conn->query($sql);
if ($res->num_rows>0)
{ $c=0;
while ($r=$res->fetch_array(MYSQLI_NUM))
{ $a[$c][0]=$r[0]; //dr.id
$a[$c][1]=$r[1]; //dr.idTipoDocumento
$a[$c][2]=$r[2]; //dr.idRemite
$a[$c][3]=$r[3]; //dr.idOrigen
$a[$c][4]=$r[4]; //dr.idArea
$a[$c][5]=$r[5]; //dr.idSede
$a[$c][6]=$r[6]; //dr.idRecibe
$a[$c][7]=$r[7]; //dr.idRecoge
$a[$c][8]=$r[8]; //dr.idAreaDerivada
$a[$c][9]=$r[9]; //dr.idEstado
$a[$c][10]=$r[10]; //dr.idAnyo
$a[$c][11]=$r[11]; //dr.nRegistro
$a[$c][12]=$r[12]; //dr.nDocumento
$a[$c][13]=$r[13]; //dr.remite
$a[$c][14]=$r[14]; //dr.asunto
$a[$c][15]=$r[15];
//dr.fechaRecepcion
$a[$c][16]=$r[16]; //dr.fechaEntrega
$a[$c][17]=$r[17]; //dr.observacion
$a[$c][18]=$r[18]; //dr.loginC
$a[$c][19]=$r[19]; //dr.fechaC
$a[$c][20]=$r[20]; //dr.loginM
$a[$c][21]=$r[21]; //dr.fechaM
$a[$c][22]=$r[22]; //td.tipoDocumento
$a[$c][23]=$r[23]; //nAtencion
$a[$c][24]=$r[24]; //p.apellido remite
$a[$c][25]=$r[25]; //o.origen origen
$a[$c][26]=$r[26]; //a.area area
$a[$c][27]=$r[27]; //s.nombre sede
$a[$c][28]=$r[28]; //u.login recibe
$a[$c][29]=$r[29]; //p1.apellido
recoge
$a[$c][30]=$r[30]; //a1.area
areaDerivada
$a[$c][31]=$r[31]; //e.estado estado
$a[$c][33]=$r[33]; //an.anyo anyo

$c++;
}
}
return $a;
}
public function contar()

158
{
$aValor=explode ("*", $this->valorBusqueda);
$aCampo=explode ("*", $this->campoBusqueda);
$aOperador=explode ("*", $this->operador);
$where="";
$n=count($aValor);
for($i=0;$i<$n;$i++){
if(isset($this->campoBusqueda)){
if($aValor[$i]<>'0'){
if(isset($aOperador[$i]) and
($aOperador[$i]<>'LIKE')){
$where.=" AND
".$aCampo[$i] ." ".$aOperador[$i] ." '".$aValor[$i]."' ";
}else{
$where.=" AND
".$aCampo[$i] ." LIKE '%".$aValor[$i] ."%' ";
}
}
}
}
if(isset($this->limitI)){
$limit="LIMIT $this->limitI,$this->limitF";
}
$sql="SELECT
COUNT(*)
FROM
documentoRecibido AS dr
WHERE
dr.nRegistro LIKE '%%' "
.$where." ".$limit;
$this->mc->conectar();
$res=$this->mc->conn->query($sql);
$r=$res->fetch_array(MYSQLI_NUM);
return $r[0];
}
public function primero()
{
$sql="SELECT min(id) FROM documentoRecibido";
$this->mc->conectar();
$res=$this->mc->conn->query($sql);
$r=$res->fetch_array(MYSQLI_NUM);
return $r[0];
}
public function ultimo()
{
$sql="SELECT max(id) FROM
documentoRecibido";
$this->mc->conectar();
$res=$this->mc->conn->query($sql);
$r=$res->fetch_array(MYSQLI_NUM);

159
return $r[0];
}
public function siguiente()
{
$sql="SELECT min(id) FROM documentoRecibido
WHERE id > $this->_id";
$this->mc->conectar();
$res=$this->mc->conn->query($sql);
$r=$res->fetch_array(MYSQLI_NUM);
return $r[0];
}
public function anterior()
{
$sql="SELECT max(id) FROM documentoRecibido
WHERE id < $this->_id";
$this->mc->conectar();
$res=$this->mc->conn->query($sql);
$r=$res->fetch_array(MYSQLI_NUM);
return $r[0];
}
public function __toString()
{
return $this->_id." ".$this->_idTipoDocumento." ".$this-
>_idTipoDocumento;
}
}

160
GLOSARIO

1. Freeware:

Freeware Software de distribución gratuita. Programas que se distribuyen a


través de Internet de forma gratuita.

2. LSAPILSAPI (Licensing Service API):

Interfaz de programación de Microsoft que permite a un servidor con licencia


rastrear aplicaciones en uso para administrar licencias de software
multiusuario.

3. DualDual:

La palabra Dual hace referencia a una dúplica o espejo de algo que se está
haciendo, por ejemplo la dual de una tabla en Oracle.

4. Dual ChannelDual Channel:

Doble canal de datos. Es una característica que nos indica que el procesador
puede acceder a su memoria por dos caminos distintos y los puede usar de
forma.

5. Apache:

Servidor web de código abierto. Su desarrollo comenzó en febrero de 1995,


por Rob McCool, en una tentativa de mejorar el servidor existente en el
NCSA.

6. Aplicación:

Cualquier programa que corra en un sistema operativo y que haga una


función específica para un usuario. Por ejemplo, procesadores de palabras,
bases de datos, agendas electrónicas, etc.

161
7. FTP:

File Transfer Protocol. Protocolo de transferencia de archivos. Por medio de


programas que usan este protocolo, se permite la conexión entre dos
computadoras y se pueden cargar y descargar archivos entre el cliente y el
host (servidor).

8. Hosting:

El servicio de Web Hosting consiste en el almacenamiento de datos,


aplicaciones o información dentro de servidores diseñados para llevar a cabo
esta tarea.

9. JSP:

Siglas de Java Server Pages o Páginas de servidor de Java, es la tecnología


para generar páginas web de forma dinámica en el servidor, desarrollado por
Sun Microsystems, basado en scripts que utilizan una variante del lenguaje
java para construir páginas HTML en servidores.

10. MySQL:

My SQL es uno de los Sistemas Gestores de Bases de Datos más populares.


Su ingeniosa arquitectura lo hace extremadamente rápido y fácil de
personalizar.

11. NCSA:

Centro Nacional de Aplicaciones de Supercómputo (National Center for


Supercomputing Applications). Desarrolladores del visualizador Mosaic para
el World Wide Web. Localizado en. http://www.ncsa.uiuc.edu/

12. ODBC:

Open Database Connectivity. Estándar de acceso a Bases de Datos


desarrollado por Microsoft cuyo objetivo es hacer posible el acceder a

162
cualquier dato de cualquier aplicación, sin importar qué Sistema Gestor de
Bases de Datos (DBMS por sus siglas en inglés) almacene los datos.

13. Open source:

Código fuente abiertoo software libre, se refiere a un programa cuyo código


fuente está disponible al público general, gratis, para usar y modificar.

14. Paquete:

Un paquete es un pedazo de información enviada a través de la red. La


unidad de datos que se envía a través de una red la cual se compone de un
conjunto de bits que viajan juntos.

15. PHP:

Hypertext Preprocessor. Lenguaje de script diseñado para la creación de


páginas web activas (similares a ".asp" de Microsoft), multiplataforma (puede
correr en Windows, Mac, Linux). Usualmente se usa en conjunto con la base
de datos MySQL, pero puede usar cualquier otro tipo de base de datos como
por ejemplo Oracle, SQL o Postgres.

16. Protocolo:

Descripción formal de formatos de mensaje y de reglas que dos


computadoras deben seguir para intercambiar dichos mensajes. Un protocolo
puede describir detalles de bajo nivel de las interfaces máquina a máquina o
intercambios de alto nivel entre programas de asignación de recursos.

17. Proxy:

Servidor especial encargado, entre otras cosas, de centralizar el tráfico entre


Internet y una red privada, de forma que evita que cada una de las máquinas
de la red interior tenga que disponer necesariamente de una conexión directa
a la red.
18. Servidor:

163
Un servidor es una computadora que maneja peticiones de data, email,
servicios de redes y transferencia de archivos de otras computadoras
(clientes).

19. Servidor Web:

Un servidor web es el programa, y la computadora que lo corre, que maneja


los dominios y páginas web, interpretando lenguajes como html y php, entre
otros. Ejemplos: Apache y Microsoft IIS.

20. Servlet:

Pequeña aplicación Java (applet) la cual se ejecuta en un servidor web y se


envía al usuario junto a una página web con objeto de realizar determinadas
funciones, tales como el acceso a bases de datos o la personalización de
dicha páginas web.

21. Sesión Remota:

Uso de los recursos de una computadora desde una terminal la cual no se


encuentra cercana a dicha computadora.

164

Potrebbero piacerti anche