Does anyone remember the day when software engineers were off in the corner working on their projects, isolated from other engineering groups?
It doesn’t seem that long ago that the silos of engineering software vs hardware (mechanical and electrical) were as separate and isolated as Red Sox and Yankees fans! Let’s face it, the time is now to invite software engineers to join the product development game.
We can no longer afford to wait and hope (hope is not a strategy!) that software engineers will deliver their part of the project on time to meet customer requirements. They need to be invited to design reviews right at the beginning. This early systems view improves the chances of getting it right and winning the game!
The survey and article recently posted by Jim Brown of Tech-Clarity sheds light on the importance of software in products these days. Not many engineers in automotive, aerospace & defense, high tech or medical devices would deny the increasing importance of software in their products.
For several reasons, some technical and some organizational, software engineers have traditionally been “off in the corner” working on their applications. On the technical side, companies simply did not have a platform upon which software and hardware engineers could collaborate in a meaningful way. They spoke different languages at dramatically different cycle times. As I pointed out in a recent Microsoft Prime magazine article: software is increasingly used to deliver product features and variations, however, the velocity of software change and compliance requirements threaten time to market and drive up costs.
Jim Brown does a nice job surveying the market to validate this hypothesis and gain a deeper understanding as to where companies are with respect to managing complexity brought on by software in their products. SAE also does a nice job exploring how software is changing the face of product delivery in the automotive and off-highway markets.
The organizational implications of inviting software engineers to the join the game shouldn’t be ignored. However, for the sake of brevity and focus, I will explore this topic in greater depth in a subsequent post.
Finally, I want to comment on two additional findings from Jim Brown’s survey. The first is the importance of leveraging systems models. Systems modeling provides a couple of advantages that will help us include software engineers in the conversation earlier.
The first is in requirements, inclusive of software and hardware. Starting the conversation at system-level requirements has huge downstream advantages. Thinking of systems instead of individual disciplines helps companies proactively design and manage interactions between mechanical, electrical, and software elements.
The second (ok this is a little self serving…) is the importance of a technology platform that actually invites software engineers into the game. Companies that Jim Brown spoke with indicated that when they didn’t have an integrated platform, it was very difficult to make decisions because you need a full view of what is going on.
When cross-discipline visibility and collaboration is enabled, companies can make much better decisions, and in the big picture, save time and money. At the end of the day, we need to break down the silos and openly invite software engineers (even if they are Yankees fans!) into the product development system (plus I heard that one of them has a mean curve ball!).