Académique Documents
Professionnel Documents
Culture Documents
Facultad 3
Tutores:
MSc. Henry Ral Gonzlez Brito
MSc. Naryana Linares Pons
La Habana, Cuba
Junio del 2013
Pensamiento
Para que as conste firmo la presente a los ____ das del mes de ______ del ao
________.
____________________ ____________________
____________________
A mi hermanito Dani y mi primito Caleb por alegrarme la vida con sus travesuras.
A mis tutores por ser protagonistas de esta obra, ya que sin su ayuda no hubiera
sido posible la realizacin de este trabajo.
A mis suegros Miguel de Len y Deisy lvarez por sus buenos consejos y apoyo
durante los 5 aos de la carrera.
A mis compaeras de apartamento Dayana (La negrita), Yessika, Leiza (La trola),
Kirenia (La marmota), Meylin y Wendy vila.
A la Revolucin y Fidel.
Resumen
La educacin superior cubana enfrenta el reto de mantener su organizacin y desarrollo
sobre bases cientficas. El perfeccionamiento continuo pone de manifiesto la pertinencia
de la Universidad cubana que se renueva continuamente dada la necesidad creciente de
actualizar y ampliar el conocimiento. El presente Trabajo de Diploma tiene como objetivo
el desarrollo de un sistema informtico para la gestin de los seminarios cientficos que
satisfaga las necesidades de la direccin del Centro de Informatizacin de la Gestin de
Entidades (CEIGE) de la facultad 3. La utilizacin del sistema informatizado significara
una mejora considerable en cuanto a tiempo, planificacin, organizacin, recuperacin de
informacin, permitiendo establecer indicadores y controlar los seminarios cientficos de
los profesionales que se encuentran el proceso de maestra.
Para el desarrollo del sistema se utiliz el marco de trabajo Sauxe y como metodologa de
desarrollo el Proceso Unificado de Desarrollo (RUP). Apoyndose de las herramientas
PostgreSQL como gestor de Base de Datos, Apache como servidor web y el Netbeans
como entorno de desarrollo integrado.
Conclusin ................................................................................................................... 19
ndice de tablas
Tabla 1: Artefactos generados en esta investigacin ....................................................... 21
Tabla 3: Descripcin del caso de uso Gestionar perfil del profesional .............................. 33
ndice de Ilustraciones
Ilustracin 1: Modelo conceptual ...................................................................................... 22
Ilustracin 6: Diagrama de clases del diseo Gestionar cursos de los profesionales ....... 39
Ilustracin 22: Diagrama de clases del anlisis gestionar crditos no lectivos .......... Error!
Marcador no definido.
Ilustracin 23: Diagrama de clases del diseo Gestionar tareas generadas en una
presentacin. ...................................................................... Error! Marcador no definido.
Ilustracin 24: Diagrama de clases del anlisis Gestionar perfil del profesional ........ Error!
Marcador no definido.
La educacin de postgrado est considerada como una de las direcciones principales de trabajo de la
educacin superior en Cuba. Constituye el nivel ms alto del sistema de educacin superior, dirigido a
graduados universitarios y a promover en ellos la educacin a lo largo de la vida. En la educacin de
postgrado concurren uno o ms procesos formativos y de desarrollo, no solo de enseanza aprendizaje,
sino tambin de investigacin, articulados armnicamente en una propuesta docente-educativa.
La actividad de postgrado en la Universidad de las Ciencias Informticas (UCI) atiende las necesidades de
capacitacin, adems potencia el intercambio y brinda amplias posibilidades para estrechar vnculos entre
organismos e instituciones de las Ciencias Informticas. La formacin acadmica de graduados
universitarios se realiza a travs de estudios de especialidades, maestras y doctorados. En la superacin
profesional se organizan diplomados, entrenamientos, cursos cortos y actividades como conferencias,
seminarios, talleres, que posibilitan el estudio, actualizacin y divulgacin de los avances cientficos y
tecnolgicos en la rama de la Informtica (UCI 2011).
1
el seguimiento y control de los profesionales que estn en el proceso de maestra ha tenido deficiencias.
Como ejemplo de ello se tiene que el seguimiento se hace mediante reuniones, afectando la toma de
decisiones del proceso pues se hace muy engorroso y demorado saber las tareas y sealamientos
pendientes de la reunin anterior. La revisin de los documentos para conocer el estado en cuanto a la
superacin profesional de los graduados y la actualizacin de los cursos que van concluyendo los
maestrantes se realiza de forma manual. La actualizacin del cumplimiento de las tareas y sealamientos
por parte de los maestrantes as como la planificacin de las exposiciones se hace va correo electrnico,
lo que provoca que los profesionales a veces vuelvan a pedir la informacin por haberlos borrado o
perdido. Las recomendaciones y sealamientos se hacen de manera personal y sobre todo en el espacio
de los seminarios, ya que esta informacin no est disponible para que pueda ser revisada y se emitan
criterios por personas calificadas. Por ese motivo en el presente curso escolar, la direccin del CEIGE se
ha dado a la tarea de organizar un sistema de seminarios donde se pueda ir evaluando el nivel de avance
del maestrante, tanto a nivel cualitativo como cuantitativo. Teniendo en cuenta esta problemtica se puede
identificar el siguiente problema a resolver: Cmo gestionar la informacin referente a los seminarios
cientficos para que se satisfagan las necesidades de la direccin del CEIGE?
La presente investigacin tiene como objetivo general: Desarrollar un sistema informtico para la gestin
de los seminarios cientficos que satisfaga las necesidades de la direccin del CEIGE. Para alcanzar el
objetivo general se propone como objeto de estudio: El proceso de investigacin-superacin en
entidades de educacin superior, tendiendo como campo de accin: Sistemas informticos para la
gestin de la investigacin-superacin. Se derivan del objetivo general los siguientes objetivos
especficos:
2
Se define como idea a defender: El desarrollo de un sistema informtico para la gestin de los seminarios
cientficos contribuir a satisfacer las necesidades de la direccin del CEIGE.
El trabajo est estructurado en 3 captulos de los que se realiza una breve descripcin a continuacin:
Captulo 1: Contiene la fundamentacin terica del trabajo, donde se describen aspectos importantes
sobre el proceso de gestin de superacin profesional. Se realiza un estudio del estado del arte relativo a
los sistemas informticos que gestionan informacin referente a investigacin-superacin. Adems se
efecta un breve anlisis de los lenguajes de programacin, herramientas, tecnologas y metodologas a
usar en el desarrollo del sistema.
Captulo 2: Se identifican y describen los requisitos funcionales, no funcionales y los casos de uso del
sistema. Se expone el anlisis y diseo de la solucin propuesta lo cual incluye la definicin del modelo de
clases del anlisis, modelo de clases del diseo al igual que los diagramas de colaboracin y el modelo
entidad relacin definidos por la metodologa RUP.
Captulo 3: Muestra cmo va estar estructurada la implementacin del sistema. Adems se explica cules
son las pruebas que se realizan al sistema, contiene los diagramas de componentes, de despliegue y se
valida la solucin.
3
Captulo 1: Fundamentacin Terica
1.1 Introduccin
En este captulo se realiza un estudio sobre los elementos que fundamentan la base terica conceptual de
la gestin de seminarios cientficos para el seguimiento y control de las maestras del CEIGE. Se incluye
una breve descripcin de los lenguajes, las herramientas, tecnologas y metodologa, que son utilizadas
para todo el proceso de modelado de la aplicacin.
Se define postgrado como el ciclo de estudios especializados que se cursa tras la graduacin o
licenciatura e incluye maestras y doctorado. El postgrado suele fomentar las actividades de investigacin
y la actualizacin de los contenidos universitarios, adems de la especializacin del conocimiento (U.net
2013). La maestra proporciona a los graduados universitarios dominio profundo de los mtodos de
investigacin, amplia cultura cientfica y conocimientos avanzados para desarrollar habilidades y modo de
actuacin en el trabajo que ejercer, docente o de investigacin (MES 2007). En la formacin
postgraduada la investigacin tiene un papel fundamental, es la bsqueda o inquisicin de un hecho
desconocido o algo que se quiere investigar. Se caracteriza por la creatividad del acto, la innovacin de
ideas, los mtodos rigurosos utilizados, la validacin o juicio crtico. Una de las formas de dar a conocer
sus resultados es a travs de seminarios cientficos. Estos son presentaciones de ndole cientfica que se
realiza con el fin de difundir conocimientos o desarrollar investigaciones, en la que participan alrededor de
50 personas, donde los principales protagonistas son los maestrantes, los cuales discuten sus trabajos
frente a un tribunal y un grupo de participantes (Chamorra 2008). Para que los seminarios tengan la
calidad requerida, se hace necesario planificarlos de forma tal que se organicen en grupos, informando
hora, fecha y lugar donde se realizar. Adems de registrar de cada uno de los participantes el nombre
con sus apellidos y su condicin (Tribunal, Ponente o Participante).
4
1.3 Estado del arte
Los Sistemas de Informacin Cientfica (SIC) tambin conocidos por su denominacin inglesa de Current
Research Information Systems (CRIS), son la solucin que se est adoptando en la mayor parte de
universidades para tener controlada la actividad de sus investigadores (Cabezas 2011).
El estudio realizado de estos sistemas permiti ver la forma en que se registra, almacena, recuperan los
datos relacionados a la gestin de informacin cientfica, sirviendo como referencia y brindando elementos
importantes a la presente investigacin.
Luego de un estudio realizado para encontrar un sistema que tuviera funcionalidades relacionadas con la
gestin de la informacin de los seminarios cientficos y aportara elementos a esta investigacin, no se
encontr en la literatura consultada un sistema que cumpliera con estas caractersticas. Al no encontrar un
5
sistema se estudiaron diferentes sitios web de algunas universidades tales como: El Centro de Estudios
de Migraciones Internacionales (CEMI) (http://www.uh.cu/centros/cemi/eventos-cientificos/) perteneciente
a la Universidad de la Habana. En la seccin dedicada a eventos cientficos se observ que slo se brinda
informacin acerca de las convocatorias de los eventos de este centro y su programa. El programa
consiste en la informacin sobre la hora, el lugar donde se realizar, la fecha en que se efectuar y las
ponencias a presentarse. El principal problema que presenta este sitio es que es completamente de
carcter informativo. Su objetivo se basa fundamentalmente en la promocin de los eventos que se
realizan, as como brindar informacin para la participacin de los personas en los mismos, por tanto no
aporta elementos de importancia a esta investigacin.
Otros de los sitios visitados fueron el del Instituto de Salud Global de Barcelona y el de la Ciudad
Universitaria Jos Antonio Echeverra. En estos se pudo constatar que al igual que el anterior, tienen un
carcter puramente informativo, por lo que no ofrece elementos a la investigacin. Despus de haber
estudiado los sitios de las universidades antes mencionadas, no se quiso dejar pasar por alto a la UCI,
donde se encontr en el sitio de la facultad 3 una seccin dedicada a brindar informacin sobre los
eventos de investigacin y postgrado. Este tampoco aporta elementos a la investigacin, ya que tiene un
carcter informativo.
6
1.4.1 Impacto de la Gestin del Conocimiento en los resultados cientficos de los equipos de
proyectos informticos
Cuando en una empresa se habla de hacer Gestin del Conocimiento (GC), se est haciendo referencia a
implementar procesos, tcnicas y herramientas. Combinados ofrecen una cultura organizacional que
ayuda a minimizar los actuales problemas de comunicacin y gestin informacional existentes. El anlisis
que se propone a continuacin, tiene como objetivo estudiar la relacin que existe entre la GC y procesos
tan medulares para una organizacin como lo es el desarrollo de equipos de proyecto (Pons 2012).
Tener un lugar donde guardar y consultar toda la informacin referente a los seminarios cientficos es de
gran importancia para una institucin donde se realicen este tipo de eventos. En ocasiones estas
empresas desarrollan aplicaciones que ayudan a dicha gestin. Una de las vas ms factibles lo
constituyen los marcos de trabajo, que entre sus ventajas tienen que promueven una estructura estndar
para el uso de las buenas prcticas de la programacin.
7
1.5 Marco de trabajo Sauxe
Un marco de trabajo proporciona estructura al cdigo fuente, forzando al desarrollador a crear cdigo ms
legible y ms fcil de mantener. Este facilita la programacin de aplicaciones, ya que encapsula
operaciones complejas en instrucciones sencillas. El desarrollo de la solucin a peticin del cliente se
realizar utilizando el marco de trabajo Sauxe. Este contiene un conjunto de componentes reutilizables
que provee la estructura genrica y el comportamiento para una familia de abstracciones, logrando una
mayor estandarizacin, flexibilidad, integracin y agilidad en el proceso de desarrollo (Gmez Baryolo
2011). Sauxe es la unin de Zend, la librera Extjs que muestra al usuario una interfaz amigable y en la
capa de acceso a datos el Lenguaje de Consulta de Datos (DQL) que implementa Doctrine.
Es un marco de trabajo para el desarrollo de aplicaciones y servicios web con PHP. Brinda soluciones
para construir sitios web modernos, robustos y seguros. Est formado por una serie de mtodos estticos
y componentes que usarn estos mtodos. Como caractersticas fundamentales de Zend se tienen:
ExtJS 2.2
Es una librera Javascript utilizada para la creacin y el desarrollo de aplicaciones web dinmicas. Su
potencia radica en la rica coleccin de componentes para el diseo de interfaces de usuarios del lado del
cliente haciendo uso extensivo de Ajax. ExtJS permite que con pocas lneas de cdigo sea posible
realizar interfaces amigables para los usuarios. La comunicacin asncrona permite el intercambio de
informacin con el servidor sin necesidad de pedirle una accin al usuario. De alto rendimiento, es
compatible con la mayora de los navegadores (Internet Explorer, Netscape, Opera, Mozilla Firefox) que
permiten crear pginas e interfaces web dinmicas.
8
Doctrine 1.0
Doctrine es un potente y completo sistema Mapeador de Objeto Relacional (ORM) para PHP 5.2.3 + que
incorpora una Capa de Abstraccin a Base de Datos (DBL). Una de sus principales caractersticas es la
opcin de escribir las consultas de base de datos en un objeto con una propiedad orientada al dialecto
SQL llamada Doctrine Query Language (DQL) (Wage 2009). Entre otros elementos se tiene la posibilidad
de exportar una base de datos existente a sus clases correspondientes y tambin a la inversa, es decir
convertir clases (convenientemente creadas siguiendo las pautas del ORM) a tablas de una base de
datos.
PHP 5.4
Es un lenguaje script de propsito general, adecuado para desarrollos web que puede ser embebido en
HTML. Contienen en gran parte sintaxis de lenguajes conocidos como Java, Perl, C. Para su
funcionamiento necesita tener un servidor web con el intrprete de PHP. La meta del lenguaje es permitir
rpidamente a los desarrolladores la generacin de pginas dinmicas (php.net 2012). Con PHP se puede
realizar el procesamiento de informacin en formularios, foros de discusin entre otras. Dentro de las
ventajas que posee se encuentran:
9
CSS
Las Hojas de Estilo en Cascada (Cascading Style Sheets conocido como CSS, por sus siglas en ingls)
son un lenguaje formal usado para definir la presentacin de un documento estructurado, escrito en HTML
o XML (Lenguaje de Marcas Extensible). Este estilo propone las ventajas:
Los navegadores permiten a los usuarios especificar su propia hoja de estilo local que ser
aplicada a un sitio web, con lo que aumenta considerablemente la accesibilidad.
Una pgina puede disponer de diferentes hojas de estilo segn el dispositivo que la muestre o
incluso a eleccin del usuario.
El documento HTML en s mismo es ms claro de entender y se consigue reducir
considerablemente su tamao (siempre y cuando no se utilice estilo en lnea) (Lpez 2010).
Un sistema gestor de base de datos (SGBD) se puede definir como el conjunto de programas que
administran y gestionan la informacin contenida en una base de datos. Las caractersticas de un Sistema
Gestor de Base de Datos SGBD son:
Abstraccin de la informacin. Los SGBD ahorran a los usuarios detalles acerca del
almacenamiento fsico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de
archivos, este hecho se hace transparente al usuario. As, se definen varios niveles de abstraccin.
Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema
(fsico o lgico) de una base de datos sin tener que realizar cambios en las aplicaciones que se
sirven de ella.
Redundancia mnima. Un buen diseo de una base de datos lograr evitar la aparicin de
informacin repetida o redundante. De entrada, lo ideal es lograr una redundancia nula; no
obstante, en algunos casos la complejidad de los clculos hace necesaria la aparicin de
redundancias.
Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula, ser
necesario vigilar que aquella informacin que aparece repetida se actualice de forma coherente, es
decir, que todos los datos repetidos se actualicen de forma simultnea.
10
Seguridad. La informacin almacenada en una base de datos puede llegar a tener un gran valor.
Los SGBD deben garantizar que esta informacin se encuentra segura frente a usuarios
malintencionados, que intenten leer informacin privilegiada; frente a ataques que deseen
manipular o destruir la informacin; o simplemente ante las torpezas de algn usuario autorizado
pero despistado. Normalmente, los SGBD disponen de un complejo sistema de permisos a
usuarios y grupos de usuarios, que permiten otorgar diversas categoras de permisos.
Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los datos
almacenados. Es decir, se trata de proteger los datos ante fallos de hardware, datos introducidos
por usuarios descuidados, o cualquier otra circunstancia capaz de corromper la informacin
almacenada.
Respaldo y recuperacin. Los SGBD deben proporcionar una forma eficiente de realizar copias de
respaldo de la informacin almacenada en ellos, y de restaurar a partir de estas copias los datos
que se hayan podido perder.
Control de la concurrencia. En la mayora de entornos (excepto quizs el domstico), lo ms
habitual es que sean muchas las personas que acceden a una base de datos, bien para recuperar
informacin, bien para almacenarla. Y es tambin frecuente que dichos accesos se realicen de
forma simultnea. As pues, un SGBD debe controlar este acceso concurrente a la informacin,
que podra derivar en inconsistencias (Hechavarra 2009).
PostgreSQL 8.4
El gestor de base de datos PostgreSQL es un sistema muy potente de cdigo abierto. Soporta gran parte
del estndar SQL y en algunos aspectos, est diseado para que sea extensible por los usuarios. Debido
a la licencia liberal BSD (Berkeley Software Distribution por sus siglas en ingls). PostgreSQL puede ser
usado, modificado y distribuido por cualquiera de forma gratuita para cualquier propsito, ya sea privado,
comercial o acadmico (PostgreSQL 1996-2013). Maneja grandes cantidades de informacin, soporta alta
concurrencia, o sea, que a la misma vez que un usuario escribe en una tabla otros pueden estar leyendo
de ella sin dificultad. Adems se pueden definir consultas anidadas, vistas, crear funciones, no slo en el
lenguaje natural SQL. Es multiplataforma, presenta una estabilidad muy alta, gran seguridad de los datos,
soporta la rplica y procedimientos almacenados.
11
Algunas de las ventajas que posee este gestor son:
Apache es un programa de servidor web de cdigo libre, robusto, cuya implementacin se ha realizado y
se sigue realizando de forma colaborativa, con prestaciones, caractersticas y funcionalidades
equivalentes a las de cualquier servidor comercial (cibernetia 2010). Algunas de sus caractersticas:
12
El Entorno de Desarrollo Integrado Netbeans es una herramienta libre y gratuita sin restricciones de uso,
licenciada bajo la CDDL (Common Development and Distribution License, por sus siglas en ingls), que en
espaol sera Desarrollo Comn y Licencia de Distribucin. La herramienta es utilizada por los
programadores para escribir, compilar, depurar y ejecutar programas. Permite el desarrollo de
aplicaciones web. Est escrito en Java pero puede soportar cualquier otro lenguaje de programacin.
NetBeans est apoyado por una comunidad de desarrolladores y ofrece una amplia documentacin y
recursos de capacitacin, as como una gran cantidad de plugins (NetBeans 2012).
Caractersticas:
Visual Paradigm para UML es una herramienta CASE (por sus siglas en ingls Computer Aided Software
Engineering) en espaol Ingeniera de Software Asistida por Ordenador que soporta el ciclo de vida
completo del desarrollo de software. Permite representar todos los tipos de diagramas de clases, cdigo
inverso, generar cdigo desde diagramas y generar documentacin (Alvarez 2011). Entre sus principales
caractersticas estn:
Diseo centrado en casos de uso y enfocado al negocio que genera un software de mayor calidad.
Entorno de creacin de diagramas para UML 2.0.
Disponibilidad de integrarse en los principales IDEs.
Dispone de mltiples versiones dependiendo de la necesidad.
Posee un modelo y un cdigo que permanece sincronizado en todo el ciclo de desarrollo.
Disponibilidad en mltiples plataformas.
13
Mejorar la productividad en el desarrollo y mantenimiento del software.
Aumentar la calidad del software.
Mejorar el tiempo, costo de desarrollo y mantenimiento de los sistemas informticos.
Mejorar la planificacin de un proyecto (Verdecia 2010).
Se ha concebido para que sea simple y funcional. Agrupa todas las funciones necesarias para navegar,
con la posibilidad de aadir extensiones, es decir, programas que le dan nuevas funcionalidades a Mozilla
Firefox. Se puede navegar, realizar bsquedas en internet, enviar archivos y leer el contenido de las
pginas web de manera simple y eficaz (Villenueve 2005).
En esta tesis se asume el concepto de arquitectura propuesto por Verdecia, el cul plantea que la
arquitectura de software, denominada adems como arquitectura lgica, consiste en un conjunto de
patrones y abstracciones coherentes que proporcionan el marco de referencia necesario para guiar la
construccin del software para un sistema de informacin. Establece los fundamentos para que analistas,
diseadores, programadores, entre otros, trabajen en una lnea comn que permita alcanzar los objetivos
del sistema de informacin, cubriendo todas las necesidades. La arquitectura de software, tiene que ver
con el diseo y la implementacin de estructuras de software de alto nivel (Verdecia 2010). Es el resultado
de ensamblar un cierto nmero de elementos arquitectnicos de forma adecuada para satisfacer la mayor
funcionalidad y requisitos de un sistema. Lo habitual es adoptar una arquitectura conocida en funcin de
sus ventajas e inconvenientes para cada caso en concreto.
El MVC es un patrn de arquitectura de software que separa los datos de una aplicacin, la interfaz de
usuario, y la lgica de control en tres componentes distintos.
El Modelo representa la informacin con la que trabaja la aplicacin, es decir, su lgica de negocio.
La Vista transforma el modelo en una pgina web que permite al usuario interactuar con ella.
14
El Controlador se encarga de procesar las interacciones del usuario y realiza los cambios
apropiados en el modelo o en la vista.
La arquitectura MVC separa la lgica de negocio (el modelo) y la presentacin (la vista) por lo que se
consigue un mantenimiento ms sencillo de las aplicaciones. El controlador se encarga de aislar al modelo
y a la vista de los detalles del protocolo utilizado para las peticiones (HTTP, consola de comandos, email,
etc.). El modelo se encarga de la abstraccin de la lgica relacionada con los datos, haciendo que la vista
y las acciones sean independientes de, por ejemplo, el tipo de gestor de bases de datos utilizado por la
aplicacin (Potencier 2007).
Al sistema estar desarrollado con el marco de trabajo Sauxe, la arquitectura que implementa es Modelo
Vista Controlador. En la capa de presentacin usa ExtJS en su versin 2.2, en el controlador Zend en la
versin 1.7 y en el modelo Doctrine versin 1.0.
Todo desarrollo de software es riesgoso y difcil de controlar, de ah la importancia de contar con una
metodologa que indique paso a paso las actividades que deben desarrollarse, las personas involucradas
en la realizacin de las mismas, as como el papel que desempean estas en aras de lograr un proceso
de software exitoso. Las metodologas de desarrollo de software se pueden clasificar en dos grandes
grupos:
15
1.8.1 Metodologa RUP
La metodologa RUP sus siglas vienen de Rational Unified Process (Proceso Unificado de Desarrollo)
propone un conjunto de actividades necesarias para transformar los requisitos de un usuario en un
sistema software. Est basado en componentes, lo cual quiere decir que el sistema software en
construccin est formado por componentes software interconectados a travs de interfaces bien
definidas. Esta metodologa divide en 4 fases el desarrollo del software:
Elaboracin: Se seleccionan los casos de uso que permiten definir la arquitectura base del sistema y se
desarrollaran en esta fase, se realiza la especificacin de los casos de uso seleccionados y el primer
anlisis del dominio del problema, se disea la solucin preliminar.
Construccin: La finalidad principal de esta fase es alcanzar la capacidad operacional del producto de
forma incremental a travs de las sucesivas iteraciones. Durante esta fase todos los componentes y
requisitos deben ser implementados, integrados y probados en su totalidad, obteniendo una versin
aceptable del producto.
El Proceso Unificado es un marco de desarrollo de software que se caracteriza por estar dirigido por casos
de uso, centrado en la arquitectura y por ser iterativo e incremental (Larman 2001).
1. Iterativo e Incremental.
RUP propone que cada fase se desarrolle en iteraciones. Una iteracin involucra actividades de todos los
flujos de trabajo, aunque desarrolla fundamentalmente algunos ms que otros. Por ejemplo, una iteracin
de elaboracin centra su atencin en el anlisis y diseo, aunque refina los requerimientos y obtiene un
producto con un determinado nivel, pero que ir creciendo incrementalmente en cada iteracin.
16
Los casos de uso se utilizan para capturar los requisitos funcionales y para definir los contenidos de las
iteraciones. La idea es que cada iteracin tome un conjunto de casos de uso o escenarios y desarrolle
todo el camino a travs de las distintas disciplinas: diseo, implementacin, prueba. Basndose en los
casos de usos los desarrolladores crean una serie de modelos de diseo e implementacin que llevan a
cabo los casos de usos. De este modo los casos de uso no solo inician el proceso de desarrollo sino que
le proporcionan un hilo conductor.
3. Centrado en la arquitectura.
La arquitectura determina la lnea base y los elementos de software estructurales a partir de los elementos
de la arquitectura de negocio. Interviene en la gestin de cambios y disea la evolucin e integracin del
producto. La arquitectura orienta las prioridades en la produccin y resuelve las necesidades tecnolgicas
y de soporte para el desarrollo. Asume que no existe un modelo nico que cubra todos los aspectos del
sistema. Por dicho motivo existen mltiples modelos y vistas que definen la arquitectura de software de un
sistema. Constituye adems, una propuesta de proceso para el desarrollo de software orientado a objeto,
utilizando UML (del ingls Unified Model Language), para describir todo el proceso, basndose en
componentes. Este lenguaje es estndar, con l se puede visualizar, especificar, construir y documentar
los artefactos de un sistema (Rumbaugh 2000).
La Programacin Extrema (XP por sus siglas en ingls) se ha convertido en la metodologa gil ms
popular. XP consiste en una programacin rpida o extrema, cuyo rasgo caracterstico es tener como
parte del equipo de desarrollo al cliente que es el usuario final, pues es uno de los requisitos para llegar al
xito del proyecto. Esta se basa en realimentacin continua entre el cliente y el equipo de desarrollo,
comunicacin fluida entre todos los participantes y simplicidad en las soluciones implementadas. El ciclo
de vida ideal de XP est compuesto por seis fases que permiten todo el proceso de desarrollo en un
tiempo record, estas fases son las siguientes:
Exploracin.
Planificacin de la entrega.
17
Iteraciones.
Produccin.
Mantenimiento.
Cierre del Proyecto (Acua 2009).
Luego de haber realizado un estudio entre estas dos metodologas XP y RUP, se hace necesario analizar
el modelo de desarrollo del CEIGE debido a que esta es la metodologa que el centro usa para el
desarrollo de sus productos.
Inicio o Estudio preliminar: Durante el inicio del proyecto se llevan a cabo las actividades relacionadas con
la planeacin del proyecto a un alto nivel, la evaluacin de la factibilidad del proyecto y el registro de este.
En esta fase se realiza un estudio inicial de la organizacin cliente que permite obtener informacin
fundamental acerca del alcance del proyecto, realizar estimaciones de tiempo, esfuerzo y costo, y decidir
si se ejecuta o no el proyecto.
Desarrollo: En esta fase se ejecutan las actividades requeridas para desarrollar el software, incluyendo el
ajuste de los planes del proyecto considerando los requisitos y la arquitectura. Durante el desarrollo se
refinan los requisitos, se elaboran la arquitectura y el diseo, se implementa y se libera el producto. En
esta fase se ejecutan las disciplinas Modelado de negocio, Requisitos, Anlisis y Diseo, Implementacin,
Pruebas internas y Pruebas de liberacin (Obregn 2012).
Este modelo est basado en procesos y no genera ningn artefacto relacionado con los diagramas de
casos de uso. Para esta investigacin se hace necesario que queden plasmados los actores que
intervienen en el sistema, as como los casos de usos y la descripcin detallada de estos.
Para el desarrollo de este trabajo se decidi utilizar una de las metodologas pesadas debido a que estn
basadas en normas provenientes de estndares seguidos por el entorno de desarrollo. El proceso es
mucho ms controlado, con diferentes polticas y normas, mientras que las giles estn basadas en
18
heursticas que provienen de prcticas de produccin de cdigo y procesos menos controlados y con poca
documentacin. El modelo de desarrollo de software que propone el CEIGE a pesar de estar bien
documentado en cada una de sus fases, al estar orientado a procesos no genera ningn artefacto que
tenga que ver con casos de uso.
La metodologa seleccionada fue RUP, donde el ciclo de vida est dirigido por casos de uso, describiendo
lo que se espera del software y reflejando lo que los usuarios requieren y desean, representndose a
travs de los requisitos. Los casos de uso guan todo el proceso de desarrollo, donde la arquitectura del
software es fundamental y muestra una visin comn del sistema. Adems permite que est bien
documentado todo el proceso.
Conclusin
En este captulo se realiz un profundo estudio sobre las tendencias actuales del desarrollo profesional; a
travs de conceptos se fundamenta los principios de este trabajo. Tambin se visitaron diferentes sitios
web para analizar la forma en que gestionan la informacin de los seminarios cientficos, pero no se
encontr ninguno que aportara elementos concretos para la presente investigacin. Adems se realiz un
anlisis completo de la tecnologa a utilizar a lo largo del desarrollo del sistema propuesto, en este caso
Sauxe. Las herramientas seleccionadas para el desarrollo del sistema fueron: como entorno de desarrollo
integrado el Netbeans, como gestor de bases de datos PostgreSQL, como servidor web Apache y el
Visual Paradigm para el modelado, debido a que soporta el ciclo de vida completo del desarrollo de
software.
19
Captulo 2: Anlisis y Diseo de la solucin
2.1 Introduccin
En este captulo se presenta la propuesta del software a desarrollar, especificando los requisitos
funcionales y no funcionales. Tambin se muestran las interfaces de usuarios y diagramas clases del
sistema propuesto. Adems de los artefactos que se generan en esta etapa, aplicando la metodologa
RUP y haciendo uso de la herramienta Visual Paradigm.
Se pretende desarrollar un sistema que permita la gestin de los seminarios cientficos del CEIGE para
lograr llevar un seguimiento de los profesionales que estn en el proceso de maestra. Este sistema
permitir la gestin de los profesionales por grupos, la planificacin para su presentacin en el
seminario, as como las tareas que se le orientan, conocer de los cursos que van concluyendo
pertenecientes a un programa de maestra determinado, gestionar los crditos no lectivos, entre otras
funcionalidades. El sistema contar con dos tipos de roles principales, los cuales tendrn acceso solo a
las funcionalidades que les correspondan.
Los artefactos son documentos que se generan durante las diferentes fases del desarrollo de un
proyecto de software. En esta investigacin se consideran de suma importancia que se generen los que
a continuacin se relacionan para cada una de las fases que propone la metodologa RUP:
RUP UML
Fase Actividad Entregable
Modelamiento del negocio Modelo conceptual
Inicio
a
b
o
n
c
r
l
20
Anlisis y diseo Modelo del anlisis Diagrama de secuencia
Con el objetivo de entender el funcionamiento del proceso de gestin de los seminarios cientficos, a
continuacin se establecen relaciones entre los conceptos ms importantes.
21
Ilustracin 1: Modelo conceptual
El proceso de captura de requisitos suele ser uno de los pasos ms difciles en la ingeniera de
software, debido a que una mala captura de ellos conllevara al desarrollo de un sistema que no
responde a las necesidades del cliente. La tcnica utilizada en esta investigacin fue la entrevista, luego
de varias reuniones con el cliente se comprendi y se obtuvieron las funcionalidades que el sistema
deba cumplir. En cuanto a la definicin de los requisitos se us la tcnica de los escenarios que
22
consiste en describir las caractersticas del sistema a desarrollar mediante una secuencia de pasos. Se
realiz de forma textual encaminada hacia una representacin grfica en forma de diagramas de flujo.
El anlisis de los escenarios de una forma u otra ofrecieron informacin importante sobre las
necesidades funcionales del sistema.
RF 2.4 Mostrar los datos del perfil de todos los profesionales existentes.
23
RF 4.3 Brindar un reporte de las tareas cumplidas, incumplidas, pendientes y rechazadas.
24
RF 8 Gestionar lnea temtica
25
RF 11.3 Mostrar los estados de tareas existentes.
Requisitos de Software
Para el cliente:
Para el servidor:
26
Un servidor de base de datos PostgreSQL 8.3 - 9.4.
Requisitos de Hardware
Para el servidor:
Para el cliente:
Requisitos mnimos: Procesador Pentium III a 1GHz con 256Mb de memoria RAM.
Tarjeta de red.
Requisitos de Seguridad
Se establecen diferentes niveles de acceso (roles) para los diferentes usuarios garantizando que
la informacin se muestre las funcionalidades para las cuales est autorizado.
Los requisitos una vez definidos necesitan ser validados. La validacin de requisitos tiene como misin
demostrar que la definicin de los requisitos define realmente el sistema que el usuario necesita o el
cliente desea. En esta investigacin se us la tcnica de prototipos de interfaz para validar los
requisitos. Ver anexo 1: Prototipos de interfaz de usuario.
27
Administrador Usuario con privilegios para gestionar toda la informacin referente a
los seminarios cientficos, la gestin de usuarios y la asignacin de
permisos.
Subdirector de Investigacin y Usuario que gestiona la planificacin de los seminarios cientficos,
Postgrado los cursos optativos y obligatorios de los profesionales, la creacin
de los grupos de seminarios y los crditos no lectivos.
Profesional Usuario que accede al sistema para ver la informacin de las
planificaciones, cursos, y tareas que les han sido asignadas.
28
Ilustracin 3: Principales casos de uso
Los casos de uso del sistema son procesos que responden a las funcionalidades definidas en los
requisitos funcionales. En las tablas siguientes se realiza una breve descripcin de los casos de uso del
sistema.
29
funcionalidades:
- Adicionar Profesional
- Modificar Profesional
- Eliminar Profesional
30
Prototipo de interfaz
Flujos Alternos
Accin del Actor Respuesta del Sistema
8.1- Presiona el botn Cancelar. Ir al flujo normal 10.1 Cierra el formulario. Ir al flujo normal 5
4
Seccin: Modificar profesional
Flujo normal de eventos
Accin del actor Respuesta del sistema
7- Muestra los profesionales que han sido creados
8- Selecciona el profesional al que desea 9- Muestra los siguientes datos para modificar
modificar los datos y escoge la opcin Modificar el profesional:
Profesional.
- Nombre y apellidos
- Tutor(es)
- Crditos OP
- Crditos OB
- Grado Cientfico
- Tema de investigacin
- Resumen del tema de investigacin
- Lnea temtica
- Programa de maestra
- Grupo
31
10- Modifica los datos que desea y escoge la 11- El sistema verifica que al modificar los
opcin aceptar. datos de del profesional no existan
campos vacos o datos incorrectos.
Muestra el mensaje: Se ha modificado el
profesional correctamente.
Prototipo de interfaz
Flujos Alternos
Accin del Actor Respuesta del Sistema
10.1- Presiona el botn Cancelar. Ir al flujo normal 11-1 Cierra el formulario.
5
Seccin: Eliminar profesional
Flujo normal de eventos
Accin del actor Respuesta del sistema
7- Muestra los profesionales que han sido
creados.
8- Selecciona el profesional que desea eliminar. 9- El sistema muestra el siguiente mensaje de
confirmacin: Seguro que desea eliminar el
profesional seleccionado?
Prototipo de interfaz
32
Flujos Alternos
Accin del Actor Respuesta del Sistema
8.1- Presiona el botn S. 9.1 Elimina el profesional y muestra el mensaje
Se ha eliminado el profesional seleccionado
Cierra el mensaje. Ir al flujo normal 5.
8.2 Presiona el botn No. Ir al flujo normal 5.
Adicionar Grupo
Modificar Grupo
Eliminar Grupo
33
5. Selecciona una de las funcionalidades. 6. Si el actor selecciona:
Prototipos de interfaz
Flujos Alternos
Accin del Actor Respuesta del Sistema
8.1- Presiona el botn Cancelar. Ir al flujo normal 10.1 Cierra el formulario. Ir al flujo normal 5.
4.
Seccin: Modificar profesional
34
Flujo normal de eventos
Accin del actor Respuesta del sistema
7- Muestra los grupos que han sido creados
8- Selecciona el grupo al que desea modificar los 9- Muestra los siguientes datos para modificar
datos y escoge la opcin Modificar Grupo. el grupo:
- Nombre
- Descripcin
12- Modifica los datos que desea y oprime el 13- Verifica que al modificar los datos del
botn aceptar. grupo no existan campos vacos o datos
incorrectos.
Prototipo de interfaz
Flujos Alternos
Accin del Actor Respuesta del Sistema
14.1- Presiona el botn Cancelar. Ir al flujo normal 15-1 Cierra el formulario.
5.
Seccin: Eliminar grupo
Flujo normal de eventos
Accin del actor Respuesta del sistema
7- Muestra los grupos que han sido creados.
35
8- Selecciona el grupo que desea eliminar. 9- El sistema muestra el siguiente mensaje de
confirmacin: Seguro que desea eliminar el
grupo seleccionado?
Prototipo de interfaz
Flujos Alternos
Accin del Actor Respuesta del Sistema
8.1- Presiona el botn S. 9.1 Elimina el grupo con los profesionales que
tiene y muestra el mensaje Se ha eliminado el
grupo seleccionado.
8.2 Presiona el botn No. Ir al flujo normal 5.
Ver anexo 2: Donde se muestran otras de las descripciones de los casos de usos del sistema.
El modelo de anlisis ofrece una especificacin ms precisa de los requisitos, puede ser considerado
como una primera aproximacin al modelo de diseo que se describe utilizando el lenguaje de los
desarrolladores y estructura los requisitos de modo que facilita su comprensin, preparacin,
modificacin y mantenimiento.
La realizacin de casos de uso del anlisis describe cmo se lleva a cabo y se ejecuta un caso de uso
determinado en trminos de las clases del anlisis y de sus objetos en interaccin. Para ello RUP
propone que para cada caso de uso:
36
El diagrama de clase del anlisis es un artefacto donde se adjuntan los diagramas de clases a las
realizaciones de casos de uso, mostrando sus clases participantes y sus relaciones.
37
Ilustracin 5: Diagrama de clases del anlisis gestionar planificacin
Ver anexo 3: Donde se muestran otros diagramas de clases del anlisis del sistema.
Un diagrama de clases muestra un conjunto de clases, interfaces y colaboraciones del sistema con sus
relaciones estructurales dando as una vista del diseo esttico. En el caso de las aplicaciones web, el
diagrama de clases representa las colaboraciones que ocurren entre las pginas, donde cada pgina
lgica puede ser representada como una clase. Los diagramas de clases del diseo son utilizados con
el objetivo de representar las relaciones que existen entre los distintos tipos de clases.
38
Ilustracin 6: Diagrama de clases del diseo Gestionar cursos de los profesionales
Ver anexo 4: Donde se muestran otros de los diagramas de clases del diseo del sistema.
El modelo de diseo describe la realizacin fsica de los casos de uso centrndose en los requisitos
funcionales, no funcionales y otras restricciones que tienen impacto en el sistema. Adems sirve de
abstraccin de la implementacin y como entrada fundamental de sus actividades.
Un patrn es una solucin probada a un problema comn, el cual es muy recomendado usar en el
diseo de aplicaciones de software. Describen la estructura comnmente recurrente de los
componentes en comunicacin, que resuelve un problema general de diseo en un contexto particular.
Los mismos se aplican durante la fase de diseo detallado para solucionar problemas de claridad del
39
diseo. Con su uso, se pretende establecer un lenguaje comn entre los programadores, contribuir a la
reutilizacin, ahorrar tiempo en la implementacin y obtener un producto con calidad (Tedeschi 2012).
Los patrones GRASP (General Responsibility Assignment Software Patterns) es sus siglas llevadas al
espaol corresponde a los Patrones Generales de Software de Asignacin de Responsabilidades,
describen los principios fundamentales de la asignacin de responsabilidades a objetos, expresados en
forma de patrones (Larman 2001). A continuacin se describen los patrones bsicos de asignacin de
responsabilidades utilizados en el desarrollo del sistema:
Experto: Un marco de trabajo como SAUXE est organizado de forma tal que cada clase realice las
funcionalidades que les toca. Ejemplo de ello son las clases modelos ProfesionalModel, GrupoModel,
TareaModel y CursosModel, que son las encargadas de insertar, modificar y eliminar la informacin
correspondiente a las sus respectivas clases entidades.
Creador: La clase controladora es la encargada de instanciar en cada uno de los objetos del modelo
que ser utilizado para almacenar la informacin para presentarla a la vista posteriormente. Ejemplo de
ello es insertarTareaAction, insertarCursoAction, insertarCreditoNLAction, todos pertenecientes a
la clase ProfesionalController.
40
Ilustracin 8: Ejemplo de patrn creador
41
2.8 Diagramas de secuencia.
Los diagramas de secuencia se utilizan para modelar los aspectos dinmicos de un sistema, lo que
conlleva modelar instancias concretas o prototpicas de clases interfaces, componentes y nodos, junto
con los mensajes enviados entre ellos, todo en el escenario que ilustra un comportamiento determinado.
En el contexto de las clases se describe la forma en que grupos de objetos colaboran para proveer un
comportamiento. Mientras que un diagrama de casos de uso presenta una visin externa del sistema, la
funcionalidad de dichos casos de uso se recoge como un flujo de eventos utilizando para ello
interacciones entre sociedades de objetos (Alvarez 2011).
42
Ilustracin 11: Diagrama de secuencia modificar grupo
43
Ilustracin 12: Diagrama de secuencia eliminar grupo
Ver anexo 5: Donde se muestran otros de los diagramas de secuencia del sistema.
El modelo entidad relacin representa la estructura que debe tener la base de datos para almacenar la
informacin del sistema. El modelo propuesto cuenta con 14 tablas, de ellas 8 son de datos y 6 son
nomencladores.
44
Profesional: Es la encargada de guardar los datos de los profesionales, la misma se relaciona
con las tablas, progama_maestria, lnea_tematica, grado_cientifico y grupo, es la tabla de mayor
importancia del sistema ya que es el centro del mismo.
Planificacin: En ella se guardan los datos referentes a las planificaciones de los profesionales
organizados por grupos, la misma se relaciona con las tablas tarea y grupo.
Planificacion_Profesional: Surge de una relacin de muchos a muchos entre las tablas
profesional y planificacin, en ella se guardan los datos referentes a la asociacin de un
profesional a una planificacin.
Tarea: En esta tabla se guarda la informacin referente a las tareas que se generan en una
presentacin, se relaciona con la tabla planificacin.
Grupo: En esta tabla se guarda la informacin referente a los grupos, se relaciona con la tabla
profesional.
Creditos_No_Lectivos: En esta tabla se guarda la informacin referente a los crditos no lectivos,
se relaciona con la tabla profesional.
Curso: En esta tabla se guarda la informacin referente a los cursos, se relaciona con la tabla
programa_maestria y profesional_curso.
Profesional_Curso: Surge de una relacin de muchos a muchos entre las tablas profesional y
curso, en ella se guardan los datos referentes a la asociacin de un profesional a un curso.
Programa_Maestria: Es un nomenclador esttico que guarda el nombre de los programas de
maestras de un profesional, la misma se relaciona con la tabla profesional.
Linea_Tematica: Es un nomenclador esttico que guarda el nombre de las lneas temticas de
un profesional, la misma se relaciona con la tabla profesional.
Grado_Cientifico: Es un nomenclador esttico que guarda los grados cientficos de un
profesional, la misma se relaciona con la tabla profesional.
Tipo_Tarea: Es un nomenclador esttico que guarda los tipos de tareas, la misma se relaciona
con la tabla tarea.
Estado_Tarea: Es un nomenclador esttico que guarda los estados de las tareas, la misma se
relaciona con la tabla tarea.
Condicin: Es un nomenclador esttico que guarda la condicin con la que un profesional puede
ir a un seminarios cientfico, la misma se relaciona con la tabla planificacion_profesional.
45
Ilustracin 13: Diagrama Entidad Relacin
La mtrica concebida como instrumento para evaluar la calidad del diseo y su relacin con los atributos
de calidad fue Tamao Operacional de Clase (TOC). Los atributos que evala son: Responsabilidad,
Complejidad de implementacin y la Reutilizacin, existiendo una relacin directa con los dos primeros
e inversa con el ltimo.
46
Complejidad de Un aumento del TOC implica un aumento de la complejidad de implementacin
implementacin de la clase.
Reutilizacin Un aumento del TOC implica una disminucin en el grado de reutilizacin de la
clase.
Cantidad de
No Clase Procedimientos Responsabilidad Complejidad Reutilizacin
1 GrupoController 16 Media Media Media
2 ProfesionalController 25 Alta Alta Baja
3 PlanificacionController 14 Media Media Media
4 InformacionController 9 Media Media Media
5 NomencladorController 37 Alta Alta Baja
6 ProfesionalModel 4 Baja Baja Alta
7 PlanificacionModel 4 Baja Baja Alta
8 GrupoModel 4 Baja Baja Alta
9 CreditosNoLectivosModel 4 Baja Baja Alta
10 CursoModelModel 4 Baja Baja Alta
11 EstadoTareaModel 4 Baja Baja Alta
12 GradoCientificoModel 4 Baja Baja Alta
14 ProfesionalCursoModel 4 Baja Baja Alta
15 ProfesionalPlanificacionModel 4 Baja Baja Alta
16 ProgramaMaestriaModel 4 Baja Baja Alta
Para determinar las categoras de los atributos se tuvo en cuenta los siguientes criterios:
47
Ilustracin 15: Grficos de los resultados de la mtrica TOC
Mediante la aplicacin de esta mtrica se puede observar de manera general que las clases del diseo
propuesto presentan un 85% de reponsabilidad y complejidad baja y un 82% de reutilizacin alta.
Conclusiones parciales
Los prototipos de interfaz de usuario ayudaron a entender y especificar las relaciones entre actores y el sistema
durante la captura de requisitos. Adems de permitir desarrollar una interfaz grfica mejor y comprender los casos
de uso. La aplicacin de la mtrica tamao operacional de la clase arroj valores bajos de complejidad y
responsabilidad, y altos de reutilizacin, lo cual evidencia la calidad del diseo propuesto. Este captulo permiti
sentar las bases para poder realizar la implementacin de la propuesta de solucin.
48
Captulo 3: Implementacin y prueba
3.1 Introduccin
En este captulo quedan contenidos todos los detalles referentes a la implementacin del sistema. Se
detallan los diagramas de componentes y de despliegue, permitiendo obtener una visin ms clara de la
implementacin. Adems se muestran ejemplos de la nomenclatura usada para las clases y las
funciones haciendo uso de las notaciones Pascal Casing y Camel Casing.
Los diagramas de despliegues describen la arquitectura fsica del sistema durante la ejecucin en
trminos de procesadores, dispositivos y componentes de software. Describen la topologa del sistema:
la estructura de los elementos de hardware y el software que ejecuta cada uno de ellos. Un diagrama de
despliegue muestra la configuracin de nodos que participan en la ejecucin y los componentes que
residen en ellos. El elemento principal del diagrama son los nodos (Scribd 2008).
PC Cliente
49
Este nodo representa a las mquinas desde donde podr conectarse cualquier usuario del sitio con los
permisos correspondientes a su rol. Requiere de la conexin de dispositivos externos para la impresin
de reportes.
Impresora
Dispositivo externo que permitir la impresin de los reportes desde las mquinas clientes. La forma de
conexin de estos dispositivos con la mquina cliente estar acorde a la disponibilidad que posea la
direccin de CEIGE.
PC Servidora
Los diagramas de componentes describen los elementos fsicos del sistema y sus relaciones.
Representan todos los tipos de elementos de software que entran en la fabricacin de aplicaciones
informticas. Pueden ser simples archivos, paquetes y bibliotecas cargadas dinmicamente. Muestra
como el sistema est dividido en componentes y las dependencias entre ellos. Provee una vista
arquitectnica de alto nivel del sistema y ayuda a los desarrolladores a visualizar el camino de la
implementacin (Scribd 2008).
Ms adelante se muestran algunos de los componentes del sistema. Para mayor comprensin estos se
agruparon por paquetes. El flujo de datos entre los elementos que componen el patrn arquitectnico
MVC es el siguiente:
50
Vista Controlador: Los datos recogidos en un formulario son enviados al Controlador haciendo
uso del protocolo de comunicacin HTTP a travs del mtodo post para ser procesados y los
resultados son enviados por el controlador a la vista en un JSON a travs del mtodo echo.
Controlador Modelo: El Controlador toma los datos recibidos desde la vista, instancia una
determinada clase del modelo y llama a uno de sus mtodos, pasndole como parmetros los
datos recibidos.
Modelo: El Modelo es el encargado de insertar, recuperar, modificar o eliminar los datos
almacenados en la base de datos
51
3.4 Nomenclatura de las clases
Para la nomenclatura de las clases se utiliz la notacin Pascal Casing. En este caso, los
identificadores y nombres de variables, mtodos y funciones estn compuestos por mltiples palabras
juntas, iniciando cada palabra con letra mayscula.
Clases controladoras: Las clases controladoras despus del nombre llevan la palabra: Controller.
Controllers (Controladoras)
Business (Negocio)
Las clases que se encuentran dentro de Business despus del nombre llevan la palabra: Model.
52
Domain (Dominio)
Las clases que se encuentran dentro de Domain el nombre que reciben es el de la tabla en la Base de
Datos.
Las clases que se encuentran dentro de Generated el nombre comienza con la palabra: Base y
seguido el nombre de la clase.
53
3.4.1 Nomenclatura de las funciones
Se emple la notacin Camel Casing, la cual es parecida a la notacin Pascal Casing con la excepcin
de que la letra inicial del identificador no debe estar en mayscula. Ejemplo:
cargarProfesionalesPorGrupo. En caso de ser una accin de la clase controladora se le pone el
nombre y seguido la palabra: Action.
Ejemplo: cargarProfesionalesPorGrupoAction
Las pruebas de caja negra, tambin denominada prueba de comportamiento, se centran en los
requisitos funcionales del software. O sea, la prueba de caja negra permite al ingeniero del software
obtener conjuntos de condiciones de entrada que ejerciten completamente todos los requisitos
funcionales de un programa. Ms bien se trata de un enfoque complementario que intenta descubrir
diferentes tipos de errores (Pressman 2002). Con la aplicacin de este tipo de prueba se pudo
comprobar que el sistema cumpla con cada uno de los requisitos identificados durante el anlisis.
54
3.5.1 Casos de prueba.
Los casos de pruebas definen un conjunto especfico de entradas de pruebas, ejecucin de condiciones
y resultados esperados. Un diseo de los casos de prueba es fundamental para el xito de las pruebas.
Un caso de prueba especfica una forma de probar el sistema, incluyendo la entrada o resultado con la
que se ha de probar y las condiciones bajo las que ha de probarse. El caso de prueba simula las
interacciones del actor con el sistema para verificar que el sistema hace lo que se espera de l. As, el
principal artefacto para obtener pruebas del sistema son los requisitos funcionales (Cuesta 2007).
A continuacin se muestra el diseo de caso de prueba perteneciente al caso de uso gestionar grupo de
profesionales para el escenario Adicionar grupo.
Condiciones de Ejecucin:
Se debe identificar y autenticar ante el sistema y adems debe tener los permisos para ejecutar esta
accin.
Se debe seleccionar el sistema Seminarios Cientficos/Grupos/Gestionar grupos
55
EC 1.2: Adicionar grupo - Se presiona el botn
introduciendo datos Adicionar Grupo.
vlidos. - Se introducen nmeros.
- Se presiona el botn
Aceptar.
- Se muestra un mensaje: Se
ha adicionado el grupo
correctamente.
- Se presiona el botn
Aceptar.
56
dejando campos vacos. - Se muestra un mensaje: Por
favor verifique, existen
campos con valores
incorrectos.
- Se presiona el botn
Aceptar.
Conclusiones parciales
En este captulo queda plasmando cmo est implementado el sistema a travs de los diagramas de
componentes del sistema. Tambin se muestra el diagrama de despliegue, el cul ilustra los nodos que
sern usados para la implantacin del sistema. Adems de un ejemplo de caso de prueba, mostrando
resultados satisfactorios, demostrndose la calidad del sistema realizado. Se explica la nomenclatura
para las clases y las funciones para lograr un mejor entendimiento del cdigo y una mayor organizacin.
57
Conclusiones Generales
El estudio de los sistemas de informacin cientfica y gestin de seminarios cientficos existentes
hoy en el mundo y en Cuba en la Educacin Superior, sirvi para formalizar el marco terico-
conceptual de la investigacin.
El anlisis y diseo del Sistema de Gestin de Seminarios Cientficos del CEIGE permiti que se
implementara correctamente cada una de las funcionalidades identificadas.
La implementacin del Sistema de Gestin de Seminarios Cientficos utilizando la tecnologa
propuesta posibilit:
Llevar un control del completamiento de cursos optativos y obligatorios cursados por los
profesionales que se encuentran en un programa acadmicos de postgrado.
Por cada presentacin que un profesional realiz, asignarle tareas y llevar un seguimiento de
las mismas.
Brindar reportes a instancias superiores acerca de las tareas y cursos por cada profesional.
Permite que los profesionales vean las planificaciones, cursos y tareas que le han sido
asignadas.
Mediante las pruebas realizadas al sistema se comprob que el mismo cumple todos los objetivos
para los que fue diseado e implementado.
58
Recomendaciones
A pesar de haber cumplidos los objetivos trazados en la investigacin, se recomienda:
59
Referencias Bibliogrficas
Acua, K. B. (2009) "Seleccin de Metodologas de Desarrollo para Aplicaciones Web en la Facultad de
Informtica de la Universidad de Cienfuegos.", 240.
Alvarez, A. (2011). Anlisis y diseo de una aplicacin web para la gestin de informacin de eventos
cientficos. Habana, UCI: 88.
Alvarez, A. (2011). Anlisis y diseo de una aplicacin web para la gestin de informacin de eventos
cientficos. La Habana, UCI: 88.
Cuesta, A. (2007). Sistema Asistente para Gestionar Pruebas de Caja Negra. Habana, UCI: 118.
Chamorra, M. A. (2008) "Seminario, Ciencia, el Mtodo Cientfico, la Investigacin y sus Fases." 3, 51.
60
Obregn, W. G. (2012) "Modelo de desarrollo de software." 1, 111.
Pons, N. L. (2012). Modelo de Gestin del conocimiento ISECO para el desarrollo de equipos de
proyectos informticos. Habana, UCI: 86.
Potencier, F. (2007). Symfony La Guia Definitiva. Symfony La Guia Definitiva. Espaa: 435.
Pupo, Y. C. (2010). Libro de Ayuda del Marco de Trabajo Sauxe, En su versin 2.0. La Habana, UCI: 72.
Reyes, Y. (2009). Gestin del Evento Cientfico NeuroRehabana 2010. La Habana, UCI: 94.
Rumbaugh, I. J. G. B. J. (2000). El prceso unificado del desarrolllo de software. El prceso unificado del
desarrolllo de software, Addison Wesley: 464.
Villenueve, L. (2005). Mozilla Firefox Mozilla Firefox (Windows y Linux):navegue de otra manera: 202.
Wage, J. (2009). Doctrine ORM for PHP. Doctrine ORM fot PHP.Guide to Doctrine 1.0: 407.
61
Anexos
Anexo 1 Prototipos de interfaz de usuario
62
Interfaz 3: Gestionar tareas por ponencias
63
planificaciones de ese profesional. En
caso de que no exista ninguna
planificacin ver flujo alterno 1.a.
Flujos Alternos
Accin del Actor Respuesta del Sistema
1.a Muestra el mensaje : Usted no tiene ninguna
planificacin.
64
Anexo 4 Diagramas de clases del diseo
65
Ilustracin 23: Diagrama de clases del diseo gestionar planificacin de seminarios cientficos
66
Ilustracin 25: Diagrama de secuencia Ver cursos
67
Glosario de Trminos
Seminario cientfico
Presentacin de ndole cientfica que se realiza con el fin de difundir conocimientos o desarrollar investigaciones, en
la que participan alrededor de 50 o 60 personas, donde los principales protagonistas son los maestrantes, los cuales
discuten sus trabajos frente a un tribunal y un grupo de participantes.
Crditos lectivos
Se obtienen a partir de los cursos obligatorios y optativos que exige el programa de maestra o doctorado.
Crditos no lectivos
Se obtienen en cuanto a participacin en eventos y publicaciones en revistas referenciadas de acuerdo a los niveles
que establece la comisin nacional de grado cientfico en relacin con los principios del Ministerio de Educacin
Superior (MES).
Curso
Curso optativo
Entrenamientos
Diplomados:
El diplomado tiene como objetivo la especializacin en un rea particular del desempeo y propicia la
adquisicin de conocimientos y habilidades acadmicas, cientficas y/o profesionales en cualquier etapa
del desarrollo de un graduado universitario de acuerdo a las necesidades de su formacin profesional o
cultural.
68