I participated in a long discussion the other day about the use of software licensing tools to govern hardware functionality. For example, a given piece of medical equipment could be delivered with all functions present on the machine, but the rights granted by the software license would determine which of those functions would be available to the customer. Need to upgrade? It's a simple matter to upgrade the license.
Why am I bringing this up? I've already written about how we need to reconsider what constitutes a software "product" - thinking of it as a collection of bits that can be configured into whatever set of functions make sense for the buyer - but I'm coming to appreciate that hardware systems can be reimagined in the same way.
To the extent that licensing and audit systems can govern and report on the operating state of a given piece of hardware, there's nothing to stop manufacturers from creating and delivering a single system that can be soft configured to run in any number of different configurations.
Why don't they do it? I have a feeling it has something to do with the different mindsets of software and hardware guys.
Now, I'm not a hardware guy. My dad, Gawd bless 'im, spent his entire career in that space, but for the life of me none of his hardware wisdom seems to have made it into my software-addled head. But even I can tell that we're different animals, we software and hardware people are. Whether it's a grasp of cost accounting, time-to-market differences, tolerance for defects, whatever, we're made of different stuff. The people who inhabit the software world are. . .different. . .from hardware types.
So when a software guy started dreaming up ways to change (read:improve) how the hardware guys can think about their manufacturing process, their field upgrade process, even the very definition of what a "product" is, well, I figured it'll help to walk a few miles in their shoes first so I can understand the sorts of issues they feel are truly worth changing (read:improving).
Are there any hardware guys (or gals, for the Cranky PM) who'd care to illuminate me on the mindset of the hardware PM? How do you see yourself as different from software types? What are your processes like? What's broken in how you think about "product"?