a techfocus media publication :: November 1, 2005 :: volume I, no. 05

FROM THE EDITOR

This week, we turn our truth-seeking goggles toward the often arcane management methods foisted upon hapless embedded software development teams by well-meaning but ill-informed project managers from non-software disciplines. It may seem on the surface that traditional, proven project management tools and techniques would be well suited for software planning and tracking. However, software development, by its very nature, requires a completely different set of disciplines in order to achieve accurate estimates and scheduling success. Part one of our series examines the difficulties encountered when applying mainstream planning techniques to software projects.

If you haven’t checked out our new Journal Jobs employment site (www.journaljobs.com) it’s worth a visit. New jobs are being posted regularly, and traffic is skyrocketing since we upgraded the site.  Registration is free, and it’s a great place to start looking for that next promotion.

Thanks for reading! If there's anything we can do to make our publications more useful to you, please let us know at: comments@embeddedtechjournal.com

Kevin Morris – Editor
Embedded Technology Journal


ANNOUNCEMENTS

Get More System Integration Benefits With Altera PLDs
Get more design benefits by integrating standard digital ICs and digital functions into programmable logic devices. Tell us how you've used Altera products to achieve higher integration, and you could win a 50" DLP HD TV, built with Altera devices.
Click here!


Nios II - The World's Most Versatile Processor
Altera's Nios II processors feature a general-purpose RISC architecture designed to address a wide range of embedded applications. Nios II processors are soft processors, letting you easily adjust the features, performance, and cost of your embedded system. You can deploy your product to market quickly, extend its effective life cycle, and avoid costly processor obsolescence. Learn more about the world's most versatile processor now!
Learn more about the world's most versatile processor now!


FIND A BETTER JOB. Browse new JOURNAL JOBS section from Embedded Technology Journal to find challenging and rewarding opportunities with the embedded technology industry’s top companies. Journal Jobs is specifically for embedded technology professionals – more of what you’re looking for, less of what you’re not.
Browse now!


FPGA AND STRUCTURED ASIC JOURNAL
A weekly e-mail newsletter from techfocus media (publishers of Embedded Technology Journal) dedicated to the design and application of FPGA and structured ASIC technology.
SUBSCRIBE NOW - FREE!


Visit Techfocus Media

CURRENT FEATURE ARTICLES

Tyranny of the Metaphor
The Slippery Slope of Scheduling Software
ARMed and Dangerous
Actel/ARM Tackle Embedded Applications
Baby, You Can Drive My Car
Embedded Systems Fuel Automotive Innovations
The People's RTOS
Wind River Boosts Embedded Linux
Connecting the Dots
Mentor Moves on Automotive Networking
Intelligent Integration
Considering the Costs of Convergence
Architecture and Implementation of the Cortex-A8 Microprocessor
by Travis Lanier, ARM, Inc.


Tyranny of the Metaphor
The Slippery Slope of Scheduling Software

Software is not a house.

It seems almost everything in the software world is a metaphor. I sit here typing in a “page” of a “document” that will become a “file” in a “folder”. In software, we create and use metaphors every day, almost without thinking about it. Metaphor creation is a natural consequence of working in a virtual world. Humans often need to map complex concepts to something tangible in order to gain understanding. Unfortunately, this metaphor mania extends to management expectations on the software development process. Management often wants, expects, or worse yet – tries to create project schedules for software development using the same techniques we might expect a contractor to use on a home construction project.

It seems reasonable enough on the surface. There is a pile of work to be done, and one of the project manager’s duties is to analyze that pile into something more manageable – usually a schedule with a resource plan and budget. The well-meaning project manager looks to the wisdom of conventional project planning for guidance in calming the chaos. After all, project management is not a new science. For decades, (if not millennia), techniques for taming the complexity of large collaborative projects such as construction have been well understood. If we just pretend our embedded software project is a house, we can organize, estimate, and schedule the tasks involved in the same way our contractor would, and we’ll be off and on our way to on-time, on-budget project completion and that big promotion and bonus.

Did I mention that software is not a house?

If we were a contractor building a house, we’d have a specification (a set of blueprints) before we began. This specification would be the definitive description of our completed project. Of course, we could expect changes and variations along the way, but the specification would give us a clear enough idea of what we were building that we could create a reasonably accurate development plan.

