Requirement is one of most popular cause of problem in software development. Change of requirement always affect overall software development, severely. I want to skip general things about Requirement because there are already lots of stuffs about this. Let’s just focus on Requirement of Handset software development. Especially, User Interface Specification (henceforth UIS).
In general, there is department in charge of UIS. The department composes UIS. Then, this UIS is delivered to Development team (development team design software big picture based on this.), designers(designers make images, screen layouts etc based on this), and test team (test team makes test and verification cases based on this.)
As you see, the point is “UIS’s impact in the software development is extremely critical.”. And usually, number of people who make UIS not alone. And it is true for design, software development and test. Let’s image that UIS is not clear. What will happen? In this case – development based on unclear UIS -, huge amount of communication overhead is required between UIS, design, development and test team. This cost is extremely large – over than expected. (I can say like this based on my experience. Believe me.)
Even though clarity of UIS – we can also say it as ‘completeness’ – is very important, in many cases, it is underestimated. Instead of clarity, originality or creativity of UIS is usually required. I’m not saying that originality and creativity are not important. My point is, clarity or completeness is as important as originality or creativity.
UIS is also a kind of “Specification”. So, it should be clear. That’s my point.