The easier it is on the outside the more complex it is on the inside. We see this in every aspect of our lives today. I see this in my own cars. I have a 1986 Jeep CJ-7 that I open the hood of on a regular basis. The inside has a standard engine with a fan, wires and hoses. I can point to things, replace them and it works. However, when I sit behind the wheel, all I have is a steering wheel, a stick shift and a couple of gauges. The Jeep runs great, but it’s about as utilitarian as it gets. The flip side of this is my 2006 Nissan Quest minivan (yes minivan). When I open the hood of the van, I have no idea what is inside and can barely figure out where to put the oil (though I’ve never actually had to put oil in). As a prerequisite of purchasing and driving this car I insisted that every spot where there could be a button, or knob, must have that button or knob which provides me with a feature rich experience when I sit behind the wheel. Every want and need is taken care of save the driving itself.
This same goes for today’s IT world. In the old days, users had there devices, a computer that connected to a LAN cable, a printer that usually sat on their desk and a phone connected to a plug in the wall. From a user perspective, this was much like my Jeep CJ-7. If there was an issue, they could simply get a replacement part (e.g., the LAN cable or the phone) from IT and be on their way. The user could, in most cases, replace the part themselves and everyone was happy. From an interface perspective, the user had access to the tools they needed to drive productivity and nothing else.
In today’s world, this has changed dramatically. With the onset of new technologies, the user has everything their heart desires, even if they didn’t know their heart desired it, but they are more and more reliant on IT to provide the services they need, self-serve is no longer an option. Now this may seem like a dream come true for IT, but it is anything but. With this need to service devices and provide infrastructure has put a strain on many IT organizations. It has also spawned whole new industries around cloud and mobile development as well as orchestration that leave IT with huge decisions to make with lasting consequences.
To cope with these shifts and the ever growing internal complexity, IT divisions need guides to get them though, like a Chilton guide for the enterprise. Now, any IT division that is looking for a guide, or looking to create their own should focus on the 3 Universal Methods of Reducing Complexity as they pertain to this new era just as they always have:
As I have worked through the development of our own mobile strategies, I have found these guides to work very well in developing the strategy for handling how we will develop, distribute, support and maintain both our devices and our infrastructure. When putting together a strategy around mobility, IT should start with these three methods and build from there:
1) Partitioning – Don’t try to boil the ocean and don’t try to create everything at once. Break the development of the strategy into pieces such as security, architecture, support and app development. The assign a team to handle each area and come up with strategies to deliver. Be sure that the teams interact and coordinate on a regular basis to achieve a consistent overall strategy.
2) Hierarchy – There has to be someone in charge, a leader with executive power that can assign resources and give the program priority. This is new territory and it often takes away from the day-to-day business of teams who are just trying to keep their current desktop implementations up and running. Under the overall leadership, there should be leads for each partition that are responsible to the program as well as each other. Putting this structure in place early on will save your team from headaches down the line.
3) Independence – The program teams should develop guidelines and standard tools that app development teams can use to implement their own applications. These tools should cover the key aspects of design, but allow for each team to develop an app that fits their particular user’s needs. Allowing this independence for the app dev teams while falling under overall guidelines will give you standard sets of applications that are customized to specific group needs and speed overall development and implementation.
By setting your structure early on and sticking with basic principles you will have the framework for success with the flexibility to change with the growth of technology.