In our development team we create many small applications, all targeted at a very specific needs of our customers.
Therefore we often have problems with creating a uniform user experience regarding:
- Choice of icons (GUI)
- Naming of configuration files
- Naming of configuration options
- GUI language (as in ‘formal or less formal’ or ‘for novice/advanced users’)
- Choice of names/titles
- General GUI layouts
- …
I can think of several approaches to these problems…
- Create very detailed written guidelines
- Discuss everything
- Let one developer decide everything
- …
What’s the best way to achive a cohesive user experience or uniform results in general? Personally I don’t like any of my approaches, but perhaps that’s a misconception, so feel free to support them 🙂
I’ve had several positions where I’ve had complete ownership of the GUI. This involved me doing all designs/mockups and also supervised the use case writing to make sure it was all consistent. This is by far the best approach to ensure consistency, but it might not always be the most practical one.
Alternatives would be to write guidelines, but this is not really the same thing as having a good GUI design knowledge/HCI skills. At least it can teach developers to use custom libraries/components that your company might have.
A must is a dictionary that contains the domain language your ase using and how it should be used in the GUI. This is one of the most important things that a lead gui developer needs to do.
At the very least you should make sure that you review anything that is done by other developers unlessy you know and trust them to do the right thing. GUI design is often a vastly under estimated skill and it is important to remember that not everyone can do it without proper training.