Documentos de Académico
Documentos de Profesional
Documentos de Cultura
GaravitoLeidy2013 PDF
GaravitoLeidy2013 PDF
AUTOR
LEIDY MARCELA GARAVITO TAPIERO
UNIVERSIDAD EAN
FACULTAD DE INGENIERA
INGENIERA DE SISTEMAS
BOGOT ENERO 2013
1
AUTOR
LEIDY MARCELA GARAVITO TAPIERO
PROYECTO DE GRADO
TRABAJO DIRIGIDO
TUTOR
ALEXANDER GARCA PREZ
UNIVERSIDAD EAN
FACULTAD DE INGENIERA
INGENIERA DE SISTEMAS
BOGOT ENERO 2013
2
Nota de Aceptacin
________________________________________
________________________________________
________________________________________
________________________________________
________________________________________
________________________________________
Presidente del Jurado
________________________________________
Jurado
________________________________________
Jurado
A mi novio Manuel,
Por su gran comprensin y apoyo brindado
Durante el transcurso de este proyecto.
4
AGRADECIMIENTOS
Al docente Rubn Dorado quin aport sus conocimientos para la realizacin del
presente documento.
TABLA DE CONTENIDOS
LISTA DE ILUSTRACIONES
10
LISTA DE TABLAS
11
LISTA DE ANEXOS
12
13
2. PROBLEMA
2.1. DESCRIPCIN
14
3. OBJETIVOS
Definir requerimientos.
Elaborar el anlisis, diseo y modelamiento del sistema.
Disear Modelo de Datos.
Desarrollar los mdulos pertinentes para solucionar los requerimientos
funcionales.
15
4. JUSTIFICACIN
16
5. ALCANCE
17
6. MARCOS DE REFERENCIA
Sistema de Informacin
Un Sistema de Informacin segn el autor Fernndez1 es un conjunto de
componentes (fsicos, de comunicaciones lgicos, datos y humanos)
interrelacionados que recolectan, procesan, almacenan y distribuyen informacin
para apoyar la toma de decisiones y el control para lograr un objetivo comn.
Para la construccin de un Sistema de Informacin, especficamente de un
Software, es fundamental basarse en un patrn de anlisis o metodologa que
permita contemplar todas las fases por las que atraviesa un sistema, y adems dar
una vista ms especfica y/o modular a todo el sistema para reducir su
complejidad.
Las fases establecidas para el desarrollo de un S.I. se clasifica en:
Requerimientos, Anlisis, Desarrollo y Pruebas
Requerimientos
Es una etapa donde se establecen los objetivos, necesidades y/o problemas
generales que se presentan y que se desean suplir. En esta fase suelen salir dos2
tipos de requerimientos:
Funcionales: son las tareas que el sistema es capaz de realizar y las
transformaciones que el sistema realiza, segn su entrada para producir su
respectiva salida.
No Funcionales: son aquellas caractersticas que de alguna manera pueden
afectar o limitar el funcionamiento del sistema.
Fernndez, Vicen Alarcn. Desarrollo de Sistemas de Informacin: Una Metodologa Basada en el Modelado.
Upc Editions Upc 2010. Pag 11.
1
http://requerimientos.galeon.com/
18
Diseo
Segn los autores del libro Introduccin a la Ingeniera del Software3, el diseo del
software es el proceso de aplicar distintas tcnicas y principios con el propsito
de definir un dispositivo, proceso o sistema con los suficientes detalles como para
permitir su realizacin fsica. Esta etapa se suele dividir en dos fases:
Diseo Preliminar: abarca el modelo de la base de datos, la arquitectura y la
interfaz de usuario
Diseo Detallado: abarca an ms en detalle la representacin arquitectnica y el
cdigo o algoritmos
Pruebas
En esta etapa se desarrollan todas las actividades de ejecucin de todos los
componentes del programa segn circunstancias previamente especificadas y la
muestra de resultados esperados.
Generalmente se descubren fallas, defectos o errores verificando en qu fase se
origin el problema y medidas para solucionarlo.
Aplicaciones Web
Segn Lujn4, las aplicaciones web son aquellas que estn ejecutadas en el
entorno de un Cliente (navegador, explorador o visualizador) interpretadas por un
Servidor (servidor web) realizando la comunicacin mediante un protocolo de
comunicacin HTTP.
Alonso, Fernando | Martnez, Loic | Segovia, Javier. Introduccin a la Ingeniera del Software: Modelados de Desarrollo
de Programas. Delta 2005. Pg. 83
Lujn, Sergio. Programacin de Aplicaciones Web: Historia, Principios Bsicos y Clientes Web. Editorial Club
Universitario 2002. Pg. 48
4
19
http://msdn.microsoft.com/es-es/library/4w3ex9c2(v=vs.80).aspx
20
ASP.NET: 7Es una tecnologa de Microsoft que permite crear pginas web
dinmicas.
Caso de Uso: 8Diagramas que sirven para mostrar la funcionalidad del sistema
desde el punto de vista de sus interacciones con el exterior y sin entrar en una
descripcin detallada ni en la implementacin de estas funciones.
http://msdn.microsoft.com/es-es/library/e80y5yhx(v=vs.80).aspx
http://msdn.microsoft.com/es-es/asp.net/centrum-asp-net.aspx
21
Modelo: Clase que representa los datos y que la lgica usa para hacer cumplir las
reglas del negocio.
http://www.w3schools.com/html/html_intro.asp
10
http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-controller
11
http://www.uml.org/
22
23
12
25
7. METODOLOGA DE DESARROLLO
Levantamiento de Requerimientos
En esta fase se analizaron las necesidades del usuario final del software y se
determinaron requisitos, requerimientos y objetivos a cubrir. De esta fase surgi un
documento de especificacin de requerimientos que contiene la especificacin
completa de lo que se realiz.
Esta fase comenz con la definicin del problema (planteada en el cronograma
Ilustracin 02), el levantamiento de informacin y finaliz con la primera reunin
con el tutor.
26
Pruebas y Documentacin
En la fase de Pruebas, se relacion toda la informacin que solicit el cliente
contra el resultado de software obtenido.
Una vez ensamblados todos los mdulos del sistema, se verific que todo
funcionara correctamente cumpliendo con los requerimientos establecidos por
Coordinacin. Esta fase se realiz en la etapa de Verificacin y Pruebas
establecido en el cronograma.
En el Video adjunto como anexo al presente documento, se realiza una prueba
general del funcionamiento del sistema.
En todos los proyectos, se exige un documento escrito con todas las
especificaciones desde el inicio del proyecto, hasta la finalizacin del mismo.
27
28
8. LEVANTAMIENTO DE REQUERIMIENTOS
Entrevista a Coordinador
Fecha :
Participantes :
Objetivo :
Conclusin :
FASE 1: Iniciacin
Existir en primera instancia un usuario
COORDINADOR de la Facultad de Ingeniera.
Administrador
que
ser
el
29
FASE 2: Autenticacin
El ESTUDIANTE se inscribe en la pgina llenando su Informacin Personal
(Documento, Nombre, Apellido, Usuario, Contrasea).
Los dems usuarios (TUTOR y JURADO) los ingresa el COORDINADOR con
Nombre, Apellido, Usuario y Clave, en el Mdulo de Autenticacin.
FASE 5: Bitcora
Se genera una especie de BITCORA, donde el ESTUDIANTE y el TUTOR estn
en constante comunicacin, por medio de Documentos y Actas que sern
cargadas al sistema con Fecha de Carga.
El TUTOR tiene la opcin de registrar el porcentaje (%) de avance del proyecto. El
ESTUDIANTE podr ver el % de avance asignado por el TUTOR.
El TUTOR puede ver toda la informacin de los proyectos a los que est asignado,
ya que puede ser TUTOR de varios proyectos a la vez.
FASE 8: Sustentacin
El JURADO tiene la opcin de Proceder a Sustentacin; cambiar al ESTADO:
SUSTENTACIN.
Al momento de la sustentacin, los dos jurados emiten su aprobacin o
desaprobacin. Su calificacin es en comn acuerdo.
El COORDINADOR emite un comunicado a los estudiantes con el resultado de la
sustentacin. Si el proyecto es aprobado por los tutores pasa a ESTADO:
MINERVA.
Fase 9: Finalizado
El COORDINADOR puede subir N documentos a los proyectos.
El COORDINADOR dar a cada proyecto de ESTADO: MINERVA, despus de
concluir el proceso, ESTADO: FINALIZADO.
En caso de que el Proyecto quede con estado Reprobado, ste quedar Anulado
por completo y se negar su presentacin en fechas posteriores.
Un flujo bsico del proceso anteriormente descrito como fases sera [Ver
Ilustracin 03]:
32
33
Entrevista a Estudiante
Fecha :
Participantes :
Objetivo :
Conclusin :
Se encontraron falencias
Tabla 2 : Ficha Tcnica Entrevista Estudiante
34
Requerimientos Funcionales:
El sistema debe permitir el ingreso de todos los usuarios por medio de una
autenticacin.
El sistema debe permitir al Estudiante crear los proyectos de grado
El sistema debe permitir al Estudiante cargar al sistema los avances del
Proyecto
El sistema debe permitir al Tutor, revisar avances de los proyectos a los
que est asignado y cargar correcciones.
El sistema debe permitir al Tutor registrar el avance del proyecto.
El sistema debe permitir al Coordinador la asignacin de tutores al proyecto
El sistema debe permitir al Coordinador la asignacin de jurados al proyecto
El sistema debe permitir al Jurado registrar el envo de correcciones
El sistema debe permitir ver el seguimiento a Estudiantes, Tutores, Jurados
y Coordinador que se le hace a cada proyecto
El sistema debe permitir al Coordinador pasar el proyecto a Minerva
El sistema debe permitir al Coordinador dar por finalizado un proyecto
El sistema debe permitir al Coordinador generar reportes
El sistema debe permitir al Coordinador: crear, editar, eliminar cronogramas
El sistema debe permitir a todo el pblico visualizar los cronogramas en la
web
El sistema debe permitir al Coordinador: crear, editar, y subir actas
El sistema debe permitir tener un repositorio para tener una bitcora de
archivos
Envo automtico de correos a Estudiantes, Tutores y Jurados cuando el
Proyecto tiene alguna asignacin o cambia de Estado.
36
Requerimientos No Funcionales
Requerimientos de Software:
Requerimientos de Hardware
38
9. ANLISIS DE REQUERIMIENTOS
39
Los casos de uso del diagrama anterior muestran las funcionalidades que podr
realizar el Coordinador:
En el siguiente link puede ver como anexo la descripcin tcnica de cada uno de
los casos de uso mencionados anteriormente
40
Los casos de uso del diagrama anterior muestran las funcionalidades que
corresponden a un Estudiante, Tutor, Coordinador y Jurado con respecto a un
Proyecto.
41
Asignar Proyecto a Fase Jurado: El Tutor mediante una bitcora ve los avances
del Proyecto, tan pronto como sea aprobado un 100% tiene la opcin de pasar el
proyecto a revisin de jurados.
42
En el siguiente link puede ver como anexo la descripcin tcnica de cada uno de
los casos de uso mencionados anteriormente
43
44
45
46
47
48
49
En el siguiente diagrama [Ver Diagrama 12] se describe la secuencia que el programa ejecuta al momento de crear
una bitcora. Es llamado desde el Controlador, se realiza la invocacin de la clase e inserta el registro, retornando
los resultados con el nuevo registro ingresado.
50
En el siguiente diagrama [Ver Ilustracin 13] se muestra la secuencia que realiza el programa al momento de
cambiar el estado del proyecto a Sustentacin.
51
En el siguiente diagrama [Ver Ilustracin 14] se muestra la secuencia de progreso o avance de un proyecto en el
momento en que el Estudiante realiza el documento y el Tutor/Jurado listando las respectivas observaciones.
Implica tambin la utilizacin de la bitcora.
52
53
54
http://office.microsoft.com/es-es/visio-help/introduccion-a-los-diagramas-de-flujo-de-funciones-cruzadasRZ102657954.aspx?section=2
13
55
56
57
Tabla: tbl_actagrl
Descripcin: Tabla de Actas Generales
Llave Primaria: actagrl_id
Tabla: tbl_actapro
Descripcin: Tabla de Actas Asociadas al Proyecto
Llave Primaria: actapro_id
58
Tabla: tbl_asignac
Descripcin: Tabla de las Asignaciones de Usuarios a un Proyecto.
Llave Primaria Compuesta: proyect_id, ususario_id, tipousu_id
Tabla: tbl_bitacor
Descripcin: Tabla de la Bitcora
Llave Primaria: bitacor_id
Tabla: tbl_cronogr
Descripcin: Tabla de Cronogramas
Llave Primaria: cronogr_id
59
Tabla: tbl_estados
Descripcin: Tabla General de Estados del Proyecto
Llave Primaria: estados_id
Tabla: tbl_faculta
Descripcin: Tabla de Facultades
Llave Primaria: faculta_id
60
Tabla: tbl_modalid
Descripcin: Tabla de Modalidades
Llave Primaria: modalid_id
Tabla: tbl_poravan
Descripcin: Tabla de Porcentaje de Avance del Proyecto
Llave Primaria: poravan_id
Tabla: tbl_program
Descripcin: Tabla de Programas Acadmicos
61
Tabla: tbl_proyect
Descripcin: Tabla de Proyectos de Grado
Llave Primaria: proyect_id
Tabla: tbl_proyest
Descripcin: Tabla de Historial de los Estados por los que Atraviesa un Proyecto
Llave Primaria: proyest_id
62
Tabla: tbl_tipodoc
Descripcin: Tabla de Tipo de Documento
Llave Primaria: tipodoc_id
Tabla: tbl_tipousu
Descripcin: Tabla de Tipos de Usuario
Llave Primaria: tipousu_id
63
Tabla: tbl_usuario
Descripcin: Tabla de Usuarios
Llave Primaria: usuario_id
Tabla: tbl_visuali
Descripcin: Tabla de Visualizacin de Archivos
Llave Primaria: visuali_id
64
Tabla: tbl_auditor
Descripcin: Tabla de Auditora
Llave Primaria: auditor_id
65
66
Modelo
Para desarrollar esta capa, se implement un conjunto de tecnologas orientadas a
datos de ADO.NET llamada Entity Framework, que bsicamente lo que hace es
moldear todas las entidades, relaciones y reglas del negocio en clases para poder
acceder a los atributos o campos de cada una de las tablas, permitiendo trabajar
con los datos en forma de Objetos.
Tambin es aqu donde se hace la Validacin de los Datos. A continuacin [Ver
Ilustracin 38] se muestra un fragmento de cdigo de una clase modelo:
67
Controlador
El Controlador recibe las peticiones del usuario y como respuesta le devuelve la
vista correspondiente (return View). [Ver Ilustracin 39]
68
Vista
La vista se encarga bsicamente de mostrar al usuario todas las respuestas a las
peticiones realizadas. A continuacin [Ver Ilustracin 40] se muestra un fragmento
de una vista:
69
Administracin de Actas
Muestra una grilla con las opciones de Crear, Editar, Detalles y Borrar
71
Administracin de Usuario
Muestra un formulario de Bsqueda de Usuarios, Crear Usuario, Editar, Eliminar y
Ver Detalles
Administracin de Cronogramas
Muestra la grilla donde puede Crear, Editar, Eliminar y Ver Detalles de cada
Cronograma.
72
73
Reportes
Se lista todos los Proyectos de Grado registrados por la pgina, con su respectivo
Estado y Modalidad
Ilustracin 46 : Reportes
Proyecto
Con el Perfil del Estudiante, aqu se puede crear el Proyecto
74
Para ver todo el procedimiento funcional Ver Video Tutorial | Ver Cdigo Fuente
75
11. DOCUMENTACIN
11.1. VIDEOTUTORIAL
Como Anexo al presente documento se encuentra el link para ver los Video
Tutoriales del funcionamiento de la Aplicacin Ver Video Tutorial
11.2. INSTALACIN
Base de Datos
Instalacin del SQL Server Versin Mnima Requerida 2008
Restaurar Backup de la Base de Datos llamado IntegraBK.bak.
Ver Archivo IntegraBD.bak
Crear un Usuario de Base de datos llamado integra_user, clave 123
Asignarle permisos tipo owner al usuario integra_user sobre la base de
datos Integra
Programa
En el IIS del servidor web, crear una aplicacin web con el nombre Integra
En la carpeta de la aplicacin web Integra, descomprimir el Integra.zip
Ver Cdigo Compilado
Verificar que el web.config tenga correctamente configurado las cadenas de
conexin de la base de datos, segn la configuracin dada al crear la base
de datos.
76
14
15
Para el desarrollo del prototipo se cont con un Entorno de Desarrollo IDE Visual
Studio.NET con para la codificacin con la Tecnologa de C# y ASP.NET MVC 4
Web Application. [Ver Ilustracin 49]
Aplicando una arquitectura MVC Versin 4
El VS tiene un diseador de Diagramas de Secuencia y de Clases.
Licencia Freeware, Microsoft
14
http://www.microsoft.com/en-us/download/details.aspx?id=29268
15
http://www.microsoft.com/visualstudio/eng/products/visual-studio-express-for-web#product-expressweb-details
77
16
Microsoft Project
17
16
http://www.microsoft.com/es-es/download/details.aspx?id=8961
17
http://www.microsoft.com/project/es/es/project-professional-2010.aspx
78
TortoiseSVN
18
Entrprise Architectect
19
18
http://tortoisesvn.tigris.org/
19
http://www.sparxsystems.com.au/
79
Camtasia Studio
Camtasia Studio 8 [Ilustracin 54] se utiliz para crear y editar los videos tutoriales
del funcionamiento del sistema Integra.
Licencia Propietario, Tech Smith
20
20
http://www.videolan.org/vlc/
80
SOFTWARE
VERSIN
Express 2012
Microsoft Visio
2010
Microsoft Project
2010
ASP.NET
Express 2012
Application
Servidor
MVC4
Web
81
13. CONCLUSIONES
Cada vez son ms los procesos manuales que son reemplazados por Software y
Tecnologa mejorando de manera considerable la eficiencia de un proceso. En
este caso particular y con el desarrollo de este proyecto, la Universidad EAN
cuenta con una solucin viable para gestionar los proyectos de grado de la
facultad de ingeniera de sistemas. Paralelamente, me ha dado la oportunidad de
conocer lo ms reciente en tecnologas Microsoft, donde mejora
considerablemente el manejo y la construccin de aplicaciones web, fortaleciendo
el gil desarrollo, la simplicidad y la implementacin de las mejores prcticas
arquitectnicas (como el MVC) convirtindose en una de las mejores tecnologas
de punta para la construccin de software que actualmente existen en el mercado.
82
14. RECOMENDACIONES
83
15. REFERENCIAS
15.1. BIBLIOGRFICAS
Fernndez, Vicen. Desarrollo de Sistemas de Informacin: Una
Metodologa Basada en el Modelado. UPC Editions - 2010
Garca, Luis Fernando. Todo lo bsico que debera saber sobre
Programacin Orientada a Objetos en Java. Edicin Uninorte - 2010
Larman, Craig. UML y patrones: Una Introduccin al Anlisis y Diseo
Orientado a Objetos y al Proceso Unificado. Pearson - 2006
Alonso, Fernando | Martnez, Loic | Segovia, Javier. Introduccin a la
Ingeniera del Software: Modelados de Desarrollo de Programas. Delta 2005
Lujn, Sergio. Programacin de Aplicaciones Web: Historia, Principios
Bsicos y Clientes Web. Editorial Club Universitario - 2002
Campderrich, Benet. Ingeniera del Software. Editorial UOC - 2003
AUTOR
LEIDY MARCELA GARAVITO TAPIERO
UNIVERSIDAD EAN
FACULTAD DE INGENIERA
INGENIERA DE SISTEMAS
BOGOT ENERO 2013
TABLA DE CONTENIDOS
Sistema
Muestra el Mdulo de Administracin
de Usuarios
2.
3.
4.
5.
Sistema
Muestra el Mdulo de Administracin
de Usuarios
Muestra el formulario de registro de usuarios
Valida informacin
Mostrar nuevamente la grilla con la informacin
ingresada
2.
3.
Sistema
Muestra el Mdulo de Administracin
de Usuarios
Muestra unos campos para realizar el filtro por:
Usuario, Documento, Nombre, Apellido
Sistema
Muestra el Mdulo de Administracin
de Usuarios
1.
2.
En la grilla, seleccionar el
usuario al que desea editar la
informacin. Dar clic en Editar.
3.
Sistema
Muestra el Mdulo de Administracin
de Cronogramas
1.
2.
3.
4.
5.
6.
7.
Ninguno
Sistema
1.
2.
3.
4.
5.
6.
7.
2.
Seleccionar Estados
Proyecto.
Sistema
2.
Seleccionar Modalidad
Proyecto.
Sistema
2.
Sistema
2.
Sistema
Solicitar mediante un formulario de acceso, el
usuario y la contrasea.
Validar que la informacin est correcta y
permitir el ingreso del usuario.
1.
Seleccionar el Mdulo de
Proyecto
2.
Sistema
Si no tiene ningn proyecto registrado hasta el
momento, se le mostrar una grilla vaca. De lo
contrario se le listarn todos los proyectos en
los que el estudiante se encuentra
participando.
El sistema muestra un formulario de inscripcin
de proyecto de grado. Muestra los campos
para llenar, otro para subir en anteproyecto y
para registrar alumnos.
Valida la informacin suministrada por el
estudiante y registra el proyecto de grado en el
sistema.
2.
3.
Seleccionar el usuario
previamente creado como
tutor.
Sistema
Muestra un listado de los Proyectos con
estado Pendiente.
Abre otra pantalla donde muestra un listado de
usuarios previamente registrado en la
aplicacin.
El sistema relaciona el Tutor asignado al
proyecto.
Sistema
1.
2.
3.
4.
Sistema
1.
Seleccionar en el Men de
Opciones: Proyectos a Jurado
2.
3.
Seleccionar el usuario
previamente creado como
jurado.
Sistema
1.
2.
3.
Sistema
1.
2.
3.
4.
5.
El estudiante ingresa al
sistema
6.
El estudiante sube el
documento con las
observaciones de los Jurados
7.
El Coordinador ingresa a la
opcin Reporte Estados
2.
3.
4.
Sistema
El sistema muestra todos los Proyectos con
sus respectivos Estados en el momento.