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 an Entity Class?What Is an Entity Class?• Key abstractions of the systemAnalysis classstereotypeUse CaseBusiness-DomainModelArchitectural AnalysisAbstractionsGlossaryEnvironment IndependentMastering Object Oriented Analysis and Design with UMLCopyright © 2003 Rational Software, all rights reserved 18Entity objects represent the key concepts of the system being developed. Entityclasses provide another point of view from which to understand the system, becausethey show the logical data structure. Knowing the data structure can help youunderstand what the system is supposed to offer its users.Frequent sources of inspiration for entity classes are the:• Glossary (developed during requirements)• Business-Domain Model (developed during business modeling, if businessmodeling has been performed)• Use-case flow of events (developed during requirements)• Key abstractions (identified in Architectural Analysis)As mentioned earlier, sometimes there is a need to model information about an actorwithin the system. This is not the same as modeling the actor (actors are external. bydefinition). In this case, the information about the actor is modeled as an entityclass. These classes are sometimes called “surrogates.”6 - 18
Module 6 - Use-Case AnalysisThe Role of an Entity ClassThe Role of an Entity ClassActor 1Actor 2Store and manage information in the systemMastering Object Oriented Analysis and Design with UMLCopyright © 2003 Rational Software, all rights reserved 19Entity classes represent stores of information in the system. They are typically used torepresent the key concepts that the system manages. Entity objects (instances of entityclasses) are used to hold and update information about some phenomenon, such asan event, a person, or a real-life object. They are usually persistent, having attributesand relationships needed for a long period, sometimes for the lifetime of the system.The main responsibilities of entity classes are to store and manage information in thesystem.An entity object is usually not specific to one Use-Case Realization and sometimes itis not even specific to the system itself. The values of its attributes and relationshipsare often given by an actor. An entity object may also be needed to help performinternal system tasks. Entity objects can have behavior as complicated as that of otherobject stereotypes. However, unlike other objects, this behavior is strongly related tothe phenomenon the entity object represents. Entity objects are independent of theenvironment (the actors).6 - 19
- Page 176 and 177: DEV475 Mastering Object-Oriented An
- Page 178 and 179: DEV475 Mastering Object-Oriented An
- Page 180 and 181: DEV475 Mastering Object-Oriented An
- Page 182 and 183: DEV475 Mastering Object-Oriented An
- Page 184 and 185: DEV475 Mastering Object-Oriented An
- Page 186 and 187: DEV475 Mastering Object-Oriented An
- Page 188 and 189: DEV475 Mastering Object-Oriented An
- Page 190 and 191: DEV475 Mastering Object-Oriented An
- Page 192 and 193: DEV475 Mastering Object-Oriented An
- Page 194 and 195: DEV475 Mastering Object-Oriented An
- Page 196 and 197: DEV475 Mastering Object-Oriented An
- Page 198 and 199: DEV475 Mastering Object-Oriented An
- Page 200 and 201: DEV475 Mastering Object-Oriented An
- Page 202 and 203: DEV475 Mastering Object-Oriented An
- Page 204 and 205: DEV475 Mastering Object-Oriented An
- Page 206 and 207: DEV475 Mastering Object-Oriented An
- Page 208 and 209: DEV475 Mastering Object-Oriented An
- Page 210 and 211: DEV475 Mastering Object-Oriented An
- Page 212 and 213: DEV475 Mastering Object-Oriented An
- Page 214 and 215: DEV475 Mastering Object-Oriented An
- Page 216 and 217: DEV475 Mastering Object-Oriented An
- Page 218 and 219: DEV475 Mastering Object-Oriented An
- Page 220 and 221: DEV475 Mastering Object-Oriented An
- Page 222 and 223: DEV475 Mastering Object-Oriented An
- Page 224 and 225: DEV475 Mastering Object-Oriented An
- Page 228 and 229: DEV475 Mastering Object-Oriented An
- Page 230 and 231: DEV475 Mastering Object-Oriented An
- Page 232 and 233: DEV475 Mastering Object-Oriented An
- Page 234 and 235: DEV475 Mastering Object-Oriented An
- Page 236 and 237: DEV475 Mastering Object-Oriented An
- Page 238 and 239: DEV475 Mastering Object-Oriented An
- Page 240 and 241: DEV475 Mastering Object-Oriented An
- Page 242 and 243: DEV475 Mastering Object-Oriented An
- Page 244 and 245: DEV475 Mastering Object-Oriented An
- Page 246 and 247: DEV475 Mastering Object-Oriented An
- Page 248 and 249: DEV475 Mastering Object-Oriented An
- Page 250 and 251: DEV475 Mastering Object-Oriented An
- Page 252 and 253: DEV475 Mastering Object-Oriented An
- Page 254 and 255: DEV475 Mastering Object-Oriented An
- Page 256 and 257: DEV475 Mastering Object-Oriented An
- Page 258 and 259: DEV475 Mastering Object-Oriented An
- Page 260 and 261: DEV475 Mastering Object-Oriented An
- Page 262 and 263: DEV475 Mastering Object-Oriented An
- Page 264 and 265: DEV475 Mastering Object-Oriented An
- Page 266 and 267: DEV475 Mastering Object-Oriented An
- Page 268 and 269: DEV475 Mastering Object-Oriented An
- Page 270 and 271: DEV475 Mastering Object-Oriented An
- Page 272 and 273: DEV475 Mastering Object-Oriented An
- Page 274 and 275: 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 an Entity Class?What Is an Entity Class?• Key abstractions of the system<strong>Analysis</strong> classstereotypeUse CaseBusiness-DomainModelArchitectural <strong>Analysis</strong>AbstractionsGlossaryEnvironment Independent<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 18Entity objects represent the key concepts of the system being developed. Entityclasses provide another point of view from which to underst<strong>and</strong> the system, becausethey show the logical data structure. Knowing the data structure can help youunderst<strong>and</strong> what the system is supposed to offer its users.Frequent sources of inspiration for entity classes are the:• Glossary (developed during requirements)• Business-Domain Model (developed during business modeling, if businessmodeling has been performed)• Use-case flow of events (developed during requirements)• Key abstractions (identified in Architectural <strong>Analysis</strong>)As mentioned earlier, sometimes there is a need to model information about an actor<strong>with</strong>in the system. This is not the same as modeling the actor (actors are external. bydefinition). In this case, the information about the actor is modeled as an entityclass. These classes are sometimes called “surrogates.”6 - 18