domingo, 9 de enero de 2011

Introducción a las bases de datos

La aparición de las bases de datos surgió a la Necesidad por parte de las empresas de almacenar grandes volúmenes de datos (proveedores, clientes, artículos, facturas, etc).

La evolución que se ha desarrollado en el campo de las bases de datos sufrió distintas etapas:

Inicialmente la gestión era manual.
La aparición de los ordenadores personales permitió la mecanización en las empresas.
Las aplicaciones utilizan “archivos” para almacenar los datos.
Integración de archivos en bases de datos.

Archivo de datos: Estructura de datos que se almacena en memoria externa y que está agrupada en unidades de información con el mismo formato (registros).

Base de Datos: Conjunto integrado de datos interrelacionados almacenados de forma organizada y estructurada que son accesibles para diferentes usuarios y programas a la vez.

Una de las primeras necesidades básicas que se presentaron con la aparición de las bases de datos era intentar aprovecharlas para ofrecer servicio a aplicaciones diferentes, sin tener que duplicarlas ni estar obligados a utilizar siempre programas de una misma marca o proveedor. De esta manera, aparecen los sistemas gestores de bases de datos como una capa intermedia entre el usuario final, y las aplicaciones que este usa, y la propia base de datos. El principal problema de la utilización de archivos de datos es la dependencia de los archivos de las aplicaciones que los crean. Otros: seguridad, control, repetición, dispersión, etc.
Dato: Información que una computadora registra y almacena.
Campo: es cada trozo discreto de información en un registro.
Registro: es la información relacionada con una persona, un producto o suceso. En una Base de Datos un simple archivo es un conjunto de registros.
Archivo: es una colección de información relacionada. En él la información se guarda como si fuera un archivero.
Consulta: puede ser una búsqueda simple de un registro específico o una solicitud para seleccionar todos los registros que satisfagan un conjunto de criterios.
Reporte o informe: es una lista ordena de los campos y registros seleccionados en un formato fácil de leer.
Los tipos de datos que se pueden introducir a una base de datos son:
Numéricos: Se pueden introducir números para identificar partes del archivo, esto identifica la parte que numera al archivo o lo distingue de alguna manera.
Texto: El texto es un nombre que identifica al campo, ya sea el nombre del autor o
Etiquetas: Son los títulos con los que cada campo es designado.
Fórmulas: Son datos que aparecen como numéricos pero fueron hechos por medio de fórmulas

SISTEMA GESTOR DE BASE DE DATOS:

Es el conjunto de programas que permiten la administración y gestión de la información almacenada en una base de datos, proporcionando seguridad, integridad y abstracción de datos (Access, Oracle, MySQL, SQL Server).
En general, el sistema gestor de bases de datos (SGBD) se encargará de organizar el correcto funcionamiento interno de la base de datos en lo que se refiere al control de la concurrencia y de la integridad, además de facilitar a sus usuarios la creación, el mantenimiento y, en ocasiones, el diseño de dicha base de datos. El mantenimiento incluye funciones como la gestión de usuarios, la seguridad, etc.
Definición y características de un SGBD.

Existen multitud de SGBD y alguno de ellos tienen más funciones que otros. Así pues, cada SGBD puede tener unas características similares pero no idénticas. Sin embargo, existen una serie de capacidades que, según la mayoría de autores, deben cumplir un sistema gestor de bases de datos para que pueda denominarse así:

- Facilitar el acceso a los datos. Un SGBD debe disponer de mecanismos sencillos para que los usuarios con escasos o nulos conocimientos de su funcionamiento interno puedan acceder a los datos, consultarlos y manipularlos.

- Controlar la consistencia y la integridad de los datos. Un SGBD debe ofrecer las operaciones necesarias para que el diseñador de la base de datos introduzca cuantas restricciones de integridad sean necesarias y hacer que estas se cumplan, además de asegurar la consistencia de los datos según la propia definición de la base de datos.

- Controlar la seguridad de la base de datos. Un SGBD deberá disponer de funciones de control de la seguridad de los datos, como por ejemplo realización de copias, mecanismos de recuperación de dichas copias, actuaciones en caso de caída del sistema, gestión de usuarios con sus permisos de accesos y de actuación, entre otros.

