This is part of the Fall 2020 Capstone Project YWCC 691. The class participation assignment asks to select a second paper from the readings which I find most helpful to my specific project. Write a note indicating how will this paper help my project in a better way. Paper: Experts’ estimates of task durations in software development projects
After almost three sprints into the project, I decided to study this paper on how industry experts estimate the tasks duration and how I, as a developer in the team, can help assess the correctness of the task estimation in a software development project.
Our team started off with the product owner briefing the team about the project and the expected deliverables in the first week. Even before that, a project management system was already configured, as were the tasks and subtasks divided and ready for each developer in the team to start working on. Despite the fact that all developers already possess some programming experience, the project requires the utilization of the rather new tools that the developer team needs to get familiar with. To which, the first week of the project was dedicated solely for learning and reading documentations.
The paper presents various project management approaches that can be used to estimate tasks. While most systems require historic data or artificial intelligence to support task estimation, it cannot be applied in this short-period project. Like every structured software development team that adopts agile methodology, our initial task estimations are at the judgement of the supervisors and managers. As the paper suggests, this is likely to be the most common approach to estimate the duration of each task especially for a team that tries to introduce new and perhaps less experienced team members into it. Each task description was proposedly short and vague in order to encourage the communication between developers and supervisor team. Though, the first sprint did not go as planned. The developer team only managed to complete 20 percent of the tasks assigned, due to several reasons.
Contrary to the data presented in the paper, the task's duration was underestimated. Looking at the first sprint task types, all tasks depict a complete working component. The level of complexity is relatively high compared to the student developers’ skills. Moreover, the amount of interaction between the developers and supervisors was also inadequate. The inaccurate estimation of task duration puts some amount of pressure on the team. The second sprint is much better after the first sprint meeting ends partly because the intercommunication between teams increases as well as the project manager team has a better grasp of the student developers’ capability.
To conclude, I completely agree with what the writers of the paper have come to a conclusion. By utilizing the work breakdown structure approach to hierarchically decompose big tasks into several smaller subtasks will not only help project managers oversee the status of the whole project better but also aid the team in estimating the duration of each task. I firmly believe that task decomposition will help both the supervisors and student developers in estimating the duration of the tasks. In turn, this will create the correct project expectations for the team.
On the other hand, this approach would create more workload into the project managers’ hand. The work and time put into project management at the subtask level might not compensate for the task estimation correctness in an experienced software engineers team.