prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

169
Prototipo del Sistema de información de PROMECYS ____________________________________________________________________________ Universidad Nacional de Ingeniería Facultad de Ciencias y Sistemas “Propuesta de Prototipo de un Sistema de Información para el Proceso de Matricula e Inscripción de Asignaturas del Programa de Modalidad Especial de la Facultad de Ciencias y Sistemas de La Universidad Nacional de Ingeniería”. Autores: Br. Marisol de los Angeles Suárez Fonseca. Carnet 20-19800- 4. Br. Maria Gabriela Lagos Pasos. Carnet 2002-10348. Br. Gusmara Griselda Quezada Bravo. Carnet 2002-10456. Tutor (a): Ing. Patricia Lacayo Cruz Managua, Nicaragua 17 de Diciembre del 2008. T.Mon 025.04 S939 2008

Upload: raul-chipana-larico

Post on 06-Apr-2017

95 views

Category:

Devices & Hardware


1 download

TRANSCRIPT

Page 1: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de información de PROMECYS

____________________________________________________________________________

Universidad Nacional de Ingeniería Facultad de Ciencias y Sistemas

“Propuesta de Prototipo de un Sistema de Información para el

Proceso de Matricula e Inscripción de Asignaturas del Programa de Modalidad Especial de la Facultad de Ciencias y

Sistemas de La Universidad Nacional de Ingeniería”.

Autores:

Br. Marisol de los Angeles Suárez Fonseca. Carnet 20-19800- 4. Br. Maria Gabriela Lagos Pasos. Carnet 2002-10348. Br. Gusmara Griselda Quezada Bravo. Carnet 2002-10456.

Tutor (a): Ing. Patricia Lacayo Cruz

Managua, Nicaragua 17 de Diciembre del 2008.

T.Mon 025.04 S939 2008

Page 2: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de información de PROMECYS

____________________________________________________________________________ ÍNDICE

Pág.

Objetivos……………………………………………………………………… Justificación………………………………………………………………….. Introducción………………………………………………………………….. Marco Teórico…………………………...…………………………………… Capitulo I: Modelo de Requerimientos

Antecedentes de PROMECYS…….……………………….. Misión………………………………………………………….. Visión………………………….……………………………….. Objetivos de la Institución…………………………………. Estructura Organizacional…………………………………. Descripción del problema………………………………….. Descripción del sistema de negocio………...…………… Descripción del sistema informático…………………….. Requerimientos del Sistema

Capitulo II: Análisis del Sistema Diagramas de actividad…………………………………….. Diagramas de casos de uso……………………………….. Plantillas de casos de uso…………………………………. Diagramas de secuencia y colaboración…………………

Capitulo III: Diseño del Sistema

Clases.…………………….…………………………………… Tipos de datos……………………………………………….. Diagrama de clases…………………………………………. Diagramas de estado……………………………………….. Seguridad de la base de datos……………………………. Modelo de datos………………..……………………………. Diccionario de datos………………………………………… Procedimientos Almacenados…………………………….. Funciones………………………..…………..………………... Vistas……………………………………………………………

Capitulo IV: Interfaz de Usuario

Estructura de la Interfaz…………………………………….. Paquete de clases……………………………………………. Paquete de formularios……………………………………… Reportes……………………………………………………….. Detallado de la interfaz de Usuario………………………..

1 2 3 4

26 27 27 27 28 29 31 32

34

37 43 45 56

89 92 93 94 96 97 98

105 106 110 112

115 115 122 136 142 144 151 156

Page 3: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de información de PROMECYS

____________________________________________________________________________ Capitulo V: Análisis de la red para la implementación del sistema

Recursos actuales…………………………………………… Requerimiento técnico..……………………………………..

Conclusiones…………………………………………………………………. Recomendaciones…………………………………………………………… Bibliografía……………………………………………………………………. Anexos………………………………………………………………………….

163 164

165 166 167 168

Page 4: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de información de PROMECYS

____________________________________________________________________________ AGRADECIMIENTO

Le agradezco profundamente a Dios por regalarme sabiduría para culminar mi carrera y fortaleza para no dudar en lograrlo. A toda mi familia por confiar en mi, en especial a mis padres: mamá, gracias por tu amor, consejos e incondicional apoyo cada vez que lo necesite; papá, gracias por ser mi mentor, por enseñarme a creer en mi y comprender mi verdadero valor como persona. A mi amigo Rodolfo Carmona por su invaluable ayuda y sus certeros consejos durante la elaboración de este trabajo.

Maria Gabriela Lagos Pasos

Agradezco a Dios por la sabiduría y fortaleza que me ha dado durante toda mi vida y por ayudarme a culminar una de las fases mas importante como lo es mi carrera, agradezco de todo corazón a mi familia y sobre todo a mis padres por confiar en mi y ayudarme a lograr mi meta, por darme los consejos que me motivaron para llegar al final del camino, también a quienes me brindaron su afecto, comprensión y cariño, agradezco a quienes contribuyeron en mi formación y aprendizaje, a Carmona por su ayuda incondicional.

Marisol Suárez Fonseca

Agradezco a Dios por darme la vida, por las maravillas que ha hecho en mí. Por ayudarme día a día a salir adelante, por la fortaleza y permitir la culminación de mi carrera. A mi mamá, quien es la persona más importante de mi vida, por el amor y cariño, por tus consejos, por ser mi ejemplo a seguir, no se que haría sin ti. Te adoro mamá A mis tías y tíos, quienes me han estado conmigo en todo momento, gracias por quererme como una hija y brindarme su apoyo. A mi Abuelito Héctor Bravo quien es como un padre, Gracias por el amor, tú ayuda y tus oraciones. Gracias a mis Hermanos Maury, Gustavo, Gaby, por ser especiales, por el apoyo y cariño que me han dado. Gracias Familia los amo… Quiero agradecer a una persona muy especial mi novio Wilfredo Porta, quien me ha dado su amor y cariño, gracias por tus consejos y motivarme en mis estudios. Gracias por ayudarme y confiar en mí, Te quiero mi amor… Gracias a Kar, por tu ayuda incondicional y compartir este momento.

Gusmara Quezada Bravo.

Page 5: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de información de PROMECYS

____________________________________________________________________________ DEDICATORIA

Para todas las personas que creyeron en mí en todo momento, a mis padres, hermanas, tios… pero con un cariño muy especial: A MIS ABUELOS…!

Maria Gabriela Lagos Pasos

Con mucho cariño a mis PADRES: Miguel Suárez y Moraima Fonseca por ser el pilar fundamental de mi vida y a todos los que me brindaron su apoyo.

Marisol Suárez Fonseca

A Dios por darme la oportunidad de culminar mis estudios. A mi mamá Marlene Bravo, por el amor, cariño y apoyo que me ha brindado. A mis hermanos Maury, Gustavo, Gaby. Por todo el amor y cariño que me han dado. A mis tíos, quienes me han dado su ayuda incondicional…A una persona muy especial mi abuelito Héctor Bravo. A mi novio Wilfredo Porta, por el cariño y amor que me has dado, por brindarme tu apoyo…

Gusmara Quezada Bravo

Page 6: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 1 -

OBJETIVOS

OBJETIVO GENERAL:

Desarrollar un Prototipo de un Sistema de Información que ejecute los procesos de matricula e inscripción de asignaturas para Programa de Educación Especial de La Facultad de Ciencias y Sistemas de La Universidad Nacional de Ingeniería (PROMECYS).

OBJETIVOS ESPECIFICOS:

Definir los requerimientos del Sistema por medio del análisis de los procesos actuales de matricula e inscripción de asignaturas de PROMECYS, haciendo uso del lenguaje UML para el modelado.

Diseñar una base de datos para el registro de información, a partir del

análisis de requerimiento utilizando como gestor de la base de datos SQL Server 2000.

Hacer uso del entorno de desarrollo de Netbeans para realizar las

interfaces graficas, que permitirán al usuario tener interacción con el prototipo de sistema de información.

Realizar un diseño de red que permita la conexión entre los equipos

tomando en cuenta los requerimientos de hardware y software.

Page 7: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 2 -

JUSTIFICACION

PROMECYS inicio como un programa pequeño creado para dar solución a las demandas de personas trabajadoras que deseaban estudiar una carrera universitaria, pero en los últimos años ha mantenido una demanda de estudiantes muy favorable motivo por el cual los procesos que hasta el momento se ha realizado de forma manual se han vuelto un problema, tanto para los trabajadores del programa como para los estudiantes que pertenecen en el mismo ya que el hecho de llevar la documentación de cada estudiante a mano, resulta más desordenado y lento al momento de querer realizar una matricula o una inscripción, incluso una simple búsqueda de un estudiante resulta problemático para el empleado.

Por tal razón hemos elegido contribuir al desarrollo de nuestra universidad con la propuesta de un prototipo de Sistema de Información para PROMECYS. Este programa como centro de enseñanza oferta un servicio académico el cual debe brindarse de la manera más eficiente y confiable para los estudiantes quienes constituyen el eje de la institución. Los procesos donde más se requiere organización y rapidez en el programa son las Matriculas, Inscripciones y las solicitudes de cualquier tipo de certificado por parte de los estudiantes y la realización de éstas actividades actualmente se efectúan de forma manual lo que hace necesario la realizacion de un sistema de información que permita agilizar dichas actividades, que optimice recursos, ahorre tiempo y sobre todo que ofrezca todas las comodidades a los estudiantes.

Se pretende colaborar con la misión de nuestra universidad brindando

un Sistema de Información que contribuya a mejorar la calidad de atención y del trabajo en los procesos de matriculas e inscripciones de asignaturas en PROMECYS. Con este sistema no solo queremos percibir el ahorro de tiempo y el aumento en la calidad de los procesos del programa sino también se procura contribuir al aprovechamiento de los recursos y de los avances tecnológicos de la universidad en general.

Además de ser provechoso para los estudiantes el Sistema de Información también contribuirá beneficiosamente con los empleados de PROMECYS porque todos los trámites que implican llevar acabo las matriculas e inscripciones se realizarán en menos tiempo y la pérdida de información o la incurrencia de errores serán mínimas.

Es importante tomar en cuenta que con la ayuda del Sistema de

Información la universidad tendrá un control exacto e inmediato de todo lo referido a PROMECYS por medio de reportes específicos, esto ayudará a tener una mejor visualización en cuanto al giro que toma el programa con respecto a la cantidad de estudiantes que maneja.

Page 8: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 3 -

INTRODUCCION

En un mundo donde la información se ha convertido en uno de los recursos más importantes para el desarrollo de las empresas los Sistemas de Información son un recurso cada vez más indispensable no solo para las grandes empresas de negocios sino también para organizaciones de carácter social, político y educativo, debido a su gran adaptabilidad a cualquier tipo de procesos en las diferentes áreas de trabajo.

Cada día se ven nuevos software, nuevos equipos, nuevas maneras de hacer las cosas y generalmente las universidades son las bases de estas innovaciones e investigaciones que en muchas ocasiones llegan a ser de gran ayuda para las empresas de carácter económico. La Universidad Nacional de Ingeniería es una de las universidades mas prestigiosas a nivel nacional y para dar crédito a su lema “líder en ciencia y tecnología” debe estar siempre un paso adelante de las demás, demostrando eficiencia no solo con una educación de calidad sino también en los procesos organizacionales y funcionales de cada uno de los programas, departamentos y servicios que brinda la misma. Es por esta razón que hemos diseñado un Prototipo de un Sistema de Información del proceso de Matricula e Inscripción de Asignaturas en el Programa de Modalidad Especial de La Facultad de Ciencias y Sistemas que ofrece la UNI que actualmente se lleva a cabo de forma manual lo que provoca atraso y pérdida de tiempo tanto para los empleados del mismo como para los estudiantes porque no se optimiza el tiempo del proceso que se realiza, además se tiende a cometer errores que conllevan a la pérdida de información valiosa, esto produce molestias al estudiante. En el documento se describe la problemática actual a partir de la cual se pueden visualizar las necesidades que permiten establecer los requerimientos necesarios para la automatización de los procesos, para lo cual se definió la estructura de la base de datos que es donde los datos están almacenados y además permite manipularlos. También se muestra el diseño de las interfaces que es con las que el usuario va a interactuar, para ello es necesario definir las pautas para luego programarlas y que funcionen de acuerdo a los requerimientos establecidos. Además se podrán emitir reportes a partir de la información que se encuentra almacenada en la base de datos.

Page 9: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 4 -

MARCO TEORICO

El programa PROMECYS como parte de un centro de enseñanza superior debe estar a la vanguardia de la tecnología de modo que le permita brindar un servicio satisfactorio a su cliente, en este caso el estudiante, para lo cual se crea el prototipo del sistema de matricula e inscripción de asignaturas que brindara al programa la herramienta necesaria para llevar a cabo las actividades de una manera optima y eficiente.

Para la creación del prototipo del sistema de matricula e inscripción de PROMECYS se hace necesario conocer los modelos de desarrollo de software los cuales permiten que el sistema cumpla con los requerimientos para lo cual está siendo creado. Estos modelos son:

Modelo en Cascada: es el enfoque metodológico que ordena rigurosamente las etapas del ciclo de vida del software, de forma tal que el inicio de cada etapa debe esperar a la finalización de la inmediatamente anterior.

Las etapas para el desarrollo en cascada son:

Análisis de requisitos

Diseño del Sistema

Diseño del Programa

Codificación

Pruebas

Implantación

Variantes

De esta forma, cualquier error de diseño detectado en la etapa de prueba conduce necesariamente al rediseño y nueva programación del código afectado, aumentando los costes del desarrollo. La palabra cascada sugiere, mediante la metáfora de la fuerza de la gravedad, el esfuerzo necesario para introducir un cambio en las fases más avanzadas de un proyecto.

Si bien ha sido ampliamente criticado desde el ámbito académico y la industria, sigue siendo el paradigma más seguido al día de hoy.

Modelo en Espiral: las actividades de este modelo son una espiral, cada bucle es una actividad. Las actividades no están fijadas a prioridad, sino que las siguientes se eligen en función del análisis de riesgo, comenzando por el bucle interior.

Las etapas para llevar a cabo este modelo son:

Determinar o fijar objetivos

Planificar

Page 10: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 5 -

Análisis del riesgo.

Desarrollar, verificar y validar.

Mecanismos de control.

Las ventajas que se presentan son el que el análisis de riesgo se hace de forma explícita y clara. Une los mejores elementos de los restantes modelos, reduce riesgos del proyecto, incorpora objetivos de calidad e integra el desarrollo con el mantenimiento.

Por otra parte presenta desventajas como la generación de mucho tiempo en el desarrollo del sistema, el modelo es costoso, además requiere experiencia en la identificación de riesgos.

Los Inconvenientes que se presentan es que genera mucho trabajo adicional y esto conlleva a que se generen muchos problemas sobre todo si la compañía que esta produciendo el software no es muy eficiente. Cuando un sistema falla se pierde tiempo y coste dentro de la empresa.

Modelo en V: o método en v que define un procedimiento uniforme para el desarrollo de productos. Es un método de gestión de proyectos y describe tanto métodos para la gestión como para el desarrollo de sistemas.

El Método-V describe las actividades y los resultados que se producen durante el desarrollo del software. Es una representación gráfica del ciclo de vida del desarrollo del sistema. Resume los pasos principales que hay que tomar en conjunción con las correspondientes entregas de los sistemas de validación.

La parte izquierda de la V representa la corriente donde se definen las especificaciones del sistema. La parte derecha de la V representa la corriente donde se comprueba el sistema (contra las especificaciones definidas en la parte izquierda). La parte de abajo, donde se encuentran ambas partes, representa la corriente de desarrollo.

La corriente de especificación consiste principalmente de especificaciones de requerimientos de usuario, especificaciones funcionales y de especificaciones de diseño. La corriente de pruebas, por su parte, suele consistir de calificación de instalación, calificación operacional y calificación de rendimiento. La corriente de desarrollo puede consistir (depende del tipo de sistema y del alcance del desarrollo) en personalización, configuración o codificación.

Modelo de desarrollo incremental: es el proceso de construcción siempre incrementando subconjuntos de requerimientos del sistema. Típicamente, un documento de requerimientos es escrito al capturar todos los requerimientos para el sistema completo. El desarrollo incremental es 100% compatible con el modelo cascada. El desarrollo incremental no demanda una forma específica de observar el desarrollo de algún otro incremento. Así, el modelo cascada puede ser usado para administrar cada esfuerzo de desarrollo.

El modelo de desarrollo incremental provee algunos beneficios significativos para los proyectos entre lo que tenemos construir un sistema pequeño es siempre menos riesgoso que construir un sistema grande. Al ir desarrollando

Page 11: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 6 -

parte de las funcionalidades, es más fácil determinar si los requerimientos planeados para los niveles subsiguientes son correctos. Por otra parte si un error importante es realizado, sólo la última iteración necesita ser descartada. Al reducir el tiempo de desarrollo de un sistema (en este caso en incremento del sistema) decrecen las probabilidades que esos requerimientos de usuarios puedan cambiar durante el desarrollo. Si un error importante es realizado, el incremento previo puede ser usado. Los errores de desarrollo realizados en un incremento, pueden ser arreglados antes del comienzo del próximo incremento.

Modelo de Desarrollo Evolutivo: es como el modelo de desarrollo incremental, el modelo de desarrollo evolutivo (algunas veces denominado como prototipo evolutivo) construye una serie de grandes versiones sucesivas de un producto. Sin embargo, mientras que la aproximación incremental presupone que el conjunto completo de requerimientos es conocido al comenzar, el modelo evolutivo asume que los requerimientos no son completamente conocidos al inicio del proyecto.

En el modelo evolutivo, los requerimientos son cuidadosamente examinados, y sólo esos que son bien comprendidos son seleccionados para el primer incremento. Los desarrolladores construyen una implementación parcial del sistema que recibe sólo estos requerimientos. El sistema es entonces desarrollado, los usuarios lo usan, y proveen retroalimentación a los desarrolladores. Basada en esta retroalimentación, la especificación de requerimientos es actualizada, y una segunda versión del producto es desarrollada y desplegada. El proceso se repite indefinidamente.

Modelo Concurrente: es como el modelo espiral, el modelo concurrente provee una meta-descripción del proceso software. Mientras que la contribución primaria del modelo espiral es en realidad que esas actividades del software ocurran repetidamente, la contribución del modelo concurrente es su capacidad de describir las múltiples actividades del software ocurriendo simultáneamente.

Desarrollo por Etapas: es similar al modelo de prototipos ya que muestra al cliente el software en diferentes estados sucesivos de desarrollo, se diferencia en que las especificaciones no son conocidas en detalle al inicio del proyecto y por tanto se van desarrollando simultáneamente con las diferentes versiones del código.

En el desarrollo por etapas de pueden distinguir las fases de especificación conceptual, análisis de requerimientos, el diseño inicial, el diseño detallado, codificación, depuración y liberación. Estas diferentes fases se van repitiendo en cada etapa del diseño.

El siguiente modelo lo empleamos en PROMECYS, ya que como su nombre lo dice es para realizar un prototipo de lo que será el software una vez terminado y permite al cliente tener una visión de lo que el sistema de información va a realizar, además el cliente puede exponer sus ideas acerca del funcionamiento del mismo y así permitir lo que es la retroalimentación, es muy importante el uso de este modelo porque PROMECYS es un cliente difícil ya que no está

Page 12: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 7 -

seguro de lo que realmente desea y cambia de opinión constantemente. Para comprender mejor hacemos referencia a la teoría de este tipo de modelo.

Modelo de Prototipos: se inicia con la definición de los objetivos globales para el software, luego se identifican los requisitos conocidos y las áreas del esquema en donde es necesaria más definición. Entonces se plantea con rapidez una iteración de construcción de prototipos y se presenta el modelado (en forma de un diseño rápido). El diseño rápido se centra en una representación de aquellos aspectos del software que serán visibles para el cliente o el usuario final. El diseño rápido conduce a la construcción de un prototipo, el cual es evaluado por el cliente o el usuario para una retroalimentación; gracias a ésta se refinan los requisitos del software que se desarrollará. La iteración ocurre cuando el prototipo se ajusta para satisfacer las necesidades del cliente. Esto permite que al mismo tiempo el desarrollador entienda mejor lo que se debe hacer y el cliente vea resultados a corto plazo.

Las Ventajas que se presentan al hacer uso de este modelo es que es útil cuando el cliente conoce los objetivos generales para el software, pero no identifica los requisitos detallados de entrada, procesamiento o salida. También ofrece un mejor enfoque cuando el responsable del desarrollo del software está inseguro de la eficacia de un algoritmo, de la adaptabilidad de un sistema operativo o de la forma que debería tomar la interacción humano-máquina.

La construcción de prototipos se puede utilizar como un modelo del proceso independiente, se emplea más comúnmente como una técnica susceptible de implementarse dentro del contexto de cualquiera de los modelos del proceso expuestos. Sin importar la forma en que éste se aplique, el paradigma de construcción de prototipos ayuda al desarrollador de software y al cliente a entender de mejor manera cuál será el resultado de la construcción cuando los requisitos estén satisfechos.

Se puede concluir que a pesar de que tal vez surjan problemas, la construcción de prototipos puede ser un paradigma efectivo para la ingeniería del software. La clave es definir las reglas del juego desde el principio; es decir, el cliente y el desarrollador se deben poner de acuerdo en que el prototipo se construya y sirva como un mecanismo para la definición de requisitos, que se descarten partes del prototipo por decisión mutua del cliente y del que está desarrollando el prototipo.

Después de tener un modelo de desarrollo de software se hace necesaria la utilización de un lenguaje que nos ayude a comprender gráficamente el comportamiento del sistema de información que estamos desarrollando.

El Proceso Unificado Racional (Rational Unified Process en inglés, habitualmente resumido como RUP) es un proceso de desarrollo de software y junto con el Lenguaje Unificado de Modelado UML, constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientados a objetos. El RUP no es un sistema con pasos firmemente establecidos, sino un conjunto de metodologías adaptables al contexto y necesidades de cada organización.

Page 13: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 8 -

El RUP está basado principios claves:

Adaptar el proceso, el proceso deberá adaptarse a las características propias del proyecto u organización. El tamaño del mismo, así como su tipo o las regulaciones que lo condicionen, influirán en su diseño específico. También se deberá tener en cuenta el alcance del proyecto.

Balancear prioridades, los requerimientos de los diversos inversores pueden ser diferentes, contradictorios o disputarse recursos limitados. Debe encontrarse un balance que satisfaga los deseos de todos.

Demostrar valor iterativamente, los proyectos se entregan, aunque sea de un modo interno, en etapas iteradas. En cada iteración se analiza la opinión de los inversores, la estabilidad y calidad del producto, y se refina la dirección del proyecto así como también los riesgos involucrados.

Elevar el nivel de abstracción, este principio dominante motiva el uso de conceptos reutilizables tales como patrón del software, lenguajes 4GL o esquemas (frameworks) por nombrar algunos. Esto previene a los ingenieros de software ir directamente de los requisitos a la codificación de software a la medida del cliente. Un nivel alto de abstracción también permite discusiones sobre diversos niveles arquitectónicos. Éstos se pueden acompañar por las representaciones visuales de la arquitectura, por ejemplo con UML.

Enfocarse en la calidad, el control de calidad no debe realizarse al final de cada iteración, sino en todos los aspectos de la producción

Ciclo de vida

El ciclo de vida RUP es una implementación del Desarrollo en espiral. Fue creado ensamblando los elementos en secuencias semi-ordenadas. El ciclo de vida organiza las tareas en fases e iteraciones.

El RUP divide el proceso de desarrollo en ciclos, teniendo un producto final al final de cada ciclo, cada ciclo se divide en fases que finalizan con un hito donde se debe tomar una decisión importante:

Fase de concepción ó inicio, en esta fase se establece la oportunidad y alcance el proyecto. Se identifican todas las entidades externas con las que se trata (actores) y se define la interacción en un alto nivel de abstracción: se deben identificar todos los casos de uso, y se deben describir algunos en detalle. La oportunidad del negocio incluye: definir los criterios de éxito, identificación de riesgos, estimación de recursos necesarios, y plan de las fases. Los productos de esta fase son:

· Un documento de visión general, que incluye los requerimientos generales del proyecto, las características principales, y las restricciones. · El modelo inicial de casos de uso (10% a 20 % listos).

Page 14: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 9 -

·El glosario. · Caso de negocio, donde se incluye el contexto, los criterios de éxito, y el pronóstico financiero. · Una identificación inicial de riesgos. · Un plan de proyecto. · Uno o más prototipos.

Fase de Elaboración:

Es la parte más crítica del proceso, al final toda la ingeniería “dura” está hecha, se puede decidir si vale la pena seguir adelante, a partir de aquí la arquitectura, los requerimientos y los planes de desarrollo son estables. Ya hay menos riesgos y se puede planificar el resto del proyecto con menor incertidumbre, se construye una arquitectura ejecutable que contemple: los casos de uso críticos y los riesgos identificados. Objetivos:

Analizar el dominio del problema Establecer una arquitectura base sólida Desarrollar un plan de proyecto Eliminar los elementos de mayor riesgo para el desarrollo exitoso

del proyecto Productos:

Modelo de casos de uso (80% completo) con descripciones detalladas.

Otros requerimientos no funcio-nales o no asociados a casos de uso.

Descripción de la Arquitectura del Software. Un prototipo ejecutable de la arquitectura. Lista revisada de riesgos y del caso de negocio.

