When developer starts to develop software they do not care about the requirement specification properly. As a result, they get lot of misunderstanding part in the developed software in the 1st iteration. So customer and developer blame each other for the useless or enhance part. I feel both of them should follow few steps to reduce misunderstanding.
Developers duty: 9 good points for the developers
-
Speak customer language
-
Learn about customer business and customer objective for the system
-
Explain all work products created from the requirements process
-
Treat customer with respect and maintain a collaborative and professional attitude
-
Provide customers with ideas and alternatives both for customer requirements and for product implementation
-
Describe characteristics of the product that will make it easy and enjoyable to use
-
Present opportunities to adjust customer requirements to permit reuse of existing software components
-
Give good faith estimate of the costs, impacts, and trade-offs when customer request a change in the requirements
-
Produce a system that meets customer functional and quality needs, to the extent that those needs have been communicated
Customers Duty: 10 good points for the customers
-
Educate analysts about the business and defines the business jargon
-
Spend time it takes to provide requirements, clarify them, and iteratively flesh them out
-
Are specific and precise when providing input about the system’s requirements
-
Make timely decisions about requirements when requested to do so
-
Respect a developer’s assessment of the cost and feasibility of the requirements
-
Set priority for individual requirements, system features, or use case
-
Review requirements documents and prototypes
-
Communicate changes to the project requirements as soon as they are known
-
Follow the development organisation’s defined process for requesting requirements changes
-
Respect the process the developers use for requirement engineering