13.07.2015 Views

Object-Oriented Software Development with UML - UNU-IIST ...

Object-Oriented Software Development with UML - UNU-IIST ...

Object-Oriented Software Development with UML - UNU-IIST ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Conceptual Model – Concepts and Classes 53very useful since all its information can be derived from other concepts. For example, a receipt canbe produced by extracting the relevant information from the ProductSpecification and the Payment.=A record or a report, such as a receipt, sometimes has a special role in terms of the application andneed to be maintained. For example Receipt confers the right to its bearer to return his/her boughtitems. In this case, it should be shown in the conceptual model. However, item returns are not beingconsidered, and thus Receipt is not at the moment included in the list. When the system evolves andneeds to tackle the Return Items use case, it would be justified to include Receipt.Obviously, these factors can be very easily overlooked. However, we should remember our goal is tocreate a conceptual model of interesting and meaningful concepts in the domain under consideration. Thefollowing guidelines are useful:it.=It is better to overspecify a conceptual model <strong>with</strong> lots of fine-grained concepts, than to underspecifyDo not exclude a concept simply because the requirements do not indicate an obvious need to rememberinformation about=it.=It is common to miss concepts during the initial identification phase, and to discover them laterduring the consideration of attributes or associations, or during the design phase. When found, theyare added to the conceptual model.included.=Put a concept down as a candidate in the conceptual model when you are not sure it must not beAs a rule of thumb, a conceptual model is not absolutely correct or wrong, but more or less useful; it is atool of communication.5.1.4 Conceptual modelling guidelinesThe mapmaker strategy applies to both maps and conceptual models:=Use the existing names in the territory Map makers do not change the names of cities on the map.For a conceptual model, this means to use the vocabulary of the domain when naming concepts andattributes. For example, we use POST rather than Register.=Exclude irrelevant features A mapmaker deletes things from a map if they are not considered relevantto the purpose of the map; for example, topography or populations need not be shown. For examples,we may exclude Pen and PaperBag from our conceptual model for the current set of requirementssince they do not have any obvious noteworthy role.=Do not add things that are not there A mapmaker does not show things that are not there, such as amountain that does not exist. For example, we should include Dog in a model of a library.Finally, remember that a conceptual model focuses on domain concepts, not software entities.Report No. 259, July 2002<strong>UNU</strong>/<strong>IIST</strong>, P.O. Box 3058, Macau

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!