I have always challenges with the Software Requirements for the products and would be the same for others too. Most of the time, the requirements talk about just the functional needs and ignore on the non functional aspects of the system. Once the requirements are freezed, we rarely go back to them for any updates required. The development teams always have implementation issues and the behavior changes from the drafted requirements.
Software Testing is considered as a Cost for some Stakeholders & an Investment for others in their context of operation. It’s good to know the status in your context. I had this query in LinkedIn Answers & thought of sharing the good discussion to my blog readers.
Do you consider Software Testing as an Investment or a Cost in your Context ?
Bug Database for the products might have thousands of issues over a period of time against various builds and releases. Though these issues fixed over a period of time, it might be hard to derive meaningful metrics over the release.
We need to support these releases over the production systems & it might be helpful to capture the hot spots / risk elements with the release. Most of the issues here to deal with the respective features, compatibility with other features / technologies & performance related issues.
The usual metrics of number of issues against a module and their severity levels may not be of help always.
How easy is it to derive the following from the Bug Database for a given release
- Identify the issues have originated from Requirements, Design & Implementation
- Identify the issues over their category (Functional, Performance, Security, Compatibility, Usability etc)
- Identify the issues along with their origin & category over the features rather than the modules / components
(more…)
In this post, i will explore different stages of the Bug from it’s inception to closer. The Bug has been found and logged into the Bug Tracking System. It’s my fourth post in the Bug Life Cycle series.
- The Bug has been found and logged into the Bug Tracking System. It will be treated as New Bug in the System.
- The Bug will be assigned to the concerned Developer for a Resolution.
- The developer looks in to the possibilities of the resolution & takes a call on Resolution by fixing it or differing over the information provided.
- Tester validates the resolved issue in the build & checks for the regression scenarios over the fix.
- If the issue found fixed, then he choose to Close the issue else he / she will Re-open the same.
- The Cycle follows again for the re-opened issue till it gets closed.

