Entrega Final
Entrega Final
1. INTRODUCCION
A través de este documento se presenta la información encarada de una forma un poco mas
técnica, que describe las estructuras del sistema de exámenes de una institución a desarrollarse en
ambiente web.
Casos de uso: Un caso de uso es una técnica para la captura de requisitos potenciales de
un nuevo sistema o una actualización software. Cada caso de uso proporciona uno o más
escenarios que indican cómo debería interactuar el sistema con el usuario o con otro
sistema para conseguir un objetivo específico. Normalmente, en los casos de usos se evita
el empleo de jergas técnicas, prefiriendo en su lugar un lenguaje más cercano al usuario
final. En ocasiones, se utiliza a usuarios sin experiencia junto a los analistas para el
desarrollo de casos de uso.
DER LOGICO: Los diagramas E-R son un lenguaje gráfico para describir conceptos.
Informalmente, son simples dibujos o gráficos que describen la información que trata un
sistema de información y el software que lo automatiza.
HERRAMIENTAS A UTILIZAR
1
Ingeniería del Software II
2
Ingeniería del Software II
2. CASOS DE USO
3
Ingeniería del Software II
4
Ingeniería del Software II
Poscondiciones:
El examen ha sido creado y se encuentra en estado de pendiente.
5
Ingeniería del Software II
6
Ingeniería del Software II
7
Ingeniería del Software II
8
Ingeniería del Software II
Editar datos
<<include>>
<<include>>
Eliminar datos
<<include>>
Registrar Profesor
<<include>>
Administrador <<include>>
Asignar profesor
Cambiar contraseña
9
Ingeniería del Software II
<<extend>>
Acceder al sistema Registro alumno
Matricularse a materia
<<include>>
Ver materias
Alumno
Cambiar contraseña
Tomar examenes
<<include>> <<include>>
Solicitar Revision
Imprimir examenes
Consultar nota
10
Ingeniería del Software II
<<extend>>
Acceder al sistema Registrar Profesor
Ver materias
Cambiar tema
Cambiar contraseña
<<include>>
<<include>> <<include>>
Crear Examen Crear tema Borrar tema
Profesor
<<include>>
Publicar Examen
Imprimir examen
11
Ingeniería del Software II
4. DIAGRAMA DE CLASES
Opcion_Alumno
-Marcada (S/N)
Interface de Conexio a la BD
Alumno +setMarcada()
-Nombre +getMarcada()
-Apellido Examen_Alumno
-CI 0..* 0..* 0..*
-Nacionalidad -Fec_Inicio
-Sexo Rinde -Fec_Final
-Direccion
-Telefono +setFec_Inicio()
tiene
-Correo +getFec_Inicio()
+setFec_Final()
+setNombre() +getFec_Final()
0..* Cursa
+getNombre() +obtenerTema() 1
+setApellido() +obtenerTodosTemas()
+getApellido() +imprimirExamen()
+setCI() Tema
+getCI() 0..*
0..* -Titulo
+setNacionalidad() tiene
Materia 1 -Enunciado
+getNacionalidad()
-Puntaje
+setSexo() 1 0..* 1 1..*
-Nombre -Tipo
+getSexo() Examen
-Descripcion -Respuesta
+setDireccion() Tiene Tiene
-Fecha_Ini -Puntaje_Respuesta
+getDireccion() +setNombre()
+setTelefono() -Fecha_Fin
+getNombre() +setTitulo()
+getTelefono() -Duracion
+setDescripcion() +getTitulo()
+setCorreo() -Puntaje
+getDescripcion() +setEnunciado()
+getCorreo() +añadirExamen() +setFecha_Ini() +getEnunciado()
+cursarMateria() +quitarExamen() +getFecha_Ini() +setPuntaje()
+cancelarMateria() 0..* +obtenerExamen() 0..* +getPuntaje()
+setFecha_Fin()
+obtenerMateria() +obtnerTodosExamenes() +getFecha_Fin() +setTipo()
+setDuracion() +getTipo()
0..* 0..* +setRespuesta()
+getDuracion()
Crea Enseña +setPuntaje() +getRespuesta()
+getPuntaje() +setPuntaje_Respuesta()
1 Crea 1
+añadirTema() +getPuntaje_Respuesta()
Administrador Profesor +quitarTema() +añadirOpcion()
+obtenerTema() +quitarOpcion()
-Nombre -Nombre +obtenerOpcion()
-Apellido -Apellido +obtenerTodosTemas()
1 +imprimirExamen() +obtenerTodasOpciones()
-CI -CI
-Nacionalidad -Nacionalidad Crea
-Sexo -Sexo 1
-Direccion -Direccion
-Telefono -Telefono Tiene
-Correo 1 0..* -Correo 0..*
-setNombre() Crea +setNombre() Opcion
-getNombre() +getNombre()
-setApellido() +setApellido() -Enunciado
-getApellido() +getApellido() 0..* -Correcta(S/N)
-setCI() +setCI()
-getCI() +getCI() +setCorrecto()
-setNacionalidad() +setNacionalidad() +getCorrecto()
-getNacionalidad() +getNacionalidad() +setEnunciado()
-setSexo() +setSexo() +getEnunciado()
-getSexo() +getSexo()
-setDireccion() +setDireccion()
-getDireccion() +getDireccion()
-setTelefono() +setTelefono()
Interface de Conexio a la B.D.
-getTelefono() +getTelefono()
-setCorreo() +setCorreo()
-getCorreo() +getCorreo()
-añadirMateria() +enseñarMateria()
-quitarMateria() +cancelarMateria()
-obtenerMateria() +obtenerMateria()
-añadirProfesor()
-quitarProfesor()
-obtenerProfesor()
-añadirAlumno()
-quitarAlumno()
-obtenerAlumno()
12
Ingeniería del Software II
ConexionBDatos
-conexion()
-desconexion()
+insertar()
+update()
+delete()
13
Ingeniería del Software II
5. DER (LOGICO)
Profesor Administrador
Id_Profesor Id_Administrador
Profesor
Nombres (0;N) (1;1) Nombres
Id_Profesor NUMERIC(6) <pk>
A_Crea_P
Apellidos Id_Administrador NUMERIC(2) <fk> Apellidos
C_IdentidadNombres (1;N)
VARCHAR(30) C_Identidad (1;1) Administrador A_Crea_A
NacionalidadApellidos VARCHAR(30) Nacionalidad Id_Administrador NUMERIC(2) <pk> (1;N)
C_Identidad NUMERIC FK_PROFESOR_REFERENCE_ADMINIST Nombres VARCHAR(30)
Sexo Nacionalidad VARCHAR(15) Sexo Apellidos VARCHAR(30)
Direccion Sexo BOOL (1;1) Direccion C_Identidad NUMERIC
Telefono Direccion VARCHAR(30)
A_Crea_M Telefono Nacionalidad VARCHAR(15)
Telefono NUMERIC Sexo BOOL
E_Mail E_Mail
(1;N)
VARCHAR(30)
E_Mail Direccion VARCHAR(30)
Usuario Usuario VARCHAR(15) Usuario Telefono NUMERIC
Contraseña Contraseña VARCHAR(20) Contraseña E_Mail VARCHAR(30)
Usuario VARCHAR(15)
(1;1) (1;1)
Contraseña (0;N)
VARCHAR(20)
FK_MATERIA_REFERENCE_ADMINIST
Alumno
(0;N) Id_Alumno
Nombres
FK_ALUMNO_REFERENCE_ADMINIST
P_Tiene_M
(0;N) Materia Apellidos
(1;N) FK_MATERIA_REFERENCE_PROFESOR
Id_Materia (0;N) (0;N) C_Identidad
A_Cursa_M Nacionalidad
Id_Profesor
Nombre (N;M) Sexo Alumno
Direccion
P_Crea_E Descripcion Materia Id_Alumno NUMERIC(8) <pk>
Id_Materia NUMERIC(6) <pk> (0;N) Telefono Id_Administrador NUMERIC(2) <fk>
(1;N) E_Mail Nombres VARCHAR(30)
(1;1)
Id_Profesor NUMERIC(6) <pk,fk2>
Apellidos VARCHAR(30)
Id_Administrador NUMERIC(2) <fk1> Usuario C_Identidad NUMERIC
Nombre VARCHAR(20)
Descripcion VARCHAR(256)
Contraseña Nacionalidad VARCHAR(15)
Sexo BOOL
M_Tiene_E
(1;1) Direccion VARCHAR(30)
(1;N) Telefono NUMERIC
(0;N) Examen A_Rinde_M E_Mail VARCHAR(30)
Usuario VARCHAR(15)
Id_Examen (N;M)
FK_CURSA_REFERENCE_MATERIA
A_Da_R
FK_EXAMEN_REFERENCE_PROFESOR Contraseña VARCHAR(20)
Id_Profesor (1;N)
FK_CURSA_REFERENCE_ALUMNO
Id_Materia (0;N)
Fecha_Ini FK_EXAMEN_REFERENCE_MATERIA (0;N)
Fecha_Fin Tema Cursa
Duracion Id_Tema
Id_Alumno NUMERIC(8) <pk,fk1>Respuesta
Id_Materia NUMERIC(6) <pk,fk2>
Puntaje Id_Profesor Id_Profesor NUMERIC(6) <pk,fk2>Id_Alumno
(0;N)
Examen FK_RINDE_REFERENCE_ALUMNO
Id_Examen (1;1) (1;N)
Id_Examen NUMERIC(4) <pk> Id_Tema
(1;1) Id_Materia
Id_Profesor NUMERIC(6) <pk,fk1,fk2> Id_Profesor
Id_Materia NUMERIC(6) <pk,fk2> Titulo Id_Examen
T_Tiene_R
Fecha_Ini DATE (0;N) Enunciado FK_RESPUEST_REFERENCE_ALUMNO
Fecha_FinE_Tiene_T
DATE (1;1) Id_Materia
Puntaje Respuesta
Duracion (1;N)
TIME
Puntaje NUMERIC Tipo Puntaje
Rinde
(1;1) Respuesta
Id_Alumno NUMERIC(8) <pk,fk1>
(1;1) Id_Alumno NUMERIC(8) <pk,fk2>
Id_Examen NUMERIC(4) <pk,fk2>
FK_RINDE_REFERENCE_EXAMEN Id_Materia NUMERIC(6) <pk,fk2> Id_Tema NUMERIC(3) <pk,fk1>
Id_Profesor NUMERIC(6) <pk,fk2> Id_Profesor NUMERIC(6) <pk,fk1>
Opciones Id_Materia NUMERIC(6) <pk,fk1>
T_Tiene_O
Id_Opcion (0;N) Id_Examen NUMERIC(4) <pk,fk1>
(1;N) R_Tiene_E Respuesta TEXT
Id_Tema Puntaje NUMERIC
Tema (1;N)
Id_Profesor
FK_TEMA_REFERENCE_EXAMENId_Tema NUMERIC(3) <pk>
Id_Examen Id_Profesor NUMERIC(6) <pk,fk> FK_RESPUEST_REFERENCE_TEMA
Id_Materia Id_Examen NUMERIC(4) <pk,fk>
FK_ELECION_REFERENCE_RESPUEST
Correcto Id_Materia NUMERIC(6) <pk,fk>
Titulo VARCHAR(30) Eleccion
Enunciado Enunciado VARCHAR(256)
O_Tiene_E
Puntaje NUMERIC Id_Opcion
(0;N) Elecion
(1;1) Tipo
(1;N) CHAR Id_Alumno
(0;N) Id_Opcion NUMERIC(2) <fk1>
Id_Tema
Id_Tema NUMERIC(3) <fk1,fk2>
Id_Profesor Id_Profesor NUMERIC(6) <fk1,fk2>
Id_Examen Id_Examen NUMERIC(4) <fk1,fk2>
Id_Materia NUMERIC(6) <fk1,fk2>
Id_Materia
Id_Alumno NUMERIC(8) <fk2>
Opciones
Id_Opcion NUMERIC(2) <pk>
FK_OPCIONES_REFERENCE_TEMA
Id_Tema
Id_Profesor
NUMERIC(3)
NUMERIC(6)
<pk,fk>
<pk,fk> 14
Id_Examen NUMERIC(4) <pk,fk>
FK_ELECION_REFERENCE_OPCIONES
Id_Materia NUMERIC(6) <pk,fk>
Correcto BOOL
Enunciado VARCHAR(256)
Ingeniería del Software II
15
Ingeniería del Software II
7. DIAGRAMA DE ACTIVIDADES
Registrar Alumno
Registrar Alumno
[Datos Invalidos]
Terminar Alumno
[Salir]
[Datos Cargados]
[Salir]
Terminar Alumno2
[Registrar Otro]
16
Ingeniería del Software II
Registrar Profesor
Registrar Profesor
[Datos Invalidos]
Terminar Alumno3
[Salir]
[Datos Cargados]
[Salir]
Terminar Alumno4
[Registrar Otro]
17
Ingeniería del Software II
Registrar Materia
Registrar Materia
[Datos Invalidos]
Terminar Alumno5
[Salir]
[Datos Cargados]
[Salir]
Terminar Alumno6
[Registrar Otro]
18
Ingeniería del Software II
Rendir Examen
Terminar Alumno7
[No Matriculado]
Matricularse a Materia
Aprobar Matriculacion
Publicar Examen
Buscar Examen
Tomar Examen
19
Ingeniería del Software II
Nota Final
Alumno Profesor
[Revision]
Corregir Examen
Terminar Alumno4
[No]
[Imprimir]
Imprimir Examen
Terminar Alumno3
[Revision]
20
Ingeniería del Software II
Corregir Examen
Profesor Alumno
Buscar Materias
Rendir Examen
Seleccionar Materia
Corregir Examen
Terminar Alumno6
[No]
[Imprimir]
Imprimir Examen
21
Ingeniería del Software II
Publicar Examen
Buscar Materias
Seleccionar Materia
[Crear]
Buscar Examenes Creados Terminar Alumno8 Crear Examen
[Publicar]
Terminar Alumno10
[No]
[Imprimir]
[No]
22
Ingeniería del Software II
Crear Examen
Buscar Materias
Seleccionar Materia
Crear Examen
[Salir] [Nuevo]
Asignar Fecha Terminar Alumno12
Añadir Tema
Titulo y Enunciado
[Seleccion Excluyente]
[No]
[No]
Terminar Alumno10 Elegir Opciones Correctas
Elegir Opcion Correcta
[Imprimir]
23
Ingeniería del Software II
Tomar Examen
Buscar Examen
Tomar Examen
[Fin Examen]
[Elegir Tema]
Terminar Alumno13 Selecionar Tema
Terminar Alumno14
[No]
[Responder]
Terminar Alumno15
[Selecion Multiple] [Texto]
[Selecion Excluyente]
Ver Nota Parcial
Confirmar respuesta
24
Ingeniería del Software II
8. DIAGRAMA DE COMPONENTES
Aplicacion
Web
Interfaz Usuario
<<Proxy>>
Control
Menejador BaseDatos
25
Ingeniería del Software II
Servidor
BaseDatos
Interfaz de Conexion
<<DBMS>>
Gestor de Datos
BaseDatos
26
Ingeniería del Software II
Servicio Impresora
Aplicacion Web
Impresora
27
Ingeniería del Software II
Base de Datos
Sistema_Examen.db
Administrador
Alumno
Materia
Profesor
Cursa
BaseDatos
Examen
Tema
Rinde
Elecion
Opcion Respuesta
28