Las empresas, gobiernos, organizaciones sin fines de lucro o equipos pequeños, sin importar su tamaño o tipo, realizan actividades organizativas.
Las actividades organizativas se componen de múltiples procesos de negocio.
Los procesos de negocio se pueden desglosar en tareas. Cuando los departamentos y los individuos dentro de una organización realizan las tareas asignadas a sus respectivos roles, el proceso de negocio funciona.
De esta manera, a medida que funcionan los procesos de negocio individuales, funciona la actividad organizativa en su totalidad.
Software Orientado a Objetos
En el mundo del desarrollo de software, se ha desarrollado el concepto de software orientado a objetos, junto con metodologías de diseño y lenguajes de programación basados en él.
Anteriormente, el software se diseñaba con los datos y el procesamiento por separado, y dentro de los programas, las definiciones de datos y procesamiento eran independientes.
Esto permitía que las definiciones de datos y procesamiento estrechamente relacionadas se ubicaran cerca unas de otras o en ubicaciones completamente separadas dentro del programa.
Independientemente de dónde se colocaran, no había diferencia en cómo la computadora procesaba el programa.
Sin embargo, al modificar o añadir características a los programas desarrollados, la calidad de su disposición impactaba significativamente la eficiencia del trabajo y la probabilidad de errores.
Si las definiciones de datos y procesamiento estrechamente relacionadas estaban dispersas a lo largo de decenas o cientos de miles de líneas de código, realizar cambios se volvía notablemente difícil.
El software orientado a objetos proporciona un enfoque fundamental para resolver tales problemas.
Es decir, adopta la idea de compartimentar claramente los datos y el procesamiento estrechamente relacionados dentro del programa y mantenerlos en el mismo compartimento, facilitando su comprensión al modificar el programa posteriormente.
Este compartimento que contiene datos y procesamiento es el concepto llamado objeto.
También es crucial diseñar el software desde el principio, centrándose en la unidad de un objeto.
Además, normalmente estamos acostumbrados a percibir diversas cosas como objetos.
Por ejemplo, cuando configuramos un despertador a una hora para levantarnos, la alarma suena a esa hora. Entendemos que un despertador, como objeto, posee los datos de la hora de levantarse y el proceso de hacer sonar la alarma.
Diseñar e implementar software de una manera que se alinee con esta percepción humana común es lógico. Por eso el software orientado a objetos se hizo tan prevalente.
Software Orientado a Procesos de Negocio
He proporcionado una visión general de las actividades organizativas y el software orientado a objetos.
Ahora, me gustaría proponer el Software Orientado a Procesos de Negocio como un nuevo enfoque para el desarrollo de software.
Como se explicó en la discusión sobre el software orientado a objetos, diseñar software de una manera que se alinee con la percepción humana ofrece ventajas significativas al modificar o añadir características al software.
Al utilizar software en actividades organizativas, colocar la información y las funciones relacionadas dentro del compartimento conceptual de un proceso de negocio, que es su unidad fundamental, debería facilitar las modificaciones y adiciones de características.
Este es el concepto básico del Software Orientado a Procesos de Negocio.
Manuales e Información de Entrada
En empresas relativamente grandes, los procesos de negocio típicos a menudo están manualizados. Los procesos de negocio que están lo suficientemente definidos como para ser manualizados también se conocen como flujos de trabajo.
Los sistemas de negocio implementados mediante software general son sistematizaciones de estos flujos de trabajo. Al hacer que cada persona o departamento a cargo ingrese información en el sistema de negocio de acuerdo con el flujo de trabajo, se realiza el proceso de negocio.
Aquí, los manuales de negocio, los sistemas de negocio y la información de entrada están muy estrechamente relacionados.
Sin embargo, en el mecanismo descrito aquí, estos tres elementos estrechamente relacionados están dispersos.
El concepto de Software Orientado a Procesos de Negocio sostiene la posición de que estos deben ser una única entidad.
Imagine un documento en un solo archivo que contiene un manual de negocio y también campos para que cada persona o departamento a cargo ingrese información.
Además, suponga que la información de contacto para la siguiente persona a cargo de cada tarea también está escrita específicamente.
Entonces, verá que todos los elementos del proceso de negocio están incluidos en este archivo de entrada de información con un manual de negocio.
Si este archivo se crea y se entrega a la persona a cargo de la primera tarea, el proceso de negocio continuará según el manual proporcionado. Finalmente, cuando se ingrese toda la información necesaria, se completará un proceso de negocio.
Este archivo es el propio Software Orientado a Procesos de Negocio, aplicando el concepto de Software Orientado a Procesos de Negocio.
Y a medida que funcionen diversos programas de Software Orientado a Procesos de Negocio, la actividad organizativa en su totalidad funcionará.
El Software en Sí
Anteriormente, describí el archivo de entrada de información con un manual de negocio como el propio software orientado a procesos de negocio.
Algunos podrían haber imaginado que esto llevaría a una discusión sobre el desarrollo de programas o sistemas.
Sin embargo, no es el caso.
Independientemente de los programas o sistemas, este archivo en sí funciona como software orientado a procesos de negocio.
Como se explicó antes, si este archivo se crea y se envía a la primera persona a cargo, luego se pasará a la persona a cargo de cada tarea subsiguiente, y el proceso de negocio descrito en él se ejecutará.
Por supuesto, es posible desarrollar programas y sistemas basados en este archivo para implementar el flujo de trabajo escrito en él.
Sin embargo, ¿cuánta diferencia hay entre usar un sistema así y simplemente pasar el archivo mismo entre las partes responsables?
Aquí, el punto a destacar es que desarrollar un programa o sistema separa el manual del procesamiento.
Esta separación va en contra del enfoque orientado a procesos de negocio. En otras palabras, dificulta la mejora de los procesos de negocio y la adición de características.
Esto se hace inmediatamente evidente si se imagina la modificación de un manual de negocio.
Cada vez que se cambia un procedimiento de un proceso de negocio, el programa o sistema debe modificarse en consecuencia.
Por esta razón, los manuales de negocio deben ser elaborados a fondo desde el principio, y la manualización lleva tiempo. Además, incluso si se cambia un manual, no se refleja inmediatamente en el programa o sistema.
Además del problema del tiempo requerido, también hay costos de modificación.
Esto significa que los procesos de negocio y los manuales no se pueden cambiar fácilmente.
Por otro lado, si no se desarrollan programas o sistemas, y en su lugar, los archivos de entrada de información con manuales de negocio se intercambian simplemente entre las partes responsables, entonces se eliminan el período de desarrollo y los costos de mantenimiento de los programas y sistemas.
Software Ejecutable
Algunos podrían preguntarse, entonces, por qué este archivo se llama "software".
La razón es que este archivo es un archivo ejecutable. Sin embargo, no es un software ejecutado por una computadora como un programa, sino más bien un software ejecutado por humanos.
Un manual de negocio es como un programa para humanos. Y los campos de información de entrada son como ubicaciones de almacenamiento de datos en la memoria o una base de datos.
Visto de esta manera, no es incorrecto considerar este archivo como software ejecutado por humanos.
Ejecutor
Las tareas escritas en el software orientado a procesos de negocio pueden ser ejecutadas tanto por humanos como por inteligencia artificial.
Incluso para una sola tarea, podría haber casos en los que la inteligencia artificial y los humanos cooperen para ejecutarla, o tareas ejecutadas únicamente por humanos, o únicamente por inteligencia artificial.
La inteligencia artificial también puede leer el manual de negocio dentro de este archivo y realizar el procesamiento adecuado.
Esto significa que este archivo es software ejecutable tanto para humanos como para inteligencia artificial.
Asistencia de IA
Primero, la inteligencia artificial ejecuta el archivo. Al hacerlo, lee el manual de negocio escrito en el archivo y comprende el contenido a procesar.
Algunas partes del proceso pueden ser ejecutadas directamente por la inteligencia artificial, o la información puede ser introducida en los campos de entrada.
Por otro lado, también hay partes que requieren procesamiento humano o entrada de información.
Para estas partes, la inteligencia artificial notifica al humano y le solicita el procesamiento o la entrada de información.
En este caso, la inteligencia artificial puede cambiar la forma en que presenta la información al humano, dependiendo del contenido del procesamiento humano y de la información de entrada.
Los métodos básicos de presentación a los humanos podrían incluir la transmisión de las tareas necesarias mediante chat de texto o de voz, o la obtención de la información requerida.
También existe la opción de abrir directamente el archivo. Si el archivo es de texto, por ejemplo, se abriría un editor de texto.
Un método ligeramente más avanzado implica extraer las tareas necesarias y la información de entrada y, luego, basándose en su contenido, generar un archivo temporal para una aplicación con la que los humanos puedan trabajar fácilmente, y luego ejecutar ese archivo.
Por ejemplo, si se requiere una entrada en formato de tabla, se generaría un archivo de hoja de cálculo para que los humanos introduzcan la información. La información introducida en el archivo temporal sería luego transcrita por la inteligencia artificial a los campos de entrada del archivo original.
Un método aún más avanzado implica la programación bajo demanda de una aplicación con una interfaz de usuario que se ajuste al archivo y a las tareas o entradas requeridas del humano.
De esta manera, cuando la inteligencia artificial procesa automáticamente o asiste el trabajo y la entrada humana para completar una tarea, transfiere el archivo a la persona de contacto para la siguiente tarea, tal como está escrito en el manual de negocio.
Al hacer que la inteligencia artificial asista a los humanos de esta manera, se puede lograr un mecanismo en el que los humanos solo necesiten realizar eficientemente las tareas mínimas necesarias a través de una interfaz fácil de usar.
Archivo Amigable con la IA
Fundamentalmente, el software orientado a procesos de negocio puede tener cualquier formato de archivo.
Sin embargo, considerando la asistencia de la inteligencia artificial, un formato de archivo básico que sea fácil de manejar para la IA es adecuado. Un ejemplo principal es un archivo de texto con formato Markdown.
También sería beneficioso definir reglas básicas para la descripción del contenido. Dado que la inteligencia artificial proporciona asistencia, estas reglas básicas de descripción pueden modificarse o ampliarse de forma flexible.
Acumulación de Conocimiento y Mejora de Procesos de Negocio
El software orientado a procesos de negocio permite a las organizaciones añadir nuevos procesos de negocio o modificar los existentes simplemente creando o cambiando el propio archivo, que combina manuales y campos de entrada, sin implicar el desarrollo de programas o sistemas.
Además, es importante incluir información de contacto para un canal de comunicación dentro del manual de negocio para preguntas o solicitudes de mejora relacionadas con ese proceso de negocio.
Esto reduce significativamente el tiempo y el esfuerzo que la inteligencia artificial y los humanos dedican a lidiar con incertidumbres o a investigar. Además, dado que las preguntas, respuestas y solicitudes de mejora se centralizan en un único punto de contacto, el conocimiento de los procesos de negocio se acumula de forma natural, y los procesos de negocio pueden mejorarse con frecuencia.
Tareas como la sistematización y organización del conocimiento acumulado, o la modificación del software orientado a procesos de negocio en respuesta a solicitudes de mejora, también pueden ser realizadas automáticamente por la inteligencia artificial o con su asistencia a los humanos.
Adicionalmente, si es necesario, se puede crear nuevo software orientado a procesos de negocio para añadir nuevos procesos de negocio a la organización.
Organización de Aprendizaje Rápido
De esta manera, a través del concepto de software orientado a procesos de negocio y la automatización y asistencia de la inteligencia artificial, una organización en su conjunto puede acumular conocimiento de forma natural y auto-mejorarse continuamente.
Esto puede describirse como una organización de aprendizaje rápido.
Esto permite actividades organizativas mucho más eficientes que las organizaciones tradicionales.
Mientras tanto, con la asistencia de la IA para tareas individuales, los humanos solo necesitan realizar un trabajo mínimo a través de interfaces fáciles de usar.
Por lo tanto, los humanos no necesitan aprender una vasta cantidad de información ni comprender todos los procesos de negocio que cambian con frecuencia.
A diferencia de los humanos, la inteligencia artificial puede releer sin esfuerzo todos los nuevos manuales de negocio en un instante. Además, no requiere tiempo para acostumbrarse a los nuevos procesos de negocio y no se aferra a los anteriores.
Por esta razón, la IA absorbe las partes que los humanos encuentran desafiantes, como el aprendizaje de manuales extensos y la adaptación a los cambios en los procesos de negocio.
Así, se puede lograr una organización de aprendizaje rápido.