| By S G Ganesh | Article Rating: |
|
| May 16, 2008 11:45 AM EDT | Reads: |
11,364 |
Testing
As software gets more complex and ubiquitous, it becomes
more difficult to ensure high-quality code. One common method of finding bugs
is testing. But testing can’t cover all paths and possibilities or enforce good programming practices. Expert knowledge in the form of manual code review by
peers is one of the best ways to ensure good code quality. Code review is often
used as a mandatory process step for improving the code and for finding problems
early in the software life cycle.
Since testing and manual code review processes are resource-intensive, it would be helpful to use automated tools to review code. Static analysis tools help considerably in detecting the problems early in the software life cycle and help enhance the quality of the code significantly.
There are many high-quality Java tools available in the open source domain. While it’s true that Java programs don’t suffer from traditional C/C++ problems like memory issues and major portability issues, Java software does suffer quality problems like reliability, efficiency, maintainability, and security. A brief discussion on the benefits of using FOSS Java tools is given in the sidebar.
Before getting into the meat of the matter, let’s discuss why bugs happen. First, it’s important to recognize that everyone makes mistakes, even experts[2]. Second, compilers only check for syntax and semantic violations. Errors in language or API use, which manifest themselves as bugs, aren’t detected by compilers; this is left to static analysis tools and it’s important to use them to detect coding problems. Third, programmers and engineers are under constant pressure to “get-the-work-done” under tight schedules; working under “almost-impossible-to-meet” work schedules results in code that is often substandard and filled with bugs. Because of practical problems, most code developed in the real world has bugs and it’s worthwhile using static analysis tools to find them and fix them.
Published May 16, 2008 Reads 11,364
Copyright © 2008 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
About S G Ganesh
S G Ganesh is a research engineer in Siemens (Corporate Technology), Bangalore. Prior to Siemens, he worked in Hewlett-Packard for around five years. His area of interest is programming languages and compilers. His latest book is "60 Tips on Object Oriented Programming" (ISBN-13 978-0-07-065670-3) published by Tata McGraw-Hill, New Delhi.
- Java Kicks Ruby on Rails in the Butt
- Ulitzer’s Amazing First 30 Days in Public Beta
- "Government IT Expo" to Highlight Cloud Computing and SOA
- Will Ulitzer Dominate News Content on The Web? -Gartner
- Building Private and Hybrid Clouds with Ubuntu 9.04
- Ulitzer vs. Ning - a Quick Review
- Eclipse.Org Releases Swordfish Next-Generation ESB for SOA
- Ted Weissman and Lois Paul & Partners PR Firm
- Software AG Comments on Oracle-Sun Acquisition
- New Eclipse Plugin Adds Cloud Hosting for Java, PHP and Rails Applications
- Java Kicks Ruby on Rails in the Butt
- IBM Named “Platinum Sponsor” of SYS-CON's Virtualization Conference
- Ulitzer’s Amazing First 30 Days in Public Beta
- "Government IT Expo" to Highlight Cloud Computing and SOA
- Cloud Computing Expo Keynote to Be Delivered by IBM's CTO Kristof Kloeckner
- Will Ulitzer Dominate News Content on The Web? -Gartner
- Micro Focus Offers Micro Focus COBOL for Eclipse
- Building Private and Hybrid Clouds with Ubuntu 9.04
- Sun CEO Reviews Company's Prospects for 2009-10
- Virtualization & Cloud Computing Expo Attracts More Delegates Than Gartner
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- Creating Web Applications with the Eclipse Web Tools Project
- Eclipse Special: Remote Debugging Tomcat & JBoss Apps with Eclipse
- The Next Programming Models, RIAs and Composite Applications
- How to Bring Eclipse 3.1, J2SE 5.0, and Tomcat 5.0 Together
- SYS-CON Webcast: Eclipse IDE for Students, Useful Eclipse Tips & Tricks
- Eclipse: The Story of Web Tools Platform 0.7
- "Eclipse 3.0 is a Great Leap Forward," Says JDJ's Dudney
- Developing an Eclipse BIRT Report Item Extension







