- Controlar la concurrencia. El SGBD gestionará adecuadamente los accesos simultáneos a los datos, así como las operaciones que, por diversos motivos, no puedan ser realizados simultáneamente, de forma que ninguna operación quede por hacer y ningún usuario desatendido.

- Facilitar la administración de la base de datos y del propio SGBD. Lógicamente, el diseño de la base de datos puede estar sujeto a cambios, de manera que el SGBD debe facilitar las modificaciones y los cambios en el diseño de la base de datos, y en el propio funcionamiento del SGBD (cambiar restricciones, relaciones entre ficheros, estructuras de datos, dar de alta o de baja usuarios, etc..)

- Independencia de los datos respecto de las aplicaciones que los utilizan.

Componentes de un SGBD.

Los componentes principales son los siguientes:

- Herramientas de gestión: Todos los SGBD disponen de herramientas de gestión para poder crear las bases de datos, manipularlas, modificar su diseño, crear usuarios, asignar permisos, etc… Estas herramientas suelen estar solo disponibles para los administradores de la base de datos; es decir, para aquellos usuarios especializados en mantener la base de datos en perfecto estado.

- Herramientas de programación: Muchos SGBD ofrecen la posibilidad de crear las aplicaciones que utilizarán los usuarios para acceder a la base de datos, cuando estos usuarios no pueden (o no deben) trabajar directamente con el SGBD.

- Lenguajes: Los SGBD proporcionan unos lenguajes de trabajo para poder acceder a los datos, y también para poder efectuar algunas tareas de gestión. Estos lenguajes pueden clasificarse en:
o Lenguajes de definición (LDD).- son aquellos que se usan para crear la base de datos o modificar su estructura una vez creada.
o Lenguajes de control (LCD).- que sirven para realizar la gestión de usuarios, dar y retirar permisos, realizar tareas de seguridad, etc..
o Lenguajes de manipulación (LMD).- son los que permiten trabajar con los datos, haciendo consultas, altas, bajas, modificaciones, entre otros. Algunos textos diferencian entre los lenguajes de manipulación (LM) y los de consulta (LC).

SQL: Es un lenguaje declarativo de 4ª Generación de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones sobre las mismas.

- Diccionario de datos: Con todas las funciones que se han visto que realiza el SGBD, se hace necesario un cierto control de toda la información que se maneja: no solo de los datos que forman la base de datos, sino también de otros datos como usuarios, permisos, estructura de los diferentes ficheros, relaciones entre estos, etc. Toda esta información acerca de la gestión de la base de datos se almacena en un diccionario de datos, también denominado en ocasiones repositorio.

Inteligencia de Negocios:

La Inteligencia de Negocios o Business Intelligence (BI) se puede definir como el procesos de analizar los bienes o datos acumulados en la empresa y extraer una cierta inteligencia o conocimiento de ellos. Dentro de la categoría de bienes se incluyen las bases de datos de clientes, información de la cadena de suministro, ventas personales y cualquier actividad de marketing o fuente de información relevante para la empresa.

BI apoya a los tomadores de decisiones con la información correcta, en el momento y lugar correcto, lo que les permite tomar mejores decisiones de negocios. La información adecuada en el lugar y momento adecuado incrementa efectividad de cualquier empresa.

Con la Inteligencia de Negocios se puede:

  • Generar reportes globales o por secciones
  • Crear una base de datos de clientes
  • Crear escenarios con respecto a una decisión
  • Hacer pronósticos de ventas y devoluciones
  • Compartir información entre departamentos
  • Análisis multidimensionales
  • Generar y procesar datos
  • Cambiar la estructura de toma de decisiones
  • Mejorar el servicio al cliente

Ciclo básico de la inteligencia de negocios:

Existen diferentes propuestas teóricas acerca del ciclo de inteligencia; todos ellos tienen en común que el modelo es cíclico y está conformado por un número variable de procesos que oscilan entre cuatro que serian:

· Planeación

· Recolección

· Análisis.

· Distribución.

Y ocho que sería:

· Análisis de necesidades

· Observación y monitoreo

· Recolección de fuentes internas y externas

· Depuración y estructuración

· Análisis

· Comunicación

