Este documento discute la importancia de la modelación para los informáticos y los conceptos clave involucrados en el proceso de modelado. Explica que los informáticos necesitan modelar sistemas para simplificar la realidad, dividir sistemas en subsistemas, facilitar el diseño de software y comprender los requisitos del cliente. También cubre los tres mundos en los que trabajan los informáticos y los procesos de inducción y deducción utilizados en la modelación. Además, destaca la diferencia entre isomorfismo e isolación en los mundos
La historia trata sobre el matrimonio feliz de Mazzini y Bertha que querían formar una familia. Sus hijos enfermaron uno tras otro, lo que les causó angustia y desesperación. Cuando nació su última hija Bertita y parecía sana, los otros hijos la mataron al imitar a la sirvienta degollando una gallina.
El rol de Analista de Sistemas, los mundos y las tecnicasAlejandra Esther
Este documento habla sobre la importancia de la modelación de sistemas para los informáticos y las tres formas en que interactúan con los sistemas: el mundo real que observan, su propia percepción, y los modelos abstractos que crean. Explica que la modelación implica procesos inductivos y deductivos para simplificar sistemas complejos y mejorar la comprensión.
ModelacióN, SimulacióN, TéCnicas Auxiliares De AnáLisisAlejandra Esther
Este documento habla sobre la importancia de la modelación de sistemas para los informáticos y las tres formas en que interactúan con los sistemas: el mundo real que observan, su propia percepción, y los modelos abstractos que crean. Explica que la modelación implica procesos inductivos y deductivos para simplificar sistemas complejos y mejorar la comprensión.
Capitulo 1 introduccion a la inteligencia artificial auxnandourrutia
Este documento introduce el tema de la inteligencia artificial. Explica que la inteligencia artificial trata de simular la inteligencia humana mediante programas de ordenador. Luego resume las principales ramas de la inteligencia artificial, incluyendo los sistemas expertos y las redes neuronales artificiales. Finalmente, señala que los sistemas expertos y las redes neuronales son particularmente útiles para aplicaciones empresariales.
Este documento proporciona una introducción a los conceptos básicos de informática. Explica que la informática involucra el tratamiento automático de la información a través de computadoras. Luego define los componentes clave de una computadora, incluido el hardware, software, archivos, y describe cómo funciona una computadora a través de las etapas de entrada, procesamiento y salida de la información. Finalmente, detalla los principales elementos de una computadora como el procesador, memoria, dispositivos de entrada/salida y almacenamiento.
Este documento discute el uso de simulación Monte Carlo en computadora para tomar decisiones en sistemas dinámicos de inventario. Al simular un modelo de inventario con información provista, los primeros resultados mostraron inconsistencias en el comportamiento del sistema. Por lo tanto, los datos se reconsideraron y se volvió a correr la simulación, obteniendo esta vez resultados satisfactorios. La simulación Monte Carlo en computadora puede ayudar a corregir juicios subjetivos y tomar mejores decisiones en sistemas dinámicos de inventario.
Este documento presenta un curso de simulación dividido en 16 semanas. Cada semana cubre un tema diferente relacionado con la simulación por computadora, incluyendo la introducción a la simulación, el software de simulación Arena, el modelado de operaciones, medidas de desempeño, análisis estadísticos y casos prácticos. El curso utiliza el software Arena para llevar a cabo experimentos de simulación y analizar sistemas. El objetivo es desarrollar la capacidad de modelar y simular sistemas para la to
La historia trata sobre el matrimonio feliz de Mazzini y Bertha que querían formar una familia. Sus hijos enfermaron uno tras otro, lo que les causó angustia y desesperación. Cuando nació su última hija Bertita y parecía sana, los otros hijos la mataron al imitar a la sirvienta degollando una gallina.
El rol de Analista de Sistemas, los mundos y las tecnicasAlejandra Esther
Este documento habla sobre la importancia de la modelación de sistemas para los informáticos y las tres formas en que interactúan con los sistemas: el mundo real que observan, su propia percepción, y los modelos abstractos que crean. Explica que la modelación implica procesos inductivos y deductivos para simplificar sistemas complejos y mejorar la comprensión.
ModelacióN, SimulacióN, TéCnicas Auxiliares De AnáLisisAlejandra Esther
Este documento habla sobre la importancia de la modelación de sistemas para los informáticos y las tres formas en que interactúan con los sistemas: el mundo real que observan, su propia percepción, y los modelos abstractos que crean. Explica que la modelación implica procesos inductivos y deductivos para simplificar sistemas complejos y mejorar la comprensión.
Capitulo 1 introduccion a la inteligencia artificial auxnandourrutia
Este documento introduce el tema de la inteligencia artificial. Explica que la inteligencia artificial trata de simular la inteligencia humana mediante programas de ordenador. Luego resume las principales ramas de la inteligencia artificial, incluyendo los sistemas expertos y las redes neuronales artificiales. Finalmente, señala que los sistemas expertos y las redes neuronales son particularmente útiles para aplicaciones empresariales.
Este documento proporciona una introducción a los conceptos básicos de informática. Explica que la informática involucra el tratamiento automático de la información a través de computadoras. Luego define los componentes clave de una computadora, incluido el hardware, software, archivos, y describe cómo funciona una computadora a través de las etapas de entrada, procesamiento y salida de la información. Finalmente, detalla los principales elementos de una computadora como el procesador, memoria, dispositivos de entrada/salida y almacenamiento.
Este documento discute el uso de simulación Monte Carlo en computadora para tomar decisiones en sistemas dinámicos de inventario. Al simular un modelo de inventario con información provista, los primeros resultados mostraron inconsistencias en el comportamiento del sistema. Por lo tanto, los datos se reconsideraron y se volvió a correr la simulación, obteniendo esta vez resultados satisfactorios. La simulación Monte Carlo en computadora puede ayudar a corregir juicios subjetivos y tomar mejores decisiones en sistemas dinámicos de inventario.
Este documento presenta un curso de simulación dividido en 16 semanas. Cada semana cubre un tema diferente relacionado con la simulación por computadora, incluyendo la introducción a la simulación, el software de simulación Arena, el modelado de operaciones, medidas de desempeño, análisis estadísticos y casos prácticos. El curso utiliza el software Arena para llevar a cabo experimentos de simulación y analizar sistemas. El objetivo es desarrollar la capacidad de modelar y simular sistemas para la to
Este documento presenta un curso de simulación dividido en 16 semanas. Cada semana cubre un tema diferente relacionado con la simulación por computadora, incluyendo la introducción a la simulación, el software de simulación Arena, el modelado de operaciones, medidas de desempeño, análisis estadísticos y casos prácticos. El curso utiliza el software Arena para llevar a cabo experimentos de simulación y analizar sistemas. El objetivo es desarrollar la capacidad de modelar y simular sistemas para la to
Este documento presenta un curso de simulación dividido en 16 semanas. Cada semana cubre un tema diferente relacionado con la simulación por computadora, incluyendo la introducción a la simulación, el software de simulación Arena, el modelado de operaciones, medidas de desempeño, análisis estadísticos y casos prácticos. El curso utiliza el software Arena para llevar a cabo experimentos de simulación de eventos discretos y analizar el desempeño de diferentes sistemas.
Este documento presenta un curso de simulación dividido en 16 semanas. Cada semana se enfoca en un tema diferente relacionado con la simulación, incluyendo introducciones a la simulación, modelado de operaciones, programación de recursos, medidas de desempeño, análisis estadísticos y casos de ilustración. El curso utiliza el software Arena para realizar simulaciones de eventos discretos y combina enfoques de procesos, eventos y variables continuas. El objetivo es desarrollar la capacidad de usar herramientas de
Este documento presenta un curso de simulación dividido en 16 semanas. La primera parte introduce conceptos básicos de simulación como modelado de eventos discretos, tipos de simulaciones, y ventajas y desventajas de la simulación. La segunda parte cubre temas como modelado detallado de operaciones, programación de recursos, y medición de desempeño. La tercera parte trata sobre simulación de inventarios, análisis estadísticos, y presentación de trabajos. El curso utiliza el software Arena para la experimentación de simul
Este documento presenta un curso de simulación dividido en 16 semanas. La primera parte introduce conceptos básicos de simulación como modelado de eventos discretos, tipos de simulaciones, y ventajas y desventajas de la simulación. La segunda parte cubre temas como modelado detallado de operaciones, programación de recursos, y medición de desempeño. La tercera parte trata sobre simulación de inventarios, análisis estadísticos, y presentación de trabajos. El curso utiliza el software Arena para la experimentación de simul
Este documento presenta los resultados de un trabajo de grupo sobre el desarrollo de habilidades de pensamiento. El trabajo incluye una discusión sobre algoritmos, diagramas de flujo, lenguajes de programación, bucles y componentes de la microbit. El grupo también realizó pruebas de su trabajo y publicó blogs individuales sobre el tema. En conclusión, el trabajo les permitió aprender nuevos conocimientos sobre algoritmos y diagramas de flujo.
Trabajo final inteligencia artificial adrianacidec
El documento habla sobre la inteligencia artificial y su relación con los teléfonos iPhone. Define la inteligencia artificial y explica cómo se usa para simular comportamientos inteligentes en los iPhone a través de comandos. También compara las características del iPhone 4S con las posibles características del próximo iPhone 5, incluyendo mejoras como una pantalla más grande, conectividad 4G LTE y un procesador quad-core.
La Inteligencia Artificial es la ciencia de hacer con que las máquinas realicen tareas que requieren de inteligencia si son realizadas por los seres humanos.
La noción de inteligencia artificial fue desarrollada en referencia a ciertos sistemas creados por los seres humanos que constituyen agentes racionales no vivos. La racionalidad, es entendida como la capacidad para maximizar un resultado esperado.
La inteligencia artificial, por lo tanto, consiste en el diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento. Estos procesos se basan en secuencias de entradas que son percibidas y almacenadas por la arquitectura.
Entre las principales técnicas de inteligencia artificial se encuentran: las redes neuronales, redes bayesianas, sistemas multivalente, sistemas expertos, lógica difusa, algoritmos genéticos, etc. Todos estas técnicas se aplican exitosamente en diversos campos de trabajo como: robótica, visión artificial, realidad virtual, reconocimiento de patrones y procesamiento del lenguaje natural, entre otros.
Manual de análisis y diseño de algoritmosSpacetoshare
Este documento presenta un manual sobre análisis y diseño de algoritmos. Incluye información sobre la historia de los algoritmos, fundamentos matemáticos, definición de algoritmos y problemas, medidas de eficiencia, análisis de complejidad, estrategias de diseño como recursión y programación dinámica, algoritmos de ordenamiento y búsqueda, teoría de grafos, y complejidad computacional. El manual contiene ejemplos y ejercicios para aplicar los conceptos teóricos.
Este documento presenta un manual básico de NetLogo en español. Incluye 17 ejercicios que permiten familiarizarse con el lenguaje de programación NetLogo de forma sencilla a través de pequeños programas ejemplo. Los ejercicios cubren temas como la creación de agentes, el uso de primitivas básicas, la definición de procedimientos, el uso de botones, la modificación de propiedades de agentes y más. El objetivo final es que el lector aprenda los conceptos y herramientas básicas de NetLogo a trav
Los sistemas operativos han evolucionado rápidamente en los últimos 10 años debido a la necesidad de adaptarse a nuevos hardware, innovar para competir en el mercado y corregir errores e insuficiencias en versiones anteriores.
Los sistemas operativos han evolucionado rápidamente en los últimos 10 años debido a la necesidad de adaptarse a nuevos hardware, innovar para competir en el mercado y corregir errores e insuficiencias en versiones anteriores.
La unidad introduce los fundamentos de los algoritmos. Define un algoritmo como una secuencia lógica y detallada de pasos para resolver un problema. Explica las propiedades de los algoritmos como ser finito, preciso y obtener el mismo resultado. También introduce conceptos como autómatas, lenguajes formales y la máquina de Turing como un autómata finito determinista.
Este documento proporciona una introducción a los conceptos básicos de la tecnología de la información. Explica que la informática es la ciencia que estudia la obtención de información a través de medios automáticos como los ordenadores. Describe las partes principales de un ordenador, incluyendo la unidad central de proceso, la memoria, las unidades de entrada y salida. También explica cómo funciona un ordenador al procesar datos siguiendo instrucciones de manera similar a como un empleado procesaría pedidos siguiendo un procedimiento estable
Este documento proporciona una introducción a los conceptos básicos de la tecnología de la información. Explica que la informática es la ciencia que estudia la obtención de información a través de medios automáticos como los ordenadores. Describe las partes principales de un ordenador, incluyendo la unidad central de proceso, la memoria, las unidades de entrada y salida. También define conceptos clave como los bits, bytes y direcciones de memoria que son fundamentales para el funcionamiento de los ordenadores.
Este documento introduce los casos de uso como un método para especificar los requerimientos de un sistema desde la perspectiva del usuario. Define actores, casos de uso y provee detalles históricos y conceptuales sobre esta técnica. Explica que los casos de uso describen las interacciones entre actores y el sistema, centrándose en la funcionalidad que el sistema ofrece a cada actor. Además, discute cómo los casos de uso se relacionan con UML y otras técnicas de análisis.
Este documento introduce los casos de uso como un método para especificar los requerimientos de un sistema de software. Explica que los casos de uso describen cómo los actores interactúan con el sistema, mencionando ejemplos como un empleado de ventas ingresando un pedido. Traza el origen de los casos de uso al análisis estructurado y a describir manuales de usuario. Finalmente, discute la incorporación de los casos de uso en UML y su independencia del método de diseño utilizado.
Este documento introduce los casos de uso como un método para especificar los requerimientos de un sistema desde la perspectiva del usuario. Define actores, casos de uso y provee detalles históricos y conceptuales sobre esta técnica. Explica que los casos de uso describen las interacciones entre actores y el sistema, centrándose en la funcionalidad que el sistema ofrece a cada actor. Además, indica que los casos de uso son independientes del método de diseño utilizado.
Este documento presenta seis prácticas del pensamiento computacional: analizar los efectos de la computación, producir artefactos computacionales, usar abstracción y modelos, analizar problemas y artefactos, comunicar procesos y resultados, y trabajar en equipos de manera efectiva. Explica cada práctica a través de ilustraciones y ejemplos cortos.
Recursos didácticos para aprender y practicar las competencias del Pensamiento Computacional:
Analizar los efectos de la computación
Producir artefactos computacionales
El uso de la abstracción y de los modelos
Analizar problemas y artefactos
Comunicar procesos y resultados
El trabajo efectivo en equipos
Descomponer
Reconocimiento de patrones
Generalización de patrones y abstracción
Diseño del algoritmo
Este documento presenta un curso de simulación dividido en 16 semanas. Cada semana cubre un tema diferente relacionado con la simulación por computadora, incluyendo la introducción a la simulación, el software de simulación Arena, el modelado de operaciones, medidas de desempeño, análisis estadísticos y casos prácticos. El curso utiliza el software Arena para llevar a cabo experimentos de simulación y analizar sistemas. El objetivo es desarrollar la capacidad de modelar y simular sistemas para la to
Este documento presenta un curso de simulación dividido en 16 semanas. Cada semana cubre un tema diferente relacionado con la simulación por computadora, incluyendo la introducción a la simulación, el software de simulación Arena, el modelado de operaciones, medidas de desempeño, análisis estadísticos y casos prácticos. El curso utiliza el software Arena para llevar a cabo experimentos de simulación de eventos discretos y analizar el desempeño de diferentes sistemas.
Este documento presenta un curso de simulación dividido en 16 semanas. Cada semana se enfoca en un tema diferente relacionado con la simulación, incluyendo introducciones a la simulación, modelado de operaciones, programación de recursos, medidas de desempeño, análisis estadísticos y casos de ilustración. El curso utiliza el software Arena para realizar simulaciones de eventos discretos y combina enfoques de procesos, eventos y variables continuas. El objetivo es desarrollar la capacidad de usar herramientas de
Este documento presenta un curso de simulación dividido en 16 semanas. La primera parte introduce conceptos básicos de simulación como modelado de eventos discretos, tipos de simulaciones, y ventajas y desventajas de la simulación. La segunda parte cubre temas como modelado detallado de operaciones, programación de recursos, y medición de desempeño. La tercera parte trata sobre simulación de inventarios, análisis estadísticos, y presentación de trabajos. El curso utiliza el software Arena para la experimentación de simul
Este documento presenta un curso de simulación dividido en 16 semanas. La primera parte introduce conceptos básicos de simulación como modelado de eventos discretos, tipos de simulaciones, y ventajas y desventajas de la simulación. La segunda parte cubre temas como modelado detallado de operaciones, programación de recursos, y medición de desempeño. La tercera parte trata sobre simulación de inventarios, análisis estadísticos, y presentación de trabajos. El curso utiliza el software Arena para la experimentación de simul
Este documento presenta los resultados de un trabajo de grupo sobre el desarrollo de habilidades de pensamiento. El trabajo incluye una discusión sobre algoritmos, diagramas de flujo, lenguajes de programación, bucles y componentes de la microbit. El grupo también realizó pruebas de su trabajo y publicó blogs individuales sobre el tema. En conclusión, el trabajo les permitió aprender nuevos conocimientos sobre algoritmos y diagramas de flujo.
Trabajo final inteligencia artificial adrianacidec
El documento habla sobre la inteligencia artificial y su relación con los teléfonos iPhone. Define la inteligencia artificial y explica cómo se usa para simular comportamientos inteligentes en los iPhone a través de comandos. También compara las características del iPhone 4S con las posibles características del próximo iPhone 5, incluyendo mejoras como una pantalla más grande, conectividad 4G LTE y un procesador quad-core.
La Inteligencia Artificial es la ciencia de hacer con que las máquinas realicen tareas que requieren de inteligencia si son realizadas por los seres humanos.
La noción de inteligencia artificial fue desarrollada en referencia a ciertos sistemas creados por los seres humanos que constituyen agentes racionales no vivos. La racionalidad, es entendida como la capacidad para maximizar un resultado esperado.
La inteligencia artificial, por lo tanto, consiste en el diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento. Estos procesos se basan en secuencias de entradas que son percibidas y almacenadas por la arquitectura.
Entre las principales técnicas de inteligencia artificial se encuentran: las redes neuronales, redes bayesianas, sistemas multivalente, sistemas expertos, lógica difusa, algoritmos genéticos, etc. Todos estas técnicas se aplican exitosamente en diversos campos de trabajo como: robótica, visión artificial, realidad virtual, reconocimiento de patrones y procesamiento del lenguaje natural, entre otros.
Manual de análisis y diseño de algoritmosSpacetoshare
Este documento presenta un manual sobre análisis y diseño de algoritmos. Incluye información sobre la historia de los algoritmos, fundamentos matemáticos, definición de algoritmos y problemas, medidas de eficiencia, análisis de complejidad, estrategias de diseño como recursión y programación dinámica, algoritmos de ordenamiento y búsqueda, teoría de grafos, y complejidad computacional. El manual contiene ejemplos y ejercicios para aplicar los conceptos teóricos.
Este documento presenta un manual básico de NetLogo en español. Incluye 17 ejercicios que permiten familiarizarse con el lenguaje de programación NetLogo de forma sencilla a través de pequeños programas ejemplo. Los ejercicios cubren temas como la creación de agentes, el uso de primitivas básicas, la definición de procedimientos, el uso de botones, la modificación de propiedades de agentes y más. El objetivo final es que el lector aprenda los conceptos y herramientas básicas de NetLogo a trav
Los sistemas operativos han evolucionado rápidamente en los últimos 10 años debido a la necesidad de adaptarse a nuevos hardware, innovar para competir en el mercado y corregir errores e insuficiencias en versiones anteriores.
Los sistemas operativos han evolucionado rápidamente en los últimos 10 años debido a la necesidad de adaptarse a nuevos hardware, innovar para competir en el mercado y corregir errores e insuficiencias en versiones anteriores.
La unidad introduce los fundamentos de los algoritmos. Define un algoritmo como una secuencia lógica y detallada de pasos para resolver un problema. Explica las propiedades de los algoritmos como ser finito, preciso y obtener el mismo resultado. También introduce conceptos como autómatas, lenguajes formales y la máquina de Turing como un autómata finito determinista.
Este documento proporciona una introducción a los conceptos básicos de la tecnología de la información. Explica que la informática es la ciencia que estudia la obtención de información a través de medios automáticos como los ordenadores. Describe las partes principales de un ordenador, incluyendo la unidad central de proceso, la memoria, las unidades de entrada y salida. También explica cómo funciona un ordenador al procesar datos siguiendo instrucciones de manera similar a como un empleado procesaría pedidos siguiendo un procedimiento estable
Este documento proporciona una introducción a los conceptos básicos de la tecnología de la información. Explica que la informática es la ciencia que estudia la obtención de información a través de medios automáticos como los ordenadores. Describe las partes principales de un ordenador, incluyendo la unidad central de proceso, la memoria, las unidades de entrada y salida. También define conceptos clave como los bits, bytes y direcciones de memoria que son fundamentales para el funcionamiento de los ordenadores.
Este documento introduce los casos de uso como un método para especificar los requerimientos de un sistema desde la perspectiva del usuario. Define actores, casos de uso y provee detalles históricos y conceptuales sobre esta técnica. Explica que los casos de uso describen las interacciones entre actores y el sistema, centrándose en la funcionalidad que el sistema ofrece a cada actor. Además, discute cómo los casos de uso se relacionan con UML y otras técnicas de análisis.
Este documento introduce los casos de uso como un método para especificar los requerimientos de un sistema de software. Explica que los casos de uso describen cómo los actores interactúan con el sistema, mencionando ejemplos como un empleado de ventas ingresando un pedido. Traza el origen de los casos de uso al análisis estructurado y a describir manuales de usuario. Finalmente, discute la incorporación de los casos de uso en UML y su independencia del método de diseño utilizado.
Este documento introduce los casos de uso como un método para especificar los requerimientos de un sistema desde la perspectiva del usuario. Define actores, casos de uso y provee detalles históricos y conceptuales sobre esta técnica. Explica que los casos de uso describen las interacciones entre actores y el sistema, centrándose en la funcionalidad que el sistema ofrece a cada actor. Además, indica que los casos de uso son independientes del método de diseño utilizado.
Este documento presenta seis prácticas del pensamiento computacional: analizar los efectos de la computación, producir artefactos computacionales, usar abstracción y modelos, analizar problemas y artefactos, comunicar procesos y resultados, y trabajar en equipos de manera efectiva. Explica cada práctica a través de ilustraciones y ejemplos cortos.
Recursos didácticos para aprender y practicar las competencias del Pensamiento Computacional:
Analizar los efectos de la computación
Producir artefactos computacionales
El uso de la abstracción y de los modelos
Analizar problemas y artefactos
Comunicar procesos y resultados
El trabajo efectivo en equipos
Descomponer
Reconocimiento de patrones
Generalización de patrones y abstracción
Diseño del algoritmo
1. Algunas reflexiones sobre el curso
Information Systems as Empirical Science and Evolutionary Epistemology
By Alfred F. Holl
Pedro D. González Yanes
alu1226@csi.ull.es
Índice
Índice............................................................................................................................................................1
Introducción..................................................................................................................................................1
La necesidad de modelar..............................................................................................................................2
Los tres mundos............................................................................................................................................2
Inducción y deducción. Circulo mayéutico..................................................................................................3
Isomorfía e Isolación....................................................................................................................................4
Modelos de referencia..................................................................................................................................5
Modelos de empresa.....................................................................................................................................6
Valor Añadido. Un nuevo valor para el informático...................................................................................7
Introducción
Una de las principales capacidades que debe poseer un informático es la
habilidad de modelar sistemas. Estos sistemas suelen ser fundamentalmente
empresas aunque también deberán ser capaces de modelar aplicaciones software,
dispositivos hardware, procesos de producción, etc. El informático domina y utiliza
un conjunto de metodologías de los Sistemas de Información y de la Ingeniería del
Software que usa para conocer el comportamiento de los sistemas con el que se
enfrenta, entender lo que el cliente le desea transmitir, lograr una especificación
clara de los requerimientos del software, etc.
Es pues, el modelado una actividad frecuente en el informático y debe éste ser
consciente de los procesos y entidades que entran en juego cuando esta modelando.
2. La necesidad de modelar
A grandes rasgos, el informático necesita modelar por,
- Simplificar la realidad consiguiendo una mejor comprensión de la misma.
- Dividir el sistema en subsistemas para observar como interactúan sus
diferentes partes.
- El diseño de software de un sistema bien modelado es mucho más sencillo
de desarrollar y mantener.
- Adquirir y comprender todos los requerimientos que el cliente le exige al
software.
Todo el conocimiento humano se estructura bajo infinidad de modelos, pero
el informático debe tener la capacidad de simplificar estos modelos y ser capaz de
expresarlos en “el papel” y aplicarlos en el desarrollo del software.
Los tres mundos
Si nos proponen como ejercicio el modelar como abrir una puerta (como
hicimos en las prácticas) seguramente pensaremos en un principio que es un
ejercicio fácil, pero cuando nos sentamos y nos ponemos a ello surgen mil y una
duda de cómo hacerlo, tales como: qué tipo de puerta es, como se abre, como es el
manubrio, etc. Esto hace reflexionar lo difícil que es modelar hasta los sistemas más
simples y que es imposible modelar un sistema contemplando todos los casos.
Además la concepción del sistema para cada informático es diferente y esto hará que
cada uno genere modelos diferentes.
3. El informático (analista), en su tarea de modelar debe ser consciente de los
tres mundos en los que debe “vivir y trabajar”. En primer lugar, está el MUNDO 1,
este es el mundo que le rodea y que debe modelar, es un mundo complejo con
infinidad de subsistemas relacionados entre sí (no isolados). De este mundo el
informático estará interesado en un segmento del mismo, normalmente, la
EMPRESA.
Por otro lado está el MUNDO 3, el mundo “del saber humano” o de los
modelos. Y en medio de los dos mundos, el MUNDO 2, que es el informático con
sus órganos sensoriales y de percepción, su experiencia, su conocimiento, etc.
Además el informático vive en el mundo 1 luego en cierta manera el mundo 2
está dentro del mundo 1.
Las acciones fundamentales que hace el informático para modelar son:
- Observar el mundo 1.
- Extraer casos, peculiaridades (proceso de inducción).
- Exportarlas al mundo 3.
- Verificación del modelo
Inducción y deducción. Circulo mayéutico
En el arte de crear modelos participan los procesos de inducción y deducción.
La inducción se refiere a la capacidad generalizar, observando multitud de casos el
informático es capaz crear un modelo. Y en el proceso de deducción el informático
utiliza el modelo para obtener nuevos casos específicos.
4. Estos procesos de inducción/deducción se engloban dentro lo que se llama
circulo mayéutico.
Isomorfía e Isolación
Aunque muchos autores los confundan hay que tener claro la diferencia entre
los mundos 1 y 3. Estos mundos no son isomorfos entre sí, es decir, no existe una
correspondencia entre ambos. Además el mundo 3 no se crea a partir del mundo 1
sino que depende de la percepción del sujeto en el mundo 2.
Así, por ejemplo, si estamos modelando en Diseño Orientado a Objetos el
comportamiento de una puerta no podemos hablar directamente que la puerta tiene
un número de propiedades (alto, ancho, etc.) y de métodos (abrir, cerrar) sino que el
modelo que creamos va a tener estos métodos y propiedades.
Otro concepto importante es el de isolación: que se refiere al grado de
separación/relación de los diferentes subsistemas. En el mundo 1 no existen sistemas
naturales isolados (solo existen sistemas abiertos), en cambio en el mundo 3 la
conexión entre entidades es mucho menor.
Por ejemplo, si pensamos en una empresa en el mundo 1 nos damos cuenta
que las interacciones de la empresa con el resto del mundo son muchísimas, además
de ser verdaderamente difícil identificar los límites de la misma. En cambio la
empresa modelada en mundo 2 tiene sus fronteras mejor delimitadas y sus
interacciones con las entidades externas claramente definidas. Como podemos ver
en el siguiente modelo de Diagrama de Contexto.
5. Modelos de referencia
Dentro del mundo 2, es útil para el informático reconocer y utilizar entre
todos los modelos que lo forman aquellos que le sirvan de referencia para crear
nuevos modelos. El proceso se indica en el siguiente esquema:
El informático observa el mundo 1 (usando sus sentidos de percepción de
manera empírica) y por el otro lado está el mundo 3 (activación del saber de manera
racional) considerado los dos mundo el informático es capaz (o debe ser capaz) de
encontrar similitudes entre los subsistemas que esta analizando y los modelos que ya
existen en el mundo 3.
Como ejemplo de lo que quiero decir imaginemos que el informático necesita
realizar un software de gestión de facturas para una empresa que tiene clientes a los
que emite ordenes (facturas) que esta formado por líneas que hacen referencia a
productos. El modelo entidad de datos que crea el informático en el mundo 2 podría
ser:
6. Como desarrolló un buen software, el informático sigue trabajando y después
de un año la empresa necesita ampliar el software para gestionar las ordenes de los
proveedores. El informático, entonces, envés de crear un modelo nuevo
exclusivamente desde el mundo 1 podría usar del mundo 3 el modelo de entidad de
datos anterior para crear el nuevo debido a su similitud.
Con lo ejemplo que hemos visto parece entonces que es mejor aquel
informático con mayor experiencia pues tendrá mayor número de modelos de
referencia para aplicar en diferentes situaciones. Esto es así, pero el informático
experto debe ser consciente de los modelos de referencia que aplica, usar por inercia
o de manera inconsciente un modelo de referencia puede hacer que el modelo creado
pierda peculiaridades importantes del sistema que no se pueden obviar.
Un informático experto tiende a ver la empresa de manera general,
comparando sus subsistemas y modelos a los subsistemas y modelos de otras
empresas que ya ha estudiado. En cambio un informático junior al no tener
experiencia tenderá a considerar las peculiaridades de la empresa y le será más
difícil crear modelos generales que se adapten a ella.
Modelos de empresa
El principal sistema donde trabaja el informático es en la empresa. Es por
tanto importante conocer las diferentes teorías de como se estructuran y organizan.
Muy básicamente podemos tener dos visiones sobre la empresa, una
horizontal y otra vertical:
7. Al informático le interesará mas fijarse en una visión horizontal de la
empresa, en especial como el flujo de información desde que una solicitud entra en
la empresa hasta que tiene su respuesta hacia el exterior en lo que se llama los
Business Process Reengineering (BPR).
Valor Añadido. Un nuevo valor para el informático
Una idea que se explicó en el curso y que me gusto fue de que el buen
informático conociese en gran medida la actividad del negocio de la empresa, no
sólo porque es necesario para poder realizar su tarea de informático analizando la
empresa y desarrollando software para ella, sino como un medio para ser aceptado
por el resto de trabajadores de la misma, y dejar de ser “el informático” para ser
“algo más”. Lo que se propone es dar un salto cualitativo y añadir a la figura de
informático un nuevo valor; el valor de no sólo ser informático sino además conocer
el sector de mercado de la empresa y aportar ideas, proyectos, soluciones en este
ámbito.