Professional Documents
Culture Documents
PROYECTO INTEGRADOR II
Realizado por:
Dirigido por:
Periodo:
INTRODUCCIÓN
Los servicios Web, como la mayoría de servicios de Internet, están basados en el modelo
cliente-servidor. En este modelo existe un sistema servidor, denominado servidor Web,
que almacena páginas Web y que atiende las peticiones de los clientes. El cliente Web,
más conocido como navegador o “Web browser” es una aplicación que permite conectarse
a un servidor Web y descargar y visualizar las páginas almacenadas en éste.
En este documento se reúnen los requisitos pertinentes que se tuvieron en cuenta, para la
construcción del módulo de asignación de horarios docentes en la Facultad de Ingeniería
de Software de la Escuela Superior Politécnica de Chimborazo, el cual tiene como objeto
académico mejorar y fortalecer los procesos que se ejecutan en la Carrera de Ingeniería
entre ellos está la asignación y consulta de horarios Docentes la inscripción de materias,
consulta de notas, entre otros.
1. ANÁLISIS
1.1 Problema
En la actualidad la asignación de horarios de docentes se realiza de forma
manual (Mediante la aplicación de escritorio Excel), por tal motivo a pesar de
tener ya práctica en el asunto por el hecho de hacerlo de esta manera hace un
buen tiempo, aún se tienen limitaciones en el proceso, pues, para establecer una
carga laboral a un docente en específico se deben tomar en cuenta ciertas
consideraciones que no se pueden resolver de manera oportuna y muchas veces
se termina en conflictos constantes antes de llegar a un acuerdo entre las partes,
además de pérdida innecesaria de tiempo en la realización de la documentación
pertinente y en convocatorias a reuniones extraordinarias; asunto que empeora
al requerir de un proceso de reasignación. En fin, poca flexibilidad en un sistema
que no resulta conveniente a la medida en que aumentan las demandas de
profesores en asignaturas específicas.
¿Cómo implantar el módulo de asignación de horarios para los docentes en la
Facultad de Ingeniería de Software en la Escuela Superior Politécnica de
Chimborazo matriz Riobamba?
1.2 Justificación
Este proyecto encuentra su justificación en la necesidad que tiene la carrera de
Ingeniería de Software en la Escuela Superior Politécnica de Chimborazo de un
sistema que permita facilitar y agilizar sus procesos de asignación de carga
laboral a sus docentes.
La comunidad académica se verá beneficiada al disponer de un sistema
orientado a la Web que permita ahorrar tiempo y dinero en la realización de sus
procesos de asignación de carga laboral, de manera que la carrera de Ingeniería
de Software en la Escuela Superior Politécnica de Chimborazo estará a la
vanguardia de la mejores del país que ya cuentan con servicios web para la
atención de los requerimientos de su personal académico. El sistema será la base
para futuros desarrollos de software aplicados en procesos de asignación de
horarios a docentes de la Facultad de Ingeniería de Software, o de cualquiera
que la considere para el desarrollo de un proyecto similar.
En documento se describirá la aplicación, el diseño del proyecto ya que servirá
de guía a los estudiantes y docentes interesados.
Recursos Humanos
Director Ing. Lorena Aguirre
Programador María José Quinatoa, Alexander Tubón, Darío Janeta
Recursos Económico
Cantidad Descripción Valor Unitario Valor Total
3 Computadoras 1.200.00 3.600.00
1 Impresora 120.22 120.00
40 Internet 00.35 14.00
3 Flash Memory 10.00 20.00
75 Almuerzos 1.50 112.50
100 Transporte 1.25 125.00
1 Modem 75.00 75.00
2 Resma de Hojas 6.00 12.00
3 Cds 0.85 2.55
Total 4,081,05
Recursos Técnicos
Hardware Software
Computadoras Intel Graficadores
Core i5
Impresora Epson L210 SQL Server 2014
Pendrive Lenguaje HTML
Modem Lenguaje PHP
Flujo alternativo
Postcondición Dar de baja de la base de datos/Pagina
Principal
Nombre del caso de uso Ver un video que permite informar acerca de
nosotros
Actor Visitante
Pre-condición NA
Flujo normal 1. Dar clic en el enlace del video.
Flujo alternativo 1. En caso de reproducirse el video se
enviara un mensaje de error al
administrador.
Post-condición 1. Visualizar el video
#IdCurso: 3
#CodAsignatura: FF1S001
-Hora_inicio: 09:00
-Hora_fin: 11:00
CL_HORARIO
#IdHorario: 1
-Periodo: Agosto 2015- Marzo2016
-IdCurso: 3
-CodAsignatura: FF1S001: String
+CodDocente: 1206
*
*
1
1
CL_ASIGNATURA_CURSO
CL_DOCENTE
#IdCurso: 3
#CodAsignatura: FF1S001 -Usuario: Alex95121
-Hora_inicio: 09:00 +Contraseña: centos2000new
-Hora_fin: 11:00 -Nivel Académico: 4
-Perfil Academico: Docente en cátedra Álgebra Superior - Escuela Ing. Mecánica
#CodDocente: 1206
CL_DOCENTE:Obj_docente
-Usuario: Alex95121
-Contraseña: centos2000new
-Nivel Académico: 4
+Perfil Academico: Docente en cátedra Álgebra Superior - Escuela Ing. Mecánica
#CodDocente: 1206
CL_PERSONA:Obj_persona
#CI: 0605132406
-Nombres: Iván Alexander
-Apellidos: Ramirez Córdova
-Correo: alex95121@hotmail
Actualizar Asignatura
Actualizar Datos de Curso
Crear Horario
Eliminar Asignatura
Eliminar Curso
Eliminar Docente
Eliminar Horario
Ingresar Datos de Periodo
Listar Datos de Periodo
Eliminar Periodo
Guardar Horario Modificar
Modificar Horario
1.13 Diagramas de Comunicación
Crear Horario
Actualizar Docente
Autentificarse
Consultar Asignatura
Consultar Docente
Consultar Horario
Primer Ingreso
Ingresar Asignatura
Ingresar Docente
Modificar Asignatura
Modificar Curso
Modificar Docente
Modificar Asignatura
Mostrar Docente
Mostrar Horario
Eliminar Asignatura
Modificar Horario
1.14 Diagrama de Estado
Autentificarse
Registro de Docentes
Autentificarse
1.16 Diagrama de paquetes
log on (
name='DB_WORKLOAD_LOG',
filename='C:\EjerciciosBD\Proyecto\DB_WORKLOAD.LDF',
size=4mb,
maxsize=200mb,
filegrowth=10%
)
go
--creacion de la DOCENTE
create table DOCENTE(
Cod_Docente int not null primary key,
CI_Persona char (10) not null ,
Contrasenia varchar (25) not null,
Nivel_Academico varchar(30) not null
)
go
--creacion de la tabla Administrador
create table ADMINISTRADOR (
CI_Persona char (10) not null primary key,
Contrasenia varchar (20) not null
)
go
--creacion de la TITULO
create table TITULO (
Id_Titulo int not null primary key,
Descripcion_Titulo varchar (60) not null
)
go
--creacion de la ESCUELA
create table ESCUELA (
Id_Escuela int not null primary key,
Descripcion_Escuela varchar (70) not null
)
go
--creacion de la TIPO_ASIGNATURA
create table TIPO_ASIGNATURA (
Id_TipoAsignatura int not null primary key,
Descripcion_TipoAsignatura varchar (25) not null
)
go
--creacion de la tabla Asignatura
create table ASIGNATURA (
Cod_Asignatura char (10) not null primary key,
Nombre_Asignatura varchar(50) not null,
Numero_Horas_Teoricas int not null,
Numero_Horas_Practicas int not null,
Numero_Creditos int not null,
Cod_AsignaturaPreRequisitos char (10) not null,
Cod_AsignaturaCoRequisitos char (10) not null,
Id_TipoAsignatura int not null,
foreign key (Id_TipoAsignatura ) references TIPO_ASIGNATURA (Id_TipoAsignatura)
)
go
--creacion de la PERIODO
create table PERIODO(
Id_Periodo int not null primary key,
Descripcion_Periodo varchar (30) not null
)
go
--creacion de la CURSO
create table CURSO (
Nivel int not null,
Paralelo char(1) not null ,
Numero_Estudiantes int not null,
primary key (Nivel, Paralelo)
)
go
--creacion de la HORA
create table HORA (
Id_Hora int not null primary key,
Descripcion_Hora varchar (25) not null
)
go
--Creacion de la tabla DOCENTE_HORA
create table DOCENTE_HORA(
Cod_Docente int not null,
Id_Hora int not null,
foreign key (Cod_Docente) references DOCENTE (Cod_Docente),
foreign key (Id_Hora) references HORA (Id_Hora),
primary key (Cod_Docente, Id_Hora)
)
go
-- ************Creacion de la tabla DOCENTE_TITULO *****************
create table DOCENTE_TITULO(
Cod_Docente int not null,
Id_Titulo int not null,
foreign key (Cod_Docente) references DOCENTE (Cod_Docente),
foreign key (Id_Titulo) references TITULO (Id_Titulo),
primary key (Cod_Docente, Id_Titulo)
)
go
-- Creacion de la tabla DOCENTE_ESCUELA
create table DOCENTE_ESCUELA(
Cod_Docente int not null,
Id_Escuela int not null,
foreign key (Cod_Docente) references DOCENTE (Cod_Docente),
foreign key (Id_Escuela) references ESCUELA (Id_Escuela),
primary key (Cod_Docente, Id_Escuela)
)
go
-- Creacion de la tabla DOCENTE_ASIGNATURA
create table DOCENTE_ASIGNATURA(
Cod_Docente int not null,
Cod_Asignatura char (10) not null,
/*foreign key (Cod_Docente) references DOCENTE (Cod_Docente),
foreign key (Cod_Asignatura) references ASIGNATURA (Cod_Asignatura),
*/primary key (Cod_Docente, Cod_Asignatura)
)
go
--creacion de la HORARIO
create table HORARIO (
Cod_Asignatura char (10) not null,
Nivel int not null,
Paralelo char(1) not null,
Id_Hora int not null,
Id_Periodo int not null,
Dia varchar (15) not null,
/* foreign key (Cod_Asignatura) references ASIGNATURA (Cod_Asignatura),
foreign key (Nivel, Paralelo) references CURSO (Nivel, Paralelo),
foreign key (Id_Hora) references HORA (Id_Hora),
foreign key (Id_Periodo) references PERIODO (Id_Periodo),
*/primary key (Cod_Asignatura, Nivel, Paralelo, Id_Hora,Id_Periodo)
)
go
--****************** CLAVES FORANEAS ***************
-- TABLA HORARIO
-- Relacion entre la tabla HORARIO_ASIGNATURA
alter table HORARIO
add constraint fk_HORARIO_ASIGNATURA
foreign key (Cod_Asignatura) references ASIGNATURA (Cod_Asignatura)
go
-- Relacion entre la tabla HORARIO_CURSO
alter table HORARIO
add constraint fk_HORARIO_CURSO
foreign key (Nivel, Paralelo) references CURSO (Nivel,Paralelo)
go
-- Proc Almacenado del sistema que muestra donde se hace referencia a la tabla
sp_fkeys PERSONA
sp_fkeys ASIGNATURA
sp_fkeys DOCENTE
sp_fkeys HORARIO
--Procedimiento almacenado que muestra las asignaturas que se impartan a una misma
hora específica con su información más básica.
--Paso 1. Verificar si existe el procedimiento
if OBJECT_ID('asignatura_hora') is not null
begin
drop procedure asignatura_hora
end
go
-- Paso 2. Implementamos el Proced Almacenado
create proc asignatura_hora
@hora_ini int -- parametro de entrada
as
select asi.Cod_Asignatura,
asi.Nombre_Asignatura,h.Descripcion_Hora,p.Apellidos_Persona as [Ap. Docente],
p.Nombres_Persona as [Nom. Docente]
from HORA h inner join HORARIO ho
on h.Id_Hora=ho.Id_Hora inner join ASIGNATURA asi
on ho.Cod_Asignatura=asi.Cod_Asignatura inner join
DOCENTE_ASIGNATURA da
on asi.Cod_Asignatura=da.Cod_Asignatura inner join DOCENTE do
on da.Cod_Docente=do.Cod_Docente inner join PERSONA p
on do.CI_Persona=p.CI_Persona
--Funcion que permite listar el código de todos los docentes que trabajen de 9:00 a
11:00 en otra carrera
--Paso 1. Verificar si existe la funcion
if OBJECT_ID('listar_doc') is not null
begin
drop function listar_doc
end
go
-- Paso 2. Implementamos la funcion
create function listar_doc(@hora int)
returns table
as
return (select h.Cod_Docente from DOCENTE_HORA h
where h.Id_Hora=@hora)
--Funcion que permite listar todas las asignaturas que tengan más de n horas
teóricas
--Paso 1. Verificar si existe la funcion
if OBJECT_ID('listar_asi') is not null
begin
drop function listar_asi
end
go
-- Paso 2. Implementamos la funcion
create function listar_asi(@num int)
returns table
as
return (select * from ASIGNATURA asig
where asig.Numero_Horas_Teoricas>@num)
--Probar el trigger
update DOCENTE
set Contrasenia='wiledu2018'
where Cod_Docente=5
--Probar el trigger
--Vistas
--1. verificar si existe
if object_id('v_listadocente') is not null
drop view v_listadocente;
--2.
create view v_Horarios
as
select asi.Cod_Asignatura, ho.Nivel, ho.Paralelo, ho.Dia
from HORARIO ho inner join ASIGNATURA asi on ho.Cod_Asignatura =
asi.Cod_Asignatura
go
--2.
create view v_TDocente
as
select dt.Id_Titulo, ti.Descripcion_Titulo, do.Cod_Docente,
pe.Apellidos_Persona
from PERSONA pe inner join DOCENTE do on pe.CI_Persona = do.CI_Persona
inner join DOCENTE_TITULO dt on do.Cod_Docente = dt.Cod_Docente
inner join TITULO ti on dt.Id_Titulo =ti.Id_Titulo
go
Recomendaciones
o Obtener más información acerca de las metodologías de software que existen para
implementar en el proyecto, ya que se lo realizo de manera empírica.
o Tener cuidado al aplicar los requerimientos ya que son parte muy importante de nuestro
sistema.
ANEXOS
Anexo 1
Entrevista
4. ¿Cómo califica la calidad de atención en los servicios en la asignación de horarios docentes que
actualmente presta la Facultad de Ingeniería de Software?
Muy buena
Buena
Regular
Mala
_______________________________________________________________
_______________________________________________________________.
5. ¿Cree usted que es necesario una aplicación que facilite la asignación de horarios Docentes en
la Facultad de Ingeniería de software, de la Escuela Superior Politécnica de Chimborazo?
Sí
No
_______________________________________________________________
_______________________________________________________________.
6. ¿Usted con qué frecuencia utilizaría la aplicación para la asignación de horarios de los docentes
de la Escuela Superior Politécnica de Chimborazo sede Riobamba?
Muy frecuentemente
Frecuentemente
Poco frecuente
Nada
_______________________________________________________________
_______________________________________________________________.
7. ¿Usted con qué frecuencia cree que los docentes necesiten visualizar sus horarios en el portal
web?
Muy frecuentemente
Frecuentemente
Poco frecuente
Nada
_______________________________________________________________
_______________________________________________________________.
Anexo 2
Alexander Tubón
18/11/2017
María José Quinatoa
Darío Janeta
CONTENIDO ..................................................................................................................................... 4
1 INTRODUCCIÓN ............................................................................................................................ 6
1.5 Referencias..................................................................................................................................... 7
1.6 Resumen......................................................................................................................................... 7
3 REQUISITOS ESPECÍFICOS.......................................................................................................... 9
1.2 Alcance
El alcance de este proyecto es implantar el módulo de asignación de horarios
docentes en el portal de servicios de la Facultad de Ingeniería de Software en la
Escuela Superior Politécnica de Chimborazo.
Nombr e Descripción
1.5 Referencias
2 Descripción general
2.4 Restricciones
Lenguajes y tecnologías en uso: HTML, JAVA.
Los servidores deben ser capaces de atender consultas concurrentemente.
El sistema se diseñará según un modelo cliente/servidor.
3 Requisitos específicos
3.3.3 Fiabilidad
3.3.4 Disponibilidad
3.3.5 Mantenibilidad
3.3.6 Portabilidad