Sei sulla pagina 1di 11

PRUEBA DE ENSAYO BASE DE DATOS

El caso de estudio University Accommodation Office.


17.9.- Basndose en el modelo lgico de los datos desarrollado en el
Ejercicio 16.10, cree un diseo fsico la base de datos para el caso de
estudio University Accommodation Office (descrito en el Apndice B1)
basndose en el SGBD del que disponga.
Caso de estudio University Accommodation Office
Estudiantes
Los datos almacenados sobre cada estudiante a tiempo completo
incluyen: el nmero de matrcula, el nombre y apellido, la direccin
personal (calle, ciudad, cdigo postal), la fecha de nacimiento, el sexo, la
categora de estudiante (por ejemplo, estudiante de primer ao,
estudiante de postgrado), la nacionalidad, una indicacin de si es o no
fumador, las necesidades especiales que pueda tener el estudiante, los
comentarios adicionales, el estado actual (alojado/en espera) y el curso
que est estudiando.
La informacin almacenada sobre los estudiantes se refiere a aquellos
que ya estn alquilando una habitacin y a aquellos que estn en la lista
de espera. Los estudiantes pueden alquilar una habitacin en una residencia universitaria o en un piso de Estudiantes.
Cuando un estudiante ingresa en la Universidad, se le asigna a un
empleado, que acta como consejero curricular. El consejero curricular
es responsable de supervisar si el estudiante se encuentra
adecuadamente atendido y de controlar tambin su progreso acadmico
mientras permanece en la Universidad. Los datos que se almacenan
sobre el consejero (Advisor) de un estudiante incluyen el nombre
completo, su categora, el nombre del departamento, el nmero de
telfono interno y su nmero de habitacin.
Residencias de estudiantes.
Cada residencia de estudiantes tiene un nombre, una direccin, un
nmero de telfono y un director que supervisa el funcionamiento de la
residencia. Las residencias slo proporcionan habitaciones individuales,
que tienen un nmero de habitacin, un nmero de identificacin y un
importe de alquiler mensual.
El nmero de identificacin de la habitacin identifica unvocamente a
cada habitacin entre todas las residencias controladas por el
departamento de alojamientos, y se utiliza a la hora de alquilar una
habitacin a un estudiante.
Pisos de estudiantes.
FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

El Departamento de alojamientos tambin ofrece pisos de estudiantes.


Estos pisos estn completamente amueblados y proporcionan
habitaciones individuales para grupos de tres, cuatro o cinco
estudiantes. La informacin que se almacena sobre los pisos de
estudiantes incluye el nmero de apartamento, la direccin y el nmero
de habitaciones individuales disponibles en cada apartamento. El
nmero de apartamento identifica unvocamente cada piso.
Cada habitacin de un apartamento tiene un importe mensual de
alquiler asociado, un nmero de habitacin y un nmero de
identificacin que es unvoco para todas las habitaciones disponibles en
todos los pisos de estudiante; este nmero de identificacin se utiliza a
la hora de alquilar una habitacin a un estudiante.
Contratos.
Un estudiante puede alquilar una habitacin en una residencia o en un
piso de estudiantes durante varios periodos de tiempo. Los nuevos
contratos de alquiler se negocian al principio de cada ao acadmico,
siendo el periodo mnimo de alquiler de un semestre y el periodo
mximo de un ao, lo que incluye los semestres l y 2 y el semestre de
verano. Cada contrato de alquiler individual entre un estudiante y el
departamento de alojamientos se identifica de manera unvoca
utilizando un nmero de contrato.
Los datos almacenados sobre cada contrato incluyen el nmero de
contrato, la duracin del contrato (en semestres), el nombre y nmero
de matrcula del estudiante, el nmero de identificacin y nmero de
habitacin, los detalles relativos a la direccin de la residencia del piso
de estudiantes y la fecha en la que el estudiante quiere comenzar a vivir
en esa habitacin, as como la fecha en la que piensa abandonarla (si es
que se conoce).
Facturas.
Al principio de cada semestre, se enva a cada estudiante una factura
para el siguiente periodo de alquiler. Cada factura tiene un nmero de
factura unvoco.
Los datos almacenados sobre cada factura incluyen el nmero de
factura, el nmero de contrato, el semestre, el pago que hay que
realizar, el nombre completo y nmero de matrcula del estudiante, el
nmero de habitacin y nmero de identificacin de la habitacin, y la
direccin de la residencia o piso de estudiantes. Tambin se almacenan
datos adicionales sobre el pago de la factura, lo que incluye la fecha en
la que se pag la factura, el modo de pago (cheque, efectivo, Visa, etc.),
y la fecha en que se han enviado el primer y segundo recordatorio (en
caso necesario).
FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

