Informe Pasantias Emc

147
REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA DEFENSA UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL UNEFA INGENIERÍA DE SISTEMAS PROPUESTA DE REINGENIERÍA A LA PLATAFORMA EDUCATIVA DE LA UNIVERSIDAD METROPOLITANA PLATUM 2.0 (DIRECCIÓN DE APRENRED, UNIVERSIDAD METROPOLITANA). Trabajo presentado como requisito parcial para optar al título de Ingeniero de Sistemas TUTOR INDUSTRIAL: PASANTE: Ing. Osuna S. Rafael A. Br. Milano C. Enrique J. C.I. V-14.890.217 C.I. V-14.745.044 CARACAS, FEBRERO 2012

Transcript of Informe Pasantias Emc

Page 1: Informe Pasantias Emc

REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA DEFENSA

UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL

UNEFA INGENIERÍA DE SISTEMAS

PROPUESTA DE REINGENIERÍA A LA PLATAFORMA EDUCATIVA DE LA UNIVERSIDAD METROPOLITANA PLATUM 2.0

(DIRECCIÓN DE APRENRED, UNIVERSIDAD METROPOLITANA).

Trabajo presentado como requisito parcial para optar al título de Ingeniero de Sistemas

TUTOR INDUSTRIAL: PASANTE:

Ing. Osuna S. Rafael A. Br. Milano C. Enrique J. C.I. V-14.890.217 C.I. V-14.745.044

CARACAS, FEBRERO 2012

Page 2: Informe Pasantias Emc

i

DIRECCIÓN APRENRED DIRECCIÓN APRENRED

CARTA DE APROBACIÓN DEL TUTOR INDUSTRIAL

Yo, Ingeniero Rafael Antonio Osuna Simones, titular de la cédula de identidad

Nº 14.890.217 como Tutor Industrial del presente Informe de Pasantías donde se

desarrolló una propuesta titulada “PROPUESTA DE REINGENIERÍA A LA

PLATAFORMA EDUCATIVA DE LA UNIVERSIDAD METROPOLITANA

PLATUM 2.0”. Por el Br. Enrique José Milano Camacho, titular de la cédula de

identidad N° 14.745.044, de la Carrera INGENIERÍA DE SISTEMAS, considero que

el desarrollo del presente informe se encuentra aprobado para realizar su evaluación y

calificación final de acuerdo al Reglamento Vigente de Pasantías Largas.

______________________________ Ing. Rafael Antonio Osuna Simones

C.I.V-14.890.217

Page 3: Informe Pasantias Emc

ii

DEDICATORIA

A Dios Todopoderoso.

A mi esposa Elizabeth y a mi familia.

Page 4: Informe Pasantias Emc

iii

RECONOCIMIENTO

Agradezco primeramente a Dios, la fuente de toda sabiduría.

A mi esposa Elizabeth por estar siempre a mi lado.

A mi familia que siempre ha creido en mi.

Al Sr. Humberto y su esposa Beatriz que son grandes amigos.

A la MsC. Renata Curci, a Betzabé y los chicos de la Dirección de AprenRed.

A mi tutor Industrial Ing. Rafael Osuna

A mi tutor académico Ing. Luis Aguilar (UNEFA)

Page 5: Informe Pasantias Emc

iv

ÍNDICE DE CONTENIDO

CONTENIDO p. CARTA DE APROBACIÓN DEL TUTOR .............................................................. i

DEDICATORIA .......................................................................................................... ii

RECONOCIMIENTO ............................................................................................... iii

ÍNDICE DE CONTENIDO ....................................................................................... iv

ÍNDICE DE TABLAS ................................................................................................ vi

ÍNDICE DE GRÁFICOS.......................................................................................... vii

RESÚMEN ................................................................................................................ viii

INTRODUCCIÓN ...................................................................................................... 1

CAPÍTULO I PRESENTACIÓN DE LA EMPRESA

1.1. Razón Social ................................................................................................... 3

1.2. Actividad a la que se dedica ........................................................................... 3

1.3. Reseña histótica .............................................................................................. 3

1.4. Mision ............................................................................................................. 4

1.5. Vision ............................................................................................................. 4

1.6. Valores ............................................................................................................ 5

1.7. Objetivos de la empresa ................................................................................. 5

1.8. Organigrama General de la empresa .............................................................. 6

1.9. Organigrama del Departamento ..................................................................... 7

CAPÍTULO II SITUACIÓN ACTUAL

2.1. Necesidades detectadas: ..................................................................................... 8

2.2. Objetivo General: ............................................................................................... 9

2.2. Objetivos Específicos: ........................................................................................ 9

2.3. Justificación........................................................................................................ 9

Page 6: Informe Pasantias Emc

v

CAPÍTULO III DESARROLLO DEL PROYECTO

3.1. Bases Teóricas ...................................................................................................... 11

3.2. Metodología ......................................................................................................... 17

3.3. Resultados ............................................................................................................ 29

3.4. Factibilidad Técnica, Operativa, Financiera y Legal ........................................... 40

3.5. Vinculación de los Resultados con el Perfil de Egreso ........................................ 41

CONCLUSIONES ..................................................................................................... 42

RECOMENDACIONES ........................................................................................... 44

REFERENCIAS BIBLIOGRÁFIAS ....................................................................... 45

ANEXOS .................................................................................................................... 49

Anexo A: Elementos de la base de datos .................................................................... 50

Anexo B: Diagramas y documentos de casos de uso .................................................. 58

Anexo C: Diagrama de Gantt ...................................................................................... 71

Anexo D: Pantallas del sistema ................................................................................... 73

Anexo E: Manual general del sistema ......................................................................... 80

Anexo F: Codificación del sistema ............................................................................. 93

Anexo G: Archivos y directorios del proyecto ......................................................... 132

Page 7: Informe Pasantias Emc

vi

ÍNDICE DE TABLAS

Cuadro 1: Cronograma de Actividades ..................................................................... 26

Cuadro 2: Vista del Documento de Casos de Uso Registrar Materia ......................... 32

Cuadro 3: Vista del Documento de Casos de Uso Consultar Inventario .................... 33

Cuadro 4: Vista del Documento de Caso de Uso Generar Documento PDF .............. 34

Cuadro 5: Vista del Documento de Caso de Uso Total Materias Registradas ............ 35

Page 8: Informe Pasantias Emc

vii

ÍNDICE DE GRÁFICOS

Gráfico 1: Organigrama General de la Universidad Metropolitana (UNIMET)........... 6

Gráfico 2: Organigrama de la Dirección de Aprendizaje en Red (AprenRed) ............. 7

Gráfico 3: Página de inicio de la Plataforma Pl@tUM 2.0 ......................................... 12

Gráfico 4: Vista general de las fases de FDD ............................................................. 20

Gráfico 5: Diagrama UML .......................................................................................... 24

Gráfico 6: Diagrama de Secuencia Registrar Materia................................................. 31

Gráfico 7: Diagrama de Actividad Registrar Materia ................................................. 36

Gráfico 8: Diagrama de Actividad Consultar Inventario ............................................ 37

Gráfico 9: Diagrama de Actividad Generar Documento en formato PDF .................. 38

Gráfico 10: Diagrama de Actividad Total Materias Registradas ................................ 39

Page 9: Informe Pasantias Emc

viii

REPÚBLICA BOLVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA DEFENSA

UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL BOLIVARIANA

UNEFA CARRERA INGENIERÍA DE SISTEMAS

Autor: Br. Enrique José Milano Camacho

Fecha: Febrero de 2012

RESÚMEN

PROPUESTA DE REINGENIERÍA A LA PLATAFORMA EDUCATIVA DE

LA UNIVERSIDAD METROPOLITANA PLATUM 2.0

(DIRECCIÓN DE APRENRED, UNIVERSIDAD METROPOLITANA).

En la actualidad, la UNIMET en su dirección de Aprendizaje en Red, cuenta con una plataforma tecnológica educativa denominada Pl@tUM 2.0 creada hace 5 años bajo lenguaje de programación Java en reemplazo de la versión 1.0 creada bajo lenguaje PHP y XML, y que permite cursar materias de forma virtual, semipresencial y presencial con apoyo, así como cursos de educación a distancia gracias a la red de redes Internet y a los servicios web. La dirección de AprenRed, se ha visto en la necesidad de llevar a cabo importantes actualizaciones y mejoras de la herramienta tomando en cuenta las propuestas de reingeniería a la plataforma realizadas por su personal de soporte y usuarios, para darle continuidad a los servicios prestados y que vayan acorde con el avance tecnológico, en dicha dirección se identificaron los requerimientos y se determinó que la mejor metodología a utilizar fue la fase de construcción del método de Desarrollo Basado en Funcionalidades (Feature Driven Development en inglés, habitualmente resumido como FDD por sus siglas en inglés) el cual es un proceso ágil y ligero para el desarrollo de sistemas donde las clases escritas tienen propietario y solo ellos pueden cambiarlas. Descriptores: Feature Driven Development (FDD), Reingeniería, Plataformas educativas.

Page 10: Informe Pasantias Emc

1

INTRODUCCIÓN

La actualización permanente de los sistemas de comunicación e información

permite que no existan barreras entre los continentes, plataformas y equipos de

computación cada vez más eficientes y robustos hacen posible el fluir de la información,

por lo que es necesario contar con sistemas que van a las par con dichas actualizaciones

para garantizar que las organizaciones realicen las actividades de manera correcta.

En la actualidad, la UNIMET, al igual que otras universidades, hace uso de los

avances de la tecnología en el mundo de la informática mediante su plataforma

educativa Pl@tUM. Como instrumento tecnológico es necesario que sea mejorado y

actualizado tomado en cuenta las opiniones de los usuarios.

La Dirección de AprenRed de la UNIMET, tiene la responsabilidad de

mantener actualizada y en funcionamiento ésta herramienta educativa y tomando en

cuenta el planteamiento anterior se desarrolla el presente informe de pasantías –

Propuestas de Reingeniría a la Plataforma Educativa de la Universidad

Metropolitana Pl@tUM 2.0 – cuya finalidad es llevar a cabo las propuestas

necesarias de reingeniría para la plataforma.

Para llevar a cado este proyecto se analizaron una serie de requerimientos por

parte de los usuarios que utilizan dicha herramienta, se definió la metodología a

utilizar como el Desarrollo Basado en Funcionalidades (Feature Driven Development

en inglés, habitualmente resumido como FDD) el cual es un proceso ágil y ligero para

el desarrollo de sistemas donde las clases escritas tienen propietario y solo ellos

pueden cambiarlas.

El informe está divido en tres capítulos: El capítulo I, contiene la presentación

de la empresa a saber razón social, actividad o actividades a las que se dedican,

reseña histórica, misión, visión, valores, objetivos, organigrama general de la empresa

Page 11: Informe Pasantias Emc

2

y organigrama del departamento donde se realizo las pasantías; el capítulo II presenta

las necesidades detectadas, objetivo general, objetivos especificos y la justificación;

mientras que en el capítulo III se exponen las bases teóricas, metodología, resultados,

factibilidad técnica, operativas, financiera y legal, vinculación de los resultados con el

perfil del egresado por último se encuentra las conclusiones, recomendaciones,

referencias bibliográficas y los anexos.

Page 12: Informe Pasantias Emc

3

CAPÍTULO I

PRESENTACIÓN DE LA EMPRESA

1.1. Razón Social

Nombre: Universidad Metropolitana, Dirección de Aprendizaje en Red (UNIMET, AprenRed). Dirección: Autopista Petare-Guarenas, Sector la Urbina, Distribuidor Metropolitano.

Al lado de Terrazas del Avila. Caracas

Dirección Electrónica: www.unimet.edu.ve

1.2. Actividad a la que se dedica

Educación.

1.3. Reseña histórica

Al inicio de la década de los 60 un grupo de hombres con visión de futuro,

liderado por don Eugenio Mendoza, pensó en una universidad que capacitara con

criterio moderno a jóvenes de todas las clases sociales, llamados a integrar en el

futuro los equipos profesionales calificados por el talento y preparación para ejercer

una influencia decisiva en el desarrollo del país. A tal fin el grupo constituyó en mayo

de 1964 una asociación civil sin fines de lucro. De su trabajo surgió la Universidad

Metropolitana, el 21 de octubre de 1970, fecha en la cual el Consejo Nacional de

Universidades aprueba y autoriza su organización, planes y programas. Son

designados como autoridades de la Universidad los doctores Luis Manuel Peñalver

(rector), Rodolfo Moleiro (vicerrector administrativo) y Miguel Ángel Rivas

Page 13: Informe Pasantias Emc

4

(vicerrector académico).

El 22 de octubre de ese mismo año la Universidad abre sus puertas en la

antigua sede del Colegio América, ubicada en San Bernardino, Caracas. Un frondoso

samán en su patio central, es testigo del inmenso esfuerzo que se despliega en esa

etapa inicial de la institución. Bajo su enramada se forma la primera generación de

198 estudiantes; a su sombra sueña y labora el claustro, y toman cuerpo las

acrisoladas ilusiones de los fundadores.

Se ofrecen entonces cinco carreras: Ingeniería Mecánica, Ingeniería Eléctrica, Ingeniería Química, Ciencias Administrativas y Matemática. A partir de 1976, la Universidad Metropolitana establece su sede definitiva en La Urbina. El nuevo campus se extiende sobre una superficie de 100 hectáreas, colindantes con el Parque Nacional El Ávila. En la plaza del rectorado, como símbolo de continuidad, un retoño del anterior samán despliega su copa.

1.4. Misión

Formar profesionales reconocidos por su alto nivel ético, sólida formación

integral, por su capacidad emprendedora, de liderazgo y de trabajo en equipo, con

dominio de al menos un segundo idioma, y comprometidos con el desarrollo del

sector productivo y de la sociedad en general.

1.5. Vision

Fortalecer la UNIMET como una institución universitaria reconocida por la

competitividad y formación integral de sus graduados, destacada por la calidad y

pertinencia de su producción intelectual y técnica, por el valor que le asigna a la

conducta ética de sus miembros y por el esfuerzo permanente y el compromiso para

responder a las cambiantes realidades del entorno nacional e internacional.

Page 14: Informe Pasantias Emc

5

1.6. Valores Rectores

El funcionamiento institucional se fundamenta en una política de

mejoramiento continuo. Tal política implica que toda la comunidad universitaria debe

practicar y promover en su desempeño de todos los días los valores y actitudes

siguientes:

• Honestidad

• Excelencia

• Respeto a la dignidad de las personas

• Responsabilidad en el trabajo

• Espíritu de trabajo en grupo

• Actitud de servicio

• Fomento de la innovación

• Mejoramiento continuo del profesorado y del personal de apoyo y

administrativo

Liderazgo de los directivos, basado en el diálogo permanente con los alumnos,

profesores y personal administrativo de la Institución.

Administración eficiente de los recursos. Vinculación con la comunidad para

responder a sus necesidades de acuerdo con la misión de la Institución.

1.7. Objetivos de la empresa

Se rigen por los Valores Rectores descritos en el punto anterior.

Page 15: Informe Pasantias Emc

6

1.8. Organigrama General

Gráfico 1: Organigrama General de la Universidad Metropolitana (UNIMET)

Fuente:http://www.unimet.edu.ve/irj/go/km/docs/sede_web/images/organigrama_reducido.png

Page 16: Informe Pasantias Emc

7

1.9. Organigrama del Departamento donde se realizó la Pasantía

Gráfico 2: Organigrama de la Dirección de Aprendizaje en Red (AprenRed)

Fuente: Dirección de AprenRed

Page 17: Informe Pasantias Emc

8

CAPÍTULO II

SITUACIÓN ACTUAL

