What interested me most at Innovate 2010 (there's a Livestram video channel for the conference here) was the emphasis on delivering software for automating "Systems of Systems". This is very much the realm of systems engineering but IBM now seems to think that the time is right for everyone in software development to think this way. Software development has to grow up—and the catalyst here may be the use of software to run the "smarter cities" of the future—Babcock Ranch in Florida was the example talked about in the conference keynotes. This is aiming to be the first solar-powered city, although it will integrate with the electricity grid so that a run of dark days can't switch the city off, highlighting that innovation usually has to integrate with legacy.
Obviously, you can't just reboot a city if the automation it relies on stops working and if it does stop working lots of people with votes will be affected. So. managing software delivery and pro-actively removing defects will probably start to seem like rather a good idea at least. We've been able to build virtually defect-free software for some time, in the safety critical silo; but this apparently hasn't been thought important in the general business silo.
Danny Sabbah (general manager of Rational Software, IBM Software Group) goes a stage further and envisages the rise of what he calls "software econometrics" built, it seems to me, around the ideas that you can't control what you can't measure and that you can reuse business analysis tools, such as Cognos, to deliver for software development organisations the sort of management info on risk and NPV (discounted value) that managers are used to for business systems. I'll be writing about this in more detail later; for now, you can get an overall flavour from Sabbah here.
At one end of the spectrum we seem to have model driven development (MDD) for collaborative architecture management, ensuring that automation projects deliver the anticipated business (fiscal) and social outcomes. At the other end, we have simply building software cost effectively...