When choosing a software provider to create the web or desktop solution your company needs, communication is indeed key, but this may be easier said than done. The gap between programmers and customers can quickly become apparent and is often a challenge to master, as most customers are unprepared to discuss their projects from a strictly technical point of view.
In order to get past these difficulties and effectively relay their requirements, some companies resort to UML or workflow diagrams, while yet others go for UI sketches and lengthy free text descriptions.
At Software Planet Group, however, we think both customers and developers should always be on the same page, and speak the same language (see our article on the system metaphor for more on this subject). This is why wherever we can, we aim to simplify the management of requirements, using tried-and-true techniques that enable us to quickly determine the full scope of a project, estimate and re-estimate particular features and releases.