Sistema de Gestión de Cursos
Sistema de Gestión de Cursos
CONTENIDO
1. INTRODUCCIÓN
3.METODOLOGÍA DE RECURSOS-
NORMALIZACIÓN
DICCIONARIO DE DATOS
DISEÑOS DE ENTRADA
PROGRAMACIÓN
PRUEBA
IMPLEMETACIÓN
MANTENIMIENTO
7. CONCLUSIÓN-
CONCLUSIÓN Y POSIBLES ESTUDIOS FUTUROS
1
SISTEMA DE GESTIÓN DE CURSOS
INTRODUCCIÓN
Módulo de Administración
Él/Ella también puede verificar las calificaciones proporcionadas por el instructor para
Su tarea.
2
SISTEMA DE GESTIÓN DE CURSOS
1.2 CONCLUSIÓN:-
El proyecto del portal de cursos en línea está desarrollado
en la plataforma Java. El objetivo principal de este sistema es implementar un
portal mayormente basado en línea con datos educativos que es capaz de
ser útil para estudiantes de facultad. La educación en línea es una de las
campo de rápido crecimiento en internet donde los usuarios resolverán directamente
problemas al visitar un sitio web sin la facilitación de académicos.
Este método había inflado el alcance de la educación en línea y en línea
cursos. en conjunto con cursos en línea este ordenador son
actualizado a menudo con datos alternativos como actualizaciones de empleo, en línea
detalles de comunicación
para enseñar.
3
SISTEMA DE GESTIÓN DE CURSOS
(2) TUPLA: Las filas de cada tabla se conocen como una tupla. Es
un récord..
(3)ATRIBUTO: Las columnas suelen referirse como
atributos.
(4)RELACIÓN: Las tablas suelen denominarse relaciones.
4
SISTEMA DE GESTIÓN DE CURSOS
P. ej.,
ESTUDIANTE DEPTO
NOMBRE DEL ESTUDIANTE# DEPTO# NÚMERO DE DEPTO
1 Xxx 10 10 Phy.
2 Yyy 10 20 Química.
3 Zzz 20 30 CS
5
SISTEMA DE GESTIÓN DE CURSOS
2.2. SQL
Los lenguajes formales proporcionan una notación concisa para representar
consultas. Sin embargo, los sistemas de bases de datos comerciales requieren una consulta
6
SISTEMA DE GESTIÓN DE CURSOS
7
SISTEMA DE GESTIÓN DE CURSOS
Ejemplo:
Seleccionar A1, A2, …, An
DeT1,T2,…,Tm
DóndeP
Cada Aire representa un atributo, y cada Tire representa un
relación.Pis un predicado.
2.3. PL/SQL
8
SISTEMA DE GESTIÓN DE CURSOS
EJEMPLO:
declarar
número xyz (3);
comenzar
selecciona 12*12 en xyz
desde dual;
insertar en temp valores (xyz);
fin;
Aquí xyz es un entero declarado, dual es una tabla temporal, y temp es un
tabla existente.
2.4. ORACLE
Oracle es uno de los paquetes RDBMS.
2.4.1. BENEFICIOS DE USAR ORACLE:-
1. Bases de datos grandes y control de gestión del espacio:-
Oracle apoya el más grande de
Bases de datos.
2. Muchos usuarios concurrentes de la base de datos:
aplicación.
3. Ocultar el rendimiento del proceso de transacción:-
Los usuarios de bases de datos no sufren de
rendimiento de procesamiento lento.
4. Alta disponibilidad:-
En algunos sitios, Oracle trabaja por 24
horas por día y en operación normal del sistema tales datos
las bases de la ruptura y la falla parcial del sistema informático no
interrumpir el uso de la base de datos.
5. Disponibilidad controlada:-
Oracle puede controlar selectivamente el
disponibilidad de datos a nivel de base de datos y a nivel de subdatos.
6. Normas aceptadas por la industria:-
Satisface el estándar requerido para el
lenguajes de acceso a datos, interfaz de usuario del sistema operativo y
protocolos de comandos de red.
9
SISTEMA DE GESTIÓN DE CURSOS
7. Seguridad manejable:-
Para protegerse contra el acceso no autorizado
acceso y uso de la base de datos Oracle proporciona fallo y seguridad
característica de seguridad para limitar y monitorear el acceso a los datos.
8. La base de datos hace cumplir la integridad:
Garantiza la integridad de los datos, lo hace
Una base de datos Oracle tiene tanto la estructura lógica como la física.
2.4.2. Estructura física de la base de datos:
Una estructura física de base de datos Oracle determinada por el
Archivos del sistema operativo que constituyen la base de datos. Cada base de datos de Oracle es
Los archivos de una base de datos proporcionan el almacenamiento físico real para
información de la base de datos.
10
SISTEMA DE GESTIÓN DE CURSOS
Espacio de tabla:
Una base de datos se divide en unidades de almacenamiento lógicas llamadas
espacio de tabla. Una base de datos puede tener uno o más espacios de tabla.
Cada tabla de espacio tiene uno o más archivos de datos.
Mesa:
Una tabla es la unidad básica de almacenamiento de datos en un Oracle
base de datos. Las tablas de la base de datos contienen todos los usuarios
datos accesibles.
Vistas:
Una vista es una presentación personalizada de los datos en
una o más tablas. También se puede pensar como una consulta almacenada.
Secuencia:
Una secuencia simplifica el programa de aplicación al
generando una lista serial de números únicos para una columna numérica
en la base de datos.
11
SISTEMA DE GESTIÓN DEL CURSO
12
SISTEMA DE GESTIÓN DE CURSOS
Desperdicio de papel:
Hay mucho desperdicio de papel porque
el personal utiliza muchos registros y libros para almacenar los datos de
cientos de estudiantes cada año.
Duplicación de datos:
Antes de ingresar cada registro, tienen que hacer
asegúrate de que el mismo registro no exista. Tienen que verificar el
lo mismo para cada registro al ingresar los datos en cada registro.
Datos dispersos:
Cuando todos los datos sobre un particular
se necesita estudiante, el empleado tiene que buscar todos los
registros dispersos que tardan mucho en recolectarse.
Seguridad de Datos:
Los datos almacenados en los registros y libros
no es seguro ya que cualquier persona no autorizada puede acceder a los datos en
en cualquier momento sin la voluntad y el permiso de la administración
personal.
Informes ineficientes:
El informe requerido por la dirección
no se puede obtener de inmediato y requiere un esfuerzo extenso
por el personal y los funcionarios para generar un informe simple, que es
a menudo propenso a errores.
13
SISTEMA DE GESTIÓN DE CURSOS
Viabilidad Técnica:
Ya sea que el trabajo para elSISproject pueda ser
hecho con el equipo actual, la tecnología de software existente
se requiere, ¿cuál es la probabilidad de que se desarrolle? Técnico
viabilidad en los puntos clave.
Software especificado
Hardware especificado
Disponibilidad de personal capacitado para operar el sistema
4.3.2. Viabilidad Económica:
Si hay suficientes beneficios en crear
el sistema para hacer que los costos sean aceptables o no y los costos de
no crear algo tan grande que el proyecto deba llevarse a cabo.
4.3.2.1. Viabilidad Operativa
Si el sistema se utilizará después
desarrollo e implementaciones si habrá
resistencia para los usuarios que socavarán lo posible
los beneficios de las aplicaciones La viabilidad operacional depende de la
puntos clave siguientes.
14
SISTEMA DE GESTIÓN DE CURSOS
4.4.1.3 ESPECIAL:-
Número de rollo
4.4.1.4 CURSO:-
C_id
4.4.1.5 CUOTAS:-
Número de matrícula
-
Número de matrícula
Días Presente.
4.4.1.7 EXAMEN
Número de registro
examen o no), Nombre del examen, C_id, Máximas calificaciones,
Marksec}.
15
SISTEMA DE GESTIÓN DE CURSOS
4.4.2.6. PAGO:-
Es un conjunto de relaciones de uno a muchos que asocia el conjunto de entidades
ESTUDIANTE y el conjunto de entidades DIAS.
dieciséis
SISTEMA DE GESTIÓN DE CURSOS
17
SISTEMA DE GESTIÓN DE CURSOS
18
SISTEMA DE GESTIÓN DE CURSOS
5.1 NORMALIZACIÓN
5.1.1
Antes de la normalización, la tabla STUDETAIL era la siguiente:-
5.1.1.1 DETALLE DE ESTU
NÚMERO DE ROL
NOMBRE
Fecha de nacimiento
REGDNO
SEXO
RELIGIÓN
CATEGORÍA
NACIÓN
MS
DOA
MTONGUE
TCNO
NOMBRE
OCUPACIÓN
QUEDANDO CON
DIRECCIÓN ACTUAL
PERMANENTE
DIRECCIÓN
CURSO TOMADO
1NF
19
SISTEMA DE GESTIÓN DE CURSOS
NÚMERO DE ROL
NOMBRE
Fecha de nacimiento
REGDNO
SEXO
RELIGIÓN
CATEGORÍA
NACIÓN
MS
DOA
MTONGUE
TCNO
NOMBRE
OCUPACIÓN
QUEDARSE CON
PRESENTE
DIRECCIÓN
PERMANENTE
DIRECCIÓN
OBLIGATORIO 1
OBLIGATORIO 2
OPCIONAL 1
OPCIONAL 2
OPCIONAL 3
CUARTA OPCIONAL
OBLIGATORIO 1
OBLIGATORIO 2
OBLIGATORIO 3
OBLIGATORIO 4
ELECTIVA PRINCIPAL
ELECTIVA MENOR
CURSO BÁSICO 1
CURSO BÁSICO 2
CURSO BÁSICO 3
CURSO BÁSICO 4
ESTADO
2NF
La relación STUDETAIL ya está en 2NF ya que está en 1NF.
y todos los atributos no clave dependen del atributo clave
NÚMERO DE ROL.
20
SISTEMA DE GESTIÓN DE CURSOS
3NF
En esta relación, cuando el registro de un estudiante de +2 es
ingresado, luego el Obligatorio 1, Obligatorio 2, Opcional 1,
Los campos Opcional 2, Opcional 3 y Cuarto Opcional están completados
y todos los demás campos permanecen vacíos. De manera similar para +3 algunos
otros campos están llenos y todos los demás campos permanecen en blanco.
Como resultado, se observa que la mayoría de los nombres de las columnas permanecen
en blanco para un registro específico.
Por lo tanto, la relación STUDETAIL se divide en el
siguiendo relaciones:-
(I) ESTUDIANTE
(II) ESTUDIANTE_SECUNDARIA_SUPERIOR
(III) ESTUDIANTE-CALIFICACIÓN
Por lo tanto, el STUDETAIL
la relación se divide en tres tablas diferentes por las cuales se
en 3NF y las relaciones son las siguientes:-
5.1.1.3(a) ESTUDIANTE-
NÚMERO DE ROL
NOMBRE
Fecha de nacimiento
REGDNO
SEXO
RELIGIÓN
CATEGORÍA
NACIÓN
MS
DOA
MTONGUE
TCNO
NOMBRE
OCUPACIÓN
QUEDÁNDOME CON
DIRECCIÓN ACTUAL
PERMANENTE
DIRECCIÓN
5.1.1.3(b) ESTUDIANTE-SECUNDARIA-ALTA-
21
SISTEMA DE GESTIÓN DE CURSOS
NÚMERO DE ROL
OBLIGATORIO 1
OBLIGATORIO 2
OPCIONAL 1
OPCIONAL 2
OPCIONAL 3
CUARTO
OPCIONAL
5.1.1.3(c) ESTUDIANTE-TÍTULO
NÚMERO DE ROL
ESTADO
HONORES
OBLIGATORIO 1
OBLIGATORIO 2
OBLIGATORIO 3
OBLIGATORIO 4
ELECTIVA PRINCIPAL
ELECTIVA MENOR
CURSO BÁSICO 1
CURSO BÁSICO 2
CURSO BÁSICO 3
-
Antes de la normalización, la tabla CURSO
era el siguiente:-
5.1.2.1. CURSO
C-ID
C_NAM
E
1NF
La relación CURSO está en 1NF ya que todos sus atributos son
elementos de datos atómicos.
2NF:
22
SISTEMA DE GESTIÓN DE CURSOS
5.1.2.2 CURSO:-
C-ID
C_NAM
E
-
Antes de la normalización la tabla
fue el siguiente:-
ASISTENCIA:-
NÚMERO DE ROL
AÑO
MES
NO. DE TRABAJANDO
DÍAS(AHORA)
1NF
NO. DE DÍAS PRESENTES (NODP)
El
la relación ASISTENCIA está en 1NF ya que todos los valores de sus atributos
son elementos de datos atómicos.
2NF:
La relación ya está en 2NF. Porque ya está en
1Nf y atributos no clave NÚMERO DE DÍAS PRESENTE (NODP),
NÚMERO DE DÍAS LABORABLES (NDL) y MES están completamente
dependiente funcional de los atributos clave ROLLNO y
AÑO.
3NF:
Ya está en 3NF. Porque ya está en 2NF y todo
atributos no clave MES, NÚMERO DE DÍAS PRESENTES (NODP)
son independientes entre sí. Por lo tanto, está en 3NF.
23
SISTEMA DE GESTIÓN DE CURSOS
NÚMERO DE ROL
AÑO
MES
NO. DE TRABAJANDO
DÍAS(NOWD)
NÚMERO DE DÍAS PRESENTES (NODP)
5.1.4 DUES
Antes de la normalización, la relación DUES es como
sigue:
5.1.4.1 CUOTAS:
ROLLN
O
AÑO
TARIFAS
MULTAS
1NF
La relación DUES está en 1NF. Como todos los valores de los atributos
son elementos de datos atómicos.
2NF
La relación ya está en 2NF. Porque ya está en 1NF.
y todos los atributos no clave, tarifas y multas son completamente funcionales
dependiente de ROLLNO.
3NF
La relación ya está en 3NF. Porque ya está en 2NF.
y todos los atributos no clave, tarifas y multas son independientes entre sí
otro.
Por lo tanto, después de
ROLLN
O
24
SISTEMA DE GESTIÓN DE CURSOS
AÑO
CARGOS
MULTAS
5.1.5.1 ESPECIAL:-
NÚMERO DE MATRÍCULA
NCC
NSS
DEPORTES
CULTURAL
1NF:
La relación está en 1NF. Ya que todos los valores de sus atributos son
elementos de datos atómicos.
2NF
Ya está en 2NF. Porque ya está en 1NF y todos sus
los atributos no clave NCC, NSS, DEPORTES, CULTURAL están completamente
dependiente de ROLLNO.
3NF
Ya está en 3NF. Como está en 2NF y todas las no clave
los atributos NCC, NSS, DEPORTES, CULTURAL son independientes de
el uno al otro.
-
Antes de la normalización, el
la tabla era la siguiente:-
5.1.6.1 ACADÉMICO
NÚMERO DE ROL
CLASE
25
SISTEMA DE GESTIÓN DE CURSOS
NOMBRE DE JUNTA/UNIVERSIDAD
APROBADO (NOBU)
NOMBRE DE ESCUELA/COLLEGE
APROBADO (NOSC)
ANUAL/SUPLEMENTARIO (ESTATUS)
MÁXIMO DE PUNTOS (MAXPOINTS)
MARKSECURED (MARKSEC)
DIVISIÓN
AÑO DE GRADUACIÓN (YOG)
1NF
Ya está en 1NF. Como todos los valores de los atributos son atómicos.
elementos de datos.
2NF:
Ya está en 2NF. Como está en 1NF y todas las no clave
los atributos son completamente dependientes funcionalmente del atributo clave
NÚMERO DE ROL.
3NF:
Ya está en 3NF. Como está en 2NF y todas las no clave
los atributos son independientes entre sí.
Por lo tanto, después de la normalización, la relación será como
sigue:-
5.1.6.2 ACADÉMICO
NÚMERO DE ROL
CLASE
NOMBRE DE JUNTA/UNIVERSIDAD
APROBADO (NOBU)
NOMBRE DE ESCUELA/COLLEGIO
APROBADO (NOSC)
ANUAL/SUPLEMENTARIA (ESTATUS)
MÁXIMA PUNTUACIÓN (MAXMARKS)
MARKSECURED (MARKSEC)
DIVISIÓN
AÑO DE EGRESO (YOP)
26
SISTEMA DE GESTIÓN DE CURSOS
5.1.7.1 EXAMEN:-
NÚMERO DE ROLL
AÑO
MES
C_ID
NOMBRE DEL EXAMEN (ENAME)
ESTADO DE EXAMEN
MARCA MÁXIMA (MAXMARKS)
MARCA SEGURO (MARKSEC)
1NF
Ya está en 1NF. Como todos los valores de los atributos son atómicos.
elementos de datos.
2NF:
Está en 1NF. Pero los atributos no clave MES,
NOMBRE DEL EXAMEN
(ESTATUS) son totalmente funcionales y dependen de atributos clave
ROLLNO y AÑO. Por otro lado, los atributos no clave
MES
(MARKSEC) dependen completamente de todos los atributos clave
ROLLNO, AÑO, C_ID.C_ID, MAXMARKS y MARKSEC son
elementos de datos multivaluados. Por lo tanto, al hacer dos relaciones la
la relación se puede hacer en 2NF.
Entonces, después de 2NF, la relación será la siguiente:-
(I) EXAMEN
DETALLE
(II) DETALLES DE CALIFICAIONES
NÚMERO DE ROL
AÑO
MES
NOMBRE DEL EXAMEN (ENAME)
EXAMEN ESTADO
(ESTATUS)
27
SISTEMA DE GESTIÓN DE CURSOS
NÚMERO DE ROLL
AÑO
MES
C_ID
MÁXIMAS NOTAS (MAXMARKS)
MARCA ASEGURADA (MARKSEC)
3NF
Ya está en 3NF. Como está en 2NF y todos los no clave
los atributos son independientes entre sí.
Por lo tanto, después de la normalización, la relación será como
sigue:-
NÚMERO DE ROL
AÑO
MES
NOMBRE DEL EXAMEN (ENAME)
ESTATUS DE EXAMEN
NÚMERO DE ROL
AÑO
MES
C_ID
MÁXIMAS PUNTUACIONES (MAXPUNTOS)
MARCA ASEGURADA (MARKSEC)
DICCIONARIO DE DATOS
ELEMENTO DE DATOS
NÚMERO DE ROL
NÚMERO 7 Identifica un único
estudiante.
28
SISTEMA DE GESTIÓN DE CURSOS
u etc.
TCNO VARCHAR2 10 Es el certificado de transferencia
número del estudiante. A
el estudiante es un estudiante activo
del colegio hasta él/ella
tomando TC.
NOMBRE CARACTER 30 Se muestra el nombre del
29
SISTEMA DE GESTIÓN DE CURSOS
30
SISTEMA DE GESTIÓN DE CURSOS
él/ella es quedándose
permanentemente mientras estudias
en la universidad.
CARÁCTER PERSTATE 20 Muestra lo permanente
R indique el nombre del estudiante
donde se está quedando
permanentemente mientras estudias
en la universidad.
PERPIN NÚMERO 6 Muestra lo permanente
código o número de PIN de la ciudad de
el estudiante donde él/ella
está quedándose permanentemente
mientras estudiaba en el
universidad
6.2 Pruebas
Todo software desarrollado debe ser probado por su eficiencia
y consistencia. Hay dos tipos de prueba. A saber:
Pruebas unitarias y
Pruebas integradas
6.2.1Pruebas unitarias
31
SISTEMA DE GESTIÓN DE CURSOS
6.3 IMPLEMENTACIÓN
Después de que toda la codificación y las pruebas hayan terminado por parte de los usuarios finales y
Altamente interactivo
Datos Protegidos
Entrada de Usuario Autorizado
Cambiar la propia contraseña
Privilegios de Administrador
Sistema de respaldo y recuperación de datos
Altamente flexible para múltiples consultas
Requisitos:
32
SISTEMA DE GESTIÓN DE CURSOS
Requisitos de hardware:
La máquina y los accesorios están usados.
Máquina – Pentium – III
Procesador - 733 MHz
Almacenamiento Principal - 69MB
El software utilizado es -
Sistema Operativo – Windows XP
Frontend – HTML y JSP
Back End – Oracle10g
6.3.2 Configuración de DSN:
Instalación:
Para instalar el proyecto del Sistema de Gestión de Cursos
ve a la carpetaPackage y ábrela. Habrá un archivo llamado
setup.exe solo haz doble clic en él para ejecutar el programa de instalación. El
el proyecto se instalará automáticamente.
33
SISTEMA DE GESTIÓN DE CURSOS
Entrada de datos
Modificación de datos
Generación de informes
Administrador
Él es la autoridad principal del proyecto. Él puede realizar los trabajos
de un usuario así como los siguientes trabajos:
Eliminar usuario
Eliminar datos
Crear Nuevo Usuario
Importar y Exportar Datos
Inicio de sesión de usuario
34
SISTEMA DE GESTIÓN DE CURSOS
pantalla principal con todos los privilegios. Entonces puede hacerlo con éxito
su propio trabajo y salir en el estilo que el usuario hace.
6.3.3.1 Manual Operativo:
El usuario después de entrar en la pantalla principal puede la
los siguientes trabajos de las siguientes maneras:
Entrada de Datos:
Para la entrada de datos, el usuario debe proporcionar el
número de matrícula del estudiante en cada formulario ya que es la clave primaria
para la identificación de un estudiante en particular. Si el usuario ingresa cualquier
tipo de datos peculiares o datos inválidos que el sistema produce un
mensaje de error y guía al usuario para la entrada de datos correcta.
Generación de informes:
Aquí, primero el usuario tiene que hacer clic en un
cuadro combinado sobre el tipo de informe que desea y luego haga clic en el
botón de comando de informe. Luego obtiene un diálogo común
cuadro para hacer que el usuario seleccione el tipo de archivo para la salida donde
la salida puede ser almacenada.
Modificación de Datos:
Aquí el usuario puede modificar los datos si
supongamos que él piensa que ha ingresado algún dato incorrecto.
6.4 MANTENIMIENTO:
El aspecto principal del mantenimiento es proporcionar
Copia de seguridad y recuperación de bases de datos, Importar y Exportar.
35
SISTEMA DE GESTIÓN DE CURSOS
36
SISTEMA DE GESTIÓN DE CURSOS
37
SISTEMA DE GESTIÓN DE CURSOS
Interfaz de usuario
Lógica de aplicación
XML
documentos
38
SISTEMA DE GESTIÓN DE CURSOS
Una página JSP es un documento de texto que contiene dos tipos de texto: Estático
datos, que pueden expresarse en cualquier formato basado en texto (como
HTML, SVG, WML y XML) y elementos JSP, que construyen
contenido dinámico.
Ventaja de JSP
ASP es una tecnología similar de MS. Las ventajas de JSP son dobles.
Primero, la parte dinámica está escrita en JAVA, no en VB ni en otros específicos de MS.
idioma, por lo que es más poderoso y fácil de usar. En segundo lugar, es
portable a otros sistemas operativos y servidores web que no son de Microsoft. Las principales características de
La tecnología JSP también contiene una API que es utilizada por los desarrolladores de Web
contenedores.
39
SISTEMA DE GESTIÓN DE CURSOS
Un JSP es un archivo de texto simple que consiste en contenido HTML junto con JAVA
código conocido como elementos JSP. Cuando un cliente solicita una página JSP de la
servidor web y no se ha ejecutado antes, la página se pasa primero a
el motor JSP que compila la página a un servlet, lo ejecuta y
devuelve el contenido resultante al cliente. A partir de ahí, la Web
el motor de servlets del servidor ejecutará la página compilada. La primera vez que tú
al acceder a una página JSP, es posible que notes que tarda un corto tiempo en
responde. Este es el tiempo necesario para que el servidor cree y compile el
servlet en segundo plano. Las solicitudes posteriores serían más rápidas porque el
el servidor puede reutilizar el servlet. La única excepción es cuando los archivos .jsp
cambios en los cuales el servidor nota y recompila uno nuevo
servlet de fondo. Si hay incluso un error en la compilación, puedes
espera que el servidor informe el problema de alguna manera, usualmente en la página
devuelto al cliente.
Una página JSP atiende solicitudes como un servlet. Así que el ciclo de vida y
muchas de las capacidades de las páginas JSP (en particular el dinámico
los aspectos) están determinados por la tecnología de servlets JAVA. Notarás
que muchas secciones de este capítulo se refieren a clases y métodos como
sigue:
40
SISTEMA DE GESTIÓN DE CURSOS
Para la validación del lado del cliente, estamos utilizando JavaScript y HTML en nuestro
programa.
D.1 JavaScript
VBScript.
41
SISTEMA DE GESTIÓN DE CURSOS
42
SISTEMA DE GESTIÓN DE CURSOS
Conclusión:
Este sistema está desarrollado para cumplir con los requisitos de
los usuarios finales que van a usar este sistema. Este sistema puede
puede ser utilizado por cualquier universidad si todas siguen el mismo procedimiento.
Algunas de las características más destacadas de este sistema son:
cuarenta y tres
SISTEMA DE GESTIÓN DE CURSOS
Capturas de pantalla :
Creación de cursos
44
SISTEMA DE GESTIÓN DE CURSOS
Creación de Estudiantes
Crear Instructor
45
SISTEMA DE GESTIÓN DE CURSOS
Menú Estudiantil
Ver Cursos
Subir tarea
46
SISTEMA DE GESTIÓN DE CURSOS
Subir tarea
47
SISTEMA DE GESTIÓN DE CURSOS
CODIFICACIÓN
índice.html
Página de inicio.html
<!DOCTYPE html>
<html>
<head>
Página Principal
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
</cabeza>
<cuerpo>
<h3>¡BlackBoard Super Lite!</h3>
<form>
<table border="1" width="100%" cellpadding="3">
cellspacing="3">
<tr>
<td><a href="studentServlet">Estudiante</a></td>
<td><a
href="InstructorLoginPage.jsp">Instructor</a></td>
<td><a
href="PáginaDeInicioDeSesiónDelAdministrador.xhtml">Administrador</a></td>
</tr>
</table>
</form>
</cuerpo>
</html>
PáginaDeInicioDeSesiónDelInstructor.jsp
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Tipo de contenido" content="text/html;
charset=UTF-8"
48
SISTEMA DE GESTIÓN DE CURSOS
</form>
</cuerpo>
</html>
InstructorValidación.jsp
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Tipo de Contenido" content="text/html;
charset=UTF-8">
Página de Validación del Instructor
</cabeza>
<cuerpo>
si (userName.equals("") || password.equals("")) {
Se requiere nombre de usuario y contraseña
} else {
instructor.establecerInfoDeInicioDeSesión(nombreDeUsuario, contraseña);
si (instructor.estáEnLaBaseDeDatos()) {
49
SISTEMA DE GESTIÓN DE CURSOS
<table border="0"
estilo="color de fondo:" ancho="100%" cellpadding="3"
cellspacing="3">
<tr>
<td>Bienvenido
instructor.getFirstName() + " " + instructor.getLastName() +
</td>
</tr>
<tr>
<td><a
href="InstructorCoursePage.jsp">Asignar Hw</a></td>
</tr>
<tr>
<td><a
href="InstructorGradePage.jsp">Asignar Calificación</a></td>
</tr>
</table>
} else {
Por favor, contacte a su instructor para
asegúrate de estar en el sistema
<p><form method="get" action=
InstructorLoginPage.jsp>
<p><input type="submit" value="Ir
Atrás" >
</form>
}
}
%>
</cuerpo>
</html>
InstructorAsignarHW.jsp
50
SISTEMA DE GESTIÓN DE CURSOS
Creando archivo hw
instructor.asignarTarea(curso, tareaAsignada);
<br/>
<a href="InstructorCoursePage.jsp">Ir a
Menú Principal del Instructor</a>
%>
</cuerpo>
</html>
InstructorChooseHW.jsp
<!DOCTYPE html>
<html>
<cabeza>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
Página JSP
</cabeza>
<cuerpo>
<h1>Elige la tarea para calificar</h1>
<% String estudiante =
request.getParameter("estudianteInstruyendo");
session.setAttribute("estudiante", estudiante);
(String) session.getAttribute("course");
InstructorCoursePage.jsp
<!DOCTYPE html>
<html>
<cabeza>
<meta http-equiv="Tipo de Contenido" content="texto/html;
charset=UTF-8">
51
SISTEMA DE GESTIÓN DE CURSOS
Cursos de Instructor
</head>
<cuerpo>
<H3><u>Menú de tareas para instructores</u></H3>
<%
ArrayList<String> cursos = instructor.getCursos();
<form method="post" action
= "InstructorAssignHW.jsp">
</br>
Por favor, introduzca su texto:
</br>
<textarea name="tareaDeHogar" rows="5"></textarea>
</br>
<%
<input type="submit" value="Elegir Curso"
>");
%>
</cuerpo>
</html>
InstructorGradePage.jsp
<!DOCTYPE html>
<html>
<cabeza>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
Elegir Curso
</cabeza>
<cuerpo>
<h3>Elija el curso para asignar calificaciones</h3>
<%
ArrayList<String> cursos = instructor.getCursos();
<form method="post" action
= "InstructorAsignarNotaPágina.jsp">
52
SISTEMA DE GESTIÓN DE CURSOS
InstructorAsignarCalificacionPagina.jsp
<!DOCTYPE html>
<html>
<cabeza>
<meta http-equiv="Tipo de Contenido" content="text/html;
charset=UTF-8">
Seleccionar Estudiante
</cabeza>
<cuerpo>
<h1>¡Elige un estudiante para calificar!</h1>
<%
String curso = request.getParameter("cursoInstructIn");
session.setAttribute("curso", curso);
ArrayList<String> estudiantes =
instructor.obtenerEstudiantes(curso);
<form method="post" action
= "InstructorChooseHw.jsp">
InstructorConfirmGrade.jsp
<!DOCTYPE html>
<html>
<cabeza>
53
SISTEMA DE GESTIÓN DE CURSOS
InstructorSubmitGrade.jsp
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8
Página JSP
</cabeza>
<cuerpo>
<h1>Confirmar</h1>
<%
String estudiante = (String)
session.getAttribute("estudiante");
(String) session.getAttribute("course");
String hwNumber = request.getParameter("hwChoosen");
String grado = request.getParameter("hwgrade");
%>
</cuerpo>
</html>
PáginaDeInicioDeSesiónDelAdministrador.xhtml
54
SISTEMA DE GESTIÓN DE CURSOS
<h:form>
<h:panelGrid columnas="3">
Nombre de usuario:
<h:inputText id="nombreDeUsuario"
#{account.userName}
</h:inputText>
<h:message for="nameInputText" style="color:red"/>
Contraseña:
<h:inputText id="contraseña"
#{cuenta.contraseña}
</h:inputText>
<h:message for="nameInputText" style="color:red"/>
</h:panelGrid>
<h:commandButton value="Enviar"
#{cuenta.validarAdministrador}
</h:form>
</h:body>
</html>
PáginaAdministradorNoEncontrada.xhtml
AdministradorNoValidarPagina.xhtml
55
SISTEMA DE GESTIÓN DE CURSOS
<br/>
<h:commandLink id="instructorAccountLink"
action="InstructorCreateAccountPage"
Crear cuenta de instructor
</h:commandLink>
<br/>
</h:body>
</html>
PáginaCursoCreado.xhtml
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
<html xmlns="http://www.w3.org/1999/xhtml">
xmlns:h="http://java.sun.com/jsf/html"
<h:head>
<title>Título de Facelet</title>
</h:head>
<h:body>
Curso insertado exitosamente en el sistema.
<h:form>
56
SISTEMA DE GESTIÓN DE CURSOS
<br/>
<h:commandLink id="studentAccountLink"
PaginaCrearCuentaEstudiante
Crear cuenta de estudiante
</h:commandLink>
<br/>
<h:commandLink id="instructorAccountLink"
PáginaCrearCuentaInstructor
Crear Cuenta de Instructor
</h:commandLink>
<br/>
</h:form>
</h:body>
</html>
CourseCreatePage.xhtml
ID del curso:
h:inputText
#{curso.id}
<br/>
Seleccionar Instructores:
<h:selectManyMenu
instructors_selectManyMenu
#{curso.seleccionarInstructores}
<f:selectItems
#{course.instructorslist}
57
SISTEMA DE GESTIÓN DE CURSOS
</h:selectManyMenu>
<br/>
Seleccione Estudiantes:
<h:selectManyMenu
seleccionarEstudiantesMenu
#{course.selectStudents}
<f:selectItems
#{course.studentsList}
</h:selectManyMenu>
<br/>
Enviar
#{course.courseCreationProcess}
</h:form>
</h:body>
</html>
CourseCreationerrorPage.xhtml
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
<h:head>
ERROR
</h:head>
<h:body>
Error al crear el curso
<h:form
<br/>
<h:commandLink id="back" action="CourseCreatePage">
Regresar
</h:commandLink>
</h:form>
</h:body>
</html>
InstructorCreateAccountPage.xhtml
58
SISTEMA DE GESTIÓN DE CURSOS
#{tempInsructorAccount.userName}
<f:validateLength minimum="1" maximum="10" />
</h:inputText>
<h:message for="username" style="color:red"/>
#{tempInsructorAccount.confirmUserName}
<f:validateLength minimum="1" maximum="10" />
Contraseña:
<h:inputText id="contraseña" requerido="true"
Se requiere contraseña
la contraseña debe tener 1
a 10 caracteres
#{tempInsructorAccount.password}
<f:validarLongitud mínimo="1" máximo="10" />
</h:inputText>
<h:message for="password" style="color:red"/>
Confirmar contraseña:
<h:inputText id="confirmpassword" requerido="true"
Se requiere una contraseña
la contraseña debe tener 1
a 10 caracteres
#{tempInsructorAccount.confirmarContraseña}
<f:validarLongitud minimo="1" maximo="10" />
</h:inputText>
<h:message for="confirmpassword" style="color:red"/>
Nombre:
<h:inputText id="firstname" required="true"
Se requiere el nombre
El nombre debe tener 1
hasta 20 caracteres
#{tempInsructorAccount.firstName}
<f:validateLength minimum="1" maximum="20" />
</h:inputText>
<h:message for="firstname" style="color:red"/>
<h:outputLabel value="Apellido:"/>
59
SISTEMA DE GESTIÓN DE CURSOS
<h:outputLabel value="ID:"/>
<h:inputText id="idcode" required="true"
Se requiere ID
El ID debe tener 4 caracteres
#{tempInsructorAccount.id}
<f:validateLength minimum="4" maximum="4" />
</h:inputText>
<h:message for="idcode" style="color:red"/>
</h:panelGrid>
<h:commandButton value="Enviar"
#{tempInsructorAccount.procesoDeRegistro()}
</h:form>
</h:body>
</html>
InstructorCreatedPage.xhtml
60
SISTEMA DE GESTIÓN DE CURSOS
PáginaDeErrorDeCreaciónDeInstructor.xhtml
PáginaCrearCuentaEstudiante.xhtml
61
SISTEMA DE GESTIÓN DE CURSOS
</h:inputText>
<h:message for="confirmusername" style="color:red"/>
Contraseña:
<h:inputText id="password" required="true"
Se requiere una contraseña
la contraseña debe tener 1
a 10 caracteres
#{tempStudentAccount.password}
<f:validarLongitud minimo="1" maximo="10" />
</h:inputText>
<h:message for="password" style="color:red"/>
Confirmar contraseña:
<h:inputText id="confirmpassword" required="true"
Se requiere contraseña
la contraseña debe tener 1
a 10 caracteres
#{tempStudentAccount.confirmPassword}
<f:validarLongitud minimo="1" maximo="10" />
</h:inputText>
<h:message for="confirmpassword" style="color:red"/>
Nombre:
<h:inputText id="firstname" required="true"
Se requiere el nombre
El nombre debe tener 1
a 20 caracteres
#{tempStudentAccount.firstName}
<f:validateLength minimum="1" maximum="20" />
</h:inputText>
<h:message for="firstname" style="color:red"/>
Apellido:
<h:inputText id="lastname" required="true"
El apellido es obligatorio
El apellido debe tener 1
a 20 caracteres
#{tempStudentAccount.apellido}
f:validateLength mínimo="1" máximo="20"
</h:inputText>
<h:message for="lastname" style="color:red"/>
<h:outputLabel value="ID:"/>
<h:inputText id="idcode" required="true"
Se requiere ID
El ID debe tener 4 caracteres
#{tempStudentAccount.id}
<f:validateLength minimum="4" maximum="4" />
</h:inputText>
<h:message for="idcode" style="color:red"/>
62
SISTEMA DE GESTIÓN DE CURSOS
</h:panelGrid>
<h:commandButton value="Enviar"
#{tempStudentAccount.registrationProcess()}
</h:form>
</h:body>
</html>
PáginaEstudianteCreada.xhtml
63
SISTEMA DE GESTIÓN DE CURSOS
BIBLIOGRAFÍA
[1] http://www.merucabs.com
[2] http://www.irctc.co.in
[3] Bayross I., “SQL, PL/SQL: El Lenguaje de Programación de Oracle”, 3rd
Ed., BPB Publicaciones: Nueva Delhi, 2002.
[4] Navathe, Gupta, “Fundamentos de Sistemas de Bases de Datos”, 4thEd.,
Pearson Education Pvt. Ltd.: Nueva Delhi, 2007.
[5] Xavier C., “Tecnología y Diseño Web”, 3rdEd., Nueva Era
International Pvt. Ltd. : Nueva Delhi, 2005;
[6] Shiran Y y T., “Aprender Programación Avanzada en JavaScript”, 2ndEd.
BPB Publicaciones: Nueva Delhi, 2000.
64
SISTEMA DE GESTIÓN DE CURSOS
CONCLUSIÓN
65