I was strolling down the aisles of a local home improvement store looking for a refrigerator. The price stickers on each appliance had a big yellow card next to them. It indicated the yearly energy consumption on a low-medium-high scale and rated each piece on a 0-10 measure, 10 being the epitome of energyhungry-ness . I noticed the same on washer/dryers, cooking range and even water heaters.
The intent of the yellow sticker is to provide the buyers information about cost of ownership. Caveat Emptor - you not only pay for the appliance, you also pay a recurring cost to operate the equipment. What a novel idea!
Being an engineer at heart, I paused and chewed this idea for a while. Software systems today are no less commoditized than these appliances on the shop floor. Parallels can be drawn between the two, and factors that affect the cost of ownership identified.
Requirements and design - Both are built to a design, and a set of requirements. - A missing requirement adds up to the cost of ownership by way of incurring cost of enhancements. Similarly a bad design, or an inefficient design results in increased cost of ownership.
Use of non-standard technologies - Open and well accepted standards attract more buyers; products built on proprietary and "home grown" standards makes it harder to enhance it, fix it or to use it in conjunction with other similar products.
Build or Buy - Both can be either built from scratch versus assembled from pre-made components. Quality of a critical component, whether built or bought, has direct bearing on the cost of ownership.
In fact, even the loss of productivity adds up to the cost of ownership - for example, if your hard drive crashed, and you had to ship it off to the manufacturer, your cost of ownership just shot up by the order of magnitude of loss of productivity. How about fixing that Windows XP box so that you can use it ? And what about a poorly written installation guide for your spanking new wireless router that took away your entire Sunday afternoon?
As developers, designers and architects, the decisions we make every day has a direct effect on the cost of ownership of whatever is that we are building. The choices we make, the compromises we settle for and even the processes we adopt for coding, reviewing and testing - everything affects the cost of ownership - increasing or decreasing the dollar value. Mostly because of the nature of software development, no predictable models exists that can accurately forecast the variations in cost of ownership based on dominant variables in every day Software Engineering - methods, tools, processes, technologies etc. Only our due diligence not just to the end product, but also to the means of building it can guarantee a minimal cost of ownership.
Thanks for reading!
No comments:
Post a Comment