Time based issues

In this section , I will try to explain the repercussions of time based issues on phases like requirements engineering.

Most of the time, the most frequent excuse given by the software development companies for not doing the requirements gathering , analysis and design the right way is that they dont have the time needed to do it in the right spirit or the customer doesn't give them the time to analyze and design systems.

Most of the time, management of the software development companies think "Requirements engineering, analysis and design is all about waste of time". They feel that these phases take too much of time which leaves them with very little time for development and testing.

Given the current reality, I do agree that software professionals take an exponentially large time than what is needed for various critical phases like requirements engineering , analysis and design which definitely the management doesn't have. We have seen software professionals taking 1-2 days to draw a single UML diagram which would otherwise not take more than 10 minutes if an experienced and trained professional was doing the same.

If an engineer takes 1-2 days to draw a single diagram , then it is pretty obvious that the management will not be comfortable with the same as modeling is eating into the development time which is neither acceptable to the customer as well as the management

There are multiple reasons for these software professionals taking exponentially large time.

Each of these phases of requirements engineering, along with analysis and design are specialized tasks which needs specialized professionals who are trained and equipped with the best practices and tools needed to manage various kinds of complexity related to these tasks. Unfortunately, these specialized tasks are performed by professionals who are neither aware of the complexities and the limitations of each of these phases nor trained for the best practices and tools needed to handle the challenges. This lack of training and practice results in a exponential increase in time taken to address each of the phases

Let us understand

  1. Knowing the syntax of each of these phases is one challenge.

  2. Knowing the best practices of managing various types of challenges and limitations associated to the phase is another challenge.

  3. While applying those best practices "QUICKLY" is a completely different ball game.

Unfortunately the software development industry doesnt understand the importance of each of these phases. Using corporate trainings , one can only address the first two points, the third point can only be achieved by practice and expertise.

This problem of time will not get solved, till each of these task are performed by professionals who are experts in doing the same quickly.

Hemant Jha
Founder - VPlanSolutions
Researcher, Trainer