Art therapy and sluggish migration from the monolith

In our company, the “cut” of the monolith has already passed: we have a new front on the old back, which remains to be “cleaned up”. “Only” you need to “simply” transfer the front-end logic to other services so that the transition for the user goes smoothly: as he is used to working in the system, he should continue – without visible changes.

When I came to a new project, I was told that the migration would take place in the near future, and I only had to figure it out: a huge infrastructure, many systems and integrations between them, heterogeneous users of various sizes with different requirements, target strategies, business tasks, many development teams and more than one line of support, requirements to take into account changes in legislation and compliance with safety standards, modern technologies, the rapid change in the world situation. This is all that surrounds me, and what needs to be sorted out.

At the same time, it is difficult to understand the structure, to find some single document where one could see the scheme as it is now and how it will be. Due to the lack of information and the complexity of the task, there is a feeling of hopelessness and the inability to assess the correctness of the solution from the point of view of the system being designed. The project needs to be started now, and find ways to unravel the current situation

Sometimes it seemed that the system really wants to live and deliberately confuses me.

My desire to understand what I’m dealing with and how to understand it and highlight some pitfalls, risks, led me to a certain emotional state – confusion. Where I don’t understand a damn thing what’s going on and decide to just try to start drawing. This is where art therapy comes in.

Yes, as an analyst, I understand that the scheme is COOL, and there are certain style standards. But, damn it, when a damn thing is not clear, you want to somehow unload, put everything on the shelves somehow.

At this moment, I simply begin to draw, everything that comes: with images, schemes that come through this multidimensional systemic perception, this makes it possible to put everything on a plane. Drawing after drawing, I add accents, develop the resulting layering and multi-levelness from a new perspective. A complex task requires non-standard, creative solutions, art therapy is a cool way to do this.

Why drawing? I am a programmer-mathematician by basic education, but I am very interested in psychology, in particular, art therapy. By art therapy in the narrow sense of the word, I mean working with a drawing, with expressive means through fine art.

The therapy helps me to formalize a complex system process (expression through a picture/diagram of thought forms, states), including tasks that I have to solve at work as a system analyst.

So, the whole picture of the system looks like this. But how hard it was to get there. I’ll try to tell you how I did it.

Disclaimer. My article about how I unraveled the tangle of the system with the help of art therapy. There will be nothing particularly technical in the article. Rather, it is some experiment an act of reflection, marginal notes during the “system digging”.

Unraveling the tangle

No. 1. At first I tried to draw what the system consists of now.

What are the key points, and how do I understand the architectural difference between the new and old systems. At the same time, it was important for me to reflect the relationships.

Here, the picture shows what the old system (ALBO, Alfa-Business Online) and the new one (NIB, New Internet Bank) consist of, and what kind of environment they have.

  • The old system has a certain core (platform), there is a part where the logic is described, the client and admin interface, public services (which other systems use to get information from the ALBO database), its own ALBO database and a separate ALBO Audit database.

  • As for the new one, there is a web version and a mobile version, the admin panel is being developed. There is some idea that a part of the system as a separate product is presented in different channels (it goes through all channels, modules are somehow reused).

When the system appeared, some of its environment appeared, stakeholders – I exhaled … It became clearer, you can see what is there and where you can move.

Now it becomes more or less clear what is changing, what connections can be and what you should pay attention to next.

No. 2. Key figures, people.

Drawn here.

No. 3. Then I tried to speculate on the topic of stakeholders, customers, consumers – who they are, what they are, what they depend on.

Yes, I got the division:

  • a user is a person with a specific role;

  • organization – a legal entity;

  • there is a person responsible for this business line, depending on the level of the company;

  • responsible for this service in the bank, functionality in the system;

  • there is support (support, first, second line of support);

  • developers;

  • and, of course, there are related responsible persons – those who are responsible for certain tasks, for clients, for a specific system, for the financial security of the CST, laws, compliance, financial monitoring, operations block, etc. and so on.

The little people on top are business customers. Different colors – different categories: corporate, medium business, etc. They enter the same system, although, in fact, they have different tasks. Blue are users, purple is a business customer, and green is their own support line.

Plus, with all this front-end application that is available to users, we have completely back systems, a back office, there are a lot of things here and arrows are drawn there that they go somewhere sometimes, sometimes to ALBO, sometimes to NIB and somewhere then more.

No. 4. All around, the interaction of public services is highlighted, with which you need to figure it out: do you need analogues, where to take them out, is there the same functionality in the NIB.

The arrows are an attempt to delimit the flow – where information is needed from ALBO and where information is needed for ALBO.

