Upgrading Static Analysis for IoT Development

ACCESS Co., Ltd. provides integrated cloud-based solutions that make it easier and more efficient for customers to develop devices supporting the growing IoT. The high reliability and security demanded by this space requires an effective static code analysis testing solution — especially for the diverse range of operating systems and devices. Migrating from their legacy static analysis tool to a new solution helped ACCESS utilize testing resources better within the organization and improve release software quality and security while reducing operating and licensing costs.

Klocwork Helps ACCESS…

icon-solution-static-analysis

Ensure Consistent Code Quality

Reduce Development Costs

Reduce Code Rework

The IoT Era: Connecting All Devices, Services, and People

With customers in the global communications, household appliance, broadcasting, publishing, and energy infrastructure industries, over 1 billion devices use ACCESS virtual technology and mobile software. In addition, more than 250 communications device manufacturers use its network software.

Why Static Analysis Tools Are Necessary

For many years, ACCESS used static code analysis as a way of improving the quality of source code. However, as programming languages grew increasingly diverse, the number of development projects increased and their lead times became shorter. ACCESS found it necessary to investigate alternative tools to its current static analysis solution for these reasons:

  1. Licensing was becoming less cost-effective as existing tools could only support C, C++, Java, and C# projects and the number of projects using scripting languages increased.
  2. Existing tools had constraints on the number of projects that could be analyzed simultaneously, which meant time had to be spent adjusting the analysis schedule to optimize license use and projects couldn’t perform analysis whenever they wanted to. This resulted in higher operating costs overall.

ACCESS decided to compare the tools they had with multiple new tools, including Klocwork, against the issues above and evaluate functional performance and overall cost effectiveness. Once the evaluation was complete, the team decided to deploy Klocwork throughout the organization.

The Benefits of Using Klocwork

With multiple development projects running in parallel, there was the risk that deploying a new static analysis tool could increase the burden on the team by having to address new issues identified by Klocwork. The team therefore focused on finding the optimal migration time, deciding that a four-month period would best allow each team to find a natural pause or development milestone before moving their project to Klocwork.

By addresseing the challenge in this way, ACCESS also had sufficient time to make decisions about countermeasures for backlog items reported by the previous tool and investigate the best choice of analysis settings to deploy with Klocwork.

Equally important was planning and executing a thorough introduction to Klocwork for all teams. Taking workflows from the analysis experts at Marubeni Information Systems (Rogue Wave Software distributor), ACCESS proposed and built a development flow and training for developers that maximized the utilization and effectiveness of the tool. This resulted in three Klocwork implementation options tailored to team size and process:

  1. Desktop Analysis Only: For small-scale code and smaller teams. Developers carry out and confirm analysis within their development environment only.
  2. Integration Build Analysis Only: The entire code base is analyzed once a week and developers can view results in their browsers.
  3. Integration Build Analysis Plus Connected Desktop Analysis: Developers perform desktop analysis before check-in to prevent errors on top of regular integration build analysis performed on the entire code base.

For integration build analysis, developers linked Klocwork with their source code management system and continuous integration tools to automate processes. Developers had no problems using the new analysis tool, and ACCESS was able to utilize Klocwork static analysis during daily development processes.

Mr. Manabu Fuyuki, manager of the development platform section in the research and development division at ACCESS explains the benefits:

“This migration not only decreased licensing costs, but improved convenience because we were able to secure enough licenses. The developers already had experience using static analysis tools, and Klocwork has an easy command system, so they were able to carry out the analysis themselves just by posting a typical usage case on the internal company portal. As a result, we were also able to reduce operating costs and management costs for the static analysis tools.”

Through Klocwork, ACCESS was able to solve issues with the cost and operation of the static analysis tools used to that point, and achieved a smooth migration to Klocwork without causing significant confusion in the development process.

The Future of ACCESS Looks Positive With Klocwork

After Klocwork had been running for a while, ACCESS verified its effectiveness from the perspectives of quality and cost. Mr. Yohei Fujiwara, chief assurance engineer in the smart device division at ACCESS, provided this example:

“In some projects, as ways to improve quality, we discovered resource leaks found at that point in the system testing stage, and checked for reduced memory usage. We examined our cost effectiveness with static code analysis with both the problems corrected by Klocwork and correcting those problems that were not previously fixed and found a 20 percent improvement in the cost of correcting bugs over the previous tool.”

Mr. Fujiwara said this about future implementations, “We have achieved our IoT solutions through cloud technology and embedded technology. We think static code analysis is required for the embedded field, where C and C++ are often used. We want to accumulate know-how for operating Klocwork, and implement it further.”

Ensure Your Development Remains Competitive

Klocwork helps companies like ACCESS to remain competitive in IoT development. See for yourself how Klocwork will help you remain competitive in your field.

START FREE TRIAL