One frustrating aspect of becoming a system architect is realizing that you probably could not build a large software system entirely by yourself in a reasonable time frame. And even if you could, you probably could never convince an organization that allowing you to do so is in its best interest. Therefore, it is nearly inevitable that you will have to interact with a team of individuals in order to design and develop software.
It is difficult to create a well-designed system without an understanding of the domain model which the system supports. The key elements of a well-described domain model follow.
Domain Model Requirements
A discussion of the domain business problem the domain model supports and the context in which it provides ...