Desde el modelado de procesos hasta el diseño de un sistema automatizado (Parte 1)

"Un día en la vida de una ardilla" o desde procesos de modelado hasta el diseño de un sistema automatizado de contabilidad para valores de materiales "Ardilla-1.0" (Parte 1)



Se utilizó la ilustración de A.S. Pushkin's Tale of Zar Saltan, publicada por Children's Literature, Moscú, 1949, Leningrado, dibujos de K. Kuznetsov


¿Qué tiene que ver la "ardilla" con ella?


Explicaré de inmediato de qué se trata la "ardilla". Después de tropezar en la Web sobre proyectos divertidos para aprender UML, confiando en un tema tomado de tramas de cuentos de hadas (por ejemplo, aquí [1]), también decidí preparar un ejemplo similar para mis alumnos para poder estudiar solo tres tipos de diagramas para comenzar: Actividad Diagrama, Diagrama de caso de uso y Diagrama de clase. Deliberadamente, no traduzco los nombres de los diagramas al ruso para evitar disputas sobre las "dificultades de traducción". ¿Para qué? Explicaré un poco más tarde. En este ejemplo, uso el entorno Enterprise Architect de la empresa australiana Sparx Systems [2], una buena herramienta a un precio razonable. Y como parte de la capacitación, uso Modelio [3], una buena herramienta gratuita para el diseño orientado a objetos que admite los estándares UML2.0 y BPMN, sin lujos innecesarios en términos de capacidades visuales, pero suficiente para aprender los conceptos básicos del lenguaje.


Vamos a automatizar la actividad de contabilizar los valores materiales que surgen en estos procesos.


