Software Engineer’s Blog

Software Engineering weblog

Let us get back to basics

Fundamental challenge of software development is to continually deliver quality software solution on time and budget. These are very specific goals that can be achieved and achievements can be measured easily and objectively.

Quality is not an ambiguous notion in the context of specific set of customers and end users. Schedule, budget and effective and efficient utilization of resources can also be easily and objectively assessed, monitored and controlled.

When projects fail, let us accept, it is a human failure, a failure of team work, a failure of individuals in the team. Time then is not to go into witch hunting, identifying who failed.

Business, requirements, technologies and team are increasingly dynamic. When these are not understood and communicated across the team, if priorities and progress are not measured, if motivation dries up, failure is a natural outcome.

We have what it takes to succeed, be it technology or process factors. List is endless: object oriented approach, best practices, estimation techniques, maturity models, unified process, patterns and anti-patterns, very powerful collaborative development tools. These, by themselves, are not going to solve the problem. On the contrary, may itself end as a problem, if used indiscriminately. We just need to put them together in the specific organization and project context, rather than hide behind a few technical jargon or introduce new ones.


August 10, 2009 - Posted by | Uncategorized

Sorry, the comment form is closed at this time.

%d bloggers like this: