tailieunhanh - PATTERNS OF DATA MODELING- P40

PATTERNS OF DATA MODELING- P40: Models provide the means for building quality software in a predictable manner. Models let developers think deeply about software and cope with large size and complexity. Developers can think abstractly before becoming enmeshed in the details of writing code. Although models are beneficial, they can be difficult to construct. That is where patterns come in. Patterns provide building blocks that help developers construct models faster and better. | 182 Chapter 13 Softcoded Values The addition of time history greatly complicates the model more so than it might seem at first. For example what is the meaning of minMultiplicity when SoftcodedValues change over time If minMultiplicity is 0 there is no problem. If minMultiplicity is 1 then a Soft-codedValue must exist for the Attribute at all times extending indefinitely into the past as well as the future. Time history also complicates enforcement of maxMultiplicity. If maxMultiplicity is there is no problem. If maxMultiplicity is 1 then software must ensure that the constraint is satisfied at all times. The enforcement of minMultiplicity and maxMultiplicity leads to tricky programming that can degrade performance. Also it is difficult to explain errors. In practice it is better to omit minMultiplicity and maxMultiplicity from a model with time history. Another concern is coordinating Attribute time intervals with SoftcodedValue time intervals. An Attribute s change cannot conflict with its SoftcodedValues. For example a reduction in the maxLength for a string cannot conflict with pre-existing SoftcodedValues. Some changes are not permitted. For example if SoftcodedValues are stored it probably does not make sense to change the dataType from dateTime to integer. Given the semantic questions performance concerns development effort and likelihood of bugs Figure and Figure simplify the model with time history. Note that the minMultiplicity is implicitly 0 and maxMultiplicity is . The Attribute name can vary. So too can the dataType as long as there is no conflict. Changes to maxLength are permitted. Figure Softcoded values with time history UML model. Support Weakly Typed Entities The typical application assigns each entity a type that determines its attributes. However sometimes it is helpful to define an entity on its own and then assign it multiple types that determine sets of attributes that can be populated. For example there can be .

TỪ KHÓA LIÊN QUAN