No. 5. Who is in the business (customer)?

The customers include all and sundry:

No. 6. Users can have companies of different levels. In terms of functionality, they need different functionality. How to show it?

The requirements of small, medium and large businesses are different. It turns out a kind of nesting doll – in order to cover all requests, we need to make the maximum version of the Internet Bank, namely, to cover corporate business. Only then can we turn everything off.

No. 7. If we look at the task from the eyes of developers, we have 3 independent areas for development: a mobile application, a new Internet bank and ALBO (old).

But they intersect, because somewhere there are single services, somewhere there is only one database.

No. 8. If you look at the task from the point of view of systems, they are striving to ensure that the old Internet bank was disconnected, isolated from the Internet bank and the mobile application.

No. 9. If you look at the issue from the point of view of support, then you have to go into several information systems.

At the same time, one must be specialists in each in order to obtain information to answer the user’s request. I tried to display this by combining “spheres”.

It’s inconvenient to have 10 different admins. Therefore, more often there is a desire to create a single workplace where you do not need to additionally log in, where the interface is clear, scripts are available, solutions for the task are available. userthat occur during the call.

No. 10. After I drew these diagrams, I tried to draw them again, but to depict the connections in our systems, look from the other side.

No. 11. Here is the top-level what we have.

No. 12. Here I wanted to show some connection of clients (companies) with users and managers responsible for the development of the business line.

No. 13. An attempt to speculate what can be done if you still leave 2 systems, mutual redirects and client flows.

No. 14. And what about the admin? What to do for employees?

No. 15. When I communicated with different teams, a “graph” appeared in my head, by which you can understand the connections of products within the old and connections with the new systems.

No. 16. We have such a thing that in some places there is a redirect to the new one in the old Internet Bank.

But under the hood, the IS is old, because there are services, some kind of logic hangs. The question mark is, in fact, the question, should these arrows remain?

No. 17. This picture about what is the difference between a monolith and a microservice, I tried to sketch for myself.

No. 18. This picture is about the fact that in fact we have an old system (ALBO), where there is a user interface, an admin interface, databases, in terms of the audit database and the database of the application itself.

At the same time, separate additional systems appear for which you need to transfer integrations to transfer (roughly speaking, file services). One of the questions is who goes here, and where do we go? Here I tried to write down the systems that we know.

The little people from above are users and employees who are interested in knowing something about ALBO: these are support, CSTO, compliance, financial monitoring, and an operation block. These are the people who go to the admin panel, the users of the admin panel.

What is the end result and why?

When there is complete chaos in the head and there is no understanding of what and how to do, I suggest taking felt-tip pens and paper, try to feel like an artist.

Display the model and don’t worry at this point that “I’m not an artist, it’s so wrong/incomprehensible”. Now you are an artist, you see it that way.

Express what is. Express it in a way that makes sense to you. Try to use different shapes and colors, consciously or just what the hand is reaching for now. Already at the next stages, try to look from different angles, try to do something differently and more consciously.

One of the important components of system analysis (analytics) in working with complex multilayer systems is to be able to lay them out on a plane and view them from different angles. This helps the visual channel of perception and transmission.

Sometimes in my pictures I noticed dependencies and answers to questions later, because shapes or colors gave a new look, a new approach, showed connections and separated processes.

So:

  1. Project the process (task) inside yourself as a separately closed structure.

  2. Run through the main workflow step by step once.

  3. At each step, evaluate the options in terms of possible risks, alternatives, stakeholders, environment, and impacts.

  4. Once again, run the processes several times inside, looking at the alternatives.

  5. When it was possible to fit the process inside and run it several times, you need to try to deploy it and twist the system physically inside, and run through some internal scanner, in terms of integrity and reflection of all the necessary structures.

  6. Try going from bottom to top.

  7. Then move the main axis to the right or left.

  8. Next, try to look in from different sides, not forgetting to look inside.

  9. Scroll: left, right, front, back, bottom, top, away, inside.

Using this technique, you can consider the process (task) more extensively and find nuances, new solutions and options for the development of reality.

What about migration?

About migration in the next article, because at first I tried to figure out where to migrate from where? In addition, the article will contain my diagrams and drawings, and without context they would not be clear (as it seems to me). After reading this article, it will already be clearer to you what kind of arrows and little men they are.

That’s all, thank you for your attention, I hope it was useful.


We recommend reading [подборка от редактора]

Also subscribe to the Telegram channel Alfa Digital – there we post news, polls, videos from meetups, short excerpts from articles, sometimes we joke.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *