I’ve considered writing some internal software for managing license fulfillment, customer support requests, enhancement/bug tracking, time tracking, and a bunch of other things as they come up. I previously wrote such a system at a former employer/current client, and it’s paid dividends for their business, many times over– far more than a canned off-the-shelf solution could ever do.
I’ve put this off for so long, as it means time away from client work that directly pays, and product work that indirectly pays later. I’ve used a bunch of different sub-optimal solutions up until now(Excel spreadsheets, a simple license-generator, etc.). I was looking at a canned solution called FogBugz, and realized although it is kinda nice, it can’t offer me the benefits of a custom solution…
While reading on FogBugz site, I read “Good software is not an accident. It is a result of a process designed to produce good software.” That really rung true– having a unified system to manage feature requests, bugs, support incidents, time tracking, license generation, etc. is very important for me to be able to run my business– primarily to create excellent software. The splintered approach I’ve been using is inefficient and easy to ignore and forget about– a unified system will force me to use it for one aspect of my business, which will remind me to use it constantly for the other parts.
So, I’ve started working this week on “SMS”– the ‘Sensible Management System’. This name is a clear knock-off of the system I developed for my former employer, which was called TMS(Ticket Management System)– but I really wanted a good acronym for the system, and something that was beyond ‘tickets’, as this system will do so much more. I have no plans to release this as a public product, due to its very custom nature, but I think the time I put into it should pay dividends someday in being more organized, and saving time by shortening iterations in business processes.