News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 
Download Current Issue
ISSUE 7/1/2009 PDF

Need Back Issues?
DOWNLOAD HERE

Receive the print Edition?


 
A knockout blow for Borland?
MicroFocus has upped its offer for Borland Software to $1.50, hoping to chase off a mystery suitor also pursuing the ALM vendor.
07/06/2009 12:26 PM EST

Is the mystery Borland suitor Serena?
Borland software is considering an offer from another company after a preliminary deal with MicroFocus. Is Serena the new company?
06/30/2009 01:55 PM EST

Windows 7 - An eBayer's dream product?
Windows 7 pre-orders can make people money on eBay.
06/29/2009 03:48 PM EST

 

Microsoft Worldwide Partner Conf.
7/13/2009 to 7/16/2009
New Orleans
Microsoft

OSCON (Open Source Convention)
7/20/2009 to 7/24/2009
San Jose
O'Reilly Media

XBRL Technology Workshop & Summit
7/28/2009 to 7/30/2009
Santa Clara
XBRL US

ACM SIGGRAPH
8/3/2009 to 8/7/2009
New Orleans
ACM SIGGRAPH

OpenSource World (formerly LinuxWorld)
8/12/2009 to 8/13/2009
San Francisco
IDG World Expo


 
Most Read Latest News Blog Resources

Guest View: Eight Harsh Truths About Embedded Software Risks




July 1, 2005 — 
All useful real-world software is buggy, poorly specified, insecure and supported by organizations with uncertain prospects for longevity. Purchasers of software, particularly technically savvy purchasers, do have many avenues of reducing risk, but effective mitigation strategies require a commitment to seeing through marketing fluff, evading FUD, and facing up to actual harsh limitations and costs.

The following eight statements serve to illustrate the challenges faced by companies trying to deliver next-generation intelligent devices:

1. No bug-free software. Nobody knows how to develop large-scale programs that are free of bugs. Anyone who tells you otherwise is either fabricating or in possession of an astounding scientific advance. One common method for producing software that can be claimed to be provably correct is to reduce functionality to a unusable minimum. This trick just moves the problem to a later phase of development.

2. No guarantees of quality. None of the various methods proposed for and promoted as making software more reliable or secure, or for proving that software is reliable or secure, have been scientifically validated.

There is disagreement even on how to test whether such methods work. Comprehensive testing, and source code and configuration management are good things, but they are neither perfect nor assured by any credentials right now. It is just as easy to find alarmingly bad software with a given safety or security stamp as it is to find quite good software without any imprimatur.

3. The software business is dynamic. The software industry is, in a word, dynamic. Big companies enthusiastically (periodically) embrace massive reorganizations and changes in direction without warning. This dynamism startles technology consumers who assume, against all evidence, that “big” implies “stable.” Software purchasers should try to make sure that the vendor has a profitable business selling the solution. Lack of profits always leads to changes in pricing and terms or abandonment of the product line.

4. Standard solutions often aren’t. Marketing departments cannot create engineering solutions. Widespread belief that some software is a “standard solution” does not mean it works well or is a suitable solution for a given problem. The marketplace is littered with the remains of companies that have wasted huge sums of money with those so-called standard solutions. Management in technology companies must start demanding that highly paid technically expert staff actually evaluate software for suitability instead of looking for ways to share blame.

5. Reuse beats reinvention. The most effective enabler of software productivity is software reuse. Linux and BSD Unix offer reusability at multiple levels: Applications, networking, graphical user interfaces and the rest of the stack just work—with each other and with customer code. This interoperability gave a comparable advantage to Windows on the desktop for many years, and it is amplified by the more modular, Unix architecture. The only alternatives to reuse are new and better development, or reinvention. New-and-better is rare and is nearly impossible when it comes to utilities that are not the core part of your product. Reinvention is usually a waste of time and money, except perhaps for students bent on learning how software works.

6. Software content and value outstrip hardware. Hardware is no longer the most complex and valuable part of most embedded devices. The traditional method of “first, design hardware; second, select the operating system; third, wrestle with boot loader; and finally, get around to trying to make your software application work” makes no sense at all when 50 percent or more of product value—and complexity—lies in the software.

7. Software development ain’t easy. Developing software is hard. Nobody would hire a smart kid with no training to design an engine or entrust a materials engineer with drafting a design for a skyscraper. The daunting complexity of a 500,000-line cell phone application framework, or a 50,000-line device controller, or a 200-line critical data acquisition system should be tackled with the same seriousness and attention to expertise.

8. Add value or get out of the way. Embedded development projects of all kinds exhibit a tendency to invest vast amounts of time, money and effort into building components of products and services that provide no discernible differentiation. As commodities, these deliverables lie beneath the value line for device OEMs—they could be acquired for a fraction of the cost of developing them in-house.

No matter how much usable common off-the-shelf software becomes available, embedded engineering teams still engage in low value-added development. With the increased availability of open-source software for embedded, this vice has shifted instead to involve low value-added integration, QA and support. The cost of indulging this tinkering spirit grows year over year. Management at device OEMs must finally convince their technical resources that adding value is the best way not to add to the unemployment rolls.

Bill Weinberg is open-source architecture evangelist at OSDL. Victor Yodaiken is CEO of FSMLabs, which sells real-time embedded Linux platforms and tools.


Share this link: http://www.sdtimes.com/link/28703
 

Add comment


Name*
Email*  
Country     


  • Comment
  • Preview
Loading