Portada Prolegómenos Resumen Índice Introducción Capitulo I Capitulo II Capitulo III Capitulo IV Capitulo V Conclusiones y
Recomendaciones Referencias Principal |
CAPÍTULO
III MARCO
TEORICO Para lograr entender el desarrollo óptimo del proyecto, es necesario
conocer diferentes aspectos conceptuales, los cueles sirven al lector de
referencia para interpretar y analizar los diferentes sistemas que componen
este proyecto. A continuación se explican estos conceptos y las herramientas
usadas para cumplir con el propósito mencionado. 3.1- Teoría
General de Sistemas Los
supuestos básicos de la teoría
general de sistemas
son: campos no-físicos del conocimiento
científico, especialmente en las ciencias no pueden ser descritas
significativamente en términos de sus elementos separados En
el desarrollo de un proyecto es importante tener en cuenta los conocimientos
básicos acerca de los sistemas, el cual se define como un conjunto de
elementos interrelacionados e interactuantes entre sí, con un fin de apoyar
las actividades de una empresa o negocio, hasta la forma más general
específicamente los sistemas de información, siendo esta última la esencia de
este proyecto. 3.1.1- Clasificación
General de Sistemas Los sistemas pueden clasificarse de las siguientes
maneras:
Reales:
Estos presumen de una existencia independiente del observador (quien los
puede descubrir). Ideales:
Estos son construcciones simbólicas, como los es el caso de la lógica y las matemáticas. Modelos:
Estos corresponden a abstracciones de la realidad, donde se combinan lo
conceptual con las características de los objetos. ·
Según su origen: Naturales:
Son aquellos en los cuales la mano del hombre no ha intervenido en ellos. Artificiales: Son aquellos sistemas, que son creados por el hombre o que esté
interferido en ellos. ·
Según el ambiente o grado de aislamiento: Abiertos:
Estos interactúan y reciben información del ambiente, así como también se dan
en su totalidad en las empresas. Cerrados:
Estos son herméticos al ambiente (hay que resaltar, que estos son solo
teóricos, por lo tanto no existen). 3.1.2-
Caracteristicas de los Sistemas Propósito u objetivo: Todo sistema tiene uno o algunos propósitos u
objetivos. Las unidades o elementos, como también las relaciones, definen una
distribución que trata siempre de alcanzar un objetivo. Globalismo o totalidad: todo sistema tiene una naturaleza orgánica, por la
cual una acción que produzca cambio en una de las unidades del sistema, con
mucha probabilidad producirá cambios en todas las otras unidades de éste. Entropía: Es
la tendencia que los sistemas tienen al desgaste, a la desintegración, para
el relajamiento de los estándares y para un aumento de la aleatoriedad. A
medida que la entropía aumenta, los sistemas se descomponen en estados más
simples. Homeostasis: Es el equilibrio dinámico entre las partes del sistema. Los sistemas
tienen una tendencia adaptarse con el fin de alcanzar un equilibrio interno
frente a los cambios externos del medio ambiente. Equifinalidad: Se refiere al hecho que un sistema vivo a partir de distintas
condiciones iniciales y por distintos caminos llega a un mismo estado final.
No importa el proceso que reciba, el resultado es el mismo. 3.1.3-
Enfoque de Sistemas En el desarrollo de un proyecto, el analista de sistema debe
tener un enfoque de lo que se desea hacer, por tal motivo, se debe realizar
un análisis de la situación que se presenta en la actualidad, engranada a una
función de planeación y diseño, para así definir y enfrentar un problema,
bien sea analizándolo o abarcando de todos los aspectos, es el enfoque
integral de la totalidad de los componentes o aspectos bajo estudio, así como
de sus interrelaciones, realizándose preguntas tales como:
¿Cuántos elementos distinguibles hay en este problema aparente?, ¿Qué relación
de causa-efecto hay entre ellas?, ¿Qué función es preciso cumplir en cada
caso? El enfoque de sistemas se centra constantemente en sus objetivos
totales. Por esta razón es indispensable definir primero los objetivos del
sistema y examinarlos continuamente. Si es necesario redefinirlos a medida
que se avanza en el diseño. 3.1.4- Características del Enfoque de Sistemas ·
Interdisciplinario
·
Cualitativo y
Cuantitativo a la vez ·
Organizado ·
Creativo ·
Teórico ·
Empírico ·
Pragmático (factible,
producible) El enfoque de sistemas se centra
constantemente en sus objetivos totales. Por tal razón es importante definir
primeros los objetivos del sistema y examinarlos continuamente y, quizás,
redefinirlos a medida que se avanza en el diseño. 3.1.5- Utilidad
y Alcance del Enfoque de Sistemas Podría ser aplicado en el estudio
de las organizaciones, instituciones y diversos entes planteando una visión
Inter, Multi y Transdisciplinaria que ayudará a analizar y desarrollar a la
empresa de manera integral permitiendo identificar y comprender con mayor
claridad y profundidad los problemas organizacionales, sus múltiples causas y
consecuencias. Así mismo, viendo a la organización como un ente integrado,
conformada por partes que se interrelacionan entre sí a través de una estructura
que se desenvuelve en un entorno determinado, se estará en capacidad de poder
detectar con la amplitud requerida tanto la problemática, como los procesos
de cambio que de manera integral, es decir a nivel humano, de recursos y
procesos, serían necesarios de implantar en la misma, para tener un
crecimiento y desarrollo
sostenibles y en términos viables en un tiempo
determinado. 3.1.6- Ciclo
de Vida de un Sistema Se
puede decir los sistemas tienen cuatro fases que son las siguientes: ·
Nacimiento: Surgen necesidades y se plantea la idea de crear un sistema. ·
Desarrollo: Es cuando ya se entra en la fase de creación del sistema. ·
Madurez:
Es el mantenimiento del sistema realizado. ·
Deterioro o muerte: Es la extinción del sistema realizado. Hay una quinta fase que se llama Renacimiento; la cual es posible solo
si después de extinto un sistema. Este mismo sistema, puede ser utilizado
otra vez, sea en otra empresa, o por alguna condición en especial. 3.2-
Análisis y Diseño de Sistemas En una organización o empresa, el
analista y diseño de sistemas es el proceso de estudiar su situación con la
finalidad de observar como trabaja y decir si es necesario realizar una
mejora; el encargado de realizar estas tareas es el analista de sistemas. Para planificar y desarrollar un sistema de
información, se debe abarcar dos fases que son: a.
El análisis de sistemas: Proceso donde se clasifican e interpretan los
hechos, se hace el diagnostico del problema y se emplea esta información con
el fin de recomendar mejoras al sistema. b.
El diseño de sistemas: Proceso donde se planifica, reemplaza o
complementa un sistema existente en una empresa. 3.2.1-
Herramientas para el desarrollo de Sistemas Para
el desarrollo del sistema, es necesario apoyarse en ciertas herramientas para
el proceso de formular las características que el sistema debe tener para satisfacer los
requerimientos detectados durante las actividades del análisis: a.
Herramientas para el Análisis. Este tipo de herramientas ayuda a los
especialistas en sistemas a documentar un sistema existente, sea éste manual
o automatizado, y a determinar los requerimientos de una nueva aplicación.
Esta herramienta incluye: Herramientas para la recolección de datos: Capturan detalles que describen los sistemas y
procedimientos en uso. Documentan procesos y actividades de decisión. Se
utilizan para desarrollar la tarea de identificar requerimientos. b.
Herramientas para Diagramación: Crean representaciones gráficas de sistemas y
actividades. Apoyan el dibujo y revisión de diagramas de flujo de datos e
iconos asociados con el análisis estructurado. Incluyen programas para
representar diagramas de flujo. c.
Herramientas para el diccionario: Registran y mantienen descripciones de los
elementos de los sistemas, tales como: grupos de datos, procesos y
almacenamiento de datos. Usualmente proporcionan la capacidad de examinar las
descripciones del sistema para decidir si son incompletas o inconsistentes. Muchos de ellas
incluyen la facilidad de reportar donde se utilizan los elementos de los
sistemas. d.
Herramientas para Diseño. Las herramientas para diseño apoyan el proceso de
formular las características que el sistema debe tener para satisfacer los
requerimientos detectados durante las actividades de análisis. Estas pueden
incluir: e.
Herramientas de especificaciones. Apoyan el proceso de formular las características
que debe tener una aplicación, tales como entradas, salidas, procesamientos y
especificaciones de control. Muchas incluyen herramientas para crear
especificaciones de datos. ·
Herramientas para presentación: Se utilizan para la descripción de la posición de
los datos, mensajes y encabezados sobre las pantallas de los terminales;
reportes y otros medios de entrada y salida. f.
Herramientas para el desarrollo. Estas herramientas ayudan al analista a
transformar los diseños en aplicaciones funcionales. Estas herramientas
incluyen: ·
Herramientas para ingeniería de Software: Apoyan el proceso de formular diseños de software,
incluyendo procedimientos y controles, así como la documentación
correspondientes. ·
Generadores de Código: Producen el código fuente y las aplicaciones a
partir de especificaciones funcionales bien articuladas. ·
Herramientas para pruebas: Apoyan la fase de evaluación de un sistema o de
partes del mismo contra las especificaciones. Incluyen facilidades para
examinar la correcta operación del sistema, así como el grado de perfección
alcanzando en comparación con las expectativas. 3.3- Sistemas
de Información Es
aquel que permite recopilar, administrar y manipular un conjunto de datos que
conforman la información necesaria para que los estamentos ejecutivos de una
organización puedan realizar una toma de decisiones informadamente, es decir,
es aquél conjunto ordenado de elementos que permiten manipular toda aquella
información necesaria para implementar aspectos específicos de la toma de
decisiones. El
objetivo de un Sistema de Información es proporcionar información que
facilite la ejecución de tareas, operacionales y funciones en una organización, sin embargo la toma de decisiones se
realiza en todos los niveles organizacionales desde la ejecución de tareas o
actividades básicas hasta la planificación de estrategias; por lo tanto el
Sistema de Información debe proporcionar información, en todos los niveles, a
personas autorizadas dentro y alrededor de la organización. 3.3.1- Características
de los Sistemas de Información Todo
Sistema de Información posee unas características comunes, las cuales se
mencionan a continuación: ·
Apoyar los
objetivos y estrategias de la empresa: El sistema de información ha de
suministrar a la organización toda la información necesaria para su correcto
funcionamiento. ·
Proporcionar
información para el control de la totalidad de actividades de la empresa,
pudiendo comprobar el cumplimiento de las metas establecidas por la
organización. ·
Adaptar las
necesidades de la información a la evolución de la empresa: conforme la
empresa va creciendo y desarrollándose, según nuevas necesidades de
información que han de ser satisfecha por el sistema de información, evolucionando éste último
adecuándose a las nuevas circunstancia del entorno. ·
Interactuar
con los diferentes agentes de la organización, permitiendo que éstos empleen
el sistema de información para satisfacer sus necesidades de un modo rápido y
eficaz. 3.3.2- Clasificación
de los Sistemas de Información Una
organización generalmente posee más de un tipo de Sistemas de Información.
Cada uno de ellos tiene sus propias características y cada uno juega un rol fundamental en el logro de la
satisfacción de necesidades de información de dicha organización. La
organización consta de 4 niveles básicos: un nivel operativo referido a las
operaciones diarias de la organización, un nivel de conocimiento que afecta a
los empleados encargados del manejo de la información., un nivel
administrativo (abarcaría a los gerentes intermedios de la organización) y un
nivel estratégico (la alta dirección de la empresa). Los Sistemas de
Información se agrupan según su utilidad en los diferentes niveles de la
organización empresarial. Según
K y J Laudon se establece la siguiente clasificación de los Sistemas de
Información: Sistema
de Procesamiento de Operaciones (SPO): Son sistemas informáticos encargados de la administración de aquellas
operaciones diarias de rutinas necesarias en la gestión empresarial. ·
Sistemas de Trabajo del Conocimiento (STC): Son aquellos sistemas de información encargados de
apoyar a los agentes que manejan información en la creación e integración de
nuevos conocimientos para la empresa (estaciones de trabajo para la
administración). ·
Sistemas de Automatización en ·
Sistemas de Información para ·
Sistemas para el soporte de decisiones (SSD): Son sistemas informáticos interactivos que ayudan
a los distintos usuarios en el proceso de loma de decisiones, a la hora de utilizar diferentes datos
y modelos para la resolución de problemas no estructurados (análisis de
costes, análisis de precios y beneficios, análisis de ventas por zona
geográfica). Son empleados por la gerencia intermedia de la organización. ·
Sistema de Soporte Gerencial (SSG): Sistemas de Información a nivel estratégico de la
organización diseñados para tomar decisiones estratégicas mediante el empleo de gráficos y comunicaciones
avanzadas. Son utilizados por la alta dirección de la organización con el fin
de elaborar la estrategia general de la empresa. 3.3.3- Componentes
de los Sistemas de Información Los
componentes o atributos de los sistemas de información básicamente son dos: Los Físicos: Que son las partes como las máquinas, encargadas
de el almacenaje, la velocidad del procesamiento, y de lograr mas Información
Vs Tiempo en el sistema. Los Humanos: Es simplemente la que se encarga la que se encarga
del Análisis y del control del sistema. 3.3.4- Estructuras
de los Sistemas de Información Es
simplemente tener los sub-sistemas en orden. Se puede estructurar un Sistema
de Información como una red de centros de información asociados a las
unidades funcionales de la empresa dependiendo de los flujos de datos e
información se crea una Red de Información entre las diferentes unidades
funcionales de la organización lo que lleva a la estructura de un Sistema de
Información. 3.3.5- Enfoques
para Diseñar Sistemas de Información. Existen
tres tipos de enfoque para el desarrollo de los Sistemas de Información los
cuales son los siguientes: ·
Independiente: Cada parte de la organización tiene su propio sistema, no depende de
los demás sistemas. ·
Centralizado: Son equipos, programas y datos que se encuentran centralizados, como
por ejemplo un centro de navegación de Internet, donde una sola PC, es decir
el servidor, es la que mantienes a las demás PC`s. ·
Distribuido: Combinación de los anteriores por lo que explotan las ventajas de
ambos; poseen una gran base de datos, pero se comunican entre sí, este podría
ser el mas óptimo, ya que presenta ventajas como: Reducción de costos,
Confiabilidad, Tiempo de respuesta satisfactorio, Facilidad extensión, pero también tiene
desventajas: Es complejo, Administración descentralizada, Seguridad de datos
difícil de resolver, Uniformidad de los recursos (tratar de tener una misma
plataforma, pero al tiempo es difícil conseguir los equipos), Complejidad
para controlar la privacidad, consistencia, integridad, respaldo y acceso de
los datos. 3.3.6- Funciones
de los Sistemas de Información Los
Sistemas de Información cumplen con funciones que permite que los mismos
tengan cada día más importancia dentro de las empresas que los utilizan,
dichas funciones se describen a continuación: ·
Procesar
transacciones: Guardar, almacenar
datos. ·
Definición
de archivos: Almacenar los datos
capturados de acuerdo a: - Estructura de almacenamiento adecuado. - A través de un método que facilite el
almacenamiento, actualización y acceso de datos. - Dispositivos apropiados: CD, diskettes. ·
Mantenimiento
de esos archivos: Revisión
periódica, actualizando la información; insertando, modificando y eliminando
datos. ·
Generar
reportes: Está produce la
información requerida por los diferentes centros de información de la empresa
a través de reportes en papel, en diskettes o mediante el envío de señales
electromagnéticas, digitales o analógicas a dispositivos
receptores terminales. Entre los diferentes tipos de reportes se tienen los
siguientes: - Reportes de errores: Es aquel tipo de
reporte que informa acerca de las fallas
presentadas por el sistema. - Reportes de actividad: Es aquel que
informa de las actividades normales. - Reportes regulares: Son Aquellos que se
realizan semanales, mensuales, anuales, etc. - Reportes de excepción: Son aquellos que
como su mismo nombre informan de situaciones excepcionales. - Reportes especiales: Son aquellos que
surgen en situaciones especiales. -Reportes no planeados: Estos son los que
sales sin previo aviso, surgen en situaciones especiales o excepcionales.
3.3.7- Actividades
que realiza un Sistema de Información Un
Sistema de Información realiza cuatro actividades básicas que son: Entrada,
Almacenamiento, Procesamiento y Salida de información. ·
Entrada de Información: Es el proceso mediante el cual el Sistema de
Información toma los datos que requiere para procesar la información. Las
entradas pueden ser manuales son aquellas que se proporcionan en forma
directa por el usuario o automáticas, son de datos o información que
provienen las unidades típicas de entrada de datos a las computadoras. Son
terminales las cintas magnéticas, las unidades de diskette, los códigos de
barras, los escáners, la voz, los monitores sensibles al tacto, el teclado y
el Mouse, entre otras. ·
Almacenamiento de Información: El almacenamiento es una de las actividades o
capacidades más importantes que tiene una computadora, ya que a través de
esta propiedad el sistema puede recordar la información guardada en la sección o proceso
anterior. Esta información suele ser almacenada en estructuras de información
denominadas archivos. La unidad típica de almacenamiento son los discos
magnéticos o discos duros, los discos flexibles o diskettes, memorias flash o
pen drive y los discos compactos (CD-ROM). ·
Procesamiento de información: Es la capacidad del Sistema de Información para
efectuar cálculos de acuerdo con una secuencia de operaciones preestablecida.
Estos cálculos pueden efectuarse con datos introducidos recientemente en el
sistema o bien con datos que están almacenados. Esta característica de los
sistemas permite la transformación de datos fuente en información que puede
ser utilizada para la toma de decisiones, lo que hace posible, entre
otras cosas, que un tomador de decisiones genere una proyección financiera a
partir de los datos que contiene un estado de resultados o un balance general
de un año base. ·
Salida de Información: La salida es la capacidad de un Sistema de
Información para sacar la información procesada o bien datos de entrada al
exterior. Las unidades típicas de salida son las impresoras, terminales,
diskettes, cintas magnéticas, la voz, los graficadotes y los protters, entre
otros. Es importante aclarar que la salida de un Sistema de Información puede
constituir la entrada a otro Sistema de Información. 3.3.8- Tipos
y Usos de los Sistemas de Información Durante
los próximos años, los Sistemas de Información cumplirán tres objetivos
básicos dentro de las organizaciones: ·
Automatización
de procesos operativos. ·
Proporcionar
información que sirva de apoyo al proceso de toma de decisiones. Los Sistemas de Información que logran la automatización
de procesos operativos dentro de una organización, son llamados
frecuentemente Sistemas Transaccionales, ya que su función primordial
consiste en procesar transacciones tales como pagos, cobros, pólizas,
entradas, salidas, etc. Por otra parte, los Sistemas de Información que
apoyan el proceso de toma de decisiones son los Sistemas de Soporte a A
continuación se mencionan las principales características de estos tipos de
Sistemas de Información: 3.3.9- Sistemas Transaccionales de los
Sistemas de Información Sus principales características son: A
través de éstos suelen lograrse ahorros significativos de mano de obra,
debido a que automatizan tareas operativas de la organización. Con frecuencia son el primer tipo de Sistemas de
Información que se implanta en las organizaciones. Se empieza apoyando las
tareas a nivel operativo de la organización. Son
intensivos en entrada y salida de información; sus cálculos y procesos suelen
ser simples y poco sofisticados. Tienen
la propiedad de ser recolectores de información, es decir, a través de estos
sistemas se cargan las grandes bases de información para su explotación
posterior. Son
fáciles de justificar ante la dirección general, ya que sus beneficios son
visibles y palpables. 3.4.0- Sistemas de Apoyo de las Decisiones Las principales características de
estos son: ·
Suelen introducirse
después de haber implantado los Sistemas Transaccionales más relevantes de la
empresa, ya que estos últimos constituyen su plataforma de información. ·
La información
que generan sirve de apoyo a los mandos intermedios y a la alta administración
en el proceso de toma de decisiones. ·
Suelen ser
intensivos en cálculos y escasos en entradas y salidas de información. Así,
por ejemplo, un modelo de planeación financiera requiere poca información de
entrada, genera poca información como resultado, pero puede realizar muchos
cálculos durante su proceso. ·
No suelen
ahorrar mano de obra. Debido a ello, la justificación económica para el desarrollo
de estos sistemas es difícil, ya que no se conocen los ingresos del proyecto
de inversión. ·
Suelen ser
Sistemas de Información interactivos y amigables, con altos estándares de diseño
gráfico y visual, ya que están dirigidos al usuario final. ·
Apoyan la toma
de decisiones que, por su misma naturaleza son repetitivos y de decisiones no
estructuradas que no suelen repetirse. Por ejemplo, un Sistema de Compra de Materiales
que indique cuándo debe hacerse un pedido al proveedor o un Sistema de Simulación
de Negocios que apoye la decisión de introducir un nuevo producto al mercado.
·
Estos sistemas
pueden ser desarrollados directamente por el usuario final sin la
participación operativa de los analistas y programadores del área de informática.
·
Este tipo de
sistemas puede incluir la programación de la producción, compra de materiales,
flujo de fondos, proyecciones financieras, modelos de simulación de negocios,
modelos de inventarios, etc. Sistemas
Estratégicos. Sus
principales características son: Su función primordial no es apoyar la automatización
de procesos operativos ni proporcionar información para apoyar la toma de
decisiones. Suelen desarrollarse en casa, es decir, dentro de
la organización, por lo tanto no pueden adaptarse fácilmente a paquetes
disponibles en el mercado. Típicamente
su forma de desarrollo es a base de incrementos y a través de su evolución
dentro de la organización. Se inicia con un proceso o función en particular y
a partir de ahí se van agregando nuevas funciones o procesos. Su función es lograr ventajas que los competidores
no posean, tales como ventajas en costos y servicios diferenciados con
clientes y proveedores. En este contexto, los Sistema Estratégicos son
creadores de barreras de entrada al negocio. Por ejemplo, el uso de cajeros
automáticos en los bancos en un Sistema Estratégico, ya que brinda ventaja
sobre un banco que no posee tal servicio. Si un banco nuevo decide abrir sus
puertas al público, tendrá que dar este servicio para tener un nivel similar
al de sus competidores. Apoyan
el proceso de innovación de productos y proceso dentro de la empresa debido a
que buscan ventajas respecto a los competidores y una forma de hacerlo en
innovando o creando productos y procesos. Un
ejemplo de estos Sistemas de Información dentro de la empresa puede ser un
sistema MRP (Manufacturing Resoure Planning) enfocado a reducir sustancialmente
el desperdicio en el proceso productivo, o bien, un Centro de Información que
proporcione todo tipo de información; como situación de créditos, embarques,
tiempos de entrega, etc. En este contexto los ejemplos anteriores constituyen
un Sistema de Información Estratégico si y sólo sí, apoyan o dan forma a la estructura
competitiva de la empresa. Por
último, es importante aclarar que algunos autores consideran un cuarto tipo
de sistemas de información denominado Sistemas Personales de Información, el cual está enfocado a incrementar la
productividad de sus usuarios. 3.4- Lenguajes
de programación Un
lenguaje de programación es un
lenguaje que puede ser utilizado para controlar el comportamiento de una
máquina, particularmente una computadora. Consiste en un conjunto de reglas
sintácticas y semánticas que definen su estructura y el significado de sus
elementos, respectivamente. Aunque muchas veces se usa lenguaje de programación
y lenguaje informático como si fuesen sinónimos, no tiene por qué ser así, ya
que los lenguajes informáticos engloban a los lenguajes de programación y a
otros más, como por ejemplo, el Hipertext Markup
Language (lenguaje de formato de documentos de hipertexto) (HTML). Un
lenguaje de programación permite a un programador especificar de manera precisa: sobre qué datos una
computadora debe operar, cómo deben ser estos almacenados y transmitidos y
qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a
través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural, tal como
sucede con el lenguaje. Los lenguajes
de programación son los utilizados para escribir programas de computadoras y
que puedan entendidos por ellas. 3.4.1- Características
de los lenguajes de programación ·
Son
transportables, es decir, significa que un programa escrito en un lenguaje de
alto nivel se puede escribir con poca o ninguna modificación en diferentes
tipos de computadoras. ·
Son
independientes de la máquina, es decir, las sentencias del programa no
dependen del diseño o hardware de una computadora específica. ·
Los programas
escritos en lenguaje de alto nivel no son entendibles directamente por la
máquina, necesitan ser traducidos a
instrucciones en lenguaje máquina, los programas que realizan esta traducción
se llaman compiladores, y los programas escritos
en un lenguaje de alto nivel se llaman programas fuentes. 3.4.2-Lenguaje
de programación interpretado “Personal Home Page” PHP Es
un lenguaje para programar scripts del lado del servidor, que se incrustan
dentro del código HTML. Este lenguaje es gratuito y multiplataforma. PHP es el acrónimo de Hipertext
Preprocesor. Es un lenguaje de programación del lado del servidor gratuito e
independiente de plataforma, rápido, con una gran librería de funciones y
mucha documentación. Un
lenguaje del lado del servidor es aquel que se ejecuta en el servidor Web, justo antes de que se envíe la
página a través de Internet al cliente. Las páginas que se ejecutan en el
servidor pueden realizar accesos a bases de datos, conexiones en red, y otras
tareas para crear la página final que verá el cliente. El cliente solamente
recibe una página con el código HTML resultante de la ejecución de 3.4.3- Características del Lenguaje de programación interpretado
“Personal Home Page” (PHP) Sus
principales características son: Gratuidad, Independencia de plataforma,
Rapidez y Seguridad. ·
Es
independiente de plataforma, puesto que existe un módulo de Lenguaje Personal Home Page (PHP) para cualquier servidor Web. Esto hace que cualquier
sistema pueda ser compatible con el lenguaje y significa una ventaja
importante, ya que permite portar el sitio desarrollado en PHP de un sistema
a otro sin prácticamente ningún trabajo. En el caso de estar montado sobre un
servidor Linux u Unix, es más rápido dado que se ejecuta en único espacio de
memoria y esto evita las comunicaciones entre componentes COM (Component
Object Model) para soportar comunicación entre objetos en ordenadores
distintos, en una LAN, WAN, o incluso en Internet;
que se realizan entre todas las tecnologías. ·
Seguridad,
en muchas ocasiones PHP se encuentra instalado sobre servidores Unix o Linux,
que son de sobra conocidos como más veloces y seguros, permite configurar el
servidor de modo que se permita o rechacen diferentes usos, lo que puede
hacer al lenguaje más o menos seguro dependiendo de las necesidades de cada
cual. ·
Esta
desarrollado en política de código abierto. ·
Compatibilidad
con las bases de datos más comunes, como el Sistema de Gestión de Base de
Datos (MySQL), MSQL, Oracle, Informix, y ODBC, por ejemplo. Incluye funciones
para el envío de correo electrónico, upload de archivos, crear dinámicamente
en el servidor imágenes en formato GIF, incluso animadas y una lista
interminable de utilidades adicionales. 3.4.4- Para que sirve el Lenguaje
de programación interpretado “Personal Home Page” (PHP) Para
el desarrollo de aplicaciones en entorno web. Gracias a la extensa librería
de funciones con la que está dotado, que cubre desde cálculos matemáticos
complejos hasta tratamiento de conexiones de red. ·
Procesar
la información de formularios. ·
Generar
páginas con contenidos dinámicos, o enviar y recibir cookies. 3.5- Lenguaje de Programación “Java Script” Es
un lenguaje de programación utilizado para crear pequeños programas
encargados de realizar acciones dentro del ámbito de una página Web. Se
trata de un lenguaje de programación del lado del cliente, porque es el
navegador el que soporta la carga de pensamiento. Gracias a su compatibilidad con la mayoría de los
navegadores modernos, es el lenguaje de programación del lado del cliente más
utilizado. 3.5.1- Características lenguaje de Programación “Java Script” ·
Es
un lenguaje bastante fácil de entender. ·
Es
un lenguaje interpretado orientado a las páginas Web, con una sintaxis
semejante a la del lenguaje Java. ·
Lenguaje
de programación que aporta la potencia de cálculo del navegador para aumentar
la usabilidad de aplicaciones Web con técnicas avanzadas como AJAX o JCC. ·
Lenguaje
de programación del lado del cliente, porque es el navegador el que soporta
la carga de procesamiento. ·
Permite
la programación de pequeños scripts, pero también de programas más grandes,
orientados a objetos, con funciones, estructuras de datos complejas, etc. ·
Java
Script pone a disposición del programador todos los elementos que forman la
página Web, para que éste pueda acceder a ellos y modificarlos dinámicamente. 3.5.2- -Para que Sirve el lenguaje de Programación “Java Script” Crear
efectos especiales sobre páginas Web, es decir, para crear contenidos
dinámicos y elementos de la página que tengan movimiento, cambien de color o
cualquier otro dinamismo. Permite
ejecutar instrucciones como respuesta a las acciones del usuario, con lo que
se puede crear páginas interactivas con programas con programas como
calculadoras, agendas, o tablas de cálculo. 3.6- Lenguaje de programación “Hipertext Markup Language” (HTML)
El HTML,
acrónimo inglés de Hipertext Markup Language (lenguaje de formato de
documentos de hipertexto), es un lenguaje de marcas diseñado para estructurar
textos y presentarlos en forma de hipertexto, que es el formato estándar de
las páginas Web. HTML es el lenguaje con el que se definen las páginas Web,
son un conjunto de etiquetas que sirven para definir la forma en la que
presenta el texto y otros elementos de la página. Es decir, HTML no es propiamente un lenguaje de programación
como C++, Visual Basic, etc., sino un sistema de etiquetas. HTML no presenta
ningún compilador, por lo tanto algún error de sintaxis que se presente éste
no lo detectará y se visualizara en la forma como éste lo entienda. efectos
de transición al estilo de anuncio publicitario giratorio entre página y
página. 3.6.1- Características
del “Hipertext Markup Language” (HTML) ·
El HTML es un
lenguaje de programación muy fácil de aprender. ·
Este lenguaje
se escribe en un documento de texto, por eso se necesita un editor de textos
para escribir una página Web. ·
HTML es un
formato de archivo. 3.6.2- Para
que sirve el lenguaje “Hipertext Markup Language” (HTML) Para
crear páginas Web a través de una serie de instrucciones que interpreta el
navegador y mostrar la página en la forma adecuada. 3.7-Servidor
Web Un servidor
Web es un programa que implementa el protocolo HTTP (hypertext
transfer protocol). Este protocolo está diseñado para lo que llamamos
hipertextos, páginas web o páginas HTML (hypertext markup language): textos complejos con enlaces, figuras, formularios,
botones y objetos incrustados como animaciones o reproductores de música. Un
servidor Web también se encarga de mantenerse a la espera de peticiones HTTP llevada a cabo por
un cliente HTTP que solemos
conocer como navegador. El
navegador realiza una petición al servidor y éste le responde con el
contenido que el cliente solicita. 3.7.1- Características
del Servidor Web ·
Aplicaciones
en el lado del servidor: El servidor Web ejecuta la aplicación; ésta, una vez
ejecutada, genera cierto código HTML; el servidor toma este código recién
creado y lo envía al cliente por medio del protocolo HTML. ·
Cuando es
utilizado con aplicaciones en el lado del cliente: El cliente Web es el
encargado de ejecutarlas en la máquina del usuario, el servidor proporciona
el código de las aplicaciones al cliente y éste, mediante el navegador, las
ejecuta. 3.7.2- Servidor
Internet “Information Services” (o IIS) Internet Information Services (o Server),
IIS, es una serie de servicios para los ordenadores que funcionan con
Windows. Originalmente era parte del Option Pack para Windows NT.
Luego fue integrado en otros sistemas operativos de Microsoft destinados a ofrecer
servicios, como Windows 2000 o Windows Server 2003. Windows XP Profesional
incluye una versión limitada de IIS. Los servicios que ofrece son: FTP, SMTP,
NNTP y HTTP/HTTPS. Este
servicio convierte a un ordenador en un servidor de Internet o Intranet es
decir que en las computadoras que tienen este servicio instalado se pueden
publicar páginas Web tanto local como remotamente (servidor Web). Este
servicio convierte a un ordenador en un servidor de Internet o Intranet es
decir que en las computadoras que tienen este servicio instalado se pueden
publicar páginas Web tanto local como remotamente (servidor Web). El
servidor Web se basa en varios módulos que le dan capacidad para procesar
distintos tipos de páginas, por ejemplo Microsoft incluye los de Active
Server Pages (ASP) y ASP.NET. También pueden ser incluidos los de otros
fabricantes, como PHP o Perl. 3.8- Lenguaje El Lenguaje de Consulta
Estructurado Structured Query Language (SQL), es
un lenguaje declarativo de acceso a bases de datos relacionales que permite
especificar diversos tipos de operaciones sobre las mismas. Una de sus
características es el manejo del álgebra y el cálculo relacional permitiendo
lanzar consultas con el fin de recuperar información de interés de una base
de datos, de una forma sencilla. Es un lenguaje de cuarta generación (4GL). El
SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y
potencia de los sistemas relacionales permitiendo gran variedad de
operaciones sobre los mismos. Es un lenguaje declarativo de alto nivel o de
no procedimiento, que gracias a su fuerte base teórica y su orientación al
manejo de conjuntos de registros, y no a registros individuales, permite una
alta productividad en codificación. De esta forma una sola sentencia puede
equivaler a uno o más programas que utilizasen un lenguaje de bajo nivel
orientado a registro. 3.8.1- Estructura
básica del “Structured Query Language” (SQL) Estructura básica de una expresión para consulta SQL consta de tres
Cláusulas: SELECT: Se usa para listar los atributos que se
desean en el resultado de una consulta. FROM: Lista las relaciones que se van a examinar en
la evaluación de la expresión. WHERE: Consta de un predicado que implica atributos
de las relaciones que aparecen en la cláusula FROM. Por ejemplo: SELECT Nombre From Tabl_fich_personales where Edad
>=18; Muestra el Campo “Nombre” de todos los individuos mayores de 18 años de la tabla “tabl_fich_personales” 3.8.2- Diagrama Entidad Relación Este
tipo de diagrama, son aquellos usados para determinar las llaves requeridas
para un registro o relación de bases de datos. Los tres lineamientos usados
al momento de diseñar archivos maestros o relaciones de bases de datos son
los siguientes: ·
Cada entidad
de dato creada debe crear un archivo maestro. No se deben combinar dos
entidades distintas en un solo archivo. ·
Un campo de
dato específico debe existir solamente en un archivo maestro. ·
Cada archivo
maestro o relación de base de datos, debe tener programas para crear, leer,
actualizar y borrar. 3.9- Bases de Datos Muchos Sistemas de Información en
la actualidad manejan cualquier cantidad y tipo de información, para ello es
necesario el uso de una herramienta en particular que
permita agrupar la información y relacionarla según las características del
sistema como es el caso de una base de
datos. Es una colección de datos
interrelacionados en un conjunto exhaustivo sin redundancias perjudiciales e innecesarias;
su finalidad es servir a una aplicación o más, de la mejor manera posible;
los datos se almacenan de modo que resultan independientes de los programas
que los usan; se emplean métodos bien determinados para incluir nuevos datos
y para modificar o extraer los datos almacenados. El
desarrollo tecnológico de campos como la informática y la electrónica,
permiten que la mayoría de las bases de datos tengan formato electrónico, que
ofrece un amplio rango de soluciones al problema de almacenar datos. 3.9.1- Creación
de una Base de Datos Los
objetivos del diseño de una base de datos son: ·
Representar
los datos que requieren las principales áreas de aplicación y los grupos de
usuarios, y representar las relaciones entre dichos datos. ·
Proporcionar
un modelo de datos que soporte las transacciones que se vayan a realizar
sobre los datos. A
continuación se describen con más detalle los objetivos de cada una de las
etapas del diseño de bases de datos: diseño lógico y diseño físico. Un Modelo de Diseño de Soluciones esta compuesto por
diferentes perspectivas. Una perspectiva es una forma de ver algo, lo que en
este caso es el proceso
de diseño de la aplicación. Se utiliza para centrarse en el proceso mismo del
diseño. Estas perspectivas son: ·
Diseño
Conceptual ·
Diseño Lógico ·
Diseño Físico Las perspectivas son usadas para
identificar los requerimientos técnicos y de negocios para la aplicación. El
resultado de utilizar este modelo es una mejor distribución de los recursos
del proyecto, lo que puede facilitar mucho las cosas. - Diseño
Conceptual Es donde se origina el concepto
inicial de la solución. Es en este diseño donde el equipo de desarrollo trata
de entender las necesidades de los usuarios de la solución. Escenarios y
modelos son usados para suavizar este entendimiento de manera que cada una de
las entidades involucradas (equipos de desarrollo, clientes y usuarios) comprendan
que es lo que se necesita de la solución. El proceso de Diseño Conceptual
esta compuesto de las siguientes tareas para determinar y substanciar los
requerimientos de la aplicación: Identificación
de usuarios y sus roles ·
Conseguir
información de los usuarios ·
Validación del
diseño - Diseño Lógico Este
diseño toma la información brindada por el Diseño Conceptual y la aplica al
conocimiento técnico. Mientras que los requerimientos y necesidades de los
clientes y usuarios son identificados en la perspectiva de diseño previa, es
en éste diseño que la estructura y comunicación de los elementos de la
solución son establecidos. Los objetos y servicios, la interfaz de usuario y
la base de datos lógica son el conjunto de elementos identificados y
diseñados en esta perspectiva. En
esta etapa no interesan los detalles de implementación física, tales como
donde se van a alojar ciertos componentes o cuantos servidores están
involucrados. El único interés es crear un modelo de abstracción de alto
nivel, independiente de cualquier modelo físico. Este
alto nivel de abstracción permite distanciarse de muchos detalles recolectados
en la fase conceptual y organizarlos sin tener que analizar los detalles
particulares de cada uno de los requerimientos. Además hace posible centrarse
en un requerimiento específico a la vez sin perder la visión de la aplicación
como un todo. El Diseño Lógico es el proceso de
tomar los requerimientos de usuario obtenidos en el Diseño Conceptual y
mapearlos a sus respectivos objetos de negocios y servicios. - Organización
de las Estructuras Lógicas Una vez que se han identificado
los objetos, es necesario organizarlos según los servicios que proveen, y las
relaciones que tienen unos con otros. Existen muchas consideraciones que
deben ser tomadas en cuenta al diseñar una aplicación en tres capas que
proporciona ciertos beneficios como ser escalabilidad, disponibilidad y
eficiencia. Cuando se diseñan los objetos se debe dejar que estos factores
dirijan la manera de organizar las estructuras lógicas. A pesar de que estos
conceptos también se aplican al Diseño Físico, tienen igualmente importancia
en esta etapa de Diseño Lógico. Es bueno definir que tan granular tiene que
ser los componentes. Si estos mantendrán un estado o no con el fin de
maximizar la escalabilidad, estos y otros elementos deben analizarse
detenidamente para obtener un buen Diseño Lógico. - Del
Diseño Conceptual al Diseño Lógico Crear un Diseño Lógico consiste en
mapear a objetos las reglas de negocios y los requerimientos de usuario
identificados en el Diseño Conceptual. Estos objetos pueden ser más
fácilmente identificados de los requerimientos de usuario por los nombres o
sustantivos, los servicios que proveen estos objetos representan las reglas y
requerimientos del dominio del negocio que se está modelando y son
reconocidos por verbos, para reconocer las propiedades o atributos de un
objeto se deben identificar los datos asociados al objeto. Cuando se diseñan los objetos es
importante que estos se centren en una sola cosa en lo posible, en otras
palabras los objetos deberían solamente proveer servicios relacionados con un
único propósito. La funcionalidad de un objeto se
llama granularidad. Mientras su granularidad es mas fuerte el objetos presta
muchos servicios, mientras más débil es su granularidad menos servicios
presta. Lo óptimo es que el objeto tenga granularidad débil. - Objetivos del diseño lógico El
objetivo principal es transformar el esquema conceptual de datos en el
esquema lógico de datos. Otros
objetivos del diseño lógico son: ·
Eliminar
redundancias ·
Conseguir
máxima simplicidad ·
Evitar cargas
suplementarias de programación para conseguir; una estructura lógica adecuada
un equilibrio entre los requisitos de usuario y la eficiencia ·
Diseño lógico
con la máxima portabilidad - Diseño Físico Es
donde los requerimientos del diseño conceptual y lógico son puestos en una
forma tangible. Es en este diseño que las restricciones de la tecnología son
aplicadas al Diseño Lógico de la solución. El Diseño Físico define cómo los
componentes de la solución, así como la interfaz de usuario y la base de
datos física trabajan juntos. Desempeño, implementación, ancho de banda,
escalabilidad, adaptabilidad y mantenimiento son todos resueltos e
implementados a través del Diseño Físico. Ya que esta perspectiva transforma
los diseños previos en una forma concreta, es posible estimar qué recursos,
costos o programación de tiempo serán necesarios para concretar el proyecto. - Objetivos del diseño físico ·
Minimizar el
tiempo de respuesta, tiempo entre la introducción de una transacción T de BD
y la obtención de respuesta. ·
Maximizar la productividad
de las transacciones. ·
Optimizar el
aprovechamiento del espacio, cantidad de espacio ocupado por ficheros de ·
En general se
especifica límites promedio y del peor de los casos de cada parámetro
anterior como parte de los requisitos de rendimiento del sistema. Durante el diseño físico hay que tener en
cuenta: ·
Que el
rendimiento depende del tamaño y número de registros en los ficheros. ·
Estimar
tamaño_registro y num_registros para cada fichero. ·
Estimar
crecimiento de cada fichero: "cómo y cuánto va a crecer" en tamaño
de registro, o en número de registros. ·
El uso que se
espera dar a la base de datos. ·
Estimar
patrones de actualización y obtención de datos para cada fichero,
considerando todas las transacciones. ·
Diseño Conceptual En
esta etapa se debe construir un esquema de la información que se usa en la
empresa, independientemente de cualquier consideración física. A este esquema
se le denomina esquema conceptual. El esquema conceptual se puede utilizar
para que el diseñador transmita a la empresa lo que ha entendido sobre la
información que éste maneja. ·
Diseño Lógico El
diseño lógico es el proceso de construir un esquema de la información que
utiliza la empresa, basándose en un modelo de base de datos específico,
independientemente del Sistema de Gestión de Base de Datos (SGBD) concreto
que se vaya a utilizar y de cualquier otra consideración física. En esta
etapa, se transforma el esquema conceptual en un esquema lógico que utilizará
las estructuras de datos del modelo de bases de datos en el que se basa el
SGBD que se vaya a utilizar. ·
Diseño Físico Es
el proceso de producir la descripción de la implantación de la base de datos
en estructuras de almacenamiento y métodos de acceso que garanticen un acceso
eficiente a los datos. Para llevar esta etapa, se debe haber cuál es el SGBD
que se va a utilizar, ya que el esquema físico se adapta a él. 3.9.2- Componentes
principales de una base de datos Una
base de datos tiene cuatro componentes principales que son: ·
Datos.
Los datos son la base de dato propiamente dicha. ·
Hardware.
El hardware se refiere a los dispositivos de almacenamiento en donde reside
la base de datos, así como a los dispositivos periféricos (unidad de control,
canales de comunicación, etc.) necesarios para su uso. ·
Software.
Está constituido por un conjunto de programas que se conoce Sistema Manejador
de Base de Datos (DMBS: Data Base Management System). Este sistema maneja
todas las solicitudes formuladas por los usuarios a la base de datos. ·
Usuarios.
Existen tres clases de usuarios relacionados con una base de datos: - El programador de aplicaciones, quien crea
programas de aplicación que utilizan las bases de datos. - El usuario final, quien accesa la base de datos
por medio de un lenguaje de consulta o de programas de aplicación. El
administrador de loa base de datos (DBA): Data Base Administrador), quien se
encarga del control general del Sistema de Base de Datos. 3.9.3- Ventajas
en el uso de Bases de Datos Las ventajas del uso de las bases de datos sobre
los archivos clásicos, han sido fundamentadas en tres direcciones diferentes
que son: Para los usuarios, para los datos y para los resultados. ·
Globalización
de la información: Permite a los diferentes usuarios considerar la
información como un recurso corporativo que carece de dueños específicos. ·
Eliminación de
información redundante: Información Duplicada. ·
Permite
compartir información: Varios sistemas o usuarios pueden utilizar una misma
entidad. ·
Facilidad de
Cambios: La base de datos puede crecer y cambiar sin interferir con las
formas establecidas de utilizar datos. ·
Permite
mantener la integridad en la información: Solo se almacena la información
correcta. ·
Independencia
de datos: La independencia de datos implica un divorcio entre programas y
datos; es decir, se pueden hacer cambios a la información que contiene la
base de datos o tener acceso a la base de datos de diferente manera, sin
hacer cambios en las aplicaciones o en los programas. ·
Economía:
Representa un ahorro sustancial debido a la factibilidad de la minimización
de los costos que se generan para hacer cambios a programas y almacenamientos
de información. 3.9.4- Sistema
Manejador de Bases de Datos (DBMS) Es
un conjunto de programas que se encargan de manejar la creación y todos los
accesos a las bases de datos. Se
compone de un lenguaje de definición de datos (DDL: Data Definition
Language), de un lenguaje de manipulación de datos (DML: Data Manipulation
Language) y de un lenguaje de consulta (SQL: Structured quero Language). El
lenguaje de definición de datos (DDL) es utilizado para describir todas las
estructuras de información y los programas que se usan para construir,
actualizar e introducir la información que contiene una base de datos. El
lenguaje de manipulación de datos (DML) es utilizado para escribir programas
que crean, actualizan y extraen información de las bases de datos. El
lenguaje de consulta (SQL) es empleado por el usuario para extraer
información de la base de datos. El lenguaje de consulta permite al usuario
hacer requisiciones de datos sin tener que escribir un programa, usando
instrucciones como el SELECT, el PROJECT y el JOIN. La
secuencia conceptual de operaciones que ocurren para acceder cierta
información que contiene una base de datos es la siguiente: El
usuario solicita cierta información contenida en la base de datos, el DBMS
intercepta este requerimiento y lo interpreta, realiza las operaciones
necesarias para acceder y/o actualizar la información solicitada. 3.9.5- Tipos
de modelos de Datos Un
modelo de datos es aquel que
describe de una forma abstracta cómo se representan los datos, sea en una
empresa, en un sistema de información o en un sistema de gestión de base de
datos. Básicamente consiste en una descripción de algo conocido como contenedor de datos (algo en donde
se guarda la información), así como de los métodos para almacenar y recuperar
información de esos contenedores. Un
modelo de datos consiste en: ·
Objetos
(entidades que existen y que se manipulan). ·
Atributos
(características básicas de estos objetos). ·
Relaciones
(forma en que enlazan los distintos objetos entre si). El modelo jerárquico La
forma de esquematizar la información se realiza a través de representaciones
de padre/hijo, puede representar dos tipos de relaciones entre los datos:
relaciones de uno a uno “si el padre de la estructura de información tiene un
solo hijo y viceversa, si el hijo tiene solamente un padre y relaciones de uno a muchos, si el padre tiene más de un hijo,
aunque cada hijo tenga un solo padre”. El modelo de red El
modelo de red evita redundancia en la información, a través de la
incorporación de un tipo de registro denominado el conector. El modelo relacional En
este modelo toda la información se representa a través de arreglos
bidimensionales o tablas. Estas operaciones básicas son: Seleccionar reglones
de alguna tabla (SELECT), seleccionar columnas de alguna tabla (PROJECT),
unir o juntar información de varias tablas (JOIN). 3.9.6- Arquitectura
de los Sistemas de Bases de Datos Existen tres características importantes inherentes
a los sistemas de bases de datos: la separación entre los programas de
aplicación y los datos, el manejo de múltiples vistas por parte de los
usuarios y el uso de un catálogo para almacenar el esquema de la base de
datos. La
arquitectura de un sistema de base de datos se divide en tres niveles
comunes, nivel interno, conceptual y externo. ·
Nivel Interno: Describe la estructura física de la base de datos mediante un esquema
interno. Este esquema se especifica mediante un modelo físico y describe todos los detalles para el
almacenamiento de la base de datos, así como los métodos de acceso. ·
Nivel conceptual: Describe la estructura de toda la base de datos para una comunidad de
usuarios (todos los de una empresa u organización), mediante un esquema
conceptual. Este esquema oculta los detalles de las estructuras de
almacenamiento y se concentra en describir entidades, atributos, relaciones,
operaciones de los usuarios y restricciones. En este nivel se puede utilizar
un modelo conceptual o un modelo lógico para especificar el esquema. ·
Nivel Externo: Describen varios esquemas externos o vistas de usuario. Cada esquema
externo describe la parte de la base de datos que interesa a un grupo de
usuario determinado y oculta a ese grupo el resto de la base de datos. En
este nivel se puede utilizar un modelo conceptual o un modelo lógico para
especificar los esquemas. 3.9.7- Sistema
de Gestión de Bases de Datos (SGDB) Un
SGBD es un conjunto coordinado de programas, procedimientos, lenguajes; que
suministran, tanto a los usuarios no informáticos como a los analistas,
programadores o al administrador, los medios necesarios para describir,
recuperar y mantener los datos almacenados en la base de datos, manteniendo
su integridad, confidencialidad y seguridad. Posee dos partes: Gestor de
- Interacción con el gestor de archivos. - Implantación de la integridad. - Implantación de la seguridad. - Copia de seguridad y recuperación. - Control de concurrencia. Administrador
de - Definición de esquema. - Definición de la estructura de almacenamiento y
el método de acceso. - Modificación del esquema y de la organización
física. - Concesión de autorización para el acceso a los
datos. - Especificación de las restricciones de seguridad. Ulman
en 1988 definió como características comunes de los SGBD las siguientes: - Capacidad para administrar datos persistentes y
acceder a grandes cantidades de estos
datos de forma eficiente y segura. - Apoyo para
modelos abstractos de datos. - Apoyo para la administración de transacciones en
entornos multiusuarios. - Apoyo para los controles acerca del acceso y
propiedad de los datos. - Apoyo para la verificación de datos y para la comprobación
de congruencias. - Apoyo para la recuperación congruente de datos
después de fallas del sistema y del hardware, lo cual minimiza la pérdida de
datos. Sobre
la forma en que se almacenará la información en una aplicación, hay que tomar
una decisión cuando se desarrolla un sistema. Cualquier decisión tiene sus
ventajas e inconvenientes, la tarea del desarrollador es analizar en su
aplicación las características que posee tomando como base los criterios
antes expuestos y poner todas las respuestas en una balanza. a)
Un SGBD debe
proporcionar a los usuarios la capacidad de almacenar datos en la base de
datos, acceder a ellos y actualizarlos. Esta es la función fundamental de un
SGBD y por supuesto, el SGBD debe ocultar al usuario la estructura física interna
(la organización de los ficheros y las estructuras de almacenamiento). b)
Un SGBD debe
proporcionar un catálogo en el que se almacenen las descripciones de los
datos y que sea accesible por los usuarios, este c)
catálogo es
los se denomina diccionario de datos y contiene información que describe los
datos de la base de datos (metadatos). Normalmente un diccionario de datos almacena lo
siguiente: .- Nombre, tipo y tamaño de los datos. .- Nombre de las relaciones entre los datos. .- Restricciones de integridad sobre los datos. .- Nombre de los usuarios autorizados a acceder a
la base datos .- Esquema externo, conceptuales e internos, y
correspondencia entre los esquemas. .- Estadísticas de utilización, tales como la
frecuencia de las transacciones y el número de
acceso realizados a los objetos de la
base de datos. 3.9.8- Sistema
de Gestión de Datos Relacional (SGBDR) El
modelo relacional se basa en el concepto matemático denominado “relación”,
que gráficamente se puede representar como una tabla, los datos y las
relaciones existentes entre los datos se representan mediante estas
relaciones matemáticas, cada una con cada nombre que es único y con un
conjunto de columnas. En
el modelo relacional la base de datos es percibida por el usuario como un
conjunto de tablas. Esta percepción es sólo a nivel lógico, ya que a nivel
físico puede estar implementada mediante distintas estructuras de almacenamiento.
Se dice que el modelo relacional es declarativo (se especifica qué datos se
han de obtener) y los modelos de red y jerárquico son navegaciones (se
especifica cómo se deben obtener los datos). ·
Ofrecen
sistemas simples y eficaces para representar y manipular datos. ·
Se basan en un
modelo con sólidas bases teóricas. Son responsables de: ·
Mantener las
relaciones entre la información y ·
Asegurarse de
que la información es almacenada correctamente, es decir, que las reglas que
definen las relaciones entre los datos no sean violadas. ·
Recuperar toda
la información en un punto conocido en caso de que el sistema falle. 3.10- “Sistema de Gestión de Base de Datos” MySQL Sistema de Gestión de Base de Datos (MySQL) es un sistema de gestión de
base de datos relacional, multihilo y multiusuario con más de
seis millones de instalaciones[].
MySQL AB
desarrolla MySQL como software libre en un esquema de licenciamiento dual.
Por un lado lo ofrece bajo Sistema de Gestión de Base de Datos (MySQL)
es un sistema de administración relacional de bases de datos. Una base de datos relacional
archiva datos en tablas separadas en vez de colocar todos los datos en un
gran archivo. Esto permite velocidad y flexibilidad. Las tablas están
conectadas por relaciones definidas que hacen posible combinar datos de
diferentes tablas sobre pedido. Este gestor de base de datos es,
probablemente, el gestor más usado en el mudo del software libre, debido a su
gran rapidez y facilidad de uso. Esta gran aceptación es debida, en parte, a
que existen infinidad de librerías y otras herramientas que permiten su uso s
través de gran cantidad de lenguajes de programación, además es de su fácil
instalación y configuración. 3.10.1- Aplicaciones
del “Sistema de Gestión de Base de Datos” (MySQL) MySQL
es muy utilizado en aplicaciones web como MediaWiki o
Drupal, en
plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas
de seguimiento de errores como Bugzilla. Su popularidad como aplicación web
está muy ligada a PHP, que a menudo aparece en combinación con MySQL. MySQL
es una base de datos muy rápida en la lectura cuando utiliza el motor no
transaccional MyISAM,
pero puede provocar problemas de integridad en entornos de alta concurrencia
en la modificación. En aplicaciones web hay baja concurrencia en la
modificación de datos y en cambio el entorno es intensivo en lectura de datos, lo que hace a
MySQL ideal para este tipo de aplicaciones. 3.10.2- Especificaciones
de las Plataformas para el “Sistema de Gestión de Base de Datos” (MySQL) MySQL
funciona sobre múltiples plataformas, incluyendo AIX, BSD, FreeBSD, HP-UX,
GNU/Linux, Mac OS X, NetBSD, Novell Netware, OpenBSD, OS/2 Warp, QNX, SGI
IRIX, Solaris, SunOS, SCO OpenServer, SCO UnixWare, Tru64, Windows 95,
Windows 98, Windows NT, Windows 2000, Windows XP, Windows Vista y otras
versiones de Windows. También existe MySQL para OpenVMS en
http://www.pi-net.dyndns.org/anonymous/kits/ 3.10.3- Características
del “Sistema de Gestión de Base de Datos”
(MySQL) ·
Un amplio
subconjunto de ANSI SQL 99, y varias extensiones. ·
Soporte a
multiplataforma ·
Procedimientos
almacenados ·
Triggers ·
Cursors ·
Vistas
actualizables ·
Soporte a
VARCHAR ·
INFORMATION_SCHEMA
·
Modo Strict ·
Soporte X/Open
XA de transacciones distribuidas; transacción en dos fases como parte de
esto, utilizando el motor InnoDB de Oracle ·
Motores de
almacenamiento independientes (MyISAM para lecturas rápidas, InnoDB para transacciones e
integridad referencial) ·
Transacciones
con los motores de almacenamiento InnoDB, BDB Y Cluster; puntos de
recuperación(savepoints) con InnoDB ·
Soporte para
SSL ·
Query caching ·
Sub-SELECTs (o SELECTs anidados) ·
Replication with one master per slave, many slaves
per master, no automatic support for multiple masters per slave. ·
Indexing y buscando campos de texto completos usando el
motor de almacenamiento MyISAM ·
Embedded
database library ·
Soporte
completo para Unicode
·
Conforme a las
reglas ACID usando los motores InnoDB, BDB y Cluster ·
Shared-nothing clustering through MySQL Cluster 3.10.4-
Tipos de Compilación para el “Sistema
de Gestión de Base de Datos” (MySQL) Hay
tres tipos de compilación del servidor MySQL: ·
Estándar: Los binarios estándar de MySQL son los
recomendados para la mayoría de los usuarios, e incluyen el motor de
almacenamiento InnoDB. ·
Max (No se
trata de MaxDB, que es una cooperación con SAP): Los binarios incluyen características adicionales
que no han sido lo bastante probadas o que normalmente no son necesarias. ·
MySQL-Debug: Son binarios que han sido compilados con
información de depuración extra. No debe ser usada en sistemas en producción
porqué el código de depuración puede reducir el rendimiento. 3.10.5- Uso
del “Sistema de Gestión de Base de Datos” (MySQL) El
MySQL se usa porque es muy rápido, confiable y fácil de usar. MySQL
Server también tiene un práctico set de características desarrollado en
cercana cooperación con nuestros usuarios. MySQL Server fue desarrollado inicialmente para manejar grandes bases de datos
mucho más rápidamente que las soluciones existentes y ha sido usado
exitosamente por muchos años en ambientes de producción de alta demanda. A
través de constante desarrollo, MySQL Server ofrece hoy una rica variedad de
funciones. Su conectividad, velocidad y seguridad hacen a MySQL altamente
satisfactorio para accesar bases de datos en Internet. 3.1.1-
Servidor de Página Web “Apache” Servidor
web de código abierto. Su desarrollo comenzó en febrero de 1995, por Rob
McCool, en una tentativa de mejorar el servidor existente en el NCSA. La
primera versión apareció en enero de 1996, el Apache 1.0. Hacia el 2000, el
servidor Web Apache era el más extendido en el mundo. El nombre «Apache» es
un acrónimo de «a patchy server» -un servidor de remiendos-, es decir un
servidor construido con código preexistente y piezas y parches de código. Es
la auténtica «kill app» del software libre en el ámbito de los servidores y
el ejemplo de software libre de mayor éxito, por delante incluso del kernel
Linux. Desde hace años, más del 60% de los servidores web de Internet emplean
Apache.
Smarty es un motor de plantillas escrito en PHP y pensado
para separar lógica de negócio de la de presentación ( el HTML ) bajo licencia
LGPL. Incorpora un sistema de
etiquetas Smarty para funciones cómo: 1-
expresiones regulares Su utilización permite separar en
archivos diferentes el código HTML y el PHP. 3.1.3- Software
Libre Software libre
(en inglés free
software) es el software que, una vez obtenido, puede ser usado,
copiado, estudiado, modificado y redistribuido libremente. El software libre
suele estar disponible gratuitamente, pero no hay que asociar software libre a software gratuito, o a
precio del coste de la distribución a través de otros medios; sin embargo no
es obligatorio que sea así y, aunque conserve su carácter de libre, puede ser
vendido comercialmente. Análogamente,
el software gratis o gratuito (denominado usualmente freeware)
incluye en algunas ocasiones el código fuente; sin embargo, este tipo de
software no es libre
en el mismo sentido que el software
libre, al menos que se garanticen los derechos de modificación y
redistribución de dichas versiones modificadas del programa. 3.1.4-
Sistema operativo “Linux” Linux es la denominación de un sistema operativo
tipo-Unix y el nombre de un núcleo. Es uno de los paradigmas más prominentes
del software libre y del desarrollo del código abierto, cuyo código fuente
está disponible públicamente, para que cualquier persona puede libremente
usarlo, estudiarlo, redistribuirlo y, con los conocimientos informáticos
adecuados, modificarlo[]. Los primeros sistemas Linux se originaron en 1992,
al combinar utilidades de sistema y librerías del proyecto GNU con el núcleo
Linux, completando un sistema también conocido como GNU/Linux[].
Desde fines de 1990 Linux ha obtenido el apoyo de diversas empresas
multinacionales del mundo de la informática, tales como IBM[],
Sun Microsystems, Hewlett-Pack Linux es la denominación de un sistema operativo
tipo-Unix y el nombre de un núcleo. Es uno de los paradigmas más prominentes del software
libre y del desarrollo del código abierto, cuyo código fuente está disponible
públicamente, para que cualquier persona puede libremente usarlo, estudiarlo,
redistribuirlo y, con los conocimientos informáticos adecuados, modificarlo. Los
primeros sistemas Linux se originaron en 1992, al combinar utilidades de
sistema y librerías del proyecto GNU con el núcleo Linux, completando un
sistema también conocido como GNU/Linux[].
Desde fines de 1990 Linux ha obtenido el apoyo de diversas empresas
multinacionales del mundo de la informática, tales como IBM[], Sun Microsystems,
Hewlett-Packard y Novell. Linux
es usado como sistema operativo en una amplia variedad de plataformas de
hardware y computadores, incluyendo los computadores de escritorio (PCs x86 y
x86-64, y Macintosh y PowerPC), servidores, supercomputadores, mainframes, y
dispositivos empotrados así como teléfonos celulares. La marca Linux (Número de serie: 1916230) pertenece a Linus Torvalds y se define como "un sistema operativo para computadoras que facilita su uso y operación". are[] y Novell.Linux es usado como sistema operativo en una amplia variedad de plataformas de hardware y computadores, incluyendo los computadores de escritorio (PCs x86 y x86-64, y Macintosh y PowerPC), servidores, supercomputadores, mainframes, y dispositivos empotrados así como teléfonos celulares. |