However, software IS a specification. Our software is a human readable (OK, that’s debatable) representation of the exact functionality we want. Our compiler will translate it into a working executable – our “house”. In the pathological case, if the specification is complete to that level, development time is highly predictable. It corresponds to the runtime of our compiler. That would make our project 99.9% planning and 0.1% execution.

Yes, I hear that collective sigh. Of course it is possible to create high-level specifications for a software project. You simply have to choose your level of abstraction and dive in. At the top level, our metaphoric equivalent specification might be: “Build us a single-family house.” The embedded software version would sound like: “Build us the applications software for a primary flight display for general-aviation aircraft.”

Clearly, both top-level descriptions are too unspecific for any meaningful project planning. We need more detail. In the case of the house, the details go down just a few levels. There is general agreement on the approximate level of specification required before implementation can proceed. You typically won’t find a blueprint with individual nails, screws, and other hardware described, but one level of abstraction above that is common. The specification stops (and implementation can start) at a level of abstraction where there are conventions established. In the case of construction, those conventions are provided by things like building codes that specify the defaults for implementation details. It is not necessary to specify beyond that level of detail. [more]

LATEST NEWS

November 1, 2005

Sarnoff Offers H.264 Video on MIPS(R) Architecture

Atmel Launches DVD-SoC Industry's Most Integrated and Powerful DVD-Single Chip

Nadatel Ships Planetweb(R) SpectraWorks(TM) on DVR Products; Nadatel Cites SpectraWorks Rapid Application Customization and Reduced Time to Market as Key Benefits

Avnet Electronics Marketing Launches New SpeedWay Workshop Series Featuring Virtex-4-Based Embedded Processing and DSP Solutions from Xilinx

EnOcean's New Energy Harvesting Magnet Sensor Enables Batteryless, Wireless Door/Window Contacts

KVH Introduces Embedded TracVision Automotive Satellite TV System for OEM Applications

Tower Semiconductor Begins Production of Biomorphic's 2.0 and 1.3-Megapixel CMOS Image Sensors for Cell Phones; Tower Technologies Result in Superior Sensor Capabilities for Camera-Enabled Devices

October 31, 2005

Freescale Unveils World's First 3G Single Core Modem for Mobile Phones

Microchip Technology Ships 1 Billionth Lead (Pb)-Free Device; With Shipment of 1 Billionth Pb-Free Device, Microchip Demonstrates Efficient RoHS Conversion and Commitment to Environmental Responsibility

Citrix Delivers Smart Agent Technology to Integrate Business Applications and IP Telephones; Innovative New Software Agent Simplifies Outbound Calling for Knowledge Workers

Nextreaming Powers Pantech's First Satellite DMB Phone; Pantech's PT-S130 Incorporates Nextreaming's Satellite DMB Player

QuickLogic Lowest-Power FPGAs Supported by Precision Synthesis From Mentor Graphics

Second Generation Power Manager II Devices Deliver Programmable Power Management Solutions for Emerging Applications

Sprint and Samsung Launch the Sprint Power Vision MM-A940 Bringing the Sprint Music Store(SM) With Full-Track Music Download Purchasing and Live Broadcast Television from Sprint TV to Life

Broadcom and ARM Collaborate to Improve Signal Processing in Embedded Devices

October 27, 2005

Jetstream Media Technologies Announces JetMovie(TM); Product Enables Theme-Based Digital Effects for Consumer Electronic Devices

Tensilica's Xtensa 6 Processor Wins ''Product of the Year'' Award at 2005 GSPx Conference; Xtensa 6 Offers Real Benefits to the Signal Processing Market

Motorola and Intel Team to Promote Adoption of Mobile WiMAX Technology

October 26, 2005

Freescale Packs Power Into Next Generation Portable Devices; MPC18730 Power Management IC Minimizes Power Consumption for Battery Powered Consumer Products

Freescale Expands QUICCstart Evaluation System Support for Flagship PowerQUICC Communications Processors

Altera and Wi-LAN Form Partnership to Offer First Programmable WiMAX BTS Modem Solution


You're receiving this newsletter because you subscribed at our web site www.embeddedtechjournal.com.
If someone forwarded this newsletter to you and you'd like to receive your own free subscription, go to: www.embeddedtechjournal.com/update.
If at any time, you would like to unsubscribe, click here. (But we hope you don't.)
If you have any questions or comments, send them to comments@embeddedtechjournal.com.

All material copyright © 2003-2005 techfocus media, inc. All rights reserved.
Privacy Statement