4 Ocak 2009 Pazar

Web Site Quality

Web Site Quality Assurance


The term quality assurance, when applied to web sites, describes the process of enforcing quality control standards and working to improve the processes that are used in producing the web site and its components, infrastructure and content. When quality assurance is well implemented, a web site should see progressive improvement in terms of both lessening rate of defects and general increase in site usability and performance.

Quality assurance should function as a "voice" for the user, a reminder to the designers and developers that the site is designed for users outside the office. Quality assurance as ombudsman would be a positive force for a quality user experience.

If you are limited in what you can accept responsibility for, document those limits. For example, if you can't test data or middleware, announce that fact whenever you provide test results for the quality of the site. Even the best designed and developed sites will experience problems and failures, so a good quality assurance team should set expectations -- for the entire web site team and with management -- for what QA can effectively accomplish.
Focus on Improving Processes

The key to understanding quality assurance is understanding the emphasis on process: quality control focuses on what comes out of the web site creation process (creation, development, publication -- whatever term you prefer that describes the process that results in the web site). Quality assurance focuses on what goes into the creation process as well as on the process itself with the goal of improving the quality of output by improving everything "downstream".

Quality assurance looks beyond the structured testcases used by quality control because these testcases are necessarily limited. Quality assurance focuses on more than a site's ability to meet a specific benchmark; quality assurance aims to make the site better so tests are passed more consistently, so that the benchmark can in fact be refined, and so that problem areas can be eliminated.

Quality assurance should be involved in the development process. QA should review new designs before they are finalized with an eye towards usability and user experience factors; heading of problems before they become real improves quality immediately and reduces problems "downstream".

Quality assurance should be involved in customer service and user-support communications, especially with a commerce site, so that usability defects can be reviewed. With user input, QA can refine user scenarios to better match "real" behavior. There is no substitute for user comments.

Are the tools used to create and maintain your web site appropriate for their tasks? Can the tools be tweaked to shorten the processes or eliminate some steps? Can some tests be incorporated earlier in the creation process, such as spell checking? If your site has changing content, is the content checked after it is published, or before it is entered into the database? Quality assurance should pay attention to all of these issues.

Following any major phase of your web site, perform a postmortem analysis: review the success of the changes, redesigns, scheduling, file transfers, etc. What could be made more efficient? Which processes could be smoothed out?
Focus on Tracking Problems

Quality assurance also involves a closer involvement with defects and their resolution. During the quality control process, problems are discovered and typically reported and handed off to the people who "own" the work with the defects. Quality control can be a binary process: something passes, or it fails and is "bounced" back to the team responsible for fixing it enough to be tested again.

Quality assurance catches the problems discovered through use of quality control testcases, but also finds problems uncovered through more general site reviews and ad hoc usability and consistency testing. In addition, quality assurance testing finds areas for improvements that may not be defects, but rather opportunities; user input is a great source for such "opportunities". The set of problems returned by thorough quality assurance testing is therefore larger than the set found through quality control testing. The handling of this larger set of problems is a major function of QA.

Quality assurance should log reported problems in a database of some kind, assigning properties to the problem such as the priority and scope, and recording such attributes as description, error message, affected functionality, etc. In addition, QA should assign and track ownership of the problem, and should track the progress made towards resolution of the problem. Quality assurance must take an active role in getting problems fixed; demanding schedules for the fixes, explanations for the problems, working to eliminate the type of problem in the future -- these are all common actions.
Source: philosophe.com

Sigma-Aldrich is committed to providing quality products, so it isn't surprising that it also wants its Web site to provide a quality experience for its customers.

"Our Web site brings in millions of dollars a day. If we have any outage, we lose orders -- we lose customers," said Rich Porter, Web administrator at Sigma-Aldrich, a life science and high technology company based in St. Louis, Mo.

About 35% of Sigma-Aldrich's business is conducted via its Web site, which supports more than 100,000 page views per day. Its Internet catalog and store offer more than 130,000 products.