...
La isla se encuentra en el mar, (E1, E2)
Ciudad en la isla se encuentra (E3, E1)
Con iglesias con cúpulas doradas, (E4)
Con torres y jardines; (E5, E6)
El abeto crece frente al palacio, (E7, E8)
Y debajo hay una casa de cristal; (E9)
La ardilla vive allí manual (A1)
¡Qué artista! (A1)
Ardilla canta canciones, (P1, A1)
Sí, las nueces roen todo, (P2)
Y las nueces no son simples, (C1)
Todas las conchas son doradas, (C2)
Los granos son pura esmeralda; (C3)
Los sirvientes guardan la ardilla, (P3, A2)
Le sirven un sirviente diferente (P4)
Y se ordenó al empleado (A3)
Estricta cuenta de nueces; (P5, C1)
Saluda a su ejército; (P6, A4)
De una cáscara vierta una moneda, (P7, C2, C4)
Sí flotan alrededor del mundo; (P8)
Las niñas vierten esmeralda (P9, A5, C3)
En las despensas, pero en el fondo; (E10, E11)
...
(A.S. Pushkin "El cuento del zar Saltan, de su hijo, el glorioso y poderoso héroe Príncipe Gvidon Saltanovich y de la bella princesa Swans", el trabajo sobre el cuento comenzó presumiblemente en 1822, el primer cuento fue publicado por Pushkin en la colección "Poems A. Pushkin ”(parte III, 1832, pp. 130-181) - ¡10 años desde el diseño hasta la publicación, por cierto!)

Un poco sobre los códigos que están escritos a la derecha de las líneas. “A” (de “Actor”) significa que la línea contiene información sobre el participante en el proceso. “C” (de “Clase”): información sobre objetos de clase que se procesan durante la ejecución de procesos. "E" (de "Entorno"): información sobre los objetos de las clases que caracterizan el entorno de ejecución del proceso. “P” (de “Proceso”): información sobre los procesos mismos.


Por cierto, una definición precisa del proceso también pretende convertirse en la causa de disputas metodológicas, aunque solo sea porque los procesos son diferentes: negocios, producción, tecnología, etc. etc. (Puede familiarizarse, por ejemplo, aquí [4] y aquí [5]). Para evitar controversias, acordamos que el proceso nos interesa en términos de su repetibilidad en el tiempo y la necesidad de automatización , es decir. cambiar la ejecución de cualquier parte de las operaciones del proceso a un sistema automatizado.


Notas de aplicación del diagrama de actividad


Comencemos a modelar nuestro proceso y usemos el diagrama de Actividad para esto. Primero, explicaré cómo se usarán los códigos anteriores en el modelo. Es más fácil de explicar con un ejemplo gráfico, pero al mismo tiempo analizaremos algunos elementos (casi todos los elementos que necesitamos) del diagrama de Actividad.
Analicemos el siguiente fragmento:


...
Ardilla canta canciones, (P1, A1)
Sí, las nueces roen todo, (P2)
Y las nueces no son simples, (C1)
Todas las conchas son doradas, (C2)
Los granos son pura esmeralda; (C3)
...

Tenemos dos pasos del proceso P1 y P2, el participante A1 y los objetos de tres clases diferentes: un objeto de la clase C1 llega a la entrada del paso, los objetos de las clases C2 y C3 se obtienen a la salida, como resultado de la actividad de este paso P2 de nuestro proceso. Para el diagrama usamos los siguientes elementos de modelado.



Un fragmento de nuestro proceso puede representarse así (Figura 1).



Figura 1. Un fragmento de un diagrama de actividad


Para organizar el espacio y estructurar el diagrama de Actividad, utilizaremos un enfoque no bastante estándar, en términos del uso clásico de la notación UML. Pero hay varias razones para esto. En primer lugar, justo antes del inicio del modelado, elaboraremos un llamado acuerdo de modelado , en el que arreglaremos todas las características del uso de la notación. En segundo lugar, este enfoque se ha aplicado repetidamente con éxito en la etapa de modelado de negocios en proyectos reales para crear sistemas de software, los resultados fueron registrados por nuestro pequeño equipo de autores en el tema de derechos de autor correspondiente [6], y también utilizados en el manual de capacitación [7]. Para el diagrama de Actividad, determinamos que la estructura del campo del diagrama está estructurada usando los caminos de "natación" - Carriles de natación. El nombre de la pista corresponderá al tipo de elementos del gráfico que se colocarán en esta pista.


“Artefactos de entrada y salida”: objetos: los objetos que se usan o son el resultado de algún paso del proceso se ubicarán en esta pista.
"Pasos del proceso": aquí colocamos los elementos de la actividad: las acciones de los participantes en el proceso.
“Participantes”: una ruta para elementos que indicarán los roles de los ejecutores de acciones en nuestro proceso, para ellos usaremos el mismo elemento Objeto de modelado, un objeto, pero le agregaremos el estereotipo “Actor”.
La siguiente pista se llama “Reglas de negocios” y en esta pista colocaremos en forma de texto las reglas para completar los pasos del proceso, y para esto usaremos el elemento de modelado Nota: una nota.
Nos detendremos aquí, aunque también podríamos usar la pista "Herramientas" para recopilar información sobre el nivel de automatización de procesos. La pista “Posiciones y unidades de participantes” también puede ser útil, puede usarse para vincular roles con posiciones y unidades de participantes en el proceso.


Todo lo que acabo de describir es un fragmento del acuerdo de modelado , esta parte del acuerdo se refiere a las reglas para organizar un diagrama y, en consecuencia, las reglas para escribirlo y leerlo.


"Receta"


Ahora consideraremos una opción de modelado del sistema del diagrama de Actividad. Esta es solo una de las opciones, noto que él, por supuesto, no es la única. El diagrama de Actividad nos interesará en términos de su papel en pasar del modelado de procesos al diseño de un sistema automatizado. Para hacer esto, nos apegaremos a las recomendaciones metodológicas, un tipo de receta que consta de solo cinco etapas e involucra el desarrollo de solo tres tipos de diagramas. La aplicación de esta receta ayudará a obtener una descripción formal del proceso que queremos automatizar y a recopilar datos para el diseño del sistema. Y para los estudiantes al comienzo del aprendizaje de UML, este es un tipo de salvavidas que no te permitirá ahogarse en toda la variedad de herramientas y técnicas visuales que se encuentran en UML y las herramientas de modelado modernas.


Aquí, de hecho, la receta en sí, y luego los diagramas construidos para nuestra área temática de "cuento de hadas" siguen.


Etapa 1. Describimos el proceso en forma de un diagrama de actividad. Para un proceso en el que se destacan más de 10 pasos, tiene sentido aplicar el principio de descomposición de los pasos del proceso para aumentar la legibilidad del diagrama.


Etapa 2. Destacamos lo que puede automatizarse (los pasos pueden, por ejemplo, resaltarse en el diagrama).


Etapa 3. El paso automatizado debe corresponder a la función o funciones del sistema (la relación puede ser de muchos a muchos), dibuje un diagrama de casos de uso. Estas son las funciones de nuestro sistema.


Etapa 4. Describimos la organización interna del AS utilizando el diagrama de clase - Clase. La ruta de natación “Objetos de entrada y salida (documentos)” en el diagrama de Actividad es la base para construir un modelo de objeto y un modelo de entidad-relación.


Etapa 5. Analicemos las notas en la pista de “Reglas de negocios” , que dan varios tipos de restricciones y condiciones, transformándose gradualmente en requisitos no funcionales.
El conjunto resultante de diagramas (Actividad, Caso de uso, Clase) nos da una descripción formal en una notación bastante estricta, es decir. Tiene una lectura inequívoca. Ahora es posible desarrollar especificaciones técnicas, aclarar la especificación de requisitos, etc.


Comencemos a modelar.


Etapa 1. Describimos el proceso en forma de un diagrama de actividad.


Permítame recordarle que estructuramos el campo de la tabla con la ayuda de carriles de "natación", en cada carril hay elementos del mismo tipo (Figura 2). Además de los elementos del gráfico descritos anteriormente, utilizaremos elementos adicionales, describamos a partir de.


imagen


La decisión indica el punto de ramificación de nuestro proceso en el diagrama, y ​​la fusión de flujos (Merge), el punto de su reunión. Entre corchetes en las transiciones, se registran las condiciones de transición.


Entre dos sincronizadores (Fork) mostraremos ramas paralelas del proceso.
Nuestro proceso solo puede tener un comienzo: un punto de entrada (Inicial). Pero el final (Final) puede ser varios, pero no para nuestro diagrama específico.


Hay muchas flechas, con una gran cantidad de elementos y enlaces, primero puede seleccionar las etapas del proceso y luego descomponerlas. Pero en aras de la claridad, me gustaría mostrar nuestro proceso de "cuento de hadas" en su totalidad en un diagrama, mientras que, por supuesto, debemos asegurarnos de que las flechas no "se peguen", podríamos rastrear con precisión lo que está conectado con qué.



Figura 2. Diagrama de actividad: vista general del proceso


Porque en las líneas poéticas se omiten algunos detalles del proceso, tuve que restaurarlos, se muestran por elementos con un fondo blanco. Estos detalles incluyen el paso "Transferencia / Recepción para almacenamiento y procesamiento" y varios artefactos de entrada y salida. Vale la pena señalar que este paso tampoco revela completamente el proceso, porque necesitaríamos indicar por separado el paso de transferencia y el paso de recepción, e incluso para los shells agregar un paso separado, y también conjeturar que primero todos estos valores materiales deberían almacenarse temporalmente en algún lugar, etc. etc.
También llamamos la atención sobre el hecho de que la pregunta sobre el origen de los frutos secos sigue sin respuesta: ¿de dónde vienen y cómo llegan a las proteínas? ¡Y esta pregunta (se resalta en rojo en la fuente de la nota, el elemento Nota) requiere un estudio por separado! Y así, el analista trabaja: recolectando información poco a poco, haciendo suposiciones y recibiendo "bien" o "no bien" de los expertos en el dominio, personas muy importantes y simplemente irremplazables en la etapa de modelado de negocios al crear sistemas.


Tenga en cuenta también que el paso del proceso P5 consta de dos partes.



Y descomponemos cada parte y consideramos con más detalle (Figura 3, Figura 4), porque Las actividades realizadas en el marco de estos pasos serán automatizadas.



Figura 3. Diagrama de actividad: detalle (parte 1)



Figura 4. Diagrama de actividad: detalle (parte 2)


Etapa 2. Destaque lo que se puede automatizar


Los pasos para ser automatizados en los diagramas están resaltados en color (ver Figura 3, Figura 4).


Todos ellos son realizados por un participante en el proceso: el empleado de la orden:


  • Introduce información sobre el peso de la tuerca en la declaración;
  • Introduce información sobre la transferencia de la tuerca a la declaración;
  • Arregla el hecho de la transformación de las nueces en cáscaras y granos;
  • Introduce información sobre el núcleo de la nuez en la declaración;
  • Introduce información sobre cáscaras de nuez en el comunicado.

Análisis del trabajo realizado. Que sigue


Entonces, hicimos mucho trabajo preparatorio: recolectamos información sobre el proceso que vamos a automatizar; comenzó a formular un acuerdo de modelado (hasta ahora solo en términos de uso del diagrama de Actividad); realizó una simulación de proceso e incluso descompuso varios de sus pasos; Identificó los pasos del proceso que automatizaremos. Ahora estamos listos para pasar a los siguientes pasos y comenzar a diseñar las funciones del sistema y su organización interna.


Como sabes, una teoría sin práctica no es nada. Definitivamente debe probar el "modelado" con sus propias manos, esto también es útil para comprender el enfoque propuesto. Por ejemplo, puede trabajar en el entorno de modelado Modelio [3]. Descomponemos solo una parte de los pasos del diagrama de la vista general del proceso (ver Figura 2). Como tarea práctica, se puede sugerir repetir todos los diagramas en el entorno Modelio y descomponer el paso "Transferencia / Recepción para almacenamiento y procesamiento".
Todavía no consideramos el trabajo en entornos de modelado específicos, pero esto puede ser objeto de artículos y reseñas independientes.


En la segunda parte del artículo, analizaremos las técnicas de modelado y diseño necesarias en las etapas 3-5, usaremos los diagramas UML Caso de uso y Clase. Continuará


Lista de fuentes
  1. Sitio web "UML2.ru". Foro de analistas de la comunidad. Sección general. Ejemplos. Ejemplos de cuentos de hadas en forma de diagramas UML. [Recurso electrónico] Modo de acceso: Internet: http://www.uml2.ru/forum/index.php?topic=486.0
  2. Sitio web de Sparx Systems. [Recurso electrónico] Modo de acceso: Internet: https://sparxsystems.com
  3. Sitio web Modelio. [Recurso electrónico] Modo de acceso: Internet: https://www.modelio.org
  4. Gran Diccionario Enciclopédico. El proceso (interpretación). [Recurso electrónico] Modo de acceso: Internet: https://dic.academic.ru/dic.nsf/enc3p/246322
  5. Sitio "Organización de gestión eficaz". El blog Encabezado "Gestión de Procesos de Negocio". Definición de un proceso de negocio. [Recurso electrónico] Modo de acceso: Internet: https://rzbpm.ru/knowledge/pochemu-processy-stali-s-pristavkoj-biznes.html
  6. Certificado No. 18249 sobre registro y depósito de una obra resultado de actividad intelectual. Alfimov R.V., Zolotukhina E.B., Krasnikova S.A. Un manuscrito de una herramienta de enseñanza titulada "Modelado de un área temática utilizando Enterprise Architect" // 2011.
  7. Zolotukhina E.B., Cherry A.S., Krasnikova S.A. Modelado de procesos de negocio. - M .: CURSO, SIC INFRA-M, EBS Znanium.com. - 2017.

Source: https://habr.com/ru/post/448146/


All Articles