Descargar

Valmat: aplicación web para apoyar el proceso de formación de valores en alumnos de séptimo grado (Cuba) (página 3)


Partes: 1, 2, 3, 4

T_ estudiantes

90+

5

Medio

T_ preguntas

20+

5

Medio

T_ profesor

5+

3

Bajo

T_ Aux

95+

2

Medio

T_ pregreal

20+

4

Medio

Tabla 13.4 Ficheros Internos.

  Según los datos anteriores y utilizando "USC-COCOMO II" se obtuvo: 3454 LDC (líneas de código) y 157 PF (puntos de función) como muestra en la Figura 1.3.1.

                                          Figura 1.3.1 – Puntos de Función y Líneas de Código

Los valores considerados de los Multiplicadores de esfuerzo (EM) para el Modelo de Diseño Temprano fueron:

Factores

Valor

Justificación

RCPX

0.83 (Bajo)

Simplicidad en la base de datos.

RUSE

0.95 (Bajo)

El nivel de reutilizabilidad es a través del programa.

PDIF

0.87 (Bajo)

El tiempo y la memoria estimada para el proyecto son de baja complejidad.

PREX

1.22 (Bajo)

Los especialistas poseen experiencia en el uso de las tecnologías.

FCIL

1 (Normal)

Se han utilizado herramientas de alto nivel de desarrollo

SCED

1 (Normal)

Los requerimientos de cumplimiento de cronograma son normales.

PERS

 

1 (Normal)

 

La experiencia del personal de desarrollo es normal, tienen una buena capacidad

Tabla 1.3.6 Valores de los EM

   Estos datos fueron introducidos en la herramienta "USC-COCOMO II" como se muestran en la Figura 1.3.2

Figura I.3.2 – Valores de Multiplicadores de Esfuerzo

 Los valores considerados de los Factores de escala (SF) fueron:

Factores

Valor

Justificación

PREC

3.72 (Normal)

No existe experiencia     en la realización de software de este tipo. Se tienen bien concebidos los objetivos del producto.

FLEX

3.04 (Normal)

Debe haber considerable cumplimiento de los requerimientos del sistema.

TEAM

3.29 (Normal)

El equipo que va a desarrollar el software es     cooperativo y multidisciplinario.

RESL

7.07 (Muy Bajo)

Se está haciendo un estudio, no existe un plan definido.

PMAT

7.80 (Muy Bajo)

Se encuentra en el nivel 1 (bajo).

Tabla 1.3.7     Valores de los SF

A continuación se ilustran en la Figura 1.3.3 la entrada de estos valores en la herramienta "USC-COCOMO II".

Figura 1.3.3 – Factores de Escala

Se asumio como salario $190 mensuales obteniéndose los resultados mostrados     en la Figura 1.3.4.

                                  Figura I.3.4 – Ventana Estimación del Costo de     "USC-COCOMO II"

De dónde se obtiene:

Esfuerzo (DM):

DM = (4.0 + 4 * 6.0+8.9) / 6 = 6.15 Hombres/Mes

Tiempo (TDev):

TDev = (5.8+ 4 * 6.6+ 7.6) / 6 = 6.63 Meses

Cantidad de hombres (CH):

CH = DM / TDev

CH = 6.15 / 6.63

 CH = 1Hombres

Costo de la Fuerza de Trabajo (CFT):

CFT = (1198.34+ 4 * 1788.57+ 2682.86) / 6=     $     1839.25

Resumiendo:

Parámetro

Valor

Esfuerzo (DM)

6.15 hombres / mes

Tiempo de desarrollo (TD)

6,63 meses

Cantidad de hombres (CH)

1 hombres

Costo

$ 1839.25

Tabla 1.3.9 Resultados finales.

Cálculo de costo de los medios técnicos: costo de utilización de los medios técnicos.

CMT= Cdep + CE + CMTO

Donde:

Cdep:   Costo por depreciación (se consideró 0).

CMTO: Costo de mantenimiento de equipo (se consideró 0 porque no se realizó).

CE: Costo por concepto de energía.

CE=      HTM x CEN x CKW

Donde:

HTM:    Horas de tiempo de máquina necesarias para el proyecto.

CEN: Consumo total de energía

CKW: Costo por Kwtas/horas ($0.12). Para realizar el cálculo la tarifa B1 aplicable a los centros de trabajo con características similares al Joven Club, esta tarifa es 0,12 ó la cual puede variar en dependencia al precio del combustible a nivel internacional.

HTM= (Tdd x Kdd + Tip x Kip) x 152

Donde:

Tdd: Tiempo promedio utilizado para el diseño y desarrollo (7meses).

Kdd: Coeficiente que indica el promedio de tiempo de diseño y desarrollo que se utilizó en la máquina (0.50)

Tip: Tiempo utilizado para las pruebas de implementación (3 horas).

Kip: Coeficiente que indica el % de tiempo de implementación utilizado en la máquina. (0.8)

HTM= (7×0.50+3×0.8) x152

HTM= (3.5+ 2.4)x152

HTM= 896.8H//

 

CEN= 0.608 Kw/h// (Estimado)

KW= HTM x CEN

KW= 896.8x 0.608

KW= 545.25//

 

CKW= 545.25*0.12

CE= $65,43//

Luego por lo antes considerado el costo de los medios técnicos es:

CMT=     $65,43

Cálculo del Costo de Materiales: En el cálculo de los costos de los materiales se consideró el 5 % de los costos de los medios técnicos.

CMAT= 0.05 x CMT

Donde:

CMT: Costo de los medios técnicos.

CMAT= 0.05 x 65,43

CMAT=     $3,27

 

Después de realizados los cálculos correspondientes a los Costos Directos (CD), se obtienen los siguientes resultados.

CD= CTP+CMT+CMAT

CD= 1839.25+65.43+3.27

CD= $ 1907.95//

 

Costo Total del Proyecto: Para calcular el valor total del proyecto se utilizó la siguiente expresión:

CTP= CD + 0.1 x SB

CTP=1907.95 + 0.1x 1839.25

CTP= $ 2091.88//

La aplicación que se propone está dirigida a contribuir al desarrollo de los valores de la asignatura matemática, por tanto su mayor beneficio es de orden social. Su utilización propiciará el protagonismo mayor de los estudiantes de séptimo grado de la ESBEC" Benito Juárez". En general la aplicación aportará los siguientes beneficios:

Beneficios:

v      Permite elevar el conocimiento en cuanto los valores que la asignatura matemática puede formar en los profesores de la ESBEC "Benito Juárez".

v      Permite a los profesores del grado, conocer el estado actual de los conocimientos de los estudiantes.

v      Permite a los estudiantes evaluar sus conocimientos.

v      Permite aprovechar al máximo las capacidades informáticas en el proceso de enseñanzaaprendizaje.

Por el peso que tienen los beneficios reportados al emplearse la aplicación se determinó realizar su diseño e implementación pues de lo contrario sería imposible aplicar el mismo.

En el diseño y desarrollo de Valmat se empleó:

Recursos Humanos:

v      Dos personas para el análisis, diseño y desarrollo del sistema:

Tutor:    Msc. Rolando Díaz Hernández    

Autora: Lic.     Yanelys Barrios Reyes.

Recursos Técnicos:

v      Hardware para su diseño y desarrollo:

Procesador: Pentium IV 3.07 Ghz.

      Memoria: 1 GB

      Disco Duro: 60 Ghz

      Unidad de Respaldo: CD- ROM/ DVD – ROM

      Monitor: Resolución SVGA (800 x 600) píxeles.

