1 / 16

Mastering Domain Modeling for Effective Software Design

Learn to visualize and create domain models using UML class diagrams. Understand guidelines to relate and apply domain models to software design classes, reducing representational gaps. Enhance your software development skills.

wwarr
Download Presentation

Mastering Domain Modeling for Effective Software Design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Visualizing Concepts with aDomainModel

  2. Overview • A Domain Model visualizes noteworthy concepts or objects in the domain. • You will be able to: • Read and write the UML class diagram notation for a Domain Model • Create a Domain Model • Apply guidelines • Relate it to other artifacts 2 use cases sys. sequence diagramsdomain modelsoperation contract

  3. DEFINITION & MOTIVATION: Domain Model • A Domain Model visualizes, using UML class diagram notation, noteworthy concepts or objects. • It is a kind of “visual dictionary.” • Not a picture of software classes. • It helps us identify, relate and visualize important information. • It provides inspiration for later creation of software design classes, to reduce “representational gap.” 3 use cases sys. sequence diagramsdomain modelsoperation contract

  4. EXAMPLE: Partial Domain Model 4 use cases sys. sequence diagramsdomain modelsoperation contract

  5. GUIDELINES: Finding Domain Concepts • Candidate lists (see text, p. 134) • “Abbott” Analysis; AKA Linguistic Analysis • Most simply, “pick out the nouns” • Existing analysis patterns: 5 use cases sys. sequence diagramsdomain modelsoperation contract

  6. UML: Associations 6 use cases sys. sequence diagramsdomain modelsoperation contract

  7. UML: Multiplicity 7 use cases sys. sequence diagramsdomain modelsoperation contract

  8. GUIDELINES: Associations • Only add associations for noteworthy relationships. Literally, those for which making a “note” is worthy or business motivated. 8 use cases sys. sequence diagramsdomain modelsoperation contract

  9. UML and GUIDELINES: Attributes • Show only “simple” relatively primitive types as attributes. • Connections to other concepts are to be represented as associations, not attributes. 9 use cases sys. sequence diagramsdomain modelsoperation contract

  10. GUIDELINES: Attributes • Why?? 10 use cases sys. sequence diagramsdomain modelsoperation contract

  11. EXAMPLE: Domain Model Notice how this can be viewed as a “visual dictionary.” It illustrates concepts, words, things in a domain. 11 use cases sys. sequence diagramsdomain modelsoperation contract

  12. In small teams at the whiteboard, draw a partial Domain Model, limited to the Main Success Scenario of the Process Sale use case, and assuming iteration 1 simplifications. • Use the text’s use case as the basis. p. 50 • Apply the guidelines 12 use cases sys. sequence diagramsdomain modelsoperation contract

  13. Artifacts in the UP Use-Case Model 13 use cases sys. sequence diagramsdomain modelsoperation contract

  14. Recommended Resources 14 use cases sys. sequence diagramsdomain modelsoperation contract

  15. Without notes, draw all UP disciplines and artifacts discussed, and relate them. 15 use cases sys. sequence diagramsdomain modelsoperation contract

  16. Objectives assessment. Can you: • Read and write the UML class diagram notation for a Domain Model • Create a Domain Model • Apply guidelines • Relate it to other artifacts 16 use cases sys. sequence diagramsdomain modelsoperation contract

More Related