2.1. Necesidades detectadas:

Los cambios y avances tecnológicos que se viven a diario en el mundo,

generan nuevas necesidades que exigen tener plataformas más robustas y con más

servicios. La Universidad Metropolitana mediante La Plataforma Pl@tUM 2.0,

administrada por la Dirección de AprenRed, ofrece servicios educativos que son

utilizados por usuarios y el personal de soporte técnico, sin embargo, al momento de

realizar una búsqueda detallada de un profesor es necesario saber su número de

cédula como única opción o ver el listado por orden alfabetico lo que implica que

dicha búsqueda sea un poco complicada, además la plataforma no cuenta con un

módulo de materias abiertas por trimestre que pueda dar información mas detallada

del total de secciones de dichas materias, trayendo como consecuencia que el trabajo

se realice de forma manual y muy prolongado debido a que la Universidad ofrece

carreras de pregrado, postgrado, diplomados así como profesionalizaciones, cursos de

capacitación, entre otros. Debido a lo anterior expuesto es necesario presentar los

posibles cambios y una herramienta para el control detallado de materias en la

plataforma.

Page 18: Informe Pasantias Emc

9

2.2. Objetivo General

Identificar los requerimientos de parte de usuarios y personal de soporte

técnico de Pl@tUM 2.0 para diseñar una propuesta de reingeniería en la plataforma

educativa, a fin de mejorar y actualizar el desempeño de los servicios que esta ofrece.

2.3. Objetivos Específicos

1. Levantamiento de la información y requerimientos por parte de los

usuarios.

2. Elaborar las propuestas para su aprobación.

3. Validar con el personal de AprenRed los posibles cambios en la

plataforma.

2.3. Justificación

En la actualidad, la UNIMET por medio de la Dirección de AprenRed, cuenta

con la plataforma educativa llamada Pl@tUM 2.0, que permite cursar materias de

forma virtual, semipresencial y presencial con apoyo, así como cursos de educación a

distancia. No obstante, cuando el personal de soporte ingresa al módulo de profesores

para hacer una búsqueda o modificar los datos del algún docente sólo tiene como

opción colocar el número de cédula, dicho módulo se puede mejorar ampliando las

alternativas, de esta manera, los usuarios se verían beneficiados ya que no estarán

limitados a solo un dato para realizar la solicitud. Además, la Dirección contaria con

una nueva herramienta de inventario de materias abiertas por trimestre para llevar de

forma automatizada todo el detalle de las secciones y cursos de las disntintas

modalidades sean virtuales, semipresenciales y presenciales.

Este proyecto permitirá en las futuras actualizaciones, la integración del

módulo de inventario de materias abiertas con la plataforma platum, para ofrecer

Page 19: Informe Pasantias Emc

10

detalladamente la información de cada sección o curso abierto por trimestre como lo

exige la administración de AprenRed.

Page 20: Informe Pasantias Emc

11

CAPÍTULO III

DESARROLLO DEL PROYECTO

3.1. Bases Teóricas

Para dar la solidez teórica al proyecto, se considera necesario iniciar el

referencial teórico con una conceptualización de lo que es la reingeniería.

Aspectos Teóricos

Reingeniería:

Para Lefcovich (s/f), Reingenieria “es aquella que constituye una recreación y

reconfiguración de las actividades y procesos de una empresa, lo cual implica volver

a crear y configurar de manera radical él o los sistemas de la compañía a los efectos

de lograr incrementos significativos, y en un corto período de tiempo, en materia de

rentabilidad, productividad, tiempo de respuesta, y calidad, lo cual implica la

obtención de ventajas competitivas”. Existen diferentes tipos, entre ellas se tienen:

reingeniería de software, organizacional y de procesos.

Los objetivos que se desean conseguir son los siguientes:

• Mejorar la calidad, rendimiento y capacidad de los sistemas existentes.

• Desarrollar sistemas adaptables y amigables.

• Reducir los errores y costos del mantenimiento.

• Facilitar las peticiones de mantenimiento.

Page 21: Informe Pasantias Emc

12

• Proteger y extender la vida de los sistemas.

Plataforma Pl@tUM 2.0:

La Plataforma de la Universidad Metropolitana - PlatUM 2.0 ( Pl@tUM 2.0),

es una plataforma educativa desarrollada bajo java en sustitución de la versión 1.0. la

cual cuenta con nuevos servicios y herramientas que permiten desenvolverse con

mayor facilidad en los cursos virtuales y ofrece apoyo a los cursos en modalidad

presencial y semipresencial. Pertenece a la Universidad Metropolitana y es

administrada por la Dirección de AprenRed de dicha casa de estudios.

Gráfico 3: Página de inicio de la Plataforma Pl@tUM 2.0

Fuente: www.platum2.unimet.edu.ve/platum

Software Libre:

Según la Fundación para el Software Libre (Free Software Foundation, en

inglés), “el software libre se refiere a la libertad de los usuarios para ejecutar, copiar,

distribuir, estudiar, modificar el software y distribuirlo modificado”. Suele estar

disponible gratuitamente, o al precio de costo de la distribución a través de otros

medios; sin embargo no es obligatorio que sea así, por lo tanto no hay que asociar

software libre a software gratuito (denominado usualmente freeware, en inglés).

Page 22: Informe Pasantias Emc

13

De acuerdo con lo antes expuesto, el software libre garantiza lo siguientes:

• La libertad de usar el programa, con cualquier propósito.

• Permite estudiar cómo funciona el programa y modificarlo, adaptándolo a tus

necesidades.

• Se permite distribuir copias del programa, con lo cual puedes ayudar a tu

prójimo.

• Se puede mejorar el programa y hacer públicas esas mejoras a los demás, de

modo que toda la comunidad se beneficie.

Servicios Web:

Un servicio web (en inglés, Web service) es una pieza de software que utiliza

un conjunto de protocolos y estándares que sirven para intercambiar datos entre

distintas aplicaciones de software y en redes de ordenadores como Internet,

desarrolladas en lenguajes de programación diferentes, y ejecutadas sobre cualquier

plataforma.

La Organización para el Avance de Estándares de Información Estructurada

(OASIS, por sus siglas en inglés) y el Consorcio World Wide Web Consortium (W3C

abreviado) son los comités responsables de la arquitectura y reglamentación de los

servicios Web.

Algunas ventajas:

• Aumentan la interoperabilidad entre programas independientemente de la

plataforma en donde están instalados.

• Permite el funcionamineto entre servicios y programas de diferentes

compañías ubicados en diferentes lugares geográficos.

• Fomentan los estándares y protocolos basados en texto, haciendo más fácil

acceder y entender su contenido y funcionamiento.

Page 23: Informe Pasantias Emc

14

Bases de Datos:

Es una colección de datos organizados y estructurados según un determinado

modelo de información, como lo define Gilfillan (2002), “es una coleccion de

archivos relacionados que utilizan tablas de datos relacionadas por un campo en

común”. Se diseña con un propósito específico y debe ser organizada con una lógica

coherente, estos podrán ser compartidos por distintos usuarios y aplicaciones, pero

deben conservar su integridad y seguridad al margen de las interacciones de ambos,

además su definición y descripción han de ser únicas para minimizar la redundancia y

maximizar la independencia en su utilización.

En una base de datos, las entidades y atributos del mundo real, se convierten

en registros y campos. Estas entidades pueden ser tanto objetos materiales como

libros o fotografías, pero también personas e, incluso, conceptos e ideas abstractas.

Las entidades poseen atributos y mantienen relaciones entre ellas.

Lenguaje de programación:

Es un lenguaje artificial, el cual, se utiliza para definir adecuadamente una

secuencia de instrucciones que puedan ser interpretadas y ejecutadas en una

computadora. Pueden usarse para crear programas que controlen el comportamiento

físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo

de comunicación humana. Está formado por un conjunto de símbolos y reglas

sintácticas y semánticas que definen su estructura y el significado de sus elementos y

expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se

mantiene el código fuente de un programa informático se le llama programación. Para

que la unidad central de proceso (cpu) entienda nuestras instrucciones debe usarse un

lenguaje específico conocido como código máquina, el cual comprende fácilmente,

pero que lo hace excesivamente complicado para las personas. De hecho sólo consiste

en cadenas extensas de números 0 y 1.

Page 24: Informe Pasantias Emc

15

MySQL:

Según Gilfillan (2002), define MySQL (Lenguaje de Consulta Estructurado)

como “un sistema de administracion de bases de datos relational (RDBMS). Se trata

de un programa capaz de almacenar una enorme cantidad de datos de gran variedad y

de distribuirlos para cubrir las necesidades de cualquier tipo de organizacion, desde

pequeños establecimientos comerciales a grandes empresas y organismos

administrativos” (p.40).

Diagramas de Caso de Uso:

Son aquellos que documentan el comportamiento de un sistema desde el punto

de vista del usuario. Por lo tanto, determinan los requisitos funcionales del mismo, es

decir, representan las funciones que un sistema puede ejecutar. Su ventaja principal es

la facilidad para interpretarlos, lo que hace que sean especialmente útiles en la

comunicación con el cliente.

Los diagramas de casos de usos están compuestos por cuatro (04) elementos:

• Sistema.

• Actores: son aquellos que interactúan con el sistema, Un actor es algo con

comportamiento, como una persona (identificada por un rol), un sistema

informatizado u organización.

• Casos de uso: se conocen porque son los servicios que el sistema ejecutará.

Un caso de uso es una descripción de la secuencia de interacciones que se

producen entre un actor y el sistema, cuando el actor usa el sistema para llevar

a cabo una tarea específica.

• Relaciones entre casos de uso: en principio, debería describir una tarea que

tiene un sentido completo para el usuario. Sin embargo, hay ocasiones en las

que es útil describir una interacción con un alcance menor como caso de uso.

La razón para utilizarlos es mejorar la comunicación en el equipo de

desarrollo y el manejo de la documentación.

Page 25: Informe Pasantias Emc

16

Tecnologías de la Información:

Es un amplio concepto que abarca todo lo relacionado a la conversión,

almacenamiento, protección, procesamiento y transmisión de la información. El

concepto se emplea para englobar cualquier tecnología que permite administrar y

comunicar información.

Aspectos Conceptuales:

PHP: Es un lenguaje de programación interpretado, diseñado originalmente para la

creación de páginas web dinámicas. Además, es un lenguaje de secuencias de

comandos de servidor diseñado específicamente para la web. Dentro de una página

web puede inscrutar código php que se ejecutara cada vez que se visite una página. El

código php es interpretado en el servidor web y genera código HTML y otro

contenido que el visitante verá.

PDF: (Formato de Documento Portátil, en inglés PDF) Es un formato de

almacenamiento de documentos, desarrollado por la empresa Adobe Systems. Es uno

de los formatos más extendidos en Internet para el intercambio de documentos y

puede contener cualquier combinación de texto, elementos multimedia como vídeos o

sonido, elementos de hipertexto como vínculos y marcadores, enlaces y miniaturas de

páginas.

Datos: Son los hechos que describen sucesos y entidades. Cualquier forma de

información, ya sea en forma electrónica o sobre papel. En forma electrónica, “datos”

se refiere a archivos, bases de datos, documentos de texto, imágenes y, voz y video

codificados en forma digital.

Herramienta: Conjunto de estos instrumentos. Objeto que se utiliza para trabajar en

diversos oficios o realizar un trabajo. Se conoce también como un subprograma o

módulo encargado de funciones específicas y afines entre sí para realizar una tarea.

Una aplicación o programa puede contar con múltiples herramientas a su disposición.

Page 26: Informe Pasantias Emc

17

Software: Se refiere al equipamiento lógico o soporte lógico de un computador

digital, y comprende el conjunto de los componentes lógicos necesarios para hacer

posible la realización de una tarea específica, en contraposición a los componentes

físicos del sistema (hardware).

Java: Java es un lenguaje de programación y la primera plataforma informática

creada por Sun Microsystems en 1995. Es la tecnología subyacente que permite el

uso de programas punteros, como herramientas, juegos y aplicaciones de negocios.

Código: En programación, es el texto escrito en un lenguaje de programación que ha

de ser compilado o interpretado para ejecutarse en una computadora.

Sistema: Es un conjunto de partes o elementos organizadas y relacionadas que

interactúan entre sí para lograr un objetivo. Los sistemas reciben (entrada) datos,

energía o materia del ambiente y proveen (salida) información, energía o materia.

3.2. Metodología

3.2.1. Metodología Feature Driven Development (FDD)

Esta metodología denominada Desarrollo Basado en Funcionalidades (Feature

Driven Development en inglés, resumido como FDD) como los indica Molpeceres

(2002) “es un proceso ágil para el desarrollo de sistemas, diseñado por Peter Coad,

Eric Lefebvre y Jeff DeLuca, el cual se basa en un proceso iterativo con iteraciones

cortas que producen un software funcional que el cliente y la dirección de la empresa

pueden ver y monitorear”.

A diferencia de otros procesos ágiles no cubre todo el ciclo de vida sino sólo

las fases de diseño y construcción.

3.1.2.1. Características del FDD

FDD se basa en las siguientes características:

Page 27: Informe Pasantias Emc

18

• Está pensado para proyectos con tiempo de desarrollo relativamente corto,

menos de 1 año.

• Se basa en un proceso repetido con iteraciones cortas que propone tener etapas

de cierre cada dos semanas y que producen un software funcional que el

cliente y la dirección de la empresa pueden ver y monitoriar.

• Ayuda a contrarrestar situaciones como el exceso en el presupuesto, fallas en

el programa o el hecho de entregar menos de lo deseado.

• Maneja una gran cantidad de roles, para el desarrollo del proyecto cada

integrante debe cumplir con más de dos roles de los descritos en FDD

• Durante la definición de cronogramas y estimativos de tiempos de desarrollo,

es importante sumar un tiempo de holgura a la fecha final de entrega del

proyecto, con el fin de evitar retraso e incumplimientos en las entregas

planteadas.

• Las etapas de levantamiento de requerimientos son especialmente importantes

porque ayudan a dimensionar realmente el tamaño del proyecto, tomarlas a la

ligera puede acarrear en planeaciones de tiempos no adecuados y retrasos no

deseados.

• Define claramente entregas tangibles y formas de evaluación del progreso del

proyecto.

• Se preocupa por la calidad, por lo que incluye un monitoreo constante del

proyecto.

• Se puede implementar mucho mejor en proyectos cortos y equipo de trabajo

reducidos, pues con proyectos bastantes grandes se haría mucho mas tediosa

la labor de diseño, desarrollo y documentación de cada característica.

3.1.2.2. Fases de FDD

Un proyecto que sigue FDD se divide en 5 fases secuenciales durante las

cuales se diseña y se construye el sistema:

• Desarrollo de un modelo global: Cuando comienza el desarrollo, los

Page 28: Informe Pasantias Emc

19

expertos del dominio están al tanto de la visión, el contexto y los

requerimientos del sistema a construir. Se divide el dominio global en áreas

que son analizadas detalladamente. Los desarrolladores construyen un

diagrama de clases o de objetos por cada área. Se construye un modelo global

del sistema.

• Construcción de una lista de funcionalidades: Se elabora una lista de

funcionalidades que resuma la funcionalidad general del sistema. La lista es

elaborada por los desarrolladores y es evaluada por el cliente. Se divide la

lista en subconjuntos según la afinidad y la dependencia de las

funcionalidades. La lista es finalmente revisada por los usuarios y los

responsables para su validación y aprobación.

• Planeación por funcionalidad: En este punto se procede a ordenar los

conjuntos de funcionalidades conforme a su prioridad y dependencia, y se

asigna a los programadores jefes.

• Diseñar en base a las funcionalidades y Construcción por funcionalidad: Se selecciona un conjunto de funcionalidades de la lista. Se procede a diseñar

