Nearly every solution includes some manner of administrative tools.  These tools range from scripts and manual process steps to full graphical interfaces and wizards.  No matter the form these take, they must be considered as part of architecting a solution.  Their very nature is for it to work hand in glove with the architecture and design to manipulate data as needed.

Low-End Administrative Tools

The simplest form of tools are scripts and similar utilities that are primarily manual.  These are often built around the architecture and implementation after the fact.  While that is acceptable, it is not ideal.  There are many times that I have seen these tools pushed off until after production deployments only to find that the proper hooks were not built into the system.  We often find a need to design things like back-doors to allow for proper administrative tools.  When those are not architected from the start, then they can be difficult or impossible to utilize.

Architecting For The Long Run

The best place to set up a system with a good (and productive) administrative user experience is the architecture itself.  I used the “shop as a customer” feature that many e-commerce tools have adopted.  This feature is highly valuable when supporting an e-commerce environment.  If we back up a step, then consider what the most crucial question is to answer during a support call.  That is “what were you doing before it broke” or something along those lines.

When we provide administrative tools that allow the support staff to mimic users, then they have better chances of reproducing the precise bug.  That makes fixes easier to determine.  User mimicry can even be a tool that helps push bugs up the call center tier to ever more technical levels of support.

Make Your Life Easier

A good architecture will allow access to the data where needed.  You can always secure these points to protect your back doors.  However, the door must exist first.  When you fail to plan for support issues is can be costly.  Unfortunately, this cost is not one you will see right away.  Instead, it will be a drag on your maintenance and support team for years to come.

Rob Broadhead

Rob is a founder of, and frequent contributor to, Develpreneur. This includes the Building Better Developers podcast. He is also a lifetime learner as a developer, designer, and manager of software solutions. Rob is the founder of RB Consulting and has managed to author a book about his family experiences and a few about becoming a better developer. In his free time, he stays busy raising five children (although they have grown into adults). When he has a chance to breathe, he is on the ice playing hockey to relax or working on his ballroom dance skills.

Leave a Reply