El modelo de entrada-proceso-salida (IPO) , o patrón de entrada-proceso-salida , es un enfoque ampliamente utilizado en el análisis de sistemas y la ingeniería de software para describir la estructura de un programa de procesamiento de información u otro proceso. Muchos textos introductorios de programación y análisis de sistemas lo presentan como la estructura más básica para describir un proceso. [1] [2] [3] [4]
Descripción general
Un programa informático es útil para otro tipo de proceso que utiliza el modelo de entrada-proceso-salida: recibe entradas de un usuario u otra fuente, realiza algunos cálculos sobre las entradas y devuelve los resultados de los cálculos. [1] En esencia, el sistema se separa del entorno, definiendo así tanto las entradas como las salidas como un mecanismo unificado. [5]
El sistema dividiría el trabajo en tres categorías:
En otras palabras, dichos insumos pueden ser materiales, recursos humanos, dinero o información, transformados en productos, como consumibles, servicios, nueva información o dinero.
Como consecuencia, un sistema de entrada-proceso-salida se vuelve muy vulnerable a la mala interpretación. Esto se debe a que, teóricamente, contiene todos los datos, en lo que respecta al entorno fuera del sistema. Sin embargo, en la práctica, el entorno contiene una variedad significativa de objetos que un sistema no puede comprender, ya que existen fuera del control del sistema. Como resultado, es muy importante comprender dónde se encuentra el límite entre el sistema y el entorno, que está más allá de la comprensión del sistema. Varios analistas a menudo establecen sus propios límites, favoreciendo su punto de vista, lo que crea mucha confusión. [6]
Sistemas en funcionamiento
Los puntos de vista difieren en lo que respecta al pensamiento sistémico . [4] Una de esas definiciones describiría el sistema de entrada-proceso-salida como una estructura que sería:
"El pensamiento sistémico es el arte y la ciencia de realizar inferencias confiables sobre el comportamiento mediante el desarrollo de una comprensión cada vez más profunda de la estructura subyacente" [7]
Como alternativa, también se sugirió que los sistemas no son "holísticos" en el sentido de vincularse con objetos remotos (por ejemplo: intentar conectar un cangrejo, la capa de ozono y el ciclo de vida del capital). [8]
Tipos de sistemas
Hay cinco categorías principales que son las más citadas en la literatura sobre sistemas de información: [9] [10]
Sistemas naturales
Un sistema que no ha sido creado como resultado de la intervención humana. Ejemplos de ello serían el sistema solar y el cuerpo humano, que ha evolucionado hasta su forma actual [9]
Sistemas físicos diseñados
Un sistema creado como resultado de la intervención humana y que es físicamente identificable. Ejemplos de ello serían las diversas máquinas informáticas creadas por la mente humana para algún propósito específico. [9]
Sistemas abstractos diseñados
Un sistema que ha sido creado como resultado de la intervención humana y que no es físicamente identificable. Ejemplos de ello serían los sistemas matemáticos y filosóficos, que han sido creados por mentes humanas con algún propósito específico. [9]
También existen algunos sistemas sociales que permiten a los humanos lograr colectivamente un objetivo específico.
Sistemas sociales
Un sistema creado por los seres humanos y derivado de propósitos intangibles. Por ejemplo: una familia, que es una jerarquía de relaciones humanas, que en esencia crea el límite entre los sistemas naturales y humanos. [9]
Sistemas de actividad humana
Una organización con jerarquía, creada por humanos para un propósito específico. Por ejemplo: una empresa, que organiza a humanos juntos para colaborar y lograr un propósito específico. El resultado de este sistema es físicamente identificable. [9] Sin embargo, existen algunos vínculos significativos con los tipos anteriores. Está claro que la idea de sistema de actividad humana (HAS), consistiría en una variedad de sistemas sociales más pequeños, con su desarrollo y organización únicos. Además, se podría decir que los HAS pueden incluir sistemas diseñados: computadoras y maquinaria. La mayoría de los sistemas anteriores se superpondrían. [10]
Características del sistema
Hay varias características clave cuando se trata del comportamiento fundamental de cualquier sistema.
Los sistemas se pueden clasificar como abiertos o cerrados: [4]
Los sistemas que interactúan con su entorno, en forma de dinero, datos, energía o materiales de intercambio, se consideran generalmente abiertos. La apertura de un sistema puede variar significativamente. Esto se debe a que un sistema se clasificaría como abierto si recibe incluso una sola entrada del entorno, mientras que un sistema que simplemente interactúa con el entorno también se clasificaría como abierto. Cuanto más abierto sea el sistema, más complejo será normalmente, debido a la menor previsibilidad de sus componentes.
Los sistemas que no tienen interacción alguna con el entorno son cerrados. Sin embargo, en la práctica, un sistema completamente cerrado es meramente habitable, debido a la pérdida de uso práctico de la salida. Como resultado, la mayoría de los sistemas serían abiertos o abiertos en cierta medida. [11]
Los sistemas pueden clasificarse como deterministas o estocásticos : [4]
Un sistema bien definido y claramente estructurado en términos de patrones de comportamiento se vuelve predecible, y por lo tanto se vuelve determinista. En otras palabras, solo utilizaría datos empíricos. Por ejemplo, las matemáticas o la física se basan en leyes específicas que hacen que los resultados de los cálculos sean predecibles. Los sistemas deterministas tendrían interacciones simplistas entre los componentes internos.
Los sistemas más complejos y, a menudo, más abiertos, tendrían un grado relativamente menor de predictibilidad, debido a la ausencia de patrones de comportamiento claramente estructurados. Por lo tanto, analizar un sistema de este tipo es mucho más difícil. [ cita requerida ] Dichos sistemas serían estocásticos o probabilísticos, debido a la naturaleza estocástica de los seres humanos al realizar diversas actividades. Dicho esto, los sistemas diseñados aún se considerarían deterministas, [ cita requerida ] debido a una estructura rígida de reglas incorporadas en el diseño.
Los sistemas se pueden clasificar como estáticos o dinámicos [4]
La mayoría de los sistemas se considerarían dinámicos debido a la constante evolución de la capacidad de procesamiento, pero a algunos sistemas les puede resultar difícil encontrar el equilibrio entre su creación y su desaparición. Un ejemplo de ello podría ser un mapa impreso, que no evoluciona, a diferencia de un mapa dinámico, creado por desarrolladores que lo actualizan constantemente.
Los sistemas pueden clasificarse como autorreguladores o no autorreguladores [4] [12]
Cuanto mayor sea el grado de autocontrol de la actividad de los sistemas, mayor será la viabilidad del sistema final. Es vital que cualquier sistema pueda controlar sus actividades para permanecer estable. [ cita requerida ]
Aplicaciones de la vida real
Negocio corporativo
Un proceso de fabricación que utiliza materias primas como insumos, aplica un proceso de fabricación y produce bienes manufacturados como resultado. El uso de tales sistemas podría ayudar a crear organizaciones humanas más fuertes, en términos de operaciones de la empresa en todos y cada uno de los departamentos de la misma, sin importar el tamaño, lo que . Las IPO también pueden reestructurar los sistemas estáticos y no autorregulados existentes, que en el mundo real se utilizarían en forma de externalización del cumplimiento del producto, debido a la ineficiencia del cumplimiento actual. [1] [13]
Programación
La mayoría de los programas existentes para codificación, como Java , Python y C++ , se basarían en un modelo IPO determinista, con entradas claras provenientes del codificador y convertidas en salidas, como aplicaciones.
Un sistema de procesamiento de transacciones por lotes , que acepta grandes volúmenes de transacciones homogéneas, las procesa (posiblemente actualizando una base de datos) y produce resultados como informes o cálculos. [4]
Un programa informático interactivo que acepta solicitudes simples de un usuario y las responde después de algún procesamiento y/o acceso a bases de datos. [3]
Científico
Una calculadora que utiliza entradas proporcionadas por el operador y las procesa para obtener salidas que el operador puede utilizar.
Un termostato , que detecta la temperatura (entrada), decide una acción (encender o apagar la calefacción) y ejecuta la acción (salida). [4] [14] [13]
^ abc Grady, JO, "Planificación de ingeniería de sistemas e identidad empresarial", Taylor & Francis, 1995 .
^ Goel, A., "Fundamentos de la informática", Pearson Education India, 2010.
^ ab Zelle, J., "Programación en Python: Introducción a la informática, 2.ª edición", Franklin, Beedle, & Associates, 2010.
^ abcdefgh Curry, A. y Flett, P. y Hollingsworth, I., "Gestión de información y sistemas: la perspectiva empresarial", Routledge, 2006.
^
Waring A. Pensamiento sistémico práctico, International Thomson Business Press: Londres. (1996)
^ "Copia archivada" (PDF) . Archivado desde el original (PDF) el 2016-09-11 . Consultado el 2015-11-03 .{{cite web}}: CS1 maint: copia archivada como título ( enlace )