y construir la funcionalidad mediante un proceso iterativo. Una iteración

puede tomar de unos pocos días a un máximo de dos semanas. El proceso

iterativo incluye inspección de diseño, codificación, pruebas unitarias,

integración e inspección de código.

Las primeras tres fases ocupan gran parte del tiempo en las primeras

iteraciones, siendo las dos últimas las que absorben la mayor parte del tiempo según

va avanzando el proyecto, limitándose las primeras a un proceso de refinamiento.

Page 29: Informe Pasantias Emc

20

Gráfico 4: Vista general de las fases de FDD

Fuente: http://www.agilemodeling.com/essays/fdd.htm

3.1.2.3. Roles y Responsabilidades de FDD

El trabajo (tanto de modelado como de desarrollo) se realiza en grupo, aunque

siempre habrá un último responsable (arquitecto jefe o jefe de programadores en

función de la fase en que se encuentre), con mayor experiencia, que tendrá la última

palabra en caso de no llegar a un acuerdo. Al hacerlo en grupo se consigue que todos

formen parte del proyecto y que los menos expertos aprendan de las discusiones de

los mas experimentados, y al tener un último responsable, se asignan las

responsabilidades que todas las empresas exigen.

• Roles claves (Key Roles en inglés):

Project Manager / Director del Proyecto:

* Lider administrativo y financiero del proyecto.

* Protege al equipo de situaciones externas.

Arquitecto jefe (Chief Architect en inglés):

* Diseño global del sistema.

* Ejecución de todas las etapas.

Director de desarrollo (Development Manager en inglés)

* Lleva diariamente las actividades de desarrollo.

Page 30: Informe Pasantias Emc

21

* Resuelve conflictos en el equipo.

* Resuelve problemas referentes a recursos.

Programador Jefe (Chief Programmer en inglés)

* Analiza los requerimientos.

* Diseña el proyecto.

* Selecciona las funcionalidades a desarrollar de la última fase.

Propietario de clases (Class Owner en inglés)

* Responsable del desarrollo de las clases que se le asignaron como

propias.

* Participa en la decisión de que clase será incluida en la lista de

funcionalidades de la próxima iteración.

Expertos de dominio

* Puede ser un usuario, un cliente, analista o una mezcla de estos.

* Poseen el conocimiento de los requerimientos del sistema.

* Pasa el conocimiento a los desarrolladores para que se asegure la

entrega de un sistema completo.

• Roles de soporte (Supporting Roles en inglés)

Administrador de Dominio (Domain Manager en inglés)

* Lidera al grupo de expertos del dominio.

* Resuelve sus diferencias de opinión concernientes a los

requerimientos del sistema.

Jefe de Lanzamientos (Release Manager en inglés)

* Controla el avance del proceso mediante la revisión de los reportes

del programador jefe.

* Reporta resultados obtenidos semanalmente al gerente y al cliente

donde incluye el porcentaje de avance.

Gurú del Lenguaje (Language Lawyer en inglés)

* Responsable de poseer un vasto conocimiento en, por ejemplo, un

lenguaje específico de programación o tecnología.

Page 31: Informe Pasantias Emc

22

* Es muy importante cuando se trabaja una nueva tecnología.

Ingeniero de construcción (Build Engineer)

* Responsable de preparar, mantener y correr el proceso de

construcción.

* Realiza el mantenimiento de las versiones y la publicación de la

documentación.

Herramentista (Toolsmith en inglés)

* Rol para la construcción de herramientas específicas para el

desarrollo, conversión de datos y testeo.

* Puede trabajar en la preparación y mantenimiento tanto de bases de

datos o sitios web destinados al proyecto.

Administrador del sistema (System Administrator en inglés)

* Configura, administra y repara los servidores, estaciones de trabajo y

equipos de desarrollo y testeo utilizados por el equipo.

• Roles adicionales (Additional Roles en inglés)

Probador (Tester en inglés)

* Verifica que el sistema recién creado cumpla con los requerimientos

del cliente.

* Puede llegar a ser una persona independiente del equipo del

proyecto.

Implementador (Deployer en inglés)

* Es el encargado de convertir la información existente requerida por

el nuevo sistema.

* Participa en el lanzamiento de los nuevos productos.

Escritores de documentos técnicos (Technical Writer en inglés)

* Prepara la documentación para los usuarios, que pueden formar parte

o no del equipo del proyecto.

Page 32: Informe Pasantias Emc

23

3.1.3. Análisis de Sistemas

Es aquel que trata de determinar los objetivos y límites del sistema objeto de

análisis, caracterizar su estructura y funcionamiento, marcar las directrices que

permitan alcanzar los objetivos propuestos y evaluar sus consecuencias.

Dependiendo de los objetivos del análisis, se puede llegar a lo siguiente:

• Análisis de un sistema ya existente para comprender, mejorar, ajustar y/o

predecir su comportamiento.

• Análisis como paso previo al diseño de un nuevo sistema-producto.

3.1.4. Lenguaje Unificado de Modelado (UML)

Lenguaje Unificado de Modelado (UML, por sus siglas en inglés, Unified

Modeling Language), es un lenguaje de modelado de sistemas de software que

comprende un conjunto de herramientas, que permite modelar, analizar y diseñar

sistemas orientados a objetos, aún cuando todavía no es un estándar oficial, está

respaldado por el OMG (Object Management Group). Además de ser un conjunto de

herramientas, como lo describe Deitel (2002) “UML es un lenguaje gráfico complejo,

con muchas características” (p.19) gráficas 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.

Page 33: Informe Pasantias Emc

24

Gráfico 5: Diagrama UML

Fuente: http://www.carlosrovira.com/blog/2004/09/una-introduccin-a-uml/

UML emplea diversos diagramas a utilizar para describir el desarrollo de un

proyecto. Los diagramas se clasifican por disciplinas como:

• Diagrama de Clase.

• Diagrama de Casos de Uso.

• Diagrama de Secuencia.

• Diagrama de Colaboración.

• Diagrama de Estado.

• Diagrama de Actividades.

• Diagrama de Componentes.

• Diagrama de Despliegues.

Page 34: Informe Pasantias Emc

25

3.1.5. Técnicas e Intrumentos de recolección de información

Para la recolección de los datos, la técnica a emplear depende en gran medida

del tipo de investigación a desarrollar y el problema planteado. Tal y como indica

Flames (2001), “son una directriz metodológica que orientan científicamente la

recopilación de informaciones, datos u opiniones” (p. 35).

3.1.5.1. Instrumentos para la recolección de datos

Para recabar información en el proyecto, fue necesario emplear ciertos

instrumentos de recolección de información, los cuales son:

Instrumento 1. Observación:

La observación es el método fundamental de obtención de datos de la

realidad, toda vez que consiste en obtener información mediante la percepción

intencionada y selectiva, ilustrada e interpretativa de un objeto o de un fenómeno

determinado.

Según Hurtado (2000), la observación “es la primera forma de contacto o de

relación con los objetos que van a ser estudiados”.

Instrumento 2. Entrevista:

Se realizó una serie de entrevistas no estructuradas para recabar información y

de esta manera realizar el diagnóstico de la situación de la Plataforma Platum, las

mismas fueron aplicadas a la coordinadora de logística y plataforma, por considerarse

como la persona más adecuada para comentar todo lo relacionado al funcionamiento

de platum.

3.1.6. Desarrollo de las actividades

Para la elaboración de las propuestas se utilizó la primera y última fase de la

Page 35: Informe Pasantias Emc

26

metodología FDD, ya que el proyecto de pasantías es realizar propuestas de mejoras

así como crear herramientas para el buen desempeño de la plataforma, se tocaron

algunos puntos de la fase de Construcción, pero no se profundiza dado los motivos

expuestos anteriormente.

Cuadro 1: Cronograma de Actividades

Semana Actividad Cumplió

1 Planificación inicial Si

2 Planificación inicial y diagnóstico de la situación actual de la

plataforma.

Si

3 Levantamiento de información e identificación de

requerimientos.

Si

4 Acceso a la plataforma y entrevista no estructurada. Si

5 Acceso a la plataforma y revisión de los módulos de la misma Si

6 Describir los posibles cambios a efectuar. Si

7 Asesorías sobre el ambiente PHP, MySQL, HTML, JavaScript y conexión a Bases de Datos.

Si

8 Analizar los diversos requerimientos emitidos por parte de los

usuarios de la dirección de AprenRed

Si

9 Diseñar las herramientas mediante UML. Si

10 Codificación del Diseño del Sistema. Si

11 Codificación del Diseño del Sistema. Si

12 Codificación del Diseño del Sistema. Si

13 Codificación del Diseño del Sistema. Si

14 Codificación del Diseño del Sistema. Si

15 Elaboración del manual Si

16 Presentación de las herramientas Si

Fuente: Autor (2012)

Page 36: Informe Pasantias Emc

27

Resúmen de las actividades realizadas.

Semana 1. En ésta primera semana se comenzó con la planificación inicial tomando

como base los manuales de la plataforma Pl@tUM 2.0 para tener un mejor enfoque

de dicha plataforma.

Semana 2. Se continúa con la planificación inicial y se observan los pasos de las

distintas actividades que se deben realizar en la plataforma, como modificar registros

de estudiantes, abrir una nueva materia o sección, eliminar una sección siguiendo tres

pasos descritos en el manual, incribir o registrar un usuario con rol de estudiante o de

profesor, entre otros.

Semana 3. Se procede al levantamiento de la información y requerimientos por parte

de los usuarios, tomando en cuenta los detalles más relevantes que se puedan mejorar

sin afectar el funcionamiento de la plataforma.

Semana 4. Se hace una entrevista no estructurada a la coordinadora de logística y

plataforma por ser la persona que mejor conoce la plataforma y que consistió en

obtener mas detalles de una manera verbal sobre el registro de las materias y en

donde se pudo ver que todo el proceso es llevado de forma manual debido a que

platun no cuenta con un módulo de control de las cursos y secciones registradas

donde se pueda ver el total de alumnos, número de sección, nombre del profesor,

modalidad, nivela académico, fecha de apertura, usuario de soporte responsable de

dicha asignatura.

Semana 5 y 6. Se procede a detallar las opciones que tendrá la nueva herramienta

tomando como base el diseño de la plataforma, para ello se crea un modelo en php

imitando al original y se hace otro con las nuevas características donde se hace

evidente los cambios realizados solo como referencia para su posterior diseño.

Semana 7. Se consultas libros, páginas web y otros trabajos para tener una mejor

Page 37: Informe Pasantias Emc

28

visión de las herramientas a utilizar, ya que se amplian los conocimientos y se puede

optar por escoger software libre de acuerdo a las necesidades del desarrollador.

Semana 8. Se analizan los requerimientos y se crean las posibles soluciones. Como

principal solución se elabora de forma manual una hoja de Excel, como base, donde

se muestran los detalles que presentara la herramienta de control de inventario

siguiendo las indicaciones de la coordinadora de logística y plataforma.

Semana 9 a la 14. Se hace el diseño de la herramienta de inventario de materias

registradas mediante los diagramas de UML y se procede a la construcción de la

misma en php usando como base la hoja de Excel. En un principio el módulo consta

de 5 partes que permiten al usuario autenticarse en el sistema, hacer el registro

detallado de una materia, realizar consultas combinado dos opciones que se muestran

en el manual, exportar la consulta a formato pdf, ver de manera numérica la cantidad

de materias dependiendo de su modalidad. Parte del código utilizado son clases y

funciones que se encuentran en internet y fuentes como libros y programas de código

abierto, los colores utilizados son los mismos de platum para no alterar la vista

gráfica y que se asemeje a la plataforma original. Se crea una base de datos con 5

tablas que permitirán guardar los datos de los registros y la cual se detalla en

otrasección del informe.

Semana 15. Se elabora el manual de la herramienta de inventario de materias

registradas. Una vez puesto en marcha el módulo de inventario se cargaron un

aproximado de 60 registros de materias para elaborar dicho manual y en donde se

detalla claramente los pasos que debe seguir un usuario para el buen uso del

instrumento, a manera de seguridad el sistema muestra mensajes en pantalla para

indicarle al operador si está ingresando los datos de manera correcta. El manual está

elaborado para ser usado por cualquier persona.

Semana 16. Se presenta a la Dirección de AprenRed la herramienta de control de

inventario de materias registradas.

Page 38: Informe Pasantias Emc

29

3.2. Resultados

Gracias a las Técnicas e Intrumentos de recolección de información utilizadas,

se pudo detallar lo siguiente:

Por la observación:

• Apartado Profesores. Al momento de realizar la búsqueda de un profesor

solo se tiene la opción mediante el número de cédula, si se desea realizar una

búsqueda rápida se pierde un poco de tiempo ya que la pestaña “ver todos”

muestra los nombres en orden alfabético y en grupos de 15 profesores.

• Apartado Estudiantes. No se está validando el campo carnet y por ende

pueden estar inscritos varios alumnos con el mismo carnet.

• Apartado Gráfico. La hora del sistema no se encuentra en tiempo real, esto

trae como consecuencia que al momento de presentar una evaluación se

confunda con la hora de inicio y la hora de cierre de la actividad.

• Consultas. La plataforma no cuenta con un módulo de consultas por lote de

materias registradas así como el detalle de las mismas.

Por la entrevista:

Se pudo verificar que Pl@tUM no cuenta con un módulo de consultas de

materias registradas donde se detalle las caracteríscas de las mismas, tales como;

nombre de la materia, sección, número de estudiantes, nombre del profesor, nivel

académico, modalidad, usurio de soporte responsable de la materia y la fecha de

apertura o inscripción. Como propuesta adicional se crea una herramienta de

consultas exclusivamente para las materias registradas tomando como modelo las

características visuales de la plataforma.

Page 39: Informe Pasantias Emc

30

3.3.1. Especificaciones de los Documentos de Casos de Usos de Registro de materias, Consultar Inventario, Total Materias Registradas y Generar Documentos en formato PDF

Al momento de iniciar el planteamiento de la propuesta de diseño de una

herramienta para las consultas de las materias registradas, específicamente los

módulos de Registro de Materias, Consultar Inventario y Generar Documentos en

formato PDF se detallaron y anexaron los distintos Documentos de Descripción de

Casos de Uso.

Para cada uno de los diferentes procesos que se observan en los Casos de Uso

los mismos están plasmados de una manera clara y precisa, como es la interacción

entre el usuario y el sistema de una forma directa, eficaz y eficiente; así como

también se hace sencillo y rápido el manejo de la misma.

Page 40: Informe Pasantias Emc

31

• Diagrama de Secuencia Registrar Materia: muestra al usuario participante

en la interacción y los mensajes que el sistema intercambia ordenados según

su secuencia en el tiempo.

Gráfico 6: Diagrama de Secuencia Registrar Materia

Fuente: Autor (2012)

Page 41: Informe Pasantias Emc

32

• Documento Caso de Uso Registrar Materia: Permite al usuario de soporte

de la plataforma acceder al sistema de control de inventario para registrar la

materia así como el detalle de la misma.

Cuadro 2: Vista del Documento de Casos de Uso Registrar materia

Fuente: Autor (2012)

Nombre: Registrar detalle de Materia /CU 1 Autor: Enrique Milano Fecha:

Descripción: Describe el proceso de realizar el Registro de las materias de una manera detallada Actores: Personal de soporte de la Dirección de AprenRed Precondiciones: El usuario debe haberse autenticado en el sistema.

Flujo Normal:

1. El actor pulsa sobre el botón para registrar una nueva materia. 2. El sistema muestra una serie de campos de texto identificados para introducir el detalle

