UNIVERSIDAD DE GUAYAQUIL -...
Transcript of UNIVERSIDAD DE GUAYAQUIL -...
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
“DESARROLLO DE PÁGINA WEB PARA LA GESTIÓN DE FICHAS ESTUDIANTILES PARA LA UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE ARQUITECTURA Y URBANISMO CARRERA DE ARQUITECTURA PARA LA OPTIMIZACIÓN DE LOS PROCESOS”
PROYECTO DE TITULACIÓN
Previa a la obtención del Título de:
INGENIERO EN SISTEMAS COMPUTACIONALES
AUTORES:
ANDY OSWALDO ALVIA CHOEZ
WALTER ALEXANDER VERA MACIAS
TUTOR: ING. VICENTE VIZUETA LOGROÑO, MSC.
GUAYAQUIL – ECUADOR
2018
REPOSITORIO NACIONAL EN CIENCIA Y TECNOLOGÍA
FICHA DE REGISTRO DE PROYECTO DE TITULACIÓN
TÍTULO Y SUBTÍTULO: “DESARROLLO DE PÁGINA WEB PARA LA GESTIÓN DE FICHAS ESTUDIANTILES PARA LA UNIVERSIDAD DE GUAYAQUIL FACULTAD DE ARQUITECTURA Y URBANISMO CARRERA DE ARQUITECTURA PARA LA OPTIMIZACIÓN DE LOS PROCESOS”
AUTORES:
ANDY OSWALDO ALVIA CHOEZ
WALTER ALEXANDER VERA
MACIAS
REVISORES:
ING. JORGE LUIS ZAMBRANO SANTANA, Mgs.
ING. GILBERTO FERNANDO CASTRO AGUILERA, Mgs.
INSTITUCIÓN:
Universidad de Guayaquil
FACULTAD: Facultad de Ciencias Matemáticas y Físicas
CARRERA: Ingeniería en Sistemas Computacionales
FECHA DE PUBLICACIÓN: 2018 N. DE PAGS:
ÁREAS TEMÁTICAS: Programación
PALABRAS CLAVE: Pagina web, ficha estudiantil, Open Source
RESUMEN: Las fichas estudiantiles son un registro histórico del proceso que lleva cada estudiante hasta que finalice su carrera o hasta que se retire de la misma. Cada Facultad de la Universidad de Guayaquil, como lo es la Facultad de Arquitectura y Urbanismo, lleva un control de sus estudiantes inscritos en cada periodo o ciclo nuevo, esto hace que lleven un expediente por cada estudiante que este legalmente inscrito en la institución. Por lo cual, el departamento de secretaria de cada institución realiza este proceso de una forma manual y no cuenta con un sistema que los ayuden a optimizar dicho proceso de registro. Este proyecto pretende aportar con una nueva herramienta que ayude a la digitalización de dichas fichas, para que la información ingresada sea entendible y almacena de forma segura.
N. DE REGISTRO (en base de datos):
N. DE CLASIFICACIÓN:
DIRECCIÓN URL (tesis en la web):
ADJUNTO URL (tesis en la web):
ADJUNTO PDF: SI NO
CONTACTO CON AUTOR:
ANDY OSWALDO ALVIA CHÓEZ
WALTER ALEXANDER VERA MACIAS
Teléfono: 0996770050
0989542833
E-mail: [email protected]
CONTACTO EN LA INSTITUCIÓN: Nombre: Ab. Juan Chávez A.
Teléfono: : 042307729
E-mail: [email protected]
X
APROBACIÓN DEL TUTOR
En mi calidad de Tutor del trabajo de titulación, “DESARROLLO DE PAGINA WEB
PARA LA GESTIÓN DE FICHAS ESTUDIANTILES PARA LA UNIVERSIDAD DE
GUAYAQUIL FACULTAD DE ARQUITECTURA Y URBANISMO CARRERA DE
ARQUITECTURA PARA LA OPTIMIZACIÓN DE LOS PROCESOS” elaborado
por el ANDY OSWALDO ALVIA CHÓEZ y WALTER ALEXANDER VERA
MACIAS, Alumnos no titulado de la Carrera de Ingeniería en Sistemas
Computacionales Facultad de Ciencias Matemáticas y Físicas de la Universidad
de Guayaquil, previo a la obtención del Título de Ingeniero en Sistemas, me
permito declarar que luego de haber orientado, estudiado y revisado, la apruebo
en todas sus partes.
Atentamente
Ing. Vicente Vizueta Logroño, MSc.
TUTOR
DEDICATORIA
El presente trabajo de tesis va
dedicado a Dios por darme la
sabiduría, perseverancia y
fortaleza, a mis padres, mi
hermana e incluso mis
mascotas. Gracias a ustedes
por ser mi motivación y ser
partícipes de este logro. Gracias
a ellos el terminar mi carrera
universitaria es un triunfo.
Andy Oswaldo Alvia Chóez
DEDICATORIA
Este trabajo se lo dedico a Dios
por darme la sabiduría,
perseverancia y la humildad
para prosperar como persona. A
mis padres por ser mi pilar de
apoyo, estar siempre conmigo y
por haberme guiado siempre
por el buen camino, a mis
amigos que de una u otra forma
me apoyaron cuando más los
necesitaba. Gracias a ellos
pude seguir adelante para
alcanzar este logro y poder
darles el ejemplo a mis
hermanos de que todo lo que
uno se propone lo puede
conseguir con perseverancia y
esfuerzo.
Walter Alexander Vera Macias
AGRADECIMIENTO
Gracias Dios por darme
sabiduría y ser mi guía en el
camino que escogí, a mis
padres, por apoyarme en la vida
con mis decisiones, a mi
hermana, amiga incondicional
compañera en las buenas y en
las malas, a mis mascotas
porque cada vez que estuve
decaído y deprimido al verlas
recordaba mi razón de
esforzarme.
Gracias a mi familia, amigos y
compañeros por su motivación,
por no dejarme vencer ante las
adversidades, todos ellos
hicieron posible que alcance y
cumpla esta meta, por y para
ellos es este triunfo.
Andy Oswaldo Alvia Chóez
AGRADECIMIENTO
Gracias a Dios por darme las
fuerzas y la sabiduría para
seguir adelante, a mis padres
por darme siempre su apoyo y
amor para poder culminar esta
meta, a mis amigos que
estuvieron ahí apoyándome
siempre; agradezco a cada uno
que en su momento me pudo
dar la mano para que pueda
llegar este día.
Walter Alexander Vera Macias
TRIBUNAL PROYECTO DE TITULACIÓN
Ing. Eduardo Santos Baquerizo, M.Sc.
DECANO DE LA FACULTAD
CIENCIAS MATEMÁTICAS Y
FÍSICAS
Ing. Abel Alarcón Salvatierra, Mgs.
DIRECTOR DE LA CARRERA DE
INGENIERÍA EN SISTEMAS
COMPUTACIONALES
Nombres y Apellidos
PROFESOR REVISOR DEL ÁREA
TRIBUNAL
Nombre y Apellidos
PROFESOR REVISOR DEL ÁREA
TRIBUNAL
Ing. Vicente Vizueta Logroño, MSc.
TUTOR
Ab. Juan Chávez Atocha, Esp.
SECRETARIO
DECLARACIÓN EXPRESA
“La responsabilidad del contenido de este Proyecto de Titulación, me corresponden exclusivamente; y el patrimonio intelectual de la misma a la UNIVERSIDAD DE GUAYAQUIL”
ANDY OSWALDO ALVIA CHOEZ
WALTER ALEXANDER VERA MACIAS
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
“DESARROLLO DE PÁGINA WEB PARA LA GESTIÓN DE FICHAS ESTUDIANTILES PARA LA UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE ARQUITECTURA Y URBANISMO CARRERA DE ARQUITECTURA PARA LA OPTIMIZACIÓN DE LOS PROCESOS”
Proyecto de Titulación que se presenta como requisito para optar por el título de
INGENIERO EN SISTEMAS COMPUTACIONALES
Autor: ANDY OSWALDO ALVIA CHÓEZ
C.I. 1312334731
Autor: WALTER ALEXANDER VERA MACIAS
C.I. 0951406743
Tutor: Ing. Vicente Vizueta Logroño, MSc.
Guayaquil, Octubre 2017
CERTIFICADO DE ACEPTACIÓN DEL TUTOR
En mi calidad de Tutor del proyecto de titulación, nombrado por el Consejo Directivo de la Facultad de Ciencias Matemáticas y Físicas de la Universidad de Guayaquil.
CERTIFICO:
Que he analizado el Proyecto de Titulación presentado por los estudiantes ANDY OSWALDO ALVIA CHÓEZ y WALTER ALEXANDER VERA MACIAS, como requisito previo para optar por el título de Ingeniero en Sistemas Computacionales cuyo problema es:
“DESARROLLO DE PAGINA WEB PARA LA GESTIÓN DE FICHAS ESTUDIANTILES PARA LA UNIVERSIDAD DE GUAYAQUIL FACULTAD DE ARQUITECTURA Y
URBANISMO CARRERA DE ARQUITECTURA PARA LA OPTIMIZACIÓN DE LOS PROCESOS”
Considero aprobado el trabajo en su totalidad.
Presentado por:
ALVIA CHÓEZ ANDY OSWALDO
Cédula de ciudadanía N° 131233473-1
VERA MACIAS WALTER ALEXANDER
Cédula de ciudadanía N° 095140674-3
Tutor: Ing. Vicente Vizueta Logroño, MSc.
Guayaquil, Octubre 2017
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
AUTORIZACIÓN PARA PUBLICACIÓN DE PROYECTO DE TITULACIÓN EN FORMATO DIGITAL
1. Identificación del Proyecto de Titulación
Nombre Alumnos: ANDY OSWALDO ALVIA CHÓEZ
Dirección: Coop. Juan Montalvo Mz.B7 Sl.12
Teléfono: 0996770050 E-mail: [email protected]
Nombre Alumnos: WALTER ALEXANDER VERA MACIAS
Dirección: Coop. Carlos Magno Mz.2311 Sl.21
Teléfono: 0989542833 E-mail: [email protected]
Facultad: Ciencias Matemática y Físicas
Carrera: Ingeniería en Sistemas Computacionales
Proyecto de titulación al que opta: Ingeniería en Sistemas Computacionales
Profesor tutor: Ing. Vicente Vizueta Logroño, MSc.
Título del Proyecto de titulación:
“DESARROLLO DE PÁGINA WEB PARA LA GESTIÓN DE FICHAS ESTUDIANTILES PARA LA UNIVERSIDAD DE GUAYAQUIL FACULTAD DE ARQUITECTURA Y
URBANISMO CARRERA DE ARQUITECTURA PARA LA OPTIMIZACIÓN DE LOS PROCESOS”
Tema del Proyecto de Titulación: Página Web, Ficha estudiantil, Open Source, gestión, optimización.
2. Autorización de Publicación de Versión Electrónica del Proyecto de Titulación
A través de este medio autorizo a la Biblioteca de la Universidad de Guayaquil y a la Facultad de Ciencias Matemáticas y Físicas a publicar la versión electrónica de este Proyecto de titulación.
Publicación electrónica:
Inmediata x Después de 1 año
Firma Alumno:
ANDY OSWALDO ALVIA CHOEZ
C.I.: 131233473-1
WALTER ALEXANDER VERA MACIAS
C.I.: 095140674-3
3. Forma de envío:
El texto del proyecto de titulación debe ser enviado en formato Word, como archivo .Doc. O .RTF y .Puf para PC. Las imágenes que la acompañen pueden ser: .gif, .jpg o .TIFF.
DVDROM x CDROM
ÍNDICE GENERAL
Pág. N°
APROBACIÓN DEL TUTOR .......................................................................................... I
DEDICATORIA ............................................................................................................. II
DEDICATORIA ............................................................................................................ III
AGRADECIMIENTO .................................................................................................... IV
AGRADECIMIENTO ..................................................................................................... V
TRIBUNAL PROYECTO DE TITULACIÓN .................................................................. VI
DECLARACIÓN EXPRESA .......................................................................................... II
CERTIFICADO DE ACEPTACIÓN DEL TUTOR .......................................................... IV
Autorización para Publicación de Proyecto de Titulación en Formato Digital ................ V
ÍNDICE GENERAL ..................................................................................................... VII
ABREVIATURAS .......................................................................................................... X
ÍNDICE DE CUADROS ................................................................................................ XI
ÍNDICE DE GRÁFICOS .............................................................................................. XII
Resumen .................................................................................................................. XIV
Abstract ..................................................................................................................... XV
INTRODUCCIÓN .......................................................................................................... 1
CAPÍTULO I .................................................................................................................. 4
EL PROBLEMA ............................................................................................................ 4
Planteamiento del Problema ..................................................................................... 4
Ubicación del Problema en un contexto .................................................................... 4
Situación conflicto – Nudos críticos ........................................................................... 5
Causas y Consecuencias del problema ..................................................................... 6
Delimitación del Problema ......................................................................................... 6
Formulación del Problema ......................................................................................... 7
Evaluación del Problema ........................................................................................... 7
Objetivos ................................................................................................................... 8
Alcances del Problema .............................................................................................. 8
Justificación e Importancia ........................................................................................ 9
Metodología del Proyecto ........................................................................................ 10
SUPUESTOS Y RESTRICCIONES ......................................................................... 11
PLAN DE CALIDAD (PRUEBAS A REALIZAR) ....................................................... 12
CAPÍTULO II ............................................................................................................... 13
MARCO TEÓRICO ..................................................................................................... 13
ANTECEDENTES DEL ESTUDIO ........................................................................... 13
FUNDAMENTACIÓN TEÓRICA .............................................................................. 14
OPEN SOURCE ...................................................................................................... 14
Historia de la OSI .................................................................................................... 15
Acuñando “código abierto” ...................................................................................... 15
Fundación de la OSI ................................................................................................ 16
Evaluación de licencias ........................................................................................... 17
PROGRAMADOR ................................................................................................... 18
FUNCIÓN DEL PROGRAMADOR .......................................................................... 19
EL ANALISTA ......................................................................................................... 19
EL PROGRAMADOR .............................................................................................. 19
SOFTWARE ............................................................................................................ 20
PAGINAS WEB ....................................................................................................... 20
HTML ...................................................................................................................... 22
Historia de HTML .................................................................................................... 23
HTML 2.0 ................................................................................................................ 24
HTML 3.0 ................................................................................................................ 24
HTML 4.0 ................................................................................................................ 24
HTML5 .................................................................................................................... 25
AJAX (Asynchronous JavaScript and XML) ............................................................. 26
CSS ........................................................................................................................ 26
Historia de CSS ....................................................................................................... 27
Soporte de CSS en los Navegadores ...................................................................... 28
CSS 3...................................................................................................................... 29
PHP ........................................................................................................................ 30
HISTORIA DE PHP ................................................................................................. 31
PHP 3...................................................................................................................... 33
PHP 4...................................................................................................................... 34
PHP 5...................................................................................................................... 35
Programación Orientada a Objeto ........................................................................... 36
Extensión MySQL retrabajada ................................................................................. 37
Extensión XML reelaborada .................................................................................... 37
Manejo de excepciones ........................................................................................... 38
MySQL .................................................................................................................... 38
Historia .................................................................................................................... 39
Servidor apache ...................................................................................................... 41
JAVASCRIPT .......................................................................................................... 41
REGISTRO ............................................................................................................. 42
Ejemplos de Registros ............................................................................................ 42
Identificación de identidad - Cedula. ........................................................................ 42
Bienes y posesiones. .............................................................................................. 43
Registro informático ................................................................................................ 43
Fichas ..................................................................................................................... 44
Ejemplo ................................................................................................................... 44
Tipos de Fichas ....................................................................................................... 45
FOLDER ................................................................................................................. 54
Fólder en informática ............................................................................................... 56
FUNDAMENTACIÓN LEGAL .................................................................................. 56
SECCIÓN V: Disposiciones especiales sobre ciertas obras de los programas de ordenador ................................................................................................................ 58
Pregunta científica a contestarse ............................................................................ 60
Definiciones conceptuales ....................................................................................... 60
CAPÍTULO III .............................................................................................................. 63
PROPUESTA TECNOLÓGICA ............................................................................... 63
ANÁLISIS DE FACTIBILIDAD ..................................................................................... 65
Factibilidad Operacional ............................................................................................. 65
Factibilidad Técnica ............................................................................................ 65
Factibilidad Legal .................................................................................................... 67
Factibilidad Económica ........................................................................................... 69
Etapas de la metodología del proyecto.................................................................... 69
Entregables del proyecto ......................................................................................... 93
CRITERIOS DE VALIDACIÓN DE LA PROPUESTA .............................................. 94
CAPÍTULO IV ............................................................................................................. 98
CRITERIOS DE ACEPTACIÓN DEL PRODUCTO O SERVICIO ................................ 98
CONCLUSIONES ................................................................................................. 100
RECOMENDACIONES ......................................................................................... 102
BIBLIOGRAFÍA ......................................................................................................... 103
ANEXOS ................................................................................................................... 106
Preguntas de la entrevista previa a utilizar la página web .................................. 106
Preguntas de la entrevista posterior a utilizar la página web .............................. 106
ABREVIATURAS
UG Universidad de Guayaquil
HTML Lenguaje de Marca de salida de Hyper Texto
Http Protocolo de transferencia de Hyper Texto
Ing. Ingeniero
CC.MM.FF Facultad de Ciencias Matemáticas y Físicas
FAU Facultad de Arquitectura y Urbanismo
ISP Proveedor de Servicio de Internet
Mtra. Maestra
Msc. Master
URL Localizador de Fuente Uniforme
www world wide web (red mundial)
BD Base de Datos
Css Cascading Style Sheets (Hoja de Estilo en Cascada)
Php Personal Home Page (PHP) Tools
CES Consejo de Educación Superior
ÍNDICE DE CUADROS
CUADRO N. 1............................................................................................................... 6
CAUSAS Y CONSECUENCIAS DEL PROBLEMA ....................................................... 6
CUADRO N. 2............................................................................................................... 6
DELIMITACIÓN DEL PROBLEMA ................................................................................ 6
CUADRO N. 3............................................................................................................. 29
GRAFICA DE SOPORTE DE CSS 1, 2.1 Y 3 EN CINCO DE LOS NAVEGADORES MÁS UTILIZADOS POR LOS USUARIOS ........................................................... 29
CUADRO N. 4............................................................................................................. 69
PRESUPUESTO ......................................................................................................... 69
CUADRO N. 5............................................................................................................. 78
DESCRIPCIÓN DE CASO DE USO DEL ADMINISTRADOR ..................................... 78
CUADRO N. 6............................................................................................................. 79
DESCRIPCIÓN DE CASO DE USO DEL SECRETARIO/A ........................................ 79
CUADRO N. 7............................................................................................................. 94
PERFIL DE EXPERTO DE LA CARRERA DE ARQUITECTURA Y URBANISMO ..... 94
CUADRO N. 8............................................................................................................. 98
CRITERIO DE ACEPTACIÓN DEL PROYECTO ........................................................ 98
ÍNDICE DE GRÁFICOS
GRÁFICO N. 1 ........................................................................................................... 14
OPEN SOURCE INITIATIVE ...................................................................................... 14
GRÁFICO N. 2 ........................................................................................................... 18
ACTIVIDADES DE UN PROGRAMADOR .................................................................. 18
GRÁFICO N. 3 ........................................................................................................... 21
IMAGEN DE PÁGINA WEB ........................................................................................ 21
GRÁFICO N. 4 ........................................................................................................... 22
IMAGEN DE LENGUAJE HTML ................................................................................. 22
GRÁFICO N. 5 ........................................................................................................... 25
LOGO DE HTML5 ....................................................................................................... 25
GRÁFICO N. 6 ........................................................................................................... 30
IMAGEN DE LOGO DE CSS3 .................................................................................... 30
GRÁFICO N. 7 ........................................................................................................... 36
LOGO DE PHP5 ......................................................................................................... 36
GRÁFICO N. 8 ........................................................................................................... 39
LOGOTIPO DE MYSQL .............................................................................................. 39
GRÁFICO N. 9 ........................................................................................................... 43
CEDULA DE CIUDADANÍA ........................................................................................ 43
GRÁFICO N. 10 ......................................................................................................... 44
PANTALLA DE REGISTRO INFORMÁTICO .............................................................. 44
GRÁFICO N. 11 ......................................................................................................... 46
EJEMPLO DE FICHA HEMEROGRÁFICA ................................................................. 46
GRÁFICO N. 12 ......................................................................................................... 47
FICHA BIBLIOGRÁFICA ............................................................................................. 47
GRÁFICO N. 13 ......................................................................................................... 48
EJEMPLO DE FICHA TEXTUAL ................................................................................ 48
GRÁFICO N. 14 ......................................................................................................... 48
EJEMPLO DE FICHA DE RESUMEN ......................................................................... 48
GRÁFICO N. 15 ......................................................................................................... 49
FICHA CATALOGRÁFICA .......................................................................................... 49
GRÁFICO N. 16 ......................................................................................................... 50
FICHA DE TRABAJO .................................................................................................. 50
GRÁFICO N. 17 ......................................................................................................... 52
FICHA TÉCNICA ........................................................................................................ 52
GRÁFICO N. 18 ......................................................................................................... 55
ILUSTRACIÓN DE UN FÓLDER ................................................................................ 55
GRÁFICO N. 19 ......................................................................................................... 56
ICONO DE UNA CARPETA INFORMÁTICA .............................................................. 56
GRÁFICO N. 20 ......................................................................................................... 63
DIAGRAMA FUNCIONAL DE LA PÁGINA WEB CON LOCALHOST ......................... 63
GRÁFICO N. 21 ......................................................................................................... 70
INTERFAZ DE LA HERRAMIENTA SCRUMTOOL ..................................................... 70
GRÁFICO N. 22 ......................................................................................................... 71
SPRINT 1: ANÁLISIS Y RECOPILACIÓN DE INFORMACIÓN PARA EL PROYECTO ............................................................................................................................ 71
GRÁFICO N. 23 ......................................................................................................... 72
BURNDOWN DEL SPRINT 1 ..................................................................................... 72
GRÁFICO N. 24 ......................................................................................................... 73
SPRINT 2: DISEÑO Y MODELADO DE BASE DE DATOS ........................................ 73
GRÁFICO N. 25 ......................................................................................................... 74
DIAGRAMA ENTIDAD RELACIÓN ............................................................................. 74
GRÁFICO N. 26 ......................................................................................................... 75
BURNDOWN DEL SPRINT 2 ..................................................................................... 75
GRÁFICO N. 27 ......................................................................................................... 76
SPRINT 3: DISEÑO DE PANTALLAS PARA MÓDULOS DE LA PÁGINA WEB ......... 76
GRÁFICO N. 28 ......................................................................................................... 77
BURNDOWN DEL SPRINT 3 ..................................................................................... 77
GRÁFICO N. 29 ......................................................................................................... 78
CASO DE USO ADMINISTRADOR ............................................................................ 78
GRÁFICO N. 30 ......................................................................................................... 79
GRÁFICO N. 31 ......................................................................................................... 80
SPRINT 4: DISEÑO DEL DIAGRAMA DE CASO DE USO ......................................... 80
GRÁFICO N. 32 BURNDOWN DEL SPRINT 4 .......................................................... 81
GRÁFICO N. 33 ......................................................................................................... 82
SPRINT 5: MÓDULOS DE USUARIOS, ESTUDIANTES ............................................ 82
GRÁFICO N. 34 ......................................................................................................... 83
BURNDOWN DEL SPRINT 5 ..................................................................................... 83
GRÁFICO N. 35 ......................................................................................................... 84
SPRINT 6: MÓDULOS DE REGISTRO DE FICHA ..................................................... 84
GRÁFICO N. 36 ......................................................................................................... 85
BURNDOWN DEL SPRINT 6 ..................................................................................... 85
GRÁFICO N. 37 ......................................................................................................... 86
SPRINT 7: MÓDULOS DE REGISTRO DE NUEVOS CAMPOS ................................ 86
GRÁFICO N. 38 ......................................................................................................... 87
BURNDOWN DEL SPRINT 7 ..................................................................................... 87
GRÁFICO N. 39 ......................................................................................................... 88
SPRINT 8: MÓDULOS DE CONSULTA...................................................................... 88
GRÁFICO N. 40 BURNDOWN DEL SPRINT 8 .......................................................... 89
GRÁFICO N. 41 ......................................................................................................... 90
SPRINT 9: MÓDULOS DE REPORTES ..................................................................... 90
GRÁFICO N. 42 ......................................................................................................... 91
BURNDOWN DEL SPRINT 9 ..................................................................................... 91
GRÁFICO N. 43 ......................................................................................................... 92
SPRINT 10: MÓDULOS DE MANTENIMIENTO Y CONSULTAS ............................... 92
GRÁFICO N. 44 ......................................................................................................... 93
BURNDOWN DEL SPRINT 10 ................................................................................... 93
XIV
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
“DESARROLLO DE PAGINA WEB PARA LA GESTIÓN DE FICHAS ESTUDIANTILES PARA LA UNIVERSIDAD DE GUAYAQUIL FACULTAD DE ARQUITECTURA Y URBANISMO CARRERA DE ARQUITECTURA PARA LA
OPTIMIZACIÓN DE LOS PROCESOS”
RESUMEN
En el Ecuador existen unidades académicas de nivel superior, como lo es la
Universidad de Guayaquil que tiene dieciocho Facultades, la cuales ofertan cada
una diferentes carreras de pregrado o postgrado, las mismas que mantienen un
organigrama de funciones, dentro de las cuales una de las más importantes es el
área de Secretaria General. En la Facultad de Arquitectura y Urbanismo, esta
dependencia atiende los procesos de matrículas, anulaciones, homologaciones y
otros procesos administrativos, los mismos que brinda atención a docentes,
directivos y estudiantes. En la actualidad existe una deficiencia en la atención,
manejo de información y seguridad de la misma, lo que genera preocupación en
particular el registro de fichas estudiantil. El presente trabajo utilizara herramientas
Open Source que permitirán crear un aplicativo web que ayude a la gestión de
este proceso, logrando así optimizarlo. Su desarrollo implica la utilización la
metodología Scrum, la cual a través de sus características garantiza un entorno
confiable. Este aplicativo beneficiara a los docentes, directivos y alumnos de la
Facultad de Arquitectura y Urbanismo.
Palabras claves: Página web, ficha estudiantil, Código abierto, Gestión.
Autores: ANDY OSWALDO ALVIA CHOEZ
WALTER ALEXANDER VERA MACIAS
Tutor: ING. VICENTE VIZUETA LOGROÑO
XV
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
DEVELOPMENT OF WEB PAGE FOR THE MANAGEMENT OF STUDENT
FILES FOR THE UNIVERSITY OF GUAYAQUIL FACULTY OF ARCHITECTURE AND URBAN PLANNING CAREER OF ARCHITECTURE FOR
THE OPTIMIZATION OF THE PROCESSES
ABSTRACT
In Ecuador there are higher level academic units, such as the University of
Guayaquil that has eighteen Faculties, which each offer different undergraduate or
postgraduate degrees, which maintain an organization chart of functions, within
which one of the most important is the area of General Secretary. In the Faculty of
Architecture and Urbanism, this unit deals with the processes of registration,
cancellations, homologations and other administrative processes, the same that
provides attention to teachers, managers and students. Currently there is a
deficiency in the care, information management and security of the same, which
generates concern in particular the registration of student cards. The present work
will use Open Source tools that will allow the creation of a web application that
helps the management of this process, thus optimizing it. Its development implies
the use of the Scrum methodology, which through its characteristics guarantees a
reliable environment. This application will benefit teachers, managers and students
of the Faculty of Architecture and Urbanism.
Keywords: Web page, student record, Open source, Management.
Author:..............................
Tutor:..............................
Autores: ANDY OSWALDO ALVIA CHOEZ
WALTER ALEXANDER VERA MACIAS
Tutor: ING. VICENTE VIZUETA LOGROÑO
1
INTRODUCCIÓN
En la Universidad de Guayaquil está dividida en dieciocho facultades, las cuales
oferta diferentes carreras a los aspirantes, una de ella es la Facultad de
Arquitectura y Urbanismo, que ofrece la carrera de Arquitectura y Diseño de
Interiores, el cual dispone de un organigrama para brindar una atención al usuario
eficiente. Dentro de este organigrama existe el Departamento de Secretaría
General, que se encarga de la atención, asesoramiento y proceso en el archivado
de documentos académicos de los estudiantes.
La organización de los datos académicos de los estudiantes, el personal a cargo
de cada nivel semestral, lo realizan mediante fichas de registro estudiantil, que
contiene la información de cada uno de los alumnos inscritos en dicha carrera. A
fin de que se empleada en la constancia del proceso académico que lleva el
estudiante en cada período semestral que se oferta en la Facultad.
El presente proyecto, fue planteado en base a la problemática encontrada, que es
el desorden, la perdida de información y desperdicio de suministros de trabajo a
los errores que suelen cometer el personal del área, una situación que
actualmente se ve afectando varias áreas dentro del desempeño de las
actividades administrativas, en las que se involucre el ingreso de información, se
ha observado que la falta de automatización de procesos es algo recurrente en la
actual era tecnológica, donde prácticamente todos los tipos de servicios tienen a
su disponibilidad herramientas informáticas que les proporcionarían una mejor
calidad de servicio, así como también la optimización de los recursos empleados
en la realización de dichas actividades.
Con lo anteriormente mencionado, luego de una visita a los predios de la Facultad
de Arquitectura y Urbanismo, de la UG, se pudo observar que aún cuentan con
algunos procesos realizados dentro de la Secretaría General de la misma, en las
fichas de registro estudiantil específicamente hablando, las mismas cuya función
es, llevar un récord académico de los estudiantes, incluyendo en estas el detalle
de sus asignaturas cursadas durante sus períodos académicos, sus calificaciones
obtenidas en éstas, así como información de contacto y otros campos que la
2
Universidad considere conveniente, pero el método de ingreso de la información,
es de manera manuscrita, luego de haber conversado con las autoridades de la
mencionada Facultad, se llegó a la conclusión que era propicio la realización de
una página web, en la que se pueda realizar el proceso del ingreso de la
información a las fichas de registro estudiantil, así como también sacar reportes
de los datos ingresados en la misma.
Para una mejor comprensión lectora, el presente proyecto se divide en cuatro
capítulos y a continuación se detalla la estructura de cómo fue desarrollado.
Capítulo 1 El Problema, en esta parte se describe la problemática encontrada
como objeto de estudio, así como la posterior propuesta de solución, donde se
ubica el problema en un contexto que en este caso se encuentra ubicada en los
predios de la Facultad de Arquitectura y Urbanismo en la Universidad de
Guayaquil. A su vez contiene las causas y consecuencias de no utilizar un medio
tecnológico, los objetivos que cumplirá esta propuesta, así como también se
detalla, porque es necesario implementar un aplicativo web para la gestión de
fichas estudiantiles, como también la metodología que se empleará para el
desarrollo de la presente investigación.
Capítulo 2 Marco Teórico, contiene la investigación teórica de todos los
componentes que intervienen en este desarrollo, como el aporte de artículos ya
realizados por otros autores, así como también la fundamentación conceptual
dentro de los términos empleados en la presente investigación, tales como Fichas
de Registro estudiantil, Página Web, Programación, entre otras herramientas que
conforman la concepción de la propuesta, también se cuenta con la
fundamentación legal.
Capítulo 3 Propuesta Tecnológica se realiza el análisis de factibilidad, donde se
determina la posibilidad de la elaboración de la propuesta, así como de su impacto
en la aplicación, se realizaron también las etapas de la metodología del proyecto
realizado, es decir sus instrumentos y técnicas empleados en el mismo.
3
Capítulo 4 Conclusiones y Recomendaciones, en el final del proyecto, se plantea
las conclusiones encontradas luego de todas las teorías estudiadas, así como
también las recomendaciones que se dejan a la Facultad sobre cómo se podría
automatizar más procesos y de ese modo agilizar las actividades administrativas
de la Facultad.
4
CAPÍTULO I
EL PROBLEMA
Planteamiento del Problema
Ubicación del Problema en un contexto
El ámbito educativo ecuatoriano, en el año 2015 ha visto un incremento vertiginoso
en cuanto a la digitalización y automatización de procesos que involucren datos
académicos, pero así mismo aún hay actividades que se realizan de manera
tradicional, por lo que luego de una investigación in situ, se determinó que la
Facultad de Arquitectura y Urbanismo era la idónea para que se desarrolle la
herramienta web para el ingreso de datos académicos en el mismo formato de la
ficha de registro estudiantil.
Dentro del planteamiento sobre la problemática encontrada, la misma que consiste
en la perdida, desactualización en la información introducida en las fichas de
registro estudiantil y desgaste del formato físico, la misma que se va a investigar
en el presente proyecto, se llegó a la conclusión que era necesaria la
automatización de los procesos que actualmente rigen los criterios archivológicos
de la secretaría general de la Facultad de Arquitectura y Urbanismo, trabajos que
aun realizan en manuscrito con las fichas de registro estudiantil, donde
básicamente se detalla el historial académico de una estudiante que cursa la
carrera Arquitectura, pero como esta se va promoviendo según el talento humano
encargado de cada nivel, la misma se ve expuesta a correcciones, manchones,
destrucción parcial, destrucción accidental y total.
Por lo que se considera que el desarrollo de una aplicación web permitirá
efectivizar el proceso y a su vez digitalizarlo, aportaría al ahorro de insumos
empleados para la elaboración de las fichas, como tinta, cartulina, corrector,
resaltadores y otros materiales.
Siendo así que las variables del proyecto serían:
Variable dependiente: La falta de automatización de los procesos.
Variable independiente: La herramienta web a desarrollar.
5
Situación conflicto – Nudos críticos
El conflicto encontrado dentro de la problemática investigada se presenta en los
predios de la Facultad de Arquitectura y Urbanismo, en el departamento de
secretaria general específicamente, donde se manejan todos los datos
académicos de los estudiantes que se encuentran cursando y que cursaron
anteriormente la carrera arquitectura, en esta se ingresa la información
concerniente a los siguientes datos:
Número de veces que un estudiante se matricula en una asignatura y su
estado, aprobado o reprobado.
Calificación cuantitativa de la asignatura, siendo está solamente el
promedio general.
Número de matrícula, folio y código, según el libro de matrículas.
Tema y criterio del trabajo de titulación, así como su tutor y revisor.
Datos personales de contacto, cédula de identidad, tipo de sangre,
dirección geográfica, número de celular, fotografía, colegio en el que
termino sus estudios secundarios, especialidad del bachillerato,
calificación de grado secundario.
Información de la mención escogida.
Resoluciones de consejo universitario, aprobación de terceras matriculas,
matriculas especiales.
El proceso empleado para el ingreso de información es de manera ascendente,
es decir el estudiante empieza con una ficha en blanco al matricularse al primer
semestre, y a lo largo de la carrera se va agregando la información de sus
asignaturas según el avance del mismo en su carrera, así como también se va
promoviendo de usuario en usuario, debido a que el criterio corporativo manejado
en la Facultad de Arquitectura, es un funcionario de secretaría por cada dos
semestres, esto garantiza que las fichas vayan a sufrir percances, deterioro,
laceraciones, manchones, sin contar con las de los estudiantes de años anteriores
6
tengan fichas con letra ilegible, pues el estilo caligráfico varia de individuo a
individuo.
Causas y Consecuencias del problema
CUADRO N. 1
Causas y consecuencias del problema
Causas Consecuencias
Existencia de procesos realizados
de forma tradicional.
Pérdida de información e
Incongruencia de datos.
Desinterés de implementación de
una herramienta sistematizada.
No implementación de herramientas
informáticas pertinentes.
Rotación excesiva del personal a
cargo de la información.
Retraso en la gestión de la
información del área.
Desconocimiento de herramientas
tecnológicas.
Manejo de procesos tradicionales.
Elaborado: Walter Vera, Andy Alvia
Fuente: Walter Vera, Andy Alvia
Delimitación del Problema
CUADRO N. 2
Delimitación del Problema
CAMPO TECNOLOGÍAS DE INFORMACIÓN.
ÁREA Tecnológica – Desarrollo.
ASPECTO Educación Superior.
TEMA Desarrollo De Pagina Web para la gestión de fichas estudiantiles
para la Universidad De Guayaquil en la Facultad De Arquitectura
Y Urbanismo, Carrera De Arquitectura para la optimización de los
procesos.
Elaborado: Walter Vera, Andy Alvia
Fuente: Walter Vera, Andy Alvia
7
Formulación del Problema
¿Cómo influye la no existencia de un aplicativo web, en la correcta
digitalización de la información de las fichas de registro estudiantil, en la Facultad
de Arquitectura y Urbanismo de la Universidad de Guayaquil?
Evaluación del Problema
En la problemática encontrada luego de determinar los criterios generales de
evaluación, se puede decir que el presente proyecto se encuentra inmerso en los
siguientes aspectos:
El problema encontrado es la no existencia de un aplicativo web, que
permita ingresar los datos académicos de los estudiantes en la ficha de registro
estudiantil, en la facultad de arquitectura y urbanismo, en la universidad de
Guayaquil, en el plazo de 3 meses, trabajo en colaboración con el personal de
secretaria general, por lo que se encuentra delimitado.
Así mismo la problemática mencionada anteriormente es clara, pues se
conoce la influencia para la consecuencia de la misma, así también la propuesta
para resolver dicho problema, en este caso el desarrollo de la página web.
Es evidente, pues se tienen identificadas las manifestaciones que impactan
la no existencia de un aplicativo, y por ende es observable su impacto en el
desarrollo de las actividades académicas.
Es completamente factible, pues el mismo está basado en una necesidad
imperativa de una automatización de procesos manuscritos dentro de la secretaría
general en la mencionada facultad.
8
Objetivos
Objetivo General
Diseñar una página web, para la gestión de las fichas estudiantiles en la
Facultad de Arquitectura y Urbanismo Carrera de Arquitectura con la finalidad de
optimizar los procesos operativos.
Objetivos Específicos
Revisar y analizar los procesos actuales del registro de fichas estudiantil.
Diseñar un entorno apropiado de Base de Datos, para la gestión de fichas
estudiantiles de la FAU.
Diseñar la página web en base a los requerimientos establecidos.
Desarrollar el entorno web con herramientas Open Source.
Diseñar la plantilla para generar reporte.
Alcances del Problema
Los alcances del proyecto son:
Permitir crear un nuevo registro de estudiante de la carrera de arquitectura, como
también podrá modificar los datos y borrar todo un registro de la base de dato.
Mostrar todos los registros de los estudiantes almacenados en el BD ya sea por
ciclo o por filtrado de información.
Almacenar en un BD en MySQL toda la información ingresada de los estudiantes,
como también de los usuarios autorizados para poder acceder a la información
desde la página web.
9
Generar reportes de la información que desee obtener el usuario ya sea por algún
filtrado de datos, como también se lo podrá realizar por algún ciclo específico. A
su vez estos reportes se podrán imprimir para hacer uso del mismo como
evidencia.
Crear la ficha digital del estudiante para que pueda ser impresa para que sea
validada por la institución, así se la podrá usar en algún trámite legal.
Justificación e Importancia
Las fichas han sido de gran ayuda para las instituciones que llevan un registro de
sus clientes, en el caso de unidades educativas como lo es la Universidad de
Guayaquil, estas fichas sirven para registrar a los estudiantes que ingresan a
cualquiera de sus Facultades, como lo hace la FAU (Facultad de Arquitectura y
Urbanismo). Poder llevar un histórico de cada estudiante es el beneficio que brinda
usar una ficha, ya que permite ingresar información personal como sus nombres,
fecha de nacimiento, cedulan de ciudadanía, pasaporte (en caso de extranjeros),
y otros datos personales que requieran la institución como su historial académico.
El historial académico, registra el proceso que lleva en su carrera, como el nivel
que se encuentra el estudiante, las materias que ha visto y las que le faltan por
ver, sus promedios, asistencias, el ciclo donde toma la materia, y otros datos que
permite saber cuándo termina su carrera como también si la ha perdido.
Todos estos datos lo manejan el departamento de secretaria, el cual debe ingresar
en cada periodo nueva información, en fichas que ya poseen datos, como también
crear nuevas fichas a estudiantes que pasan hacer legales en ese periodo. Esta
tarea la realizar de forma manual una vez terminada las matriculas, y si el
estudiante ha hecho cambio de materias o haya agregado nuevas materias, esta
ficha tendrá que modificarse haciendo tachones con corrector de esfero. El ser
humano tiene la desventaja que su mente puede distraerse por algún
acontecimiento del entorno, por lo que las personas a cargo del llenado pueden
equivocarse al asentar los datos, causando que el formato de cartulina se pierda.
La importancia del desarrollo de este proyecto es que brindara una forma más
eficiente de realizar la tarea de registrar datos en las fichas. Porque facilitara su
10
forma de ingresar de manera digital, liberando la forma tradicional de hacerlo y
evitando los errores que suelen cometer los secretarios al momento de acentuar
los datos a la ficha. Ayuda a la innovación del departamento de secretaria, a que
implemente nuevas tecnología que facilite el trabajo que se realiza a diario en
dicho departamento.
Una página web, beneficia a que pueda acceder al aplicativo desde cualquier Pc
o dispositivo que tenga un explorador web y que este en la red de la institución,
para que puedan trabajar en ella, ingresando con un usuario autorizado. Al igual
que los formatos de cartulina que son las fichas, podrá imprimir un formato
parecido al diseño ya establecido, con la ventaja de implementar nuevos campos
que requiere la FAU. También generara reportes que se necesiten presentar de
forma física.
Metodología del Proyecto
La metodología es la “disciplina que indicará que métodos y técnicas hay que usar
en cada fase del ciclo de vida de desarrollo del proyecto.”(Gallego 2012)
En la elaboración de la página web, para un óptimo desarrollo, se deben
implementar metodologías que vayan acorde a los requerimientos planteados, que
ayude a elaboración del software de manera ágil, y permita la facilidad de
mantenimiento del mismo. La metodología Scrum es la más indicada para este
tipo de trabajos, ya que trabaja de manera incremental e interactiva con el equipo
de desarrollo.
La metodología SCRUM se basa en el principio ágil de desarrollo iterativo e
incremental. Al período de trabajo para desarrollar un incremento potencialmente
útil y funcional del producto final se lo denomina ‘sprint’ y se recomienda una
duración de entre dos y cuatro semanas. (Jardón, A. V., & Bravo, 2013)
Una de las ventajas de esta metodología es que permite la rápida adaptación a
cambios, logrando minimizar los tiempos y costes. Este método tiene como
principio la creación de ciclos cortos para el desarrollo de cada interacción. Una
interacción en Scrum se la conoce como “Sprints”. El Sprint son iteraciones de 1
11
a 4 semanas, y se van sucediendo una detrás de otra. Los Sprints son de duración
fija terminan en una fecha específica, aunque no se haya terminado el trabajo, y
nunca se alargan. Se limitan en tiempo. (Deemer, Benefield et al. 2009).
SUPUESTOS Y RESTRICCIONES
SUPUESTOS
La página web permitirá ingresar nuevos estudiantes a la base de datos,
como también las calificaciones y todas las actividades que realice el
estudiante en su vida estudiantil. Este le permitirá generar consultas y
reportes que son las fichas estudiantiles, la cual cargara todos los datos
del estudiante elegido, para ser impreso y tener constancia de que
pertenece a la institución.
RESTRICCIONES
La página web no certifica que los datos ingresados sean verdaderos, ni a
la hora de generar una ficha tenga alguna validez legal. Para que este sea
así, deberá contar con el sello del departamento, así ellos validan que dicha
información es verídica y sirve para cualquier trámite que se requiera.
Este prototipo solo estar habilitado solo para una de las carreras de la
facultad, que es la carrera de Arquitectura. Por lo que no se podrá generar
fichas para la otra carrera que brinda la institución.
Los requerimientos mínimos que se deberá tener en cuenta para poner en
producción esta página web son los siguientes:
Hardware
Disco Duro 500 GB
Procesador Intel Core I3 (4 núcleos) 2.5 Ghz
4GB de Memoria RAM
Software
12
Sistema Operativo Windows
Xampp
MySQL
PLAN DE CALIDAD (PRUEBAS A REALIZAR)
De acuerdo con los requerimientos establecidos por parte del usuario se realizará
las pruebas funcionales y de usabilidad, que permitirá validar que la página web
sea capaz de cumplir con lo que el usuario solicitó. La prueba de usabilidad
ayudará a entender el funcionamiento de la herramienta desde el punto de vista
del usuario.
Se realizará encuesta a la parte administrativa y a los usuarios de la página web
para tener en consideración su punto de vista acerca del aplicativo, sus
recomendaciones, así como también saber su grado de aceptación al momento
de usar la herramienta.
13
CAPÍTULO II
MARCO TEÓRICO
ANTECEDENTES DEL ESTUDIO
El ser humano realizó por largo tiempo procedimientos manuales para cumplir con
diferentes tipos de tareas. Con el transcurso del tiempo todo ha ido cambiando,
estos cambios se han adaptado de acuerdo al modo de vida que lleve la
generación y sus exigencias, teniendo como tendencia mejorar la eficiencia y
eficacia. En este caso se puede definir eficiencia como la relación entre los
recursos utilizados para cumplir un procedimiento y los logros conseguidos con el
mismo. Se entiende que la eficiencia se da cuando se utilizan menos recursos
para lograr un mismo objetivo, o al contrario, cuando se logran más objetivos con
los mismos o menos recursos.
Por otro lado, se puede definir eficacia como el nivel de cumplimiento de metas y
objetivos. La eficacia hace referencia a la capacidad para lograr lo que se propone.
En la historia Ecuatoriana, no siempre se ha destacado por ser los pioneros en
muchas tecnologías o innovar en modos de trabajo a pesar de contar con mentes
brillantes con mucha capacidad. El avance de la tecnología y la importancia que
el tiempo ha tomado en la generación actual al momento de trabajar a cambiado
nuestro modo de pensar y ahora se toman en cuenta opiniones que tengan que
ver con estos temas. La producción de software hecho en Ecuador ha crecido
significativamente con respecto con años anteriores, en los que se usaba software
extranjero para realizar nuestras operaciones. Inclusive la demanda de software
para mejorar la eficiencia y eficacia de los procedimientos ha aumentado. También
la implementación de la automatización o digitalización de algunos procesos ha
ido aumentando con el tiempo, esto con el fin de cumplir con más tareas en el
mismo tiempo o realizarlas de una manera más segura.
14
FUNDAMENTACIÓN TEÓRICA
OPEN SOURCE
Open Source es una expresión del inglés que pertenece al ámbito informático. Se
puede traducir como “fuente abierta”, se suele referir a esta expresión en su
versión original.
Gráfico N. 1
Open Source Initiative
Elaborado: opensource.org
Fuente: opensource.org
Se denomina Open Source a los programas informáticos que permiten el acceso
a su código de programación, lo que facilita la modificación por parte de otros
programadores ajenos a los desarrolladores originales del software en cuestión.
No es lo mismo el software Open Source, que cuenta con la característica de
presentar su código abierto, y el software libre que puede descargarse y
distribuirse de manera gratuita. Existe software libre que no ofrece acceso a su
código y por lo tanto no se puede considerar como Open Source, y programas
Open Source que se distribuyen de manera comercial o que se debe tener
autorización para modificarlos.
Pese a que los dos conceptos suelen confundirse, la idea de Open Source está
vinculado a una mentalidad de trabajo conjunto sobre algún programa informático.
Cuando se brinda acceso al código fuente, la comunidad de programadores puede
15
hacer sus aportes para solucionar fallos, incrementar el tiempo de vida, y aumentar
su usabilidad.
“El software de código abierto (OSS) es software cuyo código fuente está
disponible públicamente, aunque los términos de licenciamiento específicos
varían. Las licencias deben cumplir diez condiciones para ser consideradas
licencias de OSS”.(Cataldi and Salgueiro 2007)
En términos generales se puede decir que el software de código abierto es un
software desarrollado por y para la comunidad de usuarios.
Historia de la OSI
El desarrollo basado en el intercambio y la mejora colaborativa del código fuente
del software tiene una historia en esencia tan larga como el desarrollo del software
mismo. A finales del año de 1990, el interés y la participación en este fenómeno
aumentaron de manera notable con el reconocimiento general de Linux en
publicaciones como Forbes y el lanzamiento del código fuente del navegador
Netscape.
OSI (Open Source Initiative) se formó en 1998 como una organización educativa,
de defensa y de administración en este importante momento de la historia del
desarrollo colaborativo.
Acuñando “código abierto”
La etiqueta de "código abierto" se creó en una sesión estratégica celebrada el 3
de febrero de 1998 en Palo Alto, California, poco después del anuncio del
lanzamiento del código fuente de Netscape. La sesión de estrategia creció al darse
cuenta de que la atención en torno al anuncio de Netscape había creado la
oportunidad de educar y abogar por la superioridad de un proceso de desarrollo
abierto.
Los conferencistas creyeron que los fundamentos pragmáticos que motivaron a
Netscape a publicar su código ilustraron una forma valiosa de interactuar con
16
potenciales usuarios de software y desarrolladores, y los convencieron de crear y
mejorar el código fuente al participar en una comunidad comprometida. Los
conferencistas también creyeron que sería útil tener una sola etiqueta que
identificara este enfoque y lo distinguiera de la etiqueta "software libre", enfocada
filosófica y políticamente. La lluvia de ideas para esta nueva etiqueta finalmente
convergió en el término "fuente abierta", originalmente sugerido por Christine
Peterson.
Dos de los presentes en la reunión de Palo Alto (Eric Raymond y Michael Tiemann)
servirían más tarde como presidentes de OSI, y otros asistentes (incluyendo Todd
Anderson, Jon "Maddog" Hall, Larry Augustin y Sam Ockman) se convirtieron en
los principales defensores de la organización.
La adopción del término fue rápida, con el apoyo inicial de figuras de la comunidad,
como Linus Torvalds, y de una Cumbre de Software Libre de abril de 1998 a la
que asistieron muchas personas clave, incluidas las figuras fundadoras de
sendmail, Perl, Python, Apache y representantes del IETF y el Consorcio de
Software de Internet.
Fundación de la OSI
OSI fue fundada conjuntamente por Eric Raymond y Bruce Perens a finales de
febrero de 1998, con Raymond como primer presidente, Perens como
vicepresidente y un Consejo de Administración inicial que incluye a Brian
Behlendorf, Ian Murdock, Russ Nelson y Chip Salzenberg.
OSI fue concebido como una organización educativa y de defensa general para
ejecutar la misma misión acordada en la Cumbre del Software Libre celebrada en
abril de 1998. En la reunión de lanzamiento, la Junta original aceptó esta misión
general y decidió centrarse específicamente en explicar y proteger el " etiqueta de
código abierto. También se realizó algún activismo temprano, con OSI apoyando
una petición para alentar al gobierno de EE. UU. A usar software de código abierto
en enero de 1999.
17
Evaluación de licencias
Una de las primeras tareas realizadas por OSI fue redactar la definición de código
abierto (OSD) y utilizarla para comenzar a crear una lista de licencias aprobadas
por OSI.
La definición de código abierto fue originalmente derivada de las Pautas de
software libre de Debian (DFSG). Bruce Perens había compuesto el borrador
original del DFSG, y fue editado, refinado y aprobado como política formal por la
comunidad de desarrolladores de Debian en 1997. La definición de código abierto
se creó luego durante el lanzamiento del OSI en febrero de 1998 al revisar el
DFSG y eliminar referencias específicas de Debian.
Para octubre de 1999, OSI había publicado su primera lista formal de licencias
aprobadas. La lista de licencias de OSI, actualizada muchas veces desde
entonces, ha seguido siendo la lista canónica de licencias de código abierto y
muchos terceros la mencionan, incluidos gobiernos y organismos de
normalización.
En 2004, la OSI agregó la cláusula 10 al OSD para tratar algunos problemas
relacionados con la concesión de licencias de click-wrap. De lo contrario, el OSD
se ha mantenido estable desde su inicio, con aclaraciones de redacción menores
en otras cláusulas.
También en 2004, debido a un marcado aumento en el número de licencias de
fuente abierta, OSI lanzó una campaña para reducir el crecimiento en el número
de licencias de fuente abierta. Esto dio como resultado la publicación en 2006 de
un informe de Proliferación de licencias y la re categorización de la lista de
licencias en agrupaciones de licencias basadas en el uso y el contenido. El informe
y el proceso de OSI ayudaron a concienciar más ampliamente sobre el problema
general de la proliferación de licencias y a reducir la creación y el uso de nuevas
licencias.
18
PROGRAMADOR
Un programador es aquella persona que escribe, depura y mantiene el código
fuente de un programa informático, es decir, del conjunto de instrucciones que
ejecuta el hardware de una computadora para realizar una tarea determinada. La
programación es una de las principales disciplinas dentro de la informática. En la
mayoría de los países, programador es también una categoría profesional
reconocida.
“La gran empresa ve al programador como un integrador con dotes de creatividad
la pyme y spin-off como un técnico con cierto toque integrador, y la administración
pública como un técnico que incluye tareas de codificador”. (Belmonte Fernández
and Granell Canut 2013)
Gráfico N. 2
Actividades de un Programador
Elaborado: www.scratch.school
Fuente: www.scratch.school
Los programadores también reciben el nombre de desarrolladores de software,
aunque estrictamente forman parte de un equipo de personas de distintas
especialidades (mayormente informáticas), y siendo que el “equipo” es
propiamente el desarrollador.
19
FUNCIÓN DEL PROGRAMADOR
El programador se encarga de la implementación de prototipos mediante un
lenguaje de programación, que compilados pueda entender un aparato
tecnológico.
Inicialmente, la profesión se formalizó desde el enfoque Tayloriano de la
especialización de funciones en la empresa. Así, el proceso de producción de
software se concibe como un conjunto de tareas altamente especializadas donde
está claramente definido el papel de cada categoría profesional:
EL ANALISTA
El analista, tiene como cometido analizar un problema y describirlo con el
propósito de poder solucionarlo mediante un sistema de información.
EL PROGRAMADOR
El programador cuya única función consistía en trasladar las especificaciones del
analista en código ejecutable para la computadora. Dichas especificaciones se
recogen en un documento denominado cuaderno de carga, medio de
comunicación entre ambos. Esto se consideraba un trabajo mecánico y de baja
cualificación.
Hoy día se reconoce que este enfoque no es válido para organizar tareas de tipo
intelectual, como es el desarrollo de software. De manera que la profesión de
programador ha ido evolucionando. Las dificultades de comunicación entre
analistas y programadores (un mero documento no basta para describir lo que se
quiere hacer) dio origen a una categoría de profesional intermedia, denominada
analista-programador. La concepción original del programador ha desaparecido
siendo sustituido por la de un profesional mucho más formado y con unas
funciones menos "mecánicas".
20
La profesión de analista también ha evolucionado, surgiendo el concepto
diseñador (de software). Esto se debe a los avances de la ingeniería del software
donde se reconoce que el análisis es una actividad compleja y distinta del diseño.
Escuetamente, el análisis describe el problema (es decir qué hacer) mientras que
el diseño describe la solución (cómo hacerlo).
SOFTWARE
Un software no solamente son programas para computadoras ya que en la
actualidad existen más dispositivos que pueden ejecutar aplicaciones, así como
Ian Sommerville (2005) menciona en su libro “Muchas personas asocian el término
software con los programas de computadora. Sin embargo, yo prefiero una
definición más amplia donde el software no son sólo programas, sino todos los
documentos asociados y la configuración de datos que se necesitan para hacer
que estos programas operen de manera correcta” (p.5). Con esto se puede decir
que un software en la actualidad no solamente va dirigido para las computadoras
y que desde antes ya se podía considerar que era algo más.
“Un programa no es más que un conjunto de instrucciones que le dicen al
ordenador qué tiene que hacer. Los programas los escriben los seres humanos
utilizando lenguajes de programación”. (Adell and Bernabé 2007)
El software se lo puede definir tanto como programas de ordenador y
documentación asociada, así como el equipamiento lógico e intangible de un
equipo tecnológico.
PAGINAS WEB
En términos generales se le llama página web al documento que forma parte de
un sitio web y que suele contar con enlaces (también conocidos como
hipervínculos o links) para de este modo hacer la navegación entre contenidos
más fácil.
Una página web se define como un documento electrónico el cual contiene
información textual, visual y/o sonora que se encuentra alojado en un servidor y
puede ser accesible mediante el uso de navegadores.
21
Gráfico N. 3
Imagen de página web
Elaborado: conceptodefinicion.de
Fuente: conceptodefinicion.de
Las páginas web se encuentran contenidas dentro de los sitios web o websites,
mejor conocidos entre los desarrolladores con el nombre de dominios que alojan
o almacenan el contenido que se desarrolla y que será visualizado o utilizado por
los usuarios
Las páginas web están desarrolladas con lenguajes de marcado como HTML, que
pueden ser interpretados por los navegadores como Firefox, Chrome, Opera,
entre otros. De este modo, una página web puede presentar información de
distintos formatos como textos, imágenes, sonidos, videos o animaciones.
Entre las características que tiene una página web y que sirven para identificarla
como tal se cuentan las siguientes: cuenta con información textual y también con
material de tipo audiovisual, normalmente cuenta con un diseño atractivo, esta
optimizada y sirve como la tarjeta de presentación de una empresa, una persona
o un profesional en concreto.
Debido al avance y la presencia que tiene el internet en nuestras vidas hoy en día,
la mayoría de las empresas se han puesto en marcha y han creado su página web.
Y es que han aprendido que la misma les sirve para darse a conocer, para llamar
22
la atención de nuevos clientes y, por lo tanto, para mejorar sus resultados
económicos.
Las páginas web ya no son utilizadas únicamente para presentar información al
usuario, actualmente se usan para la interacción entre el usuario y la empresa,
llegando a convertirse en lo que se conoce como una aplicación web, la cual es
usada por las empresas para agilizar sus procesos, ahorrar mano de obra, ahorrar
en establecimientos, entre otros beneficios que conlleva tener una página web.
HTML
“Es un lenguaje de programación de páginas web básico pero imprescindible para
los programadores. Su funcionamiento se basa en el uso de etiquetas que dan las
instrucciones necesarias al navegador para que interprete como debe mostrar los
elementos en la página” (Vértice 2009).
Gráfico N. 4
Imagen de lenguaje HTML
Elaborado: https://www.thoughtco.com/coding-languages-4140424
Fuente: https://www.thoughtco.com/coding-languages-4140424
El Lenguaje de Marcado de Hipertexto, en inglés, Hypertext Mark-Up Language,
(HTML) es el lenguaje de marcado predominante para la construcción de páginas
Web. Permite representar el contenido enriquecido en forma de texto, así como
complementar el texto con objetos, como el caso de las imágenes. HTML describe
la estructura del contenido, además, puede manejar la apariencia de un
23
documento y también su comportamiento a través de un script, por ejemplo
JavaScript (Claro and Navarro 2010).
Para ser más concretos HTML es el lenguaje en el que se escriben la mayoría de
páginas web. Los diseñadores utilizan el lenguaje HTML para poder crear sus
páginas web, los programas utilizados por los diseñadores generan páginas
escritas en HTML y los navegadores que se utilizan para navegar en internet
muestran las páginas web después de leer su contenido HTML.
Historia de HTML
El origen de HTML se remonta a los años de 1980, cuando un físico llamado Tim
Berners-Lee, trabajador de la “Organización Europea para la Investigación
Nuclear” (CERN) propuso un nuevo sistema de “hipertexto” para poder compartir
documentos.
Los sistemas de “hipertexto” fueron desarrollados años antes. En el ámbito de la
informática, el “hipertexto” permitía a los usuarios acceder a la información
relacionada con los documentos electrónicos que estuvieran visualizando. De
cierto modo los sistemas primitivos de “hipertexto” se podrían asimilar a los
enlaces o links de las páginas web de hoy en día.
Al finalizar el desarrollo de su sistema de “hipertexto”, Tim Berners-Lee lo presento
a una convocatoria organizada para desarrollar un sistema de “hipertexto” para
internet. Luego de juntarse con el ingeniero en sistemas Robert Cailliau, llegaron
a presentar una propuesta ganadora llamada “www” (WorldWideWeb).
El primer documento formal con descripción HTML fue publicado en 1991 con el
nombre “HTML tags” (Etiquetas HTML) y todavía hoy puede ser consultado online
a modo de “reliquia informática”.
En el año de 1993 se realizó la primera propuesta oficial para convertir HTML en
un estándar por parte del organismo IETF (Internet Engineering Task Force).
Aunque ninguna de las dos propuestas de estándar llamadas HTML y HTML+
consiguieron convertirse en estándar oficial, se obtuvieron avances significativos
24
ya que en esta época se definieron las etiquetas para imágenes, tables y
formularios.
HTML 2.0
(Pionero: Tim O'Reilly, 2003) Con el término Web 2.0, surge un cambio de
paradigma sobre la concepción de Internet y sus funcionalidades, que ahora
abandonan su marcada unidireccionalidad y se orientan más a facilitar la máxima
interacción entre los usuarios y el desarrollo de redes sociales (tecnologías
sociales) donde puedan expresarse y opinar, buscar y recibir información de
interés, colaborar y crear conocimiento (conocimiento social), compartir
contenidos. (Marqués 2007)
En 1995, el organismo de IETF organizo un grupo de trabajo de HTML logrando
publicar, el 22 de septiembre del mismo año, el estándar de HTML 2.0. Aunque el
nombre hace referencia a una segunda versión, HTML 2.0 realmente fue el primer
estándar oficial de HTML.
HTML 3.0
Desde el año de 1996, el organismo de estandarización llamado W3C (World Wide
Web Consortium) empezó a publicar los estándares de HTML. El 14 de Enero del
año de 1997 fue publicada la versión de HTML 3.2 y fue la primera recomendación
de HTML que W3C publicó, esta incorporaba los últimos avances de las páginas
web desarrolladas hasta el año de 1996, como applets de java y texto que fluye
alrededor de las imágenes.
HTML 4.0
El 24 de abril del año de 1998 se publicó HTML 4.0, siendo una versión con
correcciones a la publicación original de 18 de Diciembre del año de 1997 y
representa un gran salto en comparación con las versiones anteriores. Entre sus
novedades que más destacaron se encuentran la posibilidad de incluir pequeños
programas o scripts en las páginas web, las hojas de estilos CSS, mejora de la
accesibilidad de las páginas diseñadas, mejoras en los formularios y tablas
complejas.
25
HTML5
HTML5 es la quinta versión del lenguaje HTML. Esta nueva versión junto con
CSS3, definen los nuevos estándares de desarrollo web, rediseñando el código
para resolver problemas y actualizándolo así a nuevas necesidades. Esta no se
encuentra limita solo a crear nuevas etiquetas o atributos, sino que también
incorpora muchas características nuevas y proporciona una plataforma de
desarrollo para aplicaciones web complejas mediante los APIs.
Gráfico N. 5
Logo de HTML5
Elaborado: https://insights.dice.com/
Fuente: https://insights.dice.com/
HTML5 está destinado a sustituir no sólo HTML 4, sino también XHTML 1 y DOM
(Document Object Model) Nivel 2. Esta versión permite tener una mayor
interacción entre nuestras páginas web y el contenido media como videos, audios
o animaciones, así como una mayor facilidad a la hora de codificar nuestro diseño
básico.
Algunas de las nuevas características de HTML5 serían:
Nuevas etiquetas semánticas para estructurar los documentos
HTML, destinados a remplazar la necesidad de tener una etiqueta
<div> que identifique cada bloque de la página.
26
Los nuevos elementos multimedia como <audio> y <video>.
La integración de gráficos vectoriales escalables (SVG) en
sustitución de los genéricos <object>, y un nuevo elemento
<canvas> que permite dibujar en él.
El cambio, redefinición o estandarización de algunos elementos,
como <a>, <cite> o <menu>.
MathML para fórmulas matemáticas.
Almacenamiento local en el lado del cliente.
Nuevas APIs.
AJAX (Asynchronous JavaScript and XML)
Ajax no es un lenguaje de programación nuevo, sino una técnica para desarrollar
software mejor y más rápidamente, y una aplicación más interactiva de las
aplicaciones web.(Arias 2015)
Con AJAX, su JavaScript puede comunicarse directamente con el usuario, puede
negociar datos con un servidor web sin necesidad de recargar la página. AJAX
usa la transferencia de datos asíncrona (peticiones del HTTP) entre el navegador
y servidor web, permitiendo que las páginas webs envíen pedazos de pequeñas
informaciones del usuario en vez de enviar las páginas enteras. (Arias 2015)
CSS
“Es un lenguaje que trabaja junto con HTML para proveer estilos visuales a los
elementos de la página web, como tamaño, color, fondo, bordes, etc.” (Gauchat
2012).
La separación entre contenido y diseño permite diferentes visualizaciones de un
mismo sitio web o una aplicación, lo que ayuda a personalizar interfaces y
rentabilizar el esfuerzo de generar dicho interfaz, lo que redunda en que los
27
usuarios de una aplicación web puedan generar sus propios contenidos,
ofreciendo distintos diseños a partir de una misma estructura. (Serrano Cobos
2006)
Historia de CSS
Alrededor del año de 1970 poco tiempo después que el lenguaje de etiquetas
SGML (Standard Generalized Markup Language) aparecieron las hojas de estilos.
Desde de la creación de SGML, se observó la necesidad de definir un mecanismo
que pudiera permitir aplicar de forma consistente diferentes estilos a los
documentos electrónicos.
El mayor impulso de los lenguajes de hojas de estilos se produjo con el boom del
Internet y el aumento considerable en el uso del lenguaje HTML para la creación
de documentos electrónicos. La batalla entre los navegadores y la falta de un
estándar para definir los estilos dificultaban la creación de documentos que
tuvieran una misma apariencia en diferentes navegadores.
El organismo W3C (World Wide Web Consortium), quien es el encargado de crear
todos los estándares relacionados con la web, propuso la creación de un lenguaje
de hojas de estilos específico para el lenguaje HTML y se presentaron nueve
propuestas. Las dos propuestas que se tuvieron en cuenta fueron la CHSS
(Cascading HTML Style Sheets) y la SSP (Stream-based Style Sheet Proposal).
La propuesta CHSS fue realizada por Hakon Wium Lie y SSP fue propuesto por
Bert Bos. Entre finales de 1994 y 1995 Lie y Bos se unieron para definir un nuevo
lenguaje que tomaba lo mejor de cada propuesta y lo llamaron CSS (Cascading
Style Sheets).
En 1995, el W3C apostó por el desarrollo y estandarización de CSS y lo añadió a
su grupo de trabajo de HTML. Y la primera publicación de la recomendación oficial
conocida como “CSS nivel 1” se realizó a finales de 1996, por el W3C.
A principios de 1997, el W3C decide separar los trabajos del grupo de HTML en
tres secciones: el grupo de trabajo de HTML, el grupo de trabajo de DOM y el
grupo de trabajo de CSS.
28
El 12 de Mayo de 1998, el grupo de trabajo de CSS publica su segunda
recomendación oficial, conocida como "CSS nivel 2" o mejor conocida como CSS
2.1.. La adopción de CSS por parte de los navegadores ha requerido un largo
periodo de tiempo. El mismo año que se publicó CSS 1, Microsoft lanzaba su
navegador Internet Explorer 3.0, que disponía de un soporte bastante reducido de
CSS. El primer navegador con soporte completo de CSS 1 fue la versión para Mac
de Internet Explorer 5, que se publicó en el año 2000.
Soporte de CSS en los Navegadores
El trabajo de los diseñadores web siempre se encuentra limitado por las
posibilidades de los navegadores que utilizan los usuarios para acceder a sus
páginas web. Motivo por el cual es imprescindible conocer el soporte de CSS en
cada uno de los navegadores más utilizados del mercado.
Internamente los navegadores están divididos en varios componentes. La parte
del navegador que se encarga de interpretar el código HTML y CSS para mostrar
las páginas se denomina motor. Desde el punto de vista del diseñador CSS, la
versión de un motor es mucho más importante que la versión del propio
navegador.
29
CUADRO N. 3
Grafica de soporte de CSS 1, 2.1 y 3 en cinco de los navegadores más utilizados por los usuarios
Elaborado:
http://librosweb.es/libro/css/capitulo_1/soporte_de_css_en_los_navegado
res.html
Fuente: Imagen extraída del libro “Introducción al CSS” Pag. 3
Los navegadores Firefox, Chrome, Safari y Opera son los más avanzados en el
soporte de CSS, ya que incluyen muchos elementos de la actual versión CSS 3 y
un soporte casi perfecto a la versión 2.1.
Por su parte, el navegador Internet Explorer sólo puede considerarse adecuado
desde el punto de vista de CSS a partir de su versión 7. Internet Explorer 6,
utilizado todavía por un número no despreciable de usuarios, sufre carencias muy
importantes y contiene decenas de errores en su soporte de CSS. Internet
Explorer 8 soporta casi todas las propiedades y características de CSS 2.1.
CSS 3
CSS3 es la última versión hasta la fecha y presenta como características
principales mayor control sobre el estilo de los elementos de una página web y
30
mayor número de efectos de visualización. Entre sus principales ventajas se tiene
que el código es más simple para muchas tareas y que cuenta con mayores
opciones de graficas por el contrario como desventaja se tiene que por el momento
no es 100% compatible con ningún navegador.
Gráfico N. 6
Imagen de logo de CSS3
Elaborado: https://www.pedroventura.com/desarrollo-web/herramientas-
para-ayudar-y-simplificar-el-desarrollo-de-css3/
Fuente: https://www.pedroventura.com/desarrollo-web/herramientas-
para-ayudar-y-simplificar-el-desarrollo-de-css3/
Esta versión pretende ampliar la versión CSS2.1 al traer consigo novedades muy
esperadas, como las esquinas redondeadas, sombras, gradientes, transiciones o
animaciones, y nuevos layouts como multi-columnas, cajas flexibles o maquetas
de diseño en cuadricula (grid layouts).
PHP
PHP es un acrónimo de PHP: Hypertext Preprocessor, es decir, "Preprocesador
de Hipertexto marca PHP". El hecho de que sea un preprocesador es lo que marca
la diferencia entre el proceso que sufren las páginas Web comunes, Escritas solo
en lenguaje HTML.(Beati 2015)
Personal Home Page (página personal) es un lenguaje de programación de
propósito general de código del lado del servidor originalmente diseñado para el
31
desarrollo web de contenido dinámico, es un lenguaje de código abierto muy
popular especialmente adecuado para el desarrollo web y que puede ser
incrustado en HTML.
PHP fue uno de los primeros lenguajes de programación del lado del servidor que
podían ser incorporados directamente en un documento HTML en lugar de llamar
a un archivo externo que procese los datos.
Lo que distingue a PHP de algo del lado del cliente como Javascript es que el
código es ejecutado en el servidor, generando HTML y enviándolo al cliente. El
cliente recibirá el resultado de ejecutar el script, aunque no se sabrá el código
subyacente que era. El servidor web puede ser configurado incluso para que
procese todos los ficheros HTML con PHP, por lo que no hay manera de que los
usuarios puedan saber qué se tiene debajo de la manga.
Achour, M., y Betz, F., y Dovgal, A., y Lopes, N., y Magnusson, H., y Richter, G.,
y Seguy, D., y Vrana, J., y Peter Cowburn (2017) Manual de PHP “Lo mejor de
utilizar PHP es su extrema simplicidad para el principiante, pero a su vez ofrece
muchas características avanzadas para los programadores profesionales. No
sienta miedo de leer la larga lista de características de PHP. En unas pocas horas
podrá empezar a escribir sus primeros scripts”.
HISTORIA DE PHP
PHP ha recorrido un largo camino desde su nacimiento a mediados de los 90.
Desde sus humildes comienzos hasta ser uno de los más importantes lenguajes
de programación web, la evolución de PHP es un cuento de hadas para "geeks".
Pero ojo, un crecimiento explosivo como tal no era una tarea fácil.
PHP tal y como se conoce hoy en día es en realidad el sucesor de un producto
llamado PHP/FI. Creado por Rasmus Lerdorf en 1994, la primera encarnación de
PHP era un conjunto simple de ficheros binarios CGI (Common Gateway Interface)
escritos en el lenguaje de programación C. Originalmente utilizado para rastrear
32
visitas de su currículum online, llamó al conjunto de scripts "Personal Home Page
Tools", más frecuentemente referenciado como "PHP Tools".
Con el paso del tiempo se quiso más funcionalidad, y Rasmus reescribió PHP
Tools, produciendo una implementación más grande y rica. Este nuevo modelo
fue capaz de interaccionar con bases de datos, y mucho más, proporcionando un
entorno de trabajo sobre cuyos usuarios podían desarrollar aplicaciones web
dinámicas y sencillas tales como libros de visitas. En junio del año de 1995,
Rasmus publicó el código fuente de PHP Tools, lo que permitió a los
desarrolladores usarlo como considerasen apropiado. Esto también permitió y
animó a los usuarios a proporcionar soluciones a los errores del código, y
generalmente a mejorarlo.
En septiembre del mismo año, Rasmus amplió PHP y por un corto periodo de
tiempo abandonó el nombre de PHP. Ahora, refiriéndose a las herramientas como
FI (Forms Interpreter), la nueva implementación incluía algunas de las funciones
básicas de PHP tal y como se conoce hoy.
Tenía variables como las de Perl, interpretación automática de variables de
formulario y sintaxis incrustada HTML. La sintaxis era similar a la de Perl, aunque
más limitada, simple y un poco inconsistente. De hecho, para introducir el código
en un fichero HTML, los desarrolladores tenían que usar comentarios de HTML.
Aunque este método no era del todo bien recibido, FI continuó gozando de
expansión y aceptación como una herramienta CGI pero todavía no
completamente como lenguaje. Sin embargo, esto comenzó a cambiar al mes
siguiente; en octubre de 1995 Rasmus publicó una versión nueva del código.
Recordando el nombre PHP, ahora era llamado “Personal Home Page
Construction Kit" y fue la primera versión que presumía de ser, en aquel momento,
considerada como una interfaz de scripts avanzada.
El lenguaje fue deliberadamente diseñado para asemejarse a C en estructura,
haciéndolo una adopción sencilla para desarrolladores familiarizados con C, Perl,
y lenguajes similares. Habiendo sido así bastante limitado a sistemas UNIX y
compatibles con POSIX, el potencial para una implementación de Windows NT
estaba siendo explorada.
33
El código fue completamente rehecho de nuevo, y en abril de 1996, combinando
los nombres de versiones anteriores, Rasmus introdujo PHP/FI. Esta
implementación de segunda generación comenzó realmente a desarrollar PHP
desde un conjunto de herramientas dentro de un lenguaje de programación de
derecho propio. Incluía soporte interno para DBM, mSQL, y bases de datos
Postgres95, cookies, soporte para funciones definidas por el usuario, y mucho
más. Ese mes de junio, PHP/FI brindó una versión 2.0. Sin embargo, un
interesante hecho sobre esto, es que sólo había una única versión completa de
PHP 2.0. Cuando finalmente pasó de la versión beta en noviembre de 1997, el
motor de análisis subyacente ya estaba siendo reescrito por completo.
Aunque vivió una corta vida de desarrollo, continuó gozando de un crecimiento de
popularidad en el aún joven mundo del desarrollo. En 1997 y 1998, PHP/FI tenía
un culto de varios miles de usuarios en todo el mundo. Una encuesta de Netcraft
en mayo de 1998 indicó que cerca de 60,000 dominios reportaron que tenían
cabeceras que contenían "PHP", indicando en efecto que el servidor host lo tenía
instalado. Este número se correspondía con aproximadamente el 1% de todos los
dominios de Internet del momento. A pesar de estas impresionantes cifras, la
maduración de PHP/FI estaba condenada por limitaciones; mientras había varios
contribuidores menores, aún era desarrollado principalmente por un individuo.
PHP 3
PHP 3.0 es la versión que más se parece al PHP que existe hoy. Encontrando a
PHP/FI 2.0 todavía ineficiente y falto de características que necesitaban para
impulsar una aplicación de comercio electrónico que estaban desarrollando para
un proyecto de universidad.
Andi Gutmans y Zeev Suraski, de Tel Aviv, Israel, comenzaron otra nueva versión
del analizador subyacente en 1997. Proponiendo Rasmus online, discutieron
varios aspectos de la implementación actual y su redesarrollo de PHP. En un
esfuerzon para mejorar el motor y comenzar a construir sobre la base de usuario
de PHP/FI existente, Andi, Rasmus y Zeev decidieron colaborar en el desarrollo
de un nuevo e independiente lenguaje de programación. Este lenguaje
completamente nuevo fue publicado bajo un nuevo nombre, que eliminó la
34
implicación del uso limitado personal que el nombre PHP/FI tenía. Fue
renombrado simplemente como “PHP”, con el significado de un acrónimo
recursivo PHP: Hypertext Preprocessor.
Una de las mejores características de PHP 3.0 era su gran extensibilidad. Además
de proveer a los usuarios finales de una interfaz madura para múltiples bases de
datos, protocolos, y APIs, la sencillez de ampliar el lenguaje mismo atrajo a
docenas de desarrolladores que presentaron variedad de módulos. Podría decirse
que esta fue la clave para el tremendo éxito de PHP 3.0. Otras características
clave introducidas en PHP 3.0 incluían el soporte para programación orientada a
objetos y una sintaxis de lenguaje mucho más potente y consistente.
Ya con muchos nuevos desarrolladores de todo el mundo unidos al esfuerzo, PHP
3.0 fue anunciado por el nuevo Equipo de Desarrollo de PHP como el sucesor
oficial de PHP/FI 2.0 en junio del año de 1998. El desarrollo activo de PHP/FI 2.0,
que estaba casi parado desde noviembre del año anterior, fue oficialmente
finalizado.
Después de aproximadamente nueve meses de pruebas públicas, cuando el
anuncio de la versión oficial de PHP 3.0 vino, este ya se encontraba instalado en
más de 70,000 dominios de todo el mundo, y ya no se encontraba limitada a
sistemas operativos compatibles con POSIX. Una relativamente pequeña parte de
los dominios que tenían instalado PHP estaban albergados en servidores que
ejecutaban Windows 95, 98, y NT, y Macintosh. En este punto, PHP 3.0 estaba
instalado en aproximadamente el 10% de los servidores web de Internet.
PHP 4
En el año de 1998, poco después del lanzamiento oficial de PHP 3.0, Andi
Gutmans y Zeev Suraski empezaron a trabajar en una nueva versión del núcleo
de PHP. Los objetivos de diseño fueron mejorar la ejecución de aplicaciones
complejas y mejorar la modularidad del código base de PHP. Estas aplicaciones
fueron posibles por las nuevas características de PHP 3.0 y el apoyo de una gran
variedad de bases de datos y APIs de terceros, pero PHP 3.0 no estaba diseñado
para un mantenimiento tan complejo de aplicaciones eficientemente.
35
El nuevo motor, apodado “Motor Zend” (proviene de sus nombres de pila, Zeev y
Andi), alcanzó estos objetivos de diseño de forma satisfactoria, y fue introducida
por primera vez a mediados de 1999. En mayo del año 2000 fue oficialmente
publicado PHP 4.0, basado en este motor, y asociado con un gran rango de
nuevas características adicionales, casi dos años después que su predecesor. No
solo obtuvo una mejora de rendimiento, PHP 4.0 incluía otras características clave
como el soporte para la mayoría de los servidores Web, sesiones HTTP, buffers
de salida, formas más seguras de controlar las entradas de usuario y muchas
nuevas construcciones de lenguaje.
PHP 5
PHP 5 fue lanzado en Julio del 2004 después de un largo. Está básicamente
impulsado por el núcleo Zend Engine 2.0 que contiene un nuevo modelo de
objetos y docenas de nuevas opciones.
El equipo de desarrollo de PHP incluye docenas de desarrolladores, así como
docenas de otras personas trabajando en proyectos relacionados y de soporte
para PHP, como PEAR, PECL, y documentación, y una infraestructura en red
subyacente de más de cien servidores web individuales en seis de los siete
continentes del mundo. Aunque es solo una estimación basada en estadísticas de
años anteriores, es seguro suponer que PHP ahora está instalado en diez o quizá
cien millones de dominios en todo el mundo.
PHP 5 fue lanzado 4 años después de la introducción de PHP 4 a la escena de
Internet, con el objetivo de brindar una nueva funcionalidad al lenguaje PHP. El
equipo de PHP se centró en lo que faltaba o no estaba bien soportado en las
versiones anteriores. La quinta revisión se centra en 3 áreas principales:
programación orientada a objetos, soporte XML y MySQL.
“PHP es una de las piedras angulares de la programación open source web, un
marco diseñado para apoyar la innovación y fomentar el potencial que tiene la web
para ofrecer” (Muñoz 2013).
36
Gráfico N. 7
Logo de PHP5
Elaborado: http://argumentum.cl/
Fuente: http://argumentum.cl/
Programación Orientada a Objeto
Si bien esta característica estaba presente en PHP 4, PHP 5 presenta un modelo
de objetos completamente revisado, que ahora ofrece:
Constructores
Destructores
Propiedades y métodos públicos, protegidos y privados
Interfaces
Clases abstractas
Indicaciones tipo clase
Propiedades y métodos estáticos
37
Propiedades y métodos finales
Métodos mágicos
En PHP 5, los programadores también pueden pasar objetos por referencia y no
solo por valor.
Extensión MySQL retrabajada
PHP 5 viene con una extensión MySQL completamente modificada para
proporcionar soporte para la versión más nueva de MySQL, ahora etiquetada
como MySQLi, que significa MySQL mejorada. La nueva extensión ofrece:
Declaraciones preparadas
Parámetros de entrada y salida enlazados
Conexiones SSL
Funciones de consultas múltiples
MySQL ahora puede usar el nuevo modelo OO de PHP
Extensión XML reelaborada
En PHP4, las herramientas XML hicieron el trabajo, pero en realidad no estaban
diseñadas para funcionar juntas y, a menudo, se necesitaban parches para lograr
la funcionalidad necesaria. PHP5 trae un analizador XML reelaborado, con
herramientas, capaces de trabajar entre sí. Las nuevas extensiones XML:
Pueden trabajar juntos como un todo.
Se incluyen en una sola biblioteca XML: libxml2.
Cumplir completamente con las especificaciones W3.
Proporcionar procesamiento de datos eficiente
38
Puede proporcionarle la herramienta XML exacta para la tarea en
cuestión.
PHP5 también presenta la extensión Simple XML, que le permite manejar
fácilmente los datos en documentos XML, tratarlos como una matriz y recorrerlos.
Manejo de excepciones
Las excepciones son muy populares en otros lenguajes orientados a objetos,
como Python y Java, y faltaban por completo en PHP 4. Con PHP 5, el manejo de
excepciones ahora está presente en el núcleo de PHP, lo que permite separar la
lógica de programación y el error manejo. El codificador ahora puede colocarlos
en bloques contiguos para facilitar la referencia.
MySQL
MySQL es el sistema de base de datos más popular utilizado con PHP.
MySQL es un sistema de gestión de bases de datos relacional desarrollado bajo
licencia dual GPL/Licencia comercial por Oracle Corporation y está considerada
como la base datos open source más popular del mundo.
Es un sistema de gestión de base de datos relacional. Se ofrece bajo la Licencia
Pública General de GNU, más conocida por su nombre: GNU General Public
License, o simplemente por su acrónimo del inglés GNU/GPL. Su diseño multihilo
le permite soportar una gran carga de forma eficiente, es un gestor muy usado
debido a su rapidez y facilidad de uso. Esta gran aceptación se debe, en parte, a
que existen muchas librerías y otras herramientas que permiten su uso a través
múltiples lenguajes de programación, además de su fácil instalación y
configuración. (Sánchez and Echeverry 2004)
39
Gráfico N. 8
Logotipo de MySQL
Elaborado: https://blog.siliconstraits.vn/commands-help-working-mysql-
easier/
Fuente: https://blog.siliconstraits.vn/commands-help-working-mysql-
easier/
Es un sistema de gestión de bases de datos relacional, fue creada por la empresa
sueca MySQL AB, la cual tiene el copyright del código fuente del servidor SQL,
así como también de la marca.
MySQL es un software de código abierto, licenciado bajo la GPL de la GNU,
aunque MySQL AB distribuye una versión comercial, en lo único que se diferencia
de la versión libre, es en el soporte técnico que se ofrece, y la posibilidad de
integrar este gestor en un software propietario, ya que, de otra manera, se
vulneraría la licencia GPL.
El lenguaje de programación que utiliza MySQL es Structured Query Language
(SQL) que fue desarrollado por IBM en 1981 y desde entonces es utilizado de
forma generalizada en las bases de datos relacionales.
Historia
MySQL surgió alrededor de la década del 90, Michael Windenis comenzó a usar
mSQL para conectar tablas usando sus propias rutinas de bajo nivel (ISAM). Tras
unas primeras pruebas, llegó a la conclusión de que mSQL no era lo bastante
flexible ni rápido para lo que necesitaba, por lo que tuvo que desarrollar nuevas
funciones. Esto resulto en una interfaz SQL a su base de datos, totalmente
compatible a mSQL.
40
El origen del nombre MySQL no se sabe con certeza de donde proviene, por un
lado se dice que en sus librerías han llevado el prefijo “my” durante los diez últimos
años, por otra parte, la hija de uno de los desarrolladores se llama My. Así que no
está claramente definido cuál de estas dos causas han dado lugar al nombre de
este conocido gestor de bases de datos.
Características principales
Inicialmente, MySQL carecía de algunos elementos esenciales en las bases de
datos relacionales, tales como integridad referencial y transacciones. A pesar de
esto, atrajo a los desarrolladores de páginas web con contenido dinámico, debido
a su simplicidad, de tal manera que los elementos faltantes fueron
complementados por la vía de las aplicaciones que la utilizan. Poco a poco estos
elementos faltantes, están siendo incorporados tanto por desarrolladores internos,
como por desarrolladores de software libre.
En las últimas versiones se pueden destacar las siguientes características
principales:
El principal objetivo de MySQL es velocidad y robustez. Soporta gran cantidad de
tipos de datos para las columnas. Gran portabilidad entre sistemas puede trabajar
en distintas plataformas y sistemas operativos. Cada base de datos cuenta con 3
archivos: Uno de estructura, uno de datos y uno de índice y soporta hasta 32
índices por tabla. Aprovecha la potencia de sistemas multiproceso, gracias a su
implementación multihilo. Flexible sistema de contraseñas (passwords) y gestión
de usuarios, con un muy buen nivel de seguridad en los datos. El servidor soporta
mensajes de error en distintas lenguas
Ventajas
Velocidad al realizar las operaciones, lo que le hace uno de los gestores con mejor
rendimiento. Bajo costo en requerimientos para la elaboración de bases de datos,
ya que debido a su bajo consumo puede ser ejecutado en una máquina con
escasos recursos sin ningún problema. Facilidad de configuración e instalación.
Soporta gran variedad de Sistemas Operativos Baja probabilidad de corromper
41
datos, incluso si los errores no se producen en el propio gestor, sino en el sistema
en el que está. Conectividad y seguridad
Desventajas
Un gran porcentaje de las utilidades de MySQL no están documentadas. No es
intuitivo, como otros programas (ACCESS).
Servidor apache
Apache es un servidor HTTP para diferentes sistemas operativos como; Unix,
GNU/Linux, Windows, etc. Siendo así un servidor web gratuito, potente, fácil de
manejar y de configurar, se puede decir que este tipo de software es una de las
mejores creaciones de software libre. Ya que apache permite el hospedaje de
página web en la computadora donde se tenga instalado este servidor. (Guzmán
Reyes 2013)
Características de apache
Funciona sobre muchas plataformas.
Módulos cargados dinámicamente
PHP más bases de datos
Soporte para host virtuales
JAVASCRIPT
“Es un lenguaje que sirve para programar procesamientos del lado “cliente” en los
desarrollos web. La programación del lado “cliente” de JavaScript permite añadir
una cierta interactividad a las páginas web” (Vigouroux 2015).
JavaScript fue creado para darle más dinamismo a las páginas web. ¿Qué
significa esto? Que antes, con HTML, lo único que podías hacer era poner fotos,
texto, sonido y alguna otra cosa más. Con este lenguaje, le podemos dar más
movimiento a una página web y lograr una verdadera interactividad con los
usuarios. (Maza 2012)
42
REGISTRO
“Un registro es una colección de valores o elementos de datos relacionados donde
cada valor está formado por uno o más bytes y corresponde a un determinado
campo del registro”. (Cueto 2007)
Un registro es el reconocimiento de alguna situación que se considera importante
o relevante. El término se puede referir a un gran número de circunstancias que
tienen en común el hecho de dejar asentada información específica con la
finalidad de que exista un conocimiento al respecto para terceros o para un control.
Uno de los ámbitos en donde más se suele recurrir este tipo de información es en
entidades públicas, que comúnmente necesitan tomar referencias de la población
de forma continua para lograr una administración más eficiente. Gracias al avance
de la tecnología de la informática este tipo de procedimientos se ha simplificado
mucho.
Ejemplos de Registros
Identificación de identidad - Cedula.
Uno de los registros más importantes a los que deben someterse la población es
al de una identificación de su identidad. En este proceso se toman las huellas
digitales de la persona en cuestión, una foto y se ponen algunos datos relevantes
como el del domicilio en donde vive. Todos los países tienen un procedimiento
similar y con el mismo se conoce a cada habitante, de forma tal que existe un claro
control de los mismos cuando realizan algunas actividades específicas, junto a
este registro, se otorga a la persona un documento que suele acreditar identidad.
43
Gráfico N. 9
Cedula de ciudadanía
Elaborado: http://www.ciudadaniainformada.com/ecuador/item/990-
cedula-de-identidad-unico-documento-para-realizar-tramites
Fuente: http://www.ciudadaniainformada.com/ecuador/item/990-cedula-
de-identidad-unico-documento-para-realizar-tramites
Bienes y posesiones.
Otro registro muy común es el que se hace en función de la adquisición de bienes
que pueden catalogarse como importante en cuestión de valor. Un claro ejemplo
de esta circunstancia es el de las propiedades, que deben tener el reconocimiento
de un plano y de una escritura a nombre de un individuo.
Registro informático
En el ámbito de la informática, un registro da cuenta de una información que el
sistema operativo, en particular Windows, mantiene para tener una administración
de los distintos programas instalados como asimismo de los dispositivos que se
deben controlar. El registro se organiza como una base de datos de tipo jerárquica
y puede modificarse de forma manual de ser necesario para alguna tarea
específica de mantenimiento; también es posible realizar copias de respaldo del
mismo y volverlas a utilizar en caso de que exista algún problema determinado,
como por ejemplo la modificación llevada a cabo por algún virus.
44
Gráfico N. 10
Pantalla de registro Informático
Elaborado: http://www.monografias.com/trabajos16/sistemas-informaticos/sistemas-informaticos.shtml
Fuente: http://www.monografias.com/trabajos16/sistemas-informaticos/sistemas-informaticos.shtml
Fichas
Una ficha se utiliza para registrar y resumir datos extraídos de algún ámbito de
interés. Anteriormente las fichas eran tarjetas de forma rectangular de diversos
tamaños, pero con el avance de la tecnología se empezaron a usar bases de datos
y otros soportes electrónicos para almacenar la información. Las fichas se utilizan
como medios para realizar un trabajo de investigación. Contienen datos de
identificación de las obras, conceptos, ideas, resúmenes, síntesis, entre otros. Las
fichas se almacenan en un fichero o archivo, un sistema real o virtual de
organización de la información mediante una clasificación determinada. Existen
diversos tipos de fichas.
Ejemplo
Por ejemplo, la hoja o cartulina que permite controlar las entradas y salidas del
trabajo, también se conoce como ficha.
45
Tipos de Fichas
Ficha electrónica
Esta ficha registra los datos de una página de Internet de donde se extrajo alguna
información. Regularmente, se anotan los siguientes datos en la ficha:
1. Apellidos y nombres del autor
2. Título
3. Editor
4. Dirección electrónica
5. Fecha de consulta
Ficha hemerográfica
En esta ficha, se registran datos de un periódico o revista de donde se extrajo
alguna información. Para registrar al medio impreso de donde fue extraída la
información, se anotan los siguientes datos en la ficha:
1. Título del periódico o revista (subrayado o manuscrito).
2. Años que lleva circulando o tiempo en que se publicó.
3. Número de la publicación. (Opcional)
4. Ciudad donde fue impreso, seguido del país (en caso de que haya
ciudades homónimas en diferentes países).
5. Fecha.
46
Gráfico N. 11
Ejemplo de Ficha Hemerográfica
Elaborado: http://neoliberalismohcs.blogspot.com/2012/10/241-ficha-hemerografica-articulo-4.html
Fuente: http://neoliberalismohcs.blogspot.com/2012/10/241-ficha-hemerografica-articulo-4.html
Ficha bibliográfica
Las fichas bibliográficas contienen los datos de identificación de un libro o de algún
documento escrito sobre el objeto de estudio. Se realizan estas fichas para todos
los libros, artículos o textos, que pueden ser útiles a la investigación, no solo para
los que se han leído. En estas se registran las fuentes encontradas, por ejemplo,
en el catálogo de una biblioteca, en colecciones de publicaciones, en una
bibliografía. Se requiere los siguientes datos:
1. Autor.
2. Título.
3. Lugar de publicación.
4. Editorial y edición (normalmente solo se indica la segunda en
adelante).
5. Año de publicación.
47
Gráfico N. 12
Ficha Bibliográfica
Elaborado: http://3.bp.blogspot.com/-7q pI3D8r4A/VlfET6XtEoI/AAAAAAAAGvU/srAwteXs3xs/s1600/Ficha.bibliografica.jp
g
Fuente: http://3.bp.blogspot.com/-7q pI3D8r4A/VlfET6XtEoI/AAAAAAAAGvU/srAwteXs3xs/s1600/Ficha.bibliografica.jp
g
Ficha textual
La ficha textual es aquella cuyo contenido es la transcripción del texto consultado
o parte de él, por lo cual la información seleccionada debe ser señalada entre
comillas, para que esta no sea tomada como una ficha personal. Consta de los
siguientes datos:
1. La referencia bibliográfica de donde fue obtenida la información. En
esta se coloca el nombre y apellido del autor o de los autores, el
título de la obra subrayado, y el número de la página o páginas.
Estos datos se escriben en la parte superior izquierda de la ficha.
2. La clasificación del material. Se coloca en la parte superior derecha
de la ficha. Se anota la clasificación dada a la información extraída
de la obra consultada, es decir, la materia o subtema.
3. La nota extraída del texto consultado entre comillas.
48
Gráfico N. 13
Ejemplo de Ficha textual
Elaborado: https://www.lifeder.com/wp-content/uploads/2017/04/ficha-textual-min.jpg
Fuente: https://www.lifeder.com/wp-content/uploads/2017/04/ficha-textual-min.jpg
Ficha de resumen
Esta ficha también es conocida como una ficha de estudio, es una hoja de papel
o un documento informático dónde se recogen todos los datos principales de un
tema a estudiar. En ella se deben reflejar las ideas principales del tema y también
las referencias, por ejemplo, de dónde hemos sacado los datos.
Gráfico N. 14
Ejemplo de Ficha de resumen
Elaborado: https://www.lifeder.com/wp-content/uploads/2017/04/ficha-resumen-min.png
49
Fuente: https://www.lifeder.com/wp-content/uploads/2017/04/ficha-resumen-min.png
Ficha catalográfica
La ficha catalográfica son utilizadas en las bibliotecas para archivar los datos de
diversas publicaciones que se encuentran en ella. Contienen los siguientes datos:
En la parte superior izquierda, apellido y primera letra del nombre del autor.
Debajo de esta, el año de la publicación, el tamaño, las páginas, el día y el
mes.
En la parte media derecha o centrado se escribe los datos propiamente
dichos de la ficha.
Gráfico N. 15
Ficha catalográfica
Elaborado: https://image.slidesharecdn.com/fichacatalografica-fot-111206193244-phpapp01/95/areas-de-una-ficha-catalogrfica-8-
728.jpg?cb=1323200797
Fuente: https://image.slidesharecdn.com/fichacatalografica-fot-111206193244-phpapp01/95/areas-de-una-ficha-catalogrfica-8-728.jpg?cb=1323200797
50
Ficha de trabajo
La ficha de trabajo es aquella que se usa como una forma de organizar la
información documental usada en los trabajos de investigación de cualquier tipo.
Se utiliza para resumir, recopilar, o anotar los contenidos de las fuentes o datos
utilizados en la investigación. Estas fichas facilitan la realización de informes,
publicaciones o monografías, pues si han sido confeccionadas correctamente
hacen innecesarias consultas adicionales a las fuentes.
Tradicionalmente las fichas de trabajo eran cartulinas rectangulares, pero con el
desarrollo de la informática y los medios de almacenamiento de datos electrónicos
han pasado a usarse las bases de datos para archivar este tipo de información
útil.
Gráfico N. 16
Ficha de trabajo
Elaborado: https://www.lifeder.com/wp-content/uploads/2017/04/ficha-trabajo.jpg
Fuente: https://www.lifeder.com/wp-content/uploads/2017/04/ficha-trabajo.jpg
51
Datos de la ficha de trabajo
Los datos principales que constan en una ficha de trabajo son:
El autor.
El título.
Número de página o páginas donde aparece la información.
El sujeto o tema.
Fecha en que se publicó.
Datos adicionales de la publicación (volumen, editorial, etc.).
Regularmente se suelen también incluir ciertos datos complementarios, como por
ejemplo:
La fecha en que se recogió el dato.
El motivo de reunir la información
Ficha técnica
Una ficha técnica, hoja técnica u hoja de datos (datasheet en inglés), también hoja
de características o ficha de características, es un documento que resume el
funcionamiento y otras características de un componente (por ejemplo, un
componente electrónico) o subsistema (por ejemplo, una fuente de alimentación)
con el suficiente detalle para ser utilizado por un ingeniero de diseño y diseñar el
componente en un sistema.
52
Gráfico N. 17
Ficha técnica
Elaborado: http://www.ejemplode.com/11-escritos/1790-ejemplo_de_ficha_tecnica.html
Fuente: http://www.ejemplode.com/11-escritos/1790-ejemplo_de_ficha_tecnica.html
Comienza típicamente con una página introductoria que describe el resto del
documento, seguido por los listados de componentes específicos, con la
información adicional sobre la conectividad de los dispositivos. En caso de que
haya código fuente relevante a incluir, se une cerca del extremo del documento o
se separa generalmente en otro archivo.
Las fichas técnicas o ficha de características no se limitan solo a componentes
electrónicos, sino que también se dan en otros campos de la ciencia, como por
ejemplo compuestos químicos o alimentos.
Información Típica
Datos del fabricante
Número y denominación
Lista de formatos con imágenes y códigos
53
Propiedades
Breve descripción funcional
Esquema de conexiones. Habitualmente es un anexo con
indicaciones detalladas.
Tensión de alimentación, consumo.
Condiciones de operación recomendadas
Tabla de especificaciones, tanto en corriente continua como alterna
Esquemas
Medidas
Circuito de prueba
Información sobre normas de seguridad y uso.
Ficha Electrónica
Esta ficha cumple todas las funciones de una ficha estándar, pero que se realiza
en una plataforma electrónica o informática.
Se deslinda del tradicional papel o cartoncillo rectangular y en su lugar se
introducen los datos en una base de datos.
En esta ficha se incluyen la misma serie de datos como:
Tema (opcional)
Número
Autor
Página (si la hay)
Fecha (si la hay)
54
Resumen o comentario
Nota (si se requiere)
Las fichas electrónicas se realizan en diferentes plataformas de las que destacan
el Acces, estas fichas tienen la capacidad de ser consultada en cualquier terminal
ya sea por red interna o por internet.
Ejemplo de Ficha Electrónica
La ficha electrónica clínica es un programa que permite el registro de datos que el
médico realiza de un paciente, integrando tanto la información propia del mismo,
así como los resultados de ensayos y análisis practicados al paciente, facilitando
el acceso a la información y mejorando la seguridad y confidencialidad del
paciente. Google Health es un ejemplo de este tipo de sistemas informáticos.
Medical Web Expert es otro ejemplo de este tipo de software.
La ficha electrónica bibliográfica puede almacenar además de la información
general de un libro, la ubicación del mismo, y en caso de ser uno electrónico el
link para acceder a él. Google Books permite tener fichas bibliográficas de libros
online. Book DB es un software que sirve para llevar fichas bibliográficas.
Para el uso del área de Recursos Humanos la ficha electrónica de empleados es
muy útil, ya que contiene la información general del empleado.
FOLDER
Fólder es un término del inglés cuyo significado es folleto o carpeta. Es una
palabra compuesta por el verbo “fold” que significa “doblar”.
55
Gráfico N. 18
Ilustración de un fólder
Elaborado: https://www.staples.ca/en/Staples-Coloured-File-Folder-Letter-Size-8-1-2-x-11-Assorted-Colours-100-Pack/product_46250_1-CA_1_20001
Fuente: https://www.staples.ca/en/Staples-Coloured-File-Folder-Letter-Size-8-1-2-x-11-Assorted-Colours-100-Pack/product_46250_1-CA_1_20001
La carpeta es un instrumento que se usa para organizar, guardar, transportar
papeles y proteger. Es un utensilio que existe en diferentes modelos y materiales,
comúnmente de cartón o plástico doblada por la mitad y unidas con gomas. Puede
ser usado por niños, adolescentes y adultos que tienen interés en organizar
contenidos, acceder de forma rápida y eficiente, y preservar sus documentos.
Existen diferentes tipos de fólderes como: de plástico, de costilla, decorados, de
manila, tamaño carta u oficio, ente otros.
Por otra parte, tal como fue indicado anteriormente, la palabra fólder hace alusión
a folleto. En referencia a este punto, el folleto es un documento escrito con un
doblaje que se emplea para fines informativos o publicitarios. El mismo está
formado por una portada, mensaje interno y la última hoja que usualmente
contiene datos para ser contactados u otras informaciones relevantes.
En el marketing se usa con finalidad informativa, para promover y comunicar al
público los servicios, productos o promociones que ofrece una determinada
compañía, institución.
56
Fólder en informática
En la rama de la informática, fólder es visto como sinónimo de directorio, una
carpeta para almacenar archivos u otras carpetas, siendo ventajoso para
organizar la información a interés del individuo o usuario, por ejemplo: una carpeta
con temas exclusivos de las religiones monoteístas, fotografías, etc.
Gráfico N. 19
Icono de una carpeta informática
Elaborado: https://www.tes.com/lessons/vlaYKCnZoAyCIw/files-folders
Fuente: https://www.tes.com/lessons/vlaYKCnZoAyCIw/files-folders
Asimismo, existen programas como lock folder o folder protector que permiten
proteger una carpeta o archivo con una clave de seguridad siendo de gran utilidad
para proteger la información de otros usuarios, como niños, en el robo del aparato
electrónico, etc. También existen varios programas que ayudan a realizar fólder,
como CorelDraw, PhotoShop e Fireworks, así como sites con sugestiones de
modelos creativos y originales de fólderes.
Por otro lado, existen aplicaciones que permiten crear carpetas y vincular las que
se encuentran en la memoria interna con la de la memoria externa del teléfono
móvil, como el foldermount.
FUNDAMENTACIÓN LEGAL
Para el desarrollo de esta página web, se tomaron en cuenta los siguientes
decretos vigentes en la República del Ecuador sobre la ley de propiedad
intelectual y software libre, para regir el producto bajo las normas que dispone el
estado; así como también, basarse a la ley de educación superior.
57
RAFAEL CORREA DELGADO PRESIDENTE DE LA REPUBLICA DEL
ECUADOR
DECRETO 1014 - SOBRE EL USO DEL SOFTWARE LIBRE
El decreto 1014 lo estableció el Presidente de la República para ser una política
de estado, a continuación se detallan los artículos que van de acuerdo al proyecto
de titulación. (Correa 2008)
Art. 1: Establecer como política pública para las entidades de administración
Pública central la utilización del Software Libre en sus sistemas y equipamientos
informáticos.
Art. 2: Se entiende por software libre, a los programas de computación que se
pueden utilizar y distribuir sin restricción alguna, que permitan el acceso a los
códigos fuentes y que sus aplicaciones puedan ser mejoradas.
Estos programas de computación tienen las siguientes libertades:
Utilización de programa con cualquier propósito de uso común.
Distribución de copias sin restricción alguna.
Estudio y modificación de programa (Requisito: código fuente disponible)
Publicación del programa mejorado (Requisito: código fuente disponible
Art. 3: Las entidades de la administración pública central previa a la instalación
del software libre en sus equipos, deberán verificar la existencia de capacidad
técnica que brinde el soporte necesario para este tipo de software.
Art. 4: Se faculta la utilización de software propietario (no libre) únicamente
cuando no exista una solución de software libre que supla las necesidades
58
requeridas, o cuando esté en riesgo de seguridad nacional, o cuando el proyecto
informático se encuentre en un punto de no retorno.
Art. 5: Tanto para software libre como software propietario, siempre y cuando se
satisfagan los requerimientos.
Art. 6: La subsecretaría de Informática como órgano regulador y ejecutor de las
políticas y proyectos informáticos en las entidades de Gobierno Central deberá
realizar el control y seguimiento de este Decreto.
Art. 7: Encargue de la ejecución de este decreto los señores Ministros
Coordinadores y el señor Secretario General de la Administración Pública y
Comunicación.
El decreto 1014 el cual trata acerca del uso de software libre, incentiva al uso de
sistemas y aplicaciones libres con preferencia sobre el software con costo de
licenciamiento, abriendo puertas a desarrolladores independientes y a
comunidades de programadores al momento de crear un nuevo producto de
software y poder distribuirlo.
LEY DE PROPIEDAD INTELECTUAL
SECCIÓN V: Disposiciones especiales sobre ciertas obras
de los programas de ordenador
Art. 28: Los programas de ordenador se consideran obras literarias y se protegen
como tales. Dicha protección se otorga independientemente de que hayan sido
incorporados en un ordenador y cualquiera sea la forma en que estén expresados,
ya sea en forma legible por el hombre (código fuente) o en forma legible por
máquina (código objeto), ya sean programas operativos y programas aplicativos,
incluyendo diagramas de flujo, planos, manuales de uso, y en general, aquellos
elementos que conformen la estructura, secuencia y organización del programa.
Art. 29: Es titular de un programa de ordenador, el productor, esto es la persona
natural o jurídica que toma la iniciativa y responsabilidad de la realización de la
obra. Se considerará titular, salvo prueba en contrario, a la persona cuyo nombre
59
conste en la obra o sus copias de la forma usual. Dicho titular está además
legitimado para ejercer en nombre propio los derechos morales sobre la obra,
incluyendo la facultad para decidir sobre su divulgación.
El creador de un programa informático tendrá el derecho exclusivo de realizar,
autorizar o prohibir la realización de modificaciones o versiones sucesivas del
programa, y de programas derivados del mismo. Las disposiciones del presente
artículo podrán ser modificadas mediante acuerdo entre los autores y el productor.
Art. 30.- La adquisición de un ejemplar de un programa de ordenador que haya
circulado lícitamente, autoriza a su propietario a realizar exclusivamente:
a) Una copia de la versión del programa legible por máquina (código objeto) con
fines de seguridad o resguardo;
b) Fijar el programa en la memoria interna del aparato, ya sea que dicha fijación
desaparezca o no al apagarlo, con el único fin y en la medida necesaria para
utilizar el programa; y;
c) Salvo prohibición expresa, adaptar el programa para su exclusivo uso personal,
siempre que se limite al uso normal previsto en la licencia. El adquirente no podrá
transferir a ningún título el soporte que contenga el programa así adaptado, ni
podrá utilizarlo de ninguna otra forma sin autorización expresa, según las reglas
generales. Se requerirá de autorización del titular de los derechos para cualquier
otra utilización, inclusive la reproducción para fines de uso personal o el
aprovechamiento del programa por varias personas, a través de redes u otros
sistemas análogos, conocidos o por conocerse. (Comisión de Legislación y
Codificación, 2006, p. 8).
Esta ley de propiedad intelectual es usada con el fin de proteger al estudiante de
titulación, autor de este proyecto, para evitar el abuso por parte de alguna entidad
que intente quebrantar la ley, al modificar, actualizar o eliminar parte del código
registrado de un sistema sin permiso del propietario y creador del software. Este
decreto ayuda a prevenir y garantizar la autoría al creador del software
60
LEY ORGÁNICA DE EDUCACIÓN SUPERIOR (LOES)
CAPÍTULO 2 DEL PATRIMONIO Y FINANCIAMIENTO DE LAS INSTITUCIONES DE EDUCACIÓN SUPERIOR
Art. 32.- Programas informáticos. - Las empresas que distribuyan programas
informáticos tienen la obligación de conceder tarifas preferenciales para el uso de
las licencias obligatorias de los respectivos programas, a favor de las instituciones
de educación superior, para fines académicos. Las instituciones de educación
superior obligatoriamente incorporarán el uso de programas informáticos con
software libre. (2010)
Pregunta científica a contestarse
¿Se obtendrá una optimización considerable en los procesos de registro de fichas
estudiantiles, desarrollando una página web con herramientas open source?
Definiciones conceptuales
Proceso
“Proceso es un conjunto de actividades, interacciones y recursos con una finalidad
común: transformar las entradas en salidas que agreguen valor a los clientes”
(Carrasco 2009).
Software
Software La palabra «software» se refiere al equipamiento lógico o soporte lógico
de una computadora digital, y comprende el conjunto de los componentes lógicos
necesarios para hacer posible la realización de una tarea específica, en
contraposición a los componentes físicos del sistema (hardware). (Poveda Mariño
2012)
Protocolo
“Son reglas que definen el formato y orden de los mensajes enviados y recibidos
por las entidades de la red. Controlan el envío y recepción de mensajes. Por
ejemplo, TCP, UDP, HTTP, DNS, FTP” (Souza 2009).
61
Servidor web
“Es un programa que está esperando permanentemente las solicitudes de
conexión mediante el protocolo HTTP. Este protocolo está diseñado para transferir
lo que llamamos hipertextos, páginas web o página” (Mora 2002).
HTTP (hyperText Transfer protocol
Protocolo de Transferencia de Hipertexto) es un protocolo de la capa de aplicación
del modelo TCP/IP y es el corazón de la Web.(Montoya, Uribe et al. 2013)
Asíncrono
“Los sistemas asíncronos no generan comunicación en tiempo real, pero ofrecen
la posibilidad de que las aportaciones de los usuarios queden grabadas. El correo
electrónico y los foros son algunas de las herramientas que usan este tipo de
comunicación ” (Boneu 2007).
AJAX (Asynchronous JavaScript and XML)
Es un conjunto de tecnología: JavaScript, XML y un lenguaje del lado del servidor
que no está contenida en el nombre pero que es igualmente importante.(Castillo
2017)
Registro
“Un registro es una colección de valores o elementos de datos relacionados donde
cada valor está formado por uno o más bytes y corresponde a un determinado
campo del registro”. (Cueto 2007)
Programador
“Un programador es una persona con dotes de creatividad, un técnico con cierto
toque integrador y que incluye tareas de codificador”. (Belmonte Fernández and
Granell Canut 2013)
Herramientas de Desarrollo
62
“Las herramientas de desarrollo son programas de computación utilizados para
generar otros programas con su ayuda. Este es un aspecto que en los últimos
años se ha vuelto muy importante debido al volumen y la complejidad del software
que se desarrolla”.(Pantaleo and Rinaudo 2015)
Aplicaciones web
“Una aplicación Web es un sistema al que se accede a través de Internet o Intranet
y conforman una clase especial de aplicaciones de software que se construye de
acuerdo con ciertas tecnologías y estándares” (Oliveros, Danyans et al. 2014).
Gestión de procesos
La gestión por procesos es una forma de conducir o administrar una organización,
concentrándose en el valor agregado para el cliente y las partes interesadas.
(Ruiz-Fuentes, Almaguer-Torres et al. 2014)
63
CAPÍTULO III
PROPUESTA TECNOLÓGICA
Con el desarrollo de una página web para el personal administrativo de la
Universidad de Guayaquil Facultad de Arquitectura y Urbanismo que se va a llevar
a cabo en este proyecto de titulación será para el uso de la Carrera de Arquitectura
de dicha Facultad. El desarrollo de la solución propuesta se va a realizar con
herramientas Open Source en cuanto a su desarrollo se refiere, programación y
almacenamiento de la base de datos MySQL.
Esta propuesta tecnológica se basará únicamente en el entorno web que servirá
para la Gestión de las fichas estudiantiles, cuyo uso estará dado al personal
administrativo para agilizar su trabajo y optimizar los procedimientos.
En el siguiente gráfico se detalla un diagrama funcional del sistema, en el que se
muestra como la página web interactúa con la base de datos alojados en un
servidor local.
Gráfico N. 20
Diagrama funcional de la página web con Localhost
Elaboración: Andy Alvia, Walter Vera
Fuente: Andy Alvia, Walter Vera
64
La página web cuenta con las siguientes funcionalidades:
Sección de Login de usuario.
Creación de usuarios administrativos.
Actualización de información de los usuarios administrativos
Modificación y eliminación de usuarios administrativos
Auditoria de las actividades que se realizan en el sistema.
Mantenimiento de información académica de los estudiantes de la facultad.
Creación de fichas estudiantiles
Actualización de fichas estudiantiles
Consulta de fichas estudiantiles
Generación de reporte de ficha estudiantil
Perfil Por Usuarios
Se han creado módulos de perfil de usuario para mayor control y seguridad de la
página web los cuales son conformados por: administrador y personal
administrativo.
1. Administrador. - Tiene permitido la administración de toda la página
web, registro de nuevo personal administrativo, cambios de
contraseña, eliminación de usuarios, y acceso total a todas las
características de la página web.
2. Personal Administrativo. - Tiene permitido la gestión de los
estudiantes de la facultad ya sea la creación, modificación, eliminación
o consulta de la información de los estudiantes, pero no modificar ni
crear un usuario administrativo.
65
ANÁLISIS DE FACTIBILIDAD
En base al levantamiento de información obtenida por medio de personal
implicado en este proceso, se pudo determinar que los procesos actuales no
cuentan con ayuda tecnológica, a pesar de conocer de las ventajas que ofrecen
estos mecanismos como optimizar los procesos. El entorno Web que se proveerá
mejorará esta condición en la que se encuentran actualmente los procesos,
demostrando la necesidad de mejorar el modo de ejecución de las tareas que
están realizando y aún más importante optimizar los tiempos de respuesta,
ayudando de este modo a que el rendimiento del personal y la conformidad de los
estudiantes al momento de ser atendidos aumenten.
FACTIBILIDAD OPERACIONAL
A pesar de que el proceso de registro de ficha estudiantil se lo puede realizar de
forma manual y rudimentaria, este presenta varios problemas como lo son la
demora al momento de realizar consultas, información ambigua, repetición de
procesos, entre otras cosas.
El desarrollo de la página web, a pesar de no contar con toda la información ya
trabajada en el formato físico del proceso de gestión de fichas, una vez
desarrollada y completada lograra mejorar de forma significativa las tareas que
realiza el personal administrativo de la Facultad de Arquitectura, este proyecto ha
tenido un buen recibimiento por parte de los directivos de dicha facultad y de su
personal administrativo debido a que con este sistema podrán optimizar los
procesos para realizar una buena gestión de las fichas académicas y resolver
problemas como los ya mencionados anteriormente, además de disminuir
significativamente la demora al momento de tener que realizar dicha gestión,
beneficiando de este modo no solo al personal administrativo sino también a los
estudiantes.
FACTIBILIDAD TÉCNICA
En este apartado se analizará todo lo que se necesita para el desarrollo de la
solución propuesta con respecto al recurso hardware y software.
66
Para determinar la factibilidad técnica se debe analizar los siguientes puntos:
a) Tecnología y solución propuesta.
Para el desarrollo de la página web planteada se requiere lo siguiente:
Software:
En cuanto al software usado, todo lo que se usará en la implementación
del proyecto será herramientas open Source. Para el gestor de base de
datos se configurará en MySQL y los servicios de la plataforma Web en
XAMP y como lenguaje de programación para la página web se usará PHP
5.0.
Para los entornos de desarrollo solamente se usara un editor de texto que
en nuestro caso será Sublime Text.
Para el diseño y modelado de tablas y relaciones en la base de datos se
usó MySQL WorkBench, este software es una herramienta de diseño y
gestor de base de datos que permite la administración, monitoreo,
modificación, consultas, de bases de datos.
Hardware:
Para el desarrollo del proyecto propuesto se necesita un equipo con las siguientes
características para trabajar de modo óptimo:
Ordenador de mesa o laptop de 4Gb RAM o Superior
500 Gb de Disco
Procesador Intel I5 o superior
Para la implementación en un entorno controlado para el localhost se realizara sin
problemas en un ordenador o laptop (ya sea el mismo u otro con las mismas
características)
67
Para la posible implementación del localhost en un entorno real con un
funcionamiento óptimo como recomendación para una durabilidad se necesitaría
un equipo con las siguientes características:
Ordenador de mesa de 8Gb RAM o Superior
2 Tb de Disco
Procesador Intel I7 o superior
Sistema de Ventilación de preferencia liquida
b) Conocimientos técnicos.
A parte de contar con la tecnología necesaria que se detalló anteriormente (a
excepción de la recomendación), se necesita tener conocimientos técnicos para
la correcta utilización de la misma. En el área del desarrollo del proyecto se tienen
sólidos conocimientos de todas las herramientas a usar, y se manejan ciertas
alternativas de software que también pueden ser de apoyo durante la realización
del proyecto. Por el lado del hardware, como la parte más importante de la
tecnología a utilizar consiste en computadoras personales y se cuenta con
experiencia en el manejo de las mismas.
Luego de realizar una revisión y análisis de los puntos anteriores, se verifico que
todos los requisitos se cumplen y que no hay inconvenientes en cuanto a la
tecnología a usar, se logra concluir que el proyecto es factible técnicamente.
Factibilidad Legal
El proyecto se encuentra dentro de los procesos legales que se manejan en el
reglamento de régimen académico del CES, así como también de las leyes de
transparencia de información, y de Contraloría General del Estado, por lo que no
existen inconvenientes de vulneración de derechos.
68
Cabe mencionar un artículo de ley en Ecuador, en el que apoya y fomenta el uso
de herramienta de software libre.
Según El Decreto Presidencial:
Artículo 1.- Establecer como política pública para las Entidades de la
Administración Pública Central la utilización de Software Libre en sus sistemas y
equipamientos informáticos.
Artículo 2.- Se entiende por Software Libre, a los programas de computación que
se pueden utilizar y distribuir sin restricción alguna, que permitan su acceso a los
códigos fuentes y que sus aplicaciones puedan ser mejoradas.
Estos programas de computación tienen las siguientes libertades:
Utilización del programa con cualquier propósito de uso común.
Distribución de copias sin restricción alguna.
Estudio y modificación del programa (Requisito: código fuente disponible).
Publicación del programa mejorado (Requisito: código fuente disponible).
Artículo 3.- Las entidades de la Administración Pública Central previa a la
instalación del software libre en sus equipos, deberán verificar la existencia de
capacidad técnica que brinda el soporte necesario para el uso de este tipo de
software.
Articulo 4.- Se faculta la utilización de software propietario (no libre) únicamente
cuando no existe una solución de software libre que supla las necesidades
requeridas, o cuando esté en riesgo la seguridad nacional, o cuando el proyecto
informático se encuentre en un punto de no retomo.”
69
Factibilidad Económica
La factibilidad económica del proyecto se detalla a continuación en el siguiente
cuadro en el que detalla la solución propuesta por este proyecto, en este cuadro
se menciona información como especificaciones y los costos totales del proyecto.
CUADRO N. 4
Presupuesto
Esce
na
rio 1
Tipo Descripción V. Unitario Valor Total
Software Lenguaje PHP 5.0 $ 0 $ 0
Base de datos MYSQL $ 0 $ 0
Servidor Web XAMP $ 0 $ 0
Hardware Laptop $ 600 $600
Capital Humano Desarrollador $1400 $1400
Otros $35 $35
Total $2035
Elaboración: Andy Alvia, Walter Vera
Fuente: Investigación del proyecto
En lo que respecta al desarrollo de software de la herramienta el costo de mano
de obra se considera nulo, debido a que la página web es desarrollada por
estudiantes de la Carrera de Ingeniería en Sistemas como proyecto de titulación.
Se puede decir que es factible económicamente porque se verificó que se cuenta
con todas las herramientas, el conocimiento y la disponibilidad para llevar a cabo
dicho proyecto.
Etapas de la metodología del proyecto
Para realizar la elaboración de este proyecto se analizó varias metodologías de
desarrollo que brinden la ayuda necesaria para el progreso y la culminación del
tema propuesto. Se utiliza la metodología ágil Scrum, la cual permite desarrollar
el proyecto en varias etapas, en la que primero se debe realizar el levantamiento
de información por parte de las personas que manejarán el sistema, a partir de
estos requerimientos e información se formaron los Sprint que son los tiempos que
se le asigna a cada tarea o módulo funcional de la aplicación.
70
Existen varias herramientas para trabajar en base a la metodología propuesta y
en este proyecto se utilizó la herramienta Web en línea que sirve para elaboración
de los procesos con la metodología Scrum la cual es “https://app.scrumtool.me”.
Gracias a todas las funcionalidades que brinda la herramienta se programa cada
Sprint para la ejecución de cada etapa de la aplicación, estas se la realizan en un
periodo de tiempo determinado, además cuenta con un Burndown que permite
visualizar el avance del Sprint representado en un gráfico estadístico.
En el siguiente gráfico se observa la interfaz web de la herramienta, ésta es de
fácil uso e intuitiva, muy práctica para realizar proyectos rápidos y de corto periodo
de desarrollo.
Gráfico N. 21
Interfaz de la herramienta Scrumtool
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
71
SPRINT 1 - ANÁLISIS Y RECOPILACIÓN DE INFORMACIÓN PARA EL PROYECTO
En el gráfico se muestra los requerimientos de usuarios, cada tarea detalla lo que
se va a realizar y quien es el encargado responsable de ejecutarlas en el período
de tiempo que se determinó.
En este primer Sprint se hace un listado de todo lo que se debe realizar.
Se realiza una entrevista la Decana de la Facultad de Arquitectura y el
Personal Administrativo para el levantamiento de la información y los
requerimientos de la Pagina Web, cada requerimiento que se recopila por
parte de las personas implicadas forman parte de los “Story”.
Gráfico N. 22
Sprint 1: Análisis y recopilación de información para el proyecto
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Dentro de este Sprint se realizó investigación acerca de la metodología
Scrum para el desarrollo del proyecto.
72
Se analizó e investigó el lenguaje de programación que se utilizará para la
Pagina Web, se definió que para la implementación se usará el lenguaje
web de PHP con HTML.
Cada uno de estos Story o lista de requerimientos se le asigna un tiempo
determinado de progreso para ser llevado a cabo, una vez aceptado y
validado se da por culminado el requerimiento y se continúa al siguiente
Sprint.
Por cada Sprint finalizado se obtiene un Burndown de cumplimiento por tiempo y
valoración como se presenta en el siguiente gráfico.
Gráfico N. 23
Burndown del Sprint 1
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
SPRINT 2 – DISEÑO Y MODELADO DE LA BASE DE DATOS
En este Sprint se va a realizar la etapa del diseño y estructura de la base de datos
que se va a usar en el proyecto.
En el siguiente gráfico se muestra lo realizado durante la fase del Sprint 2, y el
estado de cada una de las actividades.
73
Gráfico N. 24
Sprint 2: Diseño y modelado de Base de Datos
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Diseño del modelo entidad-relación.
Se procede a diseñar el Modelo Entidad Relación a usar en el
proyecto en la herramienta de diseño WorkBench.
Se realiza una revisión de los campos y sus respectivas relaciones,
definiendo las claves foráneas.
Creación de scripts de las tablas.
Se generará los scripts para la creación de tablas previamente diseñadas.
Se verificará las relaciones y que los tipos de datos sean los correctos.
En el siguiente grafico se muestra el diseño del diagrama entidad relación para
nuestra base de datos.
74
Gráfico N. 25
Diagrama entidad relación
Elaboración: Andy Alvia, Walter Vera
Fuente: Andy Alvia, Walter Vera
En el gráfico a continuación se muestra con éxito el Burndown del Sprint
culminado.
75
Gráfico N. 26
Burndown del Sprint 2
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
SPRINT 3 - DISEÑO DE PANTALLAS PARA MÓDULOS DE LA PÁGINA WEB
Una vez realizada la preparación de todo el entorno de desarrollo, y tener la base
de datos terminada, se procede con el desarrollo de la página web, en el siguiente
gráfico se ve el Sprint 3, en el cual se detallan las actividades realizadas durante
esta fase.
Esta fase está compuesta de las etapas de diseño y desarrollo de la página web,
validación de la interfaz y la integración con la base de datos.
76
Gráfico N. 27
Sprint 3: Diseño de pantallas para módulos de la página web
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Diseño de pantallas del menú de opciones.
Se configurará el entorno de desarrollo en este caso NetBeans IDE
para proyectos web.
Se diseña el menú de opciones que contendrá la página web.
Diseño y desarrollo de pantallas de Login de usuario, registros y fichas
estudiantiles.
Se diseña la pantalla de Login, para el acceso a la plataforma.
Se crea la interfaz de las opciones de registros para estudiantes y
fichas.
Se carga la información en las tablas de registros y fichas.
77
Desarrollo de módulos de consultas.
Diseño de modulo para consultas individuales.
Diseño de modulo para consultas grupales.
En el gráfico a continuación se muestra con éxito el Burndown del Sprint
culminado.
Gráfico N. 28
Burndown del Sprint 3
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
SPRINT 4 - DISEÑO DEL DIAGRAMA DE CASO DE USO.
Para saber la funcionalidad que tendrá cada usuario y los módulos que tendrán
activo cada uno de ellos, se hizo el respectivo análisis y diseño de los casos de
uso, en nuestro caso hay dos diseños como se muestra a continuación.
78
Diseños de caso de uso
CUADRO N. 5
Descripción de Caso de uso del Administrador
Nombre: Caso de uso Administrador
Descripción: El administrador tendrá acceso a todos
los módulos del sistema:
administración de usuarios, ingreso,
registros, consulta y seguridad.
Actores: Administrador
Precondiciones: Ingreso al sistema con usuario y
contraseña
Elaboración: Andy Alvia, Walter Vera
Fuente: Andy Alvia, Walter Vera
Gráfico N. 29
Caso de Uso Administrador
Elaboración: Andy Alvia, Walter Vera
Fuente: Andy Alvia, Walter Vera
79
CUADRO N. 6
Descripción de Caso de uso del Secretario/a
Nombre: Caso de uso de Secretario/a
Descripción: El secretario/a tendrá acceso a los
siguientes módulos: de registros,
consulta y seguridad.
Actores: Secretario/a
Precondiciones: Ingreso al sistema con usuario y
contraseña
Elaboración: Andy Alvia, Walter Vera
Fuente: Andy Alvia, Walter Vera
Gráfico N. 30
Caso de Uso de Secretario/a
Elaboración: Andy Alvia, Walter Vera
Fuente: Andy Alvia, Walter Vera
80
Como se muestra en el siguiente gráfico, están las tareas a realizar durante este
Sprint para el diseño de los diagramas de casos de uso.
Gráfico N. 31
Sprint 4: Diseño del diagrama de caso de uso
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Análisis de los requerimientos del cliente.
Se detallarán todos los procesos a realizar.
Se analizará la funcionalidad de cada módulo.
Diseño del diagrama en herramienta Visio.
Se diseña el diagrama de caso de uso del módulo de administrador.
Se diseña del diagrama de caso de uso del módulo secretario.
En el gráfico a continuación se muestra con éxito el Burndown del Sprint
culminado.
81
Gráfico N. 32 Burndown del Sprint 4
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
SPRINT 5 –MÓDULOS DE USUARIOS, ESTUDIANTES.
Una vez culminado el diseño de los diagramas de caso de uso de los módulos, se
procede a continuar con el desarrollo de la parte funcional de nuestro sistema.
Como se muestra en el siguiente gráfico, están las tareas a realizar durante este
Sprint para el correcto funcionamiento de los registros para Usuarios y
estudiantes.
82
Gráfico N. 33
Sprint 5: Módulos de Usuarios, Estudiantes
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Análisis de datos necesarios para la ejecución de las funcionalidades
Revisión y verificación de campos requeridos para el registro de
usuarios y estudiantes
Corrección de diseño por campos faltantes.
Mejoras en el apartado grafico del modulo
Análisis e implementación de funcionalidades para los módulos.
Análisis del modo de implementar las funciones necesarias.
Programación de funciones necesarias para los módulos de
usuarios, estudiantes.
83
Luego de haber culminado este Sprint, se obtiene el Burndown de que todas las
tareas se culminaron con éxito.
Gráfico N. 34
Burndown del Sprint 5
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
SPRINT 6 – MÓDULO DE REGISTRO DE FICHA.
Una vez culminados los módulos de registro de usuarios y estudiantes, se procede
a continuar con el desarrollo del módulo de Registro de Ficha, tanto su diseño
como su funcionalidad.
Como se muestra en el siguiente gráfico, están las tareas a realizar durante este
Sprint para el correcto funcionamiento de los Registros de Fichas.
84
Gráfico N. 35
Sprint 6: Módulos de Registro de Ficha
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Análisis de relación de las tablas para el ingreso de un nuevo registro
Creación del formulario para el nuevo registro
Cargar los datos de la BD que pertenece a la Facultad de
Arquitectura.
Validación de los datos para almacenarlo en la BD.
Diseño de pantalla de Nuevo registro
Pantalla para el ingreso de un nuevo estudiante.
Pantalla para registrar las notas de los estudiantes.
Luego de haber culminado este Sprint, se obtiene el Burndown de que todas las
tareas se culminaron con éxito.
85
Gráfico N. 36
Burndown del Sprint 6
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
SPRINT 7 –MÓDULOS DE REGISTRO DE NUEVOS CAMPOS.
Para poder ingresar a la base de datos como las materias, semestre, menciones
y periodos; se realizó el módulo de registro de nuevos campos, para así poder
registrar datos a la ficha estudiantiles.
Como se muestra en el siguiente gráfico, están las tareas a realizar durante este
Sprint para el correcto funcionamiento de los Registros de nuevos campos a la
base de datos.
86
Gráfico N. 37
Sprint 7: Módulos de Registro de nuevos campos
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Creación de la tabla, diseño del formulario para registrar en la Base de
Dato.
Diseño de pantalla de registro de materias.
Diseño de pantalla de registro de semestre.
Diseño de pantalla de registro de menciones.
Diseño de pantalla de registro de periodos.
Creación de tabla en base de datos con sus respectivas relaciones.
Programación de funcionamiento de registro a la base de datos.
Conexión con la base de datos para registrar nuevas materias,
semestre, menciones y periodos.
87
Validación de los datos con la base de datos.
Validación para que usuarios autorizados puedan ver este módulo.
Luego de haber culminado este Sprint, se obtiene el Burndown de que todas las
tareas se culminaron con éxito.
Gráfico N. 38
Burndown del Sprint 7
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
SPRINT 8 –MODULO DE CONSULTA
Después de tener los demás módulos, se puede trabajar en el de consulta. Este
cargara los datos ingresados a l base de datos, dependiendo los datos que
necesite el usuario.
Como se muestra en el siguiente gráfico, están las tareas a realizar durante este
Sprint para el correcto funcionamiento de las consultas.
88
Gráfico N. 39
Sprint 8: Módulos de Consulta
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Diseño de página para presentación de los datos ingresado a la base.
Analizar los datos que el usuario desea ver.
Creación de los campos y tablas para mostrar la información.
Diseño de la página para mostrar la información de los estudiantes
ingresados.
Programación del funcionamiento del módulo de consulta.
Conexión con la base de datos para presentar datos ingresados.
Validación de los datos que se requieren.
Luego de haber culminado este Sprint, se obtiene el Burndown de que todas las
tareas se culminaron con éxito.
89
Gráfico N. 40 Burndown del Sprint 8
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
SPRINT 9 – MÓDULO DE REPORTE.
Una vez culminados los módulos de registro estudiantes y de fichas, se procede
a continuar con el desarrollo del módulo de Reporte de Ficha, tanto su diseño
como su funcionalidad.
Como se muestra en el siguiente gráfico, están las tareas a realizar durante este
Sprint para el correcto funcionamiento de Reportes.
90
Gráfico N. 41
Sprint 9: Módulos de Reportes
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Diseño del módulo de reporte
Diseños de pantallas para la generación de reportes.
Creación de reportes en pdf
Creación de reportes en excel.
Luego de haber culminado este Sprint, se obtiene el Burndown de que todas las
tareas se culminaron con éxito.
91
Gráfico N. 42
Burndown del Sprint 9
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
SPRINT 10 – MODULO DE MANTENIMIENTO Y CORRECCIONES
Después de terminar todos los módulos, viene la parte de la prueba de
cumplimiento con los requerimientos, donde se le da mantenimiento y se hacen
las respectivas correcciones para su buen funcionamiento.
Como se muestra en el siguiente gráfico, están las tareas a realizar durante este
Sprint para el correcto funcionamiento de la página.
92
Gráfico N. 43
Sprint 10: Módulos de mantenimiento y consultas
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Revisión de los módulos creados.
Probar funcionamiento de cada módulo.
Revisar que cumple con los requerimientos.
Validación de los datos almacenados.
Prueba de seguridad de la página y la base de datos.
Correcciones de fallas encontradas.
Modificar fallas encontradas.
Prueba de los cambios hechos para corrección.
Luego de haber culminado este Sprint, se obtiene el Burndown de que todas las
tareas se culminaron con éxito.
93
Gráfico N. 44
Burndown del Sprint 10
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
Entregables del proyecto
Los entregables que se realizarán con respecto al presente proyecto, son los
siguientes:
Código fuente del proyecto
Manual de Usuario
Manual Técnico
94
CRITERIOS DE VALIDACIÓN DE LA PROPUESTA
Una vez desarrollado todos los módulos que comprende la página web, se debe
evaluar si cumple con todos los parámetros establecidos. La finalidad de esta
validación es certificar que cada uno de los procesos cumple con la tarea de
registro de Ficha Estudiantil; así como también, ver las fallas o correcciones que
se deben realizar al producto antes de ser entregado. Para esto se harán pruebas
con el personal del área de secretaria en la FAU, para que ellos den fe de que la
página web cumple con la gestión de registro de fichas estudiantil, como también
validar la seguridad que tenga la página y la BD.
Para validar se elaboró entrevista a experto, el cual brindara sus conocimientos
en el tema, dando su opinión acerca del proyecto, como también su punto de vista
y su criterio de validación.
Entrevista a experto de la Facultad de Arquitectura y Urbanismo
Perfil de experto a entrevistar:
CUADRO N. 7
Perfil de experto de la Carrera de Arquitectura y Urbanismo
Nombre: Ab. Ingrid Liz Muñoz Feraud
Departamento: Secretaria General FAU
Cargo: Secretaria General
Función principal:
Administración de archivos, control de
personal, custodia de documentos
académicos, elaboración de actas, acuerdos
y resoluciones, certificar documentación y
reportes de índole académica.
Elaboración: Andy Alvia, Walter Vera
Fuente: Herramienta Scrumtool
95
Entrevista previa a utilizar la página web
La Universidad de Guayaquil – Facultad de Arquitectura y Urbanismo es una
institución educativa cuya misión es generar, difundir y preservar conocimientos
científicos, tecnológicos, humanísticos y saberes culturales de forma crítica,
creativa y para la innovación social, a través de las funciones de formación,
investigación y vinculación con la sociedad, fortaleciendo profesional y éticamente
el talento de la nación y la promoción del buen vivir, en el marco de la
sustentabilidad, la justicia y la paz y su visión va orientada a ser una institución de
Educación Superior con liderazgo prospectivo nacional e internacional en el
campo de sus dominios científicos, tecnológicos y humanísticos; comprometida
con la democracia cognitiva, el diálogo de saberes, el desarrollo sustentable y la
innovación social.
Teniendo una gran cantidad de estudiantes, la facultad se ve en la necesidad de
llevar un registro de fichas estudiantiles, para de este modo poder tener un control
y seguimiento de todos los estudiantes pertenecientes a esta institución.
Ab. Ingrid Liz Muñoz Feraud: “Una ficha estudiantil es un documento que sirve
para conocer los datos académicos de cada uno de los estudiantes de la facultad
de arquitectura tanto para los de la carrera de arquitectura y de diseño, en otras
palabras, es la vida del estudiante, reflejada en una ficha”.
Proceso actual para manejar el registro de fichas estudiantiles en la Facultad
de Arquitectura
En la actualidad la FAU cuenta con un proceso establecido para gestionar el
registro de las fichas estudiantiles. Este proceso se lo divide en tres subprocesos:
Creación o búsqueda de ficha física donde se llenarán los datos
Revisión de datos a llenar de forma manual
Llenar fichas con esfero solo en caso de aprobar y en caso de reprobar
con lápiz. En caso de algún error repetir los procesos anteriores.
96
Almacenar fichas físicas en una bodega.
Herramientas que utilizan actualmente para realizar este proceso
Actualmente la Facultad de Arquitectura cuenta con una ficha impresa en un papel
tamaño oficio que sirve para realizar la gestión del registro de ficha estudiantil de
forma manual.
Problemas al realizar este proceso:
Factor tiempo en los subprocesos manuales
Al realizar un almacenamiento en una bóveda física las fichas se llenan de polvo
lo cual a su vez genera molestias al personal al momento de buscar.
Al momento de querer realizar correcciones todos los subprocesos se repiten
generando molestias y un mal uso de los recursos.
Ab. Ingrid Liz Muñoz Feraud: “Están implementando un sistema donde están
registrando los datos de los estudiantes, pero no cumple con los requerimientos
que se solicitan, como por ejemplo los reportes, un sistema para la gestión de
fichas que vaya acorde a nuestros requerimientos es necesario porque son datos
más específicos y concretos”.
Beneficios que se espera obtener al utilizar la página web propuesta como
solución
Disminuir la demora al momento de buscar las fichas
No someterse a un estándar si no trabajar de acuerdo con las necesidades
Resultados en tiempo real
Veracidad en la información y rapidez al momento de generar reportes.
Entrevista posterior a utilizar la página web
El experto entrevistado utilizó la página web propuesta como solución a la gestión
de Registro de Ficha Estudiantil, donde se puedo destacar ciertos puntos:
97
Proceso que se realizó en la página web
Mostar el entorno gráfico de nuestro sistema
Usar el registro de usuarios que manejaran el sistema.
Usar el proceso para el registro de estudiantes.
Aprender el proceso a realizar para la gestión de las fichas estudiantiles
Generar reportes con los datos solicitados al sistema
Beneficios que se obtuvo al utilizar la página web
Minimizar tiempo
Seguridad en los datos
Datos reales
Reportes bien detallados
Recomendaciones
Que tenga una conexión con la base de datos del centro de cómputo para evitar
ingresos individuales, a pesar de que no afecta con el funcionamiento sería un
buen añadido.
Resultados de la entrevista
Basándose en los beneficios que obtuvo el experto de la FAU al utilizar la página
web, para realizar el proceso Gestión de Registro de Fichas Estudiantiles, se
obtiene como resultado que el proyecto propuesto es beneficioso para este
proceso, ya que cumple con los requisitos mínimo necesario.
98
CAPÍTULO IV
CRITERIOS DE ACEPTACIÓN DEL PRODUCTO O SERVICIO
Basándonos en la información obtenida de las encuestas realizadas al personal
administrativo, se puede determinar los siguientes criterios de aceptación del
proyecto, tomando en cuenta las propiedades que un sistema debe tener para que
sea de seguro y también cumpliendo con los objetivos planteados anteriormente,
siendo así, un proyecto factible y viable para el uso en el área administrativa de la
Facultad de Arquitectura y Urbanismo – Carrera de Arquitectura.
Los criterios de aceptación del sistema serán medidos de forma cualitativa
utilizando la siguiente escala de evaluación:
Cumple totalmente
Cumple parcialmente
No cumple
CUADRO N. 8
Criterio de aceptación del proyecto
Criterios Ponderación
Usabilidad: La página web es intuitiva, fácil
aprendizaje y se le otorga el manual de usuario
para un mejor entendimiento del sistema
Cumple Totalmente
Seguridad: Los permisos sólo pueden ser
otorgados por el usuario administrador de la
página web y también cumple con los roles
determinados
Cumple Totalmente
99
Disponibilidad: La página web se encuentra
disponible para el administrador y para el
secretario.
Cumple Totalmente
Funcionalidad: La página cumple con todo lo
especificado obteniendo los beneficios esperados.
Cumple Totalmente
Tecnología: la página cuenta con la tecnología
apropiada para el mejor rendimiento del mismo.
Cumple Totalmente
Compatibilidad: Al utilizar tecnologías como Ajax
y JavaScript. Permitirá al usuario, navegar desde
la mayoría de plataformas web.
Cumple Parcialmente
Fiabilidad: Al ingresar ccorrectamente la maestra
de los puntos de ventas y de los datos de las
mediciones, se obtendrá resultados reales y
consistentes.
Cumple Totalmente
Elaboración: Andy Alvia, Walter Vera
Fuente: Encuestas de Satisfacción
100
CONCLUSIONES
Luego de haber cumplido la investigación de los procesos que se realizan para el
registro de fichas estudiantiles y haber propuesto una solución para optimizar las
tareas y corregir los problemas encontrados, se pudo concluir con lo siguiente:
Con los procesos de manera manual, se genera inconsistencia de los
datos como también, el desperdicio de materiales de oficina y tiempo del
personal para realizar nuevas tareas. Para una búsqueda exhaustiva se
necesita de mucha concentración y parte del tiempo que deben dedicar el
personal, para la búsqueda en grandes cantidades, ya que la FAU maneja
información de diferentes periodos lectivos y esto hace que si necesitan la
información de un estudiante especifico, tendría que buscar en una gran
cantidad de documentos físicos. Esta información puede ser alterada de
forma fácil, de algún individuó que quiera producir un prejuicio a la
institución, ya que cualquier persona que tenga acceso al departamento,
con la ayuda de esfero puedo alterar o dañar la ficha.
Se propuso la elaboración de una página web, para que suplente este
proceso mecánico, ayudando a la digitalización del proceso que
beneficiara en la veracidad de los datos y el ahorro de materiales de
oficina. Ya que optimizara el proceso y será de fácil uso para el personal
cuando quiera crear o actualizar una ficha ya existente. Para la búsqueda
de datos específicos o una búsqueda global, ayudara ahorrar el tiempo que
se dedicaba a esta tarea, ya que toda la información es almacenada en
una base de datos interna que solo tendrá acceso personal autorizado
(personal que trabaje en el departamento) y personal administrativo. Esta
cumple con toda la gestión de registro de fichas estudiantiles.
Para el desarrollo y uso de la página web, se trabajó con herramientas
open source (libres), que no tendrá ningún valor para el implemento de
esta página, con un servidor web interno que solo tendrá acceso en la red
de la universidad. Así, la facultad no tendrá que adquirir licenciamientos de
software o trabajar bajo una plataforma de pago.
101
Se generó una plantilla para la presentación de los datos de forma fisca,
para que esta información pueda ser usada de manera legal, para algún
trámite que el departamento necesite hacer, como también generar
reportes estadísticos para el análisis y tomas de decisiones. El cual se
pude tener un físico cuando sea necesario generarlo, mientras tanto la
información puede ser visualizada desde el aplicativo web.
102
RECOMENDACIONES
Se recomienda se realicen las gestiones pertinentes por parte de la
Facultad de Arquitectura, para la adquisición y posterior implementación
del aplicativo desarrollado en el presente trabajo.
Para que este aplicativo web funcione de forma óptima, se recomienda que
se use sistema operativo Windows, y explorador Firefox para una mejor
visualización del diseño de la página web.
El personal que trabaja en el departamento, deberá tener una noción de
manejo de herramientas tecnológicas, para que su uso sea de manera fácil
e intuitiva. Y que el personal sea capacitado para su manejo.
Para sacar beneficio de esta herramienta, se recomienda que este
proyecto sea tomado para la continuidad de su desarrollo para la
implementación en todas las facultades de la universidad de Guayaquil.
Se recomienda se realice un levantamiento de información de parte de la
Dirección de Gestión Tecnológica de la Información, de la Universidad de
Guayaquil, para determinar los procesos académicos, que deben ser
sistematizados, y posteriormente, éstos sean propuestos como trabajos de
titulación, para los egresados de la Carrera Ingeniería en Sistemas
Computarizados.
103
BIBLIOGRAFÍA
[1] (2010). LEY ORGANICA DE EDUCACION SUPERIOR, LOES. Quito.
[2] Adell, J. and Y. Bernabé (2007). "Software libre en educación." Tecnología educativa. Madrid: McGraw-Hill: 173-195.
[3] Arias, Á. (2015). Aprende a programar Ajax y jQuery, Angel Arias.
[4] Beati, H. (2015). PHP-Creación de páginas Web dinámicas 2a edición, Alfaomega Grupo Editor.
[5] Belmonte Fernández, Ó. and C. Granell Canut (2013). "La importancia de la labor del programador.¿ Qué se espera?¿ Cómo se prepara? Análisis desde los lenguajes de programación."
[6] Boneu, J. M. (2007). "Plataformas abiertas de e-learning para el soporte de contenidos educativos abiertos." RUSC. Universities and Knowledge Society Journal 4(1).
[7] Carrasco, J. B. (2009). "Gestión de procesos." Santiago-Chile: Editorial Evolución.
[8] Castillo, A. A. (2017). Curso de Programación Web: JavaScript, Ajax y jQuery, IT Campus Academy.
[9] Cataldi, Z. and F. Salgueiro (2007). "Software libre y código abierto en educación." Quaderns Digitals 48: 01-12.
[10] Claro, R. L. H. and D. G. Navarro (2010). "Estándares de Diseño Web." Ciencias de la Información 41(2): 69-71.
[11] Correa, R. (2008) Decreto 1014.- Sobre el uso del Software Libre. Decreto 1014.- Sobre el uso del Software Libre
[12] Cueto, A. S. (2007). "Bases de Datos 1 ".
104
[13] Deemer, P., et al. (2009). "Información básica de SCRUM." California: Scrum Training Institute.
[14] Gallego, M. T. (2012). "Metodología Scrum." Gestión de Proyectos Informáticos, http://openaccess. uoc. edu/webapps/o2/bitstream/10609/17885/1/mtrigasTFC0612memoria. pdf.
[15] Gauchat, J. D. (2012). El gran libro de HTML5, CSS3 y Javascript, Marcombo.
[16] Guzmán Reyes, D. (2013). "Bases de datos distribuidas con una solución LAMP (Linux, Apache, MySQL y PHP)."
[17] Jardón, A. V., & Bravo (2013), D. I. A. MODELO PARA LA INTEGRACIÓN DEL TESTING EN LA METODOLOGÍA SCRUM.
[18] Marqués, P. (2007). "La Web 2.0 y sus aplicaciones didácticashttp://peremarques. pangea. org/web20. htm." La Web 2.0 y sus aplicaciones didácticas.
[19] Maza, M. Á. S. (2012). Javascript, Innovación Y Cualificación.
[20] Montoya, C. E. G., et al. (2013). "Seguridad en la configuración del servidor web Apache." INGE CUC 9(2): 31-38.
[21] Mora, S. L. (2002). Programación de aplicaciones web: historia, principios básicos y clientes web, Editorial Club Universitario.
[22] Muñoz, V. J. E. (2013). El nuevo PHP. Conceptos avanzados, Vicente Javier Eslava Muñoz.
[23] Oliveros, A., et al. (2014). Prácticas de Ingeniería de Requerimientos en el desarrollo de aplicaciones Web. WER.
[24] Pantaleo, G. and L. Rinaudo (2015). Ingeniería de Software, Alfaomega Grupo Editor.
105
[25] Poveda Mariño, C. M. (2012). Aplicación de un test online de evaluación sobre pedagogía y su efecto en la preparación de los docentes del Instituto Superior Tecnológico Hispano América 2008-2009.
[26] Ruiz-Fuentes, D., et al. (2014). "La gestión por procesos, su surgimiento y aspectos teóricos." Ciencias Holguín 20(1): 10-19.
[27] Sánchez, R. and J. d. E. d. M. Echeverry (2004). "en Salud." Rev. Salud Pública 6(3): 302-318.
[28] Serrano Cobos, J. (2006). "Pasado, presente y futuro de la Web 2.0 en servicios de información digital."
[29] Souza, M. H. V. L. (2009). "Redes de computadores." Dados Voz e Imagem.
[30] Somerville, I. (2006). Ingeniería del Software. (7a ed). España.
[31] Vértice, E. (2009). Diseño básico de páginas web en HTML, Editorial Vértice.
[32] Vigouroux, C. (2015). Aprender a desarrollar con JavaScript, Ediciones ENI.
106
ANEXOS
Anexo N. 1
Preguntas de la entrevista previa a utilizar la página web
Anexo N. 2
Preguntas de la entrevista posterior a utilizar la página web
107
Anexo N. 3
Entrevista en la Secretaría de la Facultad de Arquitectura
Anexo N. 4
Documentos de aceptación de la Facultad de Arquitectura y Urbanismo
108
109
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMATICAS Y FISICAS
CARRERA DE INGENIERIA EN SISTEMAS
COMPUTACIONALES
MANUAL DE USUARIO
DESARROLLO DE PÁGINA WEB PARA LA GESTIÓN DE FICHAS
ESTUDIANTILES PARA LA UNIVERSIDAD DE GUAYAQUIL FACULTAD DE
ARQUITECTURA Y URBANISMO CARRERA DE ARQUITECTURA PARA LA
OPTIMIZACIÓN DE LOS PROCESOS
PROYECTO DE TITULACIÓN
Previa a la obtención del Título de:
INGENIERO EN SISTEMAS COMPUTACIONALES
AUTORES:
ANDY OSWALDO ALVIA CHOEZ
WALTER ALEXANDER VERA MACIAS
TUTOR:
ING. VICENTE VIZUETA LOGROÑO, MSC.
GUAYAQUIL – ECUADOR 2018
ÍNDICE GENERAL
1. LOGIN (Inicio de Sesión) .............................................................................. 2
2. MÓDULO: INICIO ......................................................................................... 3
3. MÓDULO: CREAR USUARIO ...................................................................... 4
4. MÓDULO: GESTIÓN ESTUDIANTIL ............................................................ 6
4.1 MÓDULO: REGISTRAR ESTUDIANTE ................................................. 6
4.2 MÓDULO: AGREGAR MATERIAS A ESTUDIANTE ............................. 8
4.3 MÓDULO: REGISTRAR CALIFICACIONES ........................................ 10
4.4 MÓDULO: CONSULTAR REPORTE ................................................... 11
4.5 MÓDULO: REGISTRAR ACTIVIDADES DE MATRICULA ................. 13
4.6 MÓDULO: ASIGNAR MENCIÓN ......................................................... 14
4.7 MÓDULO: REGISTRO DE TITULACION ............................................ 14
4.8 MÓDULO: BUSCAR ESTUDIANTE ..................................................... 15
4.8.1 VISTA ........................................................................................... 16
4.8.2 EDITAR ........................................................................................ 16
4.8.3 ELIMINAR .................................................................................... 17
5. MODULO: GESTION ADMINISTRATIVA ................................................... 17
5.1 MODULO: ADMINISTRAR USUARIOS ............................................... 18
5.1.1 EDITAR ........................................................................................ 18
5.1.2 ELIMINAR .................................................................................... 18
5.2 MODULO: ADMINISTRAR ESTUDIANTES ......................................... 19
5.2.1 VISTA ........................................................................................... 19
5.2.2 EDITAR ........................................................................................ 20
5.2.3 ELIMINAR .................................................................................... 20
5.3 MODULO: REGISTRO DE ACTIVIDADES .......................................... 21
6. MÓDULO: GESTIÓN ACADEMICA ............................................................ 21
6.1 MÓDULO: CREAR PERIODO LECTIVO ............................................. 22
6.2 MÓDULO: CREAR ASIGNATURA ...................................................... 22
7. MÓDULO: GRAFICO ESTADISTICO ......................................................... 23
8. MÓDULO: CAMBIAR CONTRASEÑA ........................................................ 24
2
Universidad de Guayaquil
Facultad de Ciencias Matemáticas y Físicas
Carrera de Ingeniería en Sistemas computacionales
Manual de Usuario del Sistema de Gestión de Fichas.
1. LOGIN (Inicio de Sesión)
NOTA: Para realizar el inicio de sesión, se deberá tener a disposición un usuario y
contraseña de perfil: administrador o secretario/a.
1. Ingresar al portal web utilizando usuario y contraseña pertenecientes al mismo perfil
Nota: En caso de ingresar un usuario y contraseña incorrecta, saldrá un mensaje
de error como este:
Nota: Dependiendo del tipo de usuario que ingrese se presentaran los menús a
los que podrá acceder.
3
Menú de Administrador
Menú de secretario/a
2. MÓDULO: INICIO
Este es un módulo cuya función solo es de presentación contiene imágenes
presentando la siguiente información:
Imagen de aniversario de la Universidad de Guayaquil
Misión y Visión de la Facultad de Arquitectura
Misión y Visión de la Universidad de Guayaquil
4
3. MÓDULO: CREAR USUARIO
Opción que permite la creación de usuarios que usaran el sistema, esta opción solo la
vera el usuario tipo administrador, el usuario creado necesitara los siguientes datos
Nombres, Apellidos, Fecha de Nacimiento, Nº Identificación, Cargo, Área, Tipo de Usuario,
Facultad, Dirección Domiciliaria, Número Personal, Correo Electrónico, Foto de Perfil.
5
Para realizar la carga de imagen se deberá seguir los siguientes pasos:
1.- Dar clic en Examinar….
2.- Elegir la imagen perteneciente al usuario a quien pertenecerá el perfil.
3.- Elegir la opción Abrir, luego de dar a la opción de abrir nos presenta el nombre de la
imagen a subir. (En caso de elegir la opción cancelar, la imagen no será cargada)
4.- Luego de llenar todos los datos dar al botón “Crear”
5.- Al crearse de forma correcta nos saldrá el siguiente mensaje y estará listo para logear
desde su nueva cuenta.
Nota: El nombre de usuario y contraseña del nuevo perfil tomaran por defecto el Nº
Identificación, se recomienda cambiar la contraseña la primera vez que el nuevo usuario
entre en su perfil.
6
4. MÓDULO: GESTIÓN ESTUDIANTIL
En este módulo se presentará un menú con las diferentes opciones para la gestión
estudiantil, esta opción será visualizada por ambos tipos de usuario y nos presentará
las siguientes opciones:
- REGISTRAR ESTUDIANTE
- AGREGAR MATERIAS A ESTUDIANTE
- REGISTRAR CALIFICAIONES
- CONSULTAR REPORTE
- REGISTRAR ACTIVIDADES DE MATRICULA
- ASIGNAR MENCION
- REGISTRO DE TITULACION
- BUCAR ESTUDIANTE
4.1 MÓDULO: REGISTRAR ESTUDIANTE
Opción que permite la creación de perfil de estudiantes que estarán en la base de datos
del sistema, el estudiante registrado necesitará los siguientes datos
Nombres, Apellidos, Nº Identificación, Lugar de Nacimiento, Fecha de Nacimiento, Correo
Electrónico, Telf Domicilio, Telf Celular, Nombres del Padre, Nombres de la Madre,
Dirección Domiciliaria, Dirección del Trabajo, Nombre del Colegio, Nota de Graduación,
Especialización, Categoría Colegio, Año de Graduación, Tipo de Sangre, Carnet
CONADIS, Facultad, Carrera, Foto de Perfil.
7
Al igual que en el módulo “CREAR USUARIO” para realizar la carga de imagen se
deberá seguir los siguientes pasos:
1.- Dar clic en Examinar….
2.- Elegir la imagen perteneciente al usuario a quien pertenecerá el perfil.
8
3.- Elegir la opción Abrir, luego de dar a la opción de abrir nos presenta el nombre de la
imagen a subir. (En caso de elegir la opción cancelar, la imagen no será cargada)
4.- Luego de llenar todos los datos dar al botón “Crear”
5.- Al crearse de forma correcta nos saldrá el siguiente mensaje y estará listo para logear
desde su nueva cuenta.
4.2 MÓDULO: AGREGAR MATERIAS A ESTUDIANTE
En este módulo se asignan materias a los estudiantes buscándolos por: Facultad,
Carrera, Periodo Lectivo, Estudiante (buscándolo por identificación o pasaporte).
9
Una vez completado los datos de forma correcta, dar click al botón “Siguiente”. (Si
damos a Cancelar Regresaremos al menú anterior)
En caso de Ingresar datos erróneos nos saltara el siguiente mensaje.
Seleccionar un semestre para agregar materias pertenecientes al mismo.
Seleccionar las materias que se le van a asignar al estudiante y luego dar click en
“agregar”
10
En caso de seleccionar alguna materia repetida nos saldrá el siguiente mensaje
En caso de que todo este correcto, nos saldrá el siguiente mensaje
4.3 MÓDULO: REGISTRAR CALIFICACIONES Este módulo permite ingresar las calificaciones y asistencias en las materias registradas
a los estudiantes.
Al llenar los datos nos presentara las calificaciones y el porcentaje de asistencias de las
respectivas materias.
11
Al dar click en el botón “Registrar Calificación” nos saldrá el siguiente mensaje.
4.4 MÓDULO: CONSULTAR REPORTE Este módulo nos sirve para consultar la ficha estudiantil de los estudiantes por medio de
Facultad, Carrera e identificación.
Una vez ingresados los datos de forma correcta le damos a buscar.
12
En caso de ingresar datos incorrectos nos presentara un reporte vacío como en la
siguiente imagen.
Si los datos ingresados son correctos nos presentara el reporte requerido.
Para Generar la ficha le damos al botón Generar PDF, luego se nos descargara un
documento .pdf con los datos de la ficha actual
13
4.5 MÓDULO: REGISTRAR ACTIVIDADES DE MATRICULA En este módulo buscaremos al estudiante por medio de Facultad, Carrera, Periodo
Lectivo, Estudiante (por medio de identificación) para que nos lleve al formulario de
registro de datos de matrícula.
Una vez llenados los datos de forma correcta damos click al botón “Siguiente”.
Se presentará el formulario de registro de datos de matrícula donde se podrán llenar los
datos requeridos.
Al registrar los datos se presentará el siguiente mensaje
14
4.6 MÓDULO: ASIGNAR MENCIÓN En este módulo se registrarán las menciones pertenecientes a los estudiantes.
Una vez llenados los datos le damos al botón “Asignar”
Al asignar nos saldrá el siguiente mensaje
4.7 MÓDULO: REGISTRO DE TITULACION En este módulo se realiza el registro de datos de titulación al estudiante, realizando una
búsqueda por: Facultad, Carrera, Periodo Lectivo, Estudiante (por medio de
identificación).
Una vez llenados los datos de forma correcta le damos al botón “Siguiente” y nos llevara
al formulario de “CARACTERISTICAS Y DENOMINACIÓN DEL TRABAJO DE
GRADUACIÓN”
15
El siguiente formulario solicitara los siguientes datos: Tema, Tutor de Trabajo de
Titulación, Ubicación/Destino, Fecha de Incorporación, Promedio de Notas 1er a 8vo,
Promedio General de Notas, Créditos Aprobados, MERITOS DE TRABAJO
(Recomendación, PREMIO, Observación)
4.8 MÓDULO: BUSCAR ESTUDIANTE Este módulo permite realizar una búsqueda de los estudiantes por medio de Facultad,
Carrera, Periodo Lectivo, Estudiante (por medio de nombre o identificación).
16
Se presentará una lista con datos idénticos a los ingresados donde nos permitirá: Ver,
Editar o Eliminar los datos de ese estudiante
4.8.1 VISTA En la opción vista se nos presentaran los datos del estudiante, sin permitir modificarlos.
4.8.2 EDITAR En la opción editar se nos presentaran los datos del estudiante, permitiendo modificar
los datos de dicho estudiante.
17
4.8.3 ELIMINAR
Esta opción permite eliminar los datos de dicho estudiante al darle click nos presentara
el siguiente mensaje.
5. MODULO: GESTION ADMINISTRATIVA
Módulo que cuenta con 3 opciones que permitirán realizar la gestión administrativa de
usuarios, estudiantes y actividades, nos presentara las siguientes opciones.
ADMINISTRAR USUARIOS
ADMINISTRAR ESTUDIANTES
REGISTRO DE ACTIVIDADES
18
5.1 MODULO: ADMINISTRAR USUARIOS Este módulo permite administrar a los usuarios de las facultades por medio de su
nombre o identificación, permitiendo editar y eliminar al usuario
5.1.1 EDITAR En la opción editar se nos presentaran los datos del usuario, permitiendo modificar los
datos de dicho estudiante.
5.1.2 ELIMINAR
Esta opción permite eliminar los datos de dicho usuario al darle click nos presentara el
siguiente mensaje.
19
5.2 MODULO: ADMINISTRAR ESTUDIANTES Este módulo permite realizar una búsqueda de los estudiantes por medio de Facultad,
Carrera, Periodo Lectivo, Estudiante (por medio de nombre o identificación).
Se presentará una lista con datos idénticos a los ingresados donde nos permitirá: Ver,
Editar o Eliminar los datos de ese estudiante
5.2.1 VISTA En la opción vista se nos presentaran los datos del estudiante, sin permitir modificarlos.
20
5.2.2 EDITAR En la opción editar se nos presentaran los datos del estudiante, permitiendo modificar
los datos de dicho estudiante.
5.2.3 ELIMINAR
Esta opción permite eliminar los datos de dicho estudiante al darle click nos presentara
el siguiente mensaje.
21
5.3 MODULO: REGISTRO DE ACTIVIDADES Este módulo permite visualizar las acciones realizadas en el sistema, presentando
información como: identificación del usuario, fecha de la acción, hora de la acción, tipo
de acción.
Nos permitirá buscar la actividad en la que estamos interesados, fecha, usuario e
inclusive hora.
6. MÓDULO: GESTIÓN ACADEMICA
El siguiente módulo tiene las siguientes opciones:
- CREAR PERIODO LECTIVO
- CREAR ASIGNATURA
22
6.1 MÓDULO: CREAR PERIODO LECTIVO Permite registrar un nuevo periodo lectivo, los datos requeridos son los siguientes:
Fecha de Inicio del nuevo Periodo Lectivo, Fecha de Culminación del Periodo Lectivo,
Ciclo y Detalle.
Si el periodo ya existe nos presentara el siguiente mensaje
6.2 MÓDULO: CREAR ASIGNATURA Permite registrar una nueva asignatura, los datos requeridos son los siguientes:
Facultad, Carrera, Semestre, Nombre de la Asignatura, Código, Crédito, Nivel.
23
7. MÓDULO: GRAFICO ESTADISTICO
Este módulo nos permitirá tener una visión tanto en cantidad, porcentual y grafica de los
alumnos aprobados y desaprobados, la búsqueda se realiza ya sea por:
- Facultad
- Carrera
- Periodo Lectivo
- Semestre
Una vez llenado los datos, los enviamos dando click al botón “Enviar consulta”
Luego de enviar los datos, se nos presentara un gráfico representando los datos
solicitados
24
8. MÓDULO: CAMBIAR CONTRASEÑA
Este módulo permite cambiar la contraseña del usuario que esta logeado, se necesitara
la contraseña actual que por defecto es el mismo número de identificación.
Nota: Maneje su contraseña con cuidado ya que por toda acción realizada desde una
cuenta el responsable es el dueño del perfil.
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
MANUAL TÉCNICO
“DESARROLLO DE PÁGINA WEB PARA LA GESTIÓN DE FICHAS ESTUDIANTILES PARA LA UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE ARQUITECTURA Y URBANISMO CARRERA DE ARQUITECTURA PARA LA OPTIMIZACIÓN DE LOS PROCESOS”
PROYECTO DE TITULACIÓN
Previa a la obtención del Título de:
INGENIERO EN SISTEMAS COMPUTACIONALES
AUTORES:
ANDY OSWALDO ALVIA CHOEZ
WALTER ALEXANDER VERA MACIAS
TUTOR: ING. VICENTE VIZUETA LOGROÑO, MSC.
GUAYAQUIL – ECUADOR
2018
ÍNDICE GENERAL
REQUERIMIENTOS FUNCIONALES ........................................................................... 1
REQUERIMIENTOS NO FUNCIONALES ..................................................................... 4
DIAGRAMA ENTIDAD RELACIÓN ............................................................................... 5
CASO DE USO ADMINISTRADOR .............................................................................. 6
CASO DE USO SECRETARIO/A.................................................................................. 7
CÓDIGO PARA VALIDAR INGRESO ........................................................................... 8
CÓDIGO PARA REGISTRAR ESTUDIANTE ............................................................... 9
CÓDIGO PARA ASIGNAR MATERIAS A ESTUDIANTE ............................................ 10
CÓDIGO PARA REGISTRAR CALIFICACIÓN A ESTUDIANTE ................................ 11
CÓDIGO PARA PRESENTAR REPORTE DE FICHA ESTUDIANTIL ........................ 12
CÓDIGO PARA PRESENTAR REPORTE DE FORMA GRAFICA .............................. 16
1
REQUERIMIENTOS FUNCIONALES
Id Titulo Descripción Priori
dad
Depend
encia
REQ01 Módulo de
creación de
usuarios.
El administrador podrá crear usuarios
administrativos y de secretario/a para
que solo personal autorizado tenga
acceso a la página web.
Alta n/a
REQ02 Módulo de
gestión
administrativ
a.
El usuario que tenga perfil de
administrador podrá trabajar en este
módulo, para realizar tareas de
mantenimiento de la página web.
Alta REQ01
REQ03 Administrar
Usuarios.
El administrador podrá visualizar todos
los usuarios creados; para poder ver los
datos personales de cada usuario, como
también podrá editar dicha información
y si lo es necesario eliminar usuarios
que ya no trabajen en el departamento
de secretaria.
Alta REQ01
REQ04 Módulo de
creación de
nuevos
estudiantes.
Los usuarios que tengan acceso a la
página web, podrán registrar nuevos
estudiantes a la base de datos, para
llevar la gestión de la ficha estudiantil.
Media n/a
REQ05 Administrar
estudiantes.
El administrador podrá visualizar, editar
y eliminar cualquier estudiante que se
encuentre ingresado en la base de dato.
Alta REQ04
2
REQ06 Módulo de
gestión
estudiantil.
Todos los usuarios tendrán acceso a
este módulo para realizar el trabajo de
registro de ficha estudiantil, la cual
deben llenar ciertos requisitos para al
final poder visualizar la ficha estudiantil.
Alta n/a
REQ07 Agregar
materias a
estudiante.
En esta página se realiza el proceso de
asignación de nuevas materias al
estudiante en un nuevo periodo lectivo,
así cuando se quiera pasar las notas,
solo deberán escoger el periodo lectivo
donde se ingresara las notas, y
aparecerán todas las materias
asignadas.
Alta REQ04
REQ08 Registrar
calificaciones
.
Se podrán realizar el registro de notas
una vez que se obtenga el promedio de
todas las materias, para así ingresar la
información a la base de datos.
Alta REQ07
REQ09 Registrar
actividades
de matrícula.
Se registrar todas las actividades que se
presentaron en el periodo lectivo actual,
como semestre, folio, libro,
observaciones, entre otras cosas que se
debe llenar.
Media n/a
REQ10 Registro de
titulación.
El estudiante debe haber cumplido con
toda su malla curricular para que este
módulo sea registrado.
Media n/a
REQ11 Buscar
estudiante.
El usuario puede visualizar los datos de
los estudiantes que estén registrado.
Media REQ04
3
REQ12 Consultar
reporte.
Aquí podrá visualizar la ficha estudiantil
buscándolo por su número de
identificación, como también podrá
descargar los reportes en PDF y Excel.
Alta REQ04,
REQ07,
REQ08
REQ12 Módulo de
gestión
académica.
El administrador podrá crear nuevos
periodos lectivos, como también si hay
la necesidad de crear nuevas materias
podrá realizarlo.
Alta n/a
REQ13 Cambiar
contraseña
de usuario.
El usuario tiene la opción de poder
cambiar la contraseña, o dependerá de
las políticas de seguridad que disponga
el departamento.
Media n/a
REQ14 Grafico
estadístico.
El usuario podrá visualizar de forma
gráfica el estado de las calificaciones de
los alumnos, ya sea de forma global o
seleccionando una población especifica.
Media REQ08
REQ15 Registro de
actividades
(Auditoria).
El administrador podrá visualizar una
lista de todos los procesos realizados
por los usuarios que entraron al sistema
y de las acciones que realizaron.
Alta Todos
4
REQUERIMIENTOS NO FUNCIONALES
Id Titulo Descripción Prioridad
REQ01 Alta
compatibilidad
Al utilizar tecnologías como Ajax y JQuery.
Permitirá al usuario, navegar desde la
mayoría de plataformas web.
Media
REQ02 Optimizar
recursos
Al utilizar JavaScript y Ajax, reducirá el
tiempo de carga y la utilización del ancho
de banda de la página para hacer algunas
transacciones.
Media
REQ03 Usabilidad El usuario deberá contar con los manuales
respectivos para el entendimiento
completo de la herramienta.
Alta
REQ04 Seguridad Los permisos sólo podrán ser otorgados
por el usuario administrador del sistema.
Alta
REQ05 Funcionalidad La herramienta debe ser intuitiva y de fácil
aprendizaje.
Media
5
DIAGRAMA ENTIDAD RELACIÓN
6
CASO DE USO ADMINISTRADOR
7
CASO DE USO SECRETARIO/A
8
CÓDIGO PARA VALIDAR INGRESO
<?php
include 'conexion.php';
$usuario=$_POST['usuario'];
$clave=$_POST['clave'];
$tipo="select tipoUser from tb_usuarios where user=$usuario";
$consulta="select * from tb_usuarios where user='$usuario' and
password='$clave'";
$resultado=mysqli_query($conexion, $consulta);
$filas=mysqli_num_rows($resultado);
$lo= mysqli_fetch_assoc($resultado);
if(isset($_POST['submit'])){
if(empty($usuario)){
echo '<script language="javascript">alert("por favor llene
todos los datos..");history.back();</script>';
}
else {
if($filas>0) {
$fk_user=$lo['user'];
$accion="inicio sesión: ".$lo['nombre']." ".$lo['apellido'];
$insertHistorial="INSERT INTO tb_historial
(fk_usuario,fecha,hora,accion) values
('$fk_user',curdate(),curtime(),'$accion')";
$query= mysqli_query($conexion, $insertHistorial);
session_start();
$_SESSION['user']=$lo['user'];
$_SESSION['tipoUser']= $lo['tipoUser'];
if ($lo['tipoUser'] == 'ADMINISTRADOR')
header("location:../index2.php");
else
header("location:../indexusuario.php");
}
else {
echo '<script language="javascript">alert("Error en la
autentificacion.. \nAsegurese que los datos ingresados son los
correctos..");history.back();</script>';
exit();
}
mysqli_free_result($resultado);
mysqli_free_result($execute);
mysqli_free_result($resultado2);
mysqli_close($conexion);
}
}
9
CÓDIGO PARA REGISTRAR ESTUDIANTE
<?php
session_start();
include 'conexion.php';
include './cargarUser.php';
$nombre= strtoupper($_POST["nombre"]);
$apellido= strtoupper($_POST["apellido"]);
$lugarN= strtoupper($_POST["lnacimiento"]);
$fecha= $_POST["fecha"];
$ced= $_POST["ced"];
$celular= $_POST["celular"];
$dir= strtoupper($_POST["dir"]);
$dirT= strtoupper($_POST["dirT"]);
$npadre= strtoupper($_POST["npadre"]);
$nmadre= strtoupper($_POST["nmadre"]);
$cole= strtoupper($_POST["colegio"]);
$categoria= $_POST["cate"];
$año= $_POST["graduacion"];
$telf= $_POST["telefono"];
$tsangre= strtoupper($_POST["sangre"]);
$espez= strtoupper($_POST["especializacion"]);
$email= $_POST["email"];
$nota= $_POST["nota"];
$carrera= $_POST["carrera"];
$carnet= strtoupper($_POST["carnet"]);
$foto= $_FILES["foto"]["name"];
$ruta= $_FILES["foto"]["tmp_name"];
$destino="../fotos/estudiantes/".$foto;
copy($ruta,$destino);
$insertar= "INSERT INTO tb_estudiantes (nombre, apellido,
fechaNacimiento, lugarNacimiento, identificacion, email,
nombreDePadre, nombreDeMadre, dirDomicilio, dirTrabajo,
colegio, categoriaColegio, fechaGraduacion,
telfDomicilio, telfPersonal, especializacion, calificacion,
tipoDeSangre, carnetConai, estado, fk_carrera)
VALUES
('$nombre','$apellido','$fecha','$lugarN','$ced','$email','$npad
re','$nmadre','$dir','$dirT','$cole','$categoria',"
.
"'$año','$telf','$celular','$espez','$nota','$tsangre','$carnet'
,'A','$carrera')";
$verificar_alumno = mysqli_query($conexion, "SELECT * FROM
tb_estudiantes WHERE identificacion = '$ced'");
if (mysqli_num_rows($verificar_alumno) > 0){
echo '<script>alert("Estudiante ya se encuentra
resgistrado");window.history.go(-1);</script>';
exit;
}
$resultado = mysqli_query($conexion,$insertar);
if(!$resultado) {
10
echo '<script>alert("Error al
registrarse");window.history.go(-1);</script>';
} else {
//ingresa al historial la accion de insertar nuevo
estudiante
$fk_user=$dUser[user];
$accion= $dUser['nombre']." ".$dUser['apellido']." Ingreso
al estudiante: ".$ced." (".$nombre." ".$apellido.")";
$insertHistorial="INSERT INTO tb_historial
(fk_usuario,fecha,hora,accion) values
('$fk_user',curdate(),curtime(),'$accion')";
$queryH= mysqli_query($conexion, $insertHistorial);
echo 'Estudiante registrado exitosamente';
$insertar2="INSERT INTO tb_fotos_estudiantes
(nombre,rutafoto,identificacion,estado) VALUES
('$foto','$destino','$ced','A')";
$result= mysqli_query($conexion,$insertar2);
if(!$result) {
echo 'Error al guardar foto';
} else{
echo 'Foto Guardada con exito';
echo '<script>alert("Estudiante registrado
exitosamente");window.history.go(-1);</script>';
}
}
mysqli_close($conexion);
?>
CÓDIGO PARA ASIGNAR MATERIAS A ESTUDIANTE
<?php
session_start();
include 'conexion.php';
include './cargarUser.php';
$nombre=strtoupper($_POST["nombre"]);
$semestre=$_POST['semestre'];
$codigo=$_POST['codigo'];
$nivel=$_POST['nivel'];
$credito=$_POST['credito'];
$select="SELECT * FROM tb_materias WHERE nombre='$nombre' or
codigo='$codigo'";
$querys= mysqli_query($conexion, $select);
$row= mysqli_num_rows($querys);
if($row>0){
11
echo '<script language="javascript">alert("Ya existe esta
materia");history.back();</script>';
}else{
$insert="INSERT INTO tb_materias
(nombre,codigo,credito,fecha,fk_semestre,nivel) values"
.
"('$nombre','$codigo','$credito',curdate(),'$semestre','$nivel')
";
$query= mysqli_query($conexion, $insert);
if(!$query){
echo '<script language="javascript">alert("No se pudo
registrar la materia verifique los
datos");history.back();</script>';
} else {
//ingresa al historial la accion de ingreso de notas
$fk_user=$dUser[user];
$accion= $dUser['nombre']." ".$dUser['apellido']." Ingreso
la materia: ".$nombre;
$insertHistorial="INSERT INTO tb_historial
(fk_usuario,fecha,hora,accion) values
('$fk_user',curdate(),curtime(),'$accion')";
$queryH= mysqli_query($conexion, $insertHistorial);
echo '<script
language="javascript">alert("Registrado
correctamente");history.back();</script>';
}
}
CÓDIGO PARA REGISTRAR CALIFICACIÓN A ESTUDIANTE
<?php
//LLAMA A LA CONEXION
session_start();
include './cargarUser.php';
include 'conexion.php';
//RECIBE LOS PARAMETROS DEL FORMULARIO CREAR USUARIO
//LA FUNCION strtoupper COMBIERTE A MAYUSCULA PARA Q LA ALMACENE
ASI EN LA BD
$numero= $_POST['numero'];
$estudiante= $_POST['caja_busqueda'];
$estado='A';
$selectEst="SELECT * FROM tb_estudiantes WHERE
identificacion=$estudiante";
$query1= mysqli_query($conexion, $selectEst);
$dEst= mysqli_fetch_assoc($query1);
for($j=1;$j<=$numero;$j++){
$idcalif= $_POST['reg'.$j];
$nota= $_POST['n'.$j];
$asist= $_POST['a'.$j];
12
if($nota<7 || $asist<70){
$estado='R';
}else{
$estado='A';
}
$update="UPDATE tb_calificaciones Set nota='$nota',
asistencia='$asist', estado='$estado' Where
idcalificacion='$idcalif'";
$query= mysqli_query($conexion, $update);
$row=mysqli_num_rows($query);
if(!$query){
echo '<script language="javascript">alert("Error al
Registrarse \nAsegurese que los datos ingresados son los
correctos..");history.back();</script>';
} else {
//cuando se insertaron correctamente las notas
//ingresa al historial la accion de ingreso de notas
$fk_user=$dUser[user];
$accion= $dUser['nombre']." ".$dUser['apellido']." Ingreso
notas al estudiante: ".$dEst['identificacion']." en la materia
registrada en id: ".$idcalif." con nota: ".$nota.", asistencia:
".$asist;
$insertHistorial="INSERT INTO tb_historial
(fk_usuario,fecha,hora,accion) values
('$fk_user',curdate(),curtime(),'$accion')";
$queryH= mysqli_query($conexion, $insertHistorial);
echo '<script
language="javascript">alert("Registrado correctamente
\nAsegurese que los datos ingresados son los
correctos..");history.back();</script>';
}
}
CÓDIGO PARA PRESENTAR REPORTE DE FICHA
ESTUDIANTIL
<link rel="stylesheet" href="css\estilotabla.css"> <?php
include 'php/conexion.php';
$salida="";
$carrera=$_POST['carrera'];
$facultad=$_POST['facultad'];
$estudiante=$_POST['estudiante'];
if(isset($_POST['estudiante'])){
13
$selectSemestre="SELECT * FROM tb_semestres WHERE
fk_carrera='$carrera' ";
$query2=
mysqli_query($conexion,$selectSemestre);
$selectEst="SELECT * FROM tb_estudiantes WHERE
identificacion='$estudiante'";
$selectFoto="SELECT * FROM tb_fotos_estudiantes
WHERE identificacion='$estudiante'";
$query3= mysqli_query($conexion,$selectEst);
$query4= mysqli_query($conexion, $selectFoto);
$dato1= mysqli_fetch_assoc($query3);
$dato2= mysqli_fetch_assoc($query4);
$row=mysqli_num_rows($query3);?>
<div class="encabezado">
<table WIDTH=100% BORDER=1 class="tb-cabeza">
<caption class="titulo-caption">UNIVESIDAD DE
GUAYAQUIL<br>
FACULTAD DE ARQUITECTURA Y URBANISMO<br>
"ARQ. GUILLERMO CUBILLO RENELLA"<br>
SECRETARIA: SECCION DE ESTADISTICAS Y
DOCUMENTACION - REGISTRO DE ESTUDIANTES <br></caption>
<tr>
<td colspan="2">Nombres: <br><?php echo
$dato1['nombre']." ".$dato1['apellido']?></td>
<td>Nombre de Padre: <br><?php echo
$dato1['nombreDePadre']?></td>
<td colspan="3">Colegio: <br><?php echo
$dato1['colegio']?></td>
<td WIDTH=100px rowspan="3"> <img
src="fotos/estudiantes/<?php echo $dato2['nombre'];?>"
width="100px" height="100px"></td>
</tr>
<tr>
<td>Identificación: <br><?php echo
$dato1['identificacion']?></td>
<td>Email: <br><?php echo $dato1['email']?></td>
<td>Nombre de Madre: <br><?php echo
$dato1['nombreDeMadre']?></td>
<td>Año de Graduación: <br><?php echo
$dato1['fechaGraduacion']?></td>
<td colspan="2">Especialización: <br><?php echo
$dato1['especializacion']?></td>
</tr>
<tr>
<td colspan="2">Lugar y Fecha Nacimiento:
<br><?php echo $dato1['lugarNacimiento']." /
".$dato1['fechaNacimiento']?></td>
<td>Dirección Domicilio: <br><?php echo
$dato1['dirDomicilio']?></td>
<td>Telefono de Domicilio: <br><?php echo
$dato1['telfDomicilio']?></td>
<td>Telefono Celular: <br><?php echo
$dato1['telfPersonal']?></td>
14
<td>Tipo de Sangre: <br><?php echo
$dato1['tipoDeSangre']?></td>
</tr>
</table>
</div>
<?php
if(!$query2){
echo '<script> alert("No encontro numero de
semestre"'.$query2.' ) </script>';
} else{
$i=1;
?>
<div class="contenedor-semestes">
<?php while($fila =mysqli_fetch_assoc($query2)){
//AQUI RECORRE LOS NUMEROS DE SEMESTRES Y CREA LAS TABLAS DE
CADA SEMESTRE?>
<div class="tabla-semestres">
<table class="tabla_datos" >
<caption><?php echo $fila['nombre'];?></caption>
<tr class="tr-titulo">
<td>N°</td>
<td>PERIODO</td>
<td>COD.</td>
<td>N.VECES</td>
<td>ASIGNATURA</td>
<td>CALIF</td>
<td>%ASIST</td>
<td>ESTADO</td>
</tr>
<?php $fk= $fila['idsemestre'];
$selectMateria="SELECT * FROM tb_materias WHERE
fk_semestre='$fk'";
$selectMateriaM="SELECT * FROM tb_materias_menciones WHERE
nivel='$fila[nivel]'";
$query1= mysqli_query($conexion,$selectMateria);
$j=1;
while ($mate = mysqli_fetch_assoc($query1)) {
// AQUI RECORRE LOS NOMBRES DE MATERIA POR SEMESTRE
$fk=$mate['idmateria'];
$n=$fila['nivel'];
$selectCalificaciones= "select p.nombre, c.nota, c.asistencia,
c.nivel, c.estado, c.nVeces from tb_calificaciones c "
. "INNER JOIN tb_periodol p ON c.fk_periodoL=p.idperiodoL where
fk_estudiante='$estudiante' "
. "&& fk_materia='$fk' && idcalificacion=(select
max(idcalificacion) "
. "from tb_calificaciones where fk_estudiante='$estudiante' &&
fk_materia='$fk');" ;
$execute= mysqli_query($conexion,$selectCalificaciones);
15
$dato=mysqli_fetch_assoc($execute);
$row=mysqli_num_rows($execute);
if($row===0){
//EN ESTA CONDICION PRESENTA SI NO A VISTO LA MATERIA AUN?>
<tr>
<td><?php echo $j;?></td>
<td> - </td>
<td><?php echo $mate['codigo'];?> </td>
<td> 0 </td>
<td><?php echo$mate['nombre'];?> </td>
<td> - </td>
<td> - </td>
<td> I </td>
</tr>
<?php } else {
//EN ESTA CONDICION PRESENTA LAS CALIFICACIONES
if(!$dato['nota']){
$nota="NO";
}else{
$nota=$dato['nota'];
}
?>
<tr>
<td><?php echo $j; ?></td>
<td><?php echo $dato['nombre'];?></td>
<td><?php echo $mate['codigo'];?> </td>
<td><?php echo $dato['nVeces'];?></td>
<td><?php echo$mate['nombre'];?> </td>
<td><?php echo $nota;?></td>
<td><?php echo $dato['asistencia'];?> %</td>
<td><?php echo $dato['estado'];?></td>
</tr>
<?php }
$j++;
}
$i++; ?>
</table>
</div>
<?php
}
}
}
else{
$salida.="no hay datos :(";
16
}
mysqli_close($conexion);
echo $salida;?>
</div>
<div class="botones">
<input type="button" value="Cerrar" class="btn-cancelar"
onclick="history.back()">
<form action="php/reporte_ficha_estudiante.php" method="post">
<input type="hidden" value="<?php echo $carrera; ?>"
name="carrera">
<input type="hidden" value="<?php echo $estudiante; ?>"
name="estudiante">
<div class="contenedor-btn">
<input type="submit" name="pdf" class="btn-guardarPdf"
value="Generar PDF">
</div>
</form>
<form action="php/reporte_ficha_excel.php" method="post">
<input type="hidden" value="<?php echo $carrera; ?>"
name="carrera">
<input type="hidden" value="<?php echo $estudiante; ?>"
name="estudiante">
<div class="contenedor-btn">
<input type="submit" name="pdf" class="btn-guardarExcel"
value="Generar Excel">
</div>
</form>
</div>
<script type="text/javascript" src="js/index2.js"></script>
<script src="js/cargarTabla.js"></script>
CÓDIGO PARA PRESENTAR REPORTE DE FORMA GRAFICA
<?php
require './php/conexion.php';
?>
<link rel="stylesheet" href="css\estilos_graficos.css">
17
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.mi
n.js"></script>
<style type="text/css">
${demo.css}
</style>
<script type="text/javascript">
$(function () {
$('#container').highcharts({
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false
},
title: {
text: 'GRAFICO DE APROBADOS Y DESAPROBADOS'
},
tooltip: {
pointFormat: '{series.name}:
<b>{point.percentage:.1f}%</b>'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: true,
format: '<b>{point.name}</b>: {point.percentage:.1f} %',
style: {
color: (Highcharts.theme &&
Highcharts.theme.contrastTextColor) || 'black'
}
}
}
},
series: [{
type: 'pie',
name: 'porcentaje materias',
data: [
<?php
$semestr= filter_input(INPUT_POST,'semestre');
$periodo= filter_input(INPUT_POST,'periodoL');
$carrera= filter_input(INPUT_POST,'carrera');
$facultad= filter_input(INPUT_POST,'facultad');
if((isset($semestr)) && (isset($facultad)) &&
(isset($periodo)) && (isset($carrera)) ){
$sql=("SELECT estado, count(*) FROM
fichaprueba.tb_calificaciones where fk_semestre = '$semestr' and
fk_periodoL = '$periodo' and fk_semestre in (select idsemestre
from fichaprueba.tb_semestres where fk_carrera = '$carrera' )
and fk_semestre in (select idsemestre from
fichaprueba.tb_semestres where fk_carrera in (select idcarrera
18
from fichaprueba.tb_carreras where fk_facultad = $facultad))
group by estado ");
$query= mysqli_query($conexion, $sql);
while($res=mysqli_fetch_array($query)){
if($res['estado']==='A'){
$estado='Aprobados';
}else{
if($res['estado']==='R'){
$estado='Reprobados';
}else{
$estado='Cursando';
}
}
?>
['<?php echo $estado; ?>', <?php echo $res['count(*)'] ?>],
<?php
}
}
//por facultad
if(isset($facultad) && (!$periodo) && (!$carrera) &&
(!$semestr)){
$sql=("SELECT estado, count(*) FROM
fichaprueba.tb_calificaciones where fk_estudiante in (select
identificacion from fichaprueba.tb_estudiantes where fk_carrera
in (select idcarrera from fichaprueba.tb_carreras where
fk_facultad = '$facultad') ) group by estado; ");
$query= mysqli_query($conexion, $sql);
while($res=mysqli_fetch_array($query)){
if($res['estado']==='A'){
$estado='Aprobados';
}else{
if($res['estado']==='R'){
$estado='Reprobados';
}else{
$estado='Cursando';
}
}
?>
['<?php echo $estado; ?>', <?php echo
$res['count(*)'] ?>],
<?php
}
}
//// aqui termina el grafico por facultad
if((isset($periodo)) && (isset($carrera)) && (isset($facultad))
&& (!$semestr) ){
$sql=("SELECT estado, count(*) FROM
fichaprueba.tb_calificaciones where fk_periodoL = '$periodo' and
fk_semestre in (select idsemestre from fichaprueba.tb_semestres
where fk_carrera = '$carrera' ) and fk_semestre in (select
idsemestre from fichaprueba.tb_semestres where fk_carrera in
19
(select idcarrera from fichaprueba.tb_carreras where fk_facultad
= $facultad))group by estado");
$query= mysqli_query($conexion, $sql);
while($res=mysqli_fetch_array($query)){
if($res['estado']==='A'){
$estado='Aprobados';
}else{
if($res['estado']==='R'){
$estado='Reprobados';
}else{
$estado='Cursando';
}
}
?>
['<?php echo $estado; ?>', <?php echo $res['count(*)'] ?>],
<?php
}
}
if((isset($carrera)) && (!$periodo) && (isset($facultad)) &&
(!$semestr) ){
$sql=("SELECT estado, count(*) FROM
fichaprueba.tb_calificaciones where fk_semestre in (select
idsemestre from fichaprueba.tb_semestres where fk_carrera =
'$carrera' ) and fk_semestre in (select idsemestre from
fichaprueba.tb_semestres where fk_carrera in (select idcarrera
from fichaprueba.tb_carreras where fk_facultad = $facultad))
group by estado;");
$query= mysqli_query($conexion, $sql);
while($res=mysqli_fetch_array($query)){
if($res['estado']==='A'){
$estado='Aprobados';
}else{
if($res['estado']==='R'){
$estado='Reprobados';
}else{
$estado='Cursando';
}
}
?>
['<?php echo $estado; ?>', <?php echo $res['count(*)'] ?>],
<?php
}
}
?>
]
}]
});
});
</script>
</head>
<body>
20
<script src="Highcharts-4.1.5/js/highcharts.js"></script>
<script src="Highcharts-4.1.5/js/modules/exporting.js"></script>
<form action="index2.php?p=graf_aprobados.php" method="post"
onsubmit="function();">
<section>
<label class="label-5">Facultad</label>
<select id="facultad" name="facultad" class="select-grafico-
aprobados" >
</select>
<label class="label-5">Carrera</label>
<select id="carrera" name="carrera" class="select-grafico-
aprobados" >
</select>
<label class="label-5">Periodo Lectivo</label>
<select id="periodoL" name="periodoL" class="select-grafico-
aprobados" ></select>
<label class="label-5">Semestre</label>
<select id="semestre" name="semestre" class="select-grafico-
aprobados" onclick="function();"></select>
<input type="submit" name="consultar grafico">
</form>
<?php
if(isset($facultad) && (!$periodo) && (!$carrera) &&
(!$semestr)){
$sqldos=("SELECT estado, count(*) as cant FROM
fichaprueba.tb_calificaciones where fk_estudiante in (select
identificacion from fichaprueba.tb_estudiantes where fk_carrera
in (select idcarrera from fichaprueba.tb_carreras where
fk_facultad = '$facultad') ) group by estado; ");
$querydos= mysqli_query($conexion,
$sqldos);
while($resdos=mysqli_fetch_array($querydos)){
if($resdos['estado']==='A'){
$estad='Aprobados';
}else{
if($resdos['estado']==='R'){
$estad='Reprobados';
}else{
$estad='Cursando';
}
}
<center> <div class="numeros">
<center><h2> <?php echo $estad. " "
.$resdos['cant'];?><h2></center>
</div></center>
<?php }}
if((isset($carrera)) && (!$periodo) && (isset($facultad))
&& (!$semestr) ){
21
$sqldos=("SELECT estado, count(*) as cant FROM
fichaprueba.tb_calificaciones where fk_semestre in (select
idsemestre from fichaprueba.tb_semestres where fk_carrera =
'$carrera' ) and fk_semestre in (select idsemestre from
fichaprueba.tb_semestres where fk_carrera in (select idcarrera
from fichaprueba.tb_carreras where fk_facultad = $facultad))
group by estado;");
$querydos= mysqli_query($conexion,
$sqldos);
while($resdos=mysqli_fetch_array($querydos)){
if($resdos['estado']==='A'){
$estad='Aprobados';
}else{
if($resdos['estado']==='R'){
$estad='Reprobados';
}else{
$estad='Cursando';
}
}
?>
<center> <div class="numeros">
<center><h2> <?php echo $estad. " "
.$resdos['cant'];?><h2></center>
</div></center>
<?php }}
if((isset($periodo)) && (isset($carrera)) &&
(isset($facultad)) && (!$semestr) ){
$sqldos=("SELECT estado, count(*) as cant FROM
fichaprueba.tb_calificaciones where fk_periodoL = '$periodo' and
fk_semestre in (select idsemestre from fichaprueba.tb_semestres
where fk_carrera = '$carrera' ) and fk_semestre in (select
idsemestre from fichaprueba.tb_semestres where fk_carrera in
(select idcarrera from fichaprueba.tb_carreras where fk_facultad
= $facultad))group by estado");
$querydos= mysqli_query($conexion,
$sqldos);
while($resdos=mysqli_fetch_array($querydos)){
if($resdos['estado']==='A'){
$estad='Aprobados';
}else{
if($resdos['estado']==='R'){
$estad='Reprobados';
}else{
$estad='Cursando';
}
}
?>
<center> <div class="numeros">
<center><h2> <?php echo $estad. " "
.$resdos['cant'];?><h2></center>
</div></center>
<?php }}
if((isset($semestr)) && (isset($facultad)) &&
(isset($periodo)) && (isset($carrera)) ){
22
$sqldos=("SELECT estado, count(*) as cant FROM
fichaprueba.tb_calificaciones where fk_semestre = '$semestr' and
fk_periodoL = '$periodo' and fk_semestre in (select idsemestre
from fichaprueba.tb_semestres where fk_carrera = '$carrera' )
and fk_semestre in (select idsemestre from
fichaprueba.tb_semestres where fk_carrera in (select idcarrera
from fichaprueba.tb_carreras where fk_facultad = $facultad))
group by estado ");
$querydos= mysqli_query($conexion, $sqldos);
while($resdos=mysqli_fetch_array($querydos)){
if($resdos['estado']==='A'){
$estad='Aprobados';
}else{
if($resdos['estado']==='R'){
$estad='Reprobados';
}else{
$estad='Cursando';
}
}
?>
<center> <div class="numeros">
<center><h2> <?php echo $estad. " "
.$resdos['cant'];?><h2></center>
</div></center>
<?php }}
?>
<div id="container" style="min-width: 310px; height: 400px; max-
width: 600px; margin: 0 auto"></div>
</body>
<script src="js/index2.js"></script>