Sept 1st , 2007
Software Reliability or the lack of it is a major issue . With intelligent devices and automated
Solutions software is everywhere and so are the bugs.
From “Fly by wire” in aircraft to automatic transmission in your car it is clear that our very life and safety depends on how reliable the software is
We observe that Bugs arise in all phases of Software Lifecycle.
Interface Issues ..the list is endless
Companies with mature IT Processes have learned the hard way that it is important to have well established Software Development Process and a well trained team that is geared towards ensuring quality.
While testers are our foot soldiers, quality is everyone’s responsibility.
The Architect, The Programmer and the Manager all should emphasize on the Software Reliability.
With the leadership encouraging cost cutting across the lines it is easy to cut corners in the Quality Process. The repercussions of which are not seen immediately. However spending more money on an unconstructive effort will not beneficial also.
It is important that our Development Teams have the discipline, training and motivation to follow the processes. Mature IT Processes ensure that the processes are helpful and are adhered to. Traceability helps us in not only ensuring that everything was by the book it also helps us to learn lessons and make improvements.
Motivation and Opportunity provided by the Organization Leadership helps the teams achieve the same. While there may not be “ready-made” solutions that may apply to you directly, we can almost always leverage and learn from industry best practices.
Effective Software Configuration Management/Defect Tracking/Peer Reviews/Automated Builds are some improvements which help us increase Software Reliability greatly.
However, motivation and Leadership almost always play a major role.
Creating Reliable Software