In order to accurately indicate the implementation time of an IT solution, the entire project team must accurately represent how this or that user story or function will be implemented. But this possibility, unfortunately, is not always.
How to plan the timing of an IT project?
Especially, at the start of the project, when there is no deep elaboration. Therefore, the initial assessment, as a rule, is indicative and is constantly being updated as the project progresses.
Deadlines are fixing agreements that discipline performers.
Deadlines are definitely needed in any project, but it is necessary to take into account its size and current stage.
At a 1 week interval, when estimating the time it is easy to get into the day and set a hard deadline. But on a period of 4-6 months or more, it’s absolutely unrealistic to assess the day to day, here the deadline is rather a guide and is constantly being specified.
Delay in project implementation is always bad, but the level of criticality may be different.
For small projects for a customer who is not bound by obligations to partners and investors, the postponement of the timeline is likely to not cause major problems.
Projects to automate internal processes are also likely to be delayed relatively painlessly. In these cases there will be no image and financial losses.
But large investment projects that are implemented according to a business plan, here the “disruption” of terms can be very critical. At the start of the project, at least, advertising activity can be tied, and the delay is fraught with direct financial and reputational losses.
The delay in terms is a very serious marker. This requires a detailed analysis, identifying the cause. The whole team is involved in the analysis. According to the results, work can be rearranged to improve efficiency, obstacles that prevent you from moving according to plan are eliminated, the time limits are corrected, if there are objective reasons for this.
It should be noted that for each project the reasons for the delays may be different, not everything depends only on the developers. Somewhere the customer may be delayed with the agreement, somewhere changes have been made in the TK, somewhere an error was made at the evaluation stage.
A very important point is how communication is built between the customer (internal or external) and the developers. There should be a constant feedback from the developers, and a willingness from the customer to respond quickly and flexibly.
The reaction of the customer, by the way, is not only in planning the terms, but also, perhaps, in changing the requirements for the project, changing business processes and, as a result, functionality. This is a constant dialogue between the customer and the developers. This is the only way to make a successful project, and deadlines for development, in this case, will be set adequately and consistently respected.
-From the experience of “Native Technologies” I can cite statistics:
-we submit 2/3 of projects in accordance with the assessment.
-1/3 of projects are delayed.
But, as practice shows, the most important thing is not even a deadline, but a clear transparent process of developing and communicating with the customer .
If something is not going according to plan, we find out about it not at the end of the project, but immediately look for solutions, inform the customer and suggest ways out of the situation.
It helps in planning and eliminates risks.
Why is it difficult to estimate the real terms in the IT field?
Because of the fragility of the content on Snapchat, users love to spend time on this platform in search of unique personnel and exclusive information. To create a sense of urgency, you need to provide users with personal and exclusive access to your brand.
For example, below are 4 potential Snapchat user interaction tactics that can motivate them to action:
Many factors affect the result of an assessment in IT projects.
- Communication factors, including customer interaction and developers.
Even a simple question of setting a business problem (articulating an idea / functional) of an IT product harbors many pitfalls. The customer, formulating the idea, most likely does not fully understand all the functionality, all the scenarios and interconnections that should be implemented.
For example, it is unlikely that the customer thinks about negative scenarios of user behavior when formulating ideas. What happens if a user decides to abort a purchase? Did not enter the required data or entered incorrect data? And what if he lost the Internet? And there are a lot of such variations of user behavior and situations, all of them should be thought out and implemented. The quality of the product depends on such “trifles”, no one wants to use an ill-conceived application.
In order to increase the accuracy of the assessment, it is correct to involve in the discussion of the project a nominal specialist who will implement it. Because time costs are influenced by professionalism, experience, and employee motivation. Even the psychotype of a person influences the assessment, someone is an optimist in life and is inclined to underestimate the assessment, while others overestimate. Estimates of the same task for two developers may differ by several times.
The most correct option is to evaluate the tasks of the team. Software development (software) is a team work. The level, depth of the project design affects the accuracy of the assessment. Several people evaluate the same task, and in case of significant discrepancy they discuss and come to a consensus. This method allows to reduce the subjectivity, the influence of the human factor.
In addition to interaction with the customer, there is also communication within the project team: between the manager and analysts, designers, back-end developers and Front-end developers, testers. All team members should be equally aware of each individual task and project as a whole. Must work as a unit. This is hard to achieve, but the effectiveness of a well-coordinated project team is several times higher, and this also affects the assessment.
Oddly enough, but in the IT-sphere the main thing is not technology. The main thing is communication between people.
At Native Technologies, we begin work on the project by working out the idea with the whole team, together with the customer, in order to ensure the most effective communication. Working in the existing team, you begin to understand who and how estimates the tasks and, in part, you can adjust the assessment voiced by the developer, based on the experience of previous projects.
2. Technological factors.
At the moment, the IT industry in general, and software development in particular, is such a broad area, and the amount of knowledge in the industry is so great that it is almost impossible to know everything.
There are hundreds of specializations, dozens of programming languages for different tasks and platforms. Technologies develop very quickly, knowledge also quickly becomes outdated.
The only way out for the developer is to constantly learn, improve their competencies, hone their skills. What matters is not how much you know, but how systematically you think how much you are capable of learning.
A noticeable part of the time it takes to develop software is spent on learning technologies, reading system documentation and similar process components.
This is one of the points that affects the accuracy of the estimate. How accurately can you estimate how long it will take to integrate with any service until you have studied the relevant documentation?
In addition, there are tasks for which the choice of a technical solution, due to the presence of restrictions, is a completely non-trivial issue. Sometimes the very possibility of technical implementation is questionable, not to mention the need to take into account many points, how the service will evolve in the future, how many users will be, what functionality will be added, and so on.
For such tasks, as a rule, it is logical to single out the stage of research work, when developers try to test selected solutions in practice, write prototypes, test solutions.
Detailed study of the project requires time and effort. Often, customers are asked to give a rating here and now or within a few hours, or a maximum of days. To disassemble the project in detail in this case will not work. Therefore, to evaluate large projects, they are broken up into smaller ones and set deadlines for the implementation of each stage, which can be adjusted in the process.
In general, the assessment of an IT project is a separate skill that needs to be trained. It develops with experience. For experienced developers, the accuracy of even preliminary estimates is quite high.
Based on our experience, we have created a calculator to calculate the cost of developing a mobile application.
Of course, the estimate obtained on the calculator is preliminary, but it will give you some guidelines from which you can push off.