If we provide a good customer experience at the Web site then the customer overall has a better idea and sense that Sigma provides quality products and a quality experience.
Rich Porter
Web administrator, Sigma-Aldrich



That's why the company, which provides biochemical and organic chemical products and kits used in scientific and genomic research, biotechnology, pharmaceutical development and the diagnosis of disease, continues to evolve and enhance its Web site for usability and a quality experience for its customers. Predeployment automated performance testing is a key component of ensuring a good customer experience, and it will be particularly important as the company transitions its Web site to the IBM WebSphere platform. Its tool of choice is Borland's SilkPerformer for automated load, stress and performance testing.

Porter chronicled the Web site's approximately nine-year evolution, which started as a Lotus Notes platform and then moved to the Haht application server from Haht Software, now owned by Global Exchange Services (GXS). Sigma-Aldrich is now in the process of migrating to a WebSphere environment. The goal is to be able to scale the site to accommodate the company's growth, and reliability and stability are critical, he said.

Sigma-Aldrich has also gone through several evolutions in its quest to do predeployment performance testing, which the company has been doing for about six years, Porter said.

"Our first attempt at load testing, we chose a vendor that gave a good demo, a good sales pitch, was reasonably priced, and had a development team in St. Louis," he said. "But when we started using it, we found the interface difficult to use and the application was buggy. We had their developers here to resolve issues, but after six months we gave it up."

Fortunately, the company's second go at performance testing with a different product went much better, Porter said, but after a few years he was asked to reevaluate the product landscape. "I reevaluated about five vendors, including the one we were using, and SilkPerformer came out on top. It has proven to be more flexible, and I like the interface better. It's also a lot easier to customize the scripts," he said.

Also, he added, "One of my pet peeves is support, and their [Borland's] support is probably best I've seen. Their software is good -- one problem we had was fixed by an update, and we've had no problems after that. It's very reliable, not buggy."

That's important to Porter: "I have scars from the first software we used."

Performance during peak times
Sigma-Aldrich has been using SilkPerformer for about a year and a half. Porter and a quality assurance person are involved with the testing. "We have peak times we have to be conscious about," he said. The company has experienced a lot of growth from the Pacific-Rim and Europe, he said, so when U.S. customers start coming on in the morning the site receives heavy traffic.

"Mornings are peak times," he said. "We have a lot of customers doing searches, ordering, and there's a lot of researching, so we have to be conscious about that time. Borland has made it easy to script for different applications very quickly, and test those apps along with the current environment to see if they have any impact."

For example, he said, the Sigma site provides a Java tool that researchers can use to draw chemical compounds and submit requests based on that image. "That's very CPU-intensive; it could take several minutes to come back based on options the researcher uses," Porter said. His job is to determine if those requests may impact other customers ordering or searching.

"We constantly have folks coming in and doing searches on a large variety of products on the Web site to get pricing and availability information," Porter said. "That information is live, so we're pulling from SAP systems. It's real-time data, so we have to make sure no one is being impacted by anything anyone is doing on the Web site."

Now the company is at the beginning of its WebSphere migration, and it is relying on SilkPerformer throughout that process.

"We do have WebSphere available to limited customers," Porter said. "SilkPerformer is helping to prove the WebSphere environment can handle, say, three times the load the current site can without an impact on the servers or performance."

WebSphere is available to B2B customers, he said, and Sigma hopes to expand that to its public customers going forward.

Sigma-Aldrich as a company is committed to quality and quality assurance systems, and states on its Web site that: "Every employee at Sigma-Aldrich is dedicated to defect-free work, following established procedures, and delivering products and services that are world-class."

Predeployment performance testing is in keeping with that quality commitment.

"It improves the quality of our Web site by improving reliability and performance," Porter said. "If we provide a good customer experience at the Web site then the customer overall has a better idea and sense that Sigma provides quality products and a quality experience. That's how SilkPerformer helps, in improving the overall user experience."
searchsoftwarequality.techtarget.com/