• Plan de desarrollo para el resto del proyecto. • Un manual de usuario preliminar.

Fase de Construccion

En esta fase todas las componentes restantes se desarrollan e incorporan al producto, todo es probado en profundidad, el énfasis está en la producción eficiente y no ya en la creación intelectual, puede hacerse construcción en paralelo, pero esto exige una planificación detallada y una arquitectura muy estable.

Producto

El producto de software integrado y corriendo en la plataforma adecuada.

Manuales de usuario. Una descripción del “release” actual.

Page 15: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 10 -

Fase de transición

El objetivo es traspasar el software desarrollado a la comunidad de usuarios. Una vez instalado surgirán nuevos elementos que implicarán nuevos desarrollos (ciclos). Incluye:

Pruebas Beta para validar el producto con las expectativas del cliente Ejecución paralela con sistemas antiguos Conversión de datos Entrenamiento de usuarios Distribuir el producto

Objetivo Obtener autosuficiencia de parte de los usuarios. Concordancia en los logros del producto de parte de las personas

involucradas. Lograr el concenso cuanto antes para liberar el producto al mercado.

Principales características

Forma disciplinada de asignar tareas y responsabilidades (quién hace qué, cuándo y cómo)

Pretende implementar las mejores prácticas en Ingeniería de Software Desarrollo iterativo Administración de requisitos Uso de arquitectura basada en componentes Control de cambios Modelado visual del software Verificación de la calidad del software

El RUP es un producto de Rational (IBM). Se caracteriza por ser iterativo e incremental, estar centrado en la arquitectura y guiado por los casos de uso. Incluye artefactos (que son los productos tangibles del proceso como por ejemplo, el modelo de casos de uso, el código fuente, etc.) y roles (papel que desempeña una persona en un determinado momento, una persona puede desempeñar distintos roles a lo largo del proceso).

Fases

Establece oportunidad y alcance Identifica las entidades externas o actores con las que se trata Identifica los casos de uso

CICLOS DE RUP Requerimientos

Los desarrolladores y clientes deben acordar qué es lo que el sistema debe hacer:

• Relevar requerimientos

Page 16: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 11 -

• Documentar funcionalidad y restricciones • Documentar decisiones • Identificar actores • Identificar casos de uso • Los casos de uso describen la funcionalidad. • Los requerimientos no funcionales se incluyen en una especificación

complementaria. Analisis y Diseño

Descripción de cómo se implementará el sistema: un plano Debe:

Ejecutar las tareas y funciones descritas en los casos de uso Satisfacer todos los requerimientos Flexible a cambios

El modelo de diseño consta de Clases estructuradas en paquetes Diseños de subsistemas con interfaces definidas

(componentes) Forma de colaboración entre las clases.

Implementacion

Definir la organización del código Implementar clases y objetos en forma de componentes (fuente,

ejecutables, etc.) Probar las componentes desarrolladas Integrar las componentes en un sistema ejecutable

Pruebas

Propósito: Verificar la interacción entre los objetos Verificar la integración apropiada de componentes Verificar que se satisfacen los requerimientos

Identificar los defectos y c

Las pruebas de regresión son importantes en desarrollos iterativos, Rational tiene herramientas para automatizar algunas pruebas.

orregirlos antes de la instalación

RUP describe como planear y ejecutar estas pruebas, propone probar las componentes desde el principio con respecto a la confiabilidad, funcionalidad y performance.

Distribucion Producir un producto y hacerlo llegar a sus usuarios finales, incluye varias actividades:

• Producir un “release” • Empaquetar el software

Page 17: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 12 -

• Distribuir el software • Instalar el software • Apoyar a los usuarios

A veces también incluye: • Realizar pruebas beta • Migración de datos • Aceptación formal

La mayor parte de la distribución ocurre durante la transición, este es uno de los flujos de trabajo menos documentados en RUP.

Para llevar a cabo esto tomamos como referencia UML,

Lenguaje Unificado de Modelado (UML) que es el lenguaje de modelado de sistemas de software más conocido y utilizado en la actualidad. Es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema de software. UML ofrece un estándar para describir un "plano" del sistema (modelo), incluyendo aspectos conceptuales tales como procesos de negocios y funciones del sistema, y aspectos concretos como expresiones de lenguajes de programación, esquemas de bases de datos y componentes de software reutilizables. UML es la herramienta para realizar el análisis y diseño del sistema de información.

Es importante resaltar que UML es un "lenguaje" para especificar y no para describir métodos o procesos. Se utiliza para definir un sistema de software, para detallar los artefactos en el sistema y para documentar y construir. En otras palabras, es el lenguaje en el que está descrito el modelo. Se puede aplicar en una gran variedad de formas para dar soporte a una metodología de desarrollo de software. UML cuenta con varios tipos de diagramas, los cuales muestran diferentes aspectos de las entidades representadas. En UML encontramos una variedad de diagramas que se clasifican en:

Diagramas de Estructura: que enfatizan los elementos que deben existir en el sistema modelado. Entre los diagramas de estructura tenemos el diagrama de clases, diagrama de componentes, diagrama de objetos, diagrama de despliegue, diagrama de paquetes.

Diagrama de clases: es un tipo de diagrama estático que describe la estructura de un sistema mostrando sus clases, atributos y las relaciones entre ellos. Los diagramas de clases son utilizados durante el proceso de análisis y diseño de los sistemas informáticos donde se crea el diseño conceptual de la información que se manejará en el sistema, y los componentes que se encargaran del funcionamiento y la relación entre uno y otro. El diagrama de clases contempla una serie de elementos que forman al mismo, como lo son:

Atributos:, son valores que corresponden a un objeto, como color, material, cantidad, ubicación. Generalmente se conoce como la información detallada del objeto. Suponiendo que el objeto es una puerta, sus propiedades serían: la marca, tamaño, color y peso.

Page 18: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 13 -

Operaciones son aquellas actividades o verbos que se pueden realizar con/para este objeto, como por ejemplo abrir, cerrar, buscar, cancelar, acreditar, cargar. De la misma manera que el nombre de un atributo, el nombre de una operación se escribe con minúsculas si consta de una sola palabra. Si el nombre contiene más de una palabra, cada palabra será unida a la anterior y comenzará con una letra mayúscula, a excepción de la primera palabra que comenzará en minúscula. Por ejemplo: abrirPuerta, cerrarPuerta, buscarPuerta, etc.

Interfaz es un conjunto de operaciones y/o propiedades que permiten a un objeto comportarse de cierta manera, por lo que define los requerimientos mínimos del objeto.

Herencia se define como la reutilización de un objeto padre ya definido para poder extender la funcionalidad en un objeto hijo. Los objetos hijos heredan todas las operaciones y/o propiedades de un objeto padre. Por ejemplo: Una persona puede subdividirse en Proveedores, Acreedores, Clientes, Accionistas, Empleados; todos comparten datos básicos como una persona, pero además tendrá información adicional que depende del tipo de persona, como saldo del cliente, total de inversión del accionista, salario del empleado, etc.

Al diseñar una clase se debe pensar en cómo se puede identificar un objeto real, como una persona, un transporte, un documento o un paquete. Estos ejemplos de clases de objetos reales, es sobre lo que un sistema se diseña. Durante el proceso del diseño de las clases se toman las propiedades que identifican como único al objeto y otras propiedades adicionales como datos que corresponden al objeto.

Diagrama de componentes: representa la separación de un sistema de software en componentes físicos (por ejemplo archivos, cabeceras, módulos, paquetes, etc.) y muestra las dependencias entre estos componentes.

Diagramas de objetos: son utilizados durante el proceso de Análisis y Diseño de los sistemas informáticos en la metodología UML. Se puede considerar un caso especial de un diagrama de clases en el que se muestran instancias específicas de clases (objetos) en un momento particular del sistema. Los diagramas de objetos utilizan un subconjunto de los elementos de un diagrama de clase. Los diagramas de objetos no muestran la multiplicidad ni los roles, aunque su notación es similar a los diagramas de clase. Una diferencia con los diagramas de clase es que el compartimiento de arriba va en la forma, Nombre de objeto: Nombre de clase.

Diagrama de despliegue: es un tipo de diagrama del lenguaje unificado de modelado que se utiliza para modelar el hardware utilizado en la implementación de sistemas y las relaciones entre sus componentes. Los elementos usados por este tipo de diagrama son nodos (representados como un prisma), componentes (representados como una caja rectangular con dos protuberancias del lado izquierdo) y asociaciones.

Page 19: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 14 -

Contiene los nodos y las conexiones que muestran la arquitectura del sistema en tiempo de ejecución a través de procesadores, dispositivos y los componentes de software que se ejecutan en esta arquitectura. Esta es la última descripción física de la topología del sistema, describiendo la estructura de las unidades de hardware y el software que se ejecuta en cada unidad. Los nodos se representan con cubos en tres dimensiones con su nombre en el interior. Si el nodo representa a una instancia en lugar de una clase, el nombre va subrayado. Las conexiones se representan con líneas continuas y contienen el nombre y el estereotipo de la conexión. El nombre es el identificador de la misma y el estereotipo indica el protocolo de comunicaciones entre los dos nodos implicados. Diagrama de paquetes: muestra como un sistema está dividido en agrupaciones lógicas mostrando las dependencias entre esas agrupaciones. Dado que normalmente un paquete está pensado como un directorio, los diagramas de paquetes suministran una descomposición de la jerarquía lógica de un sistema. Los Paquetes están normalmente organizados para maximizar la coherencia interna dentro de cada paquete y minimizar el acoplamiento externo entre los paquetes. Con estas líneas maestras sobre la mesa, los paquetes son buenos elementos de gestión. Cada paquete puede asignarse a un individuo o a un equipo, y las dependencias entre ellos pueden indicar el orden de desarrollo requerido. Un paquete es una parte de un modelo. Cada parte del modelo debe pertenecer a un paquete. Pero para ser funcional, la asignación debe seguir un cierto principio racional, tal como funcionalidad común, implementación relacionada y punto de vista común. UML no impone una regla para componer los paquetes. Los paquetes contienen elementos del modelo al más alto nivel, tales como clases y sus relaciones, máquinas de estado, diagramas de casos de uso, interacciones y colaboraciones; atributos, operaciones, estados, líneas de vida y mensajes están contenidos en otros elementos y no aparecen como contenido directo de los paquetes.

Diagramas de actividad representa los flujos de trabajo paso a paso de negocio y operacionales de los componentes en un sistema. También muestra el flujo de control general. Un diagrama de actividad es utilizado en conjunción con un diagrama de caso de uso para auxiliar a los miembros del equipo de desarrollo a entender como es utilizado el sistema y cómo reacciona en determinados eventos. Lo anterior, en contraste con un diagrama de flujo que ayuda a un programador a desarrollar código a través de una descripción lógica de un proceso. Se pudiera considerar que un diagrama de actividad describe el problema, mientras un diagrama de flujo describe la solución.

Existe una variedad de elementos que componen un diagrama de actividad:

Inicio es representado por un círculo de color negro sólido.

Page 20: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 15 -

Actividad representa la acción que será realizada por el sistema la cual es representada dentro de un ovalo.

Transición ocurre cuando se lleva acabo el cambio de una actividad a otra, es representada simplemente por una línea con una flecha en su terminación para indicar dirección.

Ramificación ocurre cuando existe la posibilidad que ocurra más de una transición (resultado) al terminar determinada actividad. Este elemento es representado a través de un rombo.

Unión ocurre al fusionar dos o más transiciones en una sola transición o actividad. Este elemento también es representado a través de un rombo.

Expresiones Resguardadas es utilizada para indicar una descripción explicita acerca de una transición. Este tipo de expresión es representada mediante corchetesy es colocada sobre la línea de transición.

Fork representa una necesidad de ramificar una transición en más de una posibilidad. Aunque similar a una ramificación (Branch) la diferencia radica en que un fork representa más de una ramificación obligada, esto es, la actividad debe proceder por ambos o más caminos, mientras que una ramificación (Branch) representa una transición u otra para la actividad (como una condicional).

Diagrama de Caso de uso describe lo que hace un sistema desde el punto de vista de un observador externo, debido a esto, un diagrama de este tipo generalmente es de los más sencillos de interpretar en UML, ya que su razón de ser se concentra en un Que hace el sistema, a diferencia de otros diagramas UML que intentan dar respuesta a un Como logra su comportamiento el sistema.

Un caso de uso está muy relacionado con lo que pudiera ser considerado un escenario en el sistema. Un caso de uso es empleado con más frecuencia en alguna de las siguientes etapas:

Determinación de Requerimientos: Por lo general nuevos requerimientos de sistema generan nuevos casos de uso, conforme es analizado y diseñado el sistema.

Comunicación con el Cliente: Debido a la sencillez de este tipo de diagramas, son fáciles de emplear para comunicarse con el cliente final del proyecto.

Generación de pruebas de Sistemas: A través de los diagramas uso-caso se pueden generar una serie de pruebas de sistema.

Los elementos que son parte del diagrama de caso de uso son:

Actor: representa quien o que inicia una acción dentro del sistema, en otras palabras, es simplemente un rol que es llevado a cabo por una persona o cosa. Un Actor en un diagrama caso de uso es representado por una figura en forma de persona.

Caso de uso: El caso de uso en sí es representado por un ovalo que describe la funcionalidad a grosso modo que se requiere por el sistema.

Page 21: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 16 -

Comunicación: Este elemento representa la relación que existe entre un caso de uso y un Actor, dicho elemento es representado simplemente por una línea recta que se extiende de la figura del actor hacia el ovalo del uso-caso.

Limite de Sistema (System Boundry): Empleado para delimitar los límites del sistema, y representado por un rectángulo con color de fondo distintivo.

Generalización: indica que un caso de uso (ovalo) es un caso especial de otro caso, en otros términos, representa una relación padre-hijo, donde el hijo puede ser suplido directamente por el padre en cualquier momento. Este elemento es representado por una línea con flecha que se extiende del caso de uso hijo hacia el caso de uso padre (general).

Inclusión: es utilizada para indicar que un caso de uso depende de otro caso. Este elemento es representado por una línea punteada con flecha y comentario <<include>> que se extiende del caso de uso base hacia el caso de uso de inclusión.

Extensión: representa una variación de un caso de uso a otro, aunque similar a una generalización, una extensión representa una dependencia especifica, mientras una generalización no implica que los casos de uso dependen uno del otro. Este elemento es representado por una línea punteada con flecha y comentario <<extend>> que origina del caso de uso base hacia el caso de uso de extensión.

Diagrama de Estados muestra la secuencia de estados por los que pasa bien un caso de uso, bien un objeto a lo largo de su vida, o bien todo el sistema. En él se indican qué eventos hacen que se pase de un estado a otro y cuáles son las respuestas y acciones que genera..

En cuanto a la representación, un diagrama de estados es un gráfico cuyos nodos son estados y cuyos arcos dirigidos son transiciones etiquetadas con los nombres de los eventos. Un estado se representa como una caja redondeada con el nombre del estado en su interior. Una transición se representa como una flecha desde el estado origen al estado destino.

Un diagrama de estados puede representar ciclos continuos o bien una vida finita, en la que hay un estado inicial de creación y un estado final de destrucción (finalización del caso de uso o destrucción del objeto). El estado inicial se muestra como un círculo sólido y el estado final como un círculo sólido rodeado de otro círculo. En realidad, los estados inicial y final son pseudoestados, pues un objeto no puede “estar” en esos estados, pero nos sirven para saber cuáles son las transiciones iniciales y finales.

Diagramas de Interacción: que son un subtipo de diagramas de comportamiento, que enfatiza sobre el flujo de control y de datos entre los elementos del sistema modelado. Los diagramas que forman parte de este grupo son los diagramas de secuencia y diagramas de colaboración.

Diagramas de secuencia es uno de los diagramas más efectivos para modelar interacción entre objetos en un sistema. Un diagrama de secuencia muestra la

Page 22: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 17 -

interacción de un conjunto de objetos en una aplicación a través del tiempo y se modela para cada caso de uso. Mientras que el diagrama de caso de uso permite el modelado de una vista del escenario, el diagrama de secuencia contiene detalles de implementación del escenario, incluyendo los objetos y clases que se usan para implementar el escenario, y mensajes pasados entre los objetos. Típicamente uno examina la descripción de un caso de uso para determinar qué objetos son necesarios para la implementación del escenario.

Un diagrama de secuencia muestra los objetos que intervienen en el escenario con líneas discontinuas verticales, y los mensajes pasados entre los objetos como vectores horizontales. Los mensajes se dibujan cronológicamente desde la parte superior del diagrama a la parte inferior; la distribución horizontal de los objetos es arbitraria. Durante el análisis inicial, el modelador típicamente coloca el nombre 'business' de un mensaje en la línea del mensaje. Más tarde, durante el diseño, el nombre 'business' es reemplazado con el nombre del método que está siendo llamado por un objeto en el otro. El método llamado, o invocado, pertenece a la definición de la case instanciada por el objeto en la recepción final del mensaje.

Diagramas de colaboración muestran explícitamente las relaciones de los roles. Por otra parte, un diagrama de colaboración no muestra el tiempo como una dimensión aparte, por lo que resulta necesario etiquetar con números de secuencia tanto la secuencia de mensajes como los hilos concurrentes. Un diagrama de colaboración es también un diagrama de clases que contiene roles de clasificador y roles de asociación en lugar de sólo clasificadores y asociaciones. Los roles de clasificador y los de asociación describen la configuración de los objetos y de los enlaces que pueden ocurrir cuando se ejecuta una instancia de la colaboración. Cuando se instancia una colaboración, los objetos están ligados a los roles de clasificador y los enlaces a los roles de asociación. El rol de asociación puede ser desempeñado por varios tipos de enlaces temporales, tales como argumentos de procedimiento o variables locales del procedimiento. Los símbolos de enlace pueden llevar estereotipos para indicar enlaces temporales.

Un uso de un diagrama de colaboración es mostrar la implementación de una operación. La colaboración muestra los parámetros y las variables locales de la operación, así como asociaciones más permanentes. Cuando se implementa el comportamiento, la secuencia de los mensajes corresponde a la estructura de llamadas anidadas y el paso de señales del programa.

Un diagrama de secuencia muestra secuencias en el tiempo como dimensión geométrica, pero las relaciones son implícitas. Un diagrama de colaboración muestra relaciones entre roles geométricamente y relaciona los mensajes con las relaciones, pero las secuencias temporales están menos claras.

Como otros diagramas, el diagrama de colaboración también se compone de elementos como lo son:

Mensajes: los mensajes se muestran como flechas etiquetadas unidas a los enlaces. Cada mensaje tiene un número de secuencia, una lista

Page 23: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 18 -

opcional de mensajes precedentes, una condición opcional de guarda, un nombre y una lista de argumentos y un nombre de valor de retorno opcional. El nombre de serie incluye el nombre (opcional) de un hilo. Todos los mensajes del mismo hilo se ordenan secuencialmente. Los mensajes de diversos hilos son concurrentes a menos que haya una dependencia secuencial explícita.

Flujos: Generalmente, un diagrama de colaboración contiene un símbolo para un objeto durante una operación completa. Sin embargo, a veces, un objeto contiene diferentes estados que se deban hacer explícitos. Por ejemplo, un objeto pudo cambiar de localización o sus asociaciones pudieron diferenciarse. Los diferentes símbolos de objeto que representan un objeto se pueden conectar usando flujos "become" o "conversión". Un flujo "become" es una transición, a partir de un estado de un objeto a otro. Se dibuja como una flecha de línea discontinua con el estereotipo "become" o "conversión" y puede ser etiquetado con un número de serie para mostrar cuando ocurre. Un flujo de conversión también se utiliza para mostrar la migración de un objeto a partir de una localización a otra distinta.

Una vez que se realiza el análisis y diseño con la herramienta UML, ya se tiene una visión de los requerimientos del sistema de información, entonces se debe crear la base de datos donde se almacenara la información para posteriormente acceder a los datos de forma rápida y estructurada, para ello se hizo uso del sistema gestor de bases de datos SQL server 2000 que es un potente motor de bases de datos de alto rendimiento capaz de soportar grandes cantidades de registros.

SQL Server instala por defecto seis bases de datos, cuatro de sistema que utiliza SQL Server que son master (guarda información de todas las bases de datos, gestiona usuarios, permisos y parámetros de configuración), model (es la plantilla para crear nuevas bases de datos), tempdb (es un espacio de trabajo temporal para procesar consultas y procesar tareas de SQL Server) y la ultima que es msdb (utilizada por el agente de SQL, mantiene datos de alertas, trabajos, notificaciones y tareas programadas) y dos de ejemplos para poder realizar pruebas. El funcionamiento de este se inicia cuando se necesita recuperar datos de la base de datos se utiliza el lenguaje SQL para efectuar la petición, el sistema gestor de la base de datos procesa la petición SQL, recupera los datos solicitados y los devuelve.

SQL se utiliza para controlar todas las funciones que un sistema gestor de base de datos proporciona a los usuarios, incluyendo entre ellos la definición de datos (permite al usuario definir la estructura y organización de los datos almacenados y de las relaciones entre ellos), la recuperación de datos (SQL permite al usuario o a un programa de aplicación recuperar los datos almacenados de la base de datos y utilizarlos), la manipulación de datos (que permite al o programa usuario o programa de aplicación actualizar la base de datos añadiendo nuevos datos, suprimiendo datos antiguos o modificando datos previamente almacenados), Compartición de datos (SQL se utiliza para coordinar la compartición de datos por parte de usuarios concurrentes,

Page 24: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 19 -

asegurando que no interfieran unos con otros) y por último la integridad de datos (SQL define restricciones de integridad en la base de datos, protegiéndola así contra corrupción debidas a actualizaciones inconsistentes o fallas del sistema). Por tanto SQL es un lenguaje completo de control e interacción con un sistema de gestión de base de datos.

SQL juega papeles muy importantes, tales como:

SQL es un lenguaje de consultas interactivas, ya que los usuarios escriben ordenes SQL en un programa SQL interactivo para recuperar datos y mostrarlos en la pantalla, proporcionando una herramienta conveniente y fácil de usar para consultas en la base de datos.

SQL es un lenguaje de programación de base de datos, los programadores insertan ordenes SQL en sus programas de aplicación para acceder a los datos de la base de datos. Tanto como en los programas escritos por el usuario como los programas de utilidad de la base de datos (tales como los escritores de informes y las herramientas de entrada de datos).

SQL es un lenguaje de administración de base de datos, el administrador de la base de datos responsable de gestionar una base de datos en un computador utiliza SQL para definir la estructura de la base de datos y para controlar el acceso a los datos almacenados.

SQL es un lenguaje cliente / servidor, se utiliza esta arquitectura para minimizar el tráfico por la red, además permite tanto a las PCs como a los servidores que efectúen mejor su trabajo.

SQL es un base de datos distribuidas, los sistemas de gestión de base de datos distribuidos utilizan SQL para ayudar a distribuir datos a través agraves de muchos sistemas de información conectados. El software de gestión de base de datos de cada sistema utiliza SQL para comunicarse con otros sistemas, enviando peticiones para acceso de datos.

SQL es un lenguaje de pasarela de base de datos, en una red informática con mezcla de diferentes productos DBMS, SQL se utiliza a menudo en una pasarela (gateway) que permite que nuestro producto DBMS se comunique con otro producto.

SQL proporciona comandos del Lenguaje de Definición de Datos (DDL) y el Lenguaje de Manipulación de Datos (DML). Los comandos DDL permiten crear y definir nuevas bases de datos, campos e índices, mientras que los comandos DML permiten crear consultas para ordenar, filtrar y extraer datos de la base de datos.

Las Operaciones DDL o lenguaje de definición de datos incluyen una serie de comandos que pueda utilizar para crear tablas e índices y para modificar tablas agregando o quitando columnas e índices. Los identificadores o nombres de campos, índices o tablas no tienen restricción alguna en cuanto a la forma en que se digiten, lo único que hay que tomar en cuenta son los espacios en blanco o acentos deben ir entre corchetes.

Las Operaciones DML o lenguaje de manipulación de datos se utilizan para recuperar, actualizaros agregar o eliminar registros de tablas. Para estas tareas

Page 25: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 20 -

se admiten diversas instrucciones pero la mayoría de ellas utilizan la estructura de consulta SELECT.

