Technology Decision Making with POETS

No, I’m not talking about using the wit of Walt Whitman or the eccentricities of Emily Dickinson for choosing technology. Nor am I talking about some new program that automates decision making for you. I’m talking about what I see as being the five main dimensions of technology decision making.

I am asked repeatedly by my customers why they should choose a particular technology over another. Quite often the choice is between two relatively “equal” technologies, where there isn’t a cut and dried answer for which is best. For example, I’ve been asked how to decide between Solaris and Linux, two very good operating systems, which can generally solve the same problems. Or, more recently, as I’ve worked on the Solaris virtualization strategy for our company, between Zones/Containers and LDOMs.

As I’ve talked through the decision making process with others, I’ve been able to classify the reasons in five main dimensions. The point of this blog is mostly to put this down in a coherent form and allow me to expand on each topic without having to always make it up as I go.

*P* olitical
*O* perational
*E* conomic
*T* echnical
*S* ecurity (Risk or Compliance)

_Political_: Unfortunately, for those of us technical purists, this is quite often the most important dimension of decision making and technology selection. You must understand the political environment for a successful technology outcome. Who are the decision makers and what are their backgrounds, issues, and biases. What are the emotional attachments (or roadblocks) that will be in effect? There are times when no matter what else, you will have to make a particular decision simply because TPTB (The Powers That Be) decree it that way. There may be some level of FUD that you cannot overcome, no matter what.

p()). One group that I work with will never choose Solaris on Intel over Linux, because one of the main influencers is emotionally invested in Linux. He was an early adopter of Linux, he’s done Linux development, he writes about Linux. There is no way to change his mind, and therefore that group will always use Linux.

_Operational_: There are often operational factors that may have a major influence on the technology selection made. You must understand the operational aspects of the environment. What are the service level agreements, maintenance windows, change management policies that you will need to follow. What other environments will be dependent upon your environment and what are their SLAs, maintenance, and change policies? What are the skill sets and levels of the staff that will be involved?

_Economic_: There may be economic factors that influence the choice. Jeffrey Fox, in his Rainmaker series of books and audio, deals extensively with price versus cost. You will need to be able to detail the total cost of ownership or operation as opposed to the price. And, you will have to make sure you take into account all costs — capital costs, maintenance costs, and ancillary costs such as training. In the last few years, facilities costs (particularly heating, cooling, and even space) have become a major factor in decision making. If you work in a large company make sure to take into account “blue dollars” — internal costs such as charge backs (although they may be less important that “real green” — dollars out the door)

p()). Although, as an corporation, my company is trying to push for X86/commodity servers (and operating systems) to reduce our technology spend, one of our groups has done studies that show the cost of porting, retraining, and setting up a new infrastructure tool chain in order to use X86 and Linux is vastly more expensive than the few thousand dollars difference in cost between an HP DLD585 and a Sun T2000. In another example, we have chosen to offer Containers with no additional internal charge backs, while LDOMs have an extra Operating System charge back, and at least one group is standardizing on Containers because of the reduced charge backs.

_Technical_: The dimension that most of us techies focus on is the technical realm. We understand this one pretty easily. Product A simply will not support technology Tool X or Tool Y is clearly better on Product B. If you are using Solaris 10 (SPARC) virtualization, and are not using the sun4v (T1) architecture, you cannot use LDOMs. If you’ve chosen to use Opteron systems, you cannot use AIX. Veritas Volume Manager supports file system resize (grow and shrink), Solaris Volume Manager and UFS only support grow; if you think you’re going to need to shrink, Veritas is clearly the technical choice.

_Security_: Like _Political_, the first dimension, this last dimension is often an override. You will need to understand the security, risk profile, and regulatory requirements of an environment. If there is a clear separation of duty regulation (such as in certain financial and government organizations), even allowing the system administrator the ability to have unrestricted root access may be impossible. If your systems house personal information there may be very specific regulatory requirements (HIPAA, Gramm-Leach-Bliley) that may force you to choose one particular technology over another.