PhD Seminar • Software Engineering — AgileCritPath: Identifying Critical Tasks in Agile Environments

Friday, July 5, 2019 11:00 am - 11:00 am EDT (GMT -04:00)

Gláucia Melo, PhD candidate
David R. Cheriton School of Computer Science

Planning and monitoring the execution of software development activities in agile environments are not trivial procedures. One of the main flaws of agile planning is not considering the dependencies that exist between project tasks. Dependencies between tasks found in software development project plans may lead to the emergence of critical paths, where tasks need to be handled in a strict sequence because the completion of some tasks depends on the completion of others. Not managing such critical paths may reduce team performance and delay product delivery. 

We performed a study to demonstrate that not identifying dependencies may impair team performance and even increase the risk of costly project delays. The study is divided into three parts: (1) an exploratory study performed in the industry; (2) the development of a tool, AgileCritPath, as a way to support development teams in identifying critical project tasks; and (3) an in vivo evaluation of AgileCritPath based on the Technology Acceptance Model (TAM). 

The results of the exploratory study provided empirical evidence that there is a need to identify and control dependencies between the tasks in the development of software in agile environments. Using the AgileCritPath tool allowed us to introduce the Critical Path Method concepts in an agile software development organization. Moreover, the in vivo evaluation demonstrated the benefits of managing tasks dependencies.