Software:

     Sistema Operativo Windows 2000 o Superior, plataforma Xamp.

     Dreamweaver, Zend Development Enviromnent, Xara Webstyle 4.0.

     PHP, HTML, Java Script, My SQL.

     Erwin 6.01 y Rational Rose Enterprise.

Capítulo II:

DISEÑO DE LA PROPUESTA DE SOLUCIÓN

    El presente capítulo aborda el diseño de la Base de Datos y de su seguridad empleando el gestor Edwin 6.01, de su Interfaz de Usuario empleando programación PHP, HTML, Java Script  y de la Ayuda.

     En el primer epígrafe se realiza una valoración crítica de diversos materiales existentes que facilitan la formación de valores en alumnos de séptimo grado.

    Se caracterizan, en un segundo epígrafe, los diferentes tipos de software existentes definiéndose el utilizado para la realización de Valmat.

    En el tercer epígrafe se realiza un análisis de la tecnología utilizada para la creación de Valmat.

    En el cuarto y último epígrafe se realiza el diseño de Valmat planteándose los requerimientos funcionales que debe asegurar Valmat para satisfacer al usuario. Se aborda lo referido al diseño de la Interfaz Usuario de Valmat realizado con el uso de artefactos del Lenguaje Unificado de Modelado (UML) definiéndose actores, Casos de Usos, Diagramas de Casos de Uso sobre la base de su prototipo de Interfaz-Usuario. Se aborda como se concibió la seguridad de la Base de Datos de Valmat, explicando los grupos y Cuentas de Usuarios y los permisos a estos otorgados y el diseño de la ayuda de Valmat.

     2.1 Valoración crítica de los sistemas afines.

    Diversos son los materiales digitales que se utilizan a nivel nacional en todas las instituciones de Secundaria Básica, agrupados en la colección "El Navegante", mediante los cuales, haciendo un buen uso de ellos, se pude dar salida a la formación de valores, a continuación vamos hacer referencia a los que pueden utilizarse en 7mo,  por ejemplo: Elementos Matemáticos realizado por el centro Visofted de Villa Clara en el mismo se desarrollan contenidos de Matemática correspondientes a los tres grados de la Educación Secundaria Básica, agrupados en 4 grandes temáticas: "Estadística", "Aritmética", "Álgebra", "Geometría", El fabuloso mundo de las palabras del centro CEsoftE-Ciudad de La Habana, este producto corresponde a la asignatura Español y Literatura de la Educación Secundaria Básica. Trata los temas de: "Comprensión", "Gramática", "Ortografía", "Construcción" y "Lectura",  Encuentro con el pasado de  SoftEE- Granma corresponde a la asignatura Historia Antigua y Medieval que se imparte en 7mo grado. Aborda el análisis de la evolución que va teniendo la enseñanza de las diferentes épocas históricas. Cuenta con 6 módulos: Contenidos, Ejercicios, Juegos, Biblioteca, Resultados y Profesor, Informática Básica de CyberSoft-Sancti Spíritus aborda los contenidos de Informática de 7mo y 8vo grados. Presenta 5 temas: "La informática avanza", "Sistema Operativo", "Los procesadores de texto", "Las páginas Web" y "Presentaciones multimedia", EducArte de Cesoftad-Holguín Corresponde a la asignatura Educación Artística que se imparte en los tres grados de la Educación Secundaria Básica. Presenta 6 temas: "Manifestaciones artísticas", "Lenguaje sonoro", "Lenguaje visual", "Teatro", "Danza" y "Cine".

    Sin embargo, en ninguno de los casos se tratan los valores inherentes a la matemática, lo cual favorece a que se desarrollen nuevos software para la formación de valores;  es por ello que tomamos la decisión de no forzar la adaptación  de ninguna de estos software para solucionar nuestra problemática teniendo en cuenta que de optar por una de estas aplicaciones, se incurriría en gastos por concepto  de derecho de autor. De esta manera se ha optado por la crear esta aplicación para contribuir a la formación de los valores de la asignatura, capaz de satisfacer los requerimientos específicos de la problemática.

     2.2 Tipo de software creado. Justificación.

Clasificaciones de Software Educativos

    Existe gran variedad de software que pueden ser utilizados en nuestros centros educativos, sin embargo nuestro interés se inclina a abordar el tema del software educativo, cada uno de estos programas tienen propósitos específicos, dirigidos a contribuir con el desarrollo de diferentes funciones del proceso docente o sea usar la computadora como herramienta pedagógica. Dichos software están agrupados según la función que realizan dentro del proceso docente educativo, según la literatura  de Alessi, S. M. y Trollip, S. R (1985), Galvis Panquera, (1992), González, (1993), García D. (1995), Rodríguez Lamas et al. (2001) y Mined, 2001(2), se pueden clasificar de la siguiente forma: Tutoriales, Entrenadores, Repasadores, Evaluadores, Simuladores, Libros electrónicos, Juegos Instructivos, etc., con características comunes y grandes diferencias.

Libro electrónico

    Constituyen aplicaciones que hoy se están desarrollando con vistas a múltiples propósitos, y en particular, para el apoyo al proceso de enseñanza – aprendizaje. Podemos pensar en un libro de texto impreso en papel donde el estudiante pueda buscar la información, pero con un nivel de interactividad y motivación que le facilite las acciones que realiza. Su objetivo es la de presentar información al estudiante utilizando diferentes recursos tales como: texto, gráficos, animaciones, videos, etc., de tal manera que el proceso de obtención de la información por el estudiantes esté caracterizado por:

a) Navegación a través de los contenidos

b) Selección de acuerdo a sus necesidades

c) Nivel de interacción que le facilite el aprendizaje

d) Respuestas del sistema ante determinadas acciones

e) Medio ambiente agradable de trabajar.

f) Información precisa y concreta

    Simuladores y juegos educativos.

    Ambos tipos de software se caracterizan por lograr el aprendizaje por descubrimiento. En este tipo de software educativo se interactúa con un micro mundo en forma semejante a la que se tendría en una situación real para lograr el conocimiento. Aunque en la práctica, este micromundo puede resultar una simplificación del mundo real, el alumno resuelve problemas, aprende procedimientos, llega a entender características de un fenómeno o aprende qué acciones debe tomar en diferentes circunstancias.

    Las simulaciones a diferencia de los juegos, intentan apoyar el proceso de aprendizaje, semejando la realidad de forma entretenida, pero sin ser esta su característica principal; sin embargo, en los juegos se intenta llegar a situaciones excitantes y entretenidas, sin dejar en ocasiones de simular la realidad.

    Estos tipos de software son empleados para apoyar cualquiera de las cuatro fases del aprendizaje. Lo fundamental es lograr que el alumno sea un agente esencialmente activo, continuamente debe procesar información que le llega de forma problémica.

Dentro de los tipos de simuladores que existen tenemos:

– Simuladores físicos.

– Simuladores procedurales.

– Simuladores situacionales.

– Simuladores de proceso.

    En general, sea del tipo que sea, los simuladores tienen ventajas tales como que poseen un ambiente motivacional, apoyan la transferencia del aprendizaje y poseen gran eficiencia en su función.

    Sistema tutorial inteligente

    Según O´Shea Tem y Jonh Self, (1985) los sistemas tutoriales inteligentes (STI) despiertan mayor interés y motivación entre los alumnos que los sistemas clásicos. Aunque estos últimos pueden detectar errores y clasificarlos, aún no pueden explicar por qué se producen los mismos y limitan el proceso de retroalimentación del estudiante. En general, la idea del empleo de los STI representa un avance en el espiral por perfeccionar la introducción de la computadora en la enseñanza. Queda aún mucho que avanzar en este campo.

    La idea básica de un sistema tutorial inteligente es la de ajustar la estrategia de la enseñanza-aprendizaje, el contenido y forma de lo que se aprende a los intereses, expectativas y características de los estudiantes, por ello necesita disponer de:

