94 4. Data Flow : สัญลักษณ์ท่ีใชแ้ ทนกระแสข้อมูลที่เดนิ ทางจากจดุ หน่ึงไปยงั อีกจุดหนึ่งโดยชื่อของขอ้ มลู ควรสื่อให้เห็นเป็นภาพรวมของข้อมูลขุดนั้นไม่เน้นรายละเอียด เช่น ข้อมูลพนักงาน ข้อมูลนักศึกษา ข้อมูล ตรวจสอบสินคา้ รายการซื้อสินคา้ รายการถอนเงนิ หรือฝากเงนิ เป็นต้น
95 การเขียนแผนภาพกระแสขอ้ มูลท่ีไมถ่ ูกต้อง ในการออกแบบแผ่นภาพกระแสข้อมลู ควรพึง่ ระวงั การออกแบบใหม้ ีความถูกต้องตามทำงาน ซึง่ สามารถ ตรวจสอบไดว้ ่าแผ่นภาพงกล่าวนั้นถูกตอ้ งหรือไม่จากตารางดังต่อนี้
96 ระดับชั้นของแผนภาพกระแสขอ้ มูล การเขียนแผนภาพกระแสข้อมลู คงไม่สามารถท่จี ะเขียนให้สำเรจ็ ในรูปเดียวกันได้ทั้งหมด เพราะขนาดของ รูปจะใหญ่มาก และมีขั้นตอนการไหลของข้อมูลที่ชับซ้อนและยากต่อการทำ ความเข้าใจ ซึ่งจะขัดกับประโยชน์ที่ คาดว่าจะได้รับ ดังนั้น การเขียนแผนภาพกระแสข้อมูลจึงมีการ แบ่งระดับชั้น จากระดับชั้นบนสุดไปถึงระดับล่าง ซึ่งจะทำใหง้ า่ ยตอ่ ความเข้าใจและการนำไปใชง้ าน ใหเ้ กดิ ประสิทธภิ าพได้ โดยแบ่งเปน็ ระดบั ช้ันต่าง ๆ ได้ดังนี้ 1. แผนภาพบริบท (Context Diagram) 2. แผนภาพกระแสข้อมูลระดับ 0 (DFD Level 0) 3. แผนภาพกระแสข้อมูลระดบั ล่าง (Lower Level Diagram) แผนภาพบริบท การเขียนแผนภาพบริบท เป็นการออกแบบแผนภาพกระแสข้อมูลระดับสงู สุดหรือเรียกว่าระดับหลักการ (Context Diagram) ซึ่งจะอธิบายภาพรวมของกระแสข้อมูลที่เกิดขึ้นทั้งหมดภายในระบบในรูปแบบอย่างง่าย ๆ และทำให้ทราบว่าขอบเขตการทำงานของระบบนั้นมีอะไรบ้าง สำหรับการออกแบบในระดับนี้จะไม่ใช้สัญลักษณ์ แทนแหลง่ เกบ็ ข้อมลู (Data Store จะใช้สัญลกั ษณ์เพียง 3 ชนดิ เทา่ นั้น คอื แนวทางการออกแบบแผนภาพบริบททเี่ หมาะสม ควรดำเนินการตามขน้ั ตอนดังต่อไปนี้ 1. สัญลักษณ์การประมวลผล (Process) มีเพยี ง 1 รปู โดยวางไว้กึง่ กลางหน้ากระดาษ 2. ใหใ้ ชช้ ือ่ ระบบสารสนเทศที่กำลงั ออกแบบเปน็ ช่อื ของการประมวลผล และกำหนด หมายเลขการประมวลผลเปน็ เลข 0 3. ชื่อของสญั ลักษณ์ต่าง ๆ ไม่ควรเขยี นชอื่ ซ้ำกัน 4. ไมค่ วรเขยี นเส้นลากตัดกัน 5. ควรออกแบบให้ครอบคลุมเนอื้ หาท้ังหมดภายในหน้ากระดาษเดยี วกัน 6. ควรเขียนแผนภาพแบบสมดุล กลา่ วคือ จำนวนกระแสข้อมูลที่ออกจาก Process ควรมี จำนวนเทา่ กับจำนวนกระแสขอ้ มูลทวี่ ิง่ เข้า Process
97 ข้ันตอนการเขยี นแผนภาพบรบิ ท 1.เขยี นสัญลกั ษณ์การประมวลผลวางไว้ก่งึ กลางของเอกสาร เขียนหมายเลขการประมวลผล 0 และ กำหนดชื่อการประมวลผลเป็นชอ่ื ของระบบสารสนเทศท่ีกำลังออกแบบ 2.กำหนดแหล่งกำเนิดข้อมลู หรอื ดันทางของข้อมูลทเ่ี กีย่ วขอ้ งกับระบบใหค้ รบตามขอบเขตท่กี ำหนด 3. เขยี นสัญลักษณก์ ระแสข้อมลู โดยลำดับความสำคัญเร่มิ จากการเขียนกระแสข้อมูล ไหลเขา้ (Input) ผา่ นการประมวลผล แลว้ เขยี นกระแสข้อมูลท่ีไหลออก (Output) ลำดบั ท่ี 1 พนักงานจะต้องกำหนดขอ้ มลู สนิ ค้าเกบ็ ไวใ้ นระบบกอ่ น และจดั ทำเปน็ รายงานจำนวนสินคา้ ใน ร้าน
98 ลำดับที่ 2 ลกู ค้าซ้ือสนิ คา้ ภายในรา้ นโดยพนักงานคยี ์รายการขายสนิ ค้า หลังจากน้นั ระบบจะแสดงผลยอด รวมสนิ คา้ รบั ชำระเงนิ ค่าสินค้าจากลูกคา้ และพิมพใ์ บเสร็จให้กบั ลูกค้า ซ่ึงข้อมลู สว่ นน้จี ะเกิดขน้ึ หลังจากที่ พนักงานบันทึกข้อมูลสนิ ค้าเข้าสรู่ ะบบแลว้ จงึ ถือเปน็ ขนั้ ตอนที่ 2 ลำดบั ที่ 3 หลงั จากเสร็จสิน้ การขายในแตล่ ะวัน พนักงานจะจัดทำรายงานการขายสินคา้ ประจำวนั ให้กบั ผู้จัดการร้าน ลำดบั ท่ี 4 ผู้จัดการร้านจะตรวจสอบรายการขายสินค้าท่ีดีทสี่ ุดในแตล่ ะวัน และสรปุ ผลรายงานออกมา จดั เก็บไว้
99 ตัวอย่าง ในการออกแบบระบบบัตรคิวของร้านค้า พนักงานจะกำหนดคา่ ของบัตรควิ ในแตล่ ะวันโดยเมือ่ ลูกคา้ แต่ ละคนมาจองบตั รคิวแล้ว ระบบจะพิมพ์บัตรคิวใหก้ ับลูกค้า จากข้อมูลท่กี ำหนดให้ ควรกำหนดแหล่งกำเนิดขอ้ มลู ว่ามีใครเกี่ยวขอ้ งบ้าง และกระแส ขอ้ มลู ทจี่ ะต้องใช้ในแต่ละสว่ นคอื อะไร เช่น เมือ่ สรปุ ข้อมลู ตังกล่าวได้เรียบร้อยแล้ว กส็ ามารถนำมาเขียนแผนภาพบริบทไดอ้ ย่างครบถ้วนตามทร่ี ะบบ ตอ้ งการ ดงั นี้ รูปแสดงตวั อยา่ งแผนภาพบริบท ระบบสำรองตั๋วรถทัวร์
100 แผนภาพกระแสข้อมลู ระดับ 0 แผนการกระแสข้อมูลระดับ 0 (Data Flow Diagram Level 0) คือ แผนภาพที่เกิดขึ้นจากการแยก แผนภาพบริบทออกเป็นการประมวลผลย่อย ๆ โดยแสดงให้เหน็ ถึงแหล่งเก็บข้อมูลนั้น ๆ ประกอบในแผนภาพ ซ่ึง สิ่งสำคัญที่ตอ้ งระมดั ระวังคอื ต้องเขียนกระแสข้อมูลให้ครบตามจำนวนที่ปรากฎอยู่ในแผนภาพบริบท ไม่เขียนชื่อ ของกระแสข้อมูลขึ้นมาใหม่เพื่อป้องกันปัญหาที่อาจเข้าใจผิดว่าเป็นข้อมูลที่เกิดขึ้นใหม่ในการออกแบบแผนภาพ กระแสขอ้ มูลระดับ 0 สำหรับสัญลักษณ์การประมวลผลที่แตกย่อยออกมา ควรสื่อให้เห็นถึงขั้นตอนการทำงานของระบบที่มี ความเชื่อมโยงและต่อเนื่องกันอย่างมีความหมาย สามารถสื่อสารให้นักวิเคราะห์ระบบกับโปรแกรมเมอร์มีความ เข้าใจที่เหมือนๆ กัน โดยสัญลักษณ์การประมวลผลแตล่ ะชิน้ จะเขียนหมายเลขกำกับไว้ เริ่มจากเลข 1.0 2.0, 3.0, .. , x.0 เรียงลำดับต่อเนื่องกันไปเรื่อย ๆ ทั้งนี้ไม่จำเป็นต้องแสดงสัญลักษณ์แทนแหล่งกำเนิดข้อมูลก็ได้ เนื่องจาก ผูใ้ ชส้ ามารถยอ้ นกลับไปแหล่งกำเนิดข้อมูลได้ในแผนภาพบรบิ ท รูปแสดงตัวอยา่ งแผนภาพบรบิ ท ระบบสแกนบตั รนกั ศกึ ษา จากรูป เม่อื นำมาแยกออกเป็นแผนภาพกระแสข้อมลู ระดับ 0 จะยงั คงกระแสข้อมลู ที่เหมอื นกบั แผนภาพ บริบท เพยี งแต่เพ่ิมเฉพาะในสว่ นของแหลง่ เก็บข้อมลู เทา่ น้ัน
101 รูปแสดงแผนภาพกระแสข้อมลู ระดับ 0 ระบบสแกนบตั รนกั ศกึ ษา ตัวอย่างจากแผนภาพบริบทระบบบตั รควิ เม่อื นำมาวิเคราะห์ขัน้ ตอนการทำแลว้ จะสามารถแตกย่อย โปรเซส และกำหนดแหล่งเก็บข้อมูลทเ่ี กยี่ วข้องได้ ดังนี้ รปู แสดงแผนภาพกระแสข้อมลู ระดับ 0 ระบบการจองบัตรคิว
102 แผนภาพกระแสขอ้ มลู ระดับล่าง แผนภาพกระแสข้อมูลระดับล่าง (Lower Level Diagram) คือ แผนภาพที่เกิดขึ้นจากการแยกการ ประมวลผลในแผนภาพกระแสข้อมูลระดับ 0 ออกเป็นการประมวลผลย่อย ๆ ซึ่งเรียกว่า\"การแตกย่อยโปรเซส\" (Exploded) เพื่ออธิบายการทำงานของการประมวลผลนั้น ๆ ให้มีความเข้าใจมากยิ่งขึ้นในกรณีที่เห็นว่าการ ประมวลผลนั้นยังมีความชับช้อนอยู่ และยากต่อการเข้าใจโดยการแยกย่อยโปรเชสในระดับถัดมาจากแผนภาพ กระแสข้อมลู ระดบั 0 จะเรยี กว่า แผนภาพกระแสขอ้ มูลระดบั 1 (Data Flow Diagram Level 1) สำหรับสญั ลกั ษณ์การประมวลผลทแี่ ยกยอ่ ยออกมา จะกำหนดช่อื หมายเลขการประมวลผลเปน็ ลำดับย่อย จากหมายเลขการประมวลผลของแผนภาพกระแสข้อมูลระดับ 0 เช่น ถ้าแยกย่อยหมายเลขการประมวลผล 1.0 มาเป็นแผนภาพกระแสข้อมูลระดับที่ 1 ก็จะแยกออกได้เป็น 1.1. 1.2.1.X หรือถ้าแยกย่อยหมายเลขการ ประมวลผล 2.0 มาเปน็ แผนภาพกระแสข้อมูลระดับท่ี 1 กจ็ ะแยกออกไดเ้ ป็น 2.1, 2.2. 2.X เป็นตน้ นอกจากนี้ในการเขียนกระแสข้อมูลต้องเขียนให้ครบตามจำนวนที่มีอยู่ในแผนภาพกระแสข้อมูลระดับ 0 โดยไม่จำเป็นต้องเขียนแหล่งกำเนิดข้อมูลหรือต้นทางของข้อมูลด้วยก็ได้ เพราะสามารถเปิดย้อนกลับไปดูใน แผนภาพกระแสข้อมูลระดับ 0 ได้
103 รูปแสดงแผนภาพกระแสข้อมลู ระดับ 1 ของโปรเซสการจดั การบัตรคิว รูปแสดงแผนภาพกระแสขอ้ มลู ระดับ 1 ของโปรเซสการจองบัตรคิว
104 หน่วยที่ 9 หลักการออกแบบฐานข้อมลู สาระการเรยี นรู้ 1.หลกั การออกแบบฐานข้อมูล 2.ข้ันตอนการพัฒนาระบบฐานข้อมูล 3. แผนภาพอีอาร์ไดอะแกรม 4. ระดบั ของรีเรชนั ชิพ 5. การออกแบบฐานข้อมูลดว้ ย E-R Diagram (ERD) 6.การตรวจสอบความสมดลุ ระหวา่ งแผนภาพกระแสขอ้ มลู กบั แบบจำลองความสมั พนั ธข์ องข้อมูล จุดประสงคก์ ารเรียนรู้ 1.เข้าใจหลักการออกแบบฐานข้อมลู 2.บอกขน้ั ตอนการพัฒนาระบบฐานข้อมลู 3.เขา้ ใจหลกั การออกแบบฐานขอ้ มูลดว้ ยแผนภาพหรือออี าร์ไดอะแกรม 4.อธิบายขั้นตอนการออกแบบฐานข้อมูลดว้ ยแผนภาพอีอาร์ไดอะแกรม สมรรถนะประจำหนว่ ย 1. แสดงความรู้เกยี่ วกับหลักการออกแบบฐานข้อมูลในงานธรุ กิจขนาดเลก็ 2. ออกแบบแผนภาพอือ่ ารไ์ ดอะแกรมของฐานข้อมลู ขนาดเล็กได้ 3.มคี ณุ ลักษณะนสิ ยั ที่พึงประสงค์ และมีเจตคตทิ ่ดี ีในวิชาชพี คอมพวิ เตอร์
105 ฐานข้อมลู ถือเปน็ ส่วนหนง่ึ ของระบบการทำงานเกือบทุกระบบในปัจจบุ นั สำหรับระบบทคนโลยสี ารสน ทศท่ีใชค้ อมพิวเตอร์เข้ามาช่วยประมวลผล ดังนั้นระบบสารสนเทศทด่ี ยี ่อมเกดิ ขน้ึ ได้เมื่อมีระบบฐานข้อมลู ทีด่ ีดว้ ย เชน่ กัน สำหรับการออกแบบฐานข้อมลู อาจมองได้ ทง้ั ในมุมมองของศาสตรแ์ ละศิลป์ กล่าวคือ ผูอ้ อกแบบสามารถ ทำใด้ท้ังแบบไมม่ ีแบบแผนโดยใช้ประสบการณ์มาชว่ ยในการออกแบบ หรอื ออกแบบอยา่ งมีแบบแผนโดยใช้ เคร่อื งมือตามมาตรฐานมาออกแบบฐานข้อมลู อย่างไรกด็ หี ลกั การออกแบบฐานข้อมลู ที่ดี จะยึดหลกั การสำคัญ ดังต่อไปน้ี 1. ฐานชัมูลทีด่ ตี อ้ งลดความซำ้ ซ้อนของข้อมูล โดยเหน็ วา่ ข้อมูลทซ่ี ้ำซ้อนหรอื มีการจดั เก็บหลาย ๆ ทเ่ี ป็นสงิ่ ไมด่ ี เปลืองพ้นื ท่ี ไม่ถกู ต้อง และทำใหเ้ กิดความไม่สอดคล้องกัน 2. ฐานขอ้ มูลท่ีดีตอ้ งถกู ต้อง มีความสมบรู ณ์ มีความสอดคล้องและไมข่ ดั แยง้ กัน เพราะถ้าข้อมลู ไม่ถกู ตอ้ ง หรอื ขัดแยง้ กัน การดึงข้อมูลนั้นออกมาทำรายงาน หรือใชป้ ระโยชนอ์ ยา่ งอน่ื ย่อมผดิ พลาดตามไปด้วย 3. ฐานข้อมลู ท่ีดีจะเก็บไวท้ ่ีเดียวกัน และสามารถใชร้ ่ววมกนั ไดจ้ ากหนว่ ยวยงานทเี่ กยี่ วข้องผ่านโปรแกรม จัดการฐานขอ้ มลู (DBMS) ขน้ั ตอนการพฒั นาระบบฐานข้อมลู การพัฒนาระบบฐานข้อมลู เพื่อนำไปใชใ้ นระบบใดๆ ก็ตามจำเปน็ ต้องยึดหลักการสำคัญในการออกแบบ ดงั ทกี่ ลา่ วขา้ งตน้ และต้องอาศัยขัน้ ตอนการพัฒนาอย่างเป็นระบบเพราะการออกแบบระบบฐานข้อมลู ทด่ี ีย่อม ส่งผลให้การนำข้อมูลตังกลา่ วไปใชป้ ระโยชน์มีประสิทธภิ าพและตอนการพัฒนาระบบฐานตอบสนองความต้องการ ของงานนัน้ ๆ ไดด้ ตี ามไปดว้ ย ซึ่งขนั้ ฐานขอ้ มลู มีดงั น้ีซ่ึงเป็นเรื่องสำคัญ 1.กำหนดวัตถปุ ระสงค์ของฐานข้อมูล กำหนดวัตถปุ ระสงคข์ องของฐานข้อมลู ท่ตี ้องการนำไปใช้ประโยชน์ใหช้ ัดเจน 2.ค้นหาและจดระเบียบขอ้ มลู ที่ต้องการ รวบรวมขอ้ มูลทุกชนิดท่ีต้องการจัดทำเป็นฐานข้อมูลโดยพจิ ารณาที่เกิดขน้ึ จริงในปัจจุบนั และท่ีจะเกิดใน อนาคต เชน่ ชอื่ สินค้า ราคาสินค้า เป็นตน้ 3.แบง่ ข้อมูลลงตาราง แบง่ รายการข้อมลู ทีร่ วบรวมไดเ้ ป็นกลุ่ม ๆ หรือ หัวข้อหลัก ๆ เช่น สินค้า ใบส่งั ซื้อสินค้า ใบเสรจ็ รบั เงนิ ใบวางบลิ เป็นต้น ซึ่งหัวข้อเหล่านจี้ ะถูกนำไปสร้างเปน็ ตาราง
106 4.เปลี่ยนรายการขอ้ มลู ให้เป็นคอลัมน์ เลือกข้อมูลแตล่ ะรายการว่าจะจดั เกบ็ ไวท้ ี่ตารางไหนอย่างชดั เจน โดยข้อมลู ที่คดั แยกไปแตล่ ะตารางจะ กลายเปน็ เขตของข้อมลู หรอื คอลัมน์ของแตล่ ะตาราง 5.กำหนดคยี ห์ ลักของแตล่ ะตาราง แตล่ ะตารางจะต้องกำหนดคยี ์หลกั ซึ่งกค็ ือคอลมั นต์ ่าง ๆของตารางนน้ั เพ่ือระบุแตล่ ะแถวแบบไมซ่ ำ้ กัน เช่นแตต่ ารางลูกค้า อาจจะเลอื กคอลมั นร์ หสั ลกู คา้ เป็นคีย์หลัก 6.กำหนดความของตารางสมั มพนั ธ์ พิจารณาขอ้ มลู ของแต่ละตารางมีความสมั พันธเ์ ก่ยี วข้องกบั ตารางอื่นอย่างไร หลกั จากน้ันอาจเพิ่มเขตของ ขอ้ มูลหรือสร้างตารางใหมเ่ พื่อเชอ่ื มความสัมพนั ธ์ใหช้ ัดเจน 7.ปรบั ตารางการออกแบบให้ดีย่งิ ข้ึน วิเคราะหก์ ารออกแบบฐานขอ้ มลู ท่ดี ำเนินการมาตามข้างตน้ โดยทดลองเพิ่มระเบียนข้อมูลเพอื่ ตรวจสอบ ขอ้ ผดิ พลาด แลว้ ปรับแก้ตารางใหส้ มบรู ณ์มากย่ิงขึ้น 8.การใช้ Normalization ใชก้ ฎการ Normalization หรือการจดั การฐานข้อมูลในรปู แบบมาตรฐาน เพื่อพจิ ารณาโครงสรา้ งข้อมลู มี ความถกู ต้องหรือไม่ แล้วปรับแกต้ ามความจำเป็น จากข้อมูลตงั กล่าวจะพบวา่ การวิเคราะห์และออกแบบระบบจำเป็นตอ้ งอาศยั เครอ่ื งมือมากกว่า 1 ชนิต มาใชใ้ นการดำเนนิ งานเพือ่ ป้องกันข้อผดิ พลาดท่ีอาจจะเกิดข้นึ ได้ ดงั เชน่ จากบทเรียนทผี่ ่านมาถงึ แม้ว่าจะมกี าร วิเคราะห์ระบบโดยการใช้แผนภาพกระสข้อมูลแล้วก็ตามก็ยังไมเ่ พยี งพอเพราะแผ่นภาพกระแสข้อมูลเปน็ กร วิเคราะหค์ วามสมั พนั ธ์ระหวา่ งกระบวนการกับข้อมูล แต่ไม่ไดว้ เิ คราะห์ความสมั พันธ์ระหวา่ งข้อมลู แตล่ ะข้อมูล ภายในระบบน้นั ๆ ดังน้นั สำหรับบทเรียนนี้จะศึกษาเกีย่ วกับแบบจำลองขอ้ มูล (Data Model) ซง่ึ ใช้ในการอธบิ าย ความสัมพันธข์ องข้อมลู ภายในระบบโดยเครือ่ งมือทนี่ ิยมนำมาใช้ในการออกแบบจำลองขอ้ มลู กค็ ือ แผนภาพอีอาร์ ใดอะแกรม (Entity Relation Diagram: ERD)
107 แผนภาพออี าร์ไดอะแกรม (Entity Relation Diagram : ERD) คอื แผนภาพที่ใชแ้ สดงความสมั พันธ์ของข้อมลู ตา่ ง ๆ ทีจ่ ดั เก็บไวภ้ ายในระบบ ซ่ึงมาอยรู่ วมกันและเก็บไว้ ในท่ีเดยี วกนั จนกลายเป็นระบบฐานขอ้ มูล (Database System) โดยการออกแบบจะอยใู่ นรปู ของไดอะแกรมและ ใช้สญั ลักษณ์พน้ื ฐาน 3 ชนิด ได้แก่ เอนติต้ี (Entity) คือ สว่ นท่ีใชส้ ำหรับเกบ็ ขอ้ มลู แต่ละรายการภายในระบบที่กำลังจดั ทำอยู่มีเอกลัษณใ์ น ตัวเองซง่ึ เกิดข้ึนจากกลุ่มต่าง ๆ เช่น - บคุ คล เชน่ พนักงาน, อาจารย์, นกั ศกึ ษา, ผู้ใช้, ลูกคา้ เป็นตน้ - สถานท่ีเชน่ จังหวัด, ภาค, ทีอ่ ยู่ เป็นตน้ - วัตถุเชน่ สนิ คา้ , รายวชิ า, อาหาร, เคร่ืองจกั ร, อาคาร เป็นตน้ - เหตุการณ์เชน่ การขาย, การซอื้ , รายรบั , รายจา่ ย, ใบวางบลิ , ลงทะเบยี น เปน็ ตน้
108 แอตทรบิ วิ ต์ (Attribute) คือ คณุ สมบัติหรือคุณลกั ษณะเฉพาะของเอนตติ ี้นน้ั ๆ เชน่ - เอนตติ ้ีสนิ คา้ มีคุณสมบตั ิเฉพาะที่ตอ้ งการจดั เกบ็ ได้แก่ รหัสสนิ คา้ , ชื่อสนิ ค้า, ประเภท,ราคา รูปแสดงตวั อยา่ งการกำหนดแอตทรบิ วิ ตใ์ ห้กับเอนตติ ้สี นิ คา้ - เอนตติ ี้พนกั งาน มคี ุณสมบัตเิ ฉพาะทต่ี ้องการจัดเกบ็ ไดแ้ ก่ รหสั , ชอ่ื , สกลุ , เงนิ เดอื น ,ตำแหน่ง รูปแสดงตัวอย่างการกำหนดแอตทรบิ วิ ต์ใหก้ ับเอนตติ ี้พนกั งาน
109 แอตทริบิวต์ สามารถแบ่งออกไดเ้ ปน็ 6 ประเภท คอื รปู แสดงตวั อยา่ งประเภทของแอตทริบวิ ต์ 1.แอตทริบิวตอ์ ยา่ งง่าย (Simple Attributes) คือ แอตทรบิ วิ ตท์ ี่ไม่สามารถแบง่ แยกย่อยได้อีกแล้ว เช่น ราคาสนิ ค้า เงินเดอื น สว่ นสูง น้ำหนกั หนว่ ยกติ เป็นต้น 2.คอมโพสิตแอตทริบิวต์ (Composite Attributes) คือ แอตทรบิ วิ ต์ทีส่ ามารถแบ่งแยกย่อยไปเป็นแอ ตทริบิวต์ย่อยได้อีก ซึง่ ตรงกนั ข้ามกบั แบบแอตทรบิ ิวต์ อย่างง่าย เชน่ - แอตทรบิ วิ ต์ “ชือ่ สกลุ ”สามารถแบ่งแยกยอ่ ยไดเ้ ป็น แอตทรบิ วิ ตช์ ือ่ กับแอตทริบิวตส์ กุล - แอตทริบิวต์ “ที่อยู่” สามารถแบ่งแยกย่อยไดเ้ ป็นแอตทริบวิ ต์เลขท่ี ถนน ตำบล อำเภอ จงั หวดั และรหสั ไปรษณีย์ รูปแสดงตวั อยา่ งการกำหนดคอมโพสิตแอตทรบิ ิวต์
110 3.คยี ์แอตทรบิ ิวต์ (Key Attributes) คือ แอตทรบิ วิ ต์ท่สี ามารถบง่ บอกถึงเอกลักษณข์ องแอตทริบวิ ต์ นน้ั ๆได้ มคี ่าไม่ซ้ำกัน เวลาเขียนแอตทรบิ วิ ต์ต้องขดี เส้นใต้แอตทรบิ วิ ตท์ ี่เป็นคยี ด์ ้วย รปู แสดงตัวอย่างการกำหนดคียแ์ อตทรบิ วิ ต์รหสั สาขาและรหสั วชิ า 4. แอตทรบิ ิวตท์ ี่มคี ่าเดยี่ ว (Single-Value Attributes) คือ แอตทริบิวต์ทีม่ ีค่าของขอ้ มลู ได้เพยี งคา่ เดียว เช่น แอตทรบิ ิวต์เพศ จะระบุไดเ้ พียงชายหรอื หญงิ เพราะมนษุ ยม์ ีเพียงเพศเดียว หรอื แอตทรบิ ิวต์สถานะของ การชำระหนท้ี ี่กำหนดข้อมูลไดเ้ พียง 2 ค่า คือ Yes/No เป็นต้น รูปแสดงตวั อยา่ งการกำหนดแอตทรบิ ิวต์ที่มีคา่ เดยี่ ว 5.แอตทรบิ ิวที่มีหลายคา่ (Multi-Value Attributes) คือ แอตทริบวิ ต์มคี ่าของข้อมูลได้หลายค่า เชน่ แอตทริบวิ ตัวุฒิการศึกษา ที่สามารถแบ่งแยกย่อยออกได้เป็นหลาย เช่น ปรญิ ญาตรี ปริญญาโทปรญิ ญาเอก หรือ แอตทรบิ วิ เบอโทรศัพท์ ทสี่ ามาออกได้เป็นเบอร์โทรมือถือ เบอร์โทรสำนักงานเบอรโ์ ทรบ้าน เป็นตน้
111 รูปแสดงตวั อยา่ งการกำหนดแอตทริบวิ ตท์ มี่ คี ่าหลายคา่ 6.แอตทริบิวต์ท่ีไดจ้ ากการคำนวณ (Derived Attributes) คือ แอตทริบิวตท์ ่ีได้มาจากการคำนวณ โดยอาศยั คา่ ในแอตทรบิ วิ ตอ์ ื่น ๆ เชน่ คา่ ของอายุ ได้มาจากแอตทรบิ ิวต์วันเกิด หรือแอตทรบิ ิวตร์ วมเป็นเงิน ไดม้ า จากแอตทรบิ ิวต์ราคากบั แอตทรบิ วิ ตค์ ูณกัน เปน็ ตน้ รูปแสดงตัวอย่างการกำหนดแอตทริบิวต์ทไ่ี ดจ้ ากการคำนวณ
112 รเี ลชนั ชิพ (Relationship) คอื ความสมั พันธ์ทีเ่ กิดขน้ึ ระหวา่ งเอนตติ กี้ บั เอนติต้ี โดยชื่อของ ความสัมพันธ์จะใช้อธบิ ายความสมั พนั ธน์ น้ั ๆ และสว่ นใหญ่นยิ มใชค้ ำกริยาท่ีแสดงการกระทำ เชน่ สอน สังกัด เรียน ลงทะเบียน ประจำชนั้ มี เปน็ ตน้ และมชี ื่อความสมั พันธ์สัญลักษณท์ ใ่ี ช้แทนรเี ลชันชิพ คอื รูปสีเ่ หลยี่ มขนม เปียกปูนกำกบั อยภู่ ายใน ดงั ตัวอยา่ งต่อไปน้ี ความสัมพนั ธร์ ะหวา่ งเอนตติ ี้ สามารถแบ่งออกได้เปน็ 3 ชนิด คอื 1.ความสัมพนั ธแ์ บบหน่ึงต่อหนง่ึ (One-to-One Ralationship : 1 : 1) คือ ความสัมพันธ์ท่เี กิดขึ้น จากระเบียนขอ้ มูลเพียง 1 ระเบยี นในเอนติตี้ A ไปมีความสัมพันธก์ บั ระเบียนเพียง 1 ระเบียนในเอนตติ ี้ B และ ในทางกลับกนั ระเบยี นข้อมลู เพยี ง 1 ระเบียนในเอนติต้ี B ไปมีความสมั พันธก์ ับระเบียนเพียง 1 ระเบียนในเอนติต้ี A เทา่ นนั้ เช่น รปู แสดงรปู แบบความสัมพนั ธ์แบบ 1:1
113 2. ความสัมพนั ธแ์ บบหนึ่งตอ่ กลุม่ (One-to-Many Relationship : 1 : m) คือ ความสมั พันธท์ ่ี ระเบียน 1 ระเบียนของเอนติตี้ A ไปมคี วามสัมพนั ธ์กับระเบียนในเอนตติ ้ี B ได้หลายระเบียนและในทางกลับกัน ระเบยี นในเอนติตี้ B จะมีความสมั พันธก์ บั ระเบียนในเอนติต้ี A ไดเ้ พยี ง 1 ระเบียนเท่าน้ัน เอนติต้ี A เอนตติ ี้ B รปู แสดงรปู แบบความสัมพนั ธ์แบบ 1: m 3.ความสัมพันธ์แบบกลุ่มตอ่ กลุ่ม (Many-to-Many Relationship ; m : n) คอื ความสัมพนั ธท์ ่แี ต่ละ ระเบียนของเอนติต้ี A ไปมีความสมั พันธก์ บั ระเบียนหลายระเบยี นในเอนตติ ้ี B และในทางกลบั กนั ระเบยี นของเอน ติตี้ B จะมีความสมั พนั ธ์กับระเบยี นหลายระเบยี นในเอนตติ ้ี A รูปแสดงรูปแบบความสัมพันธแ์ บบ m : n
114 ระดับของรีเลชนั ชิพ ระดับของรเี ลชันชพิ แบ่งออกเป็น 1. รเี ลชนั ชพิ แบบยนู ารี (Unary Relationship) เป็นความสมั พันธท์ ี่มเี อนติตี้มาสัมพันธเ์ พียงเอนตติ ี้ เดียว 2. รเี ลชันชพิ แบบไบนารี (Binary Relationship) เปน็ ความสมั พนั ธ์ทม่ี ีเอนตติ ้ีมาสัมพนั ธ์ 3. รีเลชันชพิ แบบเทอรน์ ารี (Ternary Relationship) เปน็ ความสมั พันธ์ท่ีมเี อนติตีม้ าสัมพันธ์ 3 เอน ติ แสดงระดบั ของรเี ลชันชิพ สำหรับความสมั พันธ์ที่เกิดขนึ้ จากเอนตติ ้ีมากกวา่ 3 เอนติต้ี หาพบไดย้ ากจึงไม่มีชอ่ื เรยี กโดยเฉพาะ เหมอื นกบั ความสัมพนั ธท์ ้ังสามแบบดังท่ีกล่าวมาแลว้ ข้างต้น การออกแบบฐานขอ้ มลู ด้วย E-R Diagram (ERD) การออกแบบฐานข้อมูลด้วย E-R Diagram (ERD) 1.ศกึ ษาลายละเอยี ดและหนา้ ที่การทำงาน ได้แก่ ลักษณะการทำงานของระบบ ชน้ั การออกแบบ ฐานขอ้ มูลดว้ ย (E-R Diagram : ERD) การทำงาน และเอกสารรายงานตา่ ง ๆ 2.กำหนดเอนติตี้ (Entity) ทค่ี วรมอี ยใู่ นฐานข้อมูล โดยคำนึงถงึ ข้อมูลทง้ั หมด โดยคำนงึ ถึงข้อมูล ท้ังหมดที่จะจัดเก็บลงไปในฐานขอ้ มลู ว่าสามารถแบง่ ออกได้เปน็ กเ่ี อนนิตี้ โดยฐานข้อมูลหน่ึง ๆ อาจจะมี เอนนติ ้ีเปน็ จำนวนมากซึง่ กข็ ้ึนอยู่กบั จำนวนข้อมูลท่ีตอ้ งการจดั เกบ็ 3.กำหนดความสมั พนั ธร์ ะหวา่ งเอนตติ ีท้ ี่เก่ียวข้องว่าจะมีความสมั พันธ์กนั ด้วยเง่ือนไขใดและชนิด ความสัมพนั ธ์เปน็ อย่างไร
115 4.กำหนดแอตทรบิ วิ ตใ์ ห้กบั เอนติตีว้ ่าควรประกอบไปดว้ ยอะไรบ้าง และเป็นแอตทริบิวต์ ประเภทอะไร 5.กำหนดคีย์แอตทรบิ วิ ต์ของแต่ละเอนติซึง่ น้ันกห็ มายถึงการกำหนดคีย์หลัก (PrimaryKey) ตวั อยา่ งที่ 1 การออกแบบฐานขอ้ มูลดว้ ย ERD โรงเรียนแหง่ หนึง่ เปิดสอนระดับ ปวช. จำนวน 3 สาขาวชิ า ประกอบดว้ ย สาขาวิชาการบัญชี สาขาวชิ า การตลาด และสาขาวิชาคอมพวิ เตอร์ธรุ กิจ ซึ่งมคี วามสัมพันธ์ของข้อมลู ท่ีตอ้ งการจดั เก็บ ดงั น้ี - นกั เรยี นแตล่ ะคนจะเลือกเรยี นได้ 1 สาขาวชิ าเท่านน้ั - แตล่ ะสาขาวิชาจะมอี าจารยป์ ระจำหลายทา่ น แต่อาจารยจ์ ะสงั กดั ไดเ้ พยี งสาขาวชิ า เดียว - นักเรียนสามารถลงทะเบยี นเรียนไดม้ ากกว่า 1 วิชา - อาจารยส์ ามารถเปน็ ทป่ี รึกษานักเรยี นไดห้ ลายคน แตน่ ักศกึ ษามีอาจารย์ทป่ี รึกษาได้ เพียงคนเดียว จากข้อมลู ทก่ี ำหนดให้ เมื่อพจิ ารณาจะพบเอนติ (Entity) ทีเ่ กี่ยวข้อง ไดแ้ ก่ กำหนดคุณลักษณะของแอตทริบิวต์
116 การตรวจสอบความสมดลุ ระหวา่ งแพนภาพกระแสข้อมูลกับแบบจำลองความสัมพนั ธข์ องขอ้ มลู จากบทเรียนที่ผ่านมาจะพบว่าการวิเคราะห์แผนภาพกระแสข้อมูล (DFD) เป็นกระบวนการจำลอง ความสัมพันธ์ระหว่างกระบวนการ (Process) กับข้อมูล (Data) ส่วนแบบจำลองความสัมพันธ์ของข้อมูล (ERD) เป็นแบบจำลองที่เน้นไปในเรื่องของความสัมพันธ์ข้อมูลแต่ละข้อมูลที่มีต่อกัน ซึ่งแบบจำลองทั้ง 2 ต่างก็มี ความสำคัญกับการวิเคราะห์และออกแบบระบบทั้งส้ิน นักวิเคราะหร์ ะบบจะต้องศึกษาและตรวจสอบรายละเอยี ด ของแบบจำลองทั้งสองให้สอดคล้องและสัมพันธ์กัน อาทิเช่น ในแผนภาพกระแสข้อมูลเมื่อมีสัญลักษณ์ \" Data Store\" อะไรก็แล้วแต่ ในแผนภาพจำสองความสมั พันธ์ของขอ้ มลู (ERD) ก็ต้องมสี ัญลักษณ์ \"Entity\" ด้วยเชน่ กนั แสดงความสมดลุ ระหวา่ งสญั ลักษณ์ Data Store กับ Entity
Search
Read the Text Version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124