de la materia a registrar. 3. El actor da un clic en el botón cargar. 4. El sistema comprueba la validez de los datos y los almacena.

Flujo Alternativo: El sistema comprueba la validez de los datos, si los datos no son correctos no permite el registro de la materia. Postcondiciones: El sistema envía un mensaje conformando que la materia ha sido registrada.

Page 42: Informe Pasantias Emc

33

• Documento Caso de Uso Consultar Inventario: Permite al usuario de

soporte consultar detalladamente las materias registradas.

Cuadro 3: Vista del Documento de Casos de Uso Consultar Inventario

Fuente: Autor (2012)

Nombre: Consultar Inventario /CU 2 Autor: Enrique Milano Fecha: Descripción: Permite al usuario de soporte consultar detalladamente las materias registradas por nivel académico, modalidad y el usuario que realizó el registro de cada materia. Actores: Personal de soporte de la Dirección de AprenRed Precondiciones: El usuario debe haberse autenticado en el sistema.

Flujo Normal: 1. El actor pulsa sobre el botón para realizar una consulta. 2. El sistema muestra tres botonoes para realizar dos tipos de consulta. 3. El actor selecciona por medio de dos botones la consulta que desea realizar. 4. El sistema comprueba la validez de los datos y hace la consulta a la BD. Flujo Alternativo: El sistema comprueba el tipo de consulta, si no existen registros en la BD el sistema indica que existen 0 registros.

Postcondiciones: El sistema muestra en pantalla el detalle de la consulta realizada.

Page 43: Informe Pasantias Emc

34

• Documento Caso de Uso Generar Documentos en formato PDF: Permite

al usuario de soporte generar en formato pdf las consultas realizadas.

Cuadro 4: Vista del Documento Caso de Uso Generar Documento formato PDF

Fuente: Autor (2012)

Nombre: Generar PDF de materias Registradas / CU3 Autor: Enrique Milano Fecha: Descripción: Permite al usuario de soporte generar un documento portable (pdf) que bien puede usar para almacenar, imprimir o enviar por por correo electrónico, entre otros. Actores: Personal de soporte de la Dirección de AprenRed Precondiciones: El usuario debe haberse autenticado en el sistema.

Flujo Normal: 1. El actor pulsa sobre el botón para realizar otras consultas. 2. El sistema muestra tres botones para las opciones del documento PDF. 3. El actor selecciona por medio de dos botones las opciones que desea para el documento PDF

y da clic en el botón Generar PDF. 4. El sistema comprueba la validez de los datos y hace la consulta a la BD.

Flujo Alternativo: El sistema comprueba el tipo de consulta, si no existen registros en la BD el sistema muestra el documento PDF sin registros.

Postcondiciones: El sistema genera un documento PDF

Page 44: Informe Pasantias Emc

35

• Documento Caso de Uso Total Materias Registradas: Permite al usuario de

soporte consultar el número de materias registradas por nivel académico.

Cuadro 5: Vista del Documento de Caso de Uso Total Materias Registradas

Fuente: Autor (2012)

Nombre: Total Materias Registradas / CU4 Autor: Enrique Milano Fecha: Descripción: Permite al usuario de soporte consultar el número de materias registradas por nivel académico detanllando la cantidad por modalidad Actores: Personal de soporte de la Dirección de AprenRed Precondiciones: El usuario debe haberse autenticado en el sistema.

Flujo Normal: 5. El actor pulsa sobre el botón para realizar otras consultas. 6. El sistema muestra dos botones para realizar la consulta. 7. El actor selecciona por medio de un botón el nivel académico que desea consultar y da clic

en el botón mostrar. 8. El sistema comprueba la validez de los datos y hace la consulta a la BD.

Flujo Alternativo: El sistema comprueba el tipo de consulta, si no existen registros en la BD el sistema muestra cero (0) registros.

Postcondiciones: El sistema muestra en pantalla de forma numérica la cantidad de materias registradas

Page 45: Informe Pasantias Emc

36

3.3.2. Diagramas de Actividades

• Diagrama de Actividad Registrar Materia: En este diagrama de actividad

se observan las actividades que se ejecutaran al momento que un usuario de

soporte realiza el registro de la materia.

Gráfico 7: Diagrama de Actividad Registrar Materia

Fuente: Autor (2012)

Page 46: Informe Pasantias Emc

37

• Diagrama de Actividad Consultar Inventario: En este diagrama de

actividad se observan las actividades que se ejecutaran al momento que un

usuario de soporte realiza una consulta de las materias registradas.

Gráfico 8: Diagrama de Actividad Consultar Inventario

Fuente: Autor (2012)

Page 47: Informe Pasantias Emc

38

• Diagrama de Actividad Generar Documento en formato PDF: En este

diagrama de actividad se observan las actividades que se ejecutaran al

momento de generar una consulta que se muestra en un documento formato

pdf por parte de un usuario de soporte.

Gráfico 9: Diagrama de Actividad Generar Documento en formato PDF

Fuente: Autor (2012)

Page 48: Informe Pasantias Emc

39

• Diagrama de Actividad Total Materias Registradas: En este diagrama de

actividad se observan las actividades que se ejecutaran al momento de generar

una consulta para ver el número de materias registradas por modalidad por

parte de un usuario de soporte.

Gráfico 10: Diagrama de Actividad Total Materias Registradas

Fuente: Autor (2012)

Page 49: Informe Pasantias Emc

40

3.4. Factibilidad Técnica, Operativa, Financiera y Legal:

• Factibilidad Técnica: El proyecto presento factibilidad técnica, debido a que

dirección cuenta con los equipos de computación necesarios para el proyecto,

el software utilizado bajo licencia GPL, en este caso PHP y MySQL,

OpenOffice, pueden ser descargadas desde internet sin costo alguno al igual

que las herramientas para crear un servidor de pruebas como lo es LAMP

(Linux, Apache, MySQL y PHP, antes mencionados), También se cuenta con

el asesoramiento y conocimientos que aporta el pasante, los tutores y el

personal de la Dirección de AprenRed.

• Factibilidad Operativa: Implica que el recurso humano esté capacitado y

preparado para manejar el proyecto en el cual se ve involucrado.

El equipo que labora en la dirección de AprenRed de la Unimet es personal

calificado, los cuales se encuentran preparados para cumplir con las

actividades planificadas y aptos para el buen manejo de los equipos de

informática como computadoras, acceso a la red y a la plataforma.

• Factibilidad Financiera: El proyecto es factible ya que no genera costos

adicionales para la dirección por utilizar herramientas bajo software libre, los

equipos de computación utilizados son propiedad de la unimet y el pasante que

lleva a cabo el proyecto es empleado de dicha casa de estudios.

• Factibilidad Legal: Todos los componentes involucrados en el proyecto se

encuentran resguardados, el personal es parte de la Dirección de AprenRed, las

herramientas están licenciadas bajo Licencia Pública General (GPL, por sus

siglas en inglés) la plataforma Pl@tUM 2.0 es propiedad de la Unimet y se

encuentra licenciada, el acceso a producción es monitoreado por el

administrador de la misma.

Page 50: Informe Pasantias Emc

41

3.5. Vinculación de los Resultados con el Perfil de Egreso

Dentro del proceso actual que desarrolla el pasante de sistemas en la

Dirección de AprenRed de la UNIMET, se destaca que cada una de las experiencias

vividas durante dicho proceso están íntimamente relacionadas con las materias

impartidas durante el lapso en la universidad, cumpliendo de esta manera el proceso

de enseñanza y aprendizaje para forjar grandes Ingenieros que den la talla en

cualquier empresa, obteniendo así la excelencia para lograr, de esta manera, el éxito y

desarrollo de nuestro país y de las vidas de cada egresado de nuestra casa de estudio

UNEFA.

Page 51: Informe Pasantias Emc

42

CONCLUSIONES

Una vez concluido el informe de pasantías, a objeto de cubrir los objetivos del

proyecto, se ofrecen las siguientes conclusiones:

Para el levantamiento de la información y requerimientos por parte de los

usuarios, se realizo una entrevista no estructurada a la coordinadora de logística y

plataforma de la Dirección de AprenRed, también se observaron los distintos

módulos que integran la plataforma Pl@tUM 2.0 por medio del acceso a la misma

con una cuenta de usuario con privilegios de administrador.

Se logró identificar los requerimientos y se detallaron los pasos para las

distintas consultas que realiza un usuario de soporte de la plataforma Pl@tUM.

En la elaboración de las propuestas se utilizaron distintas herramientas usadas

en las tecnologías de la información como PHP, MySQL, Java, entre otras. Se logró

desarrollar un módulo de inventario de materias registradas como principal propuesta

ya que Pl@tUM carece del mismo, adicionalmente se crearon las propuestas para

mejorar los tres requerimientos restantes de los cuatros detallados por medio de la

observación.

Para validar con el personal de AprenRed los posibles cambios en la

plataforma Pl@tUM se mostraron de forma gráfica las mejoras para las consultas de

los requerimientos del primer objetivo y se logró presentar el módulo de inventario

totalmente operativo.

Mediante la interacción con los usuarios de la Dirección de AprenRed y con

la ayuda de la Coordinadora de logística y plataforma se percibió la necesidad de

crear la herramienta del Módulo de Inventario y mejorar los tres procesos de

consultas que observaron con pasos extras. Los usuarios aportaron información

Page 52: Informe Pasantias Emc

43

realmente importante por lo cual se puede concluir que el objetivo del levantamiento

de información fue satisfactorio, ya que los usuarios conocían bien sus necesidades y

esto permitió recolectar información de calidad para elaborar las Propuestas de

Reingeniería a la Plataforma Educativa de la Universidad Metropolitana Pl@tUM 2.0

y queda a la espera de la dirección, en otra fase, la implementación de las propuestas.

Page 53: Informe Pasantias Emc

44

RECOMENDACIONES

Para la UNIMET, Dirección AprenRed

• Unimet: Habilitar áreas de pruebas con los equipos tecnológicos necesarios

con el fin de generar un ambiente realista donde el pasante pueda aplicar los

conocimientos obtenidos en el aula.

• AprenRed: Continuar con el desarrollo del presente módulo de inventario de

materias registradas, ya que mediante éste podrán obtener el detalle de cada

materia registrada de forma rápida y efectiva, dando así pronta respuesta a las

necesidades administrativas que exige la institución.

Para la UNEFA:

• Fortalecer los estándares y documentos requeridos por la comunidad de

estudiantes para el desarrollo y documentación del período de Pasantías

Industriales, con la finalidad de ofrecer una mejor calidad a la hora de

presentar el informe de pasatías.

• Crear vínculos entre el Departamento de pasantías, entes gubernamentales y

las principales empresas del país a fin de facilitar el proceso de búsqueda de

oportunidades de pasantías para beneficiar a los futuros profesionales de ésta

casa de estudios.

Page 54: Informe Pasantias Emc

45

REFERENCIAS BIBLIOGRÁFIAS

[1]. Aguaded y Cabero. (2002). Educar en red. Internet como recurso para la

educación. Málaga, España. Ediciones aljibe.

Balestrini, M. (2002). Como se elabora el Proyecto de Investigación, Caracas: BL

Consultores Asociados.

Deitel y Deitel. (2004). Cómo Programar en Java. Mexico. Pearson Edicación.

Flames, A. (2001). Como elaborar un trabajo de grado de enfoque cuantitativo para

optar a los títulos de TSU, Licenciado o equivalente, Especialista, Magíster y

Doctor. Calabozo. Fundación Abel Flames.

Flames A. (2003). Cómo elaborar un trabajo de grado de enfoque cuantitativo.

Editada por Ipasme. Segunda edición.

Gilfillan, I. (2005). La Bíblia de MySQL. Madrid, España. Editorial Anaya.

Hurtado de B., J. (2000). Metodología de la investigación Holística. Caracas,

Venezuela. Sypal.

Silva, J. (2006). Metodología de la investigación. Elementos básicos. Caracas,

Venezuela. Ediciones CO-BO.

Welling y Thompson.(2005). Desarrollo Web con PHP y MySQL. Madrid, España.

Editorial Anaya.

Page 55: Informe Pasantias Emc

46

REFERENCIAS DE TRABAJOS Y TESIS DE GRADO

González y Pérez. (2009). Reingeniería al Sistema de Control de Archivos y

Correspondencia (SCAC) Implantado en la C.A. Energía Eléctrica de

Barquisimeto (ENELBAR). Informe de Pasantías. UNEFA. Lara.

Rodríguez, J. (2007). Desarrollo de Prototipo Funcional del Sistema para el Control

de Gestión en la Gerencia de Tecnología y Sistema de la Procuraduría

General de la República. Informe de Pasantías. UNEFA. Caracas.

Trigo, D. (2008). Desarrollo del Prototipo de un Sistema de Información con

Tecnología Web para General Motors Venezuela Caso: Clientes de

Camiones. Informe de Pasantías. UNEFA. Caracas.

Page 56: Informe Pasantias Emc

47

REFERENCIAS ELECTRÓNICAS

Achour y cols. (2012). Manual de PHP. [Página Web en línea]. Disponible: http://php.net/manual/es/index.php Consulta: 14 de noviembre de 2011

Belizario, C. (2011). Introduccion a MySQL, [Página Web en línea]. Disponible: http://desphpparatodos.blogspot.com/2011/01/introduccion-mysql-dcl.html Consulta: 17 de diciembre de 2011

Cáceres, J. (2008). Diagramas de Casos de Uso, [Página Web en línea]. Disponible: http://www2.uah.es/jcaceres/capsulas/DiagramaCasosDeUso.pdf Consulta: 02 de febrero de 2012.

Centro Nacional de Tecnologías de Información. (s/f). Software Libre en Venezuela, [Página Web en línea]. Disponible: http://www.softwarelibre.gob.ve/index.php?option=com_content&view=article&id=68&Itemid=71 Consulta: 01 de febrero de 2012.

Ciberaula. (2010). Programación Orientada a Objetos, [Página Web en línea]. Disponible: http://www.ciberaula.com/articulo/tecnologia_orientada_objetos/ Consulta: 15 de diciembre de 2011

Giachetti y cols. (2008). Perfil UML y desarrollo dirigido por modelos: desafio y soluciones para la utilizar UML como lenguaje de modelado especifico de dominio, [Página Web en línea]. Disponible: http://www.sistedes.es/TJISBD/Vol-2/No-3/articles/DSDM-08-giachetti-pud.pdf Conulta: 02 de febrero de 2012.

Lefcovich, M. (2004). Reingeniería de Procesos, [Página Web en línea]. Disponible: http://www.gestiopolis.com/recursos3/docs/ger/reipromlefco.htm Consulta 20 de febrero de 2012

Mariño, A. (2010). Normas para la elaboración y presentación de los Trabajos de Grado, [Página Web en línea]. Disponible: http://asesores-unefa.wikispaces.com/NormasAPAyUPEL Consulta: 07 de febrero de 2012.

Molpeceres, A. (2002). Procesos de desarrollo: RUP, XP y FDD, [Página Web en línea]. Disponible: www.willydev.net/descargas/Articulos/General/cualxpfddrup.PDF Consulta 10 de diciembre de 2011

Rincón, J. (1998). Concepto de Sistema y Teoría General de Sistemas. [Página Web en línea]. Disponible: http://gepsea.tripod.com/sistema.htm Consulta: 10 de noviembre de 2011

Page 57: Informe Pasantias Emc

48

Ventocilla, E. (1992). Reingeniería de Organizaciones. [Página Web en línea]. Disponible:http://www.dkvgroup.com/articulos/reingenieríadeorganizaciones.pdf Consulta: 14 de noviembre de 2011

Page 58: Informe Pasantias Emc

49

ANEXOS

