Organizing Document Approval in Bitrix24 from Contractors’ Personal Accounts on website
EVRAZ is one of the largest vertically integrated steel companies in the world. The company actively uses external contractors to solve project and everyday tasks.
EVRAZ specialists conduct tenders on their own site supply.evraz.com (the project was developed by INTERVOLGA). This platform saves the time of all participants in the selection process.
Once a contractor has been selected, they need to begin work. Incorporation into the project is an important and complex process. The key stage of incorporation is the approval of documentation for organization and implementation of work.
Previously, document approvals were carried out during private meetings between contractors and project coordinators. This approach led to delays in timelines, and the danger of postponing projects. It was an imperfect process:
The stipulated time frame for internal document checks could be very long and it isn’t always clear where the process stopped (i.e, who the last approval party was). It’s important to have a control system which indicates the current active stage.
In the process of document approval (both between company employees and contractors), it is necessary to be able to write comments, and to make corrections based on those comments. A convenient system for online communication is required.
Task: Our task was to develop a tool that would allow contractors who are registered on EVRAZ's website to initiate and organize approval of documents in EVRAZ's Bitrix24 quickly and conveniently without having access to the portal.
Such tasks are solved by streamlining and process automation. Since we had implemented the contractor's personal account in EVRAZ earlier, the logical decision is to supplement the account with a new process for a seamless transition between work stages.
It was decided to implement the process in a separate section of the personal account.
Project idea: To move from personal document approval meetings -> online document approval
The solution - to supplement the personal account with a system for managing project documentation and tracking progress (an EDMS)
We need to create a "flexible" electronic document management system with the ability to carry out document approvals (track negotiation and approval stages).
Provide Contractors with the ability to work with the EDMS by implementing the contractor's personal account on an external public resource (website);
Grant external organizations that are involved in approval or production processes (for example, the state fire department), access to the EDMS with the ability to issue comments and participate in document approval;
Speed up communication between contractors and EVRAZ employees, by simplifying commenting on documents, using messages and automated notifications;
Provide the ability to Search for documents in the EDMS using registration numbers;
Speed up document approvals by creating typical routes based on dynamic roles and the possibility of parallel approval.
The Business process of document approval for Contractors through the EDMS
We present the scheme of the direct process below.
As can be seen from the scheme, we’ve taken into account the possibility of making corrections and improvements even in the document preparation process itself.
The Agile process of developing a tool for project documentation Management in your personal account
In working with EVRAZ, INTERVOLGA has long established a trusting relationship. During our 7 years of cooperation, we have completed more than 20 projects. At the start of this project, the Customer instructed us to offer technical solutions for the Document management tool. Intermediate results were shown to the customer periodically. We discussed the results and made adjustments.
With such an introduction, we usually develop using Agile methodology and manage the project using Scrum. The traditional waterfall model is not suitable for such projects due to delays in obtaining the final result, the inability to conveniently parallelize tasks, the occurrence of problems and flaws in subsequent stages that require a return to previous stages to be corrected.
In an atmosphere of trust and with a dedicated team, an agile approach works well.
How Scrum was applied in the project:
the presence of the customer at each planning session;
direct executors made up of 3 development teams;
project manager from the customer - who is also a scrum-master;
a list of tasks in Trello broken down into backlog and sprints with development stages: in progress, testing, completed;
2-week long sprints.
There were several interesting tasks in the project, we will talk about them in more detail.
Confirmation of role models for the development of a new business process
Since the framework of the personal account was already prepared, it was necessary to determine whether there were enough user roles to participate in the new business process. If "Yes", we define and describe interaction scenarios with the developed section for the coordination of document approval. Otherwise, we need to add new roles in the original personal account.
Structure and data flow diagram of the project documentation approval tool
Automation of a complex process is built on a common data structure for all team members. Making changes to it along the way is possible, but expensive.
Therefore, the key stage of the project is the approval of the project data structure as a single “language” that the team speaks.
Data structure is the foundation of the project. Our team was the initiator and main developer of the structure. We provided the first version, then had discussions with our clients and carried out revisions together with the customer's team.
The data flow diagram provides an understanding of how different systems involved interact. If there is only one system, then such a diagram is not needed. When there are several systems, the description of data flows allows you to understand the integration processes in the system and helps you solve problems quickly. Understanding the interaction processes also helps to develop test scenarios.
Integration of personal account with a closed Electronic Document Management System
We had a new task - to transfer documents to the Electronic document management system. But, there was a problem - In this system, document approval is coordinated on the customer's side. At the same time, the Customer's electronic document Management system is closed and does not process internal requests, and the information is confidential.
To solve this problem, we decided to work through an intermediate database, where each system sends only outgoing requests. This scheme has already become default for our integration projects with closed systems. In this case, we needed to pay special attention to safety.
Our result was the development of an interaction scheme of several intermediate firewalls and a DMZ. It was also necessary to organize the exchange of document files and related information on them.
We divided the integration mechanism into 2 parallel streams, which would be served by three project teams, each in its own sphere of expertise: website, the DMZ, Electronic Document Approval tool.
The Design and layout of the project documentation management section in contractors’ personal accounts
The visual part of the project is important to users.
It is important for users to work in a stable and comfortable environment. No one is interested in what happens “under the hood” of the project.
Our Agile approach to the project allows us to achieve the goals of the Customer. As part of Agile, tasks are divided into iterations of 1-2 weeks (a tangible result can be obtained within this period).
Technical Specification vs Constant Dialogue
There was no Technical Specification as a separate finished document in this project. Documentation was prepared on project completion. Why? Because according to Agile philosophy "a working product is more important than comprehensive documentation." Requirements are, of course, fixed, for example, in tickets. But a ticket is not a technical building with hundreds of pages that no one reads :)
It's no secret that requirements can "change" when a task is already in progress. Such changes are recorded with comments, discussed, implemented and everyone moves on.
Testing and launching the new features in the personal account
The agreed upon data flow scheme allowed us to quickly develop tests.
Test cases look like a table with columns "Test case Action", "Expected Result", "Status".
Safety requirements for the tool before launch
Information security was a critical requirement for the system. The external system (website) must not have direct access to the internal system (EDMS).
As a result, all transmitted information needs a quarantine zone (DMZ). The quarantine zone was a repository that could be accessed from both the external and internal systems.
The next issue was the organization of information storage in the intermediate zone, such that it could be accessed in a structured way from both systems. We defined MSSQL database as our data warehouse, which helped us to avoid implementing an information control service, and at the same time, made it possible to flexibly configure access.
The files were moved to a storage separate from the DBMS, which made it possible to avoid volume restrictions and made it possible to use ready-made tools for content control.
Such an interaction mechanism made it possible to do without direct contact between the external and internal systems, but it also created other difficulties.
For Example: the multi-stage route of information movement between systems made it necessary to use several services, each of which could become a failure point.
Therefore, it became necessary to develop general principles for logging and monitoring for all the systems. The common logging table allowed the contractors to see an extended picture of the movement of information in the chain, and redirect the request to the person directly responsible in the chain, without requiring everyone in the chain to monitor individual logs.
Results of implementing an EDMS for the approval of project documentation in Contractors’ personal accounts
The project is completed, the document approval section is at the pilot operation stage. Automation of the Project document approval process will:
Ensure and maintain fast communication between the approval process initiator (contractors, EVRAZ employees) and the approver(s),
Reduce time spent on approval processes, which it turn, makes it possible to clearly plan the project start dates and strengthens the image of the EVRAZ brand in the contractor market,
Increase the transparency of the process and reduce paperwork.