It worth doing the following activities
- Capturing the required and re-usable info to the Bug Report at it’s each stage.
- Check for all the closed bugs of Severity 1 & 2 against final build for the release.
In the next post, I will share my thoughts on the useful metrics over the Bug Tracking Repository.
Happy Testing..
Abstract:
Bugs are there every where in the software applications. Almost every one who uses software applications for their day to day activities; do come across different kind of problems while working with them. Each of these problems has different meanings to different people on it. There are many instances where in which, we (as end users of the system) do feel that how come they missed this bug, it’s very important in this context (The context where in which the user operates).
Tester deals with Bugs every day and its good know about other people get affected with them. The list includes Customers, Stake Holders, Sales, Professional Services, Technical Support, Architecture & the Development team.
This is my second post in the Bug Life Cycle Series. Before going more into the Bugs and their life cycle, it’s good to know, what it means to different people across the software application. Based on the contexts, the same bug might mean different things to different people. Do go through Role of Software Testing to understand my mission about Software Testing.
Wikipedia defines Software Bug as the following
A software bug (or “bug”) is an error, flaw, mistake, failure, or fault in a computer program that prevents it from behaving as intended (e.g., producing an incorrect result). Most bugs arise from mistakes and errors made by people in either a program’s source code or its design, and a few are caused by compilers producing incorrect code. A program that contains a large number of bugs, and/or bugs that seriously interfere with its functionality, is said to be buggy. Reports detailing bugs in a program are commonly known as bug reports, fault reports, problem reports, trouble reports, change requests, and so forth.
Tester Perspective
Any deviation from the expected results of the test case will be treated as a bug in the software application.
Customer Perspective
Customer uses the software application to solve his business needs. Any problem while modeling a solution to the business need will be considered as a bug in the software applications. These problems can be classified into two. They are the list of problems that they can live with and the other is the list of problems that need to be addressed to solve the business need.
The second list of problems will be sent to the vendors of the application for the fix. Some times, customer sends only the show stopper problems for his business. It’s true in the fact that as an end user, I will contact the vendor only if the problem is critical for me.
Technical Support Perspective
The Support Team classifies (though it’s critical) the customer requests into New Features, Enhancement, Bug, How to & Enquiries etc with respective severity levels. The decision will be taken by validating the problem with the features in the product.
Developer Perspective
The feature is designed this way and all the cases have passed. The end user might be using some other scenario. Yes, Some times there are bugs in my code. But it functions well if we use the way the application has built.
Management Perspective
Any problem with the application will be treated as Bug if it has impact over the revenue and customer satisfaction.
Final Thoughts
It’s tough to have same perspective across all the people (might happen in an ideal world). The bug for some one may not be the bug for the other person. However there are some set of show stopper bugs for which, the perspective will be the same.
Software Projects need effective & skilled programmers to deliver on time without compromising on the assured quality. We often need generic skills apart from the technology to deliver effective solutions on time. I have come across of the article
Seven Habits of Effective Programmers has been originally published at
Technicat. Philip Chu share his experiences with Software Releases and the comes up with a list of seven habits that makes normal programmers effective.
Habits of Effective Programmers
- Understand your requirements
- Keep it real
- Understand your code
- Optimal Programming
- Manage Thyself
- Continuous education
- Respect your peers and managers
Abstract
As a software engineer, you might want any number of things out of your job – a steady paycheck, the opportunity to work on interesting projects, a springboard to the next better job, or maybe you just like hanging out with other programmers. But by “effective”, I mean the ability to complete projects in a timely manner with the expected quality. After working on dozens of software releases, I believe the following practices will bring you there, and while they may involve sticking your neck out, I’d like to think they will also advance your professional reputation, career longevity, and personal satisfaction.
Check out For Seven Habits of Effective Programmers for complete reading
Testing Magazines helps us to know the latest trends / happenings around the industry. These will list the methodologies, tools, techniques, expert talks and some of the best practices that are useful to the testing community.
Through this post, I would like to list the magazines that are useful. I have been following through the below list of magazines since a while and these does helped a lot.
Software Test and Performance from BZ Media
Brought to you by BZ Media LLC, Software Test & Performance helps readers improve the efficiency of their software QA and testing processes, as well as help them improve the performance of their in-house applications pre- and post-deployment.
Better Software from StickyMinds.
Better Software is the magazine for software professionals who care about quality. Each issue brings you relevant, timely information to help you build better software. Continuing to deliver in-depth articles on testing, tools, defect tracking, metrics, and management, it’s the only commercial magazine exclusively dedicated to software professionals. Within the pages of each issue you’ll find heavy hitting articles about solutions to common management problems, coverage on emerging technologies, and more. You’ll benefit from expert analysis and real-world case studies in the areas of Testing & Analysis, Managing People & Teams, and Tools & Techniques.
Methods & Tools
This is a free magazine with PDF and text issues that provide practical knowledge and information on all topics of software development and software engineering: UML, Agile Methodologies (eXtreme Programming, Scrum, TDD, FDD,..), Software Testing, Software Configuration Management, Database Modeling, Java, .NET, RUP, Software Project Planning and Management, Test Automation, Programming, Software Analysis and Design, Quality Assurance, Software Process Assessment and Improvement, Software Development Tools, Risk Management, Refactoring, IT News, etc.
The Professional Tester
Professional Tester is the leading publication targeting professional testers of software worldwide. It is a 32-page, English-language quarterly magazine with a circulation of approximately 15,000 subscribers and is now in its sixth year of publication. Subscription is free to qualifying industry professionals. Professional Tester is completely vendor-independent and is currently the only European publication covering the rapidly growing software testing market.
The Tester from Specialist Group in Software Testing
WINNER of the BCS Best Specialist Groups Magazine award!. The Tester is the newsletter of the SIGIST. It is published a few weeks before each conference and contains advanced details of the conference as well as a booking form.
Software Testing & Quality is overlooked most of the time and it’s quite common to see buggy software in the market. Some of the projects ship software without even having dedicated testers & in some other projects due to budget constraints there are less resources. I was going through Joel on Software site and come across this Joel on Software – Top Five (Wrong) Reasons You Don’t Have Testers
As per Joel Perspective the reasons are
- Bugs come from lazy programmers.
- My software is on the web. I can fix bugs in a second.
- My customers will test the software for me.
- Anybody qualified to be a good tester doesn’t want to work as a tester.
- I can’t afford testers!
Won’t they look similar in your context.