Inspecciones de los pisos de estudiantes.


Los pisos de estudiantes son inspeccionados por los empleados de
manera peridica para garantizar que los alojamientos estn
adecuadamente conservados. La informacin que se registra para cada
inspeccin es el nombre del empleado que lleva a cabo la inspeccin, la
fecha en la que se llev a cabo, una indicacin de si el inmueble estaba
en condiciones satisfactorias o no y, posiblemente, una serie de
comentarios adicionales.
Personal del departamento de alojamientos.
Tambin se almacena informacin sobre los empleados del
departamento de alojamientos, lo que incluye el nmero de empleado,
el nombre y apellidos, la direccin personal (calle, ciudad, cdigo
postal), la fecha de nacimiento, el sexo, la categora (por ejemplo,
Director de residencia, Asistente administrativo, Limpiador) y la
ubicacin (por ejemplo, departamento de alojamientos o residencia).
Cursos.
El departamento de alojamientos guarda tambin una cantidad limitada
de informacin sobre los cursos ofrecidos por la Universidad, incluyendo
el nmero de curso, el ttulo del curso (lo que incluye el ao), la perso na
que imparte el curso, el nmero de telfono interno, el nmero de
habitacin y el nombre del departamento. Cada estudiante es asociado
con un nico curso.
Parientes.
Siempre que sea posible, se almacena informacin sobre algn pariente
de cada estudiante, lo que incluye el nombre, la relacin con el
estudiante, la direccin (calle, ciudad, cdigo postal) y el nmero de
telfono de contacto.
16.10.- Cree y valide un modelo lgico de los datos a partir del modelo
conceptual de los datos del caso de estudio University Accommodation
Office.
DISEO CONCEPTUAL

FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

DISEO LOGICO

MODELO NORMALIZADO
Empleados (NoEmpleado, nombreE, apellidoE, direccionE, telf., DOB,
sexo, categora, salario).
Estudiantes (cedula, nombreEst, apellidoEst, direccinEst, tel, sexo,
DOB,
categoriaEst,
estado,
fumador,
TipoAlojamiento,
duracinAlojamiento, IdCurso)
Departamento
(noDep,
noHabitaciones, tipoD)

nombreD,

direccin,

telf.,

noEmp,

Habitacin (IdHabitacion, noHabitacion, costo, noDep)


Facturas (noFactura, semestre, fechaEmision, fechaPago, noContrato,
idPago)
Pago (idPago, tipoPago)
Contratos (noContratos, fechaInicio, fechaSalida, cedula, idHabitacion)
Cursos (idCurso, tituloCurso, instructor, telf., idHabitacion)
FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

Parientes (cedulaPar,
cedulaEst)

nombrePar,

InspeccinDepartamento
noEmpleado)

