Archive for December 2008
Question and Answers for QA – Part 2
Q) Explain points in favor of testing by Developing Team themselves & Testing Independent team?
Development Team
Advantages:
- Minimize the cost of Testing.
- Gain knowledge of other parts of project.
- Trains developers in good test methods.
Disadvantages:
- Improper use of development process may not be detected.
- Individual may be BLINDED into accepting erroneous system specification & coding.
- They are optimistic in their ability to do defect free work & thus underestimate the need for extensive testing.
- Without a formal division between Development & Test, an individual may be tempted to improved the system structure & documentation rather than allocate the time an effort to test.
Independent Team
Advantages:
- Unbiased assessment of quality of the application.
- Bring an independent perspective to the test process.
- Group comprised of professionals who have specialized in area of testing, have extensive testing experience in multiple projects. Thus are better able to construct and execute tests.
Disadvantages:
- Additional cost required to establish and administer a testing function.
- Development team may place too much reliance on the test team and thus fail to perform adequate testing themselves, resulting in overburdening testers.
- Competition between testers and developers results in breakdown of cooperation making it difficult for testers to function properly.
Manual testing in Third Party Testing
Manual testing is defined as the oldest and most rigorous type of software testing by http://www.wikipedia.com/. Here’s more on Manual testing described by them. Manual testing helps discover and record any software bugs or discrepancies related to the functionality of the product.
Despite the proliferation of automated solutions, manual testing still accounts for at least 80% of all testing. Automation can only be justified where repeatable consistent tests can be run over a stable environment. When this isn’t the case (i.e. during the early stages of the test cycle), testing teams almost always revert back to manual testing. So manual testing is here to stay! Here are some reasons why:
Business critical / Heavily tested software: With constantly changing applications, automation can simply be too daunting.
Script based automation tools not living up to their hype: Many people still find that despite investing in script based automation solutions this only covers 10-20% of their total testing. The rest is still carried out manually.
Full automation is simply not appropriate: You may be testing new functionality, new platforms/OS, or there maybe insufficient time and/or skills to develop test scripts.
Manual testing helps discover defects related to the usability testing and GUI testing area. While performing manual tests the software application can be validated whether it meets the various standards defined for effective and efficient usage and accessibility.
There is no complete substitute for manual testing. Manual testing is crucial for testing software applications more thoroughly.
To get fully professional manual testing services visit http://www.qcboss.com
Low-Quality Software
Using low-quality software may cause lot of problems and delay the work overall, however, software testing is the most important and effective method/practice to ensure software quality and guarantee software users not to have any loss when operating. And software testing can test all the aspects of application process, flow, logic, procedures, functions, language layouts and the performances (load/stress).
Many operation problems are not only caused by programmers in coding, but also caused in designing, and even in requirements analysis. In this situation, to correct errors must be traced back to the initial stage of software development. To ensure the quality of software, the project management should focus on the entire software, especially the system analysis in the development phase. Obviously testers to be introduced much earlier in the life cycle to avoid huge loss. The later the testers steps-in, the lower the quality goes.
Question & Answers for QA – Part 1
Q) What are the Five Quality perspectives?
· Development based; conforms to requirements
· Product based; possesses the desired features
· User based; fit for use
· Transcendent; I know it when I see it
· Value based; developed at an acceptable cost
Q) Primary goals of testing software
To produce a quality product, which is defect free, and also to make sure all the requirements are satisfied and the best design system architecture is used. Customers/User satisfaction (customers are the king).
To make sure the software is:
· Correct
· Reliable
· Portable
· Efficient
· Interoperable
· Usable
· Maintainable
· Re-usable
· Secure
· Flexible
· To achieve the goals of an organization as well as to make profit.
· To reduce the possible risks associated with the software, then reduce the loss, which might happen when/if the software is released with defects included.
Q) Name the causes from which most of the testing problems occur?
· Failing to define testing objectives
· Testing at the wrong phase in the life cycle
· Using ineffective test techniques
Quality View
|
QUALITY IN FACT |
QUALITY IN PERCEPTION |
|
|
|
|
|
|
|
|
Usability Testing
Usability testing is a technique used to evaluate a product by testing it on users. This can be seen as an irreplaceable usability practice, since it gives direct input on how real users use the system.
Usability testing usually involves a controlled experiment to determine how well people can use the product. The aim is to observe people using the product to discover errors and areas of improvement. Usability testing generally involves measuring how well test subjects respond in four areas: efficiency, accuracy, recall, and emotional response.
When a design has a usability problem, it’s because someone made a wrong decision. They chose to take the design in a direction that creates frustration for the user. A different design choice would have prevented the frustration.
We consider a usability test to be successful when the design team members receive the information they need to make the right decision. Successful usability tests produce informed decisions.
There are two outcomes from poor decisions: either the user experience is worsened because of a change that just shouldn’t have happened; or a valuable opportunity is missed to improve the design’s user experience. Either way, when usability tests work, these results are significantly less likely.
As we work with teams all over the globe, there are mistakes that we see frequently. These mistakes are very easy to prevent — if only the team members realized they were making them.
Usability testing lets the design and development teams identify problems before they get “set in concrete.” The earlier those problems are found and fixed, the less expensive the fixes are. As the project progresses, it becomes more and more difficult and expensive to make major design changes. The more you test and change based on what you learn, the more confident you can be that the site will meet your objectives and your users’ needs when it is launched.
Source: the Internet
Your websites can definitely benefit from the Usability Testing services, which we offer. Visit http://www.qcboss.com to learn more.
Is software testing practice meeting industry needs?
Software Testing is the most important way of assuring / controlling the quality of software. Testing is generally considered costly and a nuisance. But as we just know, it is a necessary nuisance. Good practices throughout the development process contribute to the quality of the final product, but only testing can demonstrate that quality has been achieved and identify the problems and the risks that remain.
Points which justify that, software testing practice meeting industry needs –
- The cost of a bug found using inspections, walkthroughs, reviews, modeling and proofs is much less than a bug found in testing.
- To fix a bug found during a test implies rework, which might go far back into the development cycle
- The sooner you find the fault the cheaper it is to fix
- Not everyone can test well, use professional testers
- The test phase allows a fresh set of eyes to subject the application to a range of ‘Real world’ testing outside the formalities followed by the development team
- Feedback/Drawback from Testers to development team improves the applications performance and ease of use
- Implementing best practice standards is part of the ongoing commitment of industry professionals to the continual improvement paradigm
Some Useful Testing Terms
Audit
This is an inspection/assessment activity that verifies compliance with plans, policies, and procedures, and ensures that resources are conserved. Audit is a staff function; it serves as the “eyes and ears” of management.
Benchmarking
Comparing your company’s products, services, or processes against best practices, or competitive practices, to help define superior performance of a product, service, or support process.
Compliance Checkers
A parse program looking for violations of company standards. Statements that contain violations are flagged. Company standards are rules that can be added, changed, and deleted as needed.
Decision Table
A tool for documenting the unique combinations of conditions and associated results in order to derive unique test cases for validation testing.
Error Guessing
Test data selection technique for picking values that seem likely to cause defects. This technique is based upon the theory that test cases and test data can be developed based on the intuition and experience of the tester.
File Comparison
Useful in identifying regression errors. A snapshot of the correct expected results must be saved so it can be used for later comparison.
Mentality of the Tester
Testers should possess the following mentalities to become great software testers..
a) Think from the users perspective.
b) Try to break the software.
c) Check all possible ways in which the function can be done (positively as well as negatively).
d) Never think that there is no error.
e) Test till the final minute and
f) Finally use a little bit of common sense.
If you think there are other mentalities to be added please feel free to give your comments
Cost of Poor Quality
The cost of poor quality has been quoted by various sources as being between 15 percent and 50 percent of the cost of doing business. Recent studies have shown that the cost of poor quality may be as high as 20 percent of gross sales for manufacturing and 30 percent of the gross sales for the service sector. Poor quality costs any organization many of its scarce dollars. One of the most effective actions management can take to improve productivity in any organization is to improve the quality of its processes. Quality saves, it does not cost. Quality is the solution to a problem, not the problem. Reducing the cost of poor quality directly affects the bottom line. Improving quality is the most direct way for an organization to increase profit.