Transcript جلسه پنجم2
سيستمهاي اطالعات مديريت هفته پنجم فهرست مطالب • • • مدلسازي داده اي نمادهايERD رابطه – – – – – • • 2 • • • • • انواع رابطه درجه ارتباط رابطه بازگشتي ارتباطات دوگانه و چند گانه موجوديت مشاركتي قدم هاي ترسيم ERD مفاهيم پايگاه داده فرآيند طراحي پايگاه داده اصول نرمال سازي تبديل ERDبه پايگاه داده تبديل ارتباطهاي ERDدر پايگاه داده طراحي پايگاه داده و نرمال سازي از روي فرم اطالعاتي هفته پنجم مدلسازي داده اي • 3 • مدلسازي داده اي تكنيكي است كه داده هاي سيستم را سازماندهي كرده و مستند مي كند .به مدلسازي داده اي مدلسازي پايگاه داده نيز گفته مي شود زيرا ساختار داده ها و حفظ آن در سيستم توسط پايگاه داده ها مي باشد .در برخي از مواقع به آن مدلسازي اطالعات نيز گفته شده است. به مدل داده اي ساخته شده دياگرام ارتباط موجوديت ها گفته ميشود )Entity Relationship Diagram (ERD هفته پنجم مدلسازي داده اي • كليد (()Key)Identifier – – 4 – هفته پنجم يك مشخصه يا مجموعه اي از مشخصه هاي موجوديت است كه براي هر نمونه از موجوديت ،ارزش واحدي (يگانه) اختيار مي كند. ممكن است چند مشخصه از يك موجوديت قابليت كليد شدن را داشته باشند كه به آنها كليد هاي كانديد ( Candidate )Keyاطالق مي شود. بين كليد هاي كانديد مشخصه اي كه در تمام مواقع به يك نمونه خاص از موجوديت اشاره كند و ارزش تهي اختيار نكند به عنوان كليد اصلي( )Primary Keyانتخاب مي شود نمادهايERD 5 هفته پنجم نمادهايERD • مثال:يك نويسنده مي تواند يك يا چند كتاب تاليف كند و يك كتاب خاص فقط توسط يك نويسنده (در اين مثال ساده فرض بر اين است كه هر كتاب توسط يك نويسنده ايجاد مي شود) توسعه يافته است .اين كتاب مي تواند در يك يا چند كتابخانه نگهداري شود و يك كتابخانه شامل كتابهاي مختلفي است .نمودار ( )ERDاين مثال ساده بصورت ذيل خواهد بود : 6 هفته پنجم رابطه • رابطه اي است كه در واقعيت بين يك موجوديت با يكي يا چند موجوديت ديگر در سيستم وجود دارد .در واقع رابطه ها وقايعي را بيان مي كنند كه موجوديت ها را به هم متصل ( مرتبط ) مي سازد 7 هفته پنجم رابطه • انواع رابطه – ارتباط يك به يك ( )1:1 B – 8 هر يك از نمونه هاي موجوديت )B(Aفقط با يكي از نمونه هاي موجوديت )A(Bارتباط دارد پاركينگ هفته پنجم A پرسنل شركت رابطه • انواع رابطه – ارتباط يك به چند ()1:m B – 9 هر يك از نمونه هاي موجوديت Aبا يك يا چند نمونه از موجوديت B ارتباط دارد در حاليكه هر يك از نمونه هاي موجوديت Bفقط با يكي از نمونه هاي موجوديت Aارتباط دارد سفارش خريد هفته پنجم A مشتري رابطه • انواع رابطه – ارتباط چند به چند ()m:n B – 10 هر يك از نمونه هاي موجوديت Aيا Bبا يك يا چند نمونه از موجوديت Bيا Aارتباط دارد. كاال هفته پنجم A سفارش خريد رابطه • انواع رابطه پيشرفته 11 هفته پنجم رابطه • درجه ارتباط – 12 هفته پنجم درجه ارتباط بيانگر تعداد موجوديت هائي است كه در ارتباط مشاركت دارند. رابطه • رابطه بازگشتي – 13 هفته پنجم رابطه بازگشتي ارتباط نمونه هاي يك موجوديت يكسان را نشان مي دهد. رابطه • ارتباطات دوگانه و چند گانه – – – 14 هفته پنجم ارتباط باينري :ارتباط بين دو موجوديت مي باشد. ارتباط سه گانه :ارتباط بين سه موجوديت مي باشد براي بيش از سه موجوديت ارتباط چندگانه ناميده مي شود. رابطه • موجوديت مشاركتي – 15 هفته پنجم موجوديتي است كه در اصل يك رابطه است وليكن چون اطالعات دارد به عنوان موجوديت تلقي مي شود .كليد اصلي موجوديت مشاركتي از موجوديت هاي مرتبط به ارث برده مي شود كه به ان موجوديت ها والد گفته مي شود .در واقع كليد اصلي موجوديت مشاركتي كليد تركيبي است كه هر بخش از كليد به يكي از نمونه هاي موجوديت ها اشاره مي كند .به موجوديت مشاركتي ،موجوديت اتصالي نيز گفته مي شود و معمول ارتباط هاي چند به چند مي توانند با استفاده از يك موجوديت مشاركتي به ارتباط هاي دوگانه يك به چند تبديل مي شوند. رابطه • موجوديت مشاركتي – ارتباط موجوديت كتاب را با موجوديت كتابخانه در نظر بگيريد. كتابخانه – 16 هفته پنجم كتاب ارتباط از نوع چند به چند است .اين ارتباط حاوي اطالعات است .به عنوان مثال مي توان به جانمايي ( )Locationكتاب در كتابخانه اشاره كرد .در اين صورت مي توان با تعريف يك موجوديت مشاركتي عالوه بر بيان ارتباط چند به چند با ارتباط هاي يك به چند اطالعات رابطه را نيز نمايش داد. قدم هاي ترسيم ERD • • • • 17 • • موجوديت هاي سيستم را تعريف كنيد مشخصه هاي اطالعاتي هر موجوديت را تعريف و كليد اصلي آنها را مشخص نمائيد. با ترسيم يك نسخه اوليه رابطه بين موجوديت ها را مشخص كنيد. نوع ارتباطات را مشخص كنيد و در صورت نياز موجوديت هاي مشاركتي را تعريف كنيد. ترسيم ERDيك عملي است كه بايد بارها مورد بازنگري و تجديد نظر قرار گيرد تا تكميل شود. لزم به ذكر است كه ذخيره داده ها( )Data Storeدر DFDبه عنوان موجوديت در نظر گرفته مي شوند. هفته پنجم قدم هاي ترسيم ERD 18 هفته پنجم مفاهيم پايگاه داده • • • • • 19 • • :A fieldهر فيلد پياده سازي فيزيكي مشخصه داده اي يك موجوديت مي باشد كه كوچكترين واحد داده اي با معني مي باشد. :A primary keyفيلدي مي باشد كه مقدار يا ارزش آن به يك ركورد يگانه از فايل اشاره مي كند :A descriptive fieldهر يك از ساير فيلدهاي غيركليدي كه داده هاي تجاري سازمان را ذخيره مي كنند. :A foreign keyفيلدي است كه در يك فايل به عنوان كليد اصلي تعريف شده است. :A recordيك ركورد مجموعه اي از فيلدها مي باشد كه در فرمت و ساختاري از پيش تعريف شده در يك فايل ذخيره مي شوند .هر ركورد در يك فايل (جدول) مجموعه اي از فيلدها (مشخصه ها) براي يك نمونه از موجوديت است. :A Fileمجموعه اي از ركورد ها ي مرتبط با يك موجوديت كه اطالعات نمونه هاي موجوديت است تشكيل يك فايل مي دهند. :A databaseيك پايگاه داده نيز مجموعه اي از فايل هاي بهم مرتبط مي باشد .بدين معني كه ركوردي از يك فايل با ركوردهائي از فايل هاي ديگر مرتبط مي باشد. هفته پنجم مفاهيم پايگاه داده • • 20 • :The data typeنوع داده براي هر مشخصه ،مقادير و نوع داده هائي كه مي تواند اختيار كند را بيان مي كند ( .حروف، عدد ،تاريخ ،فيلم و ) ... :The domainدامنه مقاديري كه هر مشخصه مي تواند اختيار كند را تعريف مي كند. :The default valueارزش پيش فرض را براي مشخصه داده اي در صورتي كه كاربر وارد نكند در نظر مي گيرد. هفته پنجم فرآيند طراحي پايگاه داده در مراحل طراحي پايگاه داده مي بايست داده هاي ذيل در نظر گرفته شوند : • .1 .2 .3 • 21 هفته پنجم عناصر داده اي سيستم در وروديها يا خروجيها عناصر داده اي در فرمها يا گزارشات عناصر داده اي موجود در ERD يك پايگاه داده رابطه اي خوب شامل جداولي است كه داراي حداقل تعداد داده هاي مازاد يا تكراري است و به كاربران اجازه مي دهد كه به راحتي داده به جداول اضافه كنند يا حذف يا اصالح نمايند. اصول نرمال سازي • نرمال سازي فرايندي است كه ساختار پيچيده داده ها را به ساختارهاي ساده و پايدار تبديل مي كند. 22 هفته پنجم اصول نرمال سازي • نرمال سازي نوع اول()1NF – 23 هفته پنجم نبايد عناصر داده اي در سطر ها تكرار شوند يعني داده هاي مازاد نبايد وجود داشته باشند براي پرهيز از تكرار داده ها جدول به دو جدول تجزيه مي شود تا داده هاي ثابت در يك جدول و داده هاي متغير در جدول ديگري ذخيره گردند. اصول نرمال سازي • مثال از نرمال سازي نوع اول(.)1NF 24 هفته پنجم اصول نرمال سازي • جداول نرمال شده نوع اول – 25 هفته پنجم جدول فوق به دو جدول ذيل تجزيه مي شود : اصول نرمال سازي • نرمال سازي نوع دوم()2NF – 26 هفته پنجم جدول بايد شكل نرمال اول را داشته باشد و هر يك از فيلدهاي غير كليدي جدول تنها با مشخص شدن ارزش كل كليد بدست آيند نه تنها با بخش ي از كليد اصلي .اين حالت در جايي بوجود مي آيد كه كليد اصلي جدول تركيبي از مشخصه ها باشد و تنها در صورتي كه تمام فيلدهاي غيركليدي با مشخص شدن كل تركيب كليد بدست آيند مشكلي نيست در غير اينصورت بايد جدول تجزيه شود. اصول نرمال سازي • مثال از نرمال سازي نوع دوم(.)2NF 27 هفته پنجم اصول نرمال سازي • جداول نرمال شده نوع دوم – 28 هفته پنجم جدول فوق به دو جدول ذيل تجزيه مي شود : اصول نرمال سازي • نرمال سازي نوع سوم()3NF – 29 هفته پنجم جدولي شكل نرمال سوم را دارد كه اول شكل نرمال نوع دوم را داشته باشد و ثانيا هيچ رابطه وابستگي بين دو يا بيشتر از فيلدهاي غير كليدي وجود نداشته باشد. اصول نرمال سازي • مثال از نرمال سازي نوع سوم(.)3NF 30 هفته پنجم اصول نرمال سازي • جداول نرمال شده نوع دوم – همانطور كه مالحظه مي كنيد يك وابستگي تابعي بين فروشنده و ناحيه فروش وجود دارد زيرا هر شخص فروشنده اي فقط به يك ناحيه فروش اختصاص دارد .مشكالتي كه اين وابستگي تابعي مي تواند ايجاد كند عبارتند از : « « « 31 اگر يك شخص جديدي به عنوان فروشنده بخواهد به يك ناحيه تخصيص يابد نمي تواند مگر اينكه يك مشتري به آن تخصيص يابد. اگر به عنوان مثال مشتري 6837از جدول حذف شود آنگاه اطالعات Hernandezناحيه شرق نيز حذف مي شود. اگر Smithبخواهد Hernandezجابجا شوند آنگاه اطالعات زيادي بايد جابجا شوند. – اين مشكالت مي توانند با تجزيه جدول به دو جدول حل شوند : ))Sales ( CUSTOMER_ID , Name , Sales person (Foreign Key ) Person ( Sales person , Region هفته پنجم تبديل ERDبه پايگاه داده پايگاه داده را مي توان با شناخت داده ها از فرمها ،گزارشات و داده هاي ورودي يا خروجي سيستم شناسايي و پايگاه داده ها را ايجاد كرد .اگر مدل داده اي ( ) ERDبراي سيستم تهيه شده باشد آنگاه براحتي مي توان آنرا تبديل به پايگاه داده كرد. • .1 .2 32 .3 .4 هفته پنجم هر موجوديت در ERDتبديل به يك جدول در پايگاه داده مي شود مشخصه هاي هر موجوديت فيلدهاي جدول و كليد اصلي آن نيز همان كليد اصلي موجوديت مي باشد روابط موجود در ERDممكن است تبديل به كليدهاي خارجي و يا جدول هاي مجزا شوند سپس جداول ايجاد شده نرمال مي شوند تبديل ارتباطهاي ERDدر پايگاه داده • 33 رابطه يك به يك Binary or Unary relationship : 1:1 كليد اصلي در دو جدول يكسان مي باشد. • رابطه يك به چند Binary 1:N relationship كليد اصلي جدول ( )1به عنوان كليد خارجي در جدول ) ( Nوارد مي شود • رابطه چند به چند يك جدول جديد ايجاد شده و كليد اصلي آن تركيب كليدهاي اصلي دو موجوديت (جدول ) مي شود. هفته پنجم در پايگاه دادهERD تبديل ارتباطهاي :مثال مشتري • 1 انجام N سفارش 34 Customer ( Customer ID , Name , Address , Account) Order (Order ID , Order date , Dispatch date , Customer ID (Foreign Key)) هفته پنجم در پايگاه دادهERD تبديل ارتباطهاي :مثال سفارش • M خريد N محصول 35 Order (Order ID , Order date , Dispatch date) Product ( Product ID , Name,…) Purchase ( Order ID , Product ID , Order Amount) هفته پنجم طراحي پايگاه داده و نرمال سازي از روي فرم اطالعاتي 36 هفته پنجم طراحي پايگاه داده و نرمال سازي از روي فرم اطالعاتي • براي طراحي پايگاه داده و اعمال اصول نرمالسازي جدولي بصورت ذيل طراحي شده است كه داده ها در اين جدول سازماندهي شده و براي موجوديت هاي سيستم تعريف شده و سپس به ترتيب در ستونهاي جدول نرمال مي شوند. 37 سطح : 1 :داده هاي غير تكراري : 2داده هاي تكراري : 3داده هاي تكراري زيرگروه داده هاي تكراري هفته پنجم طراحي پايگاه داده و نرمال سازي از روي فرم اطالعاتي 38 هفته پنجم طراحي پايگاه داده و نرمال سازي از روي فرم اطالعاتي 39 هفته پنجم طراحي پايگاه داده و نرمال سازي از روي فرم اطالعاتي 40 هفته پنجم طراحي پايگاه داده و نرمال سازي از روي فرم اطالعاتي 41 هفته پنجم