lunes, 30 de mayo de 2016

La transformación desde los datos hasta la información

Breve Introducción


En sentido general, la información es un conjunto organizado de datos procesados, que constituyen un mensaje sobre un determinado ente o fenómeno. De esta manera, si por ejemplo organizamos datos sobre un país, tales como: número de habitantes, densidad de población, nombre del presidente, etc. y escribimos por ejemplo, el capítulo de un libro, podemos decir que ese capítulo constituye información sobre ese país.

Tomando como referencia el fragmento anterior y enfocándonos en el área de sistemas informáticos, puntualmente en la programación voy a explicar un proceso de transformación de los datos almacenados en un lugar físico hasta que se conviertan en un resultado de información visible para quien lo requiera.

Es importante siempre no desviar la atención sobre el fin u objetivo del sistema, ya sea el requerimiento de negocio como la funcionalidad de la aplicación. En el ejemplo que voy a realizar debajo, el sistema tiene como objetivo gestionar un colegio secundario.

Dentro del objetivo del sistema se segmentan las funcionalidades que se requieren, por ejemplo, la directora del establecimiento necesita tener la posibilidad de gestionar alumnos mediante un ABM (Alta, Baja, Modificación), es decir, ingresar al sistemas alumnos nuevos en el colegio, dar de baja aquellos que ya no van a ir mas al colegio y modificar los datos de ellos en caso sea necesario.
Otra funcionalidad que nos solicitaron para el sistema es que los profesores puedan cargar las notas de los alumnos para las materias o cátedras que tienen a su cargo.

Por lo tanto, definimos:
  • Actores (Usuarios del sistema): Directora y Profesores.
  • Entidades (Agrupación de datos): Alumnos, Cátedras, Notas
  • Funcionalidades: ABM Alumnos, Carga de Notas.
  • Resultado: Visualizar las notas de los alumnos según las cátedras.

Dentro de las entidades, definimos los datos necesarios (campos).

Alumnos:
  • Nombre
  • Apellido
  • Edad
  • Año académico
Cátedras:
  • Nombre
  • Profesor
Notas:
  • Alumno
  • Cátedra
  • Nota

Estos datos surgen del relevamiento entre lo que la persona que solicita el sistema necesita y lo que el encargado del área de sistema puede proponer, se identifican los actores como usuarios del sistema a aquellos que van a utilizar el sistema, especialistas en funcionalidades es el caso en el que el usuario no tiene conocimiento sobre algún área del negocio particular, por ejemplo, área contable, procesos de producción, etc; y se necesita un especialista para que interprete lo que el usuario del sistema necesita y le transmita esa información al el encargado de la creación del sistema a nivel técnico. En la mayoría de los casos de sistemas de bajo nivel, estos especialistas no son necesarios. Estos últimos son los programadores del sistema es decir, los interesados en todo esto que estamos tratando de explicar.

Ahora, después de haber hecho una breve introducción, vamos a graficar todo lo relevado para que pueda interpretarse mejor.





Almacenamiento de los datos.


La forma de almacenar la entidades con sus respectivos datos es simple y se puede representar como una tabla, la cual tiene una particularidad en la que vamos a  dar  énfasis debido a la importancia que tiene para luego para que puedas be a crack.


Realizamos la grafica de dos entidades en forma de tabla para poder explicar cada una de las partes.

Tenemos los campos o columnas los cuales reciben cada uno una etiqueta que identifique que dato se va a almacenar. Una vez definido los campos, podemos agregar registros (lineas) en donde cada linea representa una agrupación de datos de la entidad en donde estamos almacenando, es decir: Un alumno o una cátedra.

Además de esto, introducimos un concepto de campo clave, el cual contiene un valor único para cada registro para poder diferenciarse del resto.

Un ejemplo muy sencillo para esto, es el numero de documento en cada país, no existen dos o mas personas que tengan el mismo numero de identificación, a razón de poder asociar todo lo que sea necesario, a ese mismo número.

Por lo tanto, definimos la siguientes preguntas con sus respuestas:
  • Como es el nombre del alumno 003? Rta. Pedro
  • Como es el apellido del alumno 001? Rta. Perez
  • Cuantos años tiene el alumno 002? Rta. 16.
  • Quien es el profesor de la cátedra 300? Rta. Gomez.

Lo que estamos utilizando aquí, es el lenguaje que interpreta una base de datos para realizar la búsqueda dentro de cada una de las entidades. Cambiemos las preguntas en forma de orden hacia la base de datos.
  • Dime el nombre del alumno cuyo campo clave es igual a 003?
Imaginen lo que haríamos nosotros, recorreríamos con la vista toda la tabla hasta encontrar la coincidencia en el campo clave y luego una vez que tengamos identificada la línea, buscaríamos el campo Nombre y leemos el valor que necesitamos saber.

Avanzando un poco mas, en el lenguaje real en una consulta por ejemplo SQL, seria:

SELECT nombre FROM alumnos WHERE clave = 003.

Automáticamente la respuesta de la base de datos será, Pedro.

Relación entre las entidades.

Ahora, hemos visto como obtener un dato de una entidad o tabla, lo que necesitamos para que todo se mas práctico es relacionar las entidades y para esto también es importante el campo clave.

Vamos a definir la entidad que nos resta y vamos a explicar como hacer la relación para formar el objetivo de este documento, un informe con las notas de los alumnos según la cátedra.



Bueno, acá vemos que continuamos con la misma estructura que las entidades  anteriores pero en lugar de colocar campos con valores, colocamos dos campos iguales a las claves de las otras entidades.

El sentido de esto, es disminuir el tamaño utilizado en base de datos, imaginen tener una sola tabla en la que se repiten los mismos valores para cada registro sin ninguna necesidad, seria:


No hay comentarios:

Publicar un comentario