DEV475 Mastering Object-Oriented Analysis and Design with UML ...
DEV475 Mastering Object-Oriented Analysis and Design with UML ... DEV475 Mastering Object-Oriented Analysis and Design with UML ...
DEV475 Mastering Object-Oriented Analysis and Design with UMLWhat Is a Model?What Is a Model?• A model is a simplification of reality.Mastering Object Oriented Analysis and Design with UMLCopyright © 2003 Rational Software, all rights reserved 6According to Grady Booch, a model provides the blueprints of a system. It canencompass detailed plans, as well as more general plans that give a 30,000-foot viewof the system under construction. A good model includes those elements that are notrelevant to the given level of abstraction. Every system can be described fromdifferent aspects using different models, and each model is therefore a semanticallyclosed abstraction of the system. A model can be structural, emphasizing theorganization of the system, or it can be behavioral, emphasizing the dynamics of thesystem.2 - 6
Module 2 - Concepts of Object OrientationWhy Do We Model?Why Do We Model?• We build models to better understand the systemwe are developing.• Modeling achieves four aims. It:• Helps us to visualize a system as we want it to be.• Permits us to specify the structure or behavior of asystem.• Gives us a template that guides us in constructing asystem.• Documents the decisions we have made.• We build models of complex systems because wecannot comprehend such a system in its entirety.Mastering Object Oriented Analysis and Design with UMLCopyright © 2003 Rational Software, all rights reserved 7According to The Unified Modeling Language Use Guide (Booch, Rumbaugh, andJacobson, 1998), modeling achieves four aims:• Models help us to visualize a system as we want it to be. A model helps thesoftware team communicate the vision for the system being developed. It is verydifficult for a software team to have a unified vision of a system that is onlydescribed in specification and requirement documents. Models bring aboutunderstanding of the system.• Models permit us to specify the structure or behavior of a system. A modelallows us to document system behavior and structure before coding the system.• Models give us a template that guides us in constructing a system. A model is aninvaluable tool during construction. It serves as a road map for a developer. Haveyou experienced a situation where a developer coded incorrect behaviorbecause there was confusion over the wording in a requirements document?Modeling helps alleviate that situation.• Models document the decisions that have been made. Models are valuable toolsin the long term because they give “hard” information on design decisions. Youdon’t need to rely on someone’s memory.2 - 7
- Page 18 and 19: DEV475 Mastering Object-Oriented An
- Page 20 and 21: DEV475 Mastering Object-Oriented An
- Page 22 and 23: DEV475 Mastering Object-Oriented An
- Page 24 and 25: DEV475 Mastering Object-Oriented An
- Page 26 and 27: DEV475 Mastering Object-Oriented An
- Page 28 and 29: DEV475 Mastering Object-Oriented An
- Page 30 and 31: DEV475 Mastering Object-Oriented An
- Page 32 and 33: DEV475 Mastering Object-Oriented An
- Page 34 and 35: DEV475 Mastering Object-Oriented An
- Page 36 and 37: DEV475 Mastering Object-Oriented An
- Page 38 and 39: DEV475 Mastering Object-Oriented An
- Page 40 and 41: DEV475 Mastering Object-Oriented An
- Page 42 and 43: DEV475 Mastering Object-Oriented An
- Page 44 and 45: DEV475 Mastering Object-Oriented An
- Page 46 and 47: DEV475 Mastering Object-Oriented An
- Page 48 and 49: DEV475 Mastering Object-Oriented An
- Page 50 and 51: DEV475 Mastering Object-Oriented An
- Page 52 and 53: DEV475 Mastering Object-Oriented An
- Page 54 and 55: DEV475 Mastering Object-Oriented An
- Page 56 and 57: DEV475 Mastering Object-Oriented An
- Page 58 and 59: DEV475 Mastering Object-Oriented An
- Page 60 and 61: DEV475 Mastering Object-Oriented An
- Page 62 and 63: DEV475 Mastering Object-Oriented An
- Page 64 and 65: DEV475 Mastering Object-Oriented An
- Page 66 and 67: DEV475 Mastering Object-Oriented An
- Page 70 and 71: DEV475 Mastering Object-Oriented An
- Page 72 and 73: DEV475 Mastering Object-Oriented An
- Page 74 and 75: DEV475 Mastering Object-Oriented An
- Page 76 and 77: DEV475 Mastering Object-Oriented An
- Page 78 and 79: DEV475 Mastering Object-Oriented An
- Page 80 and 81: DEV475 Mastering Object-Oriented An
- Page 82 and 83: DEV475 Mastering Object-Oriented An
- Page 84 and 85: DEV475 Mastering Object-Oriented An
- Page 86 and 87: DEV475 Mastering Object-Oriented An
- Page 88 and 89: DEV475 Mastering Object-Oriented An
- Page 90 and 91: DEV475 Mastering Object-Oriented An
- Page 92 and 93: DEV475 Mastering Object-Oriented An
- Page 94 and 95: DEV475 Mastering Object-Oriented An
- Page 96 and 97: DEV475 Mastering Object-Oriented An
- Page 98 and 99: DEV475 Mastering Object-Oriented An
- Page 100 and 101: DEV475 Mastering Object-Oriented An
- Page 102 and 103: DEV475 Mastering Object-Oriented An
- Page 104 and 105: DEV475 Mastering Object-Oriented An
- Page 106 and 107: DEV475 Mastering Object-Oriented An
- Page 108 and 109: DEV475 Mastering Object-Oriented An
- Page 110 and 111: DEV475 Mastering Object-Oriented An
- Page 112 and 113: DEV475 Mastering Object-Oriented An
- Page 114 and 115: DEV475 Mastering Object-Oriented An
- Page 116 and 117: DEV475 Mastering Object-Oriented An
<strong>DEV475</strong> <strong>Mastering</strong> <strong>Object</strong>-<strong>Oriented</strong> <strong>Analysis</strong> <strong>and</strong> <strong>Design</strong> <strong>with</strong> <strong>UML</strong>What Is a Model?What Is a Model?• A model is a simplification of reality.<strong>Mastering</strong> <strong>Object</strong> <strong>Oriented</strong> <strong>Analysis</strong> <strong>and</strong> <strong>Design</strong> <strong>with</strong> <strong>UML</strong>Copyright © 2003 Rational Software, all rights reserved 6According to Grady Booch, a model provides the blueprints of a system. It canencompass detailed plans, as well as more general plans that give a 30,000-foot viewof the system under construction. A good model includes those elements that are notrelevant to the given level of abstraction. Every system can be described fromdifferent aspects using different models, <strong>and</strong> each model is therefore a semanticallyclosed abstraction of the system. A model can be structural, emphasizing theorganization of the system, or it can be behavioral, emphasizing the dynamics of thesystem.2 - 6