Those who have worked on projects know firsthand that indescribable feeling of happiness to release a project live. The communication from the leader confirming that the project has come into operation, generates great satisfaction and at the same time great fear, since behind those three lines of mail, there was a programming, design, expectations, knowledge of the work team, unforeseen events, action plans to solve problems, changes in resources, discussions, new interlocutors, late nights, decision making, in short, the list is endless.
Technology projects in particular have certain additional components that add much more "excitement" to having a project not only live, but stabilized.
Stages of a live output
Preliminary stage
The first ingredient is that when the need to initiate a project arises, the promoter assumes mental maps where the entire need is clear and the design phase is considered completed without starting. Most of the time they are based on sketches or sketches that lack any level of detail.
Most of the time the start of the technology project has nothing to do with technology and different needs arise in terms of reforming the processes and assessing the suitability of the people on the team executing the actions that will be impacted by the implementation of the technological tool.
At this preliminary stage, the first frictions appear, since the times of need are already behind schedule, as the sponsors had not been convinced to invest in a technology solution (here are some tips to successfully sell a technology project inside companies). The time commitment is an extremely delicate issue that generates a lot of frustrations since it is normal to assume times without having a clear idea of the need or the level of effort required and are based on project practices other than technology that are not comparable.
Design stage
Assuming that this preliminary stage has been overcome and the decision has been made to make resources available for the execution of the project, the functional design stage begins. In this phase, all these high-level ideas must be translated into a detailed document that will later be the input for a technological development team to materialize the need..
This document turns out to be a headache for the functional managers, because when joining the team that every day executes the task that will be digitized or automated, there are many edges and different criteria are executed, since it depends on people.
In addition, there are cases that, despite being the exception, are treated as a primary need to be implemented, which lead to develop The cost-benefit ratio is not calculated for highly complex logics without the calculation of a cost-benefit measure. This process takes quite a few iterations, is very time consuming and is usually the first disappointment of the project that must be controlled since the original time estimates were already exceeded by attending a design stage that since approval should have been completed at 100%.
Technical review stage
After this comes a technical review stage to ground the functional need to logics that can be achieved, most of the time the functional needs are "a letter to the God child" in which the materialization is quite complex and requires resources much higher than initially estimated due to a high level sketch that did not have the necessary detail.
An additional component that adds complexity to the technological projects is that the integration of different technological tools is functionally imagined, although it is feasible.Most of the time it involves the coordination of different interlocutors, technology providers with different SLAs, work methodologies, priorities, it is a "tower of babel"."The project manager as a whole must exercise the best control and rigorousness.
The problem at this stage is not only to get the technical teams to agree, but also to be able to transmit to the functional team the technology restrictions or the impacts of the project in order to execute a certain functionality. The functional team is quite frustrated at this stage since the premise of the original project was to fulfill a functional need and not to fulfill the need taking into account the technical constraints that should not exist.
Development execution stage
Once all the stages have been overcome, there is a landing of times and a detailed chronogram to start the execution of the developments; a relevant issue is that the previous stages have already been delayed with respect to what was originally planned and the availability of resources may have abruptly changed and The first step before this release is a phase of resource programming and relevant release to attend the project that, normally, is not considered in the original scope of work.
Normally, technology project deliverables are binary, there is no way to show progress due to the number of dependent, linked and impacted technology components, it is not possible to show part of the flow or the tool without integration. This constraint is quite difficult to explain and convey to the functional team.The projects in other areas can be seen step by step and even make corrections to what is being built.
In technology, what is designed is developed, what is designed is tested and what is designed is delivered to the client. The client normally tries to involve new actors that will be impacted by the project output in order to carry out an adequate change management. Here new needs arise, different perspectives, other casuistries that were not considered in the original design, which again impact the defined schedule.The option of closing oneself to changes at this stage of first contact with the users who will operate the tool can generate discomfort and friction that greatly impair the acceptance of the project.
A good action to control this issue is to perform a survey of new requirements on two fronts: those that are absolutely necessary to start the project, "stopper", and those that are desirable, but are not necessary and their implementation would improve the experience, "nice to have". A relevant issue at this point is to be quite clear with the defined scope and an expectation in time and resources of being able to address 100% of the needs.
Testing stage
One of the most important stages of the entire project is to execute functional user testing and formal approval that what has been developed corresponds to what has been agreed in the requirements. Here impediments arise, since the team available for this is not a priority, since they must continue to attend to the operation with the current tools. It is quite important, although it is difficult most of the times, allocate quality time for full test execution to control incidents to the maximum extent possible that may arise in the operation of the project.
Live output stage
All of the above is materialized with the deployment of the functionalities and to be productive, this requires a lot of order. and discipline to be able to compile absolutely all the history of the project up to this point, any oversight can generate great dissatisfaction or must be controlled with speed and proactivity. After that comes a whole stabilization phase The project must have first-line attention and generate as little noise as possible, since change management actions are being generated in parallel to the operation of the project for positive reception and to overcome the barriers to entry.
As you can see, behind the live technology projects, there is a whole world behind the scenes!