This is a guest post for the Computer Weekly Developer Network written by Mark Warren of Perforce Software.
If you're struggling to find out what's going on inside your production servers...
(i.e. what's on them and why... and how on Earth you're going to make them grow to keep up with demand)
... then you may have a severe case of the "Ilities".
This is a common ailment.
Sysadmins across the planet are struggling with traceability (knowing what got deployed, why, when and how to clean up if anything goes wrong), auditability (being able to show you know what's running and that, honestly, all the testing and compliancy stuff got done)... and scalability (more people keep wanting to use the systems and for them to run faster).
For all sorts of historical reasons (and some of those apps have been around for decades) a whole raft of different tools have been adopted across development and operations teams and more are still being added, for example some developers are adopting Git while most of the rest of the team are using other tools.
The first part of the solution is to realise that at the core of all the problems is what we call the System of Record.
This is the foundation on which all the development, build, test and deployment tools sit. If you can get that foundation right, with a single "source of truth" then you're well on the road to recovery.
The single source of truth is your version management tool.
That tool needs to be able to handle all the digital assets (source code and outputs from the build system including: test cases, documentation, artwork and video), plus high performance and manageable, robust security.
As a first step, companies need to audit what they have - including how many version management tools are being used, admins, different back-up or HA/DR processes and then rationalise or retire anything that is superfluous to requirement.
Regardless of what software is used to get there...
... please understand where you are without worrying about how you got there; review what you need and how your current systems match up; develop a modernisation plan to migrate to a version management platform that can take care of your "ilities" for you."