Page 59: Informe Pasantias Emc

50

ANEXO A: ELEMENTOS DE LA BASE DE DATOS

Page 60: Informe Pasantias Emc

51

Tabla Materia:

En esta tabla se almacenará todos los datos referente a las materias.

Cuadro Anexo A 1: Tabla Materia

Fuente: Autor (2012)

Relaciones de la Materia con las otras tablas del módulo de inventario:

• Tabla Modalidad. • Tabla Soporte. • Tabla NivelAcademico.

Información codificada en lenguaje SQL de la Tabla Materia.

-- ----------------------------------------------------- -- Table `platum`.`MATERIA` -- -----------------------------------------------------

Page 61: Informe Pasantias Emc

52

CREATE TABLE IF NOT EXISTS `prueba`.`MATERIA` ( `ID_REGISTRO` INT(11) NOT NULL AUTO_INCREMENT , `NOMBREMATERIA` VARCHAR(50) NULL , `CODMATERIA` VARCHAR(10) NULL , `SECCION` INT(11) NULL , `ALUMNOS` INT(11) NULL , `PROFESOR` VARCHAR(35) NULL , `FECHA` DATE NULL , `MODALIDAD_ID_MODALIDAD` INT(11) NOT NULL , `SOPORTE_ID_SOPORTE1` INT(11) NOT NULL , `NIVELACADEMICO_ID_NIVEL` INT(11) NOT NULL , PRIMARY KEY (`ID_REGISTRO`, `MODALIDAD_ID_MODALIDAD`, `SOPORTE_ID_SOPORTE1`, `NIVELACADEMICO_ID_NIVEL`) , INDEX `fk_MATERIA_MODALIDAD1` (`MODALIDAD_ID_MODALIDAD` ASC) , INDEX `fk_MATERIA_SOPORTE1` (`SOPORTE_ID_SOPORTE1` ASC) , INDEX `fk_MATERIA_NIVELACADEMICO1` (`NIVELACADEMICO_ID_NIVEL` ASC) , CONSTRAINT `fk_MATERIA_MODALIDAD1` FOREIGN KEY (`MODALIDAD_ID_MODALIDAD` ) REFERENCES `prueba`.`MODALIDAD` (`ID_MODALIDAD` ) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_MATERIA_SOPORTE1` FOREIGN KEY (`SOPORTE_ID_SOPORTE1` ) REFERENCES `prueba`.`SOPORTE` (`ID_SOPORTE` ) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_MATERIA_NIVELACADEMICO1` FOREIGN KEY (`NIVELACADEMICO_ID_NIVEL` ) REFERENCES `prueba`.`NIVELACADEMICO` (`ID_NIVEL` ) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8 COLLATE = utf8_general_ci;

Page 62: Informe Pasantias Emc

53

Tabla Soporte:

En esta tabla se encuentran almacenados los datos de los usuarios de soporte.

Cuadro Anexo A 2: Tabla Soporte

Fuente: Autor (2012)

Relaciones de la tabla Soporte con otras tablas:

• Tabla Materia.

Información codificada en lenguaje SQL de la Tabla Soporte.

-- ----------------------------------------------------- -- Table `platum`.`SOPORTE` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `prueba`.`SOPORTE` ( `ID_SOPORTE` INT(11) NOT NULL AUTO_INCREMENT , `SOPORTE` VARCHAR(20) NULL , PRIMARY KEY (`ID_SOPORTE`) ) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8 COLLATE = utf8_general_ci;

Page 63: Informe Pasantias Emc

54

Tabla Usuarios:

En esta tabla se encuentran almacenados los datos de los usuarios del sistema.

Cuadro Anexo A 3: Tabla Usuarios

Fuente: Autor (2012)

Relaciones de la tabla Usuarios con otras tablas:

• Tabla Materia. Información codificada en lenguaje SQL de la Tabla Usuarios. -- ----------------------------------------------------- -- Table `platun`.`USUARIOS` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `prueba`.`USUARIOS` ( `id_soporte` INT(11) NOT NULL AUTO_INCREMENT , `nombre` VARCHAR(45) NULL , `pass_js` VARCHAR(100) NULL , `pass_php` VARCHAR(100) NULL , `email` VARCHAR(100) NULL , `usuario` VARCHAR(10) NULL , `fecha` DATE NULL , PRIMARY KEY (`id_soporte`) ) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8 COLLATE = utf8_general_ci;

Page 64: Informe Pasantias Emc

55

Tabla Modalidad:

En esta tabla se encuentran almacenados los datos de las distintas modalidades de

estudio.

Cuadro Anexo A 4: Tabla Modalidad

Fuente: Autor (2012)

Relaciones de la tabla Modalidad con otras tablas:

• Tabla Materia.

Información codificada en lenguaje SQL de la Tabla Modalidad. -- ----------------------------------------------------- -- Table `platum`.`MODALIDAD` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `prueba`.`MODALIDAD` ( `ID_MODALIDAD` INT(11) NOT NULL AUTO_INCREMENT , `NOMBREMODALIDAD` VARCHAR(25) NULL , PRIMARY KEY (`ID_MODALIDAD`) ) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8 COLLATE = utf8_general_ci;

Page 65: Informe Pasantias Emc

56

Tabla Nivel Académico:

En esta tabla se encuentran almacenados los datos de las distintas niveles de estudio.

Cuadro Anexo A 5: Nivel Académico

Fuente: Autor (2012)

Relaciones de la tabla Nivel Académico con otras tablas:

• Tabla Materia.

Información codificada en lenguaje SQL de la Tabla Nivel Académico. -- ----------------------------------------------------- -- Table `platum`.`NIVELACADEMICO` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `prueba`.`NIVELACADEMICO` ( `ID_NIVEL` INT(11) NOT NULL AUTO_INCREMENT , `NIVEL` VARCHAR(25) NULL , PRIMARY KEY (`ID_NIVEL`) ) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8 COLLATE = utf8_general_ci;

Page 66: Informe Pasantias Emc

57

Tabla BD Platum

Cuadro Anexo A 6: BD Platum con todas sus tablas

Fuente: Autor (2012)

BD: Platum

Page 67: Informe Pasantias Emc

58

ANEXO B: DIAGRAMAS Y DOCUMENTOS DE CASOS DE USO

Page 68: Informe Pasantias Emc

59

Diagrama de Flujo del Proceso Inscripción en Pl@tUM.

Gráfico Anexo B 1: Diagrama de Actividad Proceso de Inscripción

Fuente: Autor (2012)

Page 69: Informe Pasantias Emc

60

Diagramas de Actividades

• Diagrama de Actividad Registrar Materia: En este diagrama de actividad

se observan las actividades que se ejecutaran al momento que un usuario de

soporte realiza el registro de la materia.

Gráfico Anexo B 2: Diagrama de Actividad Registrar Materia

Fuente: Autor (2012)

Page 70: Informe Pasantias Emc

61

• Documento Caso de Uso Registrar Materia: Permite al usuario de soporte

de la plataforma acceder al sistema de control de inventario para registrar la

materia así como el detalle de la misma.

Cuadro Anexo B 1: Vista del Documento de Casos de Uso Registrar materia

Fuente: Autor (2012)

Nombre: Registrar detalle de Materia /CU 1 Autor: Enrique Milano Fecha:

Descripción: Describe el proceso de realizar el Registro de las materias de una manera detallada Actores: Personal de soporte de la Dirección de AprenRed Precondiciones: El usuario debe haberse logeado en el sistema.

Flujo Normal:

5. El actor pulsa sobre el botón para registrar una nueva materia. 6. El sistema muestra una serie de campos de texto identificados para introducir

el detalle de la materia a registrar. 7. El actor da un clic en el botón cargar. 8. El sistema comprueba la validez de los datos y los almacena.

Flujo Alternativo: El sistema comprueba la validez de los datos, si los datos no son correctos no permite el registro de la materia. Postcondiciones: El sistema envía un mensaje conformando que la materia ha sido registrada.

Page 71: Informe Pasantias Emc

62

• Diagrama de Caso de Uso Registrar Materia: Permite al usuario de soporte

de la plataforma acceder al sistema de control de inventario para registrar la

materia así como el detalle de la misma.

Gráfico Anexo B 3: Diagrama de Caso de Uso Actividad Registrar Materia

Fuente: Autor (2012)

Page 72: Informe Pasantias Emc

63

• Diagrama de Actividad Consultar Inventario: En este diagrama de

actividad se observan las actividades que se ejecutaran al momento que un

usuario de soporte realiza una consulta de las materias registradas.

Gráfico Anexo B 4: Diagrama de Actividad Consultar Inventario

Fuente: Autor (2012)

Page 73: Informe Pasantias Emc

64

• Documento Caso de Uso Consultar Inventario: Permite al usuario de

soporte consultar detalladamente las materias registradas.

Cuadro Anexo B 2: Vista del Documento de Casos de Uso Consultar Inventario

Fuente: Autor (2012)

Nombre: Consultar Inventario /CU 2 Autor: Enrique Milano Fecha: Descripción: Permite al usuario de soporte consultar detalladamente las materias registradas por nivel académico, modalidad y el usuario que realizó el registro de cada materia. Actores: Personal de soporte de la Dirección de AprenRed Precondiciones: El usuario debe haberse logeado en el sistema.

Flujo Normal: 5. El actor pulsa sobre el botón para realizar una consulta. 6. El sistema muestra tres botonoes para realizar dos tipos de consulta. 7. El actor selecciona por medio de dos botones la consulta que desea realizar. 8. El sistema comprueba la validez de los datos y hace la consulta a la BD. Flujo Alternativo: El sistema comprueba el tipo de consulta, si no existen registros en la BD el sistema indica que existen 0 registros.

Postcondiciones: El sistema muestra en pantalla el detalle de la consulta realizada.

Page 74: Informe Pasantias Emc

65

• Documento Caso de Uso Consultar Inventario: Permite al usuario de

soporte consultar detalladamente las materias registradas.

Gráfico Anexo B 5: Diagrama de Caso de Uso Consultar Inventario

Fuente: Autor (2012)

Page 75: Informe Pasantias Emc

66

• Diagrama de Actividad Generar Documento en formato PDF: En este

diagrama de actividad se observan las actividades que se ejecutaran al

momento de generar una consulta que se muestra en un documento formato

pdf por parte de un usuario de soporte.

Gráfico Anexo B 6: Diagrama de Actividad Generar Documento formato PDF

Fuente: Autor (2012)

Page 76: Informe Pasantias Emc

67

• Documento Caso de Uso Generar Documentos en formato PDF: Permite

al usuario de soporte generar en formato pdf las consultas realizadas.

Cuadro Anexo B 3: Vista del Documento Caso de Uso Generar Documento formato PDF

Fuente: Autor (2012)

Nombre: Generar PDF de materias Registradas / CU3 Autor: Enrique Milano Fecha: Descripción: Permite al usuario de soporte generar un documento portable (pdf) que bien puede usar para almacenar, imprimir o enviar por por correo electrónico, entre otros. Actores: Personal de soporte de la Dirección de AprenRed Precondiciones: El usuario debe haberse logeado en el sistema.

Flujo Normal: 9. El actor pulsa sobre el botón para realizar otras consultas. 10. El sistema muestra tres botones para las opciones del documento PDF. 11. El actor selecciona por medio de dos botones las opciones que desea para el

documento PDF y da clic en el botón Generar PDF. 12. El sistema comprueba la validez de los datos y hace la consulta a la BD.

Flujo Alternativo: El sistema comprueba el tipo de consulta, si no existen registros en la BD el sistema muestra el documento PDF sin registros.

Postcondiciones: El sistema genera un documento PDF

Page 77: Informe Pasantias Emc

68

• Diagrama Caso de Uso Generar Documentos en formato PDF: Permite al

usuario de soporte generar en formato pdf las consultas realizadas.

Gráfico Anexo B 7: Diagrama de Caso de Uso Consultar Inventario

Fuente: Autor (2012)

Page 78: Informe Pasantias Emc

69

• Diagrama de Actividad Total Materias Registradas: En este diagrama de

actividad se observan las actividades que se ejecutaran al momento de generar

una consulta para ver el número de materias registradas por modalidad por

parte de un usuario de soporte.

Gráfico Anexo B 8: Diagrama de Actividad Total Materias Registradas

Fuente: Autor (2012)

Page 79: Informe Pasantias Emc

70

• Documento Caso de Uso Total Materias Registradas: Permite al usuario de

soporte consultar el número de materias registradas por nivel académico.

Cuadro Anexo B 4: Vista del Documento de Caso de Uso Total Materias Registradas.

Fuente: Autor (2012)

Nombre: Total Materias Registradas / CU4 Autor: Enrique Milano Fecha: Descripción: Permite al usuario de soporte consultar el número de materias registradas por nivel académico detanllando la cantidad por modalidad Actores: Personal de soporte de la Dirección de AprenRed Precondiciones: El usuario debe haberse logeado en el sistema.

Flujo Normal: 13. El actor pulsa sobre el botón para realizar otras consultas. 14. El sistema muestra dos botones para realizar la consulta. 15. El actor selecciona por medio de un botón el nivel académico que desea consultar y

da clic en el botón mostrar. 16. El sistema comprueba la validez de los datos y hace la consulta a la BD.

Flujo Alternativo: El sistema comprueba el tipo de consulta, si no existen registros en la BD el sistema muestra cero (0) registros.

Postcondiciones: El sistema muestra en pantalla de forma numérica la cantidad de materias registradas

Page 80: Informe Pasantias Emc

71

ANEXO C: DIAGRAMA DE GANTT

Page 81: Informe Pasantias Emc

72

Cuadro Anexo C 1: Diagrama de Gantt

Fuente: Autor (2012)

Page 82: Informe Pasantias Emc

73

ANEXO D: PANTALLAS DEL SISTEMA

Page 83: Informe Pasantias Emc

74

Gráfico Anexo D 1: Pantalla de Validación al Sistema (Usuario y Clave)

Fuente: Autor (2012).

Gráfico Anexo D 2: Pantalla de Principal donde aparece el menú principal

Fuente: Autor (2012).

Page 84: Informe Pasantias Emc

75

Gráfico Anexo D 3: Pantalla del menú Registrar Materia

Fuente: Autor (2012).

Gráfico Anexo D 4: Pantalla del menú Consultar Inventario

Fuente: Autor (2012).

Page 85: Informe Pasantias Emc

76

Gráfico Anexo D 5: Pantalla del menú Consultar Inventariocon con el detalle de la consulta

Fuente: Autor (2012).

Gráfico Anexo D 6: Pantalla del menú Otras Consultas – Opción Generar PDF de materias

Registradas

Fuente: Autor (2012).

Page 86: Informe Pasantias Emc

77

Gráfico Anexo D 7: Pantalla del menú Otras Consultas – Total Materias Registradas. Fuente:

Autor (2012).

Gráfico Anexo D 8: Pantalla del menú Otras Consultas – Total Materias Registradascon el detalle.

Fuente: Autor (2012).

Page 87: Informe Pasantias Emc

78

Cuadro Anexo D 1: Documento generado en formato PDF

Fuente: Autor (2012).

Page 88: Informe Pasantias Emc

79

Gráfico Anexo D 9: Pantalla Modelo Consultar Profesores

Fuente: Plataforma Pl@tUM (2012).

Gráfico Anexo D 10: Pantalla Modelo propuesta Consultar Profesores

Fuente: Autor (2012).

Page 89: Informe Pasantias Emc

80

ANEXO E: MANUAL GENERAL DEL SISTEMA

Page 90: Informe Pasantias Emc

81

Manual de Inventario de materias Registradas en Pl@tUM 2.0

Page 91: Informe Pasantias Emc

82

Febrero de 2012 Elaborado por: Enrique J. Milano C.

I. Introducción

El presente manual trata de explicar de una manera detallada y sencilla el uso de

la herramienta de control de Inventario de las materias registradas en la plataforma

Pl@tUM 2.0

1. Objetivo:

Ofrecer al usuario de una manera visual los pasos que debe seguir para el buen

uso y desempeño de la herramienta.

2. Requerimientos:

Se requiere de un equipo de escritorio básico con conexión a la red que disponga

de los navegadores Internet Explorer 5.0 o posterior, Mozilla Firefox 3.0 o superior y

otros. Además de un programa lector de documentos PDF a gusto del usuario.

Page 92: Informe Pasantias Emc

83

Febrero de 2012 Elaborado por: Enrique J. Milano C.

Para ingresar al sistema el usuario debe tener permisos de acceso de lo contrario no podrá hacer uso de la herramienta.

Ingresa el nombre de usuario Ingresa la clave

Si el usuario da clic en enviar sin colocar alguno de los datos anteriores el sistema muestra en pantalla los siguientes mensajes:

no ingresa usuario

no ingresa clave

Cuando se ingresa usuario y clave pero no está autorizado para ingresar al sistema, éste muestra el siguiente mensaje:

Acceso al Sistema

Page 93: Informe Pasantias Emc

84

Febrero de 2012 Elaborado por: Enrique J. Milano C.

Una vez que el usuario inicia sesión el sistema muestra la siguiente pantalla:

En este punto el usuario puede navegar por las distintas opciones que muestra el sistema, además se indica el nombre de dicho usuario que ha ingresado.

Acceso al Sistema

Page 94: Informe Pasantias Emc

85

Febrero de 2012 Elaborado por: Enrique J. Milano C. Contenido de la pestaña Registrar Materia.

En ésta opción el usuario ingresa los detalles de la materia.

1. En el campo de texto Nombre de la Materia: Ingresa el nombre de la materia. 2. En el campo de texto Cód. Materia: Ingresa el código de la materia. 3. En el campo numérico Sección: Ingresa el número de la sección. 4. En el campo numérico Alumnos: Ingresa la cantidad de alumnos de la

sección. 5. En el campo de texto Nombre del Profesor: Ingresa el nombre del profesor. 6. En el campo de selección Nivel Académico: Se despliegan todos los niveles. 7. En el campo de selección Modalidad: Se despliegan las modalidades de la

materia. 8. En el campo Fecha: Se agrega la fecha de registro automáticamente 9. En el campo de selección Realizado por: Selecciona el usuario de soporte

encargado del registro de la materia 10. Botón Cargar: Ingresa los datos en la Base de datos. 11. Si los datos son ingresados correctamente el sistema mostrará un mensaje en

pantalla.

1. Pestaña Registrar Materia

Page 95: Informe Pasantias Emc

86

Febrero de 2012 Elaborado por: Enrique J. Milano C.

Mensaje en pantalla de la opción Registrar Materia

El sistema verifica que los datos sean ingresados en la BD sin ningún problema y envía un mensaje en pantalla que dice: “Se ha registrado correctamente la materia”

1. 1 Mensaje Pestaña Registrar Materia

Page 96: Informe Pasantias Emc

87

Febrero de 2012 Elaborado por: Enrique J. Milano C.

En ésta opción el sistema permite ver las materias detalladamente según el encabezado de la línea de color gris. Existen dos modalidades de consulta:

1. Nivel Académico + Modalidad 2. Modalidad + Soporte

1.2.Nivel Académico + Modalidad:

El usuario selecciona el nivel académico a consultar y el tipo de modalidad (Todas, presencial, semipresencial, virtual).

1.1.Modalidad + Soporte:

El usuario selecciona el tipo de modalidad y selecciona el usuario de soporte para ver que materias ha registrado dio usuario de soporte.

2. Pestaña Consultar Inventario

Page 97: Informe Pasantias Emc

88

Febrero de 2012 Elaborado por: Enrique J. Milano C.

El sistema muestra el resultado de la opción de consulta Nivel Académico + Modalidad

Para el ejemplo se hizo una selección del nivel académico Pregrado en modalidad Virtual. Se puede ver claramente los nombres de las materias encontradas en la opción de consulta antes mencionada así como el número de materias registradas en dicha consulta.

2.1 Resultado de la consulta / Pestaña Consultar

Page 98: Informe Pasantias Emc

89

Febrero de 2012 Elaborado por: Enrique J. Milano C.

El sistema muestra el resultado de la opción de consulta Modalidad + Soporte

Para el ejemplo se hizo una selección de la modalidad Presencial + soporte emilano. En este apartado se quiere saber las materias que ha registrado el usuario de soporte emilano en sus modalidades presencial, semipresencial, virtual o todas las materias Se puede ver claramente el resultado de la consulta seleccionada así como el número de materias registradas por el usuario de soporte emilano.

2.2 Resultado de la consulta / Pestaña Consultar

Page 99: Informe Pasantias Emc

90

Febrero de 2012 Elaborado por: Enrique J. Milano C.

En esta opción el usuario puede realizar dos tipos de actividades.

1. Opción: Generar documento en formato PDF como resultado de realizar una consulta del nivel académico y modalidad.

El usuario debe seleccionar el nivel académico a consultar y combinarlo con la modalidad, una vez seleccionadas las dos opciones debe dar clic en el botón Generar PDF para que el sistema genere de forma automática el documento portable.

3. Pestaña Otras Consultas

Page 100: Informe Pasantias Emc

91

Febrero de 2012 Elaborado por: Enrique J. Milano C.

2. Opción: Ver las materias registradas de forma numérica del nivel académico.

En ésta opción el usuario puede saber el total de materias registradas por nivel académico, el sistema muestra el total de las materias registradas y detalla la cantidad registrada en la modalidad presencial, semipresencial y virtual.

4. Pestaña Otras Consultas

Page 101: Informe Pasantias Emc

92

Febrero de 2012 Elaborado por: Enrique J. Milano C.

Permite al usuario salir del sistema

Una vez realizadas todas las actividades el usuario da clic en la pestaña salir para cerrar la sesión. El sistema mostrara un aviso en pantalla para indicarle al usuario que ha salido correctamente del sistema.

5. Pestaña Salir

Page 102: Informe Pasantias Emc

93

ANEXO F: CODIFICACIÓN

Page 103: Informe Pasantias Emc

94

Plantilla con los estilos utilizados en CSS <!-- /******************************************/ /* Desarrollador: Enrique José Milano Camacho */ /* Objetivo: Plantilla del menú principal */ /* Fecha: 15/02/2012 */ /******************************************/ --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <link href='..//favicon.ico' rel='icon' type='image/vnd.microsoft.icon'/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Control de Inventario Pl@tUM 2</title> <style type="text/css"> <!-- body { font: 100% Verdana, Arial, Helvetica, sans-serif; background: #666666; margin: 0; padding: 0; text-align: center; color: #000000; background-color: #FFF; background-image: url(); background-repeat:repeat-y; } .oneColElsCtrHdr #container { width: 60em; background: #FFFFFF;

Page 104: Informe Pasantias Emc

95

margin: auto; border: 1px solid #999999; text-align: center; /* esto anula text-align: center en el elemento body. */ } .oneColElsCtrHdr #header { padding: 0 10px 0 20px; /* este relleno coincide con la alineación izquierda de los elementos de los divs que aparecen bajo él. Si se utiliza una imagen en el #header en lugar de texto, es posible que le interese quitar el relleno. */ background-color: #06F; } .oneColElsCtrHdr #header h1 { margin: 0; /* el ajuste en cero del margen del último elemento del div de #header evita la contracción del margen (un espacio inexplicable entre divs). Si el div tiene un borde alrededor, esto no es necesario, ya que también evita la contracción del margen */ padding: 10px 0; /* el uso de relleno en lugar de margen le permitirá mantener el elemento alejado de los bordes del div */ } .oneColElsCtrHdr #mainContent { padding: 0 20px; /* recuerde que el relleno es el espacio situado dentro del cuadro div y que el margen es el espacio situado fuera del cuadro div */ background: #09F; } .oneColElsCtrHdr #footer { padding: 0 10px; background-color: #0456A0; } .oneColElsCtrHdr #footer p { margin: 0; /* el ajuste en cero de los márgenes del primer elemento del pie evitará que puedan contraerse los márgenes (un espacio entre divs) */ padding: 10px 0; /* el relleno de este elemento creará espacio, de la misma forma que lo haría el margen, sin el problema de la contracción de márgenes */ } body,td,th {

Page 105: Informe Pasantias Emc

96

font-size: 14px; font-family: Arial, Helvetica, sans-serif; font-style: normal; font-weight: bold; } </style> <style type="text/css"> <!-- a:link { text-decoration: none; } a:visited { text-decoration: none; } a:hover { text-decoration: none; } a:active { text-decoration: none; } --> </style> <link href="../CCS/clases.css" rel="stylesheet" type="text/css" /> <style type="text/css"> <!-- .Estilo7 { font-family: Geneva, Arial, Helvetica, sans-serif; font-size: 15px; font-style: italic; color: #FFFFFF; } .Estilo8 {

Page 106: Informe Pasantias Emc

97

font-family: Geneva, Arial, Helvetica, sans-serif; font-size: 12px; font-style: italic; font-weight: bold; color: #FFFFFF; } --> </style> </head> <body class="oneColElsCtrHdr"> <br /> <br /> <div id="container" > <table width="802" border="0" align="center"> <tr> <td width="796" height="53"><div align="right"> <div align="right"> <div align="right"><img src="../imagenes/platumLogoHeader.jpg" alt="logo" width="163" height="29" /></div> </div> </div></td> </tr> </table> <table width="647" border="0" align="center" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> <tr> <td width="98" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="../menu.php" style="text-decoration: none;"><font color="white">Inicio</font></a></span></div></td> <td width="1" bgcolor="#FFFFFF">&nbsp;</td> <td width="108" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="../formularios/registrarMateria.php" style="text-decoration: none;"><font color="white">Registrar

Page 107: Informe Pasantias Emc

98

Materia</font></a></span></div></td> <td width="1" bordercolor="#0456A0" bgcolor="#FFFFFF">&nbsp;</td> <td width="110" bordercolor="#0456A0" bgcolor="#003B7B"><span class="Estilo8"><a href="../consultas/consultarInventario.php" style="text-decoration: none;"><font color="white">Consultar Inventario</font></a></span></td> <td width="1" bordercolor="#0456A0" bgcolor="#FFFFFF">&nbsp;</td> <td width="98" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="../consultas/consultapdf.php" style="text-decoration: none;"><font color="white">Otras Consultas</font></a></span></div></td> <td width="1" bordercolor="#0456A0" bgcolor="#FFFFFF">&nbsp;</td> <td width="98" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="../logout.php" style="text-decoration: none;"><font color="white">Salir</font></a></span></div></td> </tr> </table> <p>&nbsp;</p> <!-- TemplateBeginEditable name="Registro" --> <p><br /> </p> <p>&nbsp;</p> <!-- TemplateEndEditable --> <div id="footer" align="center"> <p class="fuente_pie_pagina Estilo7"><strong>Inventario de Materias de Pl@tUM</strong></p> <!-- end #footer --></div> <!-- end #container --></div> </body> </html>

Page 108: Informe Pasantias Emc

99

Código PHP para ingresar al Sistema – Inicio de sesión <!-- /******************************************/ /* Desarrollador: Enrique José Milano Camacho */ /* Objetivo: Validar Usuario y clave para poder */

/* iniciar sesión e ingresar al sistema */ /* Fecha: 15/02/2012 */ /******************************************/

--> <?php require_once("class/class.php"); if(isset($_POST["grabar"]) and $_POST["grabar"]=="si") { $t= new Trabajo(); $t->logueo(); exit; } ?> <!DOCTYPE html> <html><head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <script language="javascript" type="text/javascript" src="js/md5.js"> </script> <script language="javascript" type="text/javascript" src="js/funciones.js"> </script> <title>Inicio de Sesión</title> <style type="text/css"> <!-- .Estilo1 { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; } .Estilo2 { font-family: Verdana, Arial, Helvetica, sans-serif;

Page 109: Informe Pasantias Emc

100

font-weight: normal; font-size: 8%; font-style: italic; } .Estilo4 {color: #FF9900} .Estilo6 { font-family: Arial, Helvetica, sans-serif; font-size: 12px; } .Estilo7 { font-size: 11px; font-weight: bold; } .Estilo8 {font-family: Verdana, Arial, Helvetica, sans-serif} .Estilo11 { font-size: 14px; font-style: italic; font-weight: bold; font-family: Arial, Helvetica, sans-serif; } --> </style> </head> <body onLoad="limpiar_logueo();actualizaReloj()"> <p align="center">&nbsp;</p> <p align="center"><img src="imagenes/loginHeader.jpg" width="538" height="125" align="texttop"></p> <div align="center"><img src="imagenes/barra.jpg" width="550" height="9"> </div> <table width="200" border="0" align="center"> <tr> <td><form name="form" action="index.php" method="post"> <table width="400" align="center"> <tr>

Page 110: Informe Pasantias Emc

101

<td valign="top" align="center" colspan="2"> <span class="Estilo11"> Ingrese sus d<span class="Estilo4">@</span>tos</span> <hr align="center" /> </td> </tr> <tr> <td colspan="2" align="rigth" valign="top" bgcolor="#FFFFFF"><div align="center"> <table width="200" border="0"> <tr> <td><div align="center"><span class="Estilo6"><strong>Usuario</strong></span></div></td> </tr> <tr> <td class="Estilo1"><div align="center"> <input name="user" type="text" id="user" size="10" maxlength="10"> </div></td> </tr> <tr> <td class="Estilo7 Estilo8"><div align="center" class="Estilo6">Clave</div></td> </tr> <tr> <td class="Estilo1"><div align="center"> <input name="pass" type="password" id="pass" size="10" maxlength="10"> </div></td> </tr> </table> </div></td> </tr> <tr> <td colspan="2" align="rigth" valign="top" bgcolor="#FFFFFF"><div align="center"> <input type="hidden" name="grabar" value="si"/>

Page 111: Informe Pasantias Emc

102

<input type="button" name="entrar" id="entrar" value="Entrar" onClick="validar_logueo();"> </div></td> <hr /> </tr> </table> </form> </td> </tr> </table> <p>&nbsp;</p> <table width="310" border="0" align="center" class="Estilo2"> <tr> <td class="Estilo1" id="Fecha_Reloj"><div align="right"></div></td> </tr> </table> <p>&nbsp;</p> <table border=0 cellpadding=0 cellspacing=0> <tr> <td id="Fecha_Reloj"></td> </tr> </table> </body> </html>

Page 112: Informe Pasantias Emc

103

Código PHP del menú del sistema <!--

/******************************************/ /* Desarrollador: Enrique José Milano Camacho */ /* Objetivo: Mostrar el menú con las distintas */

/* opciones a trabajar */ /* Fecha: 15/02/2012 */ /******************************************/

--> <?php session_start(); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/Plantilla.dwt" codeOutsideHTMLIsLocked="false" --> <head> <link href='favicon.ico' rel='icon' type='image/vnd.microsoft.icon'/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Control de Inventario Pl@tUM 2</title> <style type="text/css"> <link href="CCS/clases.css" rel="stylesheet" type="text/css" /> <style type="text/css"> <!-- .Estilo7 { font-family: Geneva, Arial, Helvetica, sans-serif; font-size: 15px; font-style: italic; color: #FFFFFF; } .Estilo8 { font-family: Geneva, Arial, Helvetica, sans-serif; font-size: 12px;

Page 113: Informe Pasantias Emc

104

font-style: italic; font-weight: bold; color: #FFFFFF; } --> </style> </head> <body class="oneColElsCtrHdr"> <br /> <br /> <div id="container" > <table width="802" border="0" align="center"> <tr> <td width="796" height="53"><div align="right"> <div align="right"> <div align="right"><img src="imagenes/platumLogoHeader.jpg" alt="logo" width="163" height="29" /></div> </div> </div></td> </tr> </table> <table width="647" border="0" align="center" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> <tr> <td width="98" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="menu.php" style="text-decoration: none;"><font color="white">Inicio</font></a></span></div></td> <td width="1" bgcolor="#FFFFFF">&nbsp;</td> <td width="108" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="formularios/registrarMateria.php" style="text-decoration: none;"><font color="white">Registrar Materia</font></a></span></div></td> <td width="1" bordercolor="#0456A0" bgcolor="#FFFFFF">&nbsp;</td>

Page 114: Informe Pasantias Emc

105

<td width="110" bordercolor="#0456A0" bgcolor="#003B7B"><span class="Estilo8"><a href="consultas/consultarInventario.php" style="text-decoration: none;"><font color="white">Consultar Inventario</font></a></span></td> <td width="1" bordercolor="#0456A0" bgcolor="#FFFFFF">&nbsp;</td> <td width="98" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="consultas/consultapdf.php" style="text-decoration: none;"><font color="white">Otras Consultas</font></a></span></div></td> <td width="1" bordercolor="#0456A0" bgcolor="#FFFFFF">&nbsp;</td> <td width="98" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="logout.php" style="text-decoration: none;"><font color="white">Salir</font></a></span></div></td> </tr> </table> <p>&nbsp;</p> <!-- InstanceBeginEditable name="Registro" --> <p align="center"><span style="font-style: italic; font-weight: bold; font-family: Arial, Helvetica, sans-serif; font-size: 12px">Control de Inventario de Materias registradas por trimestre</span></p> <p align="center" style="font-family: Arial, Helvetica, sans-serif; font-size: 12px"><span style="font-style: italic">Personal de Soporte de la Plataforma</span><span style="font-style: italic; font-weight: bold"> Pl<span style="color: #FF6600">@</span>tUM</span><?php require_once("class/class.php"); if (isset($_SESSION["sesion"])) { $t= new Trabajo(); $nom=$t->saluda_al_usuario($_SESSION["sesion"]); ?></p> <table width="246" border="0" align="center"> <tr> <td width="240" style="font-family: Arial, Helvetica, sans-serif"><p style="font-size: 12px; color: #999999"><span style="font-style: italic; font-weight: bold">

Page 115: Informe Pasantias Emc

106

<span style="font-style: italic; font-size: 12px; color: #000000">Bienvenid</span><span style="font-size: 12px; color: #FF6600">@:</span> <?php echo "".$nom[0][nombre].""; ?> </span></p></td> </tr> </table> </p> <!-- InstanceEndEditable --> <div id="footer" align="center"> <p class="fuente_pie_pagina Estilo7"><strong>Inventario de Materias de Pl@tUM</strong></p> <!-- end #footer --></div> <!-- end #container --></div> </body> <!-- InstanceEnd --></html> <?php } else { echo " <script language='javascript' type='text/javascript'> alert('Debe loguearse para ver este contenido'); window.location='index.php'; </script> "; } ?>

Page 116: Informe Pasantias Emc

107

Código PHP de la pantalla que hace el registro de la materia <!--

/************************************************/ /* Desarrollador: Enrique José Milano Camacho */ /* Objetivo: Ingresar los siguientes datos de la materia: */

/* nombre, código, sección, alumnos, modalidad, nivel */ /* Fecha, soporte, profesor */

/* Fecha: 15/02/2012 */ /************************************************/

--> <form id="form1" name="form1" method="post" action="registrarMateria.php"> <?php include("..//conectar_bd.php"); //session_start(); $num= $_POST['num']; $nombremateria= $_POST['nombremateria']; $codmateria= $_POST['codmateria']; $seccion= $_POST['seccion']; $alumnos= $_POST['alumnos']; $modalidad= $_POST['modalidad']; $nivelacademico= $_POST['nivelacademico']; $fecha= $_POST['fecha']; $soporte= $_POST['soporte']; $profesor= $_POST['profesor']; if($nombremateria!="") { $a = array('á', 'é', 'í', 'ó', 'ú', 'ñ'); $b = array('Á', 'É', 'Í', 'Ó', 'Ú', 'Ñ'); $_POST['codmateria']=strtoupper(str_ireplace($a, $b, $_POST['codmateria'])); require_once("../funciones/insertarDB.php"); $sql="SELECT MAX(id_registro) FROM materia"; //recupero el ultimo numero de registro para sumarle 1 if($query=mysql_query($sql)) {

Page 117: Informe Pasantias Emc

108

while ($row=mysql_fetch_array($query)) { $num=$row[0] + 1; } } $nombre=""; } else { { $sql="SELECT MAX(id_registro) FROM materia"; //recupero el ultimo numero de registro para sumarle 1 if($query=mysql_query($sql)) { while ($row=mysql_fetch_array($query)) { $num=$row[0] + 1; } } } } ?> <table width="323" border="0" align="center"> <tr> <td width="460"><div align="right"> <p align="center"><span style="font-weight: bold; font-style: italic">Registro </span><span style="font-style: italic"><strong> de Materias</strong></span></p> </div></td> </tr> </table> <table width="778" border="0" align="center" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> <tr bordercolor="#FFFFFF" bgcolor="#999999"> <td width="919" bgcolor="#999999"> <div align="center"> <table width="772" border="0" align="center" bgcolor="#0456A0"> <tr> <td width="346" height="36"><div align="right" style="font-size: 12px; font-family: Arial, Helvetica, sans-serif"><span class="Estilo4" style="font-weight: bold; font-style: italic; color: #FFFFFF; font-size: 12px">Nombre de la Materia</span><span style="font-weight: bold; font-style: italic; color: #FFFFFF; font-size: 12px">:</span>

Page 118: Informe Pasantias Emc

109

<input type="text" name="nombremateria" id="nombremateria" value="<?php echo($nombremateria); ?>" /> </div></td> <td width="346"><div align="right" style="font-size: 12px; font-family: Arial, Helvetica, sans-serif"><span class="Estilo4" style="color: #FFFFFF; font-weight: bold; font-style: italic; font-size: 12px">Cód Materia:</span> <input type="text" name="codmateria" id="codmateria" value="<?php echo($codmateria); ?>"/> </div></td> <td width="66">&nbsp;</td> </tr> <tr> <td height="39"><div align="right" style="font-size: 12px; font-family: Arial, Helvetica, sans-serif"><span class="Estilo4" style="color: #FFFFFF; font-weight: bold; font-style: italic; font-size: 12px">Sección:</span> <input type="text" name="seccion" id="seccion" value="<?php echo($seccion); ?>"/> </div></td> <td><div align="right" style="color: #FFFFFF; font-weight: bold; font-style: italic; font-size: 12px; font-family: Arial, Helvetica, sans-serif"><span class="Estilo4" style="font-size: 12px">Alumnos:</span> <input type="text" name="alumnos" id="alumnos" value="<?php echo($alumnos); ?>"/> </div></td> <td>&nbsp;</td> </tr> <?php $fecha=date("Y/m/d"); ?> <tr> <td height="39"><div align="right" style="font-size: 12px; font-family: Arial, Helvetica, sans-serif"><span class="Estilo4" style="color: #FFFFFF; font-weight: bold; font-style: italic; font-size: 12px">Nombre del Profesor:</span> <input type="text" name="profesor" id="profesor" value="<?php echo($profesor); ?>"/> </div></td> <td><div align="right" style="color: #FFFFFF; font-weight: bold; font-style: italic; font-size: 12px; font-family: Arial, Helvetica, sans-serif"><span class="Estilo4" style="font-size: 12px">Nivel Académico</span><span style="font-size: 12px">:</span> <select name="nivelacademico" id="nivelacademico"> <option value="0">Seleccione Nivel</option> <?php require_once("../funciones/nivelAcademico.php"); ?> </select>

Page 119: Informe Pasantias Emc

110

</div></td> <td>&nbsp;</td> </tr> <tr> <td height="39"><div align="right" style="font-weight: bold; font-style: italic; color: #FFFFFF; font-size: 12px; font-family: Arial, Helvetica, sans-serif"><span class="Estilo4" style="font-size: 12px">Modalidad</span><span style="font-size: 12px">: </span> <select name="modalidad" id="modalidad"> <option value="0">Modalidad</option> <?php require_once("../funciones/nombreModalidad.php"); ?> </select> </div></td> <td><div align="right" style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #FFFFFF; font-weight: bold; font-style: italic"><span class="Estilo4"><span style="font-size: 12px">Fecha:</span> <input name="fecha" type="text" id="fecha" value="<?php echo($fecha); ?>" size="11" readonly="readonly"/> </span> </div></td> <td>&nbsp;</td> </tr> <tr> <td height="39"><div align="right" style="font-weight: bold; font-style: italic; color: #FFFFFF; font-size: 12px; font-family: Arial, Helvetica, sans-serif"><span class="Estilo4" style="font-size: 12px">Realizado por:</span> <select name="soporte" id="soporte"> <option value="0">Soporte</option> <?php require_once("../funciones/soporte.php"); ?> </select> </div></td> <td><div align="right"><span style="font-size: 12px; font-style: italic; color: #FFFFFF">Próximo registro:</span> <input name="num" type="text" id="num" value="<?php echo($num); ?>" size="1" readonly="readonly" /> </div></td> <td>&nbsp;</td> </tr> </table> <p> <input type="submit" name="cargar" id="cargar" value="Cargar" />

Page 120: Informe Pasantias Emc

111

</p> </div> <div align="center"></div> </td> </tr> </table> <table width="778" border="0"> <tr> <td><span class="Estilo6" style="color: #333"> <?php if(($insert)==TRUE) { echo '<script type="text/javascript"> alert("Se ha registrado correctamente la materia '. $_POST['nombremateria'].'"); </script>'; //echo "Se ha Registrado correctamente la Materia"," ",$_POST['nombremateria']; echo "<META HTTP-EQUIV='refresh' CONTENT='1; URL=$PHP_SELF'>"; } ?> </span></td> </tr> </table> <p> <?php require_once("../class/class.php"); if (isset($_SESSION["sesion"])) { $t= new Trabajo(); $nom=$t->saluda_al_usuario($_SESSION["sesion"]); ?> </p> <table width="200" border="0" align="center"> <tr> <td> <p style="font-size: 12px; font-family: Arial, Helvetica, sans-serif; color: #999999"><span style="font-style: italic; font-weight: bold"> <?php echo "".$nom[0][nombre].""; ?> </span></p> </td> </tr> </table>

Page 121: Informe Pasantias Emc

112

</p> </form> <!-- InstanceEndEditable --> <div id="footer" align="center"> <p class="fuente_pie_pagina Estilo7"><strong>Inventario de Materias de Pl@tUM</strong></p> <!-- end #footer --></div> <!-- end #container --></div> </body> <!-- InstanceEnd --></html> <?php } else { echo " <script language='javascript' type='text/javascript'> alert('Debe loguearse para ver este contenido'); window.location='../index.php'; </script> "; } ?>

Page 122: Informe Pasantias Emc

113

Código PHP del menú Consultar Inventario <!-- /************************************************/ /* Desarrollador: Enrique José Milano Camacho */ /* Objetivo: Consultar el detalle de las materias registradas*/

/* según el nivel académico, modalidad y soporte */ /* Fecha: 15/02/2012 */ /************************************************/ --> <?php session_start();?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <form id="form" name="form" method="post" action="consultarInventario.php"> <?php include("..//conectar_bd.php"); $modalidad= $_POST['modalidad']; $nivelacademico= $_POST['nivelacademico']; $soporte= $_POST['soporte']; ?> <table width="323" border="0" align="center"> <tr> <td width="460"><div align="right"> <p align="center"><span style="font-weight: bold; font-style: italic">Detalle de Materias Registradas</span></p> </div></td> </tr> </table> <table width="808" height="51" border="0" align="center" bordercolor="#72879A" bgcolor="#72879A"> <tr> <td width="752" bordercolor="1" bgcolor="#0456A0" class="Estilo2">

Page 123: Informe Pasantias Emc

114

<table width="779" border="0" align="left"> <tr> <td width="249" class="" style="font-size: 13px; color: #FFFFFF">Nivel Academico <select name="nivelacademico" id="nivelacademico"> <option value="0">Seleccione Nivel</option> <?php require_once("../funciones/nivelAcademico.php"); ?> </select></td> <td width="250"><span style="font-size: 13px; color: #FFFFFF">Modalidad:<span style="font-weight: bold; font-style: italic; color: #FFFFFF; font-size: 12px; font-family: Arial, Helvetica, sans-serif"> <select name="modalidad" id="modalidad"> <option value="0">Seleccione Modalidad</option> <option value="todas">Todas</option> <?php require_once("../funciones/nombreModalidad.php"); ?> </select> </span></span></td> <td width="175"><span style="font-size: 13px; color: #FFFFFF">Soporte:<span style="font-weight: bold; font-style: italic; color: #FFFFFF; font-size: 12px; font-family: Arial, Helvetica, sans-serif"> <select name="soporte" id="soporte"> <option value="">Soporte</option> <?php require_once("../funciones/nombreSoporte.php"); ?> </select>

Page 124: Informe Pasantias Emc

115

</span></span></td> <td width="70"><input type="submit" name="consultar" id="consultar" value="Consultar" /></td> </tr> </table></td> </tr> </table> <table width="808" height="19" border="0" align="center" bgcolor="#999999"> <tr> <td width="165"><div align="center" class="Estilo10" style="font-size: 11px">Materia</div></td> <td width="62"><div align="center" class="Estilo10" style="font-size: 11px">Código</div> <td width="52"><div align="center" class="Estilo10" style="font-size: 11px">Sección</span></div></td> <td width="60"><div align="center" class="Estilo10" style="font-size: 11px">Alumnos</div> <td width="138"><div align="center" class="Estilo10" style="font-size: 11px">Profesor</div> <td width="62"><div align="center" class="Estilo10" style="font-size: 11px">Modalidad</span></div></td> <td width="90"><div align="center" class="Estilo10" style="font-size: 11px">Nivel</span></div></td> <td width="60"><div align="center" class="Estilo10" style="font-size: 11px">Soporte</div></td> <td width="80"><div align="center" class="Estilo10" style="font-size: 11px">Fecha</div></td> </tr> </table> <table width="808" height="19" border="0" align="center" > <?php require_once("../funciones/muestraInventario.php"); ?>

Page 125: Informe Pasantias Emc

116

</table> <p><?php require_once("../class/class.php"); if (isset($_SESSION["sesion"])) { $t= new Trabajo(); $nom=$t->saluda_al_usuario($_SESSION["sesion"]); ?> </p> <table width="808" border="0" align="center"> <tr> <td width="209"> <p align="left" style="font-size: 12px; font-family: Arial, Helvetica, sans-serif; color: #999999">Materias Registradas: <?php echo "".$numero.""; ?> </p> </td> <td width="398">&nbsp;</td> <td width="174"><span style="font-size: 12px; font-family: Arial, Helvetica, sans-serif; color: #999999"><span style="font-style: italic; font-weight: bold"> <?php echo "".$nom[0][nombre].""; ?> </span></span></td> </tr> </table> </form> <!-- InstanceEndEditable --> <div id="footer" align="center"> <p class="fuente_pie_pagina Estilo7"><strong>Inventario de Materias de Pl@tUM</strong></p> <!-- end #footer --></div> <!-- end #container --></div>

Page 126: Informe Pasantias Emc

117

</body> <!-- InstanceEnd --></html> <?php } else { echo " <script language='javascript' type='text/javascript'> alert('Debe loguearse para ver este contenido'); window.location='../index.php'; </script> "; } ?>

Page 127: Informe Pasantias Emc

118

Código PHP del menú Otras Consultas <!-- /************************************************/ /* Desarrollador: Enrique José Milano Camacho */ /* Objetivo: Generar documento en formato PDF y ver el */

/* número de materias registradas según su modalidad. */ /* Fecha: 15/02/2012 */ /************************************************/ --> <?php session_start();?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/Plantilla.dwt" codeOutsideHTMLIsLocked="false" --> <head> <link href='../favicon.ico' rel='icon' type='image/vnd.microsoft.icon'/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Control de Inventario Pl@tUM 2</title> <style type="text/css"> </head> <body class="oneColElsCtrHdr"> <br /> <br /> <div id="container" > <table width="802" border="0" align="center"> <tr> <td width="796" height="53"><div align="right"> <div align="right"> <div align="right"><img src="../imagenes/platumLogoHeader.jpg" alt="logo" width="163" height="29" /></div> </div> </div></td>

Page 128: Informe Pasantias Emc

119

</tr> </table> <table width="647" border="0" align="center" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> <tr> <td width="98" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="../menu.php" style="text-decoration: none;"><font color="white">Inicio</font></a></span></div></td> <td width="1" bgcolor="#FFFFFF">&nbsp;</td> <td width="108" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="../formularios/registrarMateria.php" style="text-decoration: none;"><font color="white">Registrar Materia</font></a></span></div></td> <td width="1" bordercolor="#0456A0" bgcolor="#FFFFFF">&nbsp;</td> <td width="110" bordercolor="#0456A0" bgcolor="#003B7B"><span class="Estilo8"><a href="consultarInventario.php" style="text-decoration: none;"><font color="white">Consultar Inventario</font></a></span></td> <td width="1" bordercolor="#0456A0" bgcolor="#FFFFFF">&nbsp;</td> <td width="98" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="consultapdf.php" style="text-decoration: none;"><font color="white">Otras Consultas</font></a></span></div></td> <td width="1" bordercolor="#0456A0" bgcolor="#FFFFFF">&nbsp;</td> <td width="98" bordercolor="#0456A0" bgcolor="#003B7B"><div align="center"><span class="Estilo8"><a href="../logout.php" style="text-decoration: none;"><font color="white">Salir</font></a></span></div></td> </tr> </table> <p>&nbsp;</p> <!-- InstanceBeginEditable name="Registro" --> <form id="form" name="form" method="post" action="consultarInventario.php"> <?php include("..//conectar_bd.php"); $modalidad= $_POST['modalidad'];

Page 129: Informe Pasantias Emc

120

$nivelacademico= $_POST['nivelacademico']; $soporte= $_POST['soporte']; ?> <table width="323" border="0" align="center"> <tr> <td width="460"><div align="right"> <p align="center"><span style="font-weight: bold; font-style: italic">Detalle de Materias Registradas</span></p> </div></td> </tr> </table> <table width="808" height="51" border="0" align="center" bordercolor="#72879A" bgcolor="#72879A"> <tr> <td width="752" bordercolor="1" bgcolor="#0456A0" class="Estilo2"> <table width="779" border="0" align="left"> <tr> <td width="249" class="" style="font-size: 13px; color: #FFFFFF">Nivel Academico <select name="nivelacademico" id="nivelacademico"> <option value="0">Seleccione Nivel</option> <?php require_once("../funciones/nivelAcademico.php"); ?> </select></td> <td width="250"><span style="font-size: 13px; color: #FFFFFF">Modalidad:<span style="font-weight: bold; font-style: italic; color: #FFFFFF; font-size: 12px; font-family: Arial, Helvetica, sans-serif"> <select name="modalidad" id="modalidad"> <option value="0">Seleccione Modalidad</option> <option value="todas">Todas</option> <?php require_once("../funciones/nombreModalidad.php"); ?> </select>

Page 130: Informe Pasantias Emc

121

</span></span></td> <td width="175"><span style="font-size: 13px; color: #FFFFFF">Soporte:<span style="font-weight: bold; font-style: italic; color: #FFFFFF; font-size: 12px; font-family: Arial, Helvetica, sans-serif"> <select name="soporte" id="soporte"> <option value="">Soporte</option> <?php require_once("../funciones/nombreSoporte.php"); ?> </select> </span></span></td> <td width="70"><input type="submit" name="consultar" id="consultar" value="Consultar" /></td> </tr> </table></td> </tr> </table> <table width="808" height="19" border="0" align="center" bgcolor="#999999"> <tr> <td width="165"><div align="center" class="Estilo10" style="font-size: 11px">Materia</div></td> <td width="62"><div align="center" class="Estilo10" style="font-size: 11px">Código</div> <td width="52"><div align="center" class="Estilo10" style="font-size: 11px">Sección</span></div></td> <td width="60"><div align="center" class="Estilo10" style="font-size: 11px">Alumnos</div> <td width="138"><div align="center" class="Estilo10" style="font-size: 11px">Profesor</div> <td width="62"><div align="center" class="Estilo10" style="font-size: 11px">Modalidad</span></div></td> <td width="90"><div align="center" class="Estilo10" style="font-size: 11px">Nivel</span></div></td>

Page 131: Informe Pasantias Emc

122

<td width="60"><div align="center" class="Estilo10" style="font-size: 11px">Soporte</div></td> <td width="80"><div align="center" class="Estilo10" style="font-size: 11px">Fecha</div></td> </tr> </table> <table width="808" height="19" border="0" align="center" > <?php require_once("../funciones/muestraInventario.php"); ?> </table> <p><?php require_once("../class/class.php"); if (isset($_SESSION["sesion"])) { $t= new Trabajo(); $nom=$t->saluda_al_usuario($_SESSION["sesion"]); ?> </p> <table width="808" border="0" align="center"> <tr> <td width="209"> <p align="left" style="font-size: 12px; font-family: Arial, Helvetica, sans-serif; color: #999999">Materias Registradas: <?php echo "".$numero.""; ?> </p> </td> <td width="398">&nbsp;</td> <td width="174"><span style="font-size: 12px; font-family: Arial, Helvetica, sans-serif; color: #999999"><span style="font-style: italic; font-weight: bold"> <?php echo "".$nom[0][nombre].""; ?> </span></span></td> </tr>

Page 132: Informe Pasantias Emc

123

</table> </form> <!-- InstanceEndEditable --> <div id="footer" align="center"> <p class="fuente_pie_pagina Estilo7"><strong>Inventario de Materias de Pl@tUM</strong></p> <!-- end #footer --></div> <!-- end #container --></div> </body> <!-- InstanceEnd --></html> <?php } else { echo " <script language='javascript' type='text/javascript'> alert('Debe loguearse para ver este contenido'); window.location='../index.php'; </script> "; } ?>

Page 133: Informe Pasantias Emc

124

Código PHP para generar el Documento en Formato PDF <!-- /************************************************/ /* Desarrollador: Enrique José Milano Camacho */ /* Objetivo: Permite generar documento en formato PDF */

/* de la consulta realizada. */ /* Fecha: 15/02/2012 */ /************************************************/ --> <?php session_start(); require_once('../class/class.php'); include('../conectar_bd.php'); include('../fpdf/class.ezpdf.php'); $pdf =& new Cezpdf('letter','landscape'); $pdf->selectFont('../fpdf/fonts/Helvetica.afm'); $pdf->ezSetCmMargins(1,1,2,2); $modalidad= $_POST['modalidad']; $nivelacademico= $_POST['nivelacademico']; if($modalidad=="todas") { $queEmp = mysql_query("SELECT nombremateria, codmateria, seccion, alumnos,profesor, id_registro, soporte.soporte, modalidad.nombremodalidad, nivelacademico.nivel, fecha FROM materia, soporte, modalidad, nivelacademico WHERE materia.id_nivel = $nivelacademico AND materia.id_soporte = soporte.id_soporte AND materia.id_modalidad = modalidad.id_modalidad AND materia.id_nivel = nivelacademico.id_nivel ORDER BY id_registro");} else {

Page 134: Informe Pasantias Emc

125

$queEmp = mysql_query("SELECT nombremateria, codmateria, seccion, alumnos,profesor, id_registro, soporte.soporte, modalidad.nombremodalidad, nivelacademico.nivel, fecha FROM materia, soporte, modalidad, nivelacademico WHERE materia.id_modalidad = $modalidad AND materia.id_nivel = $nivelacademico AND materia.id_soporte = soporte.id_soporte AND materia.id_modalidad = modalidad.id_modalidad AND materia.id_nivel = nivelacademico.id_nivel ORDER BY id_registro"); } while($row92=mysql_fetch_array($queEmp)) { $data[] = array('d1'=>utf8_decode($row92["nombremateria"]), 'd2'=>utf8_decode($row92["codmateria"]), 'd3'=>$row92["seccion"], 'd4'=>($row92["alumnos"]), 'd5'=>utf8_decode($row92["profesor"]),'d6'=>$row92["nombremodalidad"], 'd7'=>$row92["nivel"], 'd8'=>$row92["soporte"], 'd9'=>$row92["fecha"], 'd10'=>$row92["id_registro"]); } $titles = array('d1'=>'<b>Materia</b>', 'd2'=>'<b>Código</b>', 'd3'=>'<b>Sección </b>', 'd4'=>'<b>Alumnos</b>', 'd5'=>'<b>Profesor</b>','d6'=>'<b>Modalidad</b>', 'd7'=>'<b>Nivel</b>', 'd8'=>'<b>Soporte</b>', 'd9'=>'<b>Fecha</b>', 'd10'=>'<b>N° Reg.</b>'); $options = array( 'shadeCol'=>array(0.9,0.9,0.9), 'xOrientation'=>'center', 'width'=>700 ); $pdf->ezText("<b> DIRECCIÓN APRENRED</b>\n", 12, array("justification"=>"center")); //Titulo $pdf->addJpegFromFile("platumLogoHeader.jpg", 600,568,100); //Logo de la dirección $txttit.= "Reporte de Inventario";

Page 135: Informe Pasantias Emc

126

//$pdf->rectangle(425,728,180,20); //Área del rectangulo del Titulo $pdf->ezText($txttit, 10); $pdf->ezText("<b>Fecha:</b> ".date("d/m/Y"), 10); $pdf->ezText("\n", 10); $pdf->ezTable($data, $titles,'', $options); $pdf->ezText("\n\n\n", 10); if (isset($_SESSION["sesion"])) { $t= new Trabajo(); $nom=$t->saluda_al_usuario($_SESSION["sesion"]); $pdf->addText(100,40,9,"Elaborado por: ".$nom[0][nombre].""); //muestra nombre de usuario } $pdf->ezStream(); ?>

Page 136: Informe Pasantias Emc

127

Código PHP para validar los datos de acceso del usuario <!-- /************************************************/ /* Desarrollador: Enrique José Milano Camacho */

/* Objetivo: clases que permiten validar los datos del */ /* usuario para poder ingresar en el sistema. */

/* Fecha: 15/02/2012 */ /************************************************/ --> <?php session_start(); class Conectar { private $nombre=array(); //*****************************************// //Función para que que el usuario se loguee// public static function con () { $con = mysql_connect("localhost","root",""); mysql_query("SET NAMES 'utf8'"); mysql_select_db("platum"); return $con; } } class Trabajo { public function logueo() { $user=$_POST["user"]; $pass_js=$_POST["pass"]; $pass_php=md5($_POST["pass"]); $sql="SELECT * FROM usuarios WHERE usuario='$user' and pass_js='$pass_js' and pass_php='$pass_php'";

Page 137: Informe Pasantias Emc

128

$res=mysql_query($sql,Conectar::con()); if (mysql_num_rows($res)==0) { echo "<script type='text/javascript'> alert('Los datos no existen'); </script>"; } else { if ($reg=mysql_fetch_array($res)) { $_SESSION["sesion"]=$reg["id_soporte"]; header ("Location: menu.php"); } } } //******************************************************************// //*********Función para obtener el nombre del usuario logueado***********// public function saluda_al_usuario($id_soporte) { $sql= "SELECT nombre FROM usuarios WHERE id_soporte=$id_soporte"; $res=mysql_query($sql,Conectar::con()); while($reg=mysql_fetch_assoc($res)) { $this->nombre[]=$reg; } return $this->nombre; } } ?>

Page 138: Informe Pasantias Emc

129

Código PHP de las funciones JavaScript <!-- /************************************************/ /* Desarrollador: Enrique José Milano Camacho */

/* Objetivo: funciones que permiten validar los datos del */ /* usuario y mostrar la hora en pantalla. */

/* Fecha: 15/02/2012 */ /************************************************/ --> // JavaScript Document function limpiar_logueo() { document.form.reset(); document.form.user.focus(); } function validar_logueo() { var form=document.form; if (form.user.value==0) { alert("Ingrese su login"); form.user.value=""; form.user.focus(); return false; } if (form.pass.value==0) { alert("Ingrese su Password"); form.pass.value="";

Page 139: Informe Pasantias Emc

130

form.pass.focus(); return false; } form.pass.value=calcMD5(form.pass.value); form.submit(); } function actualizaReloj() { marcacion = new Date() Hora = marcacion.getHours() Minutos = marcacion.getMinutes() Segundos = marcacion.getSeconds() var dn="am" if (Hora>12) { dn="pm" Hora = Hora-12 } if (Hora==0) Hora=12 if (Minutos<=9) Minutos = "0" + Minutos if (Segundos<=9) Segundos = "0" + Segundos var Dia = new Array("Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado", "Domingo"); var Mes = new Array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"); var Hoy = new Date(); var Anio = Hoy.getFullYear();

Page 140: Informe Pasantias Emc

131

var Fecha = " " + Dia[Hoy.getDay()] + ", " + Hoy.getDate() + " de " + Mes[Hoy.getMonth()] + " de " + Anio + " "; var Inicio, Script, Final, Total Inicio = "<font face=verdana font size=2 color=black>" Script = Fecha + Hora + ":" + Minutos + ":" + Segundos + " " + dn Final = "</font>" Total = Inicio + Script + Final document.getElementById('Fecha_Reloj').innerHTML = Total setTimeout("actualizaReloj()",1000) }

Page 141: Informe Pasantias Emc

132

ANEXO G: ARCHIVOS Y DIRECTORIOS DEL PROYECTO

Page 142: Informe Pasantias Emc

133

Gráfico Anexo G 1: Directorio Raíz del proyecto

Fuente: Autor (2012)

Gráfico Anexo G 2: Directorio class

Fuente: Autor (2012)

Page 143: Informe Pasantias Emc

134

Gráfico Anexo G 3: Directorio consultas

Fuente: Autor (2012)

Gráfico Anexo G 4: Directorio formularios

Fuente: Autor (2012)

Page 144: Informe Pasantias Emc

135

Gráfico Anexo G 5: Directorio fpdf

Fuente: Autor (2012)

Gráfico Anexo G 6: Directorio funciones

Fuente: Autor (2012)

Page 145: Informe Pasantias Emc

136

Gráfico Anexo G 7: Directorio generarPdf

Fuente: Autor (2012)

Gráfico Anexo G 8: Directorio js

Fuente: Autor (2012)

Page 146: Informe Pasantias Emc

137

Gráfico Anexo G 9: Directorio nbproject

Fuente: Autor (2012)

Gráfico Anexo G 10: Directorio sql

Fuente: Autor (2012)

Page 147: Informe Pasantias Emc

138

Gráfico Anexo G 11: Directorio Templates

Fuente: Autor (2012)