– Modelo del estudiante: base de conocimiento del aprendiz, información sobre sus aptitudes y características más importantes que pueden decidir sobre la estrategia a emplear.

– Modelo del tutor: el cual decide la estrategia y la táctica para desarrollar el proceso de adquisición de los conocimientos por los estudiantes de acuerdo a las propias características de estos.

– Modelo del experto: Representa el sistema de conocimientos de que se dispone.

    Sistema experto

    Es una parte materializada de la Inteligencia Artificial, se trata en este caso del diseño de sistemas informáticos que representan las características asociadas con la inteligencia humana, entendimiento del lenguaje natural, aprendizaje, razonamiento, resolución de problemas, etc.

    Otros autores lo definen como un programa de conocimientos intensivo que resuelve problemas que normalmente requieren de la pericia humana. Ejecuta muchas funciones secundarias de manera análoga a un experto, por ejemplo, preguntar aspectos importantes y explicar razonamientos.

    La utilización de un sistema experto se justifica cuando el conocimiento y la experiencia humana no están disponibles en todas las situaciones que se requieran, cuando se necesitan procesos de enseñanzas eficientes y eficaces, y cuando realmente se considera que tiene un elevado valor. A su vez es apropiado si el problema requiere de manipulación de símbolos y de soluciones heurísticas con un gran valor práctico.

Algunas características comunes a ellos son:

– Pueden resolver problemas muy difíciles tan bien o mejor que los expertos humanos.

– Razonan heurísticamente usando aquello que los expertos consideran reglas efectivas y además interactúan con los humanos en forma apropiada incluyendo el lenguaje natural.

– Manipulan y razonan sobre descripciones simbólicas

– Pueden explicar por qué hacen las preguntas

– Pueden justificar sus conclusiones.

    Sistema tutorial

    García D. (1995) plantea que  "Constituye un programa especializado en la enseñanza de un dominio específico del conocimiento, apoyándose en el diálogo con el estudiante, en la consolidación de un conjunto de aspectos esenciales que por su complejidad requieren de un nivel de abstracción que permita la representación adecuada del conocimiento". Esta definición es retomada por Rodríguez Lamas R. para puntualizar que: "El tutorial es un programa especializado en un área del conocimiento, que establece una estrategia basada en el diálogo, está de acuerdo a las características del estudiante y además, existe una estrategia pedagógica para guiar al estudiante" (Rodríguez Lamas R. et al, 1991).

.   Estos sistemas se relacionan con las diferentes fases del aprendizaje, por  lo que resultan de  gran utilidad, al requerir alta motivación, información de retorno, ritmo propio y secuencia controlable por el usuario, entre otros factores.

    Teniendo en cuenta estas definiciones se coincide que las principales características de un tutorial son: sistema basado en el diálogo con el estudiante, adecuado para presentar información objetiva, tiene en cuenta las características del alumno, siguiendo una estrategia pedagógica para la transmisión de conocimientos.

    Sistema entrenador

    Designamos con este nombre al software educativo diseñado con el propósito de contribuir al desarrollo de una determinada habilidad, intelectual, manual o motora, en el estudiante, por lo que profundizan en las dos fases finales del aprendizaje: aplicación y retroalimentación. Se parte de que los estudiantes cuentan con los conceptos y destrezas que van a practicar.

En este tipo de material deben conjugarse diferentes aspectos:

1.- Cantidad de ejercicios

2.- Variedad en los formatos

3.- Niveles en los ejercicios

4.- Selección de ejercicios

5.- Motivación

6.- Creación de expectativas

7.- Sistema de refuerzo y retroinformación.

8.- Retroalimentación

    Para la elaboración de nuestra aplicación Web dirigida a contribuir al desarrollo de los valores de la matemática en alumnos de séptimo grado se tuvieron en cuenta aspectos de un sistema entrenador y de un sistema tutorial.

    2.3  Estado del arte de la tecnología utilizada.

    2.3.1 Herramienta  CASE:

    En la década de los setenta el proyecto ISDOS desarrolló un lenguaje llamado "Problem Statement Language" (PSL) para la descripción de los problemas de usuarios y las necesidades de solución de un sistema de información en un diccionario computarizado. Problem Statement Analyzer (PSA) era un producto asociado que analizaba la relación de problemas y necesidades. Pero la primera herramienta CASE como hoy conocemos para PC fue "Excelerator" en 1984. Actualmente la oferta de herramientas CASE es muy amplia entre muchas otras están: Rational Rose, Power Designer, y MSVisio.  Entre sus principales objetivos se encuentran:

·  Optimizar la calidad del software desarrollado.

·  Disminuir el tiempo y costo de desarrollo y mantenimiento del software

·  La gestión y dominio sobre el proyecto en cuanto a su Planificación, Ejecución y Control, se perfecciona.

·  Aumenta la productividad de las áreas de desarrollo y mantenimiento de los sistemas informáticos.

·  El archivo de datos (enciclopedia) de conocimientos y sus facilidades de uso las mejora, y reduce la dependencia de analistas y programadores.

A continuación analicemos las tres herramientas mencionadas:

 El Rational Rose

 Rational Rose es la herramienta CASE de modelación visual que soporta de forma completa todas la especificación de UML. Esta herramienta propone la utilización de cuatro tipos de modelos para realizar un diseño del sistema, algunos de estos modelos proporcionan una vista estática y otros una vista dinámica del sistema. Esta herramienta permite crear y refinar estas vistas creando de esta forma un modelo completo que representa el dominio del problema y del sistema.

 Una de las grandes ventajas de Rose es su uso del Lenguaje Unificado de Modelado (UML), proporcionando a los arquitectos y desarrolladores visualizar el sistema completo utilizando un lenguaje común, además los diseñadores pueden modelar sus componentes e interfaces en forma individual y luego unirlos con otros componentes del proyecto. Rose es la herramienta del Rational para la etapa de análisis y diseño de sistemas.

Rose genera código fuente en distintos lenguajes de programación, tales como Java y C++, a partir de un diseño en UML y proporciona mecanismos para realizar la denominada Ingeniería Inversa, es decir, a partir del código de un programa, se puede obtener información sobre su diseño.

Los productos de Rational resultan difíciles de usar y su aprendizaje conlleva un estudio profundo y tiempo de familiarización con el software. El manejo de requerimientos y la gestión de casos de uso se realizan en dos herramientas por separado, con gran número de entradas y salidas complejas. En los diagramas, Rational Rose se comporta de una forma abierta ya que le permite al usuario actuar libremente  en la sintaxis.

    El Power Designer

    Es una herramienta CASE de modelación visual que soporta de forma completa todas la especificación de UML permitiendo:

·         Crea bases de datos y aplicaciones cliente/servidor basadas o no en Web.

·         Permite a los diseñadores de aplicaciones complejas de cliente/servidor tener una descripción general de los procesos particulares para comprender mejor a la organización.

·          Exporta información del modelo físico y extiende atributos al diccionario de 4GL. Importa atributos extendidos de PowerBuilder.

·         Soporta definición de atributos extendidos para PowerBuilder, Progress, Uniface, PowerHouse, Axiant, y NS-DK.

·         Cuenta con herramientas para la creación y control de diagramas como son:

Ø                  Off-page Connector: que representa los flujos de entradas y salidas en un proceso.

Ø                   Business Rules: Define las reglas de uso para Procesos de Almacenamiento de datos, Entidades externas, y Flujos de dato.

Ø                  CRUD Matrix: Define el efecto de un proceso de datos en términos de Crear, Leer, Actualizar, y Borrar operaciones (CRUD).

