Tech Focus: Programming, debugging & optimization at ESC DESIGN East
HIGHLIGHTS
Sequence points
Verifying embedded software functionality: fault localization, metrics and directed testing
Editor's Note
Jack Gannsle in his newest column on “Sequence points , ” takes on one of the dark corners of the C99 programming standard that constantly trips developers up. Not only is it a good read delving into the gotchas of this particular feature of the standard, he says that software companies are including questions about it on tests for prospective employees. Another must read is a series by Abhik Roychoudhury on “Verifying embedded software functionality , ” on how to use a variety of techniques such as dynamic slicing, metrics based fault localization, directed testing and formal verification.
If you appreciate this kind of in-depth discussion of important and useful software programming, debugging and optimization techniques be sure to register to attend the 2012 ESC DESIGN East September 17- 19 in Boston, Ma.. To give you some idea of the kind of hands-on instruction you can expect, here are my Editor's Top Picks of classes and topics:
The most misunderstood features of C (ESC-1008) by Embedded.com's Dan Saks Test-driven development in C (ESC-1004) , by James Grenning of Renaissance Software Software of software requirements engineering (ESC-2014) , by Freescale's Robert Oshana New features in C++ 11 (ESC-1012 ) by Dan Saks Efficient coding for ARM platforms (ESC-3021) by ARM's Christopher Shore, Advanced compiler optimizations (ESC -4022) by Green Hills Software's Greg Davis
And if you want to ask Jack Ganssle more about those pesky sequence points and other arcane aspects of the C99 standard he will be conducing three classes (ESC-1015 , ESC-2000 and ESC-4018 )
Design How-Tos
Verifying embedded software functionality: Why it's necessary
In this four part series Abhik Roychoudhury, author of Embedded Systems and software validation,, explains why it is important for embedded developers to learn about new techniques for assessing software functionality. Part 1: what must be done and how to achieve it
Verifying embedded software functionality: The power of dynamic slicing
In the second in a four part series, Abhik Roychoudhury, author of Embedded Systems and Software Validation details the ways in which dynamic slicing can be used for assessing software functionality.
Verifying embedded software functionality: fault localization, metrics and directed testing
In the third in a four part series Abhik Roychoudhury, author of “Embedded Systems and software validation” discusses the pros and cons of metric base fault localization and directed testing for assessing software functionality.
Tracing requirements through to object-code verification
Verifying object code can mean the difference between success and failure, quality and crap. But skipping the step because a standard doesn't require it or because it theoretically eats into profits is a surprisingly common practice. The author postulates that this practice is not only shortsighted but no longer valid.
HW/SW co-verification basics: Part 1 – Determining what & how to verify
In this four part series, Jason Andrews details the importance of co-verification of both hardware and software in embedded system design and provides details on the various ways to achieve this. Part 1: Determining what and how to verify.
The basics of embedded software testing: Part 1
This two part article covers the basics of testing and test case development and points out details unique to embedded systems work along the way. Part1: Basics of embedded software testing.
How to use a debugger as a bug preventive tool
Nathan Fields describes using a debugger as a preventive tool before you know you have a bug to track down and reviews some of the basic requirements a debugger must have to apply this technique.
Li Mei's list of debugging secrets
Here's a list of debugging tips and secrets from Li Mei, a character in Lisa Simone's nonfiction book on programming recounting the fictional adventures of a team of software developers working on various embedded design projects and the lessons they learned.
Automated tools streamline software test and certification
In this Product How-To Jared Fry and Shan Bhattacharya of LDRA describe how the company's tool suite can be used to analyze code to trace requirements, identify and fix standards violations, monitor code coverage, and rapidly and effectively bring reliable products to market.
2012 Embedded Market Survey webinar
UBM Electronics' 17th annual survey of embedded systems designers worldwide shows trends in software and hardware usage. The 2012 Embedded Market Survey also looks at languages, productivity, and the challenges design teams rank as most important. A webinar on Friday April 20 will examine the results from over 1,700 respondents from across the embedded industry, the dataset enables a deep analysis to track key changes in this important electronics industry segment. There will also be the opportunity to ask questions online. To register click here .
Products
Cypress tips upgraded IDE for PSoC
Cypress Semiconductor rolled out a new version of the PSoC 3 and PSoC 5 programmable system-on-chip development environment with more than 100 new features and enhancements.
Agilent's DSO software ensures DDR4 compliance
Compatible with Agilent Infiniium digital storage oscilloscopes, the N6462A compliance test application lets memory design engineers test, debug, and characterize their DDR4 designs.
Code testing process more accessible for developers
Isolator 2010 a unit testing tool that helps abstract dependencies from the tested code is available from Typemock (Tel-Aviv, Israel).
LDRA tool suite integrates MISRA AC for verification of auto-generated code
LDRA's MISRA AC provides independent verification of the auto-generated code, a critical factor in stringent certification requirements.
News & Analysis
Software IS pretty darn good
A recent article bemoans the sad state of software. It's just more FUD.
Some neat software compliance & testing tools
Automate everything. Especially brain-dead stuff – like standards checks.
Sharpen your pencils for 2013 software exam
The National Council of Examiners for Engineering and Surveying will offer its first Principles and Practice of Engineering exam in software engineering in April.
Code base growth drives static analysis market
Embedded software engineers using a static analysis tool are working on projects with significantly larger average numbers of in-house developed lines of software code than developers not using a static analysis tools according to research by VDC Research.
|