Check out the FREE Business Innovation email newsletter!
Business Innovation
 
 
Home Infrastructure Optimization Collaboration Information Management Business Agility Green Computing Risk Management
Infrastructure Optimization
  InformationWeek Analytics provided by Network Computing. Perfect Match? SOA Meets Unified Communications. Report Price $499. Now available FREE, courtesy of IBM. > Click Here.
InformationWeek Analytics provided by Network Computing. 2008 NAC Survey. Report Price $499. Now available FREE, courtesy of IBM. > Click Here.
InformationWeek Analytics provided by Network Computing. The New Sprawl: Managing Virtual Server Environments. Report Price $499. Now available FREE, courtesy of IBM. > Click Here.
   
 
  The Move to a New Enterprise Data Center  
  The Virtualization Effect  
  Innovative IT  
  Energy Efficiency in IBM Data Centers  
 
 
 
   
 
  itopt in a Web 2.0 World

Server Migration Best Practices
Companies talk about their server migration experiences. Click here.
 
 
 
  eBook / Brought to you by IBM  
 
 

Open Source in the EnterpriseOpen Source in the Enterprise
Open source software's growing maturity makes it a newly viable option for IT departments looking for ways to save money while solving business challenges. Click here.

Improving TCO with Server Consolidation and AllocationImproving TCO with Server Consolidation and Allocation
While many see server consolidation as simply a way to reduce the enterprise server count, in fact it offers a great deal more when it's regarded as a resouce optimization strategy. Click here.

 
 
 
 
   
 
 
 
 
 
 
To receive the latest articles as they are posted SUBSCRIBE here.
     

Business Innovation Homepage > Infrastructure Optimization

Quality Control
 
Software quality initiatives can help organizations deliver reliable, usable and secure applications.

By Bob Violino
October 8, 2007

Quality ControlEnsuring the quality of applications has long been a concern of software development companies. But all organizations that rely heavily on homegrown applications to support business processes should make sure that software development is held to a high standard.

If an application isn't reliable, maintainable, easy to use, efficient and secure, it could render the software useless or worse for a business. Software quality is especially important for companies that rely heavily on applications such as those that support online sales transactions, for example. But it would be hard to find any large enterprise that doesn't rely on in-house or customized software for some functions.

"Since more and more business operations are dependent on software, the risk of a loss due to software is increasing," says John Goodenough, a fellow at the Software Engineering Institute/Carnegie Mellon. "This makes software quality of increasing importance to businesses today."

But Goodenough points out that major losses are seldom due to software defects alone. "Failures in a business work process combine with software failures to produce losses," he says. "So it is important to pay attention to the big picture and how business operations are dependent on software. Where important dependencies exist, a business needs to consider how to reduce the impact of potential software failures."

That's where software quality efforts come in. There are multiple definitions of software quality, but in general it involves measuring how well software is designed and how well it performs using a variety of criteria, such as reliability, ease of use and security.

What's involved in developing a software quality initiative in a company? For an organization that's developing software to be used in critical applications (for example, applications where a software failure could lead to a significant loss), one of the key steps is to use appropriate methods to detect potential causes of software failures early in the development process, Goodenough says.

"Quality is not achieved just by testing," he says. "In the avionics community, for example, developers are using various tools to analyze models of software systems, sometimes even before the software is completely developed. They analyze interactions between components that could lead to degraded performance or unsafe conditions."

These interactions may occur only rarely and are unlikely to be detected even by thorough testing, Goodenough says. "Increasing the use of such analysis tools is an important step to improving software quality."

Standards exist for quality assurance processes for software developers, and companies that follow these standards are more likely to produce high quality software, Goodenough adds.

Tools are also needed to support quality assurance processes, such as test-management tools and model-checking tools. There are standards that determine capabilities of model-checking tools, Goodenough notes. "For example, the SAE Architecture Analysis and Design Language (AADL) is an international standard for a language that allows engineers to describe a system using a standard notation," he says.

Tools can then be developed to process descriptions in this notation, so engineers can investigate possible performance, safety and security problems long before the software has actually been produced, Goodenough says. "The analysis methods supported by these tools can detect errors that would be very difficult to detect by testing," he says.

Click here for more IT Optimization articles

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  Copyright © 2008 United Business Media LLC | Privacy Statement | Your California Privacy Rights | Feedback | RSS

We encourage your feedback: businessinnovation@cmp.com

Visit these other IBM and TechWeb Partner Sites:
Maximizing ROI Through Business Process Management (BPM) and Service-Oriented Architecture (SOA)
Internet Evolution — The Macrosite for News, Analysis, & Opinion About the Future of the Internet
IBM Database Magazine — Strategies and Solutions for DB2, Informix, and IBM Data Servers

 
 
  United Business Media Business Innovation