Channels ▼


Code Quality Improvement

Source Code Accompanies This Article. Download It Now.

JunHo and YoonKyu are engineers at Samsung Electronics' Software Labs. They can be contacted at and, respectively.

To overcome critical software development challenges and reduce development costs, the software engineering field has developed practices such as requirements engineering, analysis and design technologies, process engineering, and the like. Many of these practices apply to the implementation phase of development; for example, coding standards, refactoring, inspection, and static analysis. Among them, coding standards are the fundamental way to improve code readability, help individual developers produce consistent code, and prevent error-prone coding styles.

Samsung Electronics has focused on improving code quality by defining and enforcing internal coding standards. We—the QA team—used a coding standards conformance checker for this purpose, but we did not regularly apply this initial checking tool to our software development. Because of tool weaknesses, we used it only sporadically during final audits. As a result, we saw only minimal improvement to code quality.

More recently, we evaluated Parasoft's C++test and applied it throughout an on-going project ("Mobile"). In this article, we describe our experiences and share what we learned. Here, a "coding standards item" is a guideline described in the company's coding standards or conformance documents; a "coding standards rule" (or just "rule") is a codified programming rule in an automated coding standards tool.

Samsung Electronics is a major consumer electronics company. Although Samsung started as a hardware-centric vendor, software is quickly becoming a major concern for us, as it is for most other consumer electronics vendors. The Mobile project is a Samsung Electronics C/C++ development project designed to develop a reusable and extensible object-oriented software framework mainly targeting mobile devices. Our QA team is an independent group responsible for testing software produced by Samsung Electronics. We invest considerable time evaluating automated tools in an effort to minimize routine work.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags


<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags


<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

