Domain Analysis


Domain analysis is the activity of investigating, capturing, and specifying generic knowledge about a subject matter area. You could think of domain analysis as non-project systems analysis: The goal is to learn about the business policy, data, and functionalitynot to build something. The knowledge gained about the domain is used, and ideally reused, by any project that builds a product to be used within that domain.

Domain analysis works in the same way that regular systems analysis does. That is, you work with domain experts to extract their hitherto unarticulated knowledge, and you record it in a manner that allows other analysts to reuse the knowledge. This suggests that regular analysis modelsevent-response models, activity diagrams, sequence diagrams, class diagrams, state models, data dictionaries, and so onare the most useful, as these kinds of models have the greatest currency in the analysis world.

Prieto-Diaz, Ruben, and Guillermo Arango. Domain Analysis and Software Systems Modeling. IEEE Computer Society Press, 1991.


Once the domain knowledge has been captured and recorded, then it becomes available to anyone who builds a product for that domain. The domain knowledge applies to any product for that domain. The point is not to rediscover knowledge that has always existed, but to reuse the models of knowledge.

The point is not to rediscover knowledge, but to reuse models of knowledge.


Of course, there is always the problem of precisely what constitutes a domain. Simply saying "banking," "insurance," or "microsurgery" is not enough. The definition of a domain lies in its interfaces with other domains. It is what enters and leaves that defines the domain, not the domain name. Look back at the context model in Figure 13.4. The flows that enter and leave define the scope of this domain, not its name of Customer Wants to Buy a Product. However, once you have established the boundaries of the domain, it becomes fairly easy to identify useful business events, data, and functions.

Domain analysis is a long-term project. That is, the knowledge gained is reusable, but this benefit will be realized only if you get the opportunity to reuse the knowledge. An investment in domain analysis is like any other investment: You must have a good idea that the investment will be paid back. In the case of domain analysis, your investment is rewarded if several projects in that domain use the domain knowledge. Also, keep in mind that there is no limit to the number of times that domain knowledge can be reused.




Mastering the Requirements Process
Mastering the Requirements Process (2nd Edition)
ISBN: 0321419499
EAN: 2147483647
Year: 2006
Pages: 371

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net