·         Posee una  ayuda sensible al contexto.

·         Data Architect proporciona capacidades de modelado de datos tradicional, incluyendo diseño de Bases de Datos, generación, mantenimiento, ingeniería de reversa y documentación para arquitecturas de bases de datos.

·         Permite que los diseñadores de Bases de Datos creen estructuras de datos flexibles, eficientes y efectivos para usar una ingeniería de aplicación de bases de datos.

·         Proporciona un diseño conceptual de modelo de datos, generación automática de modelo de datos, diseño de normalización física, sistema de manejo de bases de datos múltiples (DBMS) y soporte de herramientas de desarrollo, y elementos de reportes con presentación y calidad.

·         Mediante el incremento del modelo de la base de datos, AppModeler genera instantáneamente objetos, componentes data-ware, y hasta aplicaciones básicas listas para ejecutarse inmediatamente en PowerBuilder, Power++, Visual Basic, Delphi, y Web-based objects.

·         El AppModeler permite a los desarrolladores: diseñar modelos de bases de datos físicas o crearlas instantáneamente a través de la ingeniería de reversa de bases de datos existentes, generar, documentar y mantener bases de datos, generar rápidamente objetos de aplicación y componentes de datos para PowerBuilder 4.0 y 5.0; Visual Basic 3.0, 4.0, y 5.0;Delphi 2.0; Power++; y el Web.

·         Generación de objetos PowerBuilder. Soporta todas las ediciones de PowerBuilder 4.0 y 5.0. Genera objetos personalizables de PowerBuilder y componentes basados en modelos de bases de datos físicos y plantillas que se encuentran dentro de las librerías de clases de su elección. Genera objetos ventana y ventana de datos basadas en tablas, vistas y relaciones de llaves primarias-foráneas. Genera y hace ingeniería de reverso a los atributos. Incluye plantillas personalizables para la librería PowerBuilder Foundation Class (PFC).

·         Generación de objetos en Visual Basic. Soporta todas las ediciones de Visual Basic 3.0, 4.0, y 5.0. Incluye add-in de Visual Basic para la fácil manipulación de plantillas predeterminadas personalizables. Genera formas basadas en tablas, vistas, y relaciones de llaves primarias-secundarias. Genera proyectos basados en modelos de propiedades. Genera controles tales como menús, listas, etc.

·         Generación de objetos Delphi. Soporta todas las ediciones de Delphi 2.0. Incluye add-in de Delphi para una manipulación de plantillas personalizables predefinidas.

·         Genera aplicaciones y objetos (proyectos, formas, y controles) de tablas, columnas y referencias.

·         Soporta Modelos Funcionales y Notaciones de Diagramas de Flujo Modelo Funcional de Objeto (OMT) Yourdon/DeMarco Gane & Sarson SSADM (Análisis de sistema estructurado y metodología de diseño, Structured System Analysis & Design Methodology).

·         Creación flexible de reportes estructurados a través de plantilla de reportes.

·         Estructura de árbol de elementos seleccionados para facilitar la organización.

·         Posee Objetos drag-and-drop con estructura de árbol para facilitar los ajustes.

·         Salva plantillas de reportes.

·         Vista previa del reporte antes de imprimirlo.

·         Selecciona un lenguaje por omisión para el reporte.

·         Permite dirigir la impresión o exportarla a Microsoft Word, Word Perfect, PageMaker, etc.

El MSVisio

    Una herramienta muy sencilla que le permite presentar visualmente ideas, procesos y conjuntos complejos de información que puede alimentar, si lo desea, desde una base de datos.

    Visio es un programa inteligente de creación de diagramas. Sí, le permite comunicar ideas de una forma visual. Pero Visio también proporciona varias características que hacen que sus diagramas tenga más sentido, sean más flexibles y estén más en consonancia con sus necesidades. Más que algo que fotocopiar, puede captar información de otras maneras que sean valiosas .Visio crea diagramas. Eso significa que le permite poner en conexión una serie de cuadros y flechas, ¿no? Incorrecto. Visio ofrece mucho más. Uno de los usos más comunes de Visio es ilustrar procesos empresariales. Los diagramas de procesos empresariales se encuentran tanto en Visio Standard como en Visio Professional.

2.3.2 Sistemas Gestores de Bases de Datos

    Base de Datos es el conjunto de datos interrelacionados entre sí, almacenados con carácter más o menos permanente en la computadora.  O sea, que una BD puede considerarse una colección de datos variables en el tiempo.

    Sistema de gestión de bases de datos (SGBD) se le denomina al  software que permite la utilización y/o la actualización de los datos almacenados en una (o varias) base(s) de datos por uno o varios usuarios desde diferentes puntos de vista y a la vez.  Es importante diferenciar los términos BD y SGBD.

    El objetivo fundamental de un SGBD consiste en suministrar al usuario las herramientas que le permitan manipular, en términos abstractos, los datos, o sea, de forma que no le sea necesario conocer el modo de almacenamiento de los datos en la computadora, ni el método de acceso empleado.

    Los programas de aplicación operan sobre los datos almacenados en la base utilizando las facilidades que brindan los SGBD, los que, en la mayoría de los casos, poseen lenguajes especiales de manipulación de la información que facilitan el trabajo de los usuarios. (Mato 99)

Los principales beneficios que brinda un SGBD son:

Tamaño: Cuando el volumen de información aumenta, es necesario algún sistema que facilite el intercambio de información con memoria secundaria, la búsqueda rápida, etc.

Concurrencia: Es necesario un mecanismo de control sobre la información cuando sobre ella estén interactuando varias personas o programas de forma concurrente.

Recuperación e Integridad: Mecanismo que se encarga de proteger la información de estados inestables provocados por fallos de energía, de la propia aplicación o algún otro tipo de fallo, siempre dejando la información en un estado consistente.

Distribución, o posibilidad de que la información esté almacenada en diferentes lugares.

Seguridad, que permite restringir el acceso a la información a usuarios no autorizados, ejemplo: listas de acceso, definición de niveles, entre otros.

Administración, que permite a los usuarios y administradores de bases de datos examinar, controlar y ajustar el comportamiento del sistema. [MAR 04]

    Los gestores de bases de datos (SGBD) más utilizados son los que funcionan como autónomos de escritorio que proveen servicios a aplicaciones corriendo sobre el mismo escritorio y tienen gráficos de interfaces de usuarios y los que operan sobre una arquitectura cliente/servidor donde la información y datos se alojan en una estación central conocida como servidor y los terminales o clientes de la red sólo accedan a la información.  

    Las  principales ventajas de un gestor de base de datos de tipo  Cliente/Servidor, al tener los datos almacenados y administrados en una ubicación central:

Ø      Todos los elementos de datos están almacenados en una ubicación central donde los usuarios pueden trabajar con ellos. No se almacenan copias separadas del elemento en cada cliente, lo que elimina los problemas de hacer que todos los usuarios trabajen con la misma información.

Ø      Los servidores de base de datos relacionales optimizan el tráfico de la red al devolver solo los datos que la aplicación necesita.

Ø      Las reglas de empresa y de seguridad se pueden definir una sola vez en el servidor para todos los usuarios.

Ø      Los costos de hardware pueden ser minimizados. Como los datos no se guardan en cada cliente, los clientes no tienen que dedicar espacio del disco a guardar los datos. Tampoco necesitan la capacidad de procesamiento para manejar los datos localmente mientras que el servidor no necesita dedicar tiempo a mostrar los datos. 

Ø      El servidor puede ser configurado para optimizar las capacidades de entrada/salida del disco necesitado para recuperar los datos mientras que los clientes pueden ser configurados  para optimizar el formato en que los datos recuperados del servidor son mostrados. 

