DB analyse og modellering Jesper Tørresø I4DAB1 E11 23. September 2011 Abstraktion • ”Værktøj” til overblik og forståelse • Forsimpling og Fokusering på det væsentligste. • Fra Abstraktion Konkret – Via metoder (metodik/arbejdsgang) – og værktøjer (diagrammer og beskrivelser) – Kravanalyse Et krav er ufravigeligt – Via iterationer Metoder • [TEOREY] har en formel omfattende liste af artefakter, som indgår i deres metode. • [RUSSEL] giver principperne som er de mest kendetegnede for DB–analyse og – design. • Jeg har nogle principnoter Processen To formelle metoder • Logisk Database Design • Konceptuelt Database Design Logisk DB design Ser vi nærmere på ifbm. Normalisering • Med udgangspunkt i hvorledes en RDB er opbygget • ”Buttom Up” : Lavniveau dataanalyse • ”Top down” : Tabeller kan uddrages fra krav. • Work A round (Up, Down, På ”kryds og tværs”) • Tager ikke direkte udgangspunkt i problemdomænet • Den ”rigtige” metode medføre design af en normaliserbar database. Konceptuelt DB design • Inddrager brugere og udviklere • Tager udgangspunkt i problemdomænet. • Bruger Klasser/Entiteter som udgangspunkt • Diagrammer er ERD og/eller UML • Med Designregler omformes den konceptuelle model til et ”logisk skema” – Virkemåden for DDS-Lite er designregler. Elementer i ”KDBD” • Datamodellering og relations/associationsmodellering Entitet • Kravanalyse. • Entiteter som indeholder • Attributter: enkeltværdi som flerværdi • Generalisering og Specialisering [Teorey] Konceptuel metode • Overordnede trin – Requirements analysis. • What is the DB to be used for, what must it contain and how will i proces data (what comes out)? – Conceptual data modeling (The most important part from a technically view) • Classifiy entities and attributes or classes and attributes. • Identify generaliztion hierachies (ERD and UML) • Define relationships or associations and association classes – First all possible binary and unary degreed relationships – Review redundant relationships. – Then if needed ternary (or n-ary) relationships. – Entity Clustering (Gælder for store systemer med mange entiteter >1000..10000.. (Ikke for DAB1) Metode: Conceptual Scope • A Schema/Diagram is a data model that is intended to be used with a database system – External schemas are defined for the users of a database – Logical schema defines the representation as a collection of tables that are stored in a database server – Internal schema defines the representation used by the database server to store the tables in memory or files External schema 1 Database tables External schema 2 External schema 3 External level Logical to external mappings Logical schema Logical level Internal to logical mapping disk Internal schema Internal level Ikke redundant Redundant Ternary Isoleret model 1 Isoleret model 2 Isoleret model 3 Samlet model View Integration – View integration methods. • Merging different ”types of abstraction” • Goal in schema integration – to create a non-redundant unified (global) conceptual schema/diagram – completeness - all components must appear in the global schema/diagram – minimality - remove redundant concepts in the global schema/diagram – understandability - does global schema/diagram make sense? View Integration 1 View Integration 2 View Integration 3
© Copyright 2024