En ingeniería de sistemas , ingeniería de software y ciencias de la computación , un modelo de función o modelo funcional es una representación estructurada de las funciones ( actividades , acciones , procesos, operaciones ) dentro del sistema modelado o área temática. [1]
Un modelo de funciones, similar al modelo de actividades o modelo de procesos , es una representación gráfica de la función de una empresa dentro de un alcance definido. Los objetivos del modelo de funciones son describir las funciones y los procesos, ayudar a descubrir las necesidades de información, ayudar a identificar oportunidades y establecer una base para determinar los costos de productos y servicios. [2]
El modelo funcional en el campo de la ingeniería de sistemas y la ingeniería de software se origina en las décadas de 1950 y 1960, pero el origen del modelado funcional de la actividad organizacional se remonta a finales del siglo XIX.
A finales del siglo XIX aparecieron los primeros diagramas que representaban actividades, acciones, procesos u operaciones empresariales, y en la primera mitad del siglo XX surgieron los primeros métodos estructurados para documentar las actividades de los procesos empresariales. Uno de esos métodos fue el diagrama de flujo de procesos , presentado por Frank Gilbreth a los miembros de la Sociedad Estadounidense de Ingenieros Mecánicos (ASME) en 1921 con la presentación titulada “Diagramas de procesos: primeros pasos para encontrar la mejor manera”. [3] Las herramientas de Gilbreth se abrieron paso rápidamente en los planes de estudio de ingeniería industrial .
El surgimiento del campo de la ingeniería de sistemas se remonta a los Laboratorios Bell Telephone en la década de 1940. [4] La necesidad de identificar y manipular las propiedades de un sistema en su conjunto, que en proyectos de ingeniería complejos pueden diferir en gran medida de la suma de las propiedades de las partes, motivó a varias industrias a aplicar la disciplina. [5] Uno de los primeros en definir el modelo de función en este campo fue el ingeniero británico William Gosling . En su libro The design of engineering systems (1962, p. 25) afirmó:
Uno de los primeros modelos de funciones bien definidos fue el diagrama de bloques de flujo funcional (FFBD) desarrollado por TRW Incorporated, empresa relacionada con la defensa, en la década de 1950. [7] En la década de 1960, la NASA lo utilizó para visualizar la secuencia temporal de eventos en sistemas espaciales y misiones de vuelo. [8] Además, se utiliza ampliamente en la ingeniería de sistemas clásica para mostrar el orden de ejecución de las funciones del sistema. [9]
En ingeniería de sistemas e ingeniería de software, un modelo funcional se crea desde una perspectiva de modelado funcional . La perspectiva funcional es una de las perspectivas posibles en el modelado de procesos de negocio ; otras perspectivas son, por ejemplo, la conductual, la organizacional o la informativa. [10]
Una perspectiva de modelado funcional se concentra en describir el proceso dinámico . El concepto principal en esta perspectiva de modelado es el proceso, que puede ser una función, una transformación, una actividad, una acción, una tarea, etc. Un ejemplo conocido de un lenguaje de modelado que emplea esta perspectiva son los diagramas de flujo de datos .
La perspectiva utiliza cuatro símbolos para describir un proceso, estos son:
Ahora, con estos símbolos, un proceso puede representarse como una red de estos símbolos. Este proceso descompuesto es un DFD, diagrama de flujo de datos.
En el Modelado Empresarial Dinámico se realiza una división en el modelo de Control, modelo de Función, modelo de Proceso y modelo Organizacional.
La descomposición funcional se refiere en términos generales al proceso de resolver una relación funcional en sus partes constituyentes de tal manera que la función original pueda reconstruirse a partir de esas partes mediante la composición de funciones . En general, este proceso de descomposición se lleva a cabo ya sea con el propósito de obtener información sobre la identidad de los componentes constituyentes, o con el propósito de obtener una representación comprimida de la función global, una tarea que es factible solo cuando los procesos constituyentes poseen un cierto nivel de modularidad .
La descomposición funcional tiene un papel destacado en la programación informática , donde un objetivo principal es modularizar los procesos en la mayor medida posible. Por ejemplo, un sistema de gestión de bibliotecas puede dividirse en un módulo de inventario, un módulo de información para usuarios y un módulo de evaluación de tarifas. En las primeras décadas de la programación informática, esto se manifestaba como el "arte de la subrutina", como lo llamaban algunos profesionales destacados.
La descomposición funcional de sistemas de ingeniería es un método para analizar sistemas de ingeniería. La idea básica es tratar de dividir un sistema de tal manera que cada bloque del diagrama de bloques pueda describirse sin un "y" o un "o" en la descripción.
Este ejercicio obliga a cada parte del sistema a tener una función pura . Cuando un sistema está compuesto de funciones puras, se pueden reutilizar o reemplazar. Un efecto secundario habitual es que las interfaces entre bloques se vuelven simples y genéricas. Dado que las interfaces suelen volverse simples, es más fácil reemplazar una función pura por una función similar relacionada.
El enfoque funcional se amplía con múltiples técnicas diagramáticas y notaciones de modelado. Esta sección ofrece una descripción general de las técnicas importantes en orden cronológico.
Un diagrama de bloques funcional es un diagrama de bloques que describe las funciones y las interrelaciones de un sistema . El diagrama de bloques funcional puede representar: [11]
El diagrama de bloques puede utilizar símbolos esquemáticos adicionales para mostrar propiedades particulares.
Los diagramas de bloques de funciones específicos son el diagrama de bloques de flujo funcional clásico y el diagrama de bloques de funciones (FBD) utilizado en el diseño de controladores lógicos programables .
El diagrama de bloques de flujo funcional (FFBD) es un diagrama de flujo de múltiples niveles, secuenciado en el tiempo y paso a paso del flujo funcional del sistema . [14] El diagrama se desarrolló en la década de 1950 y se usa ampliamente en la ingeniería de sistemas clásica . El diagrama de bloques de flujo funcional también se conoce como diagrama de flujo funcional , diagrama de bloques funcionales y flujo funcional . [15]
Los diagramas de bloques de flujo funcional (FFBD) suelen definir las secuencias detalladas, paso a paso, de operaciones y soporte de los sistemas , pero también se utilizan de manera eficaz para definir procesos en el desarrollo y producción de sistemas. Los procesos de desarrollo de software también utilizan ampliamente los FFBD. En el contexto del sistema, los pasos del flujo funcional pueden incluir combinaciones de hardware , software , personal , instalaciones y/o procedimientos.
En el método FFBD, las funciones se organizan y representan según su orden lógico de ejecución. Cada función se muestra con respecto a su relación lógica con la ejecución y finalización de otras funciones. Un nodo etiquetado con el nombre de la función representa cada función. Las flechas de izquierda a derecha muestran el orden de ejecución de las funciones. Los símbolos lógicos representan la ejecución secuencial o paralela de las funciones. [16]
HIPO para procesos de entrada y salida jerárquicos es una técnica de documentación y ayuda para el diseño de análisis de sistemas popular en la década de 1970 [17] para representar los módulos de un sistema como una jerarquía y para documentar cada módulo. [18]
Se utilizó para desarrollar requisitos, construir el diseño y respaldar la implementación de un sistema experto para demostrar el encuentro automatizado. Luego, la verificación se llevó a cabo de manera sistemática debido al método de diseño e implementación. [19]
El diseño general del sistema se documenta mediante diagramas HIPO o diagramas de estructura . El diagrama de estructura es similar en apariencia a un organigrama, pero se ha modificado para mostrar detalles adicionales. Los diagramas de estructura se pueden utilizar para mostrar varios tipos de información, pero se utilizan más comúnmente para diagramar estructuras de datos o estructuras de código. [18]
El diagrama N2 es un diagrama en forma de matriz que representa las interfaces funcionales o físicas entre los elementos del sistema. Se utiliza para identificar, definir, tabular, diseñar y analizar sistemáticamente las interfaces funcionales y físicas. Se aplica a las interfaces del sistema y a las interfaces de hardware y/o software . [14]
El diagrama N2 se ha utilizado ampliamente para desarrollar interfaces de datos, principalmente en las áreas de software . Sin embargo, también se puede utilizar para desarrollar interfaces de hardware. El diagrama N2 básico se muestra en la Figura 2. Las funciones del sistema se colocan en la diagonal; el resto de los cuadrados en la matriz N × N representan las entradas y salidas de la interfaz. [20]
La Técnica de Análisis y Diseño Estructurado (SADT) es una metodología de ingeniería de software para describir sistemas como una jerarquía de funciones, una notación diagramática para construir un boceto para una aplicación de software. Ofrece bloques de construcción para representar entidades y actividades, y una variedad de flechas para relacionar cuadros. Estos cuadros y flechas tienen una semántica informal asociada . [21] SADT puede usarse como una herramienta de análisis funcional de un proceso dado, utilizando niveles sucesivos de detalles. El método SADT permite definir necesidades de usuarios para desarrollos de TI, que se utilizan en sistemas de información industriales, pero también para explicar y presentar procesos y procedimientos de fabricación de una actividad. [22]
La SADT proporciona una visión funcional específica de cualquier empresa al describir las funciones y sus relaciones en una empresa. Estas funciones cumplen los objetivos de una empresa, como las ventas, la planificación de pedidos, el diseño de productos, la fabricación de piezas y la gestión de recursos humanos. La SADT puede representar relaciones funcionales simples y puede reflejar relaciones de flujo de datos y control entre diferentes funciones. El formalismo IDEF0 se basa en la SADT, desarrollada por Douglas T. Ross en 1985. [23]
IDEF0 es una metodología de modelado de funciones para describir funciones de fabricación , que ofrece un lenguaje de modelado funcional para el análisis, desarrollo, reingeniería e integración de sistemas de información ; procesos de negocio; o análisis de ingeniería de software. [24] Es parte de la familia IDEF de lenguajes de modelado en el campo de la ingeniería de software , y está construido sobre el lenguaje de modelado funcional SADT .
El método de modelado funcional IDEF0 está diseñado para modelar las decisiones, acciones y actividades de una organización o sistema. [25] Se derivó del lenguaje de modelado gráfico establecido, la técnica de análisis y diseño estructurado (SADT), desarrollado por Douglas T. Ross y SofTech, Inc. En su forma original, IDEF0 incluye tanto una definición de un lenguaje de modelado gráfico ( sintaxis y semántica ) como una descripción de una metodología integral para desarrollar modelos. [1] La Fuerza Aérea de los EE. UU. encargó a los desarrolladores de SADT que desarrollaran un método de modelo de función para analizar y comunicar la perspectiva funcional de un sistema. IDEF0 debería ayudar a organizar el análisis del sistema y promover una comunicación eficaz entre el analista y el cliente a través de dispositivos gráficos simplificados. [25]
El diseño axiomático es un proceso de descomposición funcional jerárquica de arriba hacia abajo que se utiliza como marco de síntesis de soluciones para el análisis, desarrollo, reingeniería e integración de productos, sistemas de información, procesos de negocios o soluciones de ingeniería de software. [26] Su estructura es adecuada matemáticamente para analizar el acoplamiento entre funciones con el fin de optimizar la robustez arquitectónica de los posibles modelos de soluciones funcionales.
En el campo de la ingeniería de sistemas y software se han definido numerosos modelos funcionales y de funciones específicas y modelos relacionados. Aquí sólo se explicarán algunos tipos generales.
Un modelo de función empresarial (BFM) es una descripción general o categoría de operaciones que se realizan rutinariamente para llevar a cabo la misión de una organización. Proporcionan una estructura conceptual para la identificación de las funciones empresariales generales . [27] Puede mostrar los procesos empresariales críticos en el contexto de las funciones del área empresarial. Los procesos del modelo de función empresarial deben ser coherentes con los procesos de los modelos de cadena de valor. Los procesos son un grupo de actividades empresariales relacionadas que se realizan para producir un producto final o para proporcionar un servicio. A diferencia de las funciones empresariales que se realizan de forma continua, los procesos se caracterizan por el hecho de que tienen un inicio y un punto final específicos marcados por la entrega de un resultado deseado. La figura de la derecha representa la relación entre los procesos empresariales, las funciones empresariales y el modelo de referencia empresarial del área empresarial. [28]
Business Process Model and Notation (BPMN) es una representación gráfica para especificar procesos de negocio en un flujo de trabajo . BPMN fue desarrollado por Business Process Management Initiative (BPMI) y actualmente es mantenido por Object Management Group desde que las dos organizaciones se fusionaron en 2005. La versión actual de BPMN es 2.0. [29]
La especificación de Modelo y Notación de Procesos de Negocio (BPMN) proporciona una notación gráfica para especificar procesos de negocio en un Diagrama de Procesos de Negocio (BPD). [30] El objetivo de BPMN es apoyar la gestión de procesos de negocio tanto para usuarios técnicos como para usuarios de negocio al proporcionar una notación que sea intuitiva para los usuarios de negocio pero capaz de representar semánticas de procesos complejos. La especificación BPMN también proporciona un mapeo entre los gráficos de la notación a las construcciones subyacentes de lenguajes de ejecución, particularmente BPEL4WS . [31]
Un modelo de referencia empresarial es un modelo de referencia que se concentra en los aspectos funcionales y organizativos del negocio principal de una empresa , organización de servicios o agencia gubernamental . En ingeniería empresarial, un modelo de referencia empresarial es parte de un marco de arquitectura empresarial o marco de arquitectura , que define cómo organizar la estructura y las vistas asociadas con una arquitectura empresarial .
Un modelo de referencia en general es un modelo de algo que incorpora el objetivo o la idea básica de algo y que luego puede considerarse como una referencia para varios propósitos. Un modelo de referencia empresarial es un medio para describir las operaciones comerciales de una organización, independientemente de la estructura organizacional que las realiza. Otros tipos de modelos de referencia empresarial también pueden representar la relación entre los procesos comerciales , las funciones comerciales y el modelo de referencia empresarial del área comercial . Estos modelos de referencia se pueden construir en capas y ofrecen una base para el análisis de los componentes del servicio, la tecnología, los datos y el rendimiento.
El modelo de función del operador (OFM) se propone como una alternativa a las técnicas tradicionales de análisis de tareas utilizadas por los ingenieros de factores humanos . Un modelo de función del operador intenta representar en forma matemática cómo un operador podría descomponer un sistema complejo en partes más simples y coordinar las acciones de control y las configuraciones del sistema de modo que se logre un rendimiento general aceptable del sistema. El modelo representa cuestiones básicas de representación del conocimiento, flujo de información y toma de decisiones en sistemas complejos. Miller (1985) sugiere que la estructura de red puede considerarse como una posible representación del modelo interno del sistema de un operador más una estructura de control que especifica cómo se utiliza el modelo para resolver los problemas de decisión que comprenden las funciones de control del operador. [32]
Este artículo incorpora material de dominio público del Instituto Nacional de Estándares y Tecnología.
Este artículo incorpora material de dominio público del Modelo de Función del Operador (OFM). Administración Federal de Aviación .