· Almacenamiento

· Utilización y retroalimentación

Dependiendo de las preferencias de los autores para agregar o no las funciones en los diferentes procesos.

Componentes principales de un sistema de inteligencia de negocio:

Desde la perspectiva tecnológica, la arquitectura de la inteligencia de negocios cuenta con gran número de tecnologías y técnicas que se explican a continuación:

Componentes convencionales:

Data warehouse: Repositorio donde se integran y almacenan diferentes fuentes de información, necesaria para soportar los procesos de toma de decisiones. Es la plataforma central de las soluciones de inteligencia de negocios que permite entender la información del negocio y soportar el proceso de toma de decisiones.

Raph Kimball: es el lugar donde las personas pueden acceder a la información de la organización y debe cumplir con las siguientes características:

· Provee el acceso a datos a todos los niveles de la organización.

· Posee diferentes temas que pueden ser analizados independientes o de manera integrada.

· No es solo datos, también es un conjunto de herramientas que permite consultar, analizar y presentar información.

Atomic Layer : Centro del Data warehouse, nivel de información detallada, excelente fuente para realizar consultas e informes, aplicaciones OLAP y “Data minning”.

A este nivel se puede incluir campos con los datos primarios, información georeferencial y toda la que se aplique a nivel detallado. Todos los análisis y usos posteriores de la información son derivados de la estructura de la información atómica.

Operacional Data Store (ODS): Es la base de datos orientada a temas, integrada, variante en el tiempo, no volátil usada para soportar el proceso de toma de decisiones tácticas.

Stagin Área: Área donde se almacenan los datos antes de ingresar al Data Warehouse. Su objetivo es extractar la información de los sistemas fuentes, hacer depuración de información y realizar procesos de transformación previos a la alimentación de las estructuras de nivel detallado. .

Data Mart: Parte de la arquitectura que representa un subconjunto de la información, orientada por temas y diseñada para un área específica. Los Data Mart pueden ser estructuras de tecnología OLAP, que se refieren a herramientas interactivas que permiten realizar análisis multidimensional, con herramientas OLAP los usuarios pueden analizar información utilizando la técnica “slice and dice” y “drill down and drill up”.

Componentes analíticos de alto impacto.

Además de la tecnología básica explicada anteriormente, la inteligencia de negocios puede ser apoyada por técnicas y tecnologías de alto impacto en el negocio que determinan el centro del análisis de estas soluciones (BI).

Spatial Análisis: Orientados al manejo espacial, allí se representa información relevante para el negocio, como puede ser ubicación geográfica de donde viven los clientes, y como están localizados con respecto al resto del mundo.

Data Mining : Son herramientas que permiten identificar tendencias y comportamientos, no sólo para extraer información, sino también para descubrir las relaciones en bases de datos que pueden identificar comportamientos que no muy evidentes.

Agents: Son redes neuronales que encargadas de localizar tendencias en diferentes variables, compararlos con las reglas de negocio y generar reacciones frente a un conjunto de circunstancias, reportando excepciones. Por ejemplo: analizan tendencias como la demanda de productos basados en las ventas, el efecto de las promociones, el número de clientes, etc.

Sistemas de informacion

Un sistema de informacion es un conjunto de elementos que interactúan entre sí con el fin de apoyar las actividades de una empresa o negocio.

El equipo computacional: el hardware necesario para que el sistema de información pueda operar.

El recurso humano que interactúa con el Sistema de Información, el cual está formado por las personas que utilizan el sistema.

Un sistema de informacion realiza cuatro actividades básicas: Entrada, Almacenamiento, Procesamiento y Salida de información.

Entrada de Información: Es el proceso mediante el cual el Sistema de Información toma losdatos que requiere para procesar la información. Las entradas pueden ser manuales o automáticas.

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

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

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 graficadores y los plotters, entre otros.

Actividades que realiza un Sistema de Información:

Entradas:

· Datos generales del cliente: nombre, direccion, tipo de cliente, etc.

· Políticas de creditos: límite de credito, plazo de pago, etc.

· Facturas (interfase automático).

Proceso:

· Cálculo de antigüedad de saldos.

· Cálculo de intereses moratorios.

· Cálculo del saldo de un cliente.

