Monday 8 September 2014

Creating Business Value through matured QA and testing practices:

Today, IT industries are growing at a very fast pace so competition is increasing day by day. Stakeholders demand high quality products in lesser price and time. So, QA needs to focus not only to improve the quality of product but also on business values and delivery time to survive in industry.

QA Testing needs to track 'Business Metrics' and test the product with business focus that would help in increasing the quality of product and detecting the critical business process defects.

Test the product from the end user's point of view that would make the product user friendly and increase the demand of product.

It is always helpful for QA to understand its client's business process and their product's requirements completely in enhancing the quality of product at reduced cost and lesser time. 'Business Driven QA' approach is very successful that's why, 'Testing' phase is added into 'Software Life cycle' and outcome of these software are depended on success of 'Testing' phase.

Following are few of the examples to create Business Value with mature QA and testing practices that can benefit the client as well as their end users :-

1. Test with a Business Focus: A logical understanding by the QA Testing teams of the business procedure that the application would hold, enables them to simply notice serious business process bugs.
2. Test from an end-user’s perspective: Digging an application by following the end – user scenarios in mind helps the QA team bring an improved skill post to the final output.
3. Map Business Impact:  In a case, where test plan are based on the criticality of business requirements and analysis, optimal QA coverage is aimed with negligible risk.
4. Measure Business Metrics: Now-a-days, it is enormously significant to trail business program metrics as an alternative of just testing program metrics as its helps us enumerate and be in touch with the business value resulting from a QA program enabling QA to give good reason for its reliability.
5. Collaborative Testing: With the rising acceptance of Agile and progressive towards realizing DevOps vision, the testing team needs to move center from bug discovery to early and nonstop feedback and contributions to improving quality.
6. Continuous Test Automation: Testing near the beginning and endlessly also necessitates using a broad range of tools (commercial, in-house and open source) and scripting languages.
7. Visual Modeling: Need for synched and that too everyday collaboration with program team also comes the need to use visual modeling tools.
8. Mission Risk Mitigation: This mission is addressing the variety of risk and covering those risks based on thorough analysis of metrics.


A Business driven test program capture business metrics which ensure businesses to measure the success of test programs against business goals. To achieve this, test team gets involved in the very initial phases of project life cycle to understand the exact business process.

Whereas test program metrics of a traditional project covers normal testing life cycle like quality, productivity etc. It does not cover any detail regarding business impact of QA. Here, QA team comes into later phases of project usually during design or testing phase.

Here are some methods that can help in creating business value with QA practices:
1. Need to understand the exact business requirements/QA process which would be supported by the application being tested.

2. Need to test the application with an end user perspective which would help to deliver better quality product.

3. The tests in the test plan should be based on the criticality of the business requirements.

4. Need to create business program metrics along with testing program metrics. That would help us to quantify the business value derived from QA program.

To deliver a better quality work to the client is as much important as delivering best quality product to the end user. To provide an effective quality of testing and QA implementation, the company needs to have QA processes in place which also helps in keeping transparency in work status and reports in a sophisticated manner. QA manager should commit the upcoming challenges and should deliver the daily/final reports at the right time so as to maintain the client's trust.

As a QA team, all the deliverables should be as per the client's recommendations such as the Test strategies, Testing Tools that client favors for, ROI reports of automation, having bandwidth to provide extra efforts at the time of signing of the iteration or any other project risks.

Summary:
Today, IT industries are growing at a very fast pace so competition is increasing day by day. Stakeholders demand high quality products in lesser price and time. So, QA needs to focus not only to improve the quality of product but also on business values and delivery time to survive in industry.To provide an effective quality of testing and QA implementation, the company needs to have QA processes in place which also helps in keeping transparency in work status and reports in a sophisticated manner.

Keywords:  QA Testing, QA Process

Author:
Knowledge Sharing Team at QA InfoTech is responsible for research on new tools & technologies for effective software testing services across all industry verticals. QA InfoTech (an ISO 9001:2008 & CMMI III certified) is one of the leading Quality assurance Testing Companies with five testing “Centers of Excellence” in the United States and India.  It offers end to endqa testing services.
Links:

http://www.qainfotech.com/qa_process_management_services.html


Wednesday 14 May 2014

What are the core objectives and goals that you would like to set for the next generation to become a better tester and emerge as a QA Thought Leader. Share your ideas based on your experience.

