Pressure is mounting on the development process for embedded software -- pressure to produce and move the stuff quickly, pressure to ensure quality amid hundreds of permutations on dozens of targets, and pressure to simplify and standardize on tools, testing, and builds -- all to bring the notion of rapid-agile to an hitherto-fore stodgy alcove of software production.
Or so I'm reminded this week after a couple of unrelated briefings that hammered home the need for major change in embedded development, one from Wind River Systems, which has rolled out its device software testing solution, Lab Diagnostics, and also Electric Cloud, which is automating and leveraging parallelism in the speeding and consolidation of builds infrastructure (often for embedded projects).
First Wind River. The Alameda, Calif., company has been rolling out its sensor point technology in Workbench Diagnostics for a few quarters, building up to this week's crescendo, Lab Diagnostics -- the ability to gain feedback from device software functions in use (early and often), to provide diagnostics during development, during testing; to bring quality assurance into the process, not after it. The cost, as anyone knows, of resolving defects early is far less than otherwise.
So Wind River is allowing device software architects a clear, repeatable path to capturing more bugs in a virtual harness based on real-world activity (not only a model), and at a time when lack of error resolution can increasingly break the bank or make heads roll. The market needs this.
Off in another corner of the same improved development boxing match is Electric Cloud. The solutions proffered here are available to any kind of major software build, for enterprise or device software. For enterprise projects, the time required to fire-up the server farm for builds has been modest, given the cycles of development involved. But that is changing, to where the nature of development becomes more iterative and multiple builds on a frequent basis becomes the norm.
But no where is the frequency and complexity of builds more an issue as it is becoming on embedded development projects, due to those hundreds of permutations on dozens of targets (among other reasons). To bring a simultaneous production relief to such builds, via parallelism, centralized server clusters, and better management vastly cuts time to market, and costs. Distributed global development trends (aka offshoring) also makes a coordinated approach to builds essential. Compliance issues requiring an audit trail of builds is forcing a coordinated approach too.
Electric Cloud calls this all software production management, which is not too distant from Wind River's device software optimization mantle. The 50,000-foot perspective is that some powerful new process and technology enhancements are building in the pipeline for embedded development improvement. IBM, Borland, and Microsoft are making headway here, too, largely due to process management and via acquisitions.
But the market's real gorilla -- home-grown code management, testing platforms, and lifecyle management approaches -- are facing some real competition in terms of productivity, management, and quality assurance. Vendors like Wind River and Electric Cloud are making development operations an agility offer they probably can't refuse.
Disclosure: Wind River and Borland have been sponsors of BriefingsDirect podcasts.