📜 ⬆️ ⬇️

Perfect ERP or controlled blast



In this article, I would like to share my experience in implementing ERP systems on large projects. The article was written in 2013 at the time of implementation of a large project on 1C, so to speak, without delay.

Entry: two kinds of customers


Usually, the introduction of a new program happens in two cases:
1. When the company did not keep records in a special program, and worked only in Excel
2. When I kept records in old programs from which I had already grown - the base began to slow down, it was not possible to develop functionality, unstable work, and so on.

In the first case, the companies have a small staff and the implementation volume is small. The company has only stepped over the critical point of the volume of information when some accounting system is required. Manual mode in Excel no longer suits the manual.
')
Advantages of such clients - no need to think about the old functionality of the system and overloading directories and balances, because it simply does not exist. The start itself is quite simple - after creating the program (1C configuration), you can simply start all users to work - in case of any problems in the program in the form of the absence of the provided functionality, the company's work does not stop, because users can always continue working in the old fashioned way - manually or in Excel, while programmers finish the 1C program.

Cons: requires user training to work in 1C, download data from Excel. For example, I had a client whose users were spoiled by the variety of printed forms in Excel (for almost every customer has his own, and different for its different branches), so they demanded to make the same support in 1C. A large administrative resource is needed to unify the forms, as well as to move the implementation off the ground: users began to learn, users began to perform new work that was unusual for them, for example, maintaining counterparty directories and nomenclature in the current state.

In the second case, this is a transition from old systems, for example, 1C programs of the 7th version or other outdated programs that do not meet modern requirements, for example, I had a client with the RS-Balance 3.16 program, which was terribly slow.

Usually, these are clients with a large number of jobs - more than 100, they already have records on the old system, so first you need to transfer old business processes to new rails (to the new 1C 8 platform), so that the company’s activity does not stop for a minute and then refine the business processes. There are two ways to perform the initial launch: using the big bang method - when the whole company switches to a new program and using the method of embedding individual workplaces - translation is performed for individual users, while two-way data synchronization is performed between the systems. Data entered in one system immediately fall into another system, as a result, half of the company can work in one program, and the rest of the other. This method of implementation is the most convenient and safe from the point of view of preserving the company's activities, but it is the most technically difficult for the contractor. But it turned out to be possible to switch from such programs as 1C 7.7 and RS-Balance.

Perfect implementation


This is such an introduction, when the management learns about the end of the introduction after they bring him to sign the act of the work performed. Those. complete absence of friction between the contractor and the customer’s employees.

Employees of the customer work from 9 to 18, they work in their usual course of assignments: they do not want to strain their brains - to perform new work or study, they do not want to have problems with the boss if the program fails and because of this they cannot fulfill their duties, for example due to flaws in the program, the goods are not shipped from the warehouse. The ideal case is the repetition of the old interface of the program (then the employee will not have to learn the new one) and the creation of two-way data synchronization (in the event of a failure in the new program, users continue to work in the old program without stopping)

In this article, I will agitate in every way for using two-way data synchronization, because This allows you to avoid many mistakes and ensure the rapid introduction of a new program with little blood.

One of the arguments is with this approach the automatic implementation of the principle “do not forget anything”, the fact is that at the time of creating the data transfer processing, a scrupulous study of the data structure of the old program is performed. Studied props for props, table by table. Already at the design stage, questions are asked to the users of the old program about the meaning of certain data. Moreover, questions are asked about all 100% of the data of the old program, so the probability of missing something important is extremely small, but even if this happens, we can always temporarily transfer the block from the new program to the old one by pressing one button.

Controlled explosion


How it's done

A mechanism for registering changes to objects is created (for example: for 1C 8, a built-in registration mechanism is suitable, or you can use an event subscription mechanism; for 1C 7 version, the external component Migrator 1C is used; and “UpdateDoc”).

In 1C 8, processing is created which is able to upload and load modified objects between programs. Among other things, it should have a special monitor for the correctness of data transfer. Data transfer problems should be displayed in a special table, where errors associated with only unsuccessful transactions should be automatically processed during the next exchange session, and errors requiring programmer intervention (for example, invalid data overflow scenarios) should be corrected manually by the programmer (first, the exchange processing code will be corrected first and then manually exchange is initiated).

A rights mechanism is created for users to determine in which program they can work. Next, setting the rights sets the work of each user in a particular program.

What we learned

It turns out that the main productive work is carried out when the program begins to be introduced and people begin to use it. At this moment there are so many tasks that the implementation team cannot quickly complete. It turns out that at the survey stage a million things were not taken into account, about which some did not know, and others did not recall. For example, it was necessary to make another marriage record document, provide for a separate document flow, make reports, statuses, etc., etc. Therefore, in order to take into account all factors - all business processes, you need to create an adjustable implementation process one workplace at a time, create a local explosion brain in one workplace, in the framework of work with one person. Having implemented a program in one workplace, switch to another.

Instead of an epilogue: the introduction of a controlled explosion paradox


Large companies (from 100 automated workstations) switch to the new system in the event that the old system does not suit them. It is obvious. But why they are not satisfied? Because there are no people who can control the insides of the system - either there was a rotation of programmers, or a weak platform was initially chosen that could not cope with a large load, or such a set of patches was created that it is easier to switch to a new system than trying to figure out the existing one. Often there are all the reasons listed. The development of the existing system is at a standstill, i.e. as they say - the program no longer meets the needs of the business.

In order to switch to a new system using the method of controlled explosion, i.e. consistently in one workplace, you need to thoroughly understand both systems. All this is necessary to set up a full information exchange between the two systems for a transitional period of time. Otherwise, nothing happens. But as soon as you begin to understand the old system and fully begin to understand the mechanisms of work, it turns out that the person appears who can control the existing old system and it turns out that there is no urgent need to switch to the new system.

Perhaps the paradox is explained by the fact that there are not so many people who can understand the undocumented chaos of information. It can not cope with specialists engaged only in system support. A very important point is that it requires a special motivation that will force you to perform a titanic work, because This work is not grateful, its bulk is hidden under water - this work can only be seen as a result of the transition to a new program.

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


All Articles