Sunday, December 2, 2018

Time for Business to Regain Control Over Their Computer Systems

The world of modern computer systems changes on a daily basis with new technology constantly emerging and changing with some wonderful new technology.  Sadly, too many senior business executives have become overwhelmed with the technology and have stepped away from computer systems and relinquished responsibility to some wonderfully technically skilled people.

The modern IT executive or CIO has advanced degrees in technology and surrounds themselves with other equally skilled and highly educated technologists.  While these are truly talented and brilliant people, they have little or no background in business and have caused computer systems to drift away from the current strategic needs of the modern enterprise.

Just recently some major industry giants, Sears Roebuck and Company, Toys-Are-Us, are just two that have succumbed to a failure to embrace technology and have closed their doors.  Many other major enterprises are faced with a need to embrace new and emerging markets or join these once great leaders.

To understand how the modern enterprise must move forward, lets take a look at the current state of IT today.

Large enterprise IT is most often divided into two distinct camps:  1) Legacy, and 2) Modern technologies.

1) Legacy -- these systems are often based on IBM mainframe computers with 60 plus year old systems running in legacy languages such as COBOL, FORTRAN, and even RPG (an old language running on the AS/400 line of IBM mid-range computers).  These systems use old database systems such as IBM's DB2 or Oracle and others.  These systems are old, complex, and have been modified countless times over the years.  With IBM's advent of WebSphere and Java, interfaces to the mainframe have been built with now 20 year old systems built on Linux or Unix platforms and integrally linked to the old mainframe based system which remain the core processing systems for the enterprise.  Note that enterprises are spending millions of dollars per year in supporting these old legacy systems in terms of hardware, software licenses, maintenance costs as well as salaries of people who provide no value to the enterprise other than technically supporting the hardware and purchased (or leased) software.

2) Modern technologies -- including Java based, Microsoft .NET, C#, etc. have been developed to front end old legacy systems and support current requirements.  The real issue here is that the new technology based systems are tied to the old legacy systems and are limited in terms of their capabilities and results.

In addition to a mix of legacy and modern technology, new methodologies have been implemented to manage systems development.  The most common today is Agile.  The concept being that Agile delivers systems more rapidly than traditional waterfall or other methodologies.

Agile however does not embrace enterprise wide system development, but rather focuses on individual project requests from the business.  These requests are based on a limited high level requirements document written by someone in the business who has no IT background or formal training in analysis.  These are passed to the IT organization who interprets the requirements and breaks the requirement into Agile "stories".  The IT development team then places the stories in their "backlog" and selects what they want to work on with limited input from the business.  All too often pieces of the requirement get implemented but other parts of the requirement are deferred in light of other more "important" requirements and stories.

The bottom line is that the modern enterprises spends 30% to 40% more than they should be spending on IT today and get very little in terms of strategic advantage for their money.

Regaining Control

It is time for enterprise management to regain control over their computer systems.  The following is an outline of the steps necessary.

  • Senior Management Steering Committee -- form a steering committee consisting of the CEO and the senior most executives of the enterprise including the CIO and a consultant such as myself to guide the process.  This steering committee will make take control over all IT initiatives.
  • Cloud Strategy and Cost Reduction - All modern systems (Unix, Linux, Microsoft) can be moved directly into a cloud environment.  Databases including legacy mainframe databases can be moved into the Cloud reducing system usage and enabling downsizing and cost reduction.  Mainframe modernization and elimination would come later.  Moving to the cloud reduces hardware cost, software costs, and eliminates many people who maintain these systems and computer network.  NOTE: these are administrative support staff, not application developers and provide no direct benefit to the enterprise.  This should result in approximately a 30% reduction in total IT costs.
  • New Financial Responsibility --  metrics today exist to allocate all IT costs directly back to business units.  This includes all systems development as well has hardware usage and even data storage.  All cost related decisions need to be made by the business executive governing a business area with oversight by the steering committee.
  • Enterprise Project Responsibility --  all new project must be approved by business unit executives with oversight by the steering committee.  To justify a project, a business ROI prepared by the business unit must be created, reviewed, and approved.
  • Hybrid Development Methodology -- While Agile development is a wonderful systems development methodology it is not project oriented and a hybrid methodology such as the following should be implemented:
    • Project Charter and objectives -- written by enterprise management
    • Project Requirements -- a very specific document with measurable results including a direct measurable ROI
    • Detail requirements -- produced by Business or Systems analysts documenting workflows, needed enhancements, etc.  
    • Review and approval -- by business management (note this includes a written set of testing and acceptance criteria that must be met for a project to be completed)
    • Project Implementation 
      • Requirements to be broken down into a Work Break Down Structure (WBS)
      • WBS tasks mapped to Agile EPIC's and Stories
      • Stories broken down into tasks as required by developers
      • Story implementation by developers
      • QA testing by professional independent testers
      • Acceptance testing by designated end users with written acceptance
      • Training and deployment
A key element of this process is two integrated reporting systems to document every step of the process.  All projects need to be written and stored in a system such as Microsoft SharePoint along with all requirements and record all approvals.  Agile development must be tracked in a reporting system such as JIRA (by Altassian).  Access to these reporting systems must be available to all involved parties as well as the Steering Committee members and designee s of steering committee executives.  

For more details contact me:  Bob Cancilla