IT Assessment for Project Success
Vision, honesty, and transparency: three key traits of an organization that can guarantee project success. This was summed up in last week's interview with Tom Cox, the host of Blog Talk Radio's Tom on Leadership program. His audience, primarily from the C-Suite, is keen to understand how troubled projects are a reflection of their organization's overall health. Projects are, after all, the proverbial canaries in our organization's coalmine. Projects stop performing because there is trouble in the organization.
"Technology... is a queer thing. It brings you great gifts with one hand, and it stabs you in the back with the other." This quote, delivered by C. P. Snow, is one we should all live by. Mr. Snow was a physicist, a novelist and a bit of philosopher. Technology brings about great benefits that many of our projects rely upon. We are using it right now. However, take pause to reflect on how technology is also our nemesis. It haunts our projects with its false promises and lures us into implementing superfluous functionality.
Your Information Technology (IT) Organization needs to provide key capabilities, support and services for your business and your customers. However, many organizations feel gaps in IT capabilities hamper their progress: projects are delivered late, system outages occur, IT costs keep rising, IT is unresponsive, or IT turnover is excessive. How do you know if your organization is getting value from IT? Often it takes an experienced outsider to compare what your company's IT needs are versus its capabilities and develop plans address the gaps.
The Business IT Assessment gives you visibility into your IT group’s strengths, gaps, risks, and business alignment, complete with recommendations to gain the value you expect from your IT spend.
The lament echoes time and again, "The CIO should have a seat at the table." The claim continues that business cannot survive without the simplest of technologies. Then they provide evidence as if it would be the final nail in the coffin, "Just the other day, when email was down..." Raising my eyebrows in question, I ask, "So your email was down? For how long?" The question is like a scene from a horror film where the sudden realization is that the casket being completed is... your own. Gaining strategic respect is a long way away for those having trouble maintaining their tactical obligations. If your organization is having difficulty providing basic services, you will never have the privilege of being a partner with the business.
Again, I was chided for saying there are no Information Technology projects. This time, the excuse was that the company built software. I countered my antagonist by asking if the same group that built their software also maintained the account system, workstations, email, and network. "No, that is a separate group." He was missing that his company's production group was not IT. Information Technology is the support group... and yes, they should not be doing anything that fails to directly affect getting product out the door or reducing costs. Every project's goal must be to deliver to the operational needs of the company—selling product—not to the whims and desires of the IT group. If a project fails to address the needs of the customer (directly or indirectly), then it should never see a penny of funding. This seems such an elementary concept, but it is routinely violated by techno-bigots trying to implement the latest toy or tool.
I sent a note to professional organization's program director the other day asking if their group would be interested in hearing about methods to increase project success. The organization was for a technical group that worked with data transformation—a skill set used in every IT project I have ever been on. The reply came in a prompt, succinct, and sarcastic reply:
"We [sic] you please tell me just how this would ever relate to the members of our group. You obviously do not understand that we are not responsible for running the project."
A couple months ago I asked the question, "Who should the CIO report to?" on the LinkedIn's CIO Magazine Forum. Surprisingly, over 100 people responded, so many that the group's moderator moved the discussion to the jobs section. Maybe they were tired of the attention this old, beat-up subject was getting. I surely did not think responses would be quite as passionate as they were. However, my interest lay in another area, not in the answers to the direct question, rather the reasoning behind them.
Information Technology organizations continually struggle to build systems that meet their customer's needs. They work tirelessly developing solutions that are delivered late, difficult to use, or deficient in key features and functions. This is nothing specific to the last couple decades; it stretches back to the first systems developed. Fredrick Brookes eloquently underscores this in his recount of the 1960's software engineering project to develop the IBM 360 in his book The Mythical Man-Month (1975) and is required reading for all IT executives. For the Chief Information Officer to solve this problem takes a new approach, one, nearly opposite from today's direction.
CIOs have two major responsibilities—keeping IT's lights on (backups, networks, email, etc.) and providing support for business initiatives. Being mediocre at either will make for a short career. Although the respective budgets are normally a 70:30 split, a CIO will be fired in a minute for failing to properly support the 30%. That portion of their budget actually generates the company money. Keeping the lights on is a thankless job. People simply expect networks run, data served, and viruses inoculated. It is expected much as we expect water when turning on the tap. Supporting business initiatives is just as thankless since 60% of projects seem to always be in trouble.
Yes, I am on that soapbox. Ensuring that maintainability and adaptability are part of a system is a "best practice," extensibility is not. To the extent that a highly structured system is extensible, that is the end of any commitment to building for the future.
Adding hooks and stubs for something that may not happen, confuses and clutters the design of the resulting system. Building and running prototypes wastes time. Making a system extensible adds significant undefined scope. The reason is that no one knows what the future will bring. Furthermore, how can it be tested if the systems it is interfacing with are not defined?