Una vez realizada la base de datos se procede a elegir el lenguaje de programación que se va a utilizar, en este caso se utiliza Java que es un lenguaje de programación orientado a objetos , con el propósito de crear un lenguaje que pudiera funcionar en redes computacionales heterogéneas ( redes de computadoras formadas por más de un tipo de computadora, ya sean PC, MAC's, estaciones de trabajo, etc.),y que fuera independiente de la plataforma en la que se vaya a ejecutar. Esto significa que un programa de Java puede ejecutarse en cualquier máquina o plataforma. Java es toda una tecnología orientada a la programación de software con el cual podemos realizar cualquier tipo de programas. Hoy en día, la tecnología Java ha cobrado mucha importancia en el ámbito de Internet gracias a su plataforma. La tecnología Java está compuesta básicamente por 2 elementos: el lenguaje Java y su plataforma. Como plataforma nos referimos a la máquina virtual de Java (Java Virtual Machine). Una de las principales características que favoreció el crecimiento y difusión del lenguaje Java es su capacidad de que el código fuente funcione sobre cualquier plataforma de software y hardware, es decir, un mismo programa puede ejecutarse en varios sistemas sin tocar el código fuente.

El lenguaje fue diseñado con las siguientes características:

Simple: Elimina la complejidad de los lenguajes como "C" y da paso al contexto de los lenguajes modernos orientados a objetos. La filosofía de programación orientada a objetos es diferente a la programación convencional.

Familiar: Como la mayoría de los programadores están acostumbrados a programar en C o en C++, la sintaxis de Java es muy similar al de estos.

Robusto: El sistema de Java maneja la memoria de la computadora. No hay que preocuparse por apuntadores, memoria que no se esté utilizando, etc. Java realiza todo esto sin necesidad de que uno se lo indique.

Seguro. El sistema de Java tiene ciertas políticas que evitan se puedan codificar virus con este lenguaje. Existen muchas restricciones, especialmente para los applets, que limitan lo que se puede y no puede hacer con los recursos críticos de una computadora.

Portable. Como el código compilado de Java (conocido como byte code) es interpretado, un programa compilado de Java puede ser utilizado por cualquier computadora que tenga implementado el interprete de Java.

Independiente a la arquitectura. Al compilar un programa en Java, el código resultante un tipo de código binario conocido como byte code. Este código es interpretado por diferentes computadoras de igual manera, solamente hay que implementar un intérprete para cada plataforma. De esa manera Java logra ser un lenguaje que no depende de una arquitectura computacional definida.

Multithreaded. Un lenguaje que soporta múltiples threads es un lenguaje que puede ejecutar diferentes líneas de código al mismo tiempo.

nterpretado. Java corre en máquina virtual, por lo tanto es interpretado.

Page 26: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 21 -

Dinámico. Java no requiere que compiles todas las clases de un programa para que este funcione. Si realizas una modificación a una clase Java se encarga de realizar un Dynamic Bynding o un Dynamic Loading para encontrar las clases.

Entre las ventajas de utilizar Java están que no se debe volver a escribir el código si se quiere ejecutar el programa en otra máquina, un solo código funciona para todos los browsers compatibles con Java o donde se tenga una Máquina Virtual de java. Además es un lenguaje de programación orientado a objetos y tiene todos los beneficios que ofrece esta metodología de programación. Otra ventaja es que un browser compatible de java deberá ejecutar cualquier programa hecho en java, esto ahorra a los usuarios tener que insertar plug – ins y demás programas que a veces quitan tiempo y espacio en disco. Java es un lenguaje y por lo tanto puede hacer todas las cosas que puede hacer un lenguaje de programación como cálculos matemáticos, procesadores de palabras, bases de datos, aplicaciones graficas, animaciones, sonido, hojas de cálculo, etc. Por último si lo que nos interesa son las páginas web, estas ya no tienen que ser estáticas ya que se les puede poner toda clase de elementos multimedia y permiten un alto nivel de interactividad sin tener que gastar en paquetes de multimedia.

Entre las limitantes que java posee están la velocidad, los programas en java no tienden a ser rápidos, java es un lenguaje de programación y esta es una gran limitante y aunque es orientado a objetos no es fácil de aprender sobre todo para los que no son programadores, como java es nuevo no se conocen bien todas sus capacidades.

Para realizar las interfaces utilizaremos Netbeans que permite que las aplicaciones sean desarrolladas a partir de un conjunto de componentes de software llamados módulos. Un módulo es un archivo Java que contiene clases de java escritas para interactuar con las APIs de NetBeans y un archivo especial (manifest file) que lo identifica como módulo. Las aplicaciones construidas a partir de módulos pueden ser extendidas agregándole nuevos módulos. Debido a que los módulos pueden ser desarrollados independientemente, las aplicaciones basadas en la plataforma NetBeans pueden ser extendidas fácilmente por otros desarrolladores de software. NetBeans está escrito en Java - pero puede servir para cualquier otro lenguaje de programación

La Plataforma NetBeans es una base modular y extensible usada como una estructura de integración para crear aplicaciones de escritorio grandes. Empresas independientes asociadas, especializadas en desarrollo de software, proporcionan extensiones adicionales que se integran fácilmente en la plataforma y que pueden también utilizarse para desarrollar sus propias herramientas y soluciones. La plataforma ofrece servicios comunes a las aplicaciones de escritrio, permitiéndole al desarrollador enfocarse en la lógica específica de su aplicación. Entre las características de la plataforma están: Administración de las interfaces de usuario (ej. menús y barras de herramientas), Administración de las configuraciones del usuario, Administración del almacenamiento (guardando y cargando cualquier tipo de

Page 27: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 22 -

dato), Administración de ventanas, Framework basado en asistentes (diálogos paso a paso). NetBeans contiene todos los módulos necesarios para el desarrollo de aplicaciones Java en una sola descarga, permitiéndole al usuario comenzar a trabajar inmediatamente.

Netbeans permite diseñar interfaces de usuario swing de manera intuitiva arrastrando componentes de interfaz de una paleta al área de interfaz, también puede usar el generador GUI para mostrar prototipos de interfaz a los clientes. NetBeans incluye funciones de localización y accesibilidad de interfaces de usuario. Permite crear páginas JSF totalmente funcionales para manipular datos de una base de datos. Compatible con JavaServer Faces (JSF), JavaServer Pages (JSP), unidades de persistencia, Struts y JavaServer Pages Standard Tag Library (JSTL). Incluye un editor visual para los descriptores de ejecución y un supervisor HTTP para depurar aplicaciones web.

Con el modelado UML de NetBeans, los diseñadores pueden centrarse en el diseño de la aplicación, y los desarrolladores, en el código. Primero, los diseñadores y analistas diseñan aplicaciones con UML, un lenguaje de modelado estándar, después, los desarrolladores generan código fuente a partir del modelo UML. También funciona en sentido inverso: es posible actualizar el modelo a partir de cambios realizados en el código fuente.

Netbeans tiene diferentes ventanas del generador de interfaces graficas de usuario que incluyen:

La interfaz grafica de usuario: los botones adicionales de la barra de herramientas permiten acceder cómodamente a los comandos habitual.

Inspector: proporciona una representación, tanto visual como no visual, de todos los componentes de la aplicación en forma de jerarquía de árbol. El inspector también permite visualizar el componente del árbol que se está editando en el generador de interfaces gráficas de usuario, así como organizar los componentes en los paneles disponibles. Paleta, lista personalizable de los componentes disponibles que contiene fichas para los componentes de JavaBeans, JFC/Swing y AWT, así como administradores de diseño. Además, puede crear, eliminar y reorganizar las categorías que se muestran en la paleta utilizando el personalizador.

Ventana de propiedades: muestra las propiedades del componente seleccionado en el generador de interfaces gráficas de usuario y las ventanas Inspector, Proyectos o Archivos.

El enfoque de NetBeans incorpora las mejores características, a fin de garantizar que las aplicaciones creadas con el IDE se adhieran a los estándares de la industria. NetBeans posee numerosas características que hacen que el IDE sea atractivo para cualquier desarrollador, incluyendo la amplia integración de las características específicas de la tecnología Java que no se encuentran disponibles en otros conjuntos de herramientas de aplicaciones multiplataforma. Las características de NetBeans de flexibilidad entre plataformas, el cumplimiento de UML y la capacidad de administrar la complejidad ayudan a garantizar que las aplicaciones cumplan con los requerimientos específicos del negocio. La nueva velocidad de desarrollo

Page 28: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 23 -

requiere también la visibilidad y confiabilidad del código abierto, conjuntamente con las capacidades de Java.

Para la creación de informes se utiliza JasperReport que es la mejor herramienta de código libre en java para generar reportes. Esta completamente escrita en java y se puede utilizar en una gran variedad de aplicaciones java incluyendo aplicaciones web, para generar contenido dinámico. JasperReport trabaja en forma similar a un compilador y a un intérprete, el usuario diseña el reporte codificándolo en XML de acuerdo a las etiquetas y atributos definidos en un archivo llamado jasperreports.dtd (parte de JasperReport). Usando XML el usuario define completamente el reporte, describiendo donde debe colocar el texto, imágenes, líneas, rectángulos, como adquirir los datos, como realizar ciertos cálculos, etc. Este archivo fuente XML debe ser compilado para obtener un reporte real. La versión compilada del fuente es nombrada “archivo jasper” (este termina con .jasper). un archivo jasper es el compilado de un código fuente. Cuando tenemos un archivo jasper, necesitamos los datos para producir un reporte. Se puede utilizar la librería JasperReport para llenar el reporte en varios entornos como una aplicación web. Jasper tiene disponible un visualizador especial para desplegar la vista previa de un reporte, diseñado para aplicaciones tradicionales de Java basadas en Swing.

iReport es un diseñador visual de código libre para JasperReport escrito en Java. Es un programa que ayuda a los usuarios y desarrolladores que usan la librería JasperReport para diseñar reportes visualmente. A través de una interfaz simple de usar, iReport provee las funciones más importantes para crear reportes en poco tiempo. iReport es de mucha ayuda para los que no conocen la sintaxis XML para generar reportes de JasperReport.

iReport provee a los usuarios de JasperReport una interfaz visual para construir reportes, generar archivos “jasper” y “print” de prueba. iReport nació como una herramienta de desarrollo, pero puede utilizarse como una herramienta de oficina para adquirir datos almacenados en una base de datos, sin pasar a través de alguna otra aplicación. iReport puede leer y modificar ambos tipos de archivo, XML y jasper. A través de JasperReport, es capaz de compilar XML a archivos jasper y “ejecutar reportes” para llenarlos usando varios tipos de fuentes de datos (JRDataSource) y exportar el resultado a PDF, HTML, XLS, CSV. Para que los datos se puedan visualizar en el reporte es necesario descargar las librerías de JasperReport y de iReport, para esto es necesario tener instalado el Jdk 1.4 o superior, no basta con tener instalado el J2RE. Además de ello se debe establecer la conexión entre iReport y la base de datos para lo que se debe proporcionar el driver JDBC correspondiente. Las secciones que componen a un reporte en iReport son title, el título de nuestro reporte debe escribirse en está sección. Solo se mostrará en la primera página del reporte. PageHeader, aparece en la parte superior de cada página. Puede contener información adicional del reporte, descripciones, etc. ColumnHeader, en esta sección se muestran los nombres de los campos que se van a presentar. Detail, en esta sección se despliegan los valores

Page 29: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 24 -

correspondientes a los nombres de los campos definidos en la sección anterior. ColumnFooter, puede presentar información de totales para algunos de los campos de la sección detail. PageFooter, aparece en la parte inferior de cada página. Este parte puede presentar, la fecha, número de página del reporte. Summar, esta sección puede presentar totales de campos de la sección detail, si se desea incluir algún gráfico en el reporte, debe hacerse en esta sección. JasperReports no maneja directamente gráficos, estos deben crearse independientemente como imágenes, incluso utilizando una de las numerosas librerías de código libre disponibles para la creación de gráficos. La imagen producida será mostrada usando un componente de imagen. La idea es realmente simple, pero la creación de un gráfico en tiempo de ejecución requiere de un buen conocimiento de la programación de JasperReports, y muchas veces es necesario utilizar scriptlets capaces de colectar los datos que se mostrarán en el gráfico.

Page 30: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 25 -

CAPITULO I:

MODELO DE REQUERIMIENTOS

“El tiempo más rentable es el de Planificar y Preparar”

Page 31: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 26 -

ENTORNO DE LA EMPRESA:

ANTECEDENTES

PROMECYS es un programa de modalidad especial dentro de la facultad de ciencias y sistemas de la Universidad Nacional de Ingeniería, el cual brinda la oportunidad de cursar la carrera de ingeniería de Sistemas a bachilleres, técnicos o profesionales del área administrativa e informática que laboran en alguna empresa o poseen su propio negocio. Este programa se origino en el año 1997, con el propósito de dar respuesta a una creciente demanda de profesionalización en una gran parte de la población laboral, así como aminorar la brecha existente entre los bachilleres que ingresan a las universidades estatales como también a los que quedan fuera del sistema regular universitario. La carrera consta de cinco años sin incluir la culminación de estudios, para esto el estudiante tiene la opción de realizar monografía o bien cursos de titilación clasificados en Mercadotecnia, Sistemas de Información y Calidad. En esta modalidad el año académico está dividido en cuatrimestres, cada cuatrimestre tiene una duración de 14 semanas con derecho a llevar 4 asignaturas por cuatrimestre. El pensum de estudio consta de 57 asignaturas, impartidas con un promedio de 12 asignaturas por cada año académico. PROMECYS brinda servicios adicionales como: programas de becas, orientados para aquellos alumnos de escasos recursos económicos y que alcancen un promedio mayor a 70% en cada asignatura. Para la mayor comodidad para nuestros alumnos, la facultad de ciencias y sistemas cuenta con cinco salas para laboratorio, la mayoría con acceso a Internet. El acceso libre a los laboratorios se da a través de tarjetas con precios módicos. Por las características que presenta esta modalidad es de vital importancia la elaboración de módulos de estudio por asignatura para la consolidación de los conocimientos adquiridos por los estudiantes durante los encuentros. También se impulsa a los estudiantes a desarrollar sus habilidades artísticas de los estudiantes mediante grupos de folklore, cultura y deportes.

Page 32: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 27 -

Por ultimo se contribuye a consolidar y actualizar los conocimientos de los estudiantes en el área informática, se sirven cursos libres en los siguientes campos:

SQL Server Internet Visual Basic Técnicas en diseño grafico Diseño de paginas Web Windows 98 y 2000 Office Mantenimiento preventivo y correctivo de computadoras

El lema es “Formando para la era del Conocimiento”.

MISION PROMECYS

La facultad de ciencias y sistemas es una entidad de la Universidad Nacional de Ingeniería, con excelencia académica, dedicada a la formación de profesionales altamente calificados en Ingeniería de Sistemas brindando una sólida preparación básica-científica-humanística a los estudiantes de Ingeniería y arquitectura, capaces de enfrentar las demandas del desarrollo social y tecnológico del país y la región. VISION PROMECYS Ser una facultad con excelencia académica, promotora de investigación científica y tecnológica, permitiendo intercambiar experiencias con las facultades y el sector productivo del país y la región. OBJETIVOS DE PROMECYS

Atender las demandas de profesionales en las empresas que deseen continuar profesionalizándose.

Dar respuesta a la demanda de bachilleres que no tienen acceso a las

universidades vía examen de admisión.

Atender la demanda de estudiantes de Ingeniería que son trabajadores y necesitan culminar sus estudios.

Page 33: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 28 -

ESTRUCTURA ORGANIZACIONAL

Page 34: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 29 -

DESCRIPCION DEL PROBLEMA

Actualmente el Programa de Modalidad Especial de La Facultad de

Ciencias y Sistemas (PROMECYS) realiza sus procesos de forma manual, al ser este un programa de carácter educativo implica el manejo de abundante información de los estudiantes que forman parte del mismo, esto deja en evidencia el manejo inadecuado que se le da a la información ya que no se tiene un control exacto sobre la valiosa información que el programa manipula como los datos de los estudiantes, de los trabajadores, las notas que obtienen los estudiantes, datos de los profesores, etc.

Uno de los procesos importantes que se llevan a cabo es el proceso de matricula que se realiza también de forma manual lo que provoca que dicho proceso sea lento, además de ello se tienden a cometer errores en la escritura ya que por la rapidez del proceso pueden ocurrir equivocaciones en el llenado de la hoja de matricula que es uno de los requisitos a cumplir, también se puede dar el caso de que la letra con que se ha llenado dicha hoja no sea legible o entendible lo que provoca atraso ya que se tiene que recurrir a la persona que la llenó para verificar los datos o información plasmada. La realización del proceso de matricula de forma manual resulta incomoda para el estudiante así como también para el empleado de PROMECYS por que provoca pérdida de tiempo al llevar a cabo la misma.

Debido a la forma en que se lleva a cabo el proceso de matricula no se

puede tener con exactitud el registro de alumnos que tiene este programa, ya que resulta difícil y trabajoso contar el total de estudiantes que tiene PROMECYS, cuantos hay de primer ingreso, cuantos son traslados, cuantos provienen directamente de la secundaria, cuantos están cursando su segunda carrera, cuantos son varones y cuantos mujeres, no hay control de cuantos estudiantes desertan y cuantos egresan de la carrera, todos estos datos son de suma importancia para el programa por que les permite tener datos estadísticos exactos en cuanto al programa se refiere.

Al igual que el proceso de matricula la realización del proceso de

inscripción de asignaturas se lleva a cabo de forma manual lo que significa atraso ya que para que el estudiante pueda llevar una asignatura el trabajador de PROMECYS debe verificar si se cumple con el prerrequisito y la precedencia de la asignatura a inscribir lo que se verifica con el pensum de la carrera y a la vez se revisan las notas de cada uno de los estudiantes que también se registran de forma manual lo que conlleva a realizar dicho proceso de manera lenta y tediosa para el trabajador de PROMECYS así como incomoda para los estudiantes por el tiempo que se toma realizar este proceso.

Al llevar a cabo los procesos de forma manual se tienden a cometer

errores en todos los aspectos los registros corren el riesgo de perderse o dañarse, es común que en la manipulación de la información las notas se pierdan o confundan esto perjudica en gran manera al estudiante por que las notas son consideradas información delicada y son el indicio o pasaporte que

Page 35: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

- 30 -

permite inscribir o no las asignaturas establecidas de acuerdo al año que cursen los estudiantes.

Otra dificultad que se presenta en PROMECYS es la realización de reportes ya que la recopilación de la información es tardada, para realizar constancias de notas o historiales académicos el tiempo de entrega es extenso debido a lo difícil que se hace la búsqueda de la información por alumno.

PROMECYS como un programa que ofrece sus servicios a los

estudiantes considera de suma importancia que se facilite el acceso al mismo desde las diferentes perspectivas para el estudiante, quién busca un servicio optimo y preciso sin pérdidas de tiempo de modo que maximice el mismo y asegure la calidad del servicio brindando de este modo satisfacción en la atención a los estudiantes, lo que se puede obtener a través de un sistema que permita acortar los tiempos del proceso, disminuir errores y evitar molestias al estudiante y atrasos innecesarios a los funcionarios del programa logrando de este modo un trabajo en conjunto satisfactorio para ambas partes y optimizando así tiempo y recursos disponibles.

PROMECYS presenta debilidades en el proceso de matricula debido a

que esta es realizada también de forma manual por lo tanto los tiempos de atención son mas extensos y se tiende a cometer errores lo que contribuye a la lentitud del proceso de matricula e inscripción, esta debilidad se da a nivel de dirección ya que esta no se ha preocupado por la creación de un software que facilite el proceso y mas aun que haga de este una herramienta que le permite optimizar el tiempo, además de no contar con el proceso de matricula e inscripción de asignaturas automatizados hace de PROMECYS un programa atrasado y por ende provoca inconformidad entre algunos estudiantes debido a las molestias por las que se tiene que pasar para poder ser parte del programa.

Para erradicar la inconformidad del cliente (estudiante) es preciso hacer uso de la tecnología de modo que permita agilizar el proceso de matricula e inscripción de asignaturas, ahorrando tiempo y optimizando los recursos que como programa debe aprovechar para dar mayor confiabilidad y credibilidad a los estudiantes acerca de la información que PROMECYS maneja, esto se logra con la implementación de un sistema de información que registre el proceso de matricula e inscripción de asignaturas, el registro de las asignaturas, registro de notas, registro de profesores, registro de trabajadores, etc evitando así atrasos e inconformidad a los estudiantes.

Cuando se oferta un servicio como es el caso de PROMECYS es

indispensable que este sea optimo, permitiendo así la satisfacción de los estudiantes para evitar que estos busquen otras opciones, por lo que se deben ofrecer todas las comodidades posibles de acuerdo a las necesidades que demandan los estudiantes de este modo se permitirá una mayor atención de los mismos obteniendo así resultados exitosos que son de gran beneficio para el programa.

Page 36: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

31

DESCRIPCION DEL SISTEMA DE NEGOCIOS

Para ingresar al Programa de Modalidad Especial de la Facultad de Ciencias y Sistemas el estudiante debe realizar ciertas actividades durante el proceso de matrícula. La información recopilada en dichas actividades se registran en documentos es decir se lleva un control manual.

El proceso inicia con la prematrícula, en el cual el estudiante debe presentar el recibo de pago de prematrícula, seguidamente se debe llenar sus datos en una hoja de formato, luego el empleado de PROMECYS debe entregar una constancia que indica que la prematricula se ha realizado, esta actividad la realizan solamente los estudiantes de primer ingreso. Una vez que se ha finalizado la prematrícula se envía la lista de estudiantes a Registro Central de la UNI para obtener los números de carnet que se asignaran a cada uno de los estudiantes de PROMECYS. La siguiente actividad a realizar es la matrícula en la que se hace oficial el ingreso del estudiante, para ello, se debe presentar el recibo de pago de matrícula, se llenan los datos en el formato el cual contiene los ítems de datos personales y datos generales además del tercer ítem Inscripción de clases. La matricula se realiza una vez por año y la inscripción tres veces al años en cada inicio de cuatrimestre.

Dentro de los datos personales se deben especificar los nombres y apellidos, estado civil, sexo, lugar, fecha de nacimiento, nacionalidad, departamento, municipio, dirección habitual, numero de teléfono, e-mail, fax, celular. Luego se llenan los datos de la información general, tales como: centro de estudio de secundaria, tipo de centro (estatal, autónomo, privado y subvencionado), el tipo de estudiante que puede ser ordinario, becario y trabajador, también se debe especificar la situación escolar que indica si el estudiante es de nuevo ingreso, reingreso, traslado interno, traslado externo, si esta continuando la carrera o si es su segunda carrera, son datos importantes para el programa de modo que se maneje un control con la información concerniente a cada uno de los estudiantes que integran el mismo.

Seguidamente se deben indicar las asignaturas a inscribir aquí el empleado verifica si la asignatura solicitada por el estudiante cumple con los requisitos y precedencia del pensum de la carrera, si la asignatura no cumple con dichos requerimientos el estudiante no podrá inscribir las asignaturas. En caso de primer ingreso se inscriben todas las asignaturas del primer cuatrimestre. Cuando se realizan las inscripciones se van contabilizando la cantidad de alumnos asignados a cada grupo especificado de acuerdo a las asignaturas inscritas, una vez que un grupo ha llegado al limite de alumnos se crea otro para ubicar a los demás para que no quede ninguno sin ubicación. El registro de notas se realiza en hojas que contienen un formato, en la cual el profesor indica las notas que obtuvo cada estudiante, luego este formato es entregado al empleado de PROMECYS quien se encarga de guardarlo. Además se realizan registro de los profesores que imparten las asignaturas de esta modalidad.

Page 37: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

32

DESCRIPCIÓN DEL SISTEMA INFORMÁTICO

Con el propósito de ahorrar tiempo y brindar satisfacción al estudiante supliendo todas sus necesidades se propone la implementación de un sistema de información que controle las matriculas e inscripción de asignaturas.

Dentro de las funciones que se necesita que realice el sistema de información está almacenar todas las prematrículas realizadas, en donde se introducirán la información de los estudiantes, es decir datos personales, datos laborales, para los estudiantes que trabajan.

El registro de matrícula es otra de las actividades que se realizarán, previo

a la matrícula se debe tener registrado la prematrícula de cada estudiante a ingresar a PROMECYS, entre los datos que ingresan en esta actividad están el año de curso, cuatrimestre y la inscripción de asignaturas. Cabe agregar que no siempre que se realice matrícula se deben inscribir las asignaturas, esta actividad de inscripción se puede realizar por aparte, además permite actualizar datos de los estudiantes.

La inscripción de asignaturas también estará comprendida en el sistema,

éste proceso introducirá las materias que el estudiante llevará en el cuatrimestre además mostrará cuales son las asignaturas que el estudiante puede inscribir. En caso de las asignaturas reprobadas, no se permitirá la inscripción de la asignatura posterior. Esta actividad también permite actualizar los datos de los estudiantes.

Las asignaturas que conforman la carrera se podrá visualizar en el

sistema, por lo que será más fácil el acceso del usuario, ya que también se especificará la precedencia y el requisito, es decir que al momento de inscribir el usuario podrá consultar las asignaturas que corresponden en cada cuatrimestre teniendo como referencia el pensum de la carrera.

Se llevará registro de docentes que laboran para PROMECYS donde se

indicará las asignaturas que imparten, como también el estado del docente si está actualmente laborando o no. De igual manera se almacenará los datos de los empleados, especificando el cargo que ocupan, de esta manera se puede tener a la disposición de los empleados del programa para cualquier consulta. También se podrá consultar notas ya que al finalizar cada cuatrimestre se deben introducir las notas de los estudiantes los cuales han sido registrados durante el proceso de matrícula.

El sistema también será capaz de generar reportes como:

Hoja de prematrícula por estudiante Hoja de matrícula por estudiante Estudiantes Prematriculados Estudiantes Matriculados Grupos de la carrera Estudiantes Becados Datos de Profesor Datos de empleado

Page 38: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

33

Asignaturas impartidas por grupos Notas de los estudiantes Hoja de Inscripción Estudiantes trabajadores Estudiantes sin Carnet Estudiantes Hombres Estudiantes Mujeres Notas por cuatrimestre Estudiantes por año

Page 39: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

34

CAPITULO II:

ANALISIS DEL SISTEMA

“Si comienza a planificar, no te desanimes si te equivocas muchísimo.”

Page 40: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

35

DIAGRAMAS DE ACTIVIDAD Los diagramas de actividad representan el modelo actual que sigue PROMECYS, el cual es llevado a cabo de forma manual para realizar los procesos que componen el funcionamiento del mismo. Los diagramas de actividad que representan los procesos principales de PROMECYS son el de prematricula, matricula, inscripción y solicitud del certificado de notas. En todos los procesos se realiza una interacción entre el estudiante y el empleado. Estos diagramas permiten al programador tener una visión de cómo funciona actualmente PROMECYS para luego poder crear un modelo a seguir que sea más eficiente de modo que permita agilizar los procesos y estos se puedan realizar en menor tiempo. En el funcionamiento actual podemos distinguir a través de los diagramas que se realiza trabajo innecesario. En el diagrama de prematricula se registra la prematricula y se llena una hoja con todos los datos del estudiante y en el diagrama de matricula se verifica si la prematricula existe para poder realizar la matricula y de nuevo se vuelve a llenar la hoja con todos los datos del estudiante, esto se da para actualizar los datos del mismo, pero se realiza dos veces en un periodo corto de tiempo este es un problema porque se almacena información redundante. El diagrama de actividad del proceso inscripción refleja que para poder inscribir es necesario cumplir con el pensum, pero esto se hace complejo porque al hacerlo manual, si una de las asignaturas a inscribir no cumple los requerimientos no puede inscribir la asignatura y el empleado debe revisar el pensum para indicarle que otras asignaturas puede llevar y para esto se toma su tiempo porque le toca comparar con los registros de notas. El proceso para la solicitud del certificado de notas es demorado porque cuando el estudiante llega a solicitarlo el empleado debe verificar que las notas hayan sido registradas, entonces el empleado recaba todas las notas que han sido solicitadas por el estudiante para luego realizar el certificado. Con los diagramas de actividad se pueden visualizar las dificultades por las que pasa PROMECYS para poder realizar las actividades que a menudo se llevan a cabo, ya que estas se hacen en un tiempo prolongado y se puede percibir que no satisfacen las necesidades inmediatas de los estudiantes.

Page 41: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

36

ESTUDIANTE

Solicita Prematricula y entrega reciboRevisa recibo prematricula

Llena hoja datos estudiantesRegistra nuevo estudiante

Recibe hoja prematriculaAgregar nueva prematricula

DIAGRAMAS DE ACTIVIDAD Proceso Prematricula PROMECYS

TRABAJADOR

Page 42: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

37

Solicita matricula y entrega recibo Verifica recibo y datos prematricula

registra matricula

recibe hoja matricula

llena hoja datos estudiante registra nuevo estudiante

registra nueva matricula

recibe hoja matricula

revisa recibo prematricula

DIAGRAMA DE ACTIVIDAD Proceso de Matricula PROMECYS

ESTUDIANTE EMPLEADO

Existe prematricula

si no

Page 43: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

38

llena hoja inscripcion revisa inscripcion

registra inscripcionrecibe hoja de inscripcion

DIAGRAMA DE ACTIVIDAD Proceso de Inscripción asignaturas PROMECYS

ESTUDIANTE EMPLEADO

Cumple con prerrequisito y precedencia

si

no

Page 44: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

39

ESTUDIANTE

Solicita notas verifica disponibilidad de notas

realizar certificado de notasrecibe certificado de notas

DIAGRAMA DE ACTIVIDAD Proceso Imprimir Certificado de Notas PROMECYS

EMPLEADO

Notas disponibles?

si

no

Page 45: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

40

DIAGRAMA DE CASO DE USO El diagrama de caso de uso se realiza para mostrar el funcionamiento del sistema de información que estamos proponiendo para dar solución a las dificultades que PROMECYS se está enfrentando. Este diagrama muestra que el único que tendrá interacción con el sistema es el empleado y que el estudiante únicamente recibirá lo que el sistema devuelve como las hojas de prematricula, de matrícula y las de inscripción. Al implementar el sistema de información los procesos se podrán realizar de manera rápida y eficiente y se beneficiaran tanto los empleados porque realizan más trabajo en menos tiempo, como los estudiantes porque las respuestas a sus solicitudes serán dadas en un tiempo mínimo. A través de los casos de uso que componen el diagrama podemos ver la secuencia de las acciones que se llevan a cabo en determinado momento. En el diagrama se reflejan los procesos que el sistema podrá llevar a cabo, entre estos está el de prematricula aquí se puede ver la lista de personas que han realizado este proceso, los datos almacenados pueden ser modificados, también se toman los datos de los posibles estudiantes, cuando ya se hace la matricula estas personas pasan a ser estudiantes y los datos de los pre matriculados pasan a la matricula, es entonces que pasan a ser estudiantes, también está la posibilidad de actualizar los datos del estudiante pero aquí los datos solo se modificaran de modo que la información almacenada no sea repetida. El proceso de inscripción es mucho más fácil ya que solo se indicara el año y cuatrimestre a cursar y al cargar la inscripción el sistema podrá mostrar las asignaturas que pueden ser inscritas. En el caso de las notas se facilitara la búsqueda, ya que estas están disponibles de forma rápida, la entrega certificados será en un tiempo mínimo. Hay información que es relevante para PROMECYS por la frecuencia con la que son solicitadas por sus estudiantes tal es el caso de los profesores que ya sea para consultas o reclamos los estudiantes siempre piden información de estos. También es relevante tener a la brevedad posible toda la información de las asignaturas (es decir pensum) que conforman la carrera que se oferta ya que también es solicitada. Por otra parte para manejar un mejor control dentro de PROMECYS es necesario contar con la información de los empleados, de la cantidad de grupos que tiene el programa y de que profesores imparten que asignaturas en que grupos. Como podemos darnos cuenta un sistema de información facilita en gran manera la realización de los procesos en PROMECYS, y hace de esta un programa competitivo y eficiente a la altura de cualquier centro de educación superior.

Page 46: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

41

Ingresar datos laborales

Modificar prematricula

Ingresar datos laboralesActualizar datos estudiantesextend

Buscar estudiantes nuevo ingreso

Buscar estudiantes reingreso

Botar asignatura

Ingresar datos estudiantes

extend

Buscar estudiantes prematriculados

extend

Buscar estudiante

Empleado

Registrar Prematricula

extend

extend

Registrar Matricula

extend

extend

extend

include

Registrar inscripcion

include

extend

extend

Registrar notas

include

extend

Imprimir hoja Prematricula

extend

Imprimir hoja matricula

extend

Imprimir hoja inscripcionextend

Estudiante

Imprimir certificado

extend

Imprimir reporte

Registrar prerequisito

Registrar precedencia

Imprimir pensum

Imprimir reporte

Registrar empleado

extend

Registrar asignatura

extend

extend

extend

Registrar grupo

Relacionar grupo_asignatura_profesor

extend

buscar profesor

Imprimir reporte

Registrar profesor

extend

extend

Empleado

Page 47: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

42

PLANTILLAS, DIAGRAMAS DE SECUENCIA Y DIAGRAMAS DE COLABORACION Cuando se identifican los casos de uso se deben describir de forma contextual a través de plantillas, se definen los actores que interactúan y en estas también se mencionan los escenarios de cada caso de uso, los escenarios son las posibles situaciones por las que puede pasar un caso de uso, en las plantillas está la información de todos los casos de uso principales y de los escenarios que cada uno de estos casos de uso tiene, en todos los escenarios el único actor que interactúa con el sistema es el empleado. Una vez que definimos todas las plantillas se continúa con la creación de los diagramas de secuencia que se realizan en correspondencia a cada escenario de cada caso de uso que ha sido definido, los diagramas de secuencia muestran de una manera clara la funcionalidad del prototipo que ha sido creado. Los diagramas de secuencia muestran desde que el empleado ingresa los datos hasta el camino que estos recorren para llegar hacia donde serán almacenados, de igual manera pasa cuando los datos son consultados y modificados. También se puede visualizar que el empleado interactúa solo con las interfaces del sistema en dependencia de los procesos que desea utilizar (de ahí la información busca el camino indicado según las instrucciones establecidas), la interfaces se relacionan con los registros que es donde la información esta almacenada. Los diagramas de secuencia nos permiten explicarle al cliente como funcionara el sistema ya que son sencillos y fáciles de entender y así este (Promecys) nos ha exteriorizado sus sugerencias con respecto a lo que desea. Para cada diagrama de secuencia que ha sido creado, corresponde un diagrama de colaboración que se crea a partir del mismo, este diagrama es mas explicito ya que muestra la secuencia de los mensajes enumerados para poder ver las acciones de forma consecutiva que se realizan entre los objetos y el empleado de PROMECYS.

Page 48: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

43

CASO DE USO: : Registro de Prematricula

DEFINICIÓN : Es el proceso que permite a un estudiante asegurar el cupo en la universidad y es el primer paso que se debe llevar a cabo para formar parte de la universidad.

PRIORIDAD : (1) Vital (2) Importante (3) Conveniente

URGENCIA : (1)Inmediata (2) Necesario (3) Puede Esperar

ACTORES NOMBRE DEFINICION

Empleado Empleado de PROMECYS que brinda atención al estudiante.

Estudiante Persona interesada en pertenecer al programa para poder concluir una carrera. Es quien solicita los servicios académicos que brinda la Universidad.

ESCENARIO #1 Nombre : Agregar Prematricula sin inconvenientes

Pre-Condiciones : -Recibo de Prematricula. - Cumplir con requisitos de prematricula

Iniciado por : Empleado Finalizado por : Empleado

Post-Condiciones : Hoja de Prematricula

Operaciones : 1. Activar interfaz registro de prematricula. 2. Registrar los datos del nuevo estudiante. 3. Guardar

ESCENARIO #2

Nombre : Prematricula de un registro existente

Pre-Condiciones : -Recibo de Prematricula -Cumplir con requisito de Prematricula

Iniciado por : Empleado Finalizado por : Empleado

Post-Condiciones : Hoja de Prematricula

Operaciones :

1. Activar interfaz registro de Prematricula. 2. Buscar registro de estudiante. 3. Actualizar datos estudiante y prematricula. 4. Registrar la inscripción y guardar.

ESCENARIO #3 Nombre : Imprimir hoja Prematricula

Pre-Condiciones : -Prematricula exista

Iniciado por : Empleado Finalizado por : Empleado

Post-Condiciones : ninguna

Operaciones :

1. Activar interfaz de registro de Prematricula 2. Buscar registro de prematricula y mostrar 3. Imprimir hoja prematricula

Page 49: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

44

CASO DE USO: : Registro de Matricula

DEFINICIÓN : Es el proceso que permite al estudiante formar parte del programa y se realiza después de la prematricula, este proceso se lleva a cabo una vez al año.

PRIORIDAD : (1) Vital (2) Importante (3) Conveniente

URGENCIA : (1)Inmediata (2) Necesario (3) Puede Esperar

ACTORES NOMBRE DEFINICION

Empleado Es la persona de PROMECYS que brinda atención al estudiante. ESCENARIO #1

Nombre : Registro de Matricula de Primer ingreso

Pre-Condiciones : - Recibo de matricula - Cumplir con prematricula

Iniciado por : Empleado Finalizado por : Empleado

Post-Condiciones : - Hoja de Matricula e inscripción

Operaciones

1. Activar interfaz de Matricula 2. Buscar datos prematricula 3. Ingresar datos matricula 4. Ingresar datos primera inscripción 5. Guardar

ESCENARIO #2

Nombre : Registro de Matricula de Reingreso

Pre-Condiciones : - Recibo de matricula Iniciado por : Empleado

Finalizado por : Empleado Post-Condiciones : - Hoja de Matricula e inscripción

Operaciones

1. Activar interfaz de Matricula 1. Buscar datos de estudiante 2. Registrar matricula 3. Registrar inscripción 6. Guardar

Page 50: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

45

ESCENARIO #3

Nombre : Actualizar datos Estudiante

Pre-Condiciones : - ninguna Iniciado por : Empleado

Finalizado por : Empleado Post-Condiciones : - ninguna

Operaciones

1. Activar interfaz de Matricula 2. Activar interfaz Datos estudiantes 3. Actualizar datos 4. Guardar

ESCENARIO #4

Nombre : Imprimir hoja matricula

Pre-Condiciones : - Matricula exista Iniciado por : Empleado

Finalizado por : Empleado Post-Condiciones : - ninguna

Operaciones

1. Activar interfaz de Matricula 5. Activar interfaz reporte matricula 6. Mostrar hoja matricula 7. Imprimir hoja matricula

Page 51: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

46

CASO DE USO: : Registro de Inscripción

DEFINICIÓN : Permite registrar las inscripciones que se hacen cada cuatrimestre en correspondencia a cada matricula

PRIORIDAD : (1) Vital (2) Importante (3) Conveniente

URGENCIA : (1)Inmediata (2) Necesario (3) Puede Esperar

ACTORES NOMBRE DEFINICION

Empleado es el que brinda atención al estudiante y permite llevar a cabo los procesos que comprende el programa

ESCENARIO #1 Nombre : Inscripción sin inconvenientes

Pre-Condiciones : Recibo de arancel del mes en curso Iniciado por : Empleado

Finalizado por : Empleado Post-Condiciones : Hoja de Inscripción

Operaciones :

1. Activar interfaz de Inscripción 2. Buscar datos de estudiantes 3. Introducir datos de inscripción 4. Guardar registro de inscripción

ESCENARIO #2

Nombre : Botar asignatura inscrita

Pre-Condiciones : Tener previa Inscripción Iniciado por : Empleado

Finalizado por : Empleado Post-Condiciones : Hoja de inscripción

Operaciones :

1. Activar la interfaz registro de inscripción 2. Buscar datos estudiantes e inscripción 3. Modificar datos inscripción 4. Guardar

ESCENARIO #3

Nombre : Imprimir hoja inscripción Pre-Condiciones : Inscripción exista

Iniciado por : Empleado Finalizado por : Empleado

Post-Condiciones : ninguna

Operaciones :

1. Activar interfaz de Inscripción 2. Activar interfaz de reporte inscripción 3. Mostrar hoja inscripción 4. Imprimir hoja inscripción

Page 52: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

47

CASO DE USO: : Registro de Notas

DEFINICIÓN : Permite almacenar las notas de las asignaturas que van cursando los alumnos de Promecys

PRIORIDAD : (1) Vital (2) Importante (3) Conveniente

URGENCIA : (1)Inmediata (2) Necesario (3) Puede Esperar

ACTORES NOMBRE DEFINICION

Empleado Es el que lleva a cabo todos los procesos en Promecys ESCENARIO #1

Nombre : Ingresar notas

Pre-Condiciones : Haber inscrito la asignatura

Iniciado por : Empleado Finalizado por : Empleado

Post-Condiciones : ninguna

Operaciones :

1. Activar interfaz registro nota 2. Buscar datos estudiante 3. Introducir datos notas 3. Guardar registro

ESCENARIO #2

Nombre : Imprimir Certificado de notas

Pre-Condiciones : ninguna Iniciado por : Empleado

Finalizado por : Empleado Post_Condiciones : ninguna

Operaciones :

1. Activar interfaz de Notas 2. Buscar datos notas 3. Activar interfaz reporte de notas 4. Mostrar reporte de notas 5. Imprimir reporte de notas

Page 53: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

48

CASO DE USO: : Registro Asignatura

DEFINICIÓN : Permite almacenar los datos de las asignaturas que forman parte de la carrera

PRIORIDAD : (1) Vital (2) Importante (3) Conveniente

URGENCIA : (1)Inmediata (2) Necesario (3) Puede Esperar

ACTORES NOMBRE DEFINICION

Empleado Es el que lleva a cabo todos los procesos en Promecys ESCENARIO #1

Nombre : Asignar prerrequisito

Pre-Condiciones : ninguna

Iniciado por : Empleado Finalizado por : Empleado

Post-Condiciones : ninguna

Operaciones :

1. Activar interfaz Asignatura 2. Buscar datos de asignatura 3. Activar interfaz prerrequisito y seleccionar dato

3. Guardar registro ESCENARIO #2

Nombre : Asignar precedencia

Pre-Condiciones : ninguna Iniciado por : Empleado

Finalizado por : Empleado Post_Condiciones : ninguna

Operaciones :

1. Activar interfaz asignatura 2. Buscar datos asignatura 3. Activar interfaz precedencia y seleccionar dato 4. Guardar registro

ESCENARIO #3 Nombre : Imprimir pensum

Pre-Condiciones : ninguna

Iniciado por : Empleado Finalizado por : Empleado

Post-Condiciones : ninguna

Operaciones :

1. Activar interfaz Asignatura 2. Activar interfaz reporte asignaturas (pensum) 3. Mostrar reporte de asignaturas (pensum) 4. Imprimir reporte

Page 54: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

49

CASO DE USO: : Registrar grupo

DEFINICIÓN : Permite tener registros de los grupos que han sido asignados de acuerdo a la cantidad de alumnos

PRIORIDAD : (1) Vital (2) Importante (3) Conveniente

URGENCIA : (1)Inmediata (2) Necesario (3) Puede Esperar

ACTORES NOMBRE DEFINICION

Empleado Es el encargado de llevar a cabo todos los procesos de Promecys. ESCENARIO UNICO

Nombre : Registrar grupo

Pre-Condiciones : Ninguna Iniciado por : Empleado

Finalizado por : Empleado Post-Condiciones : ninguna

Operaciones :1. Activar interfaz Grupo 2. Registrar grupo 3. Guardar registro

Page 55: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

50

CASO DE USO: : Registro de Profesor

DEFINICIÓN : Permite almacenar los datos de los docentes de imparten clase a los diferentes grupos de Promecys.

PRIORIDAD : (1) Vital (2) Importante (3) Conveniente

URGENCIA : (1)Inmediata (2) Necesario (3) Puede Esperar

ACTORES NOMBRE DEFINICION

Empleado Es el que lleva a cabo todos los procesos en Promecys ESCENARIO #1

Nombre : Ingresar datos nuevo Profesor

Pre-Condiciones : ninguna

Iniciado por : Empleado Finalizado por : Empleado

Post-Condiciones : ninguna

Operaciones :1. Activar interfaz registro de Profesor 2. Introducir datos de profesor

3. Guardar registro

ESCENARIO #2 Nombre : Imprimir reporte de registro Profesor

Pre-Condiciones : ninguna Iniciado por : Empleado

Finalizado por : empleado Post_Condiciones : ninguna

Operaciones :

1. Activar interfaz Registro de Profesor 2. Activar interfaz reporte Profesor

3. Mostrar reporte profesor 4. Imprimir reporte profesor

Page 56: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

51

CASO DE USO: : Registro Empleados

DEFINICIÓN : Permite registrar los empleados que forman parte del programa para llevar un mejor control de la información de los mismos.

PRIORIDAD : (1) Vital (2) Importante (3) Conveniente

URGENCIA : (1)Inmediata (2) Necesario (3) Puede Esperar

ACTORES NOMBRE DEFINICION

Empleado Es el encargado de llevar a cabo todos los procesos de Promecys. ESCENARIO #1

Nombre : Ingresar datos nuevo empleado

Pre-Condiciones : Ninguna Iniciado por : Empleado

Finalizado por : Empleado Post-Condiciones : ninguna

Operaciones :1. Activar la interfaz Registro de empleado 2. Ingresar datos empleado 3. Guardar registro

ESCENARIO #2 Nombre : Imprimir reporte empleados

Pre-Condiciones : ninguna Iniciado por : Empleado

Finalizado por : Empleado Post_Condiciones : ninguna

Operaciones :

1. Activar la interfaz Registro de empleados 2. Activar interfaz reporte de empleados 3. Mostrar reporte empleados 4. Imprimir reporte empleados

Page 57: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

52

CASO DE USO: : Relación profesor_grupo_asignaturas

DEFINICIÓN : Permite tener conocimiento de que profesores imparten determinadas asignaturas en grupos determinados

PRIORIDAD : (1) Vital (2) Importante (3) Conveniente

URGENCIA : (1)Inmediata (2) Necesario (3) Puede Esperar

ACTORES NOMBRE DEFINICION

Empleado Es el encargado de llevar a cabo todos los procesos de Promecys. ESCENARIO #1

Nombre : Registrar relación profesor_grupo_asignatura

Pre-Condiciones : Ninguna Iniciado por : Empleado

Finalizado por : Empleado Post-Condiciones : ninguna

Operaciones :1. Activar interfaz vinculo profesor_grupo_asignatura 2. Asignar relaciones 3. Guardar registro

ESCENARIO #2

Nombre : Imprimir reporte relación profesor_grupo_asignatura

Pre-Condiciones : ninguno Iniciado por : Empleado

Finalizado por : Empleado Post-Condiciones : ninguno

Operaciones :

1. Activar interfaz vinculo profesor_grupo_asignatura 1. Activar interfaz reporte profesor_grupo_asignatura 2. Mostrar reporte 3. Imprimir reporte

Page 58: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

53

: Empleado

Interfaz Prematricula

Registro Prematricula

ingresar datos

guardar datosbuscar datos

buscadatos no encontrados

guardar datosguarda

datos guardados

: Empleado

Interfaz Prematricula

Registro Prematricula

1: ingresar datos2: guardar datos

3: buscar datos

4: busca

5: datos no encontrados 6: guardar datos

7: guarda

8: datos guardados

DIAGRAMAS DE SECUENCIA Y COLABORACION Caso de Uso: Prematricula Escena 1: Agregar Prematricula sin inconvenientes Diagrama de Secuencia Diagrama de Colaboración

Page 59: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

54

Caso de Uso: Prematricula Escena 2: Prematricula de un registro existente Diagrama de Secuencia Diagrama de Colaboración

Interfaz Prematricula

: Empleado

Registro Prematricula

ingresar datos

guardar datos ()buscar datos ()

busca

"datos encontrados"

muestra datosactualiza datos prematricula

guardar datos () guardar datos ()guarda

"datos guardados"

Interfaz Prematricula

: Empleado

Registro Prematricula

1: ingresar datos2: guardar datos ()

3: buscar datos ()

4: busca

5: "datos encontrados"6: muestra datos

7: actualiza datos prematricula8: guardar datos ()

9: guardar datos ()

10: guarda

11: "datos guardados"

Page 60: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

55

: EmpleadoInterfaz

PrematriculaReporte

Prematricula

imprimir hoja prematricula ()mostrar reporte prematricula

despliega reporte

muestra reporte prematricula

aceptar impresion

reporte impreso

: Empleado

Interfaz Prematricula

Reporte Prematricula

1: imprimir hoja prematricula ()

3: despliega reporte4: muestra reporte prematricula

5: aceptar impresion

6: reporte impreso

2: mostrar reporte prematricula

Caso de Uso: Prematricula Escena 3: Imprimir hoja prematricula Diagrama de Colaboración Diagrama de Colaboración

Page 61: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

56

: EmpleadoInterfaz

MatriculaRegistro

PrematriculaRegistro

AsignaturaRegistro

InscripcionRegistro

EstudianteRegistro NotasRegistro

Maticula

buscar datos estudiante()buscar datos estudiante()

busca

muestra datos

"introduce datos matricula"

buscar asignaturas a inscribir()busca

"muestra asignaturas a inscribir"

"introduce datos inscrpción"

Guardar datos()

guardar datos()guarda

"datos guardados"

guardar datos()guarda

"datos guardados"

guardar datos()guarda

"datos guardados"

guardar datos()guarda

"datos guardados"

Caso de Uso: Matricula Escena 1: Registrar matricula de primer ingreso Diagrama de Colaboración

Page 62: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

57

: Empleado

Interfaz Matricula

Registro Prematricula

Registro Asignatura

Registro Inscripcion

Registro Maticula Registro

Estudiante

1: buscar datos estudiante()

3: busca

6: busca

8: "introduce datos matricula"9: "introduce datos inscrpción"

10: Guardar datos()

12: guarda

15: guarda

18: guarda

2: buscar datos estudiante()

4: muestra datos

5: buscar asignaturas a inscribir()

7: "muestra asignaturas a inscribir"

14: guardar datos()

16: "datos guardados"

11: guardar datos()

13: "datos guardados"

17: guardar datos()

19: "datos guardados"

Registro Notas

20: guardar datos()

21: guarda

22: "datos guardados"

Diagrama de Colaboración

Page 63: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

58

: Empleado

Interfaz Matricula

Registro Estudiante

Registro Asignatura

Registro Notas Registro Inscripcion

Registro Matricula

buscar datos estudiantes ()buscar datos ()

busca

"muestra datos"

introduce datos matricula

buscar asignaturas a inscribir ()busca

compara asignaturascompara

asignaturas filtradasmuestra asignaturas

cargar datos inscripcion

guardar datos ()guardar datos ()

guarda

"datos guardados"

guardar datos ()guarda

"datos guardados"

guardar datos ()guarda

"datos guardados"

guardar datos ()guarda

"datos guardados"

Caso de Uso: Matricula Escena 2: Registrar matricula de reingreso Diagrama de Colaboración

Page 64: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

59

: Empleado

Interfaz Matricula

Registro Estudiante

Registro Asignatura

Registro Notas

Registro Inscripcion

Registro Matricula

3: busca16: guarda

8: busca13:

10: compara19: guarda

22: guarda

25: guarda

1: buscar datos estudiantes ()5: introduce datos matricula6: cargar datos inscripcion

14: guardar datos ()

2: buscar datos ()15: guardar datos ()

4: "muestra datos"17: "datos guardados"

7: buscar asignaturas a inscribir ()

12: muestra asignaturas

18: guardar datos ()20: "datos guardados"

21: guardar datos ()23: "datos guardados"

24: guardar datos ()

26: "datos guardados"

9: compara asignaturas

11: asignaturas filtradas

Diagrama de Colaboración

Page 65: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

60

: Empleado

Interfaz Matricula

Interfaz actualizar datos estduante

Regsitro Estudiante

actualizar datos estudiantes ()desplegar interfaz

despliega y muestra datos

actualizar y guardar ()guardar datos ()

guarda

"datos guardados""datos guardados"

: Empleado

Interfaz Matricula

Interfaz actualizar datos estduante

Regsitro Estudiante

1: actualizar datos estudiantes ()

2: desplegar interfaz

3: despliega y muestra datos

4: actualizar y guardar ()

5: guardar datos ()

6: guarda

7: "datos guardados"

8: "datos guardados"

Caso de Uso: Matricula Escena 3: Actualizar datos estudiantes Diagrama de Secuencia Diagrama de Colaboración

Page 66: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

61

: Empleado

Interfaz Matricula

Reporte Matricula

imprimir hoja matricula ()mostrar reporte prematricula

despliega reporte

muestra reporte matricula

aceptar impresion

reporte impreso

Caso de Uso: Matricula Escena 4: Imprimir hoja matricula Diagrama de Secuencia Diagrama de Colaboración

: Empleado

Interfaz Matricula

Reporte Matricula

1: imprimir hoja matricula ()

3: despliega reporte4: muestra reporte matricula

5: aceptar impresion

6: reporte impreso

2: mostrar reporte matricula

Page 67: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

62

: EmpleadoInterfaz

InscripcionRegistro

EstudianteRegistro

AsignaturaRegistro Notas Registro

Inscripcion

buscar datos estudiante ()buscar datos estudiantes ()

busca

muestra datos

cargar datos inscripcion

buscar asignaturas a inscribir ()busca

comparar asignaturascompara

asignaturas filtradasmuestra asignaturas

selecciona datos inscripcion

guardar datos ()

guardar datos inscripcion ()guarda

"datos guardados"

guardar datos ()guarda

"datos guardados"

Caso de Uso: Inscripción Escena 1: Inscripción sin inconvenientes Diagrama de Secuencia

Page 68: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

63

: Empleado

Interfaz Inscripcion

Registro Estudiante

Registro Asignatura

Registro Notas

Registro Inscripcion

1: buscar datos estudiante ()

2: buscar datos estudiantes ()

3: busca

4: muestra datos

5: cargar datos inscripcion

6: buscar asignaturas a inscribir ()7: busca

8: comparar asignaturas

9: compara

10: asignaturas filtradas

11: muestra asignaturas

12: selecciona datos inscripcion 13: guardar datos ()

14: guardar datos inscripcion ()

15: guarda

16: "datos guardados"

17: guardar datos ()

18: guarda

19: "datos guardados"

Diagrama de Colaboración

Page 69: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

64

: EmpleadoInterfaz

InscripcionRegistro

EstudianteRegistro

InscripcionRegistro NotasRegistro

Matricula

buscar datos estudiante () buscar datos estudiante ()busca

muestra datos estudiante

buscar matricula ()busca

buscar inscripcion ()busca

buscar datos inscripcion ()busca

muestra datos inscripcionbotar asignatura ()

guardar datos ()

guardar datos ()guarda

"datos guardados"

Caso de Uso: Inscripción Escena 2: Botar asignatura inscrita Diagrama de Secuencia

Page 70: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

65

: Empleado

Interfaz Inscripcion

Registro Estudiante

Registro Inscripcion

Registro Notas

Registro Matricula

1: buscar datos estudiante ()2: buscar datos estudiante ()

3: busca

4: muestra datos estudiante

5: buscar matricula ()

6: busca

7: buscar inscripcion ()

8: busca

9: buscar datos inscripcion ()

10: busca

11: muestra datos inscripcion

12: botar asignatura ()13: guardar datos ()

14: guardar datos ()15: guarda

16: "datos guardados"

Diagrama de Colaboración

Page 71: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

66

: Empleado

Interfaz Inscripcion Reporte Inscripcion

imprimir hoja inscripcion ()mostrar reporte inscripcion

despliega reporte

muestra reporte inscripcion

aceptar impresion

reporte impreso

: Empleado

Interfaz Inscripcion

Reporte Inscripcion

1: imprimir hoja inscripcion ()

2: mostrar reporte inscripcion

3: despliega reporte4: muestra reporte inscripcion

5: aceptar impresion

6: reporte impreso

Caso de Uso: Inscripción Escena 3: Imprimir hoja inscripción Diagrama de Secuencia Diagrama de Colaboración

Page 72: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

67

: Empleado

Interfaz Notas Registro NotasRegistro Estudiante

buscar datos estudiante () buscar datos ()busca

muestra datos

buscar asignaturas inscritas ()busca

muestra datos asignaturasingresa notas

guardar datos ()guardar datos ()

guarda

"datos guardados"

: Empleado

Interfaz Notas

Registro Notas

Registro Estudiante

1: buscar datos estudiante ()

2: buscar datos ()

3: busca

4: muestra datos

5: buscar asignaturas inscritas ()

6: busca

7: muestra datos asignaturas

8: ingresa notas9: guardar datos ()

10: guardar datos ()

11: guarda

12: "datos guardados"

Caso de Uso: Notas Escena 1: Ingresar notas Diagrama de Secuencia

Diagrama de Colaboración

Page 73: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

68

: EmpleadoInterfaz Notas Registro

EstudianteRegistro Notas Reporte Notas

buscar datos estudiante ()buscar datos estudiante () busca

muestra datos estudiante

buscar datos notas ()

buscar datos notas ()busca

muestra datos notas

imprimir certificado de notas ()mostrar reporte notas

despliega reporte

muestra reporte notas

aceptar impresion

reporte impreso

Caso de Uso: Notas Escena 2: Imprimir certificado de notas Diagrama de Secuencia

Page 74: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

69

: Empleado

Interfaz Notas

Registro Estudiante

Registro Notas

Reporte Notas

1: buscar datos estudiante ()

2: buscar datos estudiante ()

3: busca

4: muestra datos estudiante

5: buscar datos notas ()6: buscar datos notas ()

7: busca

8: muestra datos notas

9: imprimir certificado de notas ()

10: mostrar reporte notas

11: despliega reporte12: muestra reporte notas

13: aceptar impresion

14: reporte impreso

Diagrama de colaboración

Page 75: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

70

Registro Precedencia : Empleado

Interfaz Asignatura

Registro Asignatura

Interfaz Precedencia

buscar asignatura () buscar asignatura ()busca

muestra asignatura

asignar precedencia

activar interfazactiva interfaz

buscar datos precedencia ()

busca datos ()

busca

muestra datos

muestra datos precedencia

selecciona precedencia

guardar datos precedencia ()guardar datos ()

guarda

"datos guardados""datos guardados"

Caso de uso: Registro Asignatura Escena 1: Asignar precedencia Diagrama de Secuencia

Page 76: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

71

Registro Precedencia

: Empleado

Interfaz Asignatura

Registro Asignatura

Interfaz Precedencia

2: buscar asignatura ()

3: busca

4: muestra asignatura

6: activar interfaz

7: activa interfaz

9: busca datos ()

10: busca

11: muestra datos

15: guardar datos ()

16: guarda

17: "datos guardados"

1: buscar asignatura ()5: asignar precedencia

8: buscar datos precedencia ()13: selecciona precedencia

14: guardar datos precedencia ()

12: muestra datos precedencia18: "datos guardados"

Diagrama de Colaboración

Page 77: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

72

Registro Prerrequisito : Empleado

Interfaz Asignatura

Registro Asignatura

Interfaz Prerrequisito

buscar asignatura () buscar asignatura ()busca

muestra asignatura

asignar prerrequisito

activar interfazactiva interfaz

buscar datos prerrequisito ()

busca datos ()

busca

muestra datos

muestra datos prerrequisito

selecciona prerrequisito

guardar datos prerrequisito ()guardar datos ()

guarda

"datos guardados""datos guardados"

Caso de Uso: Registro Asignatura Escena 2: Asignar prerrequisito Diagrama de Secuencia

Page 78: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

73

: Empleado

Interfaz Asignatura

Registro Asignatura

Interfaz Prerrequisito

Registro Prerrequisito

2: buscar asignatura ()

3: busca

4: muestra asignatura

6: activar interfaz

7: activa interfaz

9: busca datos ()

10: busca

11: muestra datos

15: guardar datos ()

16: guarda

17: "datos guardados"

1: buscar asignatura ()5: asignar prerrequisito

8: buscar datos prerrequisito ()13: selecciona prerrequisito

14: guardar datos prerrequisito ()

12: muestra datos prerrequisito18: "datos guardados"

Diagrama de Colaboración

Page 79: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

74

: EmpleadoInterfaz

AsignaturaRegistro

AsignaturaRegistro

PrecedenciaRegistro

PrerrequisitoReporte Pensum

buscar datos pensum () buscar datos pensum ()busca

buscar precedencias ()busca

muestra precedencias

buscar prerrequisitos ()busca

muestra prerrequisitosmuestra datos pensum

imprimir pensum ()

mostrar reporte pensumdespliega reporte

muestra reporte pensum

aceptar impresion

reporte impreso

Caso de Uso: Registro Asignatura Escena 3: Imprimir Pensum Diagrama de Secuencia

Page 80: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

75

: Empleado

Interfaz Asignatura

Registro Precedencia

Registro Prerrequisito

Reporte Pensum

1: buscar datos pensum ()

5: busca

8: busca

11: imprimir pensum ()

12: mostrar reporte pensum13: despliega reporte

14: muestra reporte pensum

15: aceptar impresion

16: reporte impreso

Registro Asignatura

2: buscar datos pensum ()

10: muestra datos pensum

3: busca

4: buscar precedencias ()

6: muestra precedencias

7: buscar prerrequisitos ()

9: muestra prerrequisitos

Diagrama de Colaboración

Page 81: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

76

: EmpleadoInterfaz Grupo Registro Grupo

introducir datos grupo

guardar datos grupo ()guardar datos grupo ()

guarda

datos guardados

: Empleado

Interfaz Grupo

Registro Grupo

1: introducir datos grupo2: guardar datos grupo ()

3: guardar datos grupo ()

4: guarda

5: datos guardados

Caso de Uso: Registro Grupo Escenario único: registrar grupo Diagrama de Secuencia Diagrama de Colaboración

Page 82: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

77

Registro Profesor : Empleado

Interfaz Profesor

ingresar datos profesor

guardar datos profesor () guardar datos profesor ()guarda

"datos guardados"

: Empleado

Interfaz Profesor

Registro Profesor

1: ingresar datos profesor2: guardar datos profesor ()

3: guardar datos profesor ()

4: guarda

5: "datos guardados"

Caso de Uso: Registro Profesor Escena 1: Registrar nuevo profesor Diagrama de Secuencia Diagrama de Colaboración

Page 83: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

78

: Empleado

Interfaz Profesor

Registro Profesor

Interfaz Reporte Profesor

buscar registros profesor () buscar registros ()busca

muestra registros profesor

imprimir reporte profesor ()

mostrar reporte profesordespliega reporte

muestra reporte profesor

aceptar

"reporte impreso"

: Empleado

Interfaz Profesor

Registro Profesor

Interfaz Reporte Profesor

1: buscar registros profesor ()2: buscar registros ()

3: busca

4: muestra registros profesor

5: imprimir reporte profesor ()

6: mostrar reporte profesor

7: despliega reporte8: muestra reporte profesor

9: aceptar

10: "reporte impreso"

Caso de Uso: Registro Profesor Escena 2: Imprimir reporte registro profesor Diagrama de Secuencia Diagrama de Colaboración

Page 84: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

79

: EmpleadoInterfaz

EmpleadoRegistro Empleado

ingresar datos empleados

guardar datos()guardar registro()

guarda

"registro guardado"

: Empleado

Interfaz Empleado

Registro Empleado

1: ingresar datos empleados2: guardar datos()

3: guardar registro()

4: guarda

5: "registro guardado"

Caso de Uso: Registro Empleados Escena 1: Ingresar datos nuevo empleado Diagrama de Secuencia Diagrama de Colaboración

Page 85: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

80

Interfaz Reporte Empleado

: Empleado

Interfaz Empleado

Registro Empleado

buscar datos empleados ()buscar datos empleados ()

busca

muestra registros empleados ()

imprimir reportes empleados ()

mostrar reporte empleadosdespliega reporte

muestra reporte empleados

aceptar

"reporte impreso"

: Empleado

Interfaz Empleado

Registro Empleado

Interfaz Reporte Empleado

1: buscar datos empleados ()2: buscar datos empleados ()

3: busca

4: muestra registros empleados ()

5: imprimir reportes empleados ()

6: mostrar reporte empleados

7: despliega reporte

8: muestra reporte empleados

9: aceptar

10: "reporte impreso"

Caso de Uso: Registro Empleados Escena 2: Imprimir reporte empleados Diagrama de Secuencia Diagrama de Colaboración

Page 86: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

81

: Empleado

Interfaz Relacion profesor_grupo_asigantura

Registro asig_prof_grupo

Registro GrupoRegistro Asignatura

Registro Profesor

buscar datos ()buscar datos profesor ()

busca

mostrar datos profesor

buscar datos asignaturas ()busca

muestra datos asignaturas

busca datos grupo ()busca

muestra datos gruposeleccionar relaciones

guardar relaciones ()guardar relaciones ()

guarda

"relaciones guardadas"

Caso de Uso: Relación profesor_gupo_asignaturas Escena 1: Registrar relación profesor_grupo_asignatura Diagrama de Secuencia

Page 87: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

82

: Empleado

Registro asig_prof_grupo

Registro Profesor

Registro Asignatura

Registro Grupo

6: busca9: busca

14: guarda

Interfaz Relacion profesor_grupo_asigantura

1: buscar datos ()11: seleccionar relaciones 12: guardar relaciones ()

2: buscar datos profesor ()4: mostrar datos profesor

5: buscar datos asignaturas ()

7: muestra datos asignaturas

8: busca datos grupo ()

10: muestra datos grupo

13: guardar relaciones ()

15: "relaciones guardadas"

Diagrama de Colaboración

Page 88: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

83

Registro asig_prof_grupo : Empleado

Interfaz Relacion profesor_grupo_asignatura

Interfaz Reporte asig_profesor_grupo

buscar relaciones profesor_asignatura_grupo ()buscar relaciones ()

busca

muestra relaciones

imprimir reporte ()

mostrar reporte de relacionesdespliega reporte

muestra reporte

aceptar

"reporte impreso"

Caso de Uso: Relación profesor_gupo_asignaturas Escena 2: Imprimir reporte relación profesor_grupo_asignatura Diagrama de Secuencia

Page 89: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

84

: Empleado

Interfaz Relacion profesor_grupo_asignatura

Registro asig_prof_grupo

Interfaz Reporte asig_prof_grupo

1: buscar relaciones profesor_asignatura_grupo ()2: buscar relaciones ()

3: busca

4: muestra relaciones

5: imprimir reporte ()

6: mostrar reporte de relaciones

7: despliega reporte8: muestra reporte

9: aceptar

10: "reporte impreso"

Diagrama de Colaboración

Page 90: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

85

CAPITULO III:

DISEÑO DE LA BASE DE DATOS DEL SISTEMA

“Si evalúas siempre que terminas, poco a poco irás planificando cada vez

mejor.”

Page 91: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

86

CLASES

Para lograr una visión sencilla y funcional de los objetos involucrados en el sistema de matrículas e inscripciones de PROMECYS es necesario diseñar un modelo de clases que refleje el entorno que estamos estudiando, además con este se podrán visualizar de forma mas simple las relaciones que existen entre las clases involucradas en el sistema. Tomando en cuenta la descripción del sistema actual y guiándose por medio de los casos de uso y los escenarios que estos presentan, logramos identificar las siguientes clases: Estudiante, Empleado, Prematrícula, Matrícula, Inscripción, Nota, Asignatura, Profesor.

Estudiante: Es una de las clases mas importantes ya que representa el principal involucrado en las actividades del sistema, por medio de esta clase se puede accesar a los datos de cada uno de los estudiantes que pertenecen al programa tomando como atributo de identificación es Idestudiante. Los métodos que se realizaran en esta clase son: Agregar, Buscar, Modificar. Es importante señalar las relaciones que tiene la clase estudiante con el resto de las clases involucradas con el sistema.

Prematricula Matricula

Estudiante

1

1

1

*+Tiene

1

*

+Posee

1

1

- La relación de Estudiante con Prematrícula se da por asociación, donde 1 estudiante posee 1 prematrícula.

- La relación Estudiante con Matrícula se da por composición, donde 1 estudiante tiene muchas matrículas.

Empleado: Representa el registro de empleados de PROMECYS que pueden tener acceso al sistema o que llevan a cabo una funcionalidad en el mismo. Los métodos de esta clase representan la posibilidad de de Agregar un nuevo empleado, buscar y modificar datos de empleado, el atributo que lo identifica es código de empleado (Idempleado). La relación de esta clase se detalla a continuación:

Page 92: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

87

Prematricula Matricula

Empleado

1

*

1

*

+Ingresa

1

*

+Ingresa

1

*

- La relación de Empleado con Prematrícula se da por agregación, donde 1 empleado ingresa muchas Prematrículas.

- La relación de Empleado con Matrícula se da por agregación, donde 1 empleado ingresa muchas Matrículas,

Matrícula: Representa todas las matrículas que se han hecho en el

programa, identificado por medio de un número de matrícula (Idmatrícula), conteniendo la fecha en que se emite. Los métodos utilizados en esta clase son: Agregar, Buscar y Retirar Matrícula. Esta clase se relaciona con las clases Prematrícula e Inscripción.

Prematricula Inscripcion

Matricula

1

1 1

3

+Tiene1

3

+Requiere1

1

- La relación de Matrícula con Prematrícula se da por asociación, donde 1 matrícula requiere de 1 prematrícula.

- La relación de Matrícula con Inscripción se da por composición, donde 1 matrícula tiene 3 inscripciones.

Prematrícula: Representa todas las prematrículas que se han hecho en

el programa, el cual contiene la fecha en que se emite. Los métodos a utilizar en esta clase son: Agregar y Buscar Prematrícula.

Page 93: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

88

Inscripción: Son todas las inscripciones de asignaturas que realizan los

estudiantes en cada cuatrimestre, esta clase se identifica con un código de inscripción (Idinscripción), contiene datos como el cuatrimestre, beca y fecha en que se emite la inscripción. Los métodos que pertenecen a esta clase son: Agregar, Modificar, Buscar inscripción y Botar Asignatura,

Inscripcion Nota1..41 +Le Corresponde1 1..4

- La relación de Inscripción con Nota se da por composición, donde 1 inscripción le corresponde de 1-4 notas.

Asignatura: Representa todas la asignaturas que se sirven durante la

carrera es identificada por un código de asignatura, en esta clase se describe el nombre de la asignatura, el año y e cuatrimestre al que pertenece. Los métodos que se utilizaran en esta clase son: Modificar y Agregar asignatura. Esta clase se relaciona con Inscripción, tal relación es:

InscripcionAsignatura

1 *+Esta en1 *

- La relación de Asignatura con Inscripción se da por composición, donde

1 Asignatura está en muchas inscripciones.

Profesor: Esta clase permite identificar el registro de profesores con los que cuenta el programa ya que son un pilar muy importante para llevar a cabo el mismo, además es importante contar con esta información ya que forma parte del registro. Para esta clase se han definido atributos y métodos tales como: Agregar Profesor, Buscar y Modificar datos de profesor. La relación que se puede establecer con esta clase es la siguiente:

Profesor Asignatura* *+Imparten* *

- La relación de Profesor con Asignatura esta dada por asociación, donde muchos profesores imparten muchas asignaturas.

Nota: Esta clase contiene las notas de las asignaturas inscritas por medio

de las cuales el empleado (usuario), verifica la calificación de las asignaturas que pueden ser aprobado o reprobado el cual se refleja en la solicitud del certificado de notas. Los métodos utilizados en esta clase son: Agregar, Buscar y Modificar.

Page 94: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

89

TIPOS DE DATOS

Atributos: Los atributos o características de una clase pueden ser de tres tipos, los que definen el grado de comunicación y visibilidad de ellos con el entorno, estos son:

Publico: Indica que el atributo será visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados.

Privado: Indica que el método solo será accesible desde dentro de la clase (solo sus métodos lo pueden accesar).

Protegido: Indica que el atributo no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase además de métodos de las subclases que se deriven.

En las clases que se han creado el tipo de dato para el atributo identificador de cada clase público, ya que a través de este se relacionan con las demás clases. Los demás atributos de las clases son de tipo privado, de modo que solo los métodos que pertenecen a la clase pueden accesar a ellos (atributos). Métodos: Los métodos u operaciones de una clase son la forma en como ésta interactúa con su entorno, estos pueden ser:

Publico: Indica que el método será visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados.

Privado: Indica que el método solo será accesible desde dentro de la clase (solo otros métodos de la clase lo pueden accesar).

Protegido: Indica que el método no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase además de métodos de las subclases que se deriven.

El tipo de dato de algunos de los métodos es público, ya que se puede accesar a ellos de todos lados, otro tipo de datos asignados a los métodos es privado, ya que este solamente se puede accesar los métodos de la misma clase. En la clase Matrícula el método RetirarMatrícula es de tipo Privado, ya que solo los métodos de la clase pueden accesar al mismo, en la clase inscripción el método BotarAsignatura es privado por tanto no se puede accesar desde fuera de la clase.

Page 95: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

90

NotaIdinscripcion : longIdasignatura : StringIdgrupo : StringNota : FloatCalificacion : int

Agregar()Buscar()Modificar()

EstudianteIdestudiante : LongCarnet : StringPrimerNombre : StringSegundoNombre : StringPrimerApellido : StringSegundoApellido : StringEstadoCivil : intSexo : intFechanac : DatetimeLugarnac : StringNacionalidad : StringDepartamento : StringMunicipio : StringDireccion : StringCentro_Ensenanza : StringCedula : StringTelefono : StringCelular : StringCorreo : StringLugar : StringCargo : StringDireccionT : StringTelefonoT : StringFax : String

Agregar()Modificar()Buscar()

EmpleadoIdempleado : intPrimerNombre : StringSegundoNombre : StringPrimerApellido : StringSegundoApellido : StringDireccion : StringCargo : StringSexo : intTelefono : StringCelular : String

Agregar()Modificar()Buscar()

InscripcionIdInscripcion : longIdmatricula : longCuatrimestre : intIdempleado : intFecha : DateBecado : int

Agregar()Modificar()Buscar()BotarAsignatura()

1 1..4+Corresponde1 1..4

MatriculaIdmatricula : longIdestudiante : longRecibo : intAnio : intFecha : DateBecado : int

Agregar()Buscar()RetirarMatrícula()

1

3+Tiene1

3

1

**

1

*

+Ingresa

1

*

PrematriculaIdestudiante : longRecibo : intFecha : DateEmpleado : int

Agregar()Buscar()1

1

1

+Posee

1

1

*

+Ingresa

1

*

1

1

+Requiere

1

1

AsignaturaIdasignatura : StringDescripcion : StringCuatrimestre : intCreditos : intAnio : int

Modificar()Agregar()

1

*

+Esta en

1

*

ProfesorIdprofesor : intPrimerNombre : StringSegundoNombre : StringPrimerApellido : StringSegundoApellido : StringSexo : intDireccion : StringEspecialidad : StringTipo : intTelefono : StringCelular : StringFecha : DateEstado : int

Agregar()Modificar()Buscar()

*** *+Imparten

DIAGRAMA DE CLASES PROMECYS

Page 96: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

91

Activomatricularse

reanudar matricula

Egresadoculmina pensum

Retirado

suspende matricula

DIAGRAMAS DE ESTADO Los diagramas de estado, nos muestran la secuencia de estados por los que pasan las clases matricula, estudiante y profesor. La matricula pasa por dos estados, cuando esta se realiza esta vigente y tiene que ser renovada sigue en el mismo estado (vigente), pero se da el caso en que se retira y su estado inmediatamente es retirada. Cuando un estudiante realiza una matrícula se dice que está activo, si la matricula se reanuda sigue siendo activo, cuando la matricula de suspende pasa a ser un estudiante retirado, y el ultimo estado por el que pasa el estudiante es cuando culmina el pensum y entonces se convierte en estudiante egresado. El ultimo diagrama de estado que se muestra es el de profesor que pasa también por dos estados que es activo cuando firma un contrato e imparte una o varias asignaturas, si se le renueva el contrato sigue siendo activo, pero una vez que el contrato es cancelado su estado pasa a inactivo DIAGRAMA DE ESTADO Clase: Estudiante

Page 97: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

92

Vigenterealiza matricula

renovar matricula

Retirada

retira metricula

Activo

Inactivo

imparte asignatura

renovar contrato

cancela contrato

DIAGRAMA DE ESTADO Clase: Matricula

DIAGRAMA DE ESTADO Clase: Profesor

Page 98: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

93

ESTRUCTURA DE LA BD

SEGURIDAD Una base de datos no es más que una colección de objetos interrelacionados entre sí que sirven para almacenar, recuperar y manipular información, y permiten crear reportes a partir de la misma. La base de datos que almacenará la información de todos los procesos que se llevan acabo en PROMECYS estará diseñada en SQL Server 2000. SQL que es una herramienta para organizar, gestionar y recuperar datos almacenados. Es de suma importancia que los datos que se manipulan en PROMECYS sean almacenados de forma segura y eficiente, lo que se logra a través de SQL Server 2000 ya que éste permite crear consultas a través de la herramienta Query Analyzer que implementa las cláusulas pertinentes para crear una base de datos por medio de código puro. Lo primero que debemos tomar en cuenta al diseñar una base de datos es que ésta sea lo suficientemente segura y confiable ya que almacenará datos muy importantes de la institución y cualquier flujo de información podría representar un problema bastante serio. Para ello nos apoyamos de las cuentas de usuarios, las cuales restringen el acceso a la base de datos por medio de contraseña, se creó una cuenta de acceso para la base de datos en el Query con la siguiente estructura: SP_ADDLOGIN ‘ADMINISTRADOR’,’ADMIN’,`DBPROMECYS` Para mantener un orden en la estructura de la base de datos, tomamos en cuenta la uniformidad en los nombres de los componentes, y definimos lo más claro posible los procesos y convenciones que utilizamos para el manejo de la misma. TABLAS: Los nombres de las tablas en la base de datos serán escritos con su primera

letra en mayúscula representando cada una al objeto o actividad a la que pertenece.

Los atributos de cada tabla serán escritos todos en letras minúsculas, especificando sus llaves de identificación con el prefijo “id” seguido del nombre de la tabla.

Los atributos que representan valores booleanos serán de tipo bit donde el valor 0 (cero) significa No, Masculino, Reprobado, Inactivo y 1 (uno) significa Sí, Femenino, Aprobado y Activo según la tabla a la que pertenece el atributo.

Page 99: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

94

MODELO DE DATOS

Page 100: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

95

DICCIONARIO DE DATOS Aquí definimos como están compuestas cada una de la tablas de la base de datos, especificando la funcionalidad de sus atributos: Asignatura: Contiene el registro de las asignaturas de la carrera. Nombre del

atributo Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

Idasignatura

si

Varchar

4 Llave principal, identificador único de la

asignatura

Formato: 0000, XXX, XXX0

Descripcion si Varchar 4 Nombre de la asignatura Cuatrimestre si

Int 4 Cuatrimestre en el que

se imparte la asignatura No puede

excederse de 3

Credito

si

Int 4 Representan la cantidad

limite de veces que se puede llevar la

asignatura

--

Anio si Int 4 Representa el anio escolar al que pertenece

la asignatura

--

AsigGrupoProf: Es el control de las asignaturas que imparten los profesores y los grupos en donde se imparten las mismas Nombre del

atributo Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

Idasignatura

si

Varchar 4 Es el código de la asignatura que se

imparte

Idgrupo

si Varchar 4 Representa el grupo en

que se impartió la asignatura

idprofesor

si

int 4 Es el código de los profesores que imparten determinada asignatura

Fecha

si

Datetime 8 Representa la fecha en que determinado

profesor impartió la asignatura

Formato asig: 0000, XXX, XXX0

Todos los atributos

de la tabla en conjunto representa

su llave primaria

Page 101: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

96

Departamento: Contiene el registro de los departamentos de los estudiantes Nombre del

atributo Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

idepartamento si Varchar 4 Llave principal, es el nombre del

departamento

--

Empleado: Contiene el registro de la información personal y laboral de los empleados

Nombre del atributo

Requerido

Tipo de dato

Tamaño Definición Formato, formula o

Comentario

Idempleado

si Int 4 Llave principal,

identificador unico del empleado

--

Cedula si Varchar 4 Numero de cedula del empleado

Formato: 000-000000-

0000X primernombre si Varchar 4 Primer nombre del

empleado --

segundonombre no Varchar 4 Segundo nombre del empleado

--

Primerapellido si Varchar 4 Primer apellido del empleado

--

Segundoapellido no Varchar 4 Segundo apellido del empleado

--

Direccion si Varchar 4 Direccion domiciliar del empleado

--

Cargo si Varchar 4 Cargo que desempeña -- Sexo si Bit 1 Sexo del empleado --

Telefono no Varchar 4 Telefono convencional Formato: 000-0000

Celular no Varchar 4 Telefono celular Formato: 000-0000

Page 102: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

97

Estudiante: Contiene la información personal y general de los Estudiantes, en donde se controla las actualizaciones de datos de los mismos

Nombre del atributo

Requerido

Tipo de dato

Tamaño Definición Formato, formula o

Comentario Idestudiante

si

Bigint

8 Llave primaria,

identificador único del estudiante

--

carnet

no

Varchar

4

Representa el número de carnet que posee el

estudiante

Formatos: 0000-00000, 00-00000-0 No pueden haber dos

números de carnet iguales; es nulo por que

se puede matricular un

estudiante que todavía no tenga

carnet Primernombre si Varchar 4 Primer nombre del

estudiante --

Segundonombre no Varchar 4 Segundo nombre del estudiante

--

Primerapellido si Varchar 4 Primer apellido del estudiante

--

Segundoapellido no Varchar 4 Segundo apellido del estudiante

--

Estadocivil si Tinyint 1 Estado civil del estudiante

--

Sexo si Bit 1 Sexo del estudiante -- Fechanac si Datetime 8 Fecha de nacimiento del

estudiante Formato: dd/mm/aa

lugarnac si Varchar 4 Lugar de nacimiento del estudiante

--

departamento si Varchar 4 Departamento al que pertenece el estudiante

--

municipio si Varchar 4 Municipio al que pertenece el estudiante

--

direccion si Varchar 4 Direccion domiciliar del estudiante

--

centroenseñanza si Varchar 4 Centro de proveniencia del estudiante

--

tipocentro si Int 4 Tipo de centro

cedula no Varchar 4 Numero de cedula Formato:

000-000000-0000X

telefono no Varchar 4 Numero de telefono

convencional Formato: 000-0000

celular no Varchar 4 Numero de celular Formato: 000-0000

correo no Varchar 4 Correo electronico del estudiante

--

Page 103: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

98

Grupo: Es el registro de los grupos que conforman la carrera

Nombre del atributo

Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

Idgrupo

si

Varchar 4 Llave principal, identificador único del

grupo

Formato: XX0,

XX0-0 Anio si int 4 Año escolar al que

pertenece el grupo --

Ubicación si Varchar 4 Edificio donde se ubica al grupo

--

Aula si int 4 Numero de aula donde recibe clases al grupo

--

Inscripción: Es el registro de las inscripciones que realizan los estudiantes Nombre del

atributo Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

Idinscripcion

Si

Bigint

8

Llave principal, representa el numero de

las inscripciones de cada estudiante

Las inscripciones no pueden ser mas de

tres por cada matricula

idmatricula

Si

Bigint

8

Llave foránea, representa el número de matrícula del estudiante

-

idempleado

Si

Int

4

Llave foránea, representa el numero

del empleado que hizo la inscripción

-

cuatrimestre

Si

Int

4

Representa el cuatrimestre que cursa

el estudiante

No puede exceder de 3

fecha

Si

Datetime

8 Representa la fecha en que fue realizada la

inscripción

Formato: dd/mm/aa

beca Si bit 1 Indica si el estudiante tiene beca

-

Laboral: Contiene el registro de la información laboral de los estudiantes Nombre del

atributo Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

Idestudiante si Bigint 8 Llave principal, representa al estudiante

que trabaja

El idestudiante no se puede repetir en

esta tabla Lugar si Varchar 4 Representa el nombre

de la empresa donde trabaja el estudiante

--

Dirección si Varchar 4 Es la dirección del lugar de trabajo del estudiante

--

Cargo si Varchar 4 Cargo q desempeña el estudiante en su trabajo

--

Teléfono si Varchar 4 Numero telefónico del lugar de trabajo

Formato: 000-0000

fax no Varchar 4 Numero de fax del lugar de trabajo

Formato: 000-0000

Page 104: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

99

Matricula: Es el registro de la matricula de los estudiantes. Nombre del

atributo Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

Idmatricula

Si

Bigint

8

Llave principal, representa el número de

matrícula de un estudiante

Solo puede haber una matrícula por

anio para cada estudiante

idestudiante

si

Bigint

8

Llave foránea, identifica a un estudiante

especifico

-

recibo

Si Int

4 Numero de recibo de matrícula

Formato: 00000

Anio Si Int

4 Anio que cursa el estudiante

No excede de 5

fecha

Si

Datetime

8

Representa la fecha en que se realiza a

matricula

Formato: dd/mm/aa

Municipio: Contiene el registro de los municipios de los estudiantes Nombre del

atributo Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

Idmunicipio si Varchar 4 Llave principal, es el nombre del municipio de

determinado departamento

--

idepartamento si Varchar 4 Llave foránea, nombre del departamento

--

Nota: Es el registro de las notas obtenidas por los estudiantes en las asignaturas inscritas Nombre del

atributo Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

Idinscripcion

si

Bigint

8

Llave foránea, representa el código de

inscripción al que pertenecen las

diferentes asignaturas

--

Idasignatura

si

Varchar

4

Llave foránea,

representa el código de las asignaturas que se

inscribieron

Formato: 0000, XXX, XXX0; No pueden haber

mas de 4 asignaturas por cada

inscripción

Idgrupo

si

Varchar 4 Llave foránea,

representa el código del grupo donde se

recibirán las asignaturas

El año de la asignatura debe

coincidir con el año del grupo

Nota no Float 16 Representa la nota de las asignaturas inscritas

--

Calificación

no bit 1 Representa la calificación Aprobada o

Reprobada de las asignaturas inscritas

--

Page 105: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

100

Precedencia: Contiene el registro de las precedencia de las asignaturas

Nombre del atributo

Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

idprecedencia si Varchar 4 Llave primaria, representa una

asignatura que es precedencia de otra

Formato: 0000, XXX. XXX0

idasignatura si Varchar 4 Llave primaria, representa una

asignatura que posee precedencia

0000, XXX, XXX0

Prematricula: Es el registro de la prematrícula de los estudiantes

Nombre del atributo

Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

idestudiante

si

Bigint

8

Llave principal, representa que

estudiante tiene pre matrícula

Cada estudiante solo puede tener una pre

matrícula, aquí se genera el idestudiante

recibo Si Int 4 Es el numero de recibo de la prematricula

Sin recibo no se hace la prematricula

Fecha si Datetime 8 Representa la fecha en que el estudiante se pre

matriculó

Formato: dd/mm/aa

Idempleado si Int 4 Llave foránea, representa el numero

del empleado que hizo la pre matrícula

--

Requisito: Contiene el registro de los requisitos de las asignaturas

Nombre del atributo

Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

idrequisito si Varchar 4 Llave primaria, representa una

asignatura que es prerrequisito de otra

Formato: 0000, XXX. XXX0

idasignatura si Varchar 4 Llave primaria, representa una asignatura que

posee prerrequisito

0000, XXX, XXX0

Page 106: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

101

Profesor: Contiene el registro de la información personal y laboral de los profesores que imparten asignaturas en promecys

Nombre del atributo

Requerido

Tipo de dato

Tamaño Definición Formato, formula o Comentario

Idprofesor

si

Int 4 Llave principal, identificador único del

profesor

--

Cedula si Varchar 4 Numero de cedula del profesor

Formato: 000-000000-0000X

Primernombre si Varchar 4 Primer nombre del profesor

--

Segundonombre no Varchar 4 Segundo nombre del profesor

--

Primerapellido si Varchar 4 Primer apellido del profesor

--

Segundoapellido no Varchar 4 Segundo apellido del profesor

--

Sexo si Bit 1 Sexo del profesor -- Dirección si Varchar 4 Dirección domiciliar del

profesor --

Especialidad si Varchar 4 Especialidad en la que se desempeña

--

Tipo si Bit 1 Tipo de profesor -- Teléfono no Varchar 4 Teléfono convencional Formato:

000-0000 Celular no Varchar 4 Teléfono celular Formato:

000-0000 Fecha si Datetime 8 Fecha en que el

profesor entra a impartir clases

Formato: dd/mm/aa

Estado si Bit 1 Describe si el profesor esta o no impartiendo

clases en la universidad

--

Page 107: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

102

PROCEDIMIENTOS ALMACENADOS: Un procedimiento almacenado (stored procedure) es un programa el cual es almacenado físicamente la base de datos. La ventaja de un procedimiento almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos y como tal, posee acceso directo a los datos que necesita manipular y solo necesita enviar sus resultados de regreso al usuario, deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de datos salientes y entrantes. Los procedimientos almacenados de la base de datos del Sistema del Información de PROMECYS son utilizados en su mayoría para ejercer las funciones de Agregar, Obtener (Ver) y Actualizar los registros de las diferentes tablas de la misma, ya sean directamente de las tablas o por medio de vistas o funciones. Para poder acceder a cualquier procedimiento desde la interfaz siempre es necesaria una llave de entrada (Requerimiento), esta será la variable o variables que representan los atributos de las tablas que se necesitaran para que se lleve a cabo el funcionamiento de los mismos. El nombre del procedimiento debe empezar con el nombre de la tabla o

vista que estamos utilizando seguido por el sufijo que representa la función del procedimiento “Obtener”, “Actualizar”, “Agregar”.

Las variables que se necesitaran el procedimiento deberán llevar el mismo nombre, tipo y tamaño que el del atributo de la tabla o tablas que estamos utilizando.

Page 108: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

103

PROCEDIMIENTOS ALMACENADOS: Procedimientos Almacenados Obtener:

Estos procedimientos se utilizan en la base de datos cuando sea necesario obtener registros existentes de los diferentes registros de las tablas. Este tipo de procedimientos son los mas complicados de la base de datos ya que generalmente requieren mostrar datos de varias tablas, para lo cual es necesario implementar la utilización de vistas y así facilitar la manipulación de los datos cuando la información que se busca esta distribuida en tablas diferentes. Por Ejemplo: Un ejemplo sencillo de un procedimiento que muestra los datos de una única tabla es el siguiente: Nombre del Procedimiento EstudianteObtener

Requerimiento dbo.Estudiante Descripción o Propósito Se encarga de mostrar los datos

generales de determinado Estudiante Variables @Idestudiante Código: CREATE PROCEDURE EstudianteObtener @IDESTUDIANTE BIGINT AS SET DATEFORMAT ymd SELECT Carnet, Primernombre, Segundonombre, Primerapellido, Segundoapellido, Estadocivil, Sexo, Fechanac, Lugarnac, Nacionalidad, Departamento, Municipio, Direccion, Centroensenanza, TipoCentro, Cedula, Telefono, Celular, Correo FROM Estudiante WHERE Idestudiante LIKE @IDESTUDIANTE

Page 109: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

104

Ejemplo 2: También se pueden obtener por medio de un procedimiento almacenado las asignaturas que un estudiante podrá inscribir en un determinado cuatrimestre, para ello se necesita la ayuda de vistas que harán una revisión minuciosa en la base de datos. Nombre del Procedimiento AsignaturaQuePuedeInscribirObtener

Requerimiento Asignatura sqlClasesConPcyRqInscribir, sqlClasesReprobadas, sqlClaseSinPcyRqNoInscritas

Descripción o Propósito Se encarga de mostrar las Asignaturas que puede inscribir determinado estudiante, tomando en cuenta restricciones de precedencia, requisito, inscripción y cuatrimestre.

Variables @Idestudiante, @Cuatrimestre, @Anio

Codigo: CREATE PROCEDURE AsignaturasQuePuedeInscribir @IDESTUDIANTE BIGINT, @CUATRIMESTRE INT, @ANIO INT AS SELECT LTRIM(RTRIM (A.IDASIGNATURA)) AS IDASIGNATURA, LTRIM(RTRIM(DESCRIPCION)) AS DESCRIPCION, ANIO FROM ASIGNATURA A WHERE A.IDASIGNATURA IN (SELECT IDASIGNATURA FROM SQLCLASESCONPCYRQINSCRIBIR WHERE IDESTUDIANTE LIKE @IDESTUDIANTE AND CUATRIMESTRE LIKE @CUATRIMESTRE) OR A.IDASIGNATURA IN (SELECT IDASIGNATURA FROM SQLCLASESREPROBADAS WHERE IDESTUDIANTE LIKE @IDESTUDIANTE AND CUATRIMESTRE LIKE @CUATRIMESTRE) OR A.IDASIGNATURA IN (SELECT IDASIGNATURA FROM SQLCLASESINPCYRQNOINSCRITAS WHERE IDESTUDIANTE LIKE @IDESTUDIANTE AND CUATRIMESTRE LIKE @CUATRIMESTRE) AND ANIO <= @ANIO

Page 110: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

105

Procedimientos Almacenados Agregar: Son mas sencillos de comprender y crear ya que su función solo es de agregar registros en las diferentes tablas de la base de datos, actividad para la cual no es necesaria la utilización de funciones o vistas. En estos procedimientos solo se verá involucrada una tabla por cada uno. Por Ejemplo: Nombre del Procedimiento AsignaturaAgregar

Requerimiento dbo.Asignatura Descripción o Propósito Se encarga de guardar los diferentes

datos de una asignatura que se registra desde la interface.

Variables @Idasignatura, @Descripcion, @Cuatrimestre, @Credito, @Anio

Código: CREATE PROCEDURE AsignaturaAgregar @Idasignatura VARCHAR(10), @Descripcion VARCHAR(100), @Cuatrimestre INT, @Credito INT, @Anio INT AS INSERT INTO Asignatura VALUES (@Idasignatura, @Descripcion, @Cuatrimestre, @Credito, @Anio) Procedimientos Almacenados Actualizar:

También son sencillos de comprender ya que solo requieren del manejo de una tabla a la vez, se encargan de actualizar los registros existentes de las diferentes tablas de la base de datos por medio de la interfase. Por Ejemplo: Nombre del Procedimiento DocenteActualizar

Requerimiento dbo.Profesor Descripción o Propósito Se encarga de actualizar los datos de

un determinado Profesor. Variables @Iddocente , @Cedula,

@Primernombre,@Segundonombre, @Primerapellido,@Segundoapellido , @Sexo,@Direccion,@Especialidad, @Tipo,@Telefono,@Celular,@Fecha, @Estado

Page 111: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

106

Codigo: CREATE PROCEDURE DocenteActualizar @Iddocente INT, @Cedula VARCHAR (16), @Primernombre VARCHAR (50), @Segundonombre VARCHAR (50), @Primerapellido VARCHAR (50), @Segundoapellido VARCHAR (50), @Sexo INT, @Direccion VARCHAR (100), @Especialidad VARCHAR (100), @Tipo INT, @Telefono VARCHAR (8), @Celular VARCHAR (8), @FECHA VARCHAR (10), @Estado INT AS DECLARE @MYDATE AS DATETIME; SET @MYDATE = dbo.fn_myDate(@FECHA); UPDATE Profesor SET Cedula= @Cedula, Primernombre= @Primernombre, Segundonombre= @Segundonombre, Primerapellido= @Primerapellido, Segundoapellido= @Segundoapellido, Direccion= @Direccion, Especialidad= @Especialidad, Tipo= @Tipo, Estado= @Estado, Sexo= @Sexo, Celular= @Celular, Fecha= @MYDATE WHERE Profesor.Idprofesor= @Iddocente Otros Procedimientos Almacenados:

Los Procedimientos Almacenados también son utilizados para llamar a las vistas para reportes, o para llamar una función que tengamos que utilizar en algún momento que interactuamos con la interfase, estos son mas que todos Procedimientos de Obtener.

Page 112: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

107

FUNCIONES: Una función es un bloque de código que tiene las mismas características que un procedimiento almacenado. La diferencia es que una función devuelve un valor al retornar. Al devolver un valor puede ser llamada como parte de una expresión. En la base de datos de PROMECYS las funciones las utilizaremos para retornar los significados de los atributos booleanos cuando sean requeridos en este caso por la interfaz de usuario, para convertir una cadena string enviada por la interfaz a un tipo fecha en la base de datos y para retornar un conteo total de atributos de determinadas tablas. Para distinguir una función antepondremos en su nombre el prefijo “fn_” seguido por el nombre de la misma. Algunos ejemplos de las funciones que son necesarias en la base de datos de PROMECYS son: Funciones de Conteo:

Nombre de la Función fn_EstMatCount

Requerimiento dbo.Matricula Descripción o Propósito Se encarga de contar la cantidad de

Estudiantes Matriculados y retorna el total.

Variables @Idestudiante Código: CREATE FUNCTION dbo.fn_EstMatCount (@IDESTUDIANTE AS BIGINT) RETURNS INT AS BEGIN

DECLARE @COUNT AS INT; SELECT @COUNT = COUNT(Idestudiante) FROM Matricula WHERE Idestudiante = @IDESTUDIANTE; RETURN @COUNT END

Page 113: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

108

Funciones de fecha: Nombre de la Función fn_myDate

Requerimiento Una cadena de caracteres Descripción o Propósito Se encarga de convertir una cadena

de caracteres a una fecha, y retorna la fecha.

Variables @MyDate Codigo: CREATE FUNCTION dbo.fn_myDate (@MYDATE AS VARCHAR(10)) RETURNS DATETIME AS BEGIN DECLARE @AUX AS VARCHAR(10); SET @AUX = SUBSTRING(@MYDATE, 1,4); SET @AUX = @AUX + SUBSTRING(@MYDATE, 6,2); SET @AUX = @AUX + SUBSTRING(@MYDATE, 9,2); DECLARE @RTN AS DATETIME; SET @RTN = CAST(@AUX AS DATETIME); RETURN @RTN END Funciones para atributos booleanos:

Nombre de la Función fn_Sexo

Requerimiento Atributo de tipo bit Descripción o Propósito Se encarga de retornar el significado

que se ha determinado para los registros que tengan el atributo sexo

Variables @MyDate Codigo: CREATE FUNCTION dbo.fn_Sexo (@SEXO AS BIT) RETURNS VARCHAR(9) AS BEGIN IF (@SEXO = 0) BEGIN RETURN 'Femenino' END RETURN 'Masculino' END

Page 114: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

109

VISTAS: Una vista en SQL es el resultado de una consulta de varias entidades utilizadas para visualizar los registros que necesitamos de las tablas relacionadas sin la necesidad de crear una nueva. En nuestra base de datos las principales vistas son las que se crearon para el proceso de inscripción ya que éstas se encargaran de mostrar la asignaturas que un determinado estudiante puede inscribir durante un cuatrimestre, tomando en cuenta las precedencias, prerrequisitos, inscripciones anteriores y si puede adelantar clases; el resto de las vistas en su mayoría representan los reportes que se necesitan en el sistema, . El nombre de las vistas está representado por el prefijo “sql” seguido del nombre de la vista. Las principales vistas de la base de datos de PROMECYS: Nombre de la Vista sqlAsigEstudiante

Requerimiento Dbo.Estudiante, dboMatricula, dboInscripcion, dboNota, dbo.Asignatura,

Descripción o Propósito Se encarga de mostrar las notas de las asignaturas que han inscrito los estudiantes.

Resultado Idestudiante, idasignatura, descripción, nota, calificación, cuatrimestre, anio

Código: CREATE VIEW dbo.sqlAsigEstudiante AS SELECT dbo.Estudiante. Idestudiante, dbo.Nota.Idasignatura, dbo.Asignatura.Descripcion, dbo.Nota.Nota, dbo.Nota.Calificacion, dbo.Inscripcion.Cuatrimestre, dbo.Matricula.Anio FROM dbo.Estudiante INNER JOIN dbo.Matricula ON dbo.Estudiante.Idestudiante = dbo.Matricula.Idestudiante INNER JOIN dbo.Inscripcion ON dbo.Matricula.Idmatricula = dbo.Inscripcion.Idmatricula INNER JOIN dbo.Nota ON dbo.Inscripcion.Idinscripcion = dbo.Nota.Idinscripcion INNER JOIN dbo.Asignatura ON dbo.Nota.Idasignatura = dbo.Asignatura.Idasignatura

Page 115: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

110

Nombre de la Vista sqlAsigEstReprobadas

Requerimiento dbo.sqlAsigEstudiante Descripción o Propósito Se encarga de mostrar todas las

asignaturas que un estudiante ha reprobado y la cantidad de veces que la ha dejado.

Resultado Idestudiante, Idasignatura, Cantidad Codigo: CREATE VIEW dbo.sqlAsigEstReprobadas AS SELECT Idestudiante, Idasignatura, COUNT(Idasignatura) AS Cantidad FROM dbo.sqlAsigEstudiante WHERE (Nota < 60) GROUP BY Idasignatura, Idestudiante Nombre de la Vista sqlClaseSinPcyRqNoInscritas

Requerimiento dbo.Asignatura, dbo.Estudiante,

dbo.Requisito, dbo.Precedencia, dbo.Matricula, dbo.Inscripcion, dbo.Nota

Descripción o Propósito Se encarga de mostrar las asignaturas que no tienen precedencias ni prerrequisitos y que además no hayan sido inscritas por el estudiante.

Resultado Idestudiante, idasignatura, cuatrimestre

CREATE VIEW sqlClaseSinPcyRqNoInscritas as SELECT E.IDESTUDIANTE, A.IDASIGNATURA, A.CUATRIMESTRE FROM ASIGNATURA A, ESTUDIANTE E WHERE A.IDASIGNATURA NOT IN (SELECT IDASIGNATURA FROM REQUISITO) AND A.IDASIGNATURA NOT IN (SELECT IDASIGNATURA FROM PRECEDENCIA) AND A.IDASIGNATURA NOT IN (SELECT N.IDASIGNATURA FROM MATRICULA M, INSCRIPCION I, NOTA N WHERE M.IDMATRICULA = I.IDMATRICULA AND I.IDINSCRIPCION = N.IDINSCRIPCION AND E.IDESTUDIANTE = M.IDESTUDIANTE)

Page 116: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

111

CAPITULO IV:

INTERFAZ DE USUARIO

Page 117: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

112

ESTRUCTURA DE LA INTERFAZ DEL SISTEMA

Para realizar el diseño de la interfaz de usuario del sistema de información de PROMECYS utilizamos el lenguaje Java por medio de la plataforma de programación Netbeans el cual nos brinda muchas ventajas al momento de desarrollar nuestra aplicación ya que además de escribir, compilar, depurar y ejecutar programas puede servir para cualquier otro lenguaje de programación y nos facilita el trabajo al momento de conectarnos con la base de datos de SQL Server 2000. Estructura de las clases del sistema: En java todo forma parte de una clase, es una clase o describe como funciona una clase, y nuestro sistema no es la excepción, podemos decir que las clases son la parte fundamental de la aplicación ya que de ellas depende la buena funcionalidad y comunicación tanto con el mismo sistema como con la base de datos.

Todas las clases del sistema son públicas, lo que quiere decir que pueden ser accedidas desde cualquier clase del paquete o de otros paquetes utilizando únicamente la palabra import.

Para mantener un manejo mas ordenado de la funcionalidad de las diferentes clases del sistema, las subdividimos en paquetes, el paquete Clases que representa las tablas y métodos de la base de datos y el paquete Formularios que como su mismo nombre lo dice representa los formularios de la interfaz, también existe el paquete Reportes, aquí se guardan los reportes que genera el sistema.

PAQUETE CLASES: Al nombre de la clase se le antepone el prefijo “cs” (a excepción de la clase ProConexion), seguido del nombre de la tabla de la base de datos a la que ésta representa.

Los métodos de cada una de las clases también son públicos y serán nombrados de acuerdo a la función que queremos que realice. En la mayoría de las clases “cs” existen los siguientes métodos: Agregar(ProConexion ) - retorna boolean Esta función indica que si se realizó la operación Agregar getDB(ProConexion ) - retorna bolean Esta función indica que si se realizó la operación Obtener Actualizar(ProConexion) - retorna boolean Esta función indica que si se realizó la operación Actualizar

Page 118: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

113

Todas las clases “cs” a excepción de “ProConexion”, poseen atributos de datos simples que tienen su equivalente en la base de datos.

Los atributos podrán ser modificados de forma directa. No se están utilizando las funciones get o set puesto que no se determinó el uso de interfaces para su implementación. Ciertas clases poseen funciones static para su utilización sin necesidad de instanciar la clase, esto para hacer verificaciones en la base de datos de forma directa, este es el caso de: csAsignaturas public static String getPrimerGrupo(ProConexion con, String idAsig) csEstudiante public static long getSigId(ProConexion con) public static long ExisteCarnet(ProConexion con, String id) public static boolean MismoAnio(ProConexion con, long id, String fecha) public static boolean TieneMatricula(ProConexion con, long id)

public static long PuedeInscribir(ProConexion con, long id, String fecha)

csGrupo public static boolean getGrupAsig(ProConexion con, String grp, String asig)

Page 119: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

114

Estructura de las clases “CS” Nombre de la Clase Descripción Variables Métodos Paquetes que necesita csAsignatura

Representa la tabla Asignatura, por medio de ella se puede acceder y manipular los datos de esta tabla.

String ID_Asig String Descripción Int Cuatrimestre Int Creditos Int Anio

Guardar(): se utiliza para guardar los datos de una nueva asignatura en la BD. Actualizar(): se utiliza para actualizar los datos de una asignatura ya existente en la BD. getBD(): obtiene todos los datos de una determinada asignatura de la BD.

java.sql.CallableStatement; java.sql.ResultSet;

csEmpleado

Representa la tabla Empleado, por medio de ella se puede accesar y manipular los datos de esta tabla

Int ID String Cedula String Nombre1 String Nombre2 String Apellido1 String Apellido2 String Direccion String Cargo Int Sexo String Celular String Telefono

Guardar(): se utiliza para guardar los datos de un nuevo empleado en la BD Actualizar(): Se utiliza para actualizar los datos de un empleado existente en la BD ObtenerIdEmpleado(): Obtiene el Idempleado apartir de los datos que le son enviados.

java.sql.CallableStatement java.sql.ResultSe

Page 120: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

115

Nombre de la Clase Descripción Variables Metodos Paquetes que necesita csEstudiante

Representa la tabla Estudiante, por medio de ella se puede accesar y manipular los datos de esta tabla

Long ID; String Carnet String Nombre1 String Nombre2 String Apellido1 String Apellido2 int Estado_Civil int Sexo java.sql.Date Fecha_Nac; String Lugar_Nac String Nacionalidad String Departamento String Municipio String Direccion String Centro_Ense int Centro_Tipo String Cedula String Telefono String Celular String Correo csPrematricula datos_premat csLaboral datos_laboral

getFechaString(): transforma la fecha del formato de la BD al formato dd/mm/aa. getFecha(): transforma la fecha dd/mm/aa al formato de fecha de la BD. Guardar(): se utiliza para guardar los datos de un nuevo estudiante en la BD Actualizar():Se utiliza para actualizar los datos de un estudiante existente en la BD getDB():obtiene todos los datos de un determinado estudiante de la BD. getsigId(): método utilizado para incrementar el numero del Idestudiante cada vez que ingresa uno nuevo. ExisteCarnet(): método para validar que el numero de carnet no se repita. getLaboralCount(): método utilizado para validar que un estudiante tenga solo una información laboral. MismoAnio(): método para validar que existan un maximo de tres inscripciones por año. TieneMatricula(): metodo para validar que no existan dos matriculas el mismo año.

java.sql.CallableStatement java.sql.ResultSet

Page 121: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

116

Nombre de la Clase Descripción Variables Métodos Paquetes que necesita csGrupo

Representa la tabla Grupo, por medio de ella se puede accesar y manipular los datos de esta tabla

String Id int anio String ubicacion Int aula

Guardar(): se utiliza para guardar los datos de un nuevo Grupo en la BD Actualizar():Se utiliza para actualizar los datos de un grupo existente en la BD getDB():obtiene todos los datos de un determinado grupo de la BD getGrupAsig(): obtiene las asignaturas y los grupos en las que se imparten

java.sql.CallableStatement java.sql.ResultSet

csInscripcion Representa la tabla Inscripcion, por medio de ella se puede accesar y manipular los datos de esta tabla

Long Id; Long id_matricula Int cuatrimestre Int id_empleado java.sql.Date fecha Int becado

Guardar():se utiliza para guardar los datos de una nueva Inscripción en la BD InsertId():

java.sql.CallableStatement java.sql.ResultSet

csLaboral Representa la tabla Laboral, por medio de ella se puede accesar y manipular los datos de esta tabla

Long Id String lugar String direccion String cargo String telefono String fax

Guardar(): se utiliza para guardar los datos de un nuevo estudiante trabajador en la BD getBD: obtiene todos los dato determinado estudiante trabajador de la BD Actualizar():Se utiliza para actualizar los datos de un estudiante trabajador existente en la BD

java.sql.CallableStatement java.sql.ResultSet

Page 122: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

117

csMatricula Representa la tabla Matrícula por medio de ella se puede accesar y manipular los datos de esta tabla.

Long ID Long id_estudiante Int recibo Int anio java.sql.Date fecha Int becado

Guardar(): se utiliza para guardar los datos de una nueva matrícula en la BD. getInsertId(): se utiliza para incrementar el numero de matricula.

java.sql.CallableStatement java.sql.ResultSet

csNota Representa la tabla Nota por medio de ella se puede accesar y manipular los datos de esta tabla.

Long id_inscripcion String id_asig String id_grupo Float nota Int calificacion

Guardar(): se utiliza para guardar los datos de una nueva nota. getBD: obtiene todos los dato determinada nota existente en la BD Actualizar():Se utiliza para actualizar los datos de una nota determinada existente en la BD

java.sql.CallableStatement java.sql.ResultSet

csPrecedencia Representa la tabla Precedencia por medio de ella se puede accesar y manipular los datos de esta tabla

String asig String preced

Guardar(): Se utiliza para guardar los datos de una nueva precedencia.

clases.ProConexion

csPrematricula Representa la tabla Prematrícula por medio de ella se puede accesar y manipular los datos de esta tabla

Long id Int recibo Date fecha_pre Int empleado_id

Guardar(): Se utiliza para guardar los datos de una nueva prematrícula. getBD: obtiene todos los dato determinada prematrícula existente en la BD Actualizar():Se utiliza para actualizar los datos de una determinada prematrícula existente en la BD getFechaString(): transforma la fecha del formato de la BD al formato dd/mm/aa. getRecibo() metodo que valida que el numero de recibo sea int.

java.sql.CallableStatement java.sql.ResultSet java.util.Date

Page 123: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

118

csPrerrequisito Representa la tabla Requisito por medio de ella se puede accesar y manipular los datos de esta tabla

String asig String prereq

Guardar(): Se utiliza para guardar los datos de una nueva prerrequisito

clases.ProConexion

csProfesor Representa la tabla Profesor por medio de ella se puede accesar y manipular los datos de esta tabla

Int Id String cedula String nombre1 String nombre2 String apellido1 String apellido2 Int sexo String direccion String especialidad Int tipo; String telefono String celular Date fecha Int estado

Guardar(): Se utiliza para guardar los datos de un nuevo profesor. getBD: obtiene todos los dato determinado profesor existente en la BD Actualizar():Se utiliza para actualizar los datos de un determinado profesor existente en la BD. getFechaString(): transforma la fecha del formato de la BD al formato dd/mm/aa. getFecha(): transforma la fecha dd/mm/aa al formato de fecha de la BD.

java.sql.CallableStatement java.sql.ResultSet java.util.Date

csAsigGrpçupProf Representa la tabla AsigProfGrupo por medio de ella se puede accesar y manipular los datos de esta tabla

String asignatura String grupo Int profeso java.sql.Date fecha

Guardar(): Se utiliza para guardar los datos de un nuevo registro de profesor con su grupo y asignatura que imparte getBD: obtiene todos los datos de un determinado registro de profesor con su grupo y asignatura que imparte, existente en la BD Actualizar():Se utiliza para actualizar los datos de un determinado registro de profesor con su grupo y asignatura que imparte existente en la BD

java.sql.CallableStatement java.sql.ResultSet

Page 124: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

119

PAQUETE DE FORMULARIOS: El paquete de formularios del sistema de información de PROMECYS representa todas las interfaces y las funciones que se realizan en ellas, en otras palabras podemos decir que es el puente de conexión con los usuarios del sistema y el sistema mismo ya que por medio de éstos es que la información llegará al mismo. Para distinguir las clases que pertenecen a este paquete las nombraremos con el prefijo “frm” seguido por el nombre de la actividad que se realizará en el éste. En los formularios frm existen funciones que no retornan ningún tipo de valor (void), por lo cual son sencillamente procedimientos que utilizan otras funciones, aunque los métodos que mayormente encontramos en estos formularios son las que nos serán útiles para mostrar información obtenida directamente de la base de datos (en su mayoría para llenar las grid) o por medio de las clases “cs”.

Page 125: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

120

Nombre del Formulario

Descripción Variables Métodos Paquetes que necesita

fmrPrincipal Representa el menú principal, desde aquí se mandan a llamar a todos los formularios del sistema.

private ProConexionmyConexion private boolean flagConexion;

mnuSalir_ArchivoActionPerformed: salir del sistema mnuEmp_ConfigActionPerformed: llama al formulario Empleado mnuPrematricula_ProcesoActionPerformed: llama al formulario Prematricula mnuEst_ConfigActionPerformed: llama al formulario Estudiante mnuProf_ConfigActionPerformed: llama al formulario Profesor mnuAsig_ConfigActionPerformed llama al formulario Asignatura mnuGroup_ConfigActionPerformed llama al formulario Grupo mnuAGP_ConfigActionPerformed llama al formulario AsignaturaGrupoProfesor mnuMatricula_ProcesoActionPerformed llama al formulario Matricula mnuNotas_ProcesoActionPerformed llama al formulario Notas

clases.*; java.util.HashMap; java.util.Map; javax.swing.JOptionPane; net.sf.jasperreports.

fmrPrematricula Es el formulario que representa el proceso de prematrícula del estudiante.

private ProConexion myConexion; private long modificando; private Vector vEst; private csEstudiante est;

getFechaActual(): Toma la fecha actual del calendario LlenarDepartamento(): Muestra la lista de departamento que contiene el combo. LlenarMunicipio(): Muestra la lista de municipio que contiene el combo LlenarComboEmp(): Toma los datos de la tabla empleado para mostrarlos.

clases.*; java.sql.*; java.util.Vector; java.util.Calendar; java.util.HashMap; java.util.Map; javax.swing.JOptionPane; javax.swing.table.DefaultTableModel; javax.swing.text.MaskFormatter; jasperreport.*;

Page 126: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

121

LlenarGrid(): Llena una tabla con la lista de estudiantes prematriculados getMunicipio(): Selecciona un municipio de la lista que se despliega en el combo getRecibo(): Toma el número de recibo. getEmpleadoId(): Toma el valor del id del empleado getTelefono() Verifica si cumple con el formato de telefono getCelular(): Verifica si cumple con el formato de celular CargarEstudiante(): Carga los datos del estudiante para mostrarlos en la pantalla GuardarDatos(): Guarda el ingreso de datos en el formulario. ModificarDatos(): Permite realizar modificaciones en los datos que se ingresan en el formulario de prematrícula LimpiarFormulario(): Limpia o Vacía los texto del formulario LlenarFormulario(): Muestra los datos del formulario prematricula luego de realizar una búsqueda BuscarDatosGrid(): Busca los datos que contienen las tablas filtrando según los datos que digite el usuario. Mod_Deshabilitar(): Deshabilita los campos que contiene el formulario prematrícula. Mod_Habilitar(): Habilita los campos que contiene el formulario.

Page 127: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

122

btnModificarMouseClicked(): Muestra los datos que se desea modificar al dar click btnBuscarMouseClicked(): Muestra los datos que se desea buscar al dar click alPresionarEnterBusqueda(): Realizar busqueda al presionar enter btnLimpiarMouseClicked(): Limpia los campos al dar click btnLaboralMouseClicked(): Muestra el formulario laboral al dar click btnGuardarMouseClicked(): Guarda los datos al dar click cmbDeptoItemStateChanged(): Filtra los municipios del departamento seleccionado btnSalirMouseClicked(): Salir del formulario prematrícula. jbtnReporteActionPerformed(): Imprime reporte

fmrMatricula Es el formulario que representa el proceso de matrícula del estudiante

private csEstudiante est; private ProConexion myConexion; private int codigo; private boolean modificado;

getFechaActual(): Toma la fecha actual del calendario getEmpleadoId(): LlenarComboEmp(): Muestra el nombre del empleado VerificarCarnet(): Verifica el valor y la longitud del numero de carnet LimpiarGrid_Inscripcion(): Limpia los datos de la tabla inscripción VerificarMatricula(): Verifica los datos introducidos en los campos del formulario. LlenarGrid_Inscripcion(): Llena la tabla con los datos introducidos en la

jasperreport.*; clases.*; java.sql.*; java.util.Vector; java.util.Calendar; java.util.HashMap; java.util.Map; javax.swing.JOptionPane; javax.swing.table.DefaultTableModel

Page 128: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

123

inscripción de asignaturas LlenarGrid_NuevoIngreso(): Llena la tabla con los datos del estudiante LlenarGrid_Reingreso(): Llena la tabla con los datos del estudiante CargarMatricula(): Carga los datos para mostrarlos FormularioEstado(): Verifica si los campos del formulario tienen datos VerificarGrupos(): Verifica datos introducidos en grupo jbtnImprimirReporteActionPerformed(): Imprime Reporte jbtnReporteActionPerformed(): Imprime Reporte btnReing_BusMouseClicked(): Realiza busqueda al dar click btnNuevo_BusMouseClicked(): Realiza busqueda al dar click Buscar_NuevoIngreso(): Realiza busqueda de nuevo ingreso btnMatricular_InscMouseClicked(): Muestra los datos del estudiante que se desea matricular btnMatricular_ReiMouseClicked(): Muestra los datos del estudiante que se desea matricular btnGuardarMouseClicked(): Guarda datos de matricula txtCuatrimestreKeyPressed(): _Verifica si tiene algún valor cuatrimestre txtAnioKeyPressed(): Verifica si tiene algún valor anio btnCargarInscripcionMouseClicked(): Muestra las asignaturas a inscribir

Page 129: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

124

btnCancelarMouseClicked(): Cancela la matrícula txtCarnetKeyPressed(): Verifica si el carnet es válido btnSalirMouseClicked(): Salir del formulario jButton1MouseClicked(): Muestra el formulario Actualizar Estudiante

fmrInscripcion Es el formulario que representa el proceso de Inscripción del estudiante

csEstudiante est; ProConexion myConexion; boolean modificado;

getFechaActual(): Toma la fecha actual del calendario LlenarComboEmp(): Muestra el nombre del empleado VerificarCarnet(): Verifica el valor del carnet LimpiarGrid_Inscripcion(): Limpia los valores de la tabla inscripción VerificarMatricula(): Verifica el valor de cuatrimestre anio y recibo LlenarGrid_Inscripcion(): Llena la tabla con los datos introducidos en la inscripción de asignaturas LlenarGrid_Reingreso(): Llena la tabla con los datos del estudiante CargarMatricula(): Carga los datos para mostrarlos FormularioEstado(): Verifica si los campos del formulario tienen datos VerificarGrupos(): Verifica dato introducido en grupo chkBecadoMouseClicked():

clases.*; java.sql.*; java.util.Calendar; javax.swing.JOptionPane; java.util.Vector; javax.swing.table.DefaultTableModel; javax.swing.text.MaskFormatter; jasperreport.*;

Page 130: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

125

Indica si tiene algún valor beca btnCargarInscripcionMouseClicked(): Muestra las asignaturas a inscribir txtCuatrimestreKeyPressed(): Indica si tiene algún valor Cuatrimestre txtAnioKeyPressed(): Verifica si tiene algun valor anio jButton1MouseClicked(): Muestra el formulario Actualizar Estudiante txtCarnetKeyPressed(): Verifica si el carnet es válido btnBuscarMouseClicked(): Realiza busqueda txtBus_Nom2Buscar_Reingreso(): Compara los textos con los campos de la BD txtBus_Nom1Buscar_Reingreso(): Compara los textos con los campos de la BD txtBus_Ape2Buscar_Reingreso(): Compara los textos con los campos de la BD txtBus_Ape1Buscar_Reingreso() Compara los textos con los campos de la BD btnSalirMouseClicked(): Salir del formulario inscripción

frmAsigGrupProf Representa el formulario que contiene los datos de los profesores con las asignaturas que imparten y los grupos asignados

private ProConexion myConexion; private boolean modificando;

getFechaActual(): Toma la fecha actual del calendario LlenarComboAsig(): Muetsra nombre de las asignaturas LlenarComboProfesores(): Muestra el nombre de los profesores LlenarComboGrupos(): Muestra el nombre de los grupos LlenarFiltroGrupos(): Muestra los datos del filtro por grupo LlenarFiltroProfesores(): Muestra los datos del filtro por Profesor

clases.*; java.sql.*; java.util.Calendar; javax.swing.JOptionPane; java.util.Vector; javax.swing.table.DefaultTableModel; javax.swing.text.MaskFormatter; jasperreport.*;

Page 131: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

126

LlenarFiltroAsignaturas(): Muetra los datos del filtro por Asignaturas LlenarComboFiltro(): Muestra el tipo de filtro LlenarGridPrincipal(): Muestra los datos seleccionados String strFiltroGrupo(): Establece el tipo de filtro grupo String strFiltroAsignatura(): Establece el tipo de filtro asignatura strFiltroProf esor(): Establece un tipo de filtro Profesor getFiltro(): define valor interno para cada tipo de filtro getIdGrupo(): Toma el valor del grupo seleccionado getIdAsignatura(): Toma el valor de la asignatura seleccionada getIdProfesor(): Toma el valor del profesor seleccionado getFechaSql(): btnFiltrarMouseClicked(): Muestra los datos al dar click btnGuardarMouseClicked(): Guarda los datos que se han digitados btnSalirMouseClicked(): Salir del formulario AsigGrupProf

fmrAsigPre Es el formulario donde se ingresan las precedencia de las asignaturas

private ProConexion myConexion; private Vector vPre; private Vector colNames;

ObtenerIdCombo(): Obtiene el valor del dato seleccionado en el combo. LlenarComboAsig(): Muestra nombre de las asignaturas ObtenerIndexGridPrecedencia(): Verifica si la asignatura tiene precedencia

clases.*; java.sql.ResultSet; java.util.Vector; javax.swing.JOptionPane; javax.swing.table.DefaultTableModel;

Page 132: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

127

EliminarPrecedenciaVector(): Elimina precedencia de la asignatura btnSalirMouseClicked(): Salir del formulario AsigPre btnEliminarMouseClicked(): Llama al metodo eliminarprededenciavector al dar click. btnAgregarMouseClicked(): Agrega nueva precedencia de la asignatura

fmrAsignatura Representa el formulario que contiene el registro de asignaturas de la carrera

private ProConexion myConexion; private boolean modificando; private csAsignatura asig; private Vector vPrereq; private Vector vPreced;

ObtenerIdGridAsignaturas(): Toma el valor de la asignatura seleccionada en la grid LlenarGridAsig(): llena la gid asignatura con los datos de estas EliminarPrerequisitosDB(): Elimina prerrequisito de una asignatura determinada EliminarPrecedenciasDB(): Elimina precedencia de una asignatura determinada GuardarPrerequisitos(): Guarda nuevo prerrequisito de la asignatura GuardarPrecedencias(): Guarda nueva precedencia de la asignatura LimpiarFormulario(): Limpia o vacía los campos del formulario CargarFormulario(): btnModificarMouseClicked(): muestra datos de la asignatura seleccionada para modificarse btnCancelarModifMouseClicked(): Cancela modificación de asignatura btnPrecedMouseClicked(): muestra precedencia de una determinada asignatura

clases.*; java.sql.*; java.util.Calendar; javax.swing.JOptionPane; java.util.Vector; javax.swing.table.DefaultTableModel; javax.swing.text.MaskFormatter;

Page 133: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

128

btnGuardarMouseClicked(): Guarda datos de asignatura btnPrereqMouseClicked(): muestra prerrequisito de una determinada asignatura btnSalirMouseClicked(): Salir del formulario Asignatura

fmrEmpleado Representa el formulario que contiene el registro de los Empleados

private ProConexion myConexion; private int modificando; private Vector vEmp;

VerificarDatosFormulario(): confirma que todos los datos requeridos del formulario esten llenos LlenarGrid(): llena la grid de empleados con los datos de la BD BuscarDatos(): Busca los datos que se desean mostrar LimpiarDatos(): Limpia o Vacia los campos LlenarFormulario(): llena el formulario de Empleado con los datos de un empleado que se ha seleccionado. ObtenerIdGrid(): Toma los datos del empleado GuardarDatos(): Verifica si los datos a guardar son correctos ModificarDatos(): se encarga de guardar la modificación de los datos de un empleado existente jbtnImprimirRempleadosActionPerformed(): Imprime Reporte btnModificarMouseClicked(): Muestra los datos del empleado que se desea modificar btnGuardarMouseClicked(): Guarda los datos de los textos del formulario Empleado.

clases.*; java.sql.*; java.util.HashMap; java.util.Map; java.util.Vector; javax.swing.JOptionPane; javax.swing.table.DefaultTableModel;

Page 134: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

129

txtBuscarApellido1KeyPressed(): compara los datos de la tabla del formulario con los datos q contiene la BD btnBuscarMouseClicked(): Llama al método buscar datos al dar click btnCancelarEditMouseClicked(): llama al metodo limpiar() btnSalirMouseClicked(): Salir del formulario Empleado

FmrEstudiante Actualizar

Es El formulario por medio del cual se actualizan los datos del estudiante

csEstudiante est; ProConexion myConexion;

LlenarDepartamento(): Muestra la lista de los departamentos LlenarMunicipio(): Muestra la lista de los municipios LlenarDatos(): Guarda los datos ingresados en el formulario cmbDeptoItemStateChanged(): Muetra la lista de municipio btnSalirMouseClicked(): Salir del formulario

clases.*; java.sql.ResultSet; javax.swing.text.MaskFormatter;

FmrEstudiante Datos

Es el formulario por medio del cual se pueden modificar los datos del estudiante

private csEstudiante est; private ProConexion myConexion; private boolean valido; private Vector vEst; private Vector vAsig;

VerificarCarnet(): verifica si el numero de carnet es valido LlenarGrid_Reingreso(): muestra la gris con los datos de prematricula LlenarGrid_Notas(): muestra en la grid de notas las clases que ha inscrito el estudiante LimpiarGrid_Notas(): limpia la gris motas cuando esta tiene datos Button1MouseClicked(): Muestra el formulario ActualizarEstudiante al dar clic btnAsignarMouseClicked(): se encarga de guardar la asignación de los números de carnet btnBuscar1MouseClicked(): busca un estudiante en la BD btnSalirMouseClicked(): salir del formulario

clases.*; java.sql.ResultSet; java.util.Vector;

Page 135: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

130

FmrLaboral

Es el formulario donde se hace el registro laboral de los estudiantes

LlenarDatos(): muestra la información laboral del estudiante getTelefono(): valida el numero de telefono getFax(): valida el numero de celular guardarMouseClicked(): Guarda datos al dar click btnSalirMouseClicked(): Salir del formulario

clases.*; javax.swing.JOptionPane; javax.swing.text.MaskFormatter;

FmrNotas Representa el formulario de las notas de los estudiantes

private csEstudiante est; private ProConexion myConexion; private Vector vNotas; private Vector vAsig;

getFechaActual(): Toma la fecha actual del calendario LlenarGrid_Reingreso(): Llena la tabla con los datos del estudiante VerificarCarnet(): Verifica el valor del carnet FormularioEstado(): Verifica si los campos del formulario tienen datos CargarMatricula(): Carga los datos para mostrarlos LlenarGrid_Notas(): llena la grid con los datos de las asignaturas de la BD LimpiarGrid_Notas(): Limpia o vacía tabla del formulario nota ValidarNotas(): Verifica el valor ingresado de la nota LimpiarFormulario(): Limpia o vacía los campos del formulario btnCancelarMouseClicked(): Cancela operación btnGuardarMouseClicked(): Guarda datos jButton1MouseClicked(): Muestra el formulario ActualizarEstudiante al dar click

clases.*; java.sql.*; java.util.Calendar; javax.swing.JOptionPane; java.util.Vector; javax.swing.table.DefaultTableModel; javax.swing.text.MaskFormatter;

Page 136: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

131

txtCarnetKeyPressed(): Verifica si el carnet es válido btnSalirMouseClicked(): Salir del formulario btnAsignarMouseClicked(): Muestra los datos del estudiante en el formulario para asignar notas. btnBuscarMouseClicked(): Muestra datos del estudiante seleccionado txtBus_Nom2Buscar_Reingreso(): compara los datos de la tabla del formulario con los datos q contiene la BD txtBus_Nom1Buscar_Reingreso(): compara los datos de la tabla del formulario con los datos q contiene la BD txtBus_Ape2Buscar_Reingreso(): compara los datos de la tabla del formulario con los datos q contiene la BD txtBus_Ape1Buscar_Reingreso(): compara los datos de la tabla del formulario con los datos q contiene la BD

FrmProfesor Es el formulario por medio del cual se guardan los registros de los Profesores

private ProConexion myConexion; private int err; private int codigo;

getFechaActual(): Toma la fecha actual del calendario LlenarGrid(): LimpiarDatos(): Limpia o vacía los campos del formulario Profesor btnModificarMouseClicked(): Muestra los datos del Profesor al dar click btnSalirMouseClicked(): Salir del formulario Profesor btnGuardarMouseClicked(): Guarda los datos ingresados del profesor

clases.*; java.sql.ResultSet; java.util.Calendar; java.util.Vector; javax.swing.JOptionPane; javax.swing.table.DefaultTableModel; jasperreport*.

Page 137: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

132

FrmBotar

Es el formulario que representa las asignaturas que el estudiante desea botar

private csEstudiante est; private csMatricula mat; private csInscripcion ins; private ProConexion myConexion;

getFechaSql(): getFechaActual(): Toma la fecha actual del calendario LimpiarGrids(): Limpia o vacia los datos de la tabla

clases.*; java.sql.*; java.util.Calendar; javax.swing.JOptionPane; java.util.Vector; javax.swing.table.DefaultTableModel; javax.swing.text.MaskFormatter;

Page 138: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

133

REPORTES DE PROMECYS

La herramienta utilizada para generar reportes dentro de la aplicación es el jasperreport , la cual es una herramienta de código libre en java que facilita diversidad de presentaciones en pantallas, o diseños en impresoras, o para archivar archivos en formato PDF, HTML, RTF, XLS, CSv y XML. Los reportes facilitan al usuario visualizar la información almacenada tanto en los procesos de prematrícula, matrícula, inscripción de clases, ingreso de notas así como también la información de los empleados y docentes que laboran para PROMECYS. Además se podrá acceder fácilmente a la ubicación de los grupos de clases, asignaturas que conforman la carrera. Con el uso del jaspereport el usuario no solo se ahorrará tiempo sino que también tendrá mayor eficiencia en su trabajo puesto que no tendrá que llenar los formatos de prematrícula y matrícula de forma manual lo que evita posibles errores en la escritura En el proceso de prematricula el usuario podrá imprimir la hoja de prematricula por estudiantes, una lista de estudiantes prematriculados, cabe agregar que en el proceso de matrícula también se podrán visualizar los mismos reportes. Cabe agregar que se incluirán reportes que brinden al usuario información necesaria para el desempeño de las actividades diarias de PROMECYS, tales reportes son: 1. Hoja de Prematrícula por Estudiante

Nombre del Reporte Hoja de Prematrícula Requerimientos del Reporte

dbo.Estudiante, dbo,Prematricula

Descripción/Propósito Muestra los detalles de la prematrícula de cada estudiante

Campos Llaves Idestudiante Modo de impresión Vertical Total -- Orden dbo.Estudiante(* Todos los atributos excepto

Idestudiante), dbo.Prematrícula (* Todos los atributos excepto Idprematricula)

Page 139: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

134

2. Hoja de Matricula por Estudiante Nombre del Reporte Hoja de Matrícula Requerimientos del Reporte

dbo.Matrícula, dbo.Estudiante

Descripción/Propósito Muestra los detalles de la matrícula de cada estudiante Campos Llaves Idestudiante, Idmatrícula Modo de impresión Vertical Total -- Orden dbo.Estudiante(* Todos los atributos), dbo,Matrícula(*

Todos los atributos) 3. Estudiantes Prematriculados Nombre del Reporte Estudiantes Prematriculados Requerimientos del Reporte

dbo.Estudiante, dbo.Prematricula

Descripción/Propósito Muestra la lista de todos los estudiantes prematriculados

Campos Llaves Idestudiante, Idprematrícula Modo de impresión Vertical Total Total de Estudiantes Prematriculados Orden dbo.Estudiante(Primernombre, Segundonombre,

Primerapellido, Segundoapellido) 4. Estudiantes Matriculados Nombre del Reporte Estudiantes Matriculados Requerimientos del Reporte

dbo.Estudiante, dbo,Matrícula

Descripción/Propósito Muestra la lista de los estudiantes matriculados Campos Llaves Idestudiante, Idmatricula Modo de impresión Vertical Total Total de Estudiantes Matriculados Orden dbo.Idestudiante (Primernombre, Segundonombre,

Primerapellido, Segundoapellido) 5. Grupos de la Carrera

Nombre del Reporte Grupos de la carrera Requerimientos del Reporte

dbo.Grupo

Descripción/Propósito Muestra la ubicación geográfica de los grupos Campos Llaves Idgrupo Modo de impresión Vertical Total -- Orden dbo.Grupo(Idgrupo, Anio, Aula, Ubicacion) 6. Estudiantes Becados

Page 140: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

135

Nombre del Reporte Estudiantes Becados Requerimientos del Reporte

dbo.Inscripcion, dbo.Estudiante, dbo.Matricula

Descripción/Propósito Muestra la lista de los estudiantes becados Campos Llaves IdInscripcion, Idmatricula, Idestudiante Modo de impresión Vertical Total Total Estudiantes Becados Orden dbo.Estudiante(Carnet, Primernombre,

Segundonombre, Primerapellido, Segundoapellido) 7. Datos de Profesor Nombre del Reporte Datos de Profesor Requerimientos del Reporte

dbo.Profesor

Descripción/Propósito Muestra los datos personales y laborales de los docentes contratados en promecys

Campos Llaves Idprofesor Modo de impresión Vertical Total -- Orden Dbo.Profesor (Primernombre,

Segundonombre,Primerapellido, Segundoapellido, Especialidad, Telefono, Celular)

8. Datos de Empleado Nombre del Reporte Datos de Empleado Requerimientos del Reporte

dbo.Empleado

Descripción/Propósito Muestra los datos personales de los empleados de promecys, así como también el cargo q ocupan

Campos Llaves Idempleado Modo de impresión Vertical Total -- Orden dbo.Empleado (* Todos los atributos) 9. Asignaturas impartidas por grupos

Page 141: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

136

Nombre del Reporte Asignaturas impartidas por grupos Requerimientos del Reporte

dbo.AsigProfGrupo, dbo.Profesor dbo.grupo, dbo.Asignatura

Descripción/Propósito Muestra los grupos donde se imparten las asignaturas de la carrera

Campos Llaves Idgrupo, Idasignatura, Idprofesor,Idgrupo Modo de impresión Vertical Total -- Orden dbo.AsigProfGrupo (Todos los atributos),

dbo.Profesor(Primernombre,Segundonombre Primerapellido, Segundoapellido, Telefono, Celular )

10. Notas de los Estudiantes Nombre del Reporte

Notas de los Estudiantes

Requerimientos del Reporte

dbo.Asignatura, dbo.Matricula, dbo.Nota, dbo.Inscripcion dbo.Estudiante

Descripción/Propósito

Muestra el nombre de los Estudiantes y las notas obtenidas de todas las asignaturas inscritas

Campos Llaves IdAsignatura, Idmatricula, Idinscripcion, Idestudiante Modo de impresión Vertical Total -- Orden dbo.Estudiante(Primernombre,Segundonombre,Primerap

ellido, Segundoapellido), dbo.Asignatura(Idasignatura),dbo.Nota(nota, Calificacion)

11. Hoja de Inscripción Nombre del Reporte

Hoja de Inscripción

Requerimientos del Reporte

dbo.Matricula, dbo.Inscripcion, dbo.Estudiante,dbo.Notas, dbo.Asignatura

Descripción/Propósito

Muestra las asignaturas inscritas por cada estudiante

Campos Llaves Idmatrícula, IdInscripcion, Idestudiante Modo de impresión Vertical Total -- Orden dbo.Estudiante(Primernombre,Segundonombre,Primerap

ellido, Segundoapellido), dbo.Inscripcion (Cuatrimestre), , dbo.Asignatura(Idasignatura,Descripcion)

12. Estudiantes Trabajadores

Page 142: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

137

Nombre del Reporte Estudiantes Trabajadores Requerimientos del Reporte

dbo.Estudiante, dbo.Laboral

Descripción/Propósito Muestra el nombre del estudiante y los datos del centro de trabajo

Campos Llaves Idestudiante Modo de impresión Vertical Total -- Orden dbo.Estudiante(Primerapellido, Segundonombre,

Primerapellido, Segundoapellido, Carnet), dbo.Laboral(Todos los atributos excepto Idestudiante)

13. Estudiantes sin carnet Nombre del Reporte Estudiantes sin carnet Requerimientos del Reporte

dbo.Estudiante

Descripción/Propósito Muestra la lista de los Estudiantes que no se les ha asignado carnet

Campos Llaves Idestudiante Modo de impresión Vertical Total Total de Estudiantes sin carnet Orden dbo.Estudiante (Primernombre, Segundonombre

Primerapellido, Segundoapellido) 14. Estudiantes Hombres Nombre del Reporte Estudiantes Hombres Requerimientos del Reporte

dbo.Estudiante

Descripción/Propósito Muestra la cantidad de estudiantes de sexo masculino. Campos Llaves Idestudiante Modo de impresión Vertical Total Total de Estudiantes Hombres Orden dbo.Estudiante (Carnet,Primernombre,

Segundonombre Primerapellido, Segundoapellido) 15. Estudiantes Mujeres

Page 143: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

138

Nombre del Reporte Estudiantes Mujeres Requerimientos del Reporte

dbo.Estudiante

Descripción/Propósito Muestra la cantidad de estudiantes de sexo femenino Campos Llaves Idestudiante Modo de impresión Vertical Total Total de Estudiantes Mujeres Orden dbo.Estudiante (Carnet,Primernombre,

Segundonombre Primerapellido, Segundoapellido) 16. Notas por Cuatrimestre Nombre del Reporte Notas por Cuatrimestre Requerimientos del Reporte

dbo.Asignatura, dbo.Matricula, dbo.Nota, dbo.Inscripcion

Descripción/Propósito Muestra las notas del estudiante de las asignaturas inscritas por cuatrimestre

Campos Llaves IdAsignatura, Idmatricula, Idinscripcion, Idestudiante Modo de impresión Vertical Total -- Orden dbo.Estudiante(Carnet,Primernombre, Segundonombre

Primerapellido, Segundoapellido), dbo.Asignaturas(Idasignatura,Descripcion), dbo.Nota(nota, Calificacion)

17. Estudiantes matriculados por año Nombre del Reporte Estudiantes matriculados por año Requerimientos del Reporte

dbo.Matricula, dbo.Estudiante

Descripción/Propósito Muestra la lista de los estudiantes matriculados por cada año de la carrera

Campos Llaves Idmatrícula, Idestudiante Modo de impresión Vertical Total Total de estudiantes matriculados por año Orden Dbo.Estudiante (Carnet,Primernombre,

Segundonombre Primerapellido, Segundoapellido), dbo.Matricula (Anio)

INTERFAZ DE USUARIO

Page 144: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

139

Para mantener la seguridad en el sistema, es necesario que éste confirme que la persona que está entrando en sistema sea un usuario existente en el mismo. Para ello, al entrar en el sistema éste pide el nombre del usuario y la contraseña que éste posee por medio del siguiente formulario: Para tener una mejor visión del funcionamiento del prototipo del sistema de matricula e inscripción de PROMECYS se presentan las pantallas que conforman el funcionamiento del mismo. La pantalla que se observa a continuación es la principal que es desde donde el usuario podrá seleccionar la opción que desea para realizar un determinado proceso.

Pantalla Principal

Page 145: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

140

En la pantalla siguiente se visualiza que se puede configurar los datos de los empleados, los datos de profesores, de las asignaturas, los grupos, actualizar los datos de los estudiantes y además se puede conocer el vínculo que existe entre asignatura, grupo y profesor. El formulario Empleados permite ingresar los datos de las personas que laboran en PROMECYS, también permite modificar los datos almacenados así como consultarlos. La interfaz presenta dos pestañas una de ellas es para buscar los datos y la otra es para ingresar, modificar y guardar los datos de los empleados. Interfaz Empleados

Pantalla Principal

Page 146: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

141

El formulario de Docentes permite ingresar los datos de los profesores que imparten las clases en PROMECYS. Estos datos una vez que han sido almacenados pueden ser consultados y modificados, una vez que se hacen los cambios necesarios se puede guardar la información.

Interfaz Docentes

Page 147: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

142

El formulario Asignatura permite ingresar los datos de una nueva asignatura, también permite visualizar las asignaturas que han sido almacenadas. Algunas asignaturas tienen prerrequisitos, otras precedencias, algunas veces tiene ambas y hay algunas que no tienen ni prerrequisitos, ni precedencias; esto se puede registrar desde la interfaz Asignaturas para ello el usuario debe ingresar los datos de la asignatura y después lo selecciona y activa la interfaz de precedencia o prerrequisito en dependencia de la necesidad que se tenga. La pantalla para ingresar la precedencia y el prerrequisito son similares, solo se selecciona la asignatura deseada y se guarda como precedencia o prerrequisito.

Interfaz Asignaturas

Interfaz precedencia Nota: la interfaz prerrequisito es igual a la de precedencia

Page 148: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

143

En el formulario de Grupos se ingresa la información del grupo: el código, la ubicación, el año y el número de aula, también se puede visualizar la información de los grupos que han sido almacenados.

Interfaz Grupos

Page 149: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

144

Por medio de este formulario, se podrá asignar los números de carnet a los estudiantes que todavía no lo tengan, teniendo una lista de todos los estudiantes para hacer la búsqueda más fácil, además se podrán actualizar los datos del mismo.

Page 150: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

145

Aquí después de asignado el carnet se puede buscar al estudiante con su número de carnet y actualizar los datos si se desea:

Page 151: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

146

La interfaz vínculo de grupos, asignaturas y profesores permite ver la relación que existe entre estos tres registros, también se pueden registrar relaciones nuevas y guardarlas. En esta interfaz se puede seleccionar el grupo y de acuerdo a la selección se pueden ver las asignaturas que el grupo puede llevar, también muestra la lista de los profesores que pueden impartir dichas asignaturas. Además aparece una lista que muestra el vínculo de los mismos, esta se puede filtrar por grupo, profesor y asignatura.

Interfaz relación grupos, asignaturas y profesores

Page 152: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

147

Desde la interfaz principal se pueden seleccionar las interfaces para llevar a cabo los procesos de Prematricula, Matricula, Inscripción, el ingreso de las notas y también botar asignaturas inscritas. El primer proceso que se realiza para formar parte de PROMECYS es la prematricula, esta interfaz tiene dos pestañas, desde la primera se puede agregar una nueva prematricula en la que se introducen los datos de las personas que se llegan a prematricular, y en la segunda pestaña se puede buscar la lista de las personas que se han prematriculado.

Esta es la vista de la pestaña principal, donde se

introducen los datos de

los prematricula

dos

Pantalla principal

Interfaz Prematricula

Page 153: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

148

Esta pantalla muestra la segunda pestaña de la interfaz prematricula que es donde se buscan los datos de las personas que han realizado una prematricula. Para modificar los datos almacenados es necesario primeramente hacer la búsqueda para después guardar los cambios.

Interfaz Prematricula

Page 154: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

149

Una vez que se ha llevado a cabo la prematricula, el siguiente paso es llevar a cabo el proceso de matricula, esta interfaz esta compuesta por tres pestañas, en la primera se ingresan los datos de la matricula, para lleva a cabo la misma es preciso buscar los datos de los estudiantes, estas listas están en las otras dos pestañas una corresponde a la de los estudiantes de reingreso y la otra a los de primer ingreso que corresponde a loo prematriculados. Para registrar la matricula es necesario buscar primero los datos de los estudiantes y después se ingresan los datos de la matricula para después ser guardada.

Interfaz Matricula

[Formulario de Matricula]

Page 155: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

150

Cuando se lleva a cabo la matricula generalmente se actualizan los datos de los estudiantes, esto se hace a través de la interfaz actualizar información del estudiante, en esta se pueden modificar los datos generales del estudiante, esto se lleva a cabo porque algunas veces se cambia el numero de teléfono y la dirección.

Interfaz actualizar información del estudiante Entre los datos de los estudiantes esta la información laboral que también puede ser modificada cada vez que se lleva a cabo la matricula, que se realiza una vez al año.

Interfaz datos laborales

Page 156: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

151

Después de haber llevado a cabo la matricula se puede realizar el proceso de inscripción de asignaturas, esta se hace tres veces al año, lo que significa que son tres inscripciones por cada matricula. La interfaz de inscripción tiene dos pestañas una para hacer la inscripción y la otra permite buscar los datos del estudiante. Para realizar la inscripción se debe buscar los datos de estudiante y después cargar la inscripción para posteriormente guardarla. Cuando se introducen los datos de la inscripción, se introduce el año y el cuatrimestre y cuando se da en cargar inscripción se muestran las asignaturas que se pueden cursar en ese año y cuatrimestre y luego se guarda la inscripción.

Interfaz Inscripción

Page 157: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

152

Cuando se realiza una inscripción, el estudiante tiene la opción de botar alguna de las asignaturas que ya ha inscrito. Para ello debe buscar los datos del estudiante para que se muestre la última inscripción se selecciona la asignatura que se desea botar, además se muestran otras opciones asignaturas que pueden ser inscritas ya sea que se adelanten o que se deban, después de haber seleccionado se guardan los cambios.

Formulario botar e inscribir asignaturas

Page 158: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

153

Se pueden realizar reportes de los diferentes procesos que se llevan a cabo en PROMECYS. Los reportes muestran los datos almacenados de cada uno de los procesos, estos son mandados a llamar a través de las vistas que se realizan en SQL. Algunos de los reportes son:

Reporte de estudiantes prematriculados

Page 159: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

154

Reporte de estudiantes becados

Page 160: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

155

Reporte de estudiantes matriculados

Page 161: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

156

Reporte datos de grupo

Page 162: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

157

Reporte detalles de prematricula

Page 163: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

158

Reporte hoja de matricula

Page 164: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

159

CAPITULO V:

ANALISIS DE LA RED PARA LA IMPLEMENTACION DEL SISTEMA

Page 165: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

160

RECURSOS ACTUALES

Actualmente PROMECYS cuenta con dos computadoras, las cuales no son están conectadas en red ni son utilizadas en las labores que se realizan en el proceso de matrícula e inscripción de estudiantes ya que estos se realizan de forma manual. Solo se cuenta con un pequeño registro de datos del estudiante que no tiene ningún tipo de conexión con los sistemas pertenecientes a la universidad. Por lo que se puede decir que el diagrama de despliegue actual es el siguiente:

Director (a) Asistente

El sistema estará implementado en 2 computadoras, las cuales pertenecen a los usuarios de PROMECYS, es decir quienes atenderán a los estudiantes que pertenecen al mismo. Una de las computadoras será utilizada como servidor y estará conectada en red con la otra computadora, a través de un switch utilizando cable UTP categoría 5, de tal manera que ambas podrán realizar los procesos del sistema y accesar a la información sin inconvenientes. La topología en que se clasifica la conexión de red de los equipos es la topología estrella, ya que las estaciones de trabajo estarán conectadas a un punto central (Switch) y las comunicaciones se harán posibles a partir de este. El diagrama de despliegue propuesto es el siguiente:

ImpresoraDirector (a) Asistente

Switch

Page 166: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

161

FACTIBILIDAD TÉCNICA

Es importante realizar un estudio de factibilidad para determinar la infraestructura tecnológica y la capacidad técnica que implica la implementación del sistema. Por lo que se debe evaluar si el equipo (hardware) y software están disponibles y si tienen las capacidades técnicas requeridas para la aplicación. Requerimientos de Hardware. Es importante contar con los requerimientos de hardware adecuados para la implementación del sistema. Requerimientos Actuales Requerimientos Recomendados Componente Características Procesador P4 1.80 Ghz Memoria Ram 128 MB Disco Duro 40 GB Monitor 15’’ CRT Teclado Si Mouse Si Altavoces No Tarjeta de Red 10/100 Mbps Requerimientos de Software. Para el desarrollo de la aplicación utilizaremos java jdk1.6, que es un entorno de desarrollo eficaz, que permite programar cualquier tipo de aplicación, tanto para escritorio como para entornos web. Algunos de los requerimientos de software a considerar para el sistema se detallan a continuación:

CONCLUSIONES

Componente Características Procesador P4 3.0 Ghz Memoria Ram 1 GB Disco Duro 80 GB Monitor 17’’ LCD Teclado Si Mouse Si Altavoces No Tarjeta de Red 10/100 Mbps

Paquete Software No. Licencia

Sistema Operativo Microsoft Windows XP Profesional Service Pack 2

55274-640-7756424-23428

Software Antivirus Antivir Personal Edition Classic 0000149996-ADJIE-0001

Entorno de Desarrollo

Java jdk1.6 Gratuita

Procesador de Varchar Microsoft Word 2007 89388-707-0441865-

65873 Gestor de Base de Datos

Microsoft SQL Server 2000 $ 400

Page 167: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

162

Se realizó el análisis de requerimientos para definir la problemática actual y

poder brindar una propuesta para la automatización de los procesos, encontrando 30 casos de usos que serán necesarios.

Se analizó el diagrama de clases lo cual permitió reconocer 14 tablas

relacionadas y normalizadas que se describen en el modelo de datos. Se ha diseñado un prototipo del sistema de información, tomando en cuenta

las actividades que realizan los usuarios en los diferentes procesos, mostrando 30 pantallas con 17 reportes disponibles en su prototipo.

Se diseño una topología en estrella para la interconexión de la red a utilizar

en el sistema, debido a la cantidad de maquinas existentes y la ubicación geográfica de las oficinas.

Page 168: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

163

RECOMENDACIONES

Se recomienda continuar con el desarrollo de la propuesta del prototipo

de sistemas de información, para los procesos de Matrícula e Inscripción de asignaturas y así mismo agilizar las actividades e incrementar la eficiencia.

Se recomienda la adquisición de nuevos equipos para ser reemplazados en la oficina de PROMECYS, ya que las características actuales no son suficientes para la demanda del sistema.

Page 169: Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni

Prototipo del Sistema de Información de PROMECYS

164

BIBLIOGRAFIA

Libros

Programación en Java 2. Estructura de datos y Programación orientada a objetos. Luis Joyanes Aguilar e Ignacio Zahonero Martínez 1ra ed. México McGraw Hill.

Aprenda Programación en SQL Server 2000. Rebecca M Riordan. Mc

Graw Hill

Documentación De Cursos de Titulación.

Patricia Lacayo Cruz. Análisis Diseño e implementación de Sistema de

información. Curso de Titulación. Módulo I [Marzo 2007] Universidad Nacional de Ingeniería.

Evelyn Espinoza. Administración de base de datos Curso de Titulación.

Modulo II [Junio 2007]. Universidad Nacional de Ingeniería.

Marvin Parrales. Programación Orientada a Objeto. Curso de Titulación. Modulo III [Julio 2007]. Universidad Nacional de Ingeniería.