Archive for the ‘Quality Assurance’ Category

Security in High Reliability Applications: Is it safe?

Tuesday, August 26th, 2008

Security in High Reliability Applications: Is it safe?Increasingly in this modern world, we rely on systems where an error could cause financial disaster, organisational chaos, or in the worst case death. Software now plays a crucial role in these systems, but the disturbing fact is that the increasing use of embedded computers, controlling all sorts of devices, is moving us in the opposite direction.
Organisations like ‘Which?’ in the UK devote their energies to examining such devices. They test them thoroughly, but importantly they also examine and dismantle the devices to detect engineering defects, such as unsafe wiring. If they find a device unsafe it is rated as unacceptable and the public is protected against the dangerous device. But as soon as embedded computer systems are involved we have no such transparency. Cars, for example, are now full of computers and without access to the software details, there is no way to tell if these cars are ‘Unsafe at Any Speed’.

If you want to read Robert Dewar’s whole article at ESE Magazine, click here.

Build checklist for embedded software projects

Tuesday, July 22nd, 2008

lista.jpgCode review checklists are usually a pain. They’re often ridiculous in length or content. They’re not fun to use. Checklists can be an excellent way of finding defects early in the development process, but most of the time, checklists are so impractical that they’re more of a hindrance than a help.
The problem is that people use the list as a general guide. They don’t consider every item in every file. Which items will they remember as they look at the code? Will it be the most important ones?

If you want to continue reading Jason Cohen’s article at Embedded.com, click here

Can we design embedded systems faster, cheaper, better?

Tuesday, June 24th, 2008

23_jun_08.jpgPeople have been writing software for over 50 years, and building embedded systems for 30 years. The one constant over all of that time is that features increase while schedules shrink.
We’re trying to manage three conflicting things: an impossible schedule, an excess of desired features, and quality. Remove just one leg of the three, and the project becomes trivial. Can we ship with lots and lots of bugs? If so, getting it out on time is pretty easy. Can we neglect the ship date? With infinite time, we can get every feature working right.
If you want to continue reading Jack Ganssle’s whole article at Embedded.com, click here