44 Module 3: Using a Conceptual Design for Data Requirements Overview.... 54 Identifying Functional Data Requirements ..... Identifying Nonfunctional Data Requirements .... 64 Module 4:
Trang 1Course Number: 1609A
Developed with KiZAN Corporation
http://www.kizan.com
Delivery Guide
Designing Data Services and Data Models
Trang 2Information in this document is subject to change without notice The names of companies, products, people, characters, and/or data mentioned herein are fictitious and are in no way intended
to represent any real individual, company, product, or event, unless otherwise noted Complying with all applicable copyright laws is the responsibility of the user No part of this document may
be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Microsoft Corporation If, however, your only means of access is electronic, permission to print one copy is hereby granted
Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property
1999 Microsoft Corporation All rights reserved
Microsoft, MS-DOS, MS, Windows and Windows NT are either registered trademarks or trademarks of Microsoft Corporation in the U.S.A and/or other countries
The names of companies, products, people, characters, and/or data mentioned herein are fictitious and are in no way intended to represent any real individual, company, product, or event, unless otherwise noted
Other product and company names mentioned herein may be the trademarks of their respective owners
Project Lead: Janet Robinson, Mark Bader Instructional Designers: Mark Bader, Shawn Lock, Michas Sadzak Program Managers: Mark Bader, Rama Biswas, Teresa Canady Subject Matter Experts: Mark Bader, Whitney Roberts (KiZAN Corporation), Janet Robinson,
Scott F Wilson (KiZAN Corporation)
Graphic Artist: Elizabeth Johanson (ArtSource, Inc.) Editors: Joyce Cox (Online Training Solutions, Inc.), Todd Duft (Write Stuff), Elizabeth Hui
Reese (Write Stuff)
Testers: Chris Baca (Digital Counterbalance), Rick Carr (Digital Counterbalance) Production Support: Linda Lu Cannon (Write Stuff), Marlene Lambert (Online Training
Solutions, Inc.), Eric Wagoner (Write Stuff)
Manufacturing Support: Julie Challenger, John Williams Product Manager: Ron Wodaski
Business Manager: Roger Gerdes Authors: Mark Bader, Whitney Roberts (KiZAN Corporation), Janet Robinson, Scott F Wilson
(KiZAN Corporation)
Course Number: 1609A Part Number: X04-99424 October 1999
Trang 3Contents iii
Contents
Introduction
Introductions 3
Course Materials 4
Prerequisites 5
Microsoft Certified Professional Program 6
Facilities 7
Module 1: Course Overview Overview 11
Business Solutions Design Curriculum 12
Curriculum Vision and Purpose 13
Courses in the Curriculum 14
Curriculum Case Study 15
Overview of This Course 16
Course Vision and Purpose 17
Course Objectives 18
Modules in This Course 19
Activity 1.1: Categorizing Existing Information 21
Module 2: Solution Design Processes Overview 25
Design Processes 26
The MSF Process Model 27
Requirements Gathering 29
The MSF Design Process Model 30
Data and the MSF Design Process Model 32
Benefits of the Design Process 33
Services-Based Design 34
The MSF Application Model 35
Logical Network of Cooperating Services 36
Data Services 37
Examples of Services 38
Benefits of Services-Based Design 39
Activity 2.1: Identifying Services 40
Review 41
Guidelines 42
Review Questions 43
Looking Forward 44
Module 3: Using a Conceptual Design for Data Requirements Overview 47
Investigation Process 48
Gathering Information 49
Analyzing Information 50
Creating Use Cases 51
Data Requirements 52
Characteristics of Data Requirements 53
Categories of Data Requirements 54
Identifying Functional Data Requirements 56
Trang 4Identifying Nonfunctional Data Requirements 57
Activity 3.1: Identifying Data-Related Use Cases and Data Requirements 58
Validating Data Requirements 59
Activity 3.2: Relating Data Requirements to Conceptual Design 60
Review 61
Guidelines 62
Review Questions 63
Looking Forward 64
Module 4: Deriving a Logical Data Design Overview 67
Logical Data Design 68
The Need for a Logical Data Design 69
Deriving Logical Data Services 70
Entities and Attributes 72
Overview of Entities and Attributes 73
Deriving Entities 74
Deriving Attributes 75
Activity 4.1: Deriving Entities and Attributes from Data Requirements 76
Data Relationships 77
Overview of Data Relationships 78
Identifying Relationships Between Entities 79
Overview of Cardinality and Existence 80
Determining Cardinality 81
Determining Existence 82
Entity/Relationship Modeling 83
Syntax 84
Creating the Logical Data Model 86
Activity 4.2: Creating a Logical Data Model 88
Review 89
Guidelines 90
Review Questions 91
Looking Forward 92
Module 5: Normalizing the Logical Data Design Overview 95
Implementing Entity Relationships 96
Using Keys 97
Primary Keys 98
Foreign Keys 99
Examples of Primary and Foreign Keys 100
Activity 5.1: Identifying Keys in the Logical Model 101
Normalization Basics 102
Normalizing Logical Models 103
Creating a First Normal Form Data Model 105
First Normal Form Example 106
Moving to a Second Normal Form Data Model 107
Creating a Third Normal Form Data Model 108
Third Normal Form Example 109
Benefits of Normalization 110
Trang 5Contents v
Activity 5.2: Normalizing Data 111
Review 112
Guidelines 113
Review Questions 114
Looking Forward 115
Module 6: Deriving a Physical Data Design Overview 119
Physical Data Design 120
Describing a Physical Data Model 121
Identifying Database Tables and Fields 123
Common Data Types 124
Implementing Relationships 125
Implementing One-to-One Relationships 126
Implementing One-To-Many Relationships 127
Implementing Many-To-Many Relationships 128
Activity 6.1: Translating the Logical Data Design 129
Data Optimization Techniques 130
Goals of Optimization 131
Optimizing for Creation of Data 133
Optimizing for Retrieval of Data 134
Optimizing for Updating Data 136
Considerations for Deleting Data 138
Activity 6.2: Optimizing a Physical Data Design 139
Review 140
Guidelines 141
Review Questions 142
Looking Forward 143
Module 7: Implementing Data Integrity Overview 147
Overview of Data Integrity 148
Data Integrity Categories 149
Referential Integrity 150
Data Validation 151
Identifying Data Integrity Requirements 153
Activity 7.1: Identifying Data Integrity Requirements 154
Implementing Data Integrity Requirements 155
Identifying Business Rules 156
Deploying Business Rules and Data Integrity Requirements 157
Implementing in the Database 158
Implementing Programmatically 160
Implementation Guidelines 162
Activity 7.2: Determining Data Integrity Implementations 163
Review 164
Guidelines 165
Review Questions 166
Looking Forward 167
Module 8: Designing Data Services Overview 171
Trang 6Overview of Data Services 172
Data Services Design 173
Deploying Data Services 175
Accessing Relational Data 177
OLE DB and ODBC 178
ADO, RDO, and DAO 179
Selecting a Data Access Technology 181
Accessing Host-Based Systems 183
Host-Based Data Access Design 184
Accessing Host-Based Data and Applications 185
Selecting a Legacy Data Access Technology 186
Activity 8.1: Selecting Data Access Technologies 187
Review 188
Guidelines 189
Review Questions 190
Looking Forward 191
Module 9: Data Storage Considerations Overview 195
Choosing a Database Product 196
User Community 197
System Performance 198
System Maintenance 199
Data Storage Technologies 201
Microsoft Excel 202
Microsoft Jet 203
Microsoft Visual FoxPro 204
MSDE 205
SQL Server 207
Data Storage Considerations 208
Backup and Restore 209
RAID Technologies 211
Clustering 213
Disaster Recovery 214
Activity 9.1: Data Quiz 216
Review 217
Guidelines 218
Review Questions 219
Looking Forward 220