Software testing requires excellent skills, and testers should be willing to expand their knowledge and work on improving their testing strategies. Below i have listed goals and objectives that i think should be set for the next generation to become a better tester and emerge as a QA Thought Leader. To become a good tester, the tester should think out of the box and explore the software and applications which helps to develop the attitude of the software tester. While testing the applications the tester should think from user's perspective since the bugs need to be fixed before the application reaches the end user. It's important to work with an end user's mindset to get the best output in finding bugs.

The tester should always keep in mind that quality is more important than quantity. Finding the most critical and valuable bugs is more important than number of bugs in an application. Also, the composition of bugs is equally important which allows the reported bugs to be fixed as quickly as possible. In addition to this, the written communication skills should also be excellent to ensure 'correct and complete composition of bugs', 'test cases' etc. While reporting the bugs, the tester should attach screenshots, number of instances found, operating system and other environment details, devices etc. without which the bug is useless.


The tester should question everything and learn form own mistakes. The most critical parts of the application should be prioritized while testing. The tester should always be open for the feedback, be it positive or negative. The tester's knowledge should be up to date and he should be aware of the latest and upcoming testing technologies in the industry. He should attend software testing conferences and classes to gain knowledge and be up to date.

Testing is something which requires a different attitude and a destructive approach with ability to think out of the box. A good approach in emerging as a tester with good testing skills keep yourself updated with the latest trends and technology that help in the overall criteria of setting goals and objectives. When a tester is free by thoughts and does not perform conventional approach of testing then goals are set by the tester.

Below are some points based on my experience that I would like to share to become a better tester:
- Testing must be done for quality over quantity?
- A good tester must always learn to prioritize.
- Don't be humble with software and think destructive mind set.
- Bug reports generated must continuously increase in context of effectiveness.
- To gain excellence in this field tester should be passionate to learn and find new ways and seek every possible opportunity.
- A good tester must be familiar with the software development process.
- Must be able to increase productivity and promote teamwork.
- One should possess diplomatic skills to promote improvements in QA processes.
- Have an ability to withstand pressures and provide appropriate feedback to managers and seniors when there are issues with processes/quality/schedules and risk.


A tester should have ability to classify short term and long-term goals with sense of completing them with bound time frame. Keeping out of the box thinking and desire to help other by going out of the way can make you project as a good leader. Tester should always be specific, skilled and should have the quality to nurture his/her skills at any point of time. QA should have the ability to understand that objectives are real task and they should not have that fear of insecurity and failure, as fear stops the growth and hampers work as well. So goals and objectives should have the clarity of thoughts and will to create a path of success on your own which others will take as an example to work for.

Monday 20 January 2014

Ship quickly may Ship bugs, do you agree with this?

It is rightly said that ‘Quick response is much more appreciated than a delayed response’. The statement is somewhat true that deliverables shipped too early before the timed deadline may contain bugs, however the uncertainty of finding a bug later depends entirely on the quality/skill set of the testers, how effective was the QA plan and/or policies followed by them, which include internal reviewers and QA engineers appointed and responsible for reviewing completed deliverables and sign-off. And if QA tasks are completed before and/or on time, covering the entire product as expected, then this cannot be considered as a negative point.
QA objective is to ensure that the requirements are met and the project's needs are being matched to what the client desires. QA team when involved in the development process from the onset of a project through maintenance, they know which area to focus more, and which scenarios to apply. Also, there can be the case when signing off a product too quickly leaves a positive impact on the client and the customers. This stands true when client is also expecting QA sign off as soon as possible so that they can start with succeeding milestones as well.

Ship quickly may ship bugs as it's easy to commit mistakes if time is less for thorough testing. It also depends on the criticality of  the product and how you handle your testing efforts. There is always a possibility that your product is vulnerable to bugs if you if don't have enough time for planning a testing strategy.There are sometimes certain deadlines for the product delivery and a tester often doesn't get much time to test the application efficiently. So, it is a sure responsibility of a tester to deliver a quality product to the customer in that given time or he can ask the client to extend the product delivery time. But if the tester is not confident about the quality of testing he has performed, he has surely left some bugs in the application. So it is better to the complete the testing by extending the working hours or can ask the client to extend the delivery date of the product so that he gain the confidence about the testing he has done and give a quality product to the customer.


Sometimes due to shortage of time, testers try to complete the testing in hurry and eventually leaving bugs in the deliverable. Due to less time given for testing, it is hard for the testers to think of out of box or negative scenarios or in some cases they may even miss some positive scenarios. A tester should have enough time to understand the requirements and test the product so as to provide a quality end product.


More on this at http://www.qainfotech.com/