Tecnología
Computacional
- Modelamiento
de datos - Modelo
lógico y físico - Relaciones entre
entidades y relaciones entre tablas - Bases de
datos - El diccionario
de datos - Diccionario
de tablas - Redes man
– lan – wan - Internet
- Intranet
- Herramientas
Case - Páginas
Web - Conclusión
- Bibliografía
En un mundo lleno avances y luchas por alcanzar mejoras
en nuestra vida diaria, no podemos sentarnos a esperar que lo
demás hagan las cosas por nosotros. Por el contrario,
debemos animarnos en crear y buscar nuevas alternativas, nuevos
proyectos.
Como profesional, analista, y aplicando lo aprendido en estos
años de estudio, puedo abrirme camino para emprender
nuevos desafíos y partiendo con uno de ellos ha sido
realizar este trabajo, el que me ha permitido conocer mas a fondo
cada uno de los temas que en el abordo.
Averiguar por ejemplo acerca del diseño
y programación, lenguajes, bases de datos,
nuevas herramientas
de programación. Formas y medios de
comunicación, redes, internet, intranet,
diseño
de páginas
web, etc…
Para conocer mas en detalle cada uno de los temas de
esta monografía, les invito a repasar y rescatar
de ellas lo que mas puedan, que pienso, será de gran
utilidad no
solo para presentar trabajos como este, sino para su vida
profesional, tal como lo ha sido para mi.
CAPITULO I
1.1.- Conceptos
Fundamentales.
1.1.1.- Realidades, Modelos y
Lenguajes.
La realidad única, concreta y objetiva no puede
ser captada como tal. ,aún cuando pudiésemos asumir
que esta realidad única existe, cada uno de nosotros la
modifica a través del filtro de su percepción. La percepción
de cada persona es algo
bastante complejo, que está influido, entre otros posibles
factores, por el tiempo, espacio y
estado de
ánimo al momento de realizar la percepción,
además del impacto de experiencias previas, factores
ambientales, estructura
neuronal y el código
genético del individuo.
Lo relevante es que para n observadores de un
fenómeno, es posible obtener al menos n percepciones
distintas (aunque posiblemente no "radicalmente"
distintas).
Las herramientas
que utilizamos para poder
comunicar y plasmar nuestras percepciones de realidades se
denominan modelos. Los
modelos son representaciones de algún fenómeno o
hecho del mundo que nos interese (en el caso de la ingeniería
de sistemas interesaría por ejemplo modelar organizaciones,
datos o
procesos de
negocio). Para poder expresar
estos modelos es que requerimos de los lenguajes.
Los lenguajes son herramientas creadas por el hombre (u
otros seres) con el fin de comunicarse. Son imprescindibles para
poder concebir modelos, pues uno expresa a lo más lo que
el lenguaje le
permite. Además, los lenguajes son los que permiten
comunicar los modelos a otros (que comprenden dichos lenguajes),
validarlos, discutirlos y ampliar la percepción del otro
sobre un mismo fenómeno.
Para una mejor comprensión, consideraremos los
siguientes componentes de los lenguajes.
- La sintaxis: Es el conjunto de símbolos
permitidos en el lenguaje.
(por ejemplo las letras del abecedario o todas las palabras del
idioma español) - Una gramática: Son las reglas generadoras del
lenguaje.
(por ejemplo la gramática del español) - La semántica: Es el significado asociado al
lenguaje (por ejemplo, el significado de las palabras y su
interpretación dentro de un contexto dado).
1.2.- Estrategia
general de resolución de problemas.
Para poder abordar un problema, primero hay que
definirlo. Esto, que pudiese parecer trivial, no lo es para
nada.
Definir un problema significa comprenderlo y modelarlo.
Los problemas son
realidades susceptibles de ser modeladas de diversas maneras,
como se muestra en el
siguiente ejemplo, donde distintos involucrados nos dan su
visión acerca de los problemas de una organización.
INVOLUCRADOS | ¿CUALES SON LOS PROBLEMAS DE ESTA |
Empleado | ¿Cómo aumento mis ingresos? ¿Cómo beneficio a |
Ejecutivo | ¿Cómo aumento la productividad? ¿Cómo dejo |
Directorio | ¿Cómo aumentamos nuestras |
Comercialización y Marketing | ¿Cómo creo nuevos mercados? ¿Cómo dejo |
Matemático | ¿Cuál es la función matemática que optimiza esta |
Secretaria | ¿Cómo disminuyo mi carga de |
Contabilidad | ¿Cómo simplifico el proceso contable? ¿Cuáles |
Recursos Humanos | ¿Cómo aporto mayores beneficios al |
Adm. Financiera | ¿Cómo disminuyo costos? |
Gerencia | ¿Cómo aseguro la misión de la empresa? ¿Cómo aumento la |
Informáticos | ¿Qué procesos son factibles de |
Contratistas | ¿Cómo me hago indispensable? |
Burócratas | ¿Cómo aumento el control? |
Básicamente, el proceso de
resolver un problema consta de cuatro etapas: análisis, diseño, ejecución y
control de la
solución.
1.2.1.- Análisis del Problema
El análisis del problema involucra capturar el
máximo de información referente a este, obtener la
visión del mismo por parte de los involucrados y generar
un modelo para
cada una de estas visiones. Se deben refinar estos modelos hasta
obtener una o varias representaciones (modelos) del problema, los
que posibilitan su análisis. Estos modelos que describen
las visiones del problema son los que posibilitarán que se
vislumbre alguna solución.
Se debe modelar tanto el problema como la
situación esperada, de modo de poder diseñar la
forma de llegar del estado actual
al estado objetivo(problema solucionado).
Lo relevante de este punto es que el análisis es
una tarea creativa que requiere de capacidades de
abstracción y uso de lenguajes que faciliten la tarea de
generación de modelos y análisis de los mismos. En
el análisis del problema se deben contestar las siguientes
preguntas:
¿Cuál es el problema? (¿Cuál
es el estado
actual considerado insatisfactorio?)
¿En qué forma se consideraría el
problema solucionado? (¿Cuál es el estado
deseado?)
¿Qué restricciones existen para llegar a
esa solución?
1.2.2.- Diseño de la
Solución
El diseño de la solución es el proceso por
el cual se determina cuales son los pasos a seguir para conseguir
pasar desde el estado actual (problema) al estado deseado u
objetivo.
Muchas veces este proceso de diseño involucra a variados
componentes, no sólo de índole informática.
En algunas ocasiones, el modelo del
estado objetivo es ya el diseño de la solución,
como por ejemplo, en el caso de los sistemas software, el modelo de la
situación objetivo se traslapa con la primera
versión del diseño.
1.2.3.- Ejecución
En la ejecución, se sigue el plan establecido
en el diseño para pasar del estado inicial al estado
objetivo (definido en el análisis).
La ejecución del diseño es en muchos casos
la construcción en un lenguaje de
programación u otra herramienta de
implementación computacional de lo diseñado en la
etapa previa.
1.2.4.- Control
En esta etapa, se verifica y valida lo
ejecutado.
Esto significa que se debe verificar que lo ejecutado
corresponde a lo diseñado, y lo diseñado
efectivamente permite alcanzar el estado objetivo definido en el
análisis. La validación consiste en responder si
esta es LA solución.
1.3.- Dimensiones de un sistema basado en
software.
El software es otro modelo de la realidad, definido en
lenguajes particulares que incluyen códigos de programa,
documentación, manuales de
usuario, procedimientos
administrativos, bases de datos,
entre otros. El software no se produce en el sentido
clásico, más bien, se desarrolla.
"…esta basado en un reconocimiento del hecho
que,…, cualquier programa es un
modelo de un modelo dentro de una teoría de modelos para una
abstracción de alguna porción del mundo o de
algún universo de
discurso."
Meir Lehmann, Proceeding of the IEEE Vol. 68 No. 9 Sept.
1980.
Podemos distinguir en un software tres dimensiones, o
formas de verlo:
Con respecto al tipo de componente:
Interfaz: La interfaz es aquella componente del software
que permite que un usuario interactúe con él. A
través de este componente un software recibe las entradas
del usuario y le entrega las respuestas.
Lógica de procesamiento: Este componente es aquel
que se preocupa de relacionar las entradas que le llegan a
través de la interfaz con el repositorio, generando los
resultados que el usuario espera.
Repositorio: Este componente alberga a todos aquellos
componentes que el software utiliza y almacena incluso
después de ejecutarse (el repositorio es persistente en el
tiempo). En este componente reside información que es persistente y que puede
ser compartida con otros componentes de lógica
de procesamiento.
Con respecto al nivel de
abstracción:
Conceptual: En este nivel de abstracción nos
estamos enfrentando a una representación (modelo) muy
cercana a la realidad a modelar, de manera independiente de la
plataforma de implementación computacional. De alguna
manera, es en este nivel donde deberían encontrarse los
modelos que se realicen en la etapa de
análisis.
Lógico: Este nivel de abstracción se
centra en los aspectos centrales del sistema, pero con
una visión más cerca de la implementación en
una plataforma definida (puede ser "un tipo de" plataformas). Los
modelos generados en la etapa de diseño deberían
encontrarse mayoritariamente en este nivel de
abstracción.
Físico: En este nivel la abstracción ya es
mínima. Estamos ante representaciones directas de la
implementación de los sistemas. Modelos
de nivel físico deberían documentar la etapa de
ejecución.
Con respecto al tipo de modelamiento:
Estático: El componente estático de un
sistema software lo constituye la definición de todas sus
estructuras,
las cuales podrán tomar distintos valores.
Dinámico: El componente dinámico de un
software lo constituye su comportamiento, es decir, la definición de
respuestas (cambios de estado) a ciertos estímulos
(eventos).
Funcional: El componente funcional es aquel que define
las transformaciones de las entradas, objetos del repositorio,
eventos, etc.,
en respuestas o salidas del sistema software. Esta componente es
aquella que realiza las transformaciones.
Estas tres dimensiones se entrecruzan y conforman una
matriz de
3x3x3, en cuyas celdas podemos encontrar distintos lenguajes que
apoyan el modelamiento de dicha dimensión.
Componente | Interfaz | Lógica de Procesamiento | Repositorio | ||||||
Nivel de Abstracción | Nivel de Abstracción | Nivel de Abstracción | |||||||
Tipo Modelamiento | Conceptual | Lógico | Físico | Conceptual | Lógico | Físico | Conceptual | Lógico | Físico |
Estático |
|
|
|
|
|
|
|
|
|
Dinámico |
|
|
|
|
|
|
|
|
|
Funcional |
|
|
|
|
|
|
|
|
|
Para cada una de estas celdas pueden existir uno o
más lenguajes adecuados para modelar realidades vistas
bajo el prisma de las tres dimensiones consideradas.
Es aparente que una interpretación del mundo es
necesaria, la que debe ser suficientemente abstracta para que no
sea afectada por la dinámica del mundo (los pequeños
cambios), y debe ser suficientemente robusta para poder
representar como los datos y el mundo
se relacionan. Una herramienta como esta es llamada modelo de
datos, el cual permite representar en forma más o menos
razonable alguna realidad. El modelo de datos permite realizar
abstracciones del mundo, permitiendo centrarse en los aspectos
macros, sin
preocuparse de las particularidades; así nuestra
preocupación se centra en generar un esquema de
representación, y no en los valores de
los datos.
Los modelos de datos nos permiten capturar parcialmente
el mundo, ya que es improbable generar un modelo que lo capture
totalmente.
Sin embargo, se puede tener un conocimiento
relativamente completo de la parte del mundo que nos interesa.
Así, un modelo captura la cantidad de conocimiento
tal que cumpla con los requerimientos que nos hemos impuesto
previamente.
DATO: la siguiente tupla: <nombre del objeto,
propiedad del
objeto, valor,
tiempo>
Esta definición es correcta, ya que cada vez que
se describe un fenómeno, éste se refiere a un
objeto (nombre del objeto) y ciertas características (propiedades del objeto) el
cual tiene un valor en un
momento determinado (tiempo).
- Ejemplo. El precio del
pan es $460 .
nombre: precio del
pan
propiedades : (unidad, $), entero no
negativo.
valor: 460
tiempo: hoy
En general, el modelar un objeto no se considera el
tiempo, sino que éste se considera implícito en la
semántica de él.
- Ejemplo. Consideremos el caso de una matriz:
nombre: matriz_coeficiente
propiedades: +, -, *, a[i,j] Î R
valor : [1 2]
[3 4]
ESQUEMA
Para una aplicación particular de un modelo de
datos, el modelamiento de la realidad se llama
esquema.
Un esquema es una definición genérica que
identifica categorías (ejemplo: libro, autor,
etc.), sus propiedades (nombre, título) y sus relaciones
(escrito).
Por ejemplo, un modelo de datos simple es una archivo (tabla).
Aplicando este modelo a una situación particular se puede
tener el siguiente esquema:
– Persona (Nombre,
Edad, Dirección), donde Persona es el nombre
genérico de una entidad, y Nombre, Edad y Dirección son nombres genéricos para
los atributos.
Un modelo de datos define las reglas por las cuales los
datos son estructurados. Esta estructuración, sin embargo,
no da una interpretación completa acerca del significado
de los datos y la forma en que serán usados. Las operaciones que
se permiten efectuar a los datos deben ser definidos.
- Ejemplo. Una lista puede ser tratada como pila o
fila, dependiendo de las operaciones que
se permitan sobre ella.
Generalmente las operaciones están relacionadas
con la estructura de
los datos y tienen validez en el contexto en que fueron
definidos.
BASE DE DATOS
Una colección de datos estructurados en una forma
particular, según un esquema particular, se denomina base
de datos.
Todo modelo de datos debe poder capturar las propiedades
estáticas y dinámicas de una realidad.
Las propiedades estáticas corresponden a lo que
es relativamente invariante en el tiempo, son siempre verdadero y
no cambia en el tiempo.
- Ejemplo. Que los precios se
midan en $ es relativamente invariante.
Las propiedades dinámicas corresponden a la
naturaleza
evolutiva del mundo. Por esto, para todo modelo debe ser posible
capturar los dos tipos de propiedades.
Página siguiente |