Almacenamiento:

· Movimientos del mes (pagos, depuraciones).

· Catálogo de clientes.

· Facturas.

Salidas:

· Reporte de pagos.

· Estados de cuenta.

· Pólizas contables (interfase automática)

· Consultas de saldos en pantalla de una terminal.

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 desiciones.

Lograr ventajas competitivas a través de su implantación y uso.

Los Sistemas de Información que logran la automatizacion de procesos operativos dentro de unaorganizacion , son llamados frecuentemente Sistemas Transaccionales, ya que su funcion primordial consiste en procesar transacciones tales como pagos, cobros, pólizas, entradas, salidas, etc. Por otra parte, los Sistemas de Informacion que apoyan el proceso de toma de decisiones son los Sistemas de Soporte a la Toma de Decisiones, Sistemas para la Toma de Decisión de Grupo, Sistemas Expertos de Soporte a la Toma de Decisiones y Sistema de Información para Ejecutivos. El tercer tipo de sistema, de acuerdo con su uso u objetivos que cumplen, es el de los Sistemas Estratégicos, los cuales se desarrollan en las organizaciones con el fin de lograr ventajas competitivas, a través del uso de la tecnologia de información.

El Ciclo de vida de los Sistemas de Información:

Antes de analizar la calidad en el proceso de desarrollo de sistemas es importante explicar el ciclo de vida de los sistemas de Información. Las fases que incluye son nacimiento, desarrollo, operación, mantenimiento y muerte.

Nacimiento: Esta fase da inicio al ciclo de vida con el surgimiento de una necesidad o de un requerimiento por parte del usuario. En este momento debe hacerse un estudio de factibilidad para decidir si en realidad se justifica el desarrollo del sistema.

Desarrollo: Una vez realizado un estudio de factibilidad, se procede al desarrollo del sistema en el cual se analizan los requerimientos y se elabora un diseño que servirá de base para el desarrollo. Además, se elaboran los programas necesarios para que el sistema pueda operar. La fase de desarrollo consiste en diseñar, construir y/o adecuar los programas que se requieren para resolver el problema del usuario.

Operación: En este momento el sistema ya está terminado y el usuario trabaja introduciendo datos y obteniendo información y reportes que soporten la operación de la empresa. Si el sistema no satisface los requerimientos funcionales del usuario o si se detecta algún error en los programas, es necesario pasar a la fase de mantenimiento.

Mantenimiento: Consiste en corregir los errores que se detectan en los programas o en las funciones que realiza el sistema. En esta fase además el usuario puede agregar nuevos requerimientos.

Muerte: Un sistema de información llega a esta fase cuando deja de ser necesario o cuando debe reemplazarse por otro mejor. Si al sistema original se le hacen mejoras o cambios se inicia nuevamente el proceso, debido a que el sistema anterior ya ha muerto y se desarrollará uno nuevo.

El ciclo de vida de un sistema de información comprende las siguientes etapas:

_ Planificación

_ Análisis

_ Diseño

_ Implementación

_ Pruebas

_ Instalación / Despliegue

_ Uso y mantenimiento

Planificación

_ Ámbito del proyecto

_ Estudio de viabilidad

_ Análisis de riesgos

_ Estimación

_ Planificación temporal

_ Asignación de recursos

Análisis

_ Elicitación de requerimientos:

_ Requerimientos funcionales

_ Requerimientos no funcionales

_ Modelado:

_ Modelado de datos

_ Modelado de procesos

Diseño

Estudio de alternativas y diseño arquitectónico

_ Diseño de la base de datos

_ Diseño de las aplicaciones

Implementación

_ Adquisición de componentes.

_ Creación e integración de los recursos necesarios

para que el sistema funcione.

Instalación:

Dependiendo del tamaño de la organización que empleará la aplicación y el riesgo asociado con su uso, puede elegirse empezar la operación del sistema solo con un área de la empresa.

Pruebas

_ Pruebas de unidad.

_ Pruebas de integración.

_ Pruebas alfa.

_ Pruebas beta.

_ Test de aceptación

Uso / mantenimiento

_ Mantenimiento adaptativo.

_ Mantenimiento correctivo.

_ Mantenimiento perfectivo.