My first Publication Agile-Data-Warehouse-Design-eBook | Page 43

22 Chapter 1 visible signs of progress. Stakeholders can easily imagine sorting and filtering the low-level detail columns of a business event using the higher-level dimensional attributes that they subsequently model. Figure 1-9 Customer Orders BEAM✲ table BEAM✲ Short Codes BEAM✲ uses short codes to capture technical data properties BEAM ✲ tables are simple enough not to get in the way when modeling with stakeholders, but expressive enough to capture real-world data complexities and ultimately document the dimensional modeling design patterns used to address them. To do this BEAM ✲ models use short (alphanumeric) codes: (mainly) 2 letter abbreviations of data properties that can be recorded in spreadsheet cells, rather than graphical notation that would require specialist modeling tools. By adding short codes, BEAM ✲ tables can be used to: Document dimensional attribute properties including history rules Document fact properties including aggregation rules Record data-profiling results and map data sources to requirements Define physical dimensional models: fact and dimension tables Generate star schemas BEAM✲ short codes act as dimensional modeling shorthand BEAM ✲ short codes act as dimensional modelers’ shorthand for documenting generic data properties such as data type and nullability, and specific dimensional properties such as slowly changing dimensions and fact additivity. Short codes can be used to annotate any BEAM ✲ diagram type for technical audiences but can easily be hidden or ignored when modeling with stakeholders who are disinter- ested in the more technical details. Short codes and other BEAM ✲ notation con- ventions will be highlighted in the text in bold. Appendix B provides a reference list of short codes. Comparing BEAM✲ and Entity-Relationship Diagrams We will use Pomegranate Corp. examples to illustrate BEAM✲ Throughout this book we will be illustrating BEAM ✲ in action with worked examples featuring the fictional Pomegranate Corporation (POM). We begin now by comparing an ER diagram representation of Pomegranate’s order processing data model (Figure 1-10) with an equivalent BEAM ✲ table for the Customer Orders event (Figure 1-9).