Tools and Techniques for Effective Distributed Requirements Engineering: An Empirical Study
Software development teams are often geographically distributed from their customers and end users. This creates significant communication and coordination challenges that impact the effectiveness of requirements engineering. Travel costs, and the local availability of quality technical staff increase the demand for effective distributed software development teams. In this research an empirical study was conducted on the application of groupware to facilitate the requirements phase of the software engineering life cycle. The study considered the impact of the distributed work environment on requirements engineering process quality, as well as the effectiveness of requirements elicitation techniques when used in the distributed setting. Through the examination of the effectiveness of groupware tools, and requirements elicitation techniques, customer participation is found to be paramount for distributed requirements engineering. As requirements negotiation becomes more asynchronous in nature, it appears that customer participation in the elicitation process becomes very important for process effectiveness. Verbal communication barriers negatively effect customer participation. Such barriers cause customers to rely upon mediums such as email and text chat that are very good at reducing social distance, but are less rich in informational content.
- Masters Theses