Analytics Incorporated Into IDE

Dec. 13, 2012
Atollic's Eclipse-based IDE, TrueStudio, now incorporates MISRA-C static analysis as a standard feature.

Atollic's TrueSTUDIO is based on Eclipse (see Delivering An All Up Eclipse) but Atollic has wrapped the open source integrated development environment (IDE) with additional features. One of the standard features in TrueSTUDIO is static analysis based on Atollic's TrueINSPECTOR technology.

TrueINSPECTOR provides MISRA-C support (see Why Are You Still Using C?). MISRA-C specifies a set of rules that application must match or it will be flagged as an error. Developers get more than just an error report with line numbers from Atollic. Lines in error can be examined and the system presents recommendations for changes that include good and bad examples of code (Fig. 1).

Figure 1. TrueSTUDIO's MISRA-C static analysis can identify potential errors and provide ways to fix the problems. It provides a good and bad example so developers can determine how their code needs to be changed.

MISRA-C checking quality varies among the competition and TrueSTUDIO is in the top when it comes to the range of errors it can detect. The system also provides code metrics to developers.

MISRA-C was originally defined for the automotive industry. It was developed to improve code quality and reliability in safety critical applications and it is applicable to non-automotive environments. Static analysis support can also be used address security issues (see Can Static Analysis Address Security Issues?).

The development process for almost any embedded C/C++ applications should incorporate static analysis to reduce the number of bugs. The process for static analysis also differs between C/C++ and other languages such as Java (see What's The Difference Between Static Analysis of C and C++ Versus Java Programs).

The IDE provides RTOS kernel awareness for platforms like ThreadX, FreeRTOS/OpenRTOS, and embOS. Micrium uC/OS-III kernel awareness is new to this release. Likewise, the source code management support has been extended to SVN and Git. Bug control environments like Bugzilla are supported by the IDE as well as code review tools.

TrueSTUDIO supports other advanced features like refactoring. Refactoring is commonly used by Java developers but it is often overlooked by C/C++ developers. It is often possible to simplify or improve an application by refactoring the code. It is very handy when working with large projects or ones that incorporate third party source code.

TrueSTUDIO works with other Atollic products including TrueVerifier and TrueAnalyzer. TrueVerifier provides automated in-target unit-testing. It can analyze function arguments and automatically generate the unit tests necessary to exercise a function. TrueAnalyzer compliments the new static analysis with dynamic code coverage It can handle MC/DC (Modified condition/decision coverage) code coverage.

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!