Understanding requirements entails
understanding domain terminology, concepts, and relationships. Domains can be
complicated, requiring years to master. How does a developer gain sufficient
knowledge about an application domain?
Hold knowledge crunching sessions with
domain experts, ask questions, listen to their answers, draw diagrams, take notes.
Start from use cases. Look beyond
requirements. Understand the intent of a use case. Explore scenarios.
Do your homework. Read text books, search
the web, look for existing domain models, read company documentation, look at
domain standards.