Ø      El servidor puede ser situado en un lugar relativamente seguro y equipado con dispositivos de respaldo energético, lo cual es más económico que proteger a cada cliente. 

  Las tareas de mantenimiento como la salva y restauración de los datos son simplificadas porque se pueden enfocar en el servidor central.

La aplicación Valmat tiene  como principal objetivo es contribuir a la formación de valores como parte del proceso docente educativo de la asignatura  Matemática donde es necesario el uso de una Base de Datos para almacenar todos  los datos de los estudiantes, profesores que consulten la aplicación y las preguntas que se utilizaran para evaluar a los estudiantes así como las relaciones que existen entre ellos. Estas bases de datos residirá en un servidor Web(XAMPP), ya que  este es un paquete que te permite instalar varios tipos de servidores en tu sistema incluyendo  el servidor web Apache, los servidores de bases de datos MySQL y SQLite, sus respectivos gestores phpMyAdmin y phpSQLiteAdmin entre otros. De esta forma el cliente accederá y gestionara de forma eficiente la información, por lo que es necesario utilizar un SGBD de tipo Cliente/Servidor debido a las necesidades del sistema a desarrollar y a las múltiples ventajas citadas anteriormente. A continuación se hace una descripción de los SGBD que se analizaron para la implementación del sistema.

MSSQL Server

Es un SGBD Relacional que permite responder a solicitudes de las aplicaciones clientes SQL Server es una aplicación completa que realiza toda la gestión relacionada con los datos. Es una herramienta de servidor, lo que quiere decir que se instala y usa recursos del servidor para procesar, interpretar, ejecutar y devolver los resultados a aplicaciones cliente.

El motor de datos soporta una amplia gama de tipos de datos, codificación de 128 bits, la integridad referencial de los datos, y la sintaxis ANSI SQL cada vez más compatible. Contiene además un módulo de conectividad que ofrece un componente de replicación fiable, escalable y bidireccional capaz de sincronizar datos entre accesorios de productividad y un almacenamiento de datos centralizado basado en SQL Server.

MSSQL Server usa Transact-SQL, XML; MDX o SQL-DMO para enviar solicitudes de procesamiento entre los clientes y el servidor adicionando sintaxis a los procedimientos almacenados, los cuales consisten en instrucciones SQL que se almacenan dentro de una base de datos de SQL Server. Estos procedimientos son guardados semicompilados en el servidor y que pueden ser invocados desde el cliente, se ejecutan más rápido que instrucciones SQL independientes.

MS SQL Server Trabaja con plataformas basada en Windows incluyendo Windows 9x, NT, CE, 2000, XP. SQL Server es muy conocido por su gran estabilidad, seguridad, escalabilidad e incluye también un potente entorno gráfico de administración, que permite el uso de comandos gráficamente.

Las ventajas de MS SQL Server:

1.      Celebra los resultados del funcionamiento y del precio del funcionamiento de la tapa TPC-C.

2.      Está generalmente aceptado como más fácil instalar, utilizar y manejar.

3.      El Transact-SQL es una lengua más de gran alcance que el dialecto de MySQL.

    MySQL

MySQL es un Sistema Gestor de Base de Datos (SGBD) con interfaz SQL que originariamente buscó una afinidad con la API de mSQL. Es el servidor de base de datos "Open Source" más utilizado en todo el mundo. Se utiliza mucho en la creación de aplicaciones Web por ser  muy rápido, confiable, y fácil de usar.

Sus principales características: es multiplataforma y tiene buena la velocidad   No soporta procedimientos almacenados pero soporta réplica. Está soportado por los  sistemas operativos  tales como: Solarix, Linux, Windows, Mac OS X Server, etc. MySQL presenta el inconveniente de que no garantiza la integridad referencial de los datos y es lento a la hora de manejar bases de datos grandes (más de 10000 registros). [HIL 04]

 MySQL tiene como ventaja:

·    Que Apoya todas las plataformas sabidas, no sólo las plataformas Windows.

·    Requiere menos recursos de hardware.

·    Puedes utilizarlo  sin ningún pago de conformidad con la licencia el público en general del GNU. [CHI 05 ]

Los Sistemas Gestores de Bases de Datos (SGBD) citados basan su funcionamiento en un estándar de lenguaje de bases de datos SQL (Structured Query Language) el que se refiere   a continuación:

SQL

El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado, utilizado por el motor de base de datos de Microsoft Jet. SQL se utiliza para crear objetos QueryDef, como el argumento de origen del método  OpenRecordSet y como la propiedad RecordSource del control de datos. También se puede utilizar con el método Execute para crear y manipular directamente las bases de datos Jet y crear consultas SQL de paso a través para manipular bases de datos remotas cliente – servidor.

Este lenguaje nos permite realizar consultas a la base de datos; además realiza funciones de definición, control y gestión de la base de datos e incluye una interfaz que permite el acceso y la manipulación de la base de datos a usuarios finales.

 SQL clasifica sus sentencias según su finalidad dando origen a tres sublenguajes:

1.       El  Lenguaje de Definición de Datos (Data Description Language), que incluye órdenes para definir, modificar o borrar las tablas en las que se almacenan los datos y de las relaciones entre éstas. (Es el que más varía de un sistema a otro).

2.       El Lenguaje de Control de Datos (Data Control Language), contiene elementos útiles para trabajar en un entorno multiusuario, en el que es importante la protección de los datos, la seguridad de las tablas y el establecimiento de restricciones en el acceso, así como elementos para coordinar la comparición de datos por parte de usuarios concurrentes, asegurando que no interfieran unos con otros.

3.       El Lenguaje de Manipulación de Datos (Data Manipulation Language), nos permite recuperar los datos almacenados en la base de datos e incluye órdenes para permitir al usuario actualizar la base de datos añadiendo nuevos datos, suprimiendo datos antiguos o modificando datos previamente almacenados.

2.3.3 Tecnologías Web

El surgimiento y propagación de Internet ha traído consigo el surgimiento de herramientas y tecnologías que se integren a los nuevos requerimientos de la gran red de redes. Seguidamente se muestran algunas de las tecnologías consideradas para elaborar la aplicación Valmat.

PHP (Personal Hypertext Preprocessor)

PHP es la versión libre del sistema equivalente de Microsoft ASP. Lenguaje de programación pensado en la Web de forma tal que resulta  ideal para la creación de páginas dinámicas. Es un  lenguaje encapsulado dentro de los documentos HTML. De forma que se pueden introducir instrucciones PHP dentro de las páginas. Gracias a esto el diseñador gráfico de la Web puede trabajar de forma independiente al programador. PHP es interpretado por el servidor Web apache donde genera un  fichero HTML con el resultado de sustituir las secuencias de instrucciones PHP por su salida. Una Web dinámica con PHP contiene una serie de documentos PHP que el servidor apache interpreta proporcionando al cliente documentos HTML con el resultado de las ordenes PHP.

PHP puede ser utilizado en cualquiera de los principales sistemas operativos del mercado, incluyendo Linux, muchas variantes Unix (incluyendo HP-UX, Solaris y OpenBSD), Microsoft Windows, Mac OS X, RISC OS y probablemente alguno más. PHP soporta la mayoría de servidores web de hoy en día, incluyendo Apache, Microsoft Internet Information Server, Personal Web Server, Netscape e iPlanet, Oreilly Website Pro server, Caudium, Xitami, OmniHTTPd y muchos otros. PHP tiene módulos disponibles para la mayoría de los servidores, para aquellos otros que soporten el estándar CGI, PHP puede usarse como procesador CGI.

