As the newest member of FMS TEL. I get the chance to see the products offered by the unit from a different perspective compared to the end user and the existing development colleagues. Talking about my first project, a redevelopment of a system designed and launched around 8 years ago. I can see that the current system although designed well at the time, a large part of it is no longer used or fit for purpose given growth and process changes during that period.
Part of the investigation process of any existing project is looking back at what the clients have been using and how they have been using it. This gives you insight into what’s being used and what’s not, where the priority new functionality needs to be focussed. Engagement with the previous developer adds to this an understanding of what the purpose of the system and what business needs took priority.
In defence of the previous system; I have been reaching many of the same conclusion in my development processes. Many of the ongoing issues raised by the client; at one point or another were solved and that got me thinking about what the priority was now.
At times we are our own worst enemy when it comes to systems and processes that are no longer serving us. For example, the project I am working on is getting a new tagging system to help organise the systems content. The tags can be attached too many different items to help describe the object.
The tag can also filter the data display, such as being able to select everything with a specific tag in the database. Tags will likely reduce the frequency of updates required too by giving the user the ability to add new database queries by adding a tag to the objects.
This is quite a simple yet powerful feature to put in place for a developer and one that many systems use to provide similar functionality for the end user. But nothing is perfect and as much as I love the tagging system there’s one issue.
The more flexible the system is, the more discipline the end user needs to have to maintain its usefulness. There needs to be a unified effort by the client and the development team which ensures the integrity of the system and limits the fragmentation of the data.
How can we solve this? Well, the end user needs to ensure they are naming the tags something that best matches what they are aiming to do. On top of that everyone in the team need to follow the agreed guidelines too.
For example, say we have event 1,2 and 3. I want to use a tag that best describes them so let’s make a tag called ‘Numerical event’. We tag all three of them. Now I go on holiday and event 4 happens and someone who is covering for me tags this event ‘Numbered Event’. We now have two tags that are similar that are describing two different sets of events, not ideal.
A conscious effort to review what we are achieving during development, but also once in the open with the end user will be crucial to keeping this kind of system working for us.
We will wait and see after the system is handed to the client in December, what worked and what didn’t. Review, enhancements and re-development are inevitable to limit this becoming another system that works against you!.