(noDep,

relacionesEst,
fechaInsp,

direccionPar,

comentario,

telf.,

estado,

17.10.- Implemente la base de datos para University Accommodation


Office utilizando el diseo fsico creado en el Ejercicio 17.9
/* CREACION TABLA EMPLEADOS*/
CREATE TABLE Empleados(
NoEmpleado NUMBER(10) NOT NULL,
NombreE VARCHAR2(30) NOT NULL,
ApellidoE VARCHAR2(30) NOT NULL,
DireccionE VARCHAR2(80) NOT NULL,
Telf VARCHAR2(20) NOT NULL,
DOB DATE NOT NULL,
sexo CHAR NOT NULL,
Categoria VARCHAR2(20) NOT NULL,
salario NUMBER(8,2) NOT NULL,
PRIMARY KEY (NoEmpleado));
/*CREACION TABLA ESTUDIANTES*/
CREATE TABLE Estudiante (
cedula NUMBER(11) NOT NULL,
NombreEst VARCHAR2(30) NOT NULL,
ApellidoEst VARCHAR2(30) NOT NULL,
DireccionEst VARCHAR2(40) NOT NULL,
Telf VARCHAR2(20),
sexo CHAR NOT NULL,
DOB DATE NOT NULL,
CategoriaEst CHAR NOT NULL,
estado CHAR NOT NULL,
fumador CHAR NOT NULL,
tipo CHAR NOT NULL,
idCurso NUMBER(8),
PRIMARY KEY (cedula), CONSTRAINT cursoToma FOREIGN KEY (idCurso)
REFERENCES Curso(idCurso) ON UPDATE CASCADE ON DELETE NO
ACTION );
/*CREACION TABLA DEPARTAMENTO*/
CREATE TABLE Departamento(
NoDep NUMBER(8) NOT NULL,
nombreD VARCHAR2(20) NOT NULL,
FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

direccionD VARCHAR2(80) NOT NULL,


noHabitaciones NUMBER(2),
telf NUMBER(10),
tipoD VARCHAR2(15) NOT NULL,
PRIMARY KEY (NoDep) );
/*CREACION TABLA INSPECCION DEPARTAMENTO*/
CREATE TABLE InspeccionDepartamento(
NoDep NUMBER(8) NOT NULL,
fechaInsp DATE NOT NULL,
comentario VARCHAR2(40) NOT NULL,
estado CHAR NOT NULL,
NoEmpleado NUMBER(8) NOT NULL,
PRIMARY KEY (noDep, fechaInsp), CONSTRAINT NoDep FOREIGN KEY
(NoDep) REFERENCES Departamento(NoDep) ON UPDATE CASCADE ON
DELETE NO ACTION, CONSTRAINT numeroEmpleado FOREIGN KEY
(NoEmpleado) REFERENCES Empleados(NoEmpleado) ON UPDATE
CASCADE ON DELETE NO ACTION );
/*CREACION TABLA CURSO.*/
CREATE TABLE Curso(
idCurso NUMBER(8) NOT NULL,
tituloCurso VARCHAR2(30),
instructor VARCHAR2(20),
telefonoCurso NUMBER(10),
idHabitacion NUMBER(8),
PRIMARY KEY (idCurso), CONSTRAINT numeroHabitacion FOREIGN KEY
(idHabitacion) REFERENCES Habitacion(idHabitacion) ON UPDATE
CASCADE ON DELETE NO ACTION );
/*CREACCION TABLA TIPO PAGO*/
CREATE TABLE TipoPago (
idPago NUMBER(2) NOT NULL ,
tipoPago VARCHAR2(40) NOT NULL,
PRIMARY KEY (idPago));
/*CREACION TABLA HABITACION*/
CREATE TABLE Habitacion(
idHabitacion NUMBER(8) NOT NULL,
NoHabitacion NUMBER(8) NOT NULL,
costo NUMBER(6, 2) NOT NULL,
NoDep NUMBER(8) NOT NULL,
PRIMARY KEY (idHabitacion), CONSTRAINT NumeroDepartamento
FOREIGN KEY (NoDep) REFERENCES Departamento (Nodep) ON UPDATE
CASCADE ON DELETE NO ACTION );
FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

/*CREACCION TABLA CONTRATO*/


CREATE TABLE Contrato(
NoContrato NUMBER(8) NOT NULL,
fechaInicio DATE NOT NULL,
fechaSalida DATE NOT NULL,
cedula NUMBER(11) NOT NULL,
idHabitacion NUMBER(8) NOT NULL,
PRIMARY KEY (NoContrato), CONSTRAINT estudiante FOREIGN KEY
(cedula) REFERENCES Estudiante(cedula) ON UPDATE CASCADE ON
DELETE NO ACTION, CONSTRAINT idHabitacion FOREIGN KEY
(idHabitacion) REFERENCES Habitacion(idHabitacion) ON UPDATE
CASCADE ON DELETE NO ACTION );
/*CREACCION TABLA FACTURA*/
CREATE TABLE Factura(
NoFactura NUMBER(8) NOT NULL,
semestre CHAR NOT NULL,
fechaEmision DATE NOT NULL,
fechaPago DATE,
NoContrato NUMBER(8) NOT NULL,
idPago NUMBER(2) NOT NULL,
monto NUMBER(6, 2) NOT NULL,
PRIMARY KEY (NoFactura),
CONSTRAINT numeroContrato FOREIGN KEY (NoContrato) REFERENCES
Contrato(NoContrato), CONSTRAINT metodoPago FOREIGN KEY (idPago)
REFERENCES TipoPago(idPago));
/*CREACCION TABLA PARIENTE*/
CREATE TABLE Pariente(
cedulaP NUMBER(11) NOT NULL,
relacionEst VARCHAR2(30),
direccionP VARCHAR2(25),
telefonoP NUMBER(10),
cedulaEst NUMBER(11),
PRIMARY KEY (cedulaP), CONSTRAINT cedEstudiante FOREIGN KEY
(cedulaEst) REFERENCES Estudiante(cedula) ON UPDATE CASCADE ON
DELETE NO ACTION );
ANALISIS DE TRANSACCIONES
Presentar un informe que indica el nombre y el nmero de matrcula de
todos los estudiantes junto con los detalles relativos a sus contratos de
alquiler.
SELECT e.cedula,
FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

e.nombreEst,
e.apellidoEst,
f.NoFactura AS NUMERO_FACTURA, c.noContrato, c.fechaInicio,
c.fechaSalida,
c.idHabitacion FROM Estudiante e, Contrato c, Factura f WHERE
(e.cedula = c.cedula) and c.noContrato = f.noContrato;
Mostrar los detalles de los contratos de alquiler que estn vigentes el
semestre de verano.
SELECT e.cedula, e.nombreEst, e.apellidoEst, f.monto AS AlquilerTotal
FROM Estudiante e, Contrato c, Factura f WHERE (e.cedula = c.cedula)
and c.noContrato = f.noContrato;
Mostrar los detalle relativos al alquiler total pagado por un cierto
estudiante.
SELECT
e.cedula,
e.nombreEst,
e.apellidoEst,
f.NoFactura
AS
NUMERO_FACTURA,
c.noContrato,
c.fechaInicio,
c.fechaSalida,
c.idHabitacion FROM Estudiante e, Contrato c, Factura f WHERE (e.cedula
= c.cedula) and c.noContrato = f.noContrato;
Presentar un informe sobre los estudiantes que no hayan pagado sus
facturas en una fecha determinada.
SELECT * FROM Contrato C WHERE NoContrato = (SELECT NoContrato
FROM Factura F WHERE C.NoContrato = F.NoContrato and F.semestre =
'V');
CREACION DE INDICES
CREATE UNIQUE INDEX NombreEstudiantes ON Estudiante(nombreEst);
CREATE UNIQUE INDEX ApellidoEstudiantes ON Estudiante(apellidoEst);
CREATE
UNIQUE
Departamento(nombreD);

INDEX

CREATE
UNIQUE
INDEX
Departamento(direccionD);

NombreDepartamento

ON

DireccionDepartamento

ON

CREATE UNIQUE INDEX NombreEmpleado ON Empleado(nombreE);


CREATE UNIQUE INDEX ApellidoEmpleado ON Empleado(apellidoE);
Enumere las potenciales amenazas a las que tendra que
enfrentarse y proponga contramedidas para prevenirlas.
FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

El propsito de este punto es contrarrestar las amenazas que pueden


ocasionar desde la parte externa del sistema de la base de datos, como
los posibles accidentes durante su manejo y ejecucin del sistema.
Esto se podra prevenir siempre y cuando exista una buena
implementacin de seguridad tanto al Software como al Hardware
Hardware
Los cambios climticos pueden ocasionar un apagn o una
sobrecarga de energa elctrica.
Robo de equipos
Daos fsicos a los equipos
Interferencia electrnica y radiacin
SGBD y Software de aplicacin.
Fallo de los mecanismos de seguridad que proporciona un acceso
mayor.
Alteracin de los programas
Robo de los programas
Base de Datos
Modificacin o copia no autorizada de la base de datos.
Robo de los datos
Corrupcin de los datos debido al corte de suministro o
sobretensin.
Usuarios

Visualizacin y divulgacin de la base de datos.


Formacin inadecuada del personal
Introduccin del virus
Entrada ilegal por parte de un hacker.

Datos/ Administrador de base de datos


Procedimientos y polticas de seguridad inadecuadas
Las contramedidas para prevenir nuestro sistema en entornos Web
seran:
Seguridad a nivel de usuario.- esto quiere decir que los usuarios
deben identificarse y escribir una contrasea para poder realizar
cualquier consulta en la base de datos.
FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

Privilegios.- es el derecho a ejecutar un tipo particular de


instruccin SQL o a acceder a los objetos de otro usuario, hay dos
categoras de privilegios: del sistema y sobre los objetos.
Servidores Proxy.- consiste en que guarda los resultados de todas
las solicitudes durante un cierto tiempo. Y filtra solicitudes lo cual
se evita de conjunto de sitios web que sern visitados por los
usuarios.
Cortafuegos.- impide el acceso no autorizado hacia desde una red
privada. Este suele implementarse tanto al software como al
hardware. Ejm: filtrado de paquetes, pasarela de aplicacin (FTP y
Telnet).
Certificados digitales.- es un adjunto que se aade a un mensaje
electrnico que se utiliza para propsitos de seguridad. En el
momento de enviar un mensaje cifrado tiene que solicitar un
certificado digital a una autoridad de certificacin (AC). Incluye
clave pblica y solicitante.

FAUSTO QUILUMBA
171579825-0
INGENIERIA INFORMATICA

Potrebbero piacerti anche