Con PHP tiene la libertad de elegir el sistema operativo y el servidor de su gusto. También tiene la posibilidad de usar programación procedimental o programación orientada a objetos. Aunque no todas las características estándar de la programación orientada a objetos están implementadas en la versión actual de PHP, muchas bibliotecas y aplicaciones grandes (incluyendo la biblioteca PEAR) están escritas íntegramente usando programación orientada a objetos.

Con PHP no se encuentra limitado a resultados en HTML. Entre las habilidades de PHP se incluyen: creación de imágenes, archivos PDF y películas Flash (usando libswf y Ming) sobre la marcha. También puede presentar otros resultados, como XHTM y archivos XML. PHP puede autogenerar estos archivos y almacenarlos en el sistema de archivos en vez de presentarlos en la pantalla. Quizás la característica más potente y destacable de PHP es su soporte para una gran cantidad de bases de datos. Escribir un interfaz vía Web para una base de datos es una tarea simple con PHP.

Es un lenguaje de programación que nos permite programar aplicaciones asociadas al servidor de Web, aumentando la funcionalidad de dicho servidor y convirtiéndolo en un sistema de desarrollo de aplicaciones cliente/servidor mucho más completo. El objetivo fundamental del lenguaje es permitir a los que  desarrollan aplicaciones basadas en Web escribir páginas que se generan de forma dinámica de una forma sencilla y rápida. Esta tecnología tiene una gran integración con el servidor de base de datos MySQL.

Ventajas:

1.       Muy sencillo de aprender.

2.       Soporta en cierta medida la orientación a objeto. Clases y herencia.

3.       El análisis léxico para recoger las variables que se pasan en la dirección lo hace PHP de forma automática. Librándose el usuario de tener que separar las variables y sus valores.

4.       Se puede incrustar código PHP con etiquetas HTML.

5.       Excelente soporte de acceso a base de datos.

6.       La comprobación de que los parámetros son validos se hace en el servidor y no en el cliente (como se hace con javascript) de forma que se puede evitar chequear que no se reciban solicitudes adulteradas.

7.       Viene equipado con un conjunto de funciones de seguridad que previenen la inserción de órdenes dentro de una solicitud de datos.

8.       Se puede hacer de todo lo que se pueda transmitir por vía HTTP.

Desventajas:

1.   Todo el trabajo lo realiza el servidor y no delega al cliente. Por tanto puede ser más ineficiente a medida que las solicitudes aumenten de número.

2.       La legibilidad del código puede ser afectada al mezclar con sentencias HTML.

3.       La orientación a objetos es aún muy deficiente para aplicaciones grandes.

JavaScript

El JavaScript solo se parece al Java en la estructura, por lo demás es un lenguaje Script interpretado por el navegador, que se inserta dentro del código HTML y se ejecuta del lado del cliente. No requiere de los más complicados conocimientos de programación y esta diseñado para controlar la apariencia y manipular los eventos dentro de la ventana del navegador Web. A diferencia de Java, no se pueden definir nuevas clases, solo pueden utilizarse tipos ya definidos, desde la propia ventana del navegador  hasta la página con todos sus elementos, como botones, imágenes, campos de formularios, hipervínculos, Applets de Java, controles ActiveX, entre otros. Esto explica el control que puede ejercerse sobre todos los elementos de la página, de manera tal que se pueden cambiar imágenes, reproducir sonidos, cambiar textos, validar campos de formularios, crear nuevas páginas y ventanas, entre otras. Por lo demás, JavaScript no necesita de un ambiente de desarrollo ni un compilador, como en la generalidad de los lenguajes, pues es un código interpretado, por lo que es fácil de implementar y mantener pero tiene como inconveniente que no se puede depurar el lenguaje para encontrar los posibles errores. Además es muy útil para la validación de datos de formularios al evitar tener que enviar la página para que sea procesada y que luego se devuelvan los errores.

HTML (Hypertext Markup Languaje)

El lenguaje HTML está basado sintácticamente en marcas (tags) lo que constituye el componente fundamental de la estructura de un documento texto.  El conjunto de marcas (tags) integran el formato de un programa, por ejemplo, atributos como, hacer cambios de líneas, el tamaño de letras, escribir un párrafo, alinear párrafos, colocar un fondo (background), establecer un vínculo, insertar una imagen, etc.

 Es  factible elaborar una página Web siguiendo el código del lenguaje, pero  resultaría algo engorroso el trabajo, tanto de confección como de puesta a punto. En la actualidad existen diferentes sistemas que me permiten confeccionar una página Web de forma directa sin necesidad de atender a la construcción por el usuario de las marcas, sino que el propio sistema lo establece.

2.3.4 Editores Web

Un editor web es un software capacitado para la creación de páginas web. Cualquier editor de texto permite crear páginas web. Para ello sólo es necesario crear los documentos con la extensión HTML o HTM, e incluir como contenido del documento el código HTML deseado. Puede utilizarse incluso el Bloc de notas para hacerlo.

Pero crear páginas web mediante el código HTML es más costoso que hacerlo utilizando un editor gráfico. Al no utilizar un editor gráfico cuesta mucho más insertar cada uno de los elementos de la página, al mismo tiempo que es más complicado crear una apariencia profesional para la página.

Hoy en día existe una amplia gama de editores de páginas web. Unos de los más utilizados, y que destaca por su sencillez y por las numerosas funciones que incluye, es Macromedia Dreamweaver y Microsoft FrontPage a los que haremos referencia seguidamente.

Microsoft FrontPage

FrontPage Es un editor HTML y herramienta de administración de páginas web de Microsoft para el sistema operativo Windows. Forma parte de la suite Microsoft Office. Muchos consideran que el código HTML generado por esta aplicación es un poco descuidado y muchas veces reiterativo, especialmente en versiones antiguas.

Se identifica a FrontPage como un producto fácil de usar, con pocas prestaciones, y con groseras fallas, es decir, un producto no profesional. En los últimos años FrontPage ha evolucionado notablemente, convirtiéndose en una aplicación profesional que mantiene una facilidad de uso impecable combinado con útiles herramientas.

Dreamweaver, lo supera claramente en el marco de las posibilidades de programación. Sin embargo, desde la perspectiva de la interfaz y utilización, preferimos los menús sencillos e intuitivos de FrontPage, que lo hacen aparentar ser un procesador de texto como Word.

Aunque su área de trabajo de tipo WYSIWYG, "lo que ves es lo que obtienes" (what you see is what you get) es el mayor atractivo de Front Page por su simplicidad, Microsoft se ha dedicado con seriedad al tratamiento del código logrando muy buenos resultados. En este campo se aprecia una modalidad que nos posibilita visualizar la ventana de diseño y código a la vez, y herramientas de corrección precisas que eliminan el código extraño. Es un gran avance, ya que el manejo del código ha sido, desde sus inicios, uno de los puntos más criticados de FrontPage. [YAN  06]

Las características más destacadas de Microsoft Front Page comprenden: el uso de plantillas web, de tal manera de establecer una página maestra, y así actualizar el diseño de toda la web rápidamente el hecho de poder trabajar con diversas aplicaciones, ha agilizado la edición de imágenes entre otras tareas; ofrece compatibilidad con los distintos navegadores y resoluciones; incorpora la tecnología IntelliSense, que corrige errores de programación bajo ASP.Net, HTML, CSS, XSLT, y JScript; haciendo posible emplear datos dinámicos de tal manera de agilizar tareas como la publicación del sitio, el desarrollo de bases de datos, y la creación de elementos interactivos avanzados; posee una vista, que nos muestra al mismo tiempo las ventanas de código y diseño; la función de buscar y reemplazar, lo que ahorra muchísimo tiempo; la posibilidad de insertar objetos como contenido Flash.

Microsoft Front Page es una estupenda solución de desarrollo web a pesar de no estar a la altura de Macromedia Dreamweaver. Aunque, la elección del editor HTML se basa en las necesidades del usuario, ya que, a pesar de que Microsoft y Macromedia pelean en el mismo rubro, las aplicaciones resultan muy distintas entre sí, estando orientadas a determinados públicos.

Dreamweaver

Dreamweaver  herramienta para la creación de páginas y sitios  web, que ofrece componentes capaces de controlar los vínculos de un sitio web; y puede integrarse con publicación dinámica y soluciones de comercio electrónico.

En Dreamweaver  aparece, como novedad, la elección de una modalidad de programación, lista formada por ASP.Net, PHP, ColdFusion, y HTML, luego  nos presenta otra selección: el ambiente de trabajo,  donde encontramos las opciones, ya conocidas de anteriores versiones, WYSIWYG que consiste en diseñar una página web sin necesidad de escribir ningún código, la opción de trabajar con el código, y por último la posibilidad de ver ambas ventanas de desarrollo a la vez. Domina los lenguajes de programación ASP, CSS, PHP, SQL, JSP, y XML. El potencial del software en cuanto a la capacidad de programar bajo los lenguajes que acabamos de citar es de lo más amplio, permitiendo la creación de aplicaciones y diseños web avanzados. Uno de los puntos de mayor énfasis en Dreamweaver es el soporte y las características de desarrollo en Cascading Style Sheet (cascada de hoja de estilo), haciendo posible creaciones con más facilidad y precisión, aplicando herramientas capaces de inspeccionar el código escrito.

       Dreamweaver trae implícita virtudes como:

Compatibilidad: , Los plug-ins de Flash, Shockwave, Real Media y todos los compatibles con Netscape pueden controlarse en la página de Dreamweaver con el botón de inicio y detener.

Control: está la herramienta  site map con la cual es posible realizar el diseño y organización del sitio, ofrece una vista global del sitio con sus vínculos correspondientes. Cuando hay un cambio vínculo, esta cambia automáticamente en el mapa de sitio.

Búsqueda automática: La búsqueda y modificación de acciones es de manera automática, como en Word. Incluso es posible cambiar los colores del fondo de todo el sitio, o los atributos de ciertas tareas.

Trabajo en equipo: los miembros de un equipo de trabajo pueden editar directamente alguna página sin romper con el diseño, al asegurar regiones para que no cambien su diseño y dejar otras para cambiar el contenido del texto pero sin modificar el diseño. [YAN  06]

Dreamweaver posee varias características que lo hacen una herramienta muy potente para el desarrollo de sitios:

1.           Se obtiene el control total sobre el código fuente, gracias a la Split View (Vista dividida) que permite observar el código y el diseño simultáneamente.

2.           Se identifican fácilmente palabras claves y secuencias de comandos (scripts) en el código. El editor de texto integrado incluye coloreado del código ASP, PHP y JSP, sangrías automáticas y números de línea.

3.           Se maximiza la productividad con Server Behaviors (Comportamientos de servidor). Esta innovación, crea el formato y las secuencias de comandos del servidor, que se necesitan para las aplicaciones Web comunes, como actualizaciones e inserciones a las bases de datos.

4.           Cuenta con elementos de edición de tablas con lo que se pueden seleccionar de manera rápida celdas, renglones, columnas o una combinación de éstas.

5.           Los colores no están restringidos, ya que se pueden personalizar e incluso copiar un color de una gráfica y salvarlo en la paleta de colores de Dreamweaver.

2.3.5 Tecnologías y Herramientas a Utilizar.

El sistema propuesto se tiene concebido implantarlo en la ESBEC" Benito Juárez", Teniendo en cuenta esto y que la aplicación será publicada en un servidor web como Apache, ejecutándose sobre un ambiente de Windows, además de que se trata de una base de datos pequeña sin grandes complicaciones  es que se procede a la selección de las diferentes herramientas  a utilizar para la implementación de la aplicación  Valmat, a  continuación  se amplia en el por qué de la selección de las diferentes tecnologías.

Por quése utilizó  My SQL:

MSSQL  Server y  MySQL, ambos productos se pueden utilizar para construir estable y el sistema eficiente, la estabilidad y la eficacia de tus usos y bases de datos dependen algo de la experiencia de los reveladores de la base de datos y del administrador de la base de datos que del abastecedor de base de datos. Pero existen diferencias en cuanto a las plataformas que utilizan, pues  MSSQL Server funciona solamente en plataformas Windows-based, incluyendo el CE de Windows 9x, de Windows NT, del Windows 2000 y de Windows, y  MySQL apoya todas las plataformas sabidas, incluyendo plataformas Windows-based, los sistemas AIX-basados, sistemas de HP-UX, Linux Intel, sol Solaris etc. En cuanto a los requisitos del hardware, este no requiere recursos adicionales de la CPU. También la base de datos sobre MySQL:

§        Apoya todas las plataformas sabidas, no sólo las plataformas Windows.

§        MySQL requiere menos recursos de hardware.

§        Puede ser utilizado sin ningún pago de conformidad con la licencia.

Fue diseñado para trabajar con  bases de datos de tamaño medio (10-100 millones de filas, en sistemas informáticos pequeños. Tras la inclinación al uso de MySQL se hace casi obligatoria la elección de PHP como tecnología puesto a que:

1.         Soporte nativo para prácticamente cualquier Base de Datos.

2.         Miles de ejemplos y código fuente disponible.

3.         Perfecta integración del Apache-PHP-MySQL.

4.         Es multiplataforma, funciona en todas las plataformas que soporten apache.

5.         PHP no soporta directamente punteros, como el C, de forma que no existen los problemas de depuración provocados por estos. Se pueden hacer grandes cosas con pocas líneas de código, lo que hace que merezca la pena aprenderlo.

6.         Viene acompañado por una excelente biblioteca de funciones que permite realizar cualquier labor (acceso a base de datos, encriptación, envió de correo, gestión de un e-commerce, xml, creación de PDF).

7.         Al poderse encapsular dentro de código HTML se puede recoger el trabajo del diseñador gráfico e incrustar el código PHP posteriormente.

8.         Esta siendo utilizado con éxito en varios millones de sitios web.

9.         Hay multitud de aplicaciones PHP para resolver problemas concretos (weblogs, tiendas virtuales, periódicos) listas para usar.

10.      Es software libre. Se puede obtener en la web y su código esta disponible bajo la licencia GPL.

Por qué utilizar Dreamweaver:

 Dreamweaver tiene un gran poder de  ampliación y personalización, puesto que este programa y sus tradiciones (como la de insertar un hipervínculo, una imagen o añadir un comportamiento) están hechas en Javascript-C lo que le ofrece una gran flexibilidad en estas materias y hace  que sea un programa muy fluido. Dreamweaver ha tenido un gran éxito y actualmente mantiene el 90% del mercado de editores HTML. Está disponible tanto para la plataforma MAC como Windows, aunque también se puede ejecutar en plataformas basadas en UNIX utilizando emuladores como Wine.

Como editor WYSIWYG que es, oculta el código HTML de cara al usuario, posibilitando que se pueda crear sitios web fácilmente.

Este le permite al usuario utilizar la mayoría de los navegadores Web instalados en su ordenador y dispone de herramientas de administración de sitios dirigidas a principiantes, la habilidad de encontrar y reemplazar líneas de texto y código por cualquier tipo de parámetro especificado, en el sitio web completo.

También tiene las funciones típicas de un editor de código fuente para la web que han motivado aún más su elección:

1.        Es un administrador de sitios, para agrupar los archivos según el proyecto al que pertenezcan.

2.        Es un cliente FTP integrado, que permite subir los archivos editados inmediatamente al sitio en Internet.

3.        Posee la función de autocompletar y resaltado de la sintaxis para instrucciones en HTML y lenguajes de programación como PHP, JSP o ASP.

Por qué utilizar PHP:

     Después de escoger el uso de MySQL se hace casi obligatoria la elección de PHP como tecnología casi por los mismos motivos. Sin embargo a continuación se amplia  acerca de las comodidades del uso de PHP.

Ø       PHP no soporta directamente punteros, como el C, de forma que no existen los problemas de depuración provocados por estos. Se pueden hacer grandes cosas con pocas líneas de código, lo que hace que merezca la pena aprenderlo.

Ø       Viene acompañado por una excelente biblioteca de funciones que permite realizar cualquier labor (acceso a base de datos, encriptación, envió de correo, gestión de un e-commerce, xml, creación de PDF).

Ø      Al poderse encapsular dentro de código HTML se puede recoger el trabajo del diseñador gráfico e incrustar el código PHP posteriormente.

Ø      Esta siendo utilizado con éxito en varios millones de sitios web.

Ø      Hay multitud de aplicaciones PHP para resolver problemas concretos (weblogs, tiendas virtuales, periódicos) listas para usar.

Ø      Es multiplataforma, funciona en todas las plataformas que soporten apache.

Ø      Es software libre. Se puede obtener en la web y su código esta disponible bajo la licencia GPL.

Ø      Soporte nativo para prácticamente cualquier Base de Datos.

Ø      Miles de ejemplos y código fuente disponible.

Ø      Perfecta integración del Apache-PHP-MySQL.

2.4 Diseño de  Valmat.

     2.4.1 Diseño de la Base de Datos de Valmat

Para diseñar muestra base de datos se utilizó conceptos de Base de Datos  que nos llevaron al modelo de base de datos como son:

Entidad.- Cosas o elementos de los cuales es de nuestro interés recoger información estando bien diferenciados entre si, que poseen propiedades y entre los cuales se establecen relaciones. También las Entidades pueden ser cosas no tangibles, como un suceso o un concepto abstracto.

Entidad Débil.- Aquella entidad que su existencia depende de la existencia de otra entidad, es decir, no tiene existencia propia.

Atributo.- Es la unidad menor de información sobre una Entidad y representa las propiedades o atributos de interés. Gráficamente, pueden ser representadas en el DER mediante bolitas que cuelgan de las entidades a las que pertenece, en el Modelo Conceptual dentro del rectángulo que representa a la Entidad separada del nombre de esta por una línea.

Relación.- Correspondencia o asociación entre dos o más entidades. Las relaciones pueden ser representas gráficamente en el DER mediante rombos que se unen por líneas a las Entidades relacionadas o mediante líneas que unen a las Entidades señalándose en cada extremo la cardinabilidad.

Los posibles tipos de relaciones que puede haber entre dos Entidades son:

  • Relaciones 1-1: Cuando una instancia de una de las Entidades le corresponde solo una instancia de la otra y viceversa.
  • Relaciones 1-n: Cuando una instancia de una Entidad le corresponde muchas de la otra.
  • Relaciones n-n: Cuando una instancia de una de las Entidades le corresponde muchas instancias de la otra y viceversa.

     Una relación n-n constituye en el Modelo Lógico de los Datos una tabla, la cual tendrá como llave, una llave compuesta constituida por las llaves de cada una de las Entidades implicadas en la relación, pudiendo tener atributos propios la relación los que serían campos de la tabla. En caso que estas relaciones tengan atributos propios es necesario que estén representadas explícitamente en el Modelo construido por el CASE para poder generar correctamente la tabla correspondiente a la relación.

Llave Primaria.- Atributo o conjunto de atributos de la entidad  que permite referirse sin ambigüedad a un elemento de la misma, esto hace que no pueda existir  dos elementos en una Entidad con igual  valor de la llave primaria, a su vez esta no puede tener un valor nulo.

Llave Extranjera.- Atributo o conjunto de atributos de la Entidad que son llave de otra Entidad con la cual se encuentra relacionada.

Atributo mandatario.- Aquel que no pude tener valor nulo, de hecho todas la Llaves primarias son mandatarias.

Dominio.- Conjunto de valores en los que pueden tomar  valor un atributo.

En la Base de Datos de Valmat se evidencia estos conceptos de la siguiente forma:

Entidades y Relaciones: Aparecen como Entidades Profesor, Estudiante, Pregunta, Pregreal y Aux. Las relaciones de mucho a mucho entre la Entidad Estudiante y la de Preguntas dan origen a las Entidades: Pregreal. Las Entidades Estudiante y Profesor forman una relación de uno a mucho.

Lo expresado y los Atributos, Llave Primaria, Llave Extranjera.- pueden ser vistos en la siguiente figura

Figura:Modelo de Datos de Valmat

  2.4.2 Diseño de la Interfaz Usuario de Valmat

     El  Diseño de la Interfaz de Usuario debe estar en correspondencia con las necesidades del cliente y los usuarios finales para ello el sistema debe cumplir con los requerimientos funcionales y no funcionales planteados a continuación:

     Requerimientos Funcionales.

RF1 – Autentificación de Valmat

RF2 – Actualizar, modificar, eliminar cuestionario de pregunta.

RF3 – Actualizar, modificar, eliminar lecciones de retroalimentación.

RF4 – Gestionar registros de cuentas de usuarios

RF5 – Consultar preguntas.

RF6 – Consultar lecciones para aclarar dudas.

RF7 -  Consultar ejercicios

RF8 -  Consultar valores

RF9 – Consultar acciones.

RF10- Consultar calificación de los estudiantes.

Requerimientos no Funcionales.

RNF1- Apariencia o interfaz Externa: la apariencia fue basada en los estándares definidos internacionalmente para una aplicación Web. La interfaz gráfica del sistema será legible, manteniendo un ambiente profesional, posibilitando una fácil navegación por el sistema. La interfaz será funcional y un entorno interactivo que le permita al usuario el intercambio de información con el sistema.

RNF2- Software : Sistema operativo windows 2000 o superior, plataforma Xamp.

RNF3- Hardware: Máquina Pentium 4 o superior.

RNF4- Restrinciones en el diseño e implementación:

·           Lenguaje de programación: PHP, HTML, Java script, My SQL.

·           Herramienta de desarrollo: Dreamweaver, Zend Delopment Enviromnent, Xara Web style 4.0, Xamp.

·           Restrinciones en arquitectura o el diseño: Arquitectura en tres capas.

RNF5-  Seguridad: se han definido tipos de usuarios para limitar la modificación de la información la que debe estar protegida del acceso no autorizado.

     Para referir al diseño de la Interfaz Usuario del Software realizado con el uso de artefactos del Lenguaje Unificado de Modelado (UML) definiremos actores, Casos de Usos, Diagramas de Casos de Uso y describiendo cada Caso de Uso textualmente sobre la base de su prototipo de Interfaz-Usuario.

Teniendo en cuenta la importancia que tiene organizar los aspectos del comportamiento en un modelo realizamos un diagrama de Casos de Usos, este muestra un conjunto de casos de uso y actores y sus relaciones

El modelo de Casos de Uso del Negocio es un modelo que describe los procesos de un negocio (casos de uso del negocio) y su interacción con elementos externos (actores), tales como socios y clientes, es decir, describe las funciones que el negocio pretende realizar y su objetivo básico es describir cómo el negocio es utilizado por sus clientes y socios.

Partes: 1, 2, 3, 4
 Página anterior Volver al principio del trabajoPágina siguiente