What do you do when timeframes are short, the public-sector project is at risk of failure, and you don't have enough people? How do you solve the problem of a lack of data, and build communication on a project so that the team starts delivering from the first week, and how this may be accelerated further?
Within a week, our team had already integrated into a project that had four years of history and complex architecture. Work was simultaneously carried out along three lines:
- developing a gateway for receiving electronic data;
- synchronising data with an external automated workspace (AWS);
- an online workflow status display, regardless of where and how the document entered the system.
As a result, within two months, we helped IBS to meet internal deadlines and deliver a major project to their client on time.
Continue reading to learn how to complete a massive job in a short time, while solving any emergencies that may arise during the project.
Naturally, when there is no time for regular planning, something can go wrong. And so it did.
The Challenge - A lack of data for transit due to work beginning concurrently.
Work on the project started on three fronts simultaneously: Database, backend and frontend. When the backend and frontend developers enter into the project sequentially, the latter can immediately start working on data transit. But here the Java programmers responsible for data transit to the User Interface (UI) layer had nothing to transfer.
Solution: The Java programmers on the controllers had to create fake data so that the UI programmers could begin work. Subsequently, as real content was created in the database, controllers were added to the Java, and thus the UI became real.
- Synchronising the database.
To meet the technical requirements, Java must not only transfer data from the database to the UI, but also synchronise with the database of a third-party service.
Solution: We developed a complex data loading system, where two types of synchronisation could respond to user behaviour. Currently, the user's documents are uploaded to their personal account straight after their first visit, in the future, the entire workflow will be synchronised with other automated workspaces in real-time.
- Coordinating work with regards to other project teams.
Even under perfect management, on such a complex project with dozens of development teams snags appear where areas of responsibility overlap. It is not uncommon for a service to be written and ready for on-time delivery, but with no means of testing as the adjacent module is not yet finished.
Solution: We worked closely with three teams: AWS (automated workspace) management, desk audits, and an electronic workflow management system. During the project, our team adapted to situations: they added stubs, initiated discussions and made modifications based on efficiency and overall project success. We agreed on some of the test data (mocks) with teams developing related modules.
Only two months were allocated for the implementation of the project. Given that we had just a week to form a team, become integrated, and refine the whole system, there was no room for error.
Solution: the whole team consisted of experienced middle+ developers. When work is not carried out sequentially, but in parallel along several lines at once, new data appears every day and inconsistencies arise. For the successful implementation of the work, we took a proactive position in our communications with IBS and other project teams. Working 24/7, with several multi-level conference calls a day and clear synchronisation of activities allowed us to deliver the work on time.