Like any good software company, when a project starts, we sit down with the client, and talk about what we can do to help. The result is usually a more or less complete SRS (Software Requirement Specification). The SRS serves as input to the design fase (we usually already have an architecture sketch when the SRS is made) and those two documents are used to brief the developers and keep everybody posted on what to build. If all done correctly, this should then result in a perfect piece of software right?
Well yes and no. Recently I noticed a funny implementation of a requirement which proved to me that sometimes, people do not care enough to see what they are actually doing.
In this particular case, the customer wanted an authorization workflow built into a system so that administrators could aprove of a customer request. In the SRS it was clearly written that the state of the customer request should be easily visible, using traffic light icons. The developer that was responsible for this perfectly implemented the requirement, and created the traffic lights, as you can see on the right. Yes, these are exact copies.
So far so good right? Functionality implemented and working, no bugs, traffic lights according to specs. This was implemented 11 months ago, and the customer has not complained. He had no reason to. It was according to specs.
These traffic lights are viewed by the clients employees and customers in 5 countries, about 4000 times a month. If any of these users are like me, they are probably amazed by the traffic lights. It has no hint of design in it. It was just hacked together. Look at the red traffic ligt. The red lamp is not in the middle of the black box. To me, it shows utter carelesness. The whole traffic light is 8 pixels wide. When hand-pixeling this in 800% zoom mode (which has obviously been done), the creator was so blind that he didn’t take care in placing the lights in the middle of the black area. How blind can you be?
Mission critical applications are expensive. So why is it that sometimes they don’t “look-and-feel” expensive? Because it is all up to the developer to care about these details. Not only do you need perfectionists, you need passionate people wo actually care about what they’re building and have a bad nights sleep when something is wrong with the project.
I this case, I made an attempt to fix it by replacing the traffic lights with my own versions (shown at your right). To me, it is a huge difference. You may not like the design, but these lights at least show that we care. Because we do.
Don’t just fight the specs. Beat them. “Swiftly, and with style.”