Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore ວິຊາ การออกแบบและพัฒนาระบบสารสนเทศ

ວິຊາ การออกแบบและพัฒนาระบบสารสนเทศ

Published by lavanh9979, 2021-08-24 09:10:19

Description: ວິຊາ การออกแบบและพัฒนาระบบสารสนเทศ

Search

Read the Text Version

การออกแบบผลลัพธ์ของระบบงาน | 368 แบบฝกึ หดั บทที่ 9 ตอนท่ี 1 ตอบคาถามดงั ตอ่ ไปนี้ 1. จงอธิบายวตั ถปุ ระสงคก์ ารออกแบบส่วนนาเข้า 2. การจัดสัดส่วนของฟอร์มมีส่วนประกอบส่วนหลักในการออกแบบก่ีส่วน แตล่ ะส่วนมีรายละเอียดอยา่ งไร 3. จงอธิบายขอ้ คานึงในการออกแบบหน้าจอนาเข้าข้อมลู 4. ยกตัวอย่างอุปกรณ์นาเข้าข้อมูล พร้อมอธิบายหน้าท่ีการทางานของอุปกรณ์ อยา่ งน้อย 3 อยา่ ง 5. การออกแบบสว่ นรายงานผลมีกปี่ ระเภท อะไรบ้าง แต่ละประเภทมกี ารรายงาน ผลลัพธอ์ ย่างไร 6. จงอธิบายความหมายการทางานของการออกแบบส่วนต่อประสานกับผู้ใช้ และมีรูปแบบการออกแบบกี่รูปแบบ อะไรบ้าง แต่ละรูปแบบมีรูปแบบการนาเสนอ อย่างไร ตอนท่ี 2 ใหน้ กั ศกึ ษาออกแบบระบบงาน ดังเงอ่ื นไขตอ่ ไปน้ี ร้านวุ้นรักใจจาหน่ายขนมเค้กแบบวุ้น มีวุ้นจาหน่าย มีการจัดเก็บข้อมูลพนักงาน การสั่งซื้อ รายการสินค้า ข้อมูลพนักงาน ข้อมูลลูกค้าบริษัท (จากการออกแบบแผนผงั กระแสข้อมลู และเขียน E-R Diagram แสดงความสัมพันธ์ระหว่างเอนทติ ี ในบทที่ 8) 1. ออกแบบฟอร์มรับข้อมูลแบบเอกสารสาหรับการจัดเก็บข้อมูลลูกค้าบริษัท และพนกั งานบรษิ ทั 2. ออกแบบหน้าจอนาเข้าข้อมูลในการจัดเก็บข้อมูลลูกค้าบริษทั และพนักงาน บรษิ ทั 3. ออกแบบหน้าจอนาเขา้ ขอ้ มูลการสัง่ ซอ้ื สนิ ค้า 4. ออกแบบรายงานผลสาหรับจอภาพผลลัพธ์การบันทึกข้อมูลลูกค้า และ พนกั งานบริษทั 5. ออกแบบรายงานผลรปู แบบเอกสารสรุปรายการสัง่ ซ้ือสนิ คา้

บทท่ี 10 การออกแบบฐานข้อมลู การวิเคราะห์ความต้องการจากผู้ใช้งานและผู้มีส่วนเก่ียวข้อง จะต้องมี กระบวนการสร้างแบบจาลองกระบวนการและแบบจาลองขอ้ มูล การแสดงรายละเอียด คาอธิบายถึงโครงสร้างข้อมูล ซึ่งได้กล่าวรายละเอียดไว้ในบทที่ 8 แบบจาลองข้อมูล แบ่งได้ 3 ระดับ คือแบบจาลองข้อมูลเชิงแนวคิด เชิงตรรกะและเชิงกายภาพ ในบทน้ี จะอธิบายการออกแบบจาลองเชิงตรรกะที่ออกแบบฐานข้อมูล ที่เกิดจากการวิเคราะห์ แบบจาลองเชิงแนวคดิ โดยการแปลง E-R มาอยใู่ นรปู แบบฐานขอ้ มูล กาหนดคณุ สมบัติ ของเขตข้อมูลแบบจาลองฐานข้อมูลเชิงสัมพันธ์ กระบวนการปรับบรรทัดฐาน (Normalization) การรกั ษาความคงสภาพของขอ้ มูล ความรูเ้ ก่ยี วกับฐานขอ้ มลู เชงิ สัมพนั ธ์ ฐานข้อมูลเชิงสมั พันธ์ เป็นฐานข้อมูลท่ีมีลกั ษณะการจดั ข้อมลู แบบตาราง 2 มิติ แนวนอนและแนวตง้ั ทีเ่ รียกวา่ แถว หรือคอลัมน์ สามารถรองรบั ความสมั พนั ธ์ไดท้ ้ังหน่ึง ต่อหน่ึง หน่ึงต่อกลุ่ม กลุ่มต่อกลุ่ม มีคาศัพท์ท่ีเกี่ยวข้องกับฐานข้อมูลเชิงสัมพันธ์ ดังตารางท่ี 10.1 ตารางเปรยี บเทียบคาศพั ท์ ตารางที่ 10.1 เปรียบเทยี บคาศพั ทเ์ ก่ียวกับฐานขอ้ มลู เชิงสมั พันธ์ คาศพั ทเ์ ทคนคิ คาศพั ทท์ ่ัวไป ความหมาย รีเลชน่ั (Relation) ตาราง (Table) แหล่งข้อมลู รปู แบบตาราง ทเู พลิ (Tuple) แถว (Row) แถวของตาราง แอตทรบิ ิวต์ (Attribute) คอลมั น์ (Column) คอลัมนข์ องตาราง

การออกแบบฐานข้อมลู | 370 1. ประเภทของรีเลชัน การจดั การระบบการจัดการฐานขอ้ มลู มปี ระเภทของรีเลชัน 2 ประเภท ดงั นี้ 1.1 ความสัมพันธ์หลัก (Base Relation) เป็นการสร้างความสัมพันธ์ที่ ถูกกาหนดข้ึนเพ่ือเก็บข้อมูลและนาข้อมูลไปใช้ ด้วยการใช้ภาษาในการจัดการข้อมูล ภาษาสาหรับนยิ ามขอ้ มูล (Data Definition Language) เช่น คาสง่ั สร้างตาราง เป็นตน้ 1.2 มุมมอง (View) การใช้งานฐานข้อมูลของผู้ใช้งานมีลกั ษณะการใช้งาน แตกต่างกันจึงต้องสร้างฐานข้อมูลท่ีสร้างความสัมพันธ์แบบจอลองขึ้น กาหนดมุมมอง ทตี่ นเองใชง้ าน 2. คณุ สมบัติของรเี ลชัน 2.1 ตอ้ งมชี ื่อกากับทุกรเี ลชนั นและชื่อต้องไมซ่ า้ กนั 2.2 แต่ละรเี ลชนั จะมีคา่ แอตทริบวิ ตท์ ีต่ ้องไม่มีค่าซา้ กัน 2.3 แต่ละรีเลชนั จะมคี า่ ทูเพลิ ทีต่ อ้ งไม่มีค่าซา้ กนั 2.4 การกาหนดค่าของข้อมูล จะเป็นไปตามข้อกาหนดค่าของข้อมูลในแต่ ละ แอตทริบิวต์ 2.5 การเรยี งลาดับของทเู พลิ ไม่มีความสาคัญใดๆ 2.6 การเรยี งลาดบั ของแอตทริบวิ ต์ ไม่มีความสาคัญใดๆ 3. คยี ์ (Key) คีย์ คือการกาหนดคุณสมบัติความสัมพันธ์ของแอตทริบิวต์ ให้มีความเป็น เอกลกั ษณ์ ไม่ซ้า หรอื การบนั ทกึ ขอ้ มูลกาหนดค่าจะต้องไม่มีค่าวา่ ง หรือกาหนดค่าเพ่ือ ใช้ในการค้นหาขอ้ มูลสามารถกาหนดได้หลายประเภท ดงั นี้ 3.1 คี ย์ หลั ก (Primary Key) คื อ การก าหนดคุ ณสมบั ติ ให้ เ ป็ นคี ย์ ที่มีเอกลักษณ์ ไม่สามารถว่างได้ และไม่ซ้ากัน เช่น รหัสลูกค้า รหัสอาจารย์ เป็นต้น ดังภาพท่ี 10.1 แสดงตัวอย่างแอตทรบิ ิวต์มีคณุ สมบัติคยี ์หลัก รหสั ลกู ค้า ชอ่ื สกุล ทอ่ี ยู่ โทรศพั ท์ รหสั อาจารย์ ชอื่ สกุล ที่อยู่ โทรศัพท์ ภาพท่ี 10.1 แอตทรบิ ิวต์มคี ณุ สมบตั ิคีย์หลัก

การออกแบบฐานข้อมลู | 371 3.2 คีย์ผสม (Composite Key) คือ คีย์ท่ีกาหนดร่วมกับคีย์หลัก เพื่อไม่ให้ การบันทึกข้อมูลซ้าซ้อน เช่น การบันทึกเสนอโครงการบันทึกงบประมาณ จะมีการ กาหนดคุณสมบัติคีย์ผสมเป็นรหัสงบประมาณ ปีงบประมาณ ดังภาพที่ 10.2 แสดง ตวั อย่างแอตทรบิ วิ ต์มีคณุ สมบัติคียผ์ สม รหัสงบประมาณ ปีงบประมาณ ช่อื งบประมาณ ภาพที่ 10.2 แอตทรบิ ิวต์มคี ุณสมบัติคียผ์ สม 3.3 คีย์คู่แข่ง (Candidate Key) คือ คีย์ท่ีมีคุณสมบัติเท่ากันกับคีย์หลัก ในกรณีที่รีเลชันหนึ่งมีคีย์หลักมากกว่าหนึ่งแอตทริบิวต์ เช่น การบันทึกข้อมูลประวัติ ถา้ ไม่มีรหัสอาจารยก์ ็สามารถใช้ช่ือและนามสกุลเป็นคยี ์คู่แข่งได้ เปน็ ตน้ ดงั ภาพท่ี 10.3 แสดงตวั อยา่ งแอตทริบวิ ตม์ ีคณุ สมบัติคียค์ ู่แขง่ ชื่อ สกลุ ที่อยู่ โทรศัพท์ ภาพที่ 10.3 แอตทริบิวต์มคี ุณสมบตั ิคยี ค์ แู่ ข่ง 3.4 คีย์นอก (Foreign Key) คือ คีย์หน่ึงท่ีมีความสัมพันธ์หนึ่งกับคีย์หลัก ของรีเลชันหน่ึง เช่น การบันทึกเสนอโครงการวิจัย จะสามารถเก็บข้อมูลเป็นรหัส อาจารย์ รหสั โครงการวิจัย ดังนัน้ คีย์นอกคือ รหัสอาจารย์เปน็ ต้น ดังภาพท่ี 10.4 แสดง ตัวอยา่ งแอตทรบิ ิวตม์ คี ณุ สมบตั คิ ียน์ อก รหสั อาจารย์ ชอ่ื สกุล ทอี่ ยู่ โทรศพั ท์ รหสั โครงการ ชอ่ื โครงการ วตั ถปุ ระสงค์ รหัสอาจารย์ ภาพท่ี 10.4 แอตทรบิ ิวต์มคี ณุ สมบัติคียน์ อก

การออกแบบฐานข้อมลู | 372 การแปลงแผนภาพ E-R เปน็ ฐานขอ้ มลู เชิงสัมพันธ์ แผนภาพ E-R Diagram เป็นการเขียนแสดงให้เห็นความสัมพันธ์ของข้อมูลท่ี ทางานในระบบงานที่มีความสัมพันธ์ของข้อมูลในแต่ละวัตถุท่ีเก่ียวข้องในทุกข้ันตอน การทางาน ดังตัวอย่าง E-R ของระบบสารสนเทศการจัดการงานวิจัย ดังภาพที่ 8.9 แผนภาพ E-R Diagram ของระบบสารสนเทศการจัดการงานวิจัย ในเนื้อหาบทท่ี 8 มีการกาหนดเอนทิตี ที่สามารถแปลงเป็นรเี ลชันได้ ดังน้ี 1. การแปลงเอนทิตเี ปน็ รีเลชนั จากภาพจะแสดงใหเ้ หน็ เอนทิตีทงั้ หมดคือ 1.1 บุคลากร ขอ้ มูลผู้ใชง้ านระบบสารสนเทศ 1.2 สถานะ ข้อมูลประเภทผใู้ ชง้ านระบบสารสนเทศ 1.3 สาขาวชิ า ข้อมูลสาขาวชิ าที่ผูใ้ ช้บริการสังกัด 1.4 โครงการ จดั เก็บข้อมลู รายละเอียดเก่ยี วกบั การนาเสนอเค้าโครงงานวิจยั 1.5 ผลการพจิ ารณา จดั เก็บข้อมลู ผลการพจิ ารณาอนมุ ตั ิโครงการ 1.6 งบประมาณ ข้อมูลเกีย่ วกับประเภท รายละเอยี ดงบประมาณ 1.7 สญั ญา จดั เก็บขอ้ มูลรายละเอยี ดการทาสญั ญาทนุ โครงการ 1.8 ความก้าวหน้า จับเก็บข้อมูลรายละเอียดความก้าวหน้าในการดาเนิน โครงการ 1.9 ฉบบั สมบรู ณ์ จัดเกบ็ ขอ้ มูลแฟม้ เอกสารฉบับสมบูรณ์ 1.10 ผลงานทางวิชาการ จัดเก็บข้อมูลเกี่ยวการผลงานการนาเสนอผลงาน งานวิจยั เชน่ ประชุมวชิ าการ วารสาร เปน็ ต้น 2. การแปลงแอตทรบิ ิวต์เป็นรีเลชนั เอนทิตีแต่ละเอนทิตี จะมีคุณลักษณะรายละเอยี ดของแอตทริบิวต์ ดังภาพท่ี 8.1 แอตทริบิวต์ของเอนทิตีบุคลากร เน้ือหาบทท่ี 8 ได้แปลงแอตทริบิวต์ท้ังหมดจาก E-R บุคลากร ดังภาพท่ี 10.5 แสดงแอตทรบิ วิ ตบ์ คุ ลากร ดงั นี้

การออกแบบฐานขอ้ มูล | 373 รหสั ชื่อ นามสกลุ ที่อยู่ เชยี่ วชาญ วันเกิด วนั ทเ่ี รม่ิ ทางาน ภาพท่ี 10.5 การแปลงเอนทิตีบุคลากร แอตทริบวิ ต์จะมีคุณลักษณะรปู แบบตา่ ง ๆ ดงั นัน้ การแปลงแอตทรบิ ิวต์กจ็ ะต้อง มีการกาหนดคุณสมบัติรายละเอียดแต่ละแอตทริบิวต์ สามารถแปลง E-R จากภาพที่ 8.3 ได้ผลลพั ธ์รายละเอียดดังนี้ 2.1 แอตทริบิวต์แบบคีย์หลัก เป็นแอตทริบิวต์ท่ีมีคุณลักษณะเป็น เอกลกั ษณ์คือ รหัส 2.2 แอตทริบิวต์แบบปกติ เป็นแอตทริบิวต์ท่ีแสดงคุณลักษณะในแต่ละ เอนทิตี คอื ช่ือ นามสกุล เร่ิมทางาน อายุงาน 2.3 แอตทริบิวต์แบบผสม เป็นแอตทริบิวต์ที่แสดงรายละเอียดท่ีสามารถ แบ่งแยกคุณลักษณะเพ่ิมได้อีก คือ ท่ีอยู่แสดงรายละเอียดแปลงแอตทริบิวต์ได้ ดังภาพที่ 10.6 การแปลงแอตทริบวิ ต์ท่อี ยบู่ ุคลากร ทีอ่ ยู่ บ้านเลขที่ ถนน ตาบล อาเภอ จังหวดั ภาพท่ี 10.6 เอนทิตีบคุ ลากร 2.4 แอตทริบิวต์แบบค่าเดียว คือ แอตทริบิวต์ที่แสดงคุณลักษณะท่ีจัดเก็บ เพียงค่าเดยี วเทา่ น้นั คอื วันเกดิ วันทเ่ี ร่มิ ทางาน 2.5 แอตทริบิวต์ท่ีมีหลายค่า คือ แอตทริบิวต์ท่ีมีการจัดเก็บคุณลักษณะ หลายค่า คือ เชย่ี วชาญ 2.6 แอตทริบิวต์ท่ีรับค่าด้วยการทางาน คือ อายุการทางาน โดยระบบจะ คานวณจากวันทีป่ จั จบุ นั และวนั ท่ีเรม่ิ ทางาน

การออกแบบฐานขอ้ มลู | 374 3. การแปลงความสมั พันธร์ ะหว่างเอนทติ ีเป็นรีเลชนั การแปลงความสัมพันธ์ระหว่างเอนทิตี จะพิจารณาความสัมพันธ์ระหว่าง เอนทติ ีทมี่ คี วามสัมพนั ธ์ในแผนภาพ มีรูปแบบความสมั พนั ธ์ดังภาพที่ 10.7 ภาพท่ี 10.7 E-R ความสัมพันธร์ ะบบสารสนเทศการจัดการงานวจิ ัย 3.1 การแปลงความสัมพนั ธ์แบบหนึ่งต่อหน่งึ ความสัมพนั ธแ์ บบหนึ่งต่อหนึ่ง เป็นความสัมพันธ์ของเอนทิตีที่มีต่อเอนทิตีหนึ่งเท่านั้น ดังเช่นการแปลงความสัมพันธ์ จาก E-R เป็นรีเลชันภาพท่ี 10.4 ความสัมพันธ์ระหว่างบุคลากรกับสาขาและสถานะ ผู้ใช้งาน ซ่ึงบุคลากรหนึ่งคนมีรหัสได้รหัสเดียวเท่าน้ัน บุคลากรหน่ึงสงั กดั อยสู่ าขาเดียว เท่านนั้ จึงสามารถแปลงแอตทรบิ วิ ส์ได้ ดงั รปู ภาพที่ 10.8 แปลงรเี ลชันระหว่างบคุ ลากร กบั สาขาและสถานะผูใ้ ช้งาน ภาพที่ 10.8 ความสมั พันธ์ระหวา่ งบคุ ลากรกบั สาขาและสถานะผใู้ ช้งาน

การออกแบบฐานข้อมลู | 375 รหัส ช่อื นามสกุล ทอี่ ยู่ เช่ียวชาญ วนั เกดิ รหัสสาขา รหสั สถานะ รหสั สาขาวชิ า รหัส ช่อื สถานะ ภาพท่ี 10.9 แปลงรเี ลชันระหวา่ งบุคลากรกบั สาขาและสถานะผใู้ ช้งาน 3.2 การแปลงความสัมพันธ์แบบหนึ่งต่อกลุ่ม ความสัมพันธ์แบบหน่ึงต่อ กลุม่ เป็นความสัมพนั ธ์ของเอนทิตีหน่งึ ท่มี ีความสัมพันธ์กัน จากภาพท่ี 10.10 แสดงการ แปลงความสัมพันธ์จาก E-R เปน็ รเี ลชนั ระบบโครงการ และภาพท่ี 10.11 แสดงตวั อย่าง ระบบการจดั การงานวิจยั โครงการหน่งึ มคี วามสมั พนั ธต์ ่อเอนทิตงี บประมาณแบบกล่มุ ภาพที่ 10.10 E-R ความสัมพนั ธ์ระหวา่ งโครงการกับงบประมาณ รหสั ชือ่ โครงการ วัตถปุ ระสงค์ รหัสงบประมาณ รหัสงบประมาณ ปงี บประมาณ ช่อื งบประมาณ ภาพท่ี 10.11 แปลงรีเลชันระหว่างโครงการกบั งบประมาณ

การออกแบบฐานขอ้ มูล | 376 3.3 ความสัมพันธ์แบบกลุ่มต่อกลุ่ม ความสัมพันธ์แบบกลุ่มต่อกลุ่ม แสดงความสัมพันธ์ระหว่างกลุ่ม ดังนั้น การแปลงความสัมพันธ์จาก E-R เป็นรีเลชัน จะได้ผลลัพธ์ดังตัวอย่างภาพท่ี 10.12 แสดง E-R แสดงความสัมพันธ์ระบบการจัดการ งานวารสารท่ีมีผู้ใช้งานเข้าระบบสมัครสมาชิก และสมาชิกสามารถสมัครสมาชิกได้ มากกวา่ หน่งึ คร้ัง ดงั ภาพรูปภาพที่ 10.13 แสดงการแปลง E-R เปน็ รเี ลชนั ภาพท่ี 10.12 E-R ความสัมพนั ธ์ระหวา่ งสมาชิกกบั วารสาร รหสั ชื่อวารสาร ปีท่ี ฉบบั ที่ รหัสสมาชกิ รหัสสมาชกิ ชื่อ ทีอ่ ยู่ วนั ทส่ี มคั ร ภาพท่ี 10.13 การแปลง E-R เปน็ รีเลชันระหวา่ งสมาชกิ กับวารสาร

การออกแบบฐานข้อมูล | 377 กระบวนการปรบั บรรทดั ฐาน (Normalizations) กระบวนการปรับบรรทัดฐาน คือ กระบวนการแปลงข้อมูลโดยใช้การวิเคราะห์ ข้อมูลจากลักษณะของคีย์ เพ่ือให้เกิดความสัมพันธ์ของข้อมูลในฐานข้อมูล และเพิ่ม ประสิทธิภาพในการจัดเก็บข้อมูล และลดปัญหาความซ้าซ้อนในการจัดเก็บข้อมูลได้ดี ยิ่งขึ้น แนวคิดกระบวนการปรับบรรทัดฐานโดย E.F.Codd เป็นเทคนิคท่ีนิยมใช้ในการ วิเคราะห์ความสัมพันธ์ 3 ระดับ และการวิเคราะห์ที่มากกว่าระดับท่ี 3 จะเป็นการ วเิ คราะหด์ ว้ ยแนวคิดโดย Fagin นอรม์ ัลฟอร์มระดบั ที่ 4NF และ 5NF ดังภาพท่ี 10.14 1 NF • กระบวนการปรบั บรรทัดฐานระดบั ที่ 1 หรอื เรยี กวา่ 1NF 2 NF • กระบวนการปรับบรรทัดฐานระดับที่ 2 หรอื เรียกว่า 2NF 3 NF • กระบวนการปรับบรรทัดฐานระดับที่ 3 หรือเรยี กว่า 3NF BCNF • กระบวนการปรับบรรทัดฐานพน้ื ฐาน BCNF (BoyceCodd Normal Form) 4 NF • กระบวนการปรบั บรรทัดฐานระดบั ท่ี 4 หรอื เรียกวา่ 4NF 5 NF • กระบวนการปรบั บรรทดั ฐานระดบั ท่ี 5 หรอื เรยี กวา่ 5NF ภาพที่ 10.14 กระบวนการปรับบรรทัดฐาน การวิเคราะห์และออกแบบฐานข้อมูลด้วยการทากระบวนการปรับบรรทัดฐาน เป็นการวิเคราะห์เพ่ือลดความซ้าซ้อน และการเพิ่มความรวดเร็วในการเรียกใช้ข้อมูลมี ข้ันตอน ดังน้ี

การออกแบบฐานข้อมลู | 378 1. ขั้นตอนการออกแบบฐานข้อมูลกระบวนการปรับบรรทัดฐานระดับที่ 1 (First Normal Form: 1NF) การออกแบบฐานข้อมูลตามขั้นตอนกระบวนการปรับบรรทัดฐานระดับท่ี 1 จะตรวจสอบขอ้ มูลในตาราง ตารางเดยี วกันไม่ให้มีข้อมลู ที่ซ้ากันและตรวจสอบข้อมูลที่ ไม่สมบูรณ์ในลักษณะไม่มีกลุ่มข้อมูลซ้า (Repeating Group) ตัวอย่างข้อมูลระบบ สารสนเทศการจัดการงานวิจัย มีการจัดข้อมูลตารางข้อมูลเสนอโครงการมีการจัดเก็บ ข้อมลู โครงการและบุคลากรผู้เสนอขอวจิ ยั มีการจดั เกบ็ ดังตารางท่ี 10.2 ปรับปรุงข้อมูล ให้ครบ ดังตารางที่ 10.3 เมื่อมีการปรับปรุงแล้ว จะเห็นได้ว่าควรกาหนดคีย์ของตาราง ในท่นี ้ีกาหนดใหร้ หัสบุคลากร (HME_CODE) เป็นคยี ห์ ลัก ตารางท่ี 10.2 ข้อมลู เสนอโครงการ HMR_ HMR_ TYPE_ PROJECT TYPE_ STRID1 NAME TEL CODE FNAME PROJECT NATURE PROJECT 01 #1225 s001 สมใจ วจิ ยั เดย่ี ว วจิ ัยประยุกต์ หวั หนา้ 02 STRID1 #1347 s003 02 #1347 วรี ะ วิจัยเดี่ยว วิจยั ประยกุ ต์ นักวิจยั ร่วม 02 การปรับ #1225 s004 03 โครงสรา้ ง #1225 วจิ ยั รายวิชา วิจยั ประยุกต์ นักวจิ ยั รว่ ม สง่ เสรมิ การ เรยี นรูต้ ลอดชีวติ ทรงพล วจิ ยั เด่ยี ว วจิ ัยพืน้ ฐาน หวั หน้า ส่งเสริมการ เรียนรตู้ ลอดชีวิต วิจัยรายวชิ า วิจยั พ้นื ฐาน นักวิจยั รว่ ม สง่ เสริมการ เรียนรู้ตลอดชวี ิต การพัฒนา คุณภาพคนไทยฯ ตารางท่ี 10.3 ข้อมูลเสนอโครงการที่ปรบั ปรงุ ข้อมลู HMR_ HMR_ TYPE_ PROJECT TYPE_ STRID1 NAME STRID1 TEL #1225 CODE FNAME PROJECT NATURE PROJECT การปรับ #1347 โครงสรา้ ง #1347 s001 สมใจ วิจยั เดี่ยว วจิ ยั หัวหน้า 01 สง่ เสรมิ การ #1225 เรียนรตู้ ลอดชวี ติ #1225 ประยกุ ต์ ส่งเสริมการ เรียนร้ตู ลอดชวี ติ s003 วีระ วจิ ัยเดยี่ ว วจิ ัย นกั วจิ ัยร่วม 02 สง่ เสรมิ การ เรียนรู้ตลอดชวี ิต ประยกุ ต์ การพัฒนา คณุ ภาพคนไทยฯ s003 วีระ วจิ ัยรายวิชา วิจัย นักวจิ ยั รว่ ม 02 ประยุกต์ s004 ทรงพล วจิ ยั เดยี่ ว วจิ ยั พื้นฐาน หวั หน้า 02 s004 ทรงพล วิจยั รายวิชา วจิ ัยพืน้ ฐาน นักวิจยั ร่วม 03

การออกแบบฐานข้อมูล | 379 2. ข้ันตอนการออกแบบฐานข้อมูลกระบวนการปรับบรรทัดฐานระดับที่ 2 (Second Normal Form: 2NF) ข้ันตอนการกระบวนการปรับบรรทัดฐานระดับท่ี 2 จะต้องเป็น 1NF กอ่ นและเขตข้อมูลภายในตารางจะตอ้ งมคี วามสัมพนั ธข์ ึ้นตรงต่อคยี ์หลักเทา่ นั้น หรอื ตัด เขตข้อมูลบางส่วนท่ีไม่ขึ้นตรงต่อคีย์หลักออกไป (Partial Dependency) ดังภาพท่ี 10.15การนอร์มัลไลเซชนั ระดบั ท่ี 2 HMR_ HMR_ TYPE_ PROJECT_ TYPE_ STRID1 NAME TEL CODE FNAME PROJECT NATURE PROJECT STRID1 สามารถจดั ใหเ้ ปน็ กระบวนการปรบั บรรทดั ฐานที่ 2 คงเหลือเขตข้อมูลข้นึ ตรงตอ่ คยี ์หลัก ดังนี้ HMR_CODE HMR_ FNAME ADDRESS TEL เขตข้อมูลรหัสยทุ ธศาสตร์ชือ่ ยทุ ธศาสตร์ไมข่ ้ึนตรงต่อคีย์หลกั STR1ID NAME_STR1 เขตข้อมูลประเภทโครงการ ลักษณะโครงการ ประเภทผูว้ จิ ยั ไม่ขึน้ ตรงต่อคียห์ ลกั TYPE_PROJECT PROJECT_NATURE TYPE_USER H_RATIO ภาพท่ี 10.15 กระบวนการปรับบรรทัดฐานระดบั ท่ี 2NF 3. ขั้นตอนการออกแบบฐานข้อมูลกระบวนการปรับบรรทัดฐานระดับที่ 3 (Third Normal Form: 3NF) ข้ันตอนกระบวนการปรับบรรทัดฐานระดับที่ 3 จะต้องเป็น 2NF ก่อนและ เขตข้อมูลภายในตารางจะต้องมีความสัมพันธ์ขึ้นตรงต่อคีย์หลักท้ังหมด และไม่มี เขตข้อมูลใดที่สามารถเป็นคีย์หลักระบุความสัมพันธ์อื่นๆ ท่ีเหลือได้ (Transitive Dependency) การขจัดสามารถทาได้โดยมีการสร้างคีย์นอก (Foreign Key) สาหรับ เป็นเขตข้อมูลเชื่อมตารางกนั จากข้อมูลด้านลา่ งนี้ สามารถจัดให้เป็นกระบวนการปรบั บรรทัดฐานระดับท่ี 3 โดยการขจัดเขตข้อมูล HMR_CODE (รหัสบุคลากร) ออก

การออกแบบฐานขอ้ มลู | 380 เนือ่ งจากไม่ไดข้ ้นึ ตรงตอ่ คยี ์หลักและเป็นเขตข้อมูลท่ีสามารถรระบขุ ้อมลู HMR_FNAME (ชื่อบุคลากร) ได้โดยตรง ซ่ึงรหัสบุคลากรในตารางข้อมูลโครงการวิจัย จะเป็นคีย์นอก สาหรับเช่ือมตาราง ดังภาพท่ี 10.16 กระบวนการปรบั บรรทัดฐานระดับท่ี 3 ตารางโครงการวจิ ยั RS_ID RS_NAME HMR_CODE HMR_FNAME สามารถจัดให้เปน็ กระบวนการปรบั บรรทดั ฐานที่ 3 ดังนี้ RS_ID RS_NAME HMR_CODE HMR_CODE HMR_FNAME ภาพท่ี 10.16 กระบวนการปรับบรรทัดฐานระดบั ท่ี 3 4. ข้ันตอนการออกแบบฐานข้อมูลกระบวนการปรับบรรทัดฐานระดับที่ BCNF (BoyceCodd Normal Form: BCNF) ขน้ั ตอนกระบวนการปรับบรรทัดฐาน BCNF จะตอ้ งเปน็ 3NF กอ่ น และเขต ข้อมลู ภายในตารางจะตอ้ งมีความสัมพันธ์ขึ้นตรงตอ่ คยี ์หลักทง้ั หมด และสร้างเขตข้อมูล ท่ีทาการเช่ือมโยงคีย์หลักหรือเรียกว่าคีย์ผสมดังภาพท่ี 10.17 การแสดงกระบวนการ ปรบั บรรทดั ฐานระดบั ท่ี BCNF ตารางบคุ ลากร HMR_CODE TEACHER_ID HMR_FNAME ADDRESS TEL สามารถจัดใหเ้ ป็นกระบวนการปรับบรรทัดฐานท่ี 3 ดงั นี้ HMR_CODE HMR_FNAME ADDRESS TEL HMR_CODE TEACHER_ID ภาพท่ี 10.17 กระบวนการปรับบรรทดั ฐานระดบั ท่ี BCNF

การออกแบบฐานขอ้ มูล | 381 5. ขั้นตอนการออกแบบฐานข้อมูลกระบวนการปรับบรรทัดฐานระดับท่ี 4 (Fourth Normal Form: 4NF) โดยทั่วไปการออกแบบฐานข้อมูลจะมีการวิเคราะห์ให้อยู่ในรูปแบบ กระบวนการปรับบรรทัดฐานระดับที่ 3 หรือ BCNF ก็เพียงพอต่อการนาไปใช้งาน และ ไมม่ ผี ลกระทบตอ่ ประสิทธภิ าพในการทางานเรียกใชข้ อ้ มูลมากนกั ขั้นตอนกระบวนการปรับบรรทัดฐาน 4NF จะต้องเป็น BCNF มาก่อน และ เขตข้อมูลภายในตารางจะต้องไม่มีความสมั พนั ธ์ในการระบุค่าของเขตข้อมูลหลายเขต ขอ้ มูล ซึง่ เรยี กเหตกุ ารณ์แบบนีว้ า่ Multivalued Dependency 6. ข้ันตอนการออกแบบฐานข้อมูลกระบวนการปรับบรรทัดฐานระดับท่ี 5 (Fifth Normal Form: 5NF) ข้ันตอนการกระบวนการปรับบรรทัดฐาน 5NF จะต้องเป็น 4NF มาก่อน เม่ือแยกตารางออกเป็นตารางย่อย ๆ แล้ว การเช่ือมโยงกลับคืนมาท้ังหมด จะทาให้ได้ ข้อมลู ทเ่ี กดิ ขึ้นเหมอื นในตารางเดมิ ซงึ่ เรยี กเหตกุ ารณ์แบบนีว้ ่า Joint Dependency การรักษาความคงสภาพของข้อมูล การออกแบบฐานข้อมูลจะต้องมีการกาหนดความสัมพันธ์ของฐานข้อมูล เพ่ือให้สามารถรองรับการทางานพร้อมกันท้ังระบบ ดังนั้น เพื่อให้การบันทึกข้อมูลให้ ถูกต้องตรงกับวัตถุประสงค์ในการออกแบบ จึงจาเป็นต้องมีการควบคุมความคงสภาพ ของข้อมูล โดยการป้องกันไม่ให้เกดิ ความสูญเสยี หรือข้อผิดพลาดจากการบันทึกขอ้ มูล ไม่ว่าจะเป็นการเพิ่มข้อมูล การลบข้อมูล การปรับปรุงข้อมูล ตามกฎความคงสภาพ ข้อมูล (Data Integrity Rule) มีประเด็นการรักษาความคงสภาพข้อมูล 2 ประเด็น คือ กฎความคงสภาพข้อมูล และกฎความคงสภาพของการอ้างอิงข้อ มูล สรปุ ขอ้ มูลได้ ดงั นี้ 1. กฎความคงสภาพของขอ้ มูล การออกแบบฐานข้อมูลให้เกิดความคงสภาพข้อมูล เป็นการกาหนดให้ทุก ความสัมพันธ์ จะต้องมีการกาหนดคีย์หลักเพ่ือเชื่อมโยงข้อมูล ป้องกันไม่ให้เกิดความ ผิดพลาดในการบนั ทกึ ขอ้ มูลไม่เกิดการไม่บันทึกข้อมลู หรือท่เี รียกวา่ คีย์ว่าง และกาหนด ไม่ให้ข้อมูลดังกล่าวซ้ากัน การกาหนดคีย์หลัก และจะต้องมีการกาหนดคุณสมบัติชนดิ

การออกแบบฐานข้อมูล | 382 ขอ้ มูลเพม่ิ เติมในการควบคุมคา่ ของขอ้ มูลไดด้ ีย่ิงขึ้น เชน่ การออกแบบระบบสารสนเทศ การจัดการงานวิจยั ฯ จากตารางบุคลากรจะต้องมีการกาหนดความคงสภาพข้อมลู โดย การกาหนดคีย์ให้กับรหสั บุคลากร ไม่ให้ซ้าหรือไม่ว่าง เพ่ือป้องกันข้อผิดพลาดจากการ บนั ทึกข้อมูล และกาหนดคุณสมบตั ชิ นดิ ขอ้ มลู และขนาดขอ้ มลู เปน็ ต้น เมอื่ มีการกาหนดความคงสภาพทาให้เกิดความปลอดภัยในการจัดการข้อมูล ไม่ว่าจะเป็นการบริหารจดั การ การเพิ่ม ลบ แก้ไขข้อมูลจะต้องกระทาให้เสร็จสมบูรณ์ ก่อนจึงบันทึกข้อมูล หากพบข้อผิดพลาดไม่สมบูรณ์ให้ยกเลิกการจัดการท้ังหมด การ รักษาความถูกต้องเมื่อมีการเปล่ียนแปลงในฐานข้อมูล จะทาให้ป้องกันข้อผิดพลาดที่ เกดิ ขึ้นในการบันทึกข้อมูล ดังตารางที่ 10.4 ตารางข้อมลู บุคลากรในตารางนีก้ าหนดให้ เขตขอ้ มูล HME_CODE เป็นคีย์หลักกาหนดไม่ให้มีค่าวา่ งและไม่ซา้ ตารางที่ 10.4 ตารางบุคลากร COLUMN_NAME DATA_TYPE DATA_DEFAULT KEY COMMENTS (NOT NULL) HME_CODE VARCHAR2(7 BYTE) (NOT NULL) YES รหัสบุคลากร (NULL) YES รหสั อาจารย์ TEACHER_ID VARCHAR2(10 BYTE) (NULL) NO คานาหน้า (NULL) NO ช่อื TITLE_NAME VARCHAR2(20 BYTE) (NULL) NO นามสกุล (NULL) NO ทอ่ี ยู่ SIF_FNAME VARCHAR2(100 BYTE) (NULL) NO โทรศัพท์ NO อเี มล SIF_NAME VARCHAR2(100 BYTE) UDRU_ADDESS VARCHAR2(500 BYTE) TEL_NO VARCHAR2(50 BYTE) SIF_EMAIL VARCHAR2(50 BYTE) 2. กฎความคงสภาพของการอา้ งองิ ขอ้ มลู การออกแบบฐานข้อมลู ดว้ ยกฎความคงสภาพของการอา้ งอิงข้อมูล เปน็ การ กาหนดความสัมพันธร์ ะหวา่ งข้อมลู ทมี่ ีความสมั พันธ์นอกเหนือจากคีย์หลกั เชน่ คยี น์ อก (Foreign key) คีย์คู่แข่ง (Candidate key) เป็นต้น การกาหนดความคงสภาพของการ อ้างองิ ความสัมพันธข์ องข้อมูล จะทาใหเ้ กิดความคงสภาพในการปรับปรุง เปลีย่ นแปลง ข้อมูลให้ครบถ้วนสมบูรณ์ในทุกความสัมพันธ์ไม่ให้เกิดข้อผิดพลาด หากมีการแก้ไข ข้อมลู ในฐานขอ้ มูลในกรณี ดังนี้

การออกแบบฐานข้อมูล | 383 2.1 ไม่สามารถแก้ไขข้อมูลคีย์หลักได้ เม่ือสร้างความสัมพันธ์และบันทึก ข้อมูลหรอื มีการเรยี กใชง้ านอยู่ 2.2 หากมีการเปลี่ยนแปลงคีย์นอกทม่ี ีความสัมพันธ์ระหวา่ งตารางจะต้องมี การปรบั ปรุงท้ังหมดของฐานข้อมลู การบันทึกข้อมูล จะต้องคานึงถึงความปรับปรุงข้อมลู ให้เป็นปัจจบุ ัน การใช้ กฏความคงสภาพของการอ้างอิงข้อมูล จะช่วยให้ข้อมูลท่ีมีการเปล่ียงแปลงเกิดความ สมบรู ณ์ในทุกความสัมพันธ์ ไมว่ า่ จะเป็นการลบ การเพ่มิ ขอ้ มูล ดังตวั อยา่ งภาพท่ี 10.18 มกี ารเปล่ียนแปลงช่อื ของบคุ ลากรจะตอ้ งมีการปรับปรุงขอ้ มูลของตารางบันทกึ โครงการ ทีม่ ีการอ้างองิ ขอ้ มลู จากตารางบคุ ลากร HME_CODE TEACHER_ID PROJECT_ID 892 2189 001 893 2193 003 HME_CODE NAME 892 893 มานะ สขุ ใจ ภาพที่ 10.18 ความสมั พันธ์ของการอา้ งองิ ขอ้ มูล

การออกแบบฐานขอ้ มูล | 384 บทสรปุ บทน้ีจะอธิบายการออกแบบจาลองเชงิ ตรรกะที่ออกแบบฐานข้อมูล ทกี่ าหนด คุณสมบัติของเขตข้อมลู แบบจาลองฐานข้อมลู เชิงสมั พันธ์ เปน็ ฐานข้อมูลที่มีลักษณะ การจัดข้อมูลแบบตาราง 2 มิติ คือ แนวนอนและแนวต้ัง ที่เรียกว่าแถวหรือคอลมั น์ สามารถรองรับความสัมพันธ์แบบได้ทั้งหน่ึงต่อหนึ่ง หนึ่งกลุ่ม และกลุ่มต่อกลุ่ม มีคาศัพท์ท่ีเก่ียวข้องกับฐานข้อมูลเชิงสมั พันธ์ มีประเภทของรีเลชัน 2 ประเภท คือ ความสัมพันธ์หลักและมมุ มองการใชง้ าน คณุ สมบตั ิของรีเลชันมดี ังนี้ 1. ตอ้ งมีช่อื กากับทกุ รีเลชันและช่ือตอ้ งไม่ซา้ กัน 2. แตล่ ะรเี ลชัน จะมีค่าแอตทรบิ ิวต์ทต่ี ้องไม่มคี า่ ซ้ากนั 3. แตล่ ะรีเลชนั จะมคี า่ ทูเพลิ ทต่ี อ้ งไม่มีค่าซา้ กนั 4. การกาหนดค่าของข้อมูล จะเป็นไปตามข้อกาหนดค่าของข้อมูลในแต่ ละ แอตทรบิ ิวต์ 5. การเรียงลาดบั ของทูเพลิ ไม่มีความสาคญั ใดๆ 6. การเรียงลาดบั ของแอตทรบิ วิ ต์ ไมม่ ีความสาคัญใดๆ คีย์ คอื การกาหนดคณุ สมบตั คิ วามสัมพนั ธข์ องแอตทริบวิ ต์ มี 4 ประเภท คอื คีย์หลกั คยี ์ผสม คีย์คู่แขง่ คียน์ อก การแปลงแผนภาพ E-R เป็นรีเลชัน จะต้องพิจารณาส่วนประกอบเอนทิตี แอตทริบวิ ตแ์ ละแปลงความสมั พันธ์ และตรวจสอบส่วนประกอบแอตทรบิ วิ ตใ์ นแต่ละ ประเภท กระบวนการปรับบรรทัดฐาน คือ กระบวนการแปลงข้อมูลโดยใช้การ วิเคราะห์ข้อมูลจากลักษณะของคีย์ เพื่อให้เกิดความสัมพนั ธ์ของข้อมลู ในฐานข้อมลู และเพิ่มประสิทธิภาพในการจดั เก็บข้อมูล และลดปัญหาความซา้ ซอ้ นในการจัดเก็บ ขอ้ มลู ไดด้ ยี ่งิ ข้ึน มีการปรับบรรทัดฐาน 1NF 2NF 3NF BCNF 4NF 5NF

การออกแบบฐานข้อมูล | 385 การรักษาความคงสภาพของข้อมูล การออกแบบฐานข้อมูล จะต้องมีการ กาหนดความสัมพันธ์ของฐานข้อมูล เพื่อให้สามารถรองรับการทางานพร้อมกัน ทั้งระบบ ดังนั้น เพ่ือให้การบันทึกข้อมูลให้ถูกต้องตรงกับวัตถุประสงค์ในการ ออกแบบ จึงจาเป็นต้องมีการควบคุมความคงสภาพของข้อมูล โดยการป้องกันไมใ่ ห้ เกิดความสูญเสียหรือข้อผิดพลาดจากการบันทึกข้อมูล ไม่ว่าจะเป็นการเพิ่มข้อมูล การลบข้อมูล การปรับปรุงข้อมูล ตามกฎความคงสภาพข้อมูล มี 2 ประเด็น คอื กฎความคงสภาพข้อมูล และกฎความคงสภาพของการอา้ งองิ ข้อมูล

การออกแบบฐานข้อมลู | 386 แบบฝึกหัดบทท่ี 10 ตอนที่ 1 ตอบคาถามดงั ตอ่ ไปน้ี 1. จงอธบิ ายคุณสมบัติของรีเลชัน 2. คยี ์หลักมีกป่ี ระเภท แต่ละประเภทมคี วามหมายอย่างไร 3. จงอธิบายกระบวนการปรบั บรรทัดฐานมีข้ันตอน และมีหลักการปรบั บรรทดั ฐาน อย่างไร ตอนที่ 2 ใหน้ กั ศกึ ษาแปลงแผนภาพ E-R เปน็ รีเลชนั จากภาพดังนี้ 1. ให้แปลงความสมั พนั ธ์ของ E-R เปน็ รเี ลชนั ท่ีมรี ายละเอยี ดแอตทรบิ วิ ต์ ไฟล์ ช่อื บทความ บทคัดยอ่ ภาษาไทย ช่ือบทความ ภาษาองั กฤษ รหัสผลงาน งบประมาณ งวดท่ี 2 รหัสผลงาน วตั ถุประสงค์ ความกา้ วหน้ กิจกรรม า งบประมาณ

COLUMN_NAME DATA_TYPE การออกแบบฐานข้อมลู | 387 DATA_DEFAULT KEY COMMENTS COLUMN_NAME DATA_TYPE DATA_DEFAULT KEY COMMENTS 2. จงแปลงเอนทติ ีของ E-R เป็นรเี ลชนั โดยใช้ภาพขา้ งลา่ งดงั นี้

การออกแบบฐานขอ้ มูล | 388

บทที่ 11 การวิเคราะหแ์ ละออกแบบเชงิ วัตถุ การพัฒนาซอฟต์แวร์เชิงวัตถุ จะมีข้ันตอนการวิเคราะห์และออกแบบ โดยผู้ออกแบบต้องทาความเข้าใจหลักการทางานและแนวคิดของการพัฒนาซอฟต์แวร์ เชิงวัตถุ เพ่ือให้สามารถพัฒนาซอฟต์แวร์ได้อย่างมีประสิทธิภาพ ซึ่งแนวคิดของการ พัฒนาวัตถุนั้น จะต้องมองปัญหาต่าง ๆ ที่เกิดขึ้นในโลกความเป็นจริง เพ่ือนาไป วิเคราะห์หาแนวทางแก้ไข โดยหลักการของแนวคิดเชิงวัตถุจะมองปัญหาเป็นวัตถุ ที่เกิดขึ้น และสร้างแบบจาลองควบคู่กับการวิเคราะห์ปัญหานั้น ๆ ซ่ึงการพัฒนาระบบ แนวคิดเชิงวัตถุนั้น จะสามารถนาโค้ดทพี่ ฒั นาแล้วกลับมาใชใ้ หม่ได้ ทาให้ลดระยะเวลา ในการพฒั นา การออกแบบเชิงวัตถุจะมีลกั ษณะ คณุ สมบตั ิแต่ละวตั ถเุ ป็นแบบโครงสร้าง ทาให้งา่ ยตอ่ ปรบั ปรงุ และพฒั นาเพ่มิ เตมิ ซึ่งปัจจุบนั ผู้พัฒนาจะสามารถเลือกใชภ้ าษาท่ี รองรับการพัฒนาซอฟต์แวรแ์ ละเครื่องมอื ท่ีสนับสนนุ มากหลากหลายยิ่งข้ึน เน้ือหาบทน้ี จะกล่าวถึงความรู้พื้นฐานเกี่ยวกับแนวคิดเชิงวัตถุ คุณสมบัติของ แนวคิดเชงิ วตั ถุ ขนั้ ตอนการออกแบบระบบงานแนวคิดเชงิ วตั ถุ การออกแบบระบบด้วย ภาษายูเอ็มแอล และรปู แบบการเขยี นโปรแกรมภาษาเชงิ วตั ถุ ความรูเ้ กย่ี วกับแนวคดิ เชงิ วตั ถุ แนวคิดเชิงวัตถุคือ การพิจารณาจากสิง่ ท่ีเกดิ ขึ้นจากเหตุการณ์หรือกจิ กรรม ที่เกิดข้ึนจริง โดยจะมองทุกสิ่งเป็นวัตถุ และมองว่ากิจกรรมท่ีเกิดข้ึนในโลกน้ี เกิดจาก ความสัมพันธ์และปฏิสัมพันธ์ระหว่างวัตถุ จากแนวคิดเชิงวัตถุทาให้นักพัฒนาระบบ จะต้องพจิ ารณาทาความเขา้ ใจปัญหาทีเ่ กิดขึ้น การวิเคราะห์ปญั หาจะเร่มิ จากการศึกษา ปัญหาความเป็นไปได้ สิ่งที่เกิดข้ึนสถานการณ์จริง เพื่อไปวิเคราะห์แนวทางการแก้ไข ปัญหา ดังภาพท่ี 11.1 แสดงการวิเคราะห์โครงสร้างของวัตถุหรือเรียกว่าออบเจ็กต์ (Object) จะวิเคราะห์นักศึกษาเป็นวัตถุท่ีมีคุณสมบัติที่บ่งบอกตัวนักศึกษา โดยมี ความสัมพันธ์ในการใช้บริการระบบงานที่มีพฤติกรรมการเรียน การลงทะเบียน ดูผล การเรียนและดกู ิจกรรมที่นักศึกษาเขา้ ร่วม

การวิเคราะห์และออกแบบเชงิ วัตถุ | 390 นักศึกษามหาวิทยาลยั ราชภัฏอุดรธานี คุณสมบตั ิ รหัสนกั ศึกษา ชอื่ นามสกลุ บ้านเลขท่ี ตาบล อาเภอ จังหวัด โทรศพั ท์ พฤติกรรม ลงทะเบียนเรยี น รายงานผลการศกึ ษา ร่วมกจิ กรรม ภาพที่ 11.1 รูปแบบโครงการสร้างของวตั ถุ 1. วตั ถุ (Object) วัตถุหรือออบเจ็กต์ คือ ตัวแทนส่ิงหน่ึงสิ่งใด แบ่งเป็น 2 ประเภทหลัก คือ 1) นามธรรมหรือสิ่งใดส่ิงหน่ึง ท่ีผู้ใช้งานต้องการจัดเก็บข้อมูลวัตถุ เช่น คน สัตว์ สิ่งของ อุปกรณ์ 2) พฤติกรรมการทางานของวัตถุ ที่มีความสัมพันธ์ในการทางาน ในแต่ละกิจกรรมขององค์กรหรือสิ่งท่ีจบั ต้องไม่ได้ เช่น เหตุการณ์ วันเวลาที่เกิดข้นึ จรงิ เปน็ ตน้ 1.1 สถานะของวตั ถุ การแสดงสถานภาพของวัตถุ สามารถเปล่ียนแปลงได้ตลอดเวลา สิ่งท่ี แสดงของวตั ถุจะแสดงคุณสมบัติ และความสมั พันธ์ที่มีต่อวัตถุนั้น จึงทาให้วัตถุสามารถ เปล่ยี นแปลงค่าได้ ตัวอย่างออบเจ็กต์ วรวัฒน์เป็นลูกค้าร้านขายวุ้น สมัครสมาชิกกับร้าน ไดร้ บั สว่ นลดครง้ั แรก 2% และวรวัฒน์ยงั เปน็ สมาชกิ ตอ่ ไปจน 3 ปี วรวัฒน์ไดร้ บั ส่วนลด สาหรับสมาชิก VIP 5% ดงั ตารางที่ 11.1 แสดงเง่ือนไขส่วนลดสมาชิก ตารางท่ี 11.1 เงอ่ื นไขส่วนลดสมาชิก สว่ นลด เงอื่ นไข 2% วรวฒั น์สมัครสมาชกิ แรกเข้า 5% วรวฒั นเ์ ปน็ สมาชกิ 3 ปี จากตัวอย่าง จะแสดงให้เห็นว่าวัตถุสามารถเปลี่ยนแปลงค่าได้ข้ึนอยู่กับ คุณสมบัติและความสมั พันธท์ เี่ กิดขึ้น

การวิเคราะห์และออกแบบเชิงวัตถุ | 391 1.2 พฤติกรรมของวัตถุ พฤติกรรมของวัตถุ คือ การกระทาท่ีทางานก็ต่อเม่ือมีการโต้ตอบ หรือ เรียกใช้งานของออบเจ๊กต์ ดังนั้น การแสดงพฤติกรรมการทางานของวัตถุก็สามารถ กาหนดการแสดงแตกต่างได้ เชน่ การแสดงพฤตกิ รรมของออบเจ็กต์ลูกคา้ ของรา้ นขาย วุ้นในการค้นหาข้อมูลนายวรวัฒน์จะมีพฤติกรรมวัตถุที่แจ้งรหัสบัตรสมาชิก แจ้งช่ือ ลกู คา้ แจง้ เบอร์โทรศัพท์ เปน็ ตน้ 1.3 เอกลักษณ์ของวัตถุ วัตถุทุกวัตถุจะมีเอกลักษณ์มีความต่างจากกัน ถึงจะมีสมบัติหรือ พฤติกรรมเหมือนกัน แต่วัตถุนั้นจะต้องมีการกาหนดความเป็นเอกลักษณ์ไม่ซา้ กับวตั ถุ อื่น เช่น วัตถุพนักงานร้านขายวุ้นมีตาแหน่งพนักงานขาย ท่ีมีพฤติกรรมหน้าที่ในการ ขายสินค้าเหมือนกัน แต่มีเอกลักษณ์ท่ีบ่งบอกตัวตนคนละวัตถุ โดยการกาหนดรหัส พนักงานเป็นตน้ 2. คลาส (Class) คลาส คือ คานิยามหรอื คาอธบิ ายถึงกลมุ่ ของวัตถุ คลาสหรอื เรียกวา่ ต้นแบบ หรือแม่พิมพ์สาหรับสร้างวัตถุใหม่ การสร้างวัตถุใหม่จะมีการกาหนดคุณลักษณะคลาส กับวัตถุร่วมกัน องค์ประกอบของคลาสสาหรับอธิบายคุณลักษณะโครงสร้างของวัตถุ มี 2 องคป์ ระกอบดังนี้ 2.1 คุณสมบัติ (Attribute) แสดงคาอธบิ ายสถานะของวัตถุ 2.2 โอเปอร์เรชัน (Operation) หรอื เมธอด เปน็ การแสดงพฤติกรรม หนา้ ที่ ของวัตถุที่เกดิ ข้นึ ตัวอย่างที่ 1 ดังภาพท่ี 11.2 แสดงคลาสไดอะแกรมของการสั่งซ้ือสินค้า ท่ีมีคลาส Customer, Order, Item ในแต่ละคลาสจะมีคุณสมบัติและเมธอดแสดง พฤตกิ รรมการทางาน เช่น คลาส Customer มีแอตทิรบิวตห์ มายเลข ช่อื ทีอ่ ยู่ เปน็ ต้น ในแต่ละคลาสก็มคี วามสัมพันธ์ในระบบงานลูกค้ามีการสั่งซอ้ื สนิ ค้าและส่ังซอ้ื มีรายการ สินคา้

การวิเคราะห์และออกแบบเชงิ วตั ถุ | 392 ภาพที่ 11.2 คลาสไดอะแกรมของการสั่งซ้อื สินค้า (ทีม่ า: Rosenblatt, 2014, pp. 461) ตัวอย่างที่ 2 ดังภาพที่ 11.3 แสดงรายละเอียดวัตถุเกี่ยวกับข้อมูลอาจารย์ และนกั ศึกษา อาจารย์ (รหสั อาจารย์ ชอื่ สกุล วฒุ กิ ารศกึ ษา สังกัด) นกั ศกึ ษา (รหสั นกั ศึกษา ช่อื ทอ่ี ยู่ สาขาวชิ า) เมื่อพิจารณาองค์ประกอบของคลาสจะมีส่วนประกอบชื่อคุณสมบัติและ เมธอดที่เป็นหน้าท่ีของคลาส ดังตัวอย่างภาพที่ 11.3 แสดงข้อมูลรายละเอียดคลาส นักศึกษาและอาจารย์

ชื่อคลาส การวิเคราะห์และออกแบบเชงิ วตั ถุ | 393 ตวั อยา่ งคลาส คณุ สมบัติ หนา้ ท่ีโอเปอร์เรชนั ตวั อยา่ งคลาสนกั ศกึ ษาและอาจารยท์ ป่ี รกึ ษา นักศกึ ษา อาจายท์ ีป่ รกึ ษา รหัสประจาตัว รหสั อาจารย์ ช่อื สกุล ชอ่ื สกุล ที่อยู่ สังกดั สาขาวชิ า ความเช่ียวชาญ +ลงทะเบยี นเรยี น () +สอน () +ชาระคา่ ลงทะเบียน () +วจิ ัย () +สอบ () +อบรม () ภาพท่ี 11.3 ส่วนประกอบของคลาส ภาพท่ี 11.4 แสดงการกาหนดคุณสมบัติของคลาสท่ีมีวัตถุใช้คุณสมบัติ ร่วมกัน เช่น คลาสนักศึษาและคลาสอาจารย์ที่มีการกาหนดคุณสมบัติ เม่ือมีการสร้าง วัตถุใหม่ขึ้น

AB การวเิ คราะห์และออกแบบเชงิ วัตถุ | 394 C H คลาสนักศกึ ษา D คุณสมบัติเหมือนกันคือรหัส ชื่อ สกุล ท่ีอยู่ สาขาวิชา ซึ่งคลาสนักศึกษา จะมีนักศึกษาที่ใช้โครงสร้างเดียวกัน เช่น นาย A B C D H จะใช้คุณสมบัติ และเมธอดในคลาสนี้ นกั ศกึ ษา A BCDH ชใู จ คลาสอาจารย์ ปติ ิ คุณสมบตั ิเหมอื นกันคือรหสั รหัส อาจารย์ ชื่อ สกุล สังกดั ความเช่ียวชาญ มานะ ซึ่งคลาสอาจารย์จะมีอาจารย์ท่ีใช้ โครงสรา้ งเดียวกนั เชน่ ชใู จ ปิติ มานะ จ ะ ใ ช้ คุ ณ ส ม บั ติ แ ล ะ พ ฤ ติ ก ร ร ม ใ น คลาสนี้ อาจารย์ ชูใจ ปติ ิ มานะ ภาพที่ 11.4 การสรา้ งคลาสและวัตถุ

การวิเคราะหแ์ ละออกแบบเชิงวตั ถุ | 395 3. ความสัมพนั ธ์ระหว่างวตั ถุ ความสัมพันธ์ระหว่างวัตถุ จะแสดงรายละเอียดของวัตถุในการสรา้ งแนวคดิ ให้กบั วัตถุ มคี วามสมั พันธ์ทง้ั หมด 4 ประเภท ดังน้ี 3.1 ความสัมพันธ์แบบส่วนรวม (Association) ความสัมพันธ์แบบนี้เป็นความสัมพันธ์ระหว่าง 2 ส่ิงที่เกี่ยวพันกันแบบ โครงสร้างแบบ 2 ทิศทาง ดังภาพท่ี 11.5 คลาสนักศึกษามีความสัมพันธ์กับอาจารย์ ทาให้รู้ว่านักศึกษาคนนี้มอี าจารย์ท่ีปรกึ ษาคนใด นกั ศกึ ษา อาจารย์ ภาพที่ 11.5 ความสัมพันธ์แบบ Association 3.2 ความสัมพนั ธ์แบบรวม (Aggregation) เปน็ ความสมั พันธร์ ะหว่างวัตถุท่ีเป็นสว่ นหน่ึงของอีกวัตถุหนงึ่ มีการรวม องค์ประกอบความสัมพันธ์กัน โดยวัตถุท่ีเป็นองค์ประกอบ (Part Class) จะเป็นอิสระ ต่อวัตถุที่จะมาเป็นส่วนประกอบ (Whole Class) ซ่ึงหากวัตถุท่ีเป็นส่วนประกอบ ถกู ลบทิง้ ก็ไมส่ ง่ ผลตอ่ วตั ถทุ ี่เป็นองค์ประกอบ ดังภาพที่ 11.6 แสดงความสมั พันธใ์ นการ ทากิจกรรมลงทะเบียนของเจ้าหน้าที่ทะเบียน โดยเจ้าหน้าที่ทะเบียนเปน็ องค์ประกอบ และกิจกรรมการลงทะเบียนเป็นส่วนประกอบ ซ่ึงหากไม่มีกิจกรรมลงทะเบียน เจา้ หน้าทท่ี ะเบียนกม็ ีกจิ กรรมอนื่ ต่อไปไมส่ ง่ ตอ่ วัตถุ กิจกรรม เจา้ หน้าท่ี ลงทะเบียน ทะเบียน ภาพที่ 11.6 ความสัมพนั ธแ์ บบ Aggregation

การวิเคราะห์และออกแบบเชิงวตั ถุ | 396 3.3 ความสมั พันธแ์ บบส่วนประกอบ (Composition) เป็นความสัมพันธ์ระหว่างวัตถุแบบข้ึนต่อกัน ในช่วงเวลาใดเวลาหน่ึง ท่ีวัตถุหลัก หากถูกทาลายก็จะทาให้วัตถุที่สัมพันธ์กันถูกทาลายตามไปด้วย ดังภาพที่ 11.7 คอมพิวเตอร์หน่ึงเครื่องจะมีวัสดุ CPU, RAM, Hard Disk หากไม่มีวัสดุดังกล่าว เครอื่ งคอมพิวเตอรก์ ็จะไมส่ ามารถใชง้ านได้ จงึ เป็นความสัมพันธ์แบบ Composition คอมพวิ เตอร์ CPU ภาพท่ี 11.7 ความสัมพันธ์แบบ Composition 3.4 ความสัมพันธแ์ บบสืบทอด (Generalization) เป็นความสมั พันธ์ระหวา่ งวตั ถุ ในลกั ษณะของการสบื ทอดคณุ สมบตั จิ าก คลาสหน่ึงเป็น Superclass และคลาสหนึ่งเป็น Subclass ดังน้ัน ความสัมพันธ์แบบนี้ จะเป็นการสร้างคุณสมบัติของ Superclass เพ่ือถ่ายทอดคุณสมบัติไปยัง Subclass ดงั ภาพท่ี 11.8 แสดงความสมั พันธแ์ บบสืบทอดคณุ สมบตั ขิ องโครงสร้างนก นก ชื่อ สายพนั ธุ์ สี เพศ บนิ () กิน () นอน () นกแก้ว นกกระจอกเทศ ช่ือ ชื่อ สายพนั ธ์ุ สายพันธ์ุ สี สี เพศ เพศ นา้ หนกั สดั ส่วน บิน () บิน () กิน () กนิ () นอน () นอน () ภาพท่ี 11.8 ความสัมพันธ์แบบ Generalization

การวเิ คราะหแ์ ละออกแบบเชิงวตั ถุ | 397 4. การแยกสลายและรวมโมดูล การออกแบบระบบงานเชิงวัตถุ ทีมพัฒนาจะต้องวิเคราะห์และออกแบบ ระบบงาน เพอื่ แก้ไขปญั หาในงานทม่ี ีความซับซ้อน และมกี ารใช้งานในวัตถุที่มีคณุ สมบัติ เหมือนกัน ดังน้ัน จึงมีหลักการแยกวัตถุหรือกิจกรรมเป็นส่วนงานหรือเรียกว่าโมดูล เพ่ือให้ง่ายและยืดหยุ่นต่อการใช้งาน มีวิธีการการสลายโมดูลเป็นกระบวนการท่ีแยก ปญั หา หรือส่ิงของเร่ืองท่เี กดิ อย่างใดอยา่ งหนงึ่ ซงึ่ ง่ายต่อการเข้าใจกระบวนการทางาน ไดด้ ขี ้ึน มแี นวทางการแยกกระบวนการและการประกอบ 3 วธิ ี ดงั นี้ 4.1 การแยกสลายในลักษณะบนลงลา่ ง การแยกแบบบนลงล่าง จะเป็นการแยกโมดูลจากงานใหญ่ไปยังงาน ย่อยเพ่ือง่ายต่อการจัดการงาน เช่น ระบบสารสนเทศบุคลากร เป็นระบบท่ีให้บริการ สาหรับบุคลากร การแบ่งงานย่อยด้วยลักษณะงาน จะแยกย่อยเป็นระบบเงินเดือน ระบบงานธรุ การ ระบบบันทึกการทางาน เป็นต้น 4.2 การแยกสลายวัตถุ การแยกสลายวัตถุ จะเป็นการแยกสลายวัตถุปัญหาหรืองาน โดยการ แยกปัญหาหรืองาน เป็นวัตถุที่สามารถทางานได้ด้วยวัตถุตนเองได้ มีคุณสมบัติการ ทางานเป็นเอกเทศ เป็นวัตถุ สามารถนาไปใช้กับระบบงานอ่ืนได้ เช่น เคร่ือง คอมพิวเตอร์หน่ึงเคร่ืองเรียกว่าวัตถุ แยกช้ินอุปกรณ์ก็จะได้ CPU, RAM, HDD, Mainboard เปน็ ตน้ จะเหน็ ว่าอุปกรณ์ตา่ งๆ ทม่ี ีสามารถนาไปใช้กบั เคร่อื งคอมพิวเตอร์ เคร่อื งอนื่ ไดด้ ว้ ยคณุ สมบตั ิของตนเอง 4.3 การประกอบรวม โมดูลที่เป็นอิสระท่ีสามารถนาไปสร้างเป็นโมดูลอ่ืนได้ ด้วยวัตถุ คุณลักษณะของวัตถุนั้น ๆ หรือนาวัตถุโมดูลอื่นมาประกอบรวมเป็นโมดูลชิ้นงานใหม่ เช่น การประกอบเคร่ืองคอมพิวเตอร์เครื่องใหมจ่ ะต้องให้วัสดุ CPU, RAM, HDD มาใช้ ประกอบรวมเป็นเครือ่ งคอมพวิ เตอร์เคร่ืองใหม่ ซ่ึงวัตถุทุกตัวสามารถนามารวมกนั เป็น โมดูลด้วยคุณสมบตั ิของวัตถุ เปน็ ตน้

การวเิ คราะห์และออกแบบเชิงวัตถุ | 398 คณุ สมบัตขิ องแนวคดิ เชงิ วตั ถุ การพัฒนาระบบงานด้วยแนวคิดเชิงวัตถุ เป็นการใช้หลักการวิเคราะห์และ ออกแบบการแก้ไขปัญหางานด้วยการมองกิจกรรม บุคคล สัตว์ สิ่งของ สถานที่ กจิ กรรมเป็นวัตถุ โดยการมีคณุ สมบตั ิของแนวคดิ เชิงวัตถุ 3 ประเดน็ หลกั ดังนี้ 1. การสบื ทอด (Inheritance) แนวคิดการใช้เทคนิคการพัฒนาระบบด้วยการนาของคาสั่งมาใช้งานใหม่ โดย ใช้ประโยชน์การทางานจากการทางานท่ีอาศัยหลักการสบื ทอด ทีว่ ตั ถุกาหนดคณุ สมบัติ วัตถุทส่ี ร้างข้นึ หรือการสร้างวัตถุลูกขึ้นมาเรยี กใช้คณุ สมบตั ิและพฤตกิ รรมจากวตั ถุแม่ท่ี สร้างข้ึนมาอยู่เดิมได้ ตามลักษณะความสัมพันธ์เพื่อลดความซ้าซ้อนในการพัฒนา ระบบงาน และเพิ่มประสิทธิภาพการทางานให้รวดเร็วย่ิงข้ึน เช่น การถ่ายทอด คุณสมบัติของแม่ไปหาลูกของยานพาหนะ มีเรือ เครื่องบิน รถยนต์ รถโดยสาร ประจาทางและประเภทรถโดยสารประจาทางก็มีลาดับชั้นอีกหลายชนิด เป็นต้น ดังภาพที่ 11.9 แสดงตัวอย่างการสืบทอดคุณสมบัติของวัตถุยานพาหนะ และตัวอย่าง ภาพที่ 11.10 และ 11.11 แสดงการทางานแบบลาดบั ชนั้ ของอุปกรณส์ ารองข้อมลู ยานพาหนะ เรือ เครอ่ื งบนิ รถยนตส์ ่วนบคุ คล รถโดยสารประจาทาง รถมนิ บิ สั รถสามลอ้ รถสามล้อเคร่อื ง ภาพที่ 11.9 การสบื ทอดคุณสมบตั ิของวัตถุ

การวิเคราะห์และออกแบบเชงิ วัตถุ | 399 การทางานของวัตถุจะมีการลาดับชั้น (Hierarchy) ทุกระบบงานจะมี ความสัมพันธ์การเรียกใช้งาน การทางานด้วยแนวคิดเชิงวัตถุ จะมีวัตถุที่ถูกสร้างขนึ้ มา และมีความสัมพนั ธ์กนั ในระบบงาน การจัดประเภทลาดับชั้นจะช่วยให้ผพู้ ัฒนารู้ลาดับ ชั้นการทางาน คุณสมบัติและการถ่ายทอดคุณสมบัติของวัตถุ การแยกวัตถุ แนวทาง ลาดบั ชั้น จะแสดงใหเ้ หน็ คณุ สมบตั ทิ ถี่ ่ายทอดในลาดบั ประเภทวัตถุ ดังนั้น หากมีการนา วตั ถุทมี่ อี ยู่เดมิ มาสรา้ งงานใหม่ กจ็ ะสามารถรถู้ ึงลาดับการถ่ายทอดคุณสมบตั ิของวตั ถไุ ด้ ดังภาพที่ 11.10 แสดง การทางานที่มีลาดับชั้นของหน่วยจัดเก็บข้อมูลของอุปกรณ์ คอมพิวเตอร์ Storage Device Hard Disk Compact Disk SD Card USB Thumb Drive HDD HDD CD DVD SD Card Mini Card MicroSD Flash Drive Intrenal Extrenal ภาพที่ 11.10 ลาดบั ชั้นของอุปกรณ์สารองข้อมูล จากภาพที่ 11.10 แสดงลาดับประเภทคุณสมบัติของอุปกรณ์สารอง ข้อมูล ทม่ี ปี ระเภทการทางาน 4 ประเภท แตล่ ะประเภทก็จะมวี ัตถุย่อยในลาดบั ตอ่ ไป กรณีที่จะมีการจัดหาอุปกรณ์สารองข้อมูลเพิม่ Solid-State Drive หรือ SSD จะมีลาดับการถ่ายทอดคุณสมบัติเป็นอุปกรณ์จัดเก็บประเภท Hard disk ลาดับ ย่อย HDD External ดังภาพท่ี 11.11 แสดงลาดับชัน้ ย่อยของอุปกรณ์ SSD SSD ภาพที่ 11.11 ลาดับช้นั ของการถา่ ยทอดคณุ สมบัตขิ องอุปกรณ์ SDD

การวเิ คราะห์และออกแบบเชงิ วตั ถุ | 400 2. ความสามารถในการเกบ็ ซ่อนขอ้ มูล (Data Encapsulation) การจัดเก็บข้อมลู และซ่อนรายละเอียด เพื่อความปลอดภัยของข้อมูลเป็นการ ป้องกันการเข้าถึงข้อมูลโดยตรง ด้วยสถาปัตยกรรมการซ่อนรายละเอียดของข้อมูลจาก การกาหนดคุณสมบัติและพฤติกรรมของวัตถุ ทาให้การออกแบบวัตถุจะต้องพิจารณา ฟังก์ชันการทางานที่จะต้องมีการปกปิดหรือห่อหุ้มระบบนั้น หมายถึง การควบคุมการ เข้าถึง เพ่ือป้องการความเสียหายท่ีเกิดจากการเปลี่ยนแปลงคุณสมบัติของวัตถุ ดังนั้น การกาหนดให้ผู้ใช้งานเข้าถึงหรือเรียกใช้งานในฟังก์ชันต่าง ๆ โดยกาหนดสิทธิการ ควบคมุ การมองเห็นท่สี ามารถปรับปรงุ แก้ไขตัวแปรภายในวัตถุ มปี ระเภทการทางานหลัก 3 ระดับ คือ 1) แบบท่ัวไป 2) แบบส่วนตัว 3) แบบป้องกัน เช่น การใช้บริการระบบ สารสนเทศนักศึกษาของนายวรวุฒิ เป็นการเข้าถึงข้อมูลแบบส่วนตัวด้วยการใช้รหัส ประจาตัวนักศึกษาและรหัสผ่านท่ีได้รับจากระบบงานทะเบียนเท่านั้น จึงจะเข้าถึง ระบบงาน เพ่ือลงทะเบยี นและดูรายละเอียดเก่ียวกบั หลกั สตู ร เปน็ ต้น แนวคิดเชิงวัตถุ มีการเขียนโปรแกรมท่ีรองรับการทางานแบบซ้าซ้อน มีการ ทางาน คือ มองการทางานเป็นโมดูลหรือระบบย่อย เปน็ วัตถทุ ่มี ีความเป็นอิสระ และวัตถุ ท่ีสร้างมาแล้วยังสามารถนากลับมาใช้ได้อีก การห่อหุ้มจะมีการซ่อนเร้นข้อมูล (Information Hiding) เปน็ ความสามารถในการกาหนดคณุ สมบัติลกั ษณะ การกาหนดให้ ผู้ใช้งานเรียกคุณสมบัติได้ตามรูปแบบท่ีกาหนดเท่านั้น ในการทางานแบบน้ีเป็นการ ป้องกันการเปล่ียนแปลงของข้อมูล จึงเป็นประโยชน์ท่ีทาให้ข้อมูลเสียหายภายหลังได้ ดังเช่นภาพท่ี 11.12 วัตถุของนักศึกษาที่มีคุณสมบัติการห่อหุ้ม และภาพที่ 11.13 แสดง การห่อหมุ้ ของวตั ถุ Object Object แต่ละ Object จะมีวิธีการกาหนด Method การเข้าถึงข้อมูลของ Method Attribute ดังนั้นการเรียกใช้ Attribute ทุกอย่าง ถูกซ่อนรายละเอียดไว้ตาม Attribute คุณสมบตั ขิ องการห่อหุ้มวัตถุ นกั ศึกษา นักศึกษาจะถูกกาหนดวิธีการเข้าถึง เช่น การเข้าถึงแบบทั่วไป ส่วนตัว ป้องกนั เปน็ ต้น แต่ละวตั ถุจะมีวิธีการกาหนด Method การเข้าถงึ ข้อมูลของ (+get) Attribute ดังน้ันการเรยี กใช้ Attribute ทกุ อยา่ งถกู ซ่อนรายละเอยี ดไว้ หรือ รหสั นักศกึ ษา ชอ่ื ท่ีเรยี กวา่ การหอ่ หมุ้ แบบ Information Hiding ภาพท่ี 11.12 กาหนดคุณสมบตั ิการห่อหมุ้ วัตถนุ ักศกึ ษา

การวเิ คราะห์และออกแบบเชิงวตั ถุ | 401 วัตถทุ ่ี 1 วัตถุที่ 3 Method Method Method Attribute Attribute Method Method วัตถุที่ 2 Method Attribute Method ภาพที่ 11.13 การหอ่ หมุ้ วตั ถุ ภาพที่ 11.13 แสดงการหอ่ หุ้มวัตถุโดยวัตถุที่ 2 และวตั ถุท่ี 3 จะเรยี กใช้ คณุ สมบัตไิ ด้ก็ จะตอ้ งมกี ารผ่านการกาหนดเงอ่ื นไข Method ของวตั ถุที่ 1 จากตวั อยา่ ง แสดงใหเ้ ห็นวา่ การห่อหุ้มด้วยการซ่อนเร้นคุณสมบตั วิ ัตถุในการเขา้ ถึงขอ้ มลู 3. การใช้งานแบบหลากหลายรปู แบบ (Polymorphism) การพัฒนาระบบแนวคิดเชิงวัตถุ เป็นการทางานที่มีการเรียกใช้จากวัตถุใน ลักษณะ คุณสมบัติและพฤติกรรมเดียวกัน แต่สามารถสร้างระบบงานท่ีแตกต่างกันได้ คุณสมบัติของวัตถุประเด็นนี้ จึงรองรับการทางานท่ีมีหลากหลายลักษณะงาน ที่มี หลากหลายรูปแบบ เช่น วัตถุคุณสมบัติเดียวกันแต่สามารถรับค่าที่แตกต่างกันหรือท่ี เรียกวา่ คุณสมบตั เิ ดียวกันแตพ่ ฤตกิ รรมต่างกัน เปน็ ต้น

การวิเคราะห์และออกแบบเชงิ วตั ถุ | 402 สตั วน์ า้ ชื่อ สายพนั ธุ์ ประเภท วา่ ยน้า () ปลา มา้ น้า ปลาหมกึ ช่ือ ชอ่ื ชื่อ สายพนั ธ์ุ สายพนั ธุ์ สายพันธ์ุ ประเภท ประเภท ประเภท ว่ายน้า () วา่ ยน้า () วา่ ยน้า () กนิ ปลาเลก็ () กินสาหรา่ ย () กนิ กุ้ง ปู () ภาพที่ 11.14 การใชง้ านแบบหลากหลายรปู แบบ Polymorphism ขน้ั ตอนออกแบบระบบงานแนวคดิ เชิงวตั ถุ แนวทางการพัฒนาซอฟต์แวร์เชิงวัตถุ ผู้พัฒนาจะต้องทาความเข้าใจกับ องค์ประกอบการออกแบบเชิงวัตถุ ด้วยการวิเคราะห์ปัญหาโดยอาศัยแนวคิดเชิงวัตถุ และการออกแบบเชิงวัตถุ เป็นกระบวนการออกแบบที่จะต้องพฒั นาแบบจาลองควบคู่ มีแผนภาพไดอะแกรมท่ีแสดงกระบวนการทางานของระบบงาน แนวทางการวิเคราะห์ ระบบตามหลักแนวคดิ เชงิ วตั ถุ มขี ัน้ ตอนหลักในการออกแบบระบบงาน 5 ขัน้ ตอน ดังน้ี 1. การรวบรวมและศึกษาความตอ้ งการของระบบ การรวบรวมเอกสารที่เก่ียวกับระบบงาน จะเป็นพื้นฐานการศึกษา ความต้องการของระบบ ผู้ออกแบบระบบจะต้องเข้าใจโครงสร้างการบริหารงาน ขั้นตอนการทางานในแต่ละกิจกรรมท้ังหมด มีองค์ประกอบการดาเนินอย่างไร เม่ือทีม พัฒนาเข้าใจเบื้องต้นเก่ียวกับข้อมูลระบบงาน ก็จะดาเนินการในขั้นตอนการสอบถาม ความต้องการ ปัญหาท่ีเกิดข้ึนของระบบงานเดิมหรือปัญหาในการทางาน

การวเิ คราะห์และออกแบบเชิงวัตถุ | 403 เพื่อให้ได้ข้อมูลและความต้องการ นาไปวิเคราะห์และออกแบบกาหนดวัตถุ ตัวแปร คลาสในข้ันตอนต่อไป 2. การวิเคราะห์ออกแบบคลาส ข้ันตอนน้ี ทีมพัฒนาจะนาข้อมูลจากการวิเคราะห์ความต้องการจาก ผู้ใช้งาน และมีเก่ียวข้องกับการใช้บริการกับระบบงาน นาข้อมูลมาวิเคราะห์เพ่ือ ออกแบบคลาสที่เก่ียวข้องของการทางานในหลกั ความจรงิ 3. การจัดเก็บขอ้ มลู พฤติกรรมของคลาส จากการรวบรวมข้อมูลของคลาส จะทราบรายละเอียดการทางานของ ระบบ รวมถึงเห็นความสัมพันธ์ระหว่างคลาสท่ีมีในระบบงาน ดังนั้น ขั้นตอนนี้จึงเป็น การลงรายละเอียดในการจัดเก็บรายละเอียดของพฤติกรรมความสัมพันธ์ของคลาสแต่ ละคลาส และมบี ทบาทสาคัญอย่างไรกับระบบงาน 4. สร้างความสมั พันธร์ ะหวา่ งคลาส จากข้ันตอนท่ี 3 ผู้พัฒนระบบงานจะทราบรายละเอียดความสัมพันธ์ ระหว่างคลาส พร้อมความสาคัญของแต่ละคลาสที่มีในระบบ ดังนั้น ขั้นตอนจะสร้าง ความสัมพันธ์ระหว่างคลาสท่ีเกดิ จากพฤติกรรมของแต่ละคลาส กาหนดคุณสมบัติของ พฤติกรรม ผู้พัฒนาจะสามารถนาผลการวิเคราะห์ไปออกแบบระบบแผนของ แบบจาลอง เพอ่ื นาไปพัฒนาซอฟตแ์ วร์ต่อไป 5. การสร้างแบบจา้ ลองของคลาส การวิเคราะห์ระบบงานของคลาสและความสัมพนั ธ์ พฤติกรรมท่ีเกดิ ข้ึนใน การทางาน นาสู่ข้ันตอนการสร้างแบบจาลองของคลาสด้วยแนวคิดเชิงวัตถุ มีเครื่องมอื ในการสร้างแบบจาลองที่นิยมใช้งานในปัจจุบัน คือ Unified Modeling Language หรอื UML เปน็ เคร่อื งมอื ทใี่ ช้ในการสอื่ สารระหวา่ งผใู้ ช้งานและนักพฒั นาระบบ ที่มกี าร นาเสนอด้วยแผนภาพที่มีไดอะแกรมหลัก 13 รูปแบบ แต่ละรูปแบบจะมีรูปแบบ วัตถุประสงคท์ ่ใี ชง้ าน

การวเิ คราะห์และออกแบบเชิงวัตถุ | 404 การออกแบบระบบด้วยยูเอม็ แอล ยูเอ็มแอล (Unified Modeling Language: UML) คือ ภาษาท่ีแสดงสัญลกั ษณ์ ที่อธบิ ายรายละเอียดในการสร้างแบบจาลอง มาตรฐานท่ีใช้กับหลักการออกแบบระบบ เชิงวัตถุมีการกาหนดคุณสมบัติ ความสัมพันธ์ระหว่างวัตถุท่ีสร้างข้ึนเพื่อใช้พัฒนา ระบบงาน เป็นเครื่องมือที่ใช้ในการสื่อสารระหว่างผู้ใช้งานและนักพัฒนาระบบที่มีการ นาเสนอด้วยแผนภาพ 1. สว่ นประกอบหลกั ของยูเอม็ แอล ยูเอ็มแอลจะแสดงส่วนประกอบในการทางาน 3 ส่วนประกอบ คือ 1) Things 2) Relation 3) Diagrams มรี ายละเอียดดงั น้ี 1.1 สัญลกั ษณท์ ว่ั ไป (Things) 1.1.1 หมวดโครงสรา้ ง (Structural) ได้แก่ Class, User Case, Interface, Collaboration, Component, Active Class ดงั ตารางท่ี 11.2 แสดง สัญลักษณโ์ ครงสรา้ งของยูเอ็มแอล ตารางที่ 11.2 สญั ลกั ษณโ์ ครงสร้างของยเู อ็มแอล สัญลักษณ์ ชอ่ื รายละเอียด Class คาอธิบายถึงกลมุ่ ของวัตถุ คลาสหรอื เรียกวา่ ต้นแบบหรอื แมพ่ มิ พส์ าหรับ สรา้ งวัตถุใหม่ Use Case ช่ืออธิบายการปฏบิ ัติหรอื การกระทา Use Case Interface อธิบายพฤตกิ รรมทีม่ ีตอ่ วัตถุ Interface

การวิเคราะหแ์ ละออกแบบเชงิ วัตถุ | 405 ตารางที่ 11.2 สญั ลกั ษณโ์ ครงสร้างของยเู อ็มแอล (ต่อ) สญั ลักษณ์ ชอ่ื รายละเอียด Collaboration การรวมกลุม่ ขององคป์ ระกอบย่อย ของพฤติกรรมหรือเมธอดในคลาส Collaboration Active Class Process Class ท่มี ีการประมวลผล ลงทะเบียน ท่ีวตั ถทุ ี่มากกวา่ หนง่ึ คาสัง่ +รหัสนักศึกษา ประมวลผล - ลงทะเบยี นใหม่ - เพิม่ /ถอน 1.1.2 หมวดพฤตกิ รรม (Behavioral) ไดแ้ ก่ Interaction, State Machine มีสัญลกั ษณ์ ดงั ตารางท่ี 11.3 แสดงสญั ลักษณ์กล่มุ พฤตกิ รรมของคลาส ตารางที่ 11.3 สัญลักษณ์กลุ่มพฤติกรรมของคลาส สญั ลักษณ์ ชือ่ รายละเอียด การแสดงขา่ วสารระหว่างวตั ถุ เป็น Interaction พฤติกรรมของวตั ถทุ ี่มกี าร แลกเปลีย่ นข่าวสาร State ชือ่ อธิบายการปฏิบัติหรอื การกระทา Machine State

การวเิ คราะห์และออกแบบเชงิ วัตถุ | 406 1.1.3 หมวดจดั กลุ่ม (Grouping) ไดแ้ ก่ Package ดังตารางท่ี 11.4 แสดงสญั ลักษณก์ ารจัดกล่มุ ตารางท่ี 11.4 สัญลกั ษณก์ ลมุ่ การจัดกลมุ่ สญั ลกั ษณ์ ช่ือ รายละเอียด Component Packaged ของคลาสเปน็ ในรูปแบบ Interface Collaboration ส่วนประกอบทีม่ จี รงิ เปน็ ส่ิงท่ีมีใน ระบบงาน 1.1.4 หมวดค้าอธิบายประกอบ (Annotational things) ได้แก่ Note ดงั ตารางท่ี 11.5 แสดงสัญลักษณค์ าอธบิ ายประกอบ ตารางที่ 11.5 สัญลักษณ์อธิบายประกอบ สญั ลักษณ์ ช่ือ รายละเอยี ด Note สว่ นอธิบายหมายเหตุ 1.2 สัญลักษณ์ความสัมพันธ์คลาสในยูเอม็ แอล (Relationship) ความสมั พันธร์ ะหวา่ งวัตถุหรือคลาส แสดงสัญลักษณ์ ดังตารางที่ 11.6 แสดงสัญลักษณ์ความสัมพันธ์ และตารางที่ 11.7 อธิบายความหมายของสัญลักษณ์ท่ี แทนจานวนวตั ถุทม่ี ีความสัมพันธใ์ นรูปแบบต่างๆ ดงั นี้ 1.2.1 ความสัมพนั ธแ์ บบเก่ียวพนั (Association Relationship) ความสัมพันธ์เชิงโครงสร้าง อธิบายการเชื่อมโยงระหว่างวัตถุ ความสมั พนั ธ์ระหว่าง 2 สงิ่ ทเ่ี ก่ียวพันกัน มีความสัมพนั ธ์ 2 แบบ

การวิเคราะหแ์ ละออกแบบเชงิ วตั ถุ | 407 1) ความสมั พันธแ์ บบรวมกลุม่ (Aggregation) ความสมั พันธ์ท่ีมีการรวมองค์ประกอบทม่ี สี ่วนสัมพนั ธก์ ัน โดย วัตถุที่ใหญ่ที่สุดเป็นหลักและมีคลาสอ่ืนๆ เป็นส่วนประกอบที่เป็นอิสระมารวม องคป์ ระกอบ 2) ความสมั พันธแ์ บบสว่ นประกอบ (Composition) ความสัมพันธ์ท่ีมีองค์ประกอบที่มีความสัมพันธ์ โดยมีวัตถุท่ี ใหญท่ ่สี ุดเป็นวัตถหุ ลกั และมีคลาสอ่ืนๆ มารวมเป็นองคป์ ระกอบ ซ่ึงหากวัตถหุ ลักมีการ เปล่ียนแปลงหรอื ลบ ก็จะสง่ ผลตอ่ คลาสท่ีเป็นองคป์ ระกอบรว่ ม 1.2.2 ความสมั พันธแ์ บบสบื ทอด (Generalization Relationship) ความสมั พนั ธร์ ะหวา่ งวัตถุ ในลักษณะของการสืบทอดคุณสมบตั ิ จากคลาสหนงึ่ กับคลาสหนงึ่ 1.2.3 ความสัมพันธแ์ บบรไี ลเซช่นั (Realization Relationship) ความสมั พันธท์ ่เี ชื่อมโยงระหวา่ ง Interfaces และ Class ตารางที่ 11.6 สัญลกั ษณค์ วามสัมพันธ์ สัญลกั ษณ์ ชือ่ รายละเอยี ด Association ความสมั พนั ธ์เชิงโครงสรา้ ง อธบิ ายการเชือ่ มโยง ระหวา่ งวัตถุ มีความสมั พนั ธ์ 2 แบบคอื - Aggregation ความสัมพันธ์แบบวัตถเุ ป็นส่วน หน่งึ ของวตั ถบุ างสว่ นทีท่ างานดว้ ยวัตถเุ องได้ - Composite ความสมั พันธท์ มี่ กี ารควบคุมจาก วตั ถหุ น่ึงทถ่ี กู แยกออก หากมีการลบวตั ถหุ นง่ึ ก็ จะหายไป Dependency ความสัมพันธ์แบบพึง่ พาของคลาสหนึง่ ขึน้ ตรงกับอกี คลาสหนงึ่ Realization ความสมั พนั ธ์ท่กี าหนดการใช้งานของ Interfaces และ Class

การวเิ คราะห์และออกแบบเชิงวัตถุ | 408 ตารางท่ี 11.7 สญั ลกั ษณ์ท่ใี ช้แทนจานวนวัตถุ สญั ลกั ษณ์แทน ความหมาย จ้านวนวตั ถุ 1 จานวนหนึ่ง เช่น นักศึกษาหนึ่งคนมีรหัสประจาตัวนักศึกษา หมายเลขเทา่ น้ัน 0..1 0 หรือ 1 เท่าน้ัน เช่น อาจารย์เป็นสมาชิกสหกรณ์ได้ 1 ชื่อ หรอื ไม่เป็นสมาชิกกไ็ ด้ 1..* มากกว่า 1 เช่น นักศึกษาลงทะเบียนเรียนในภาคเรียนที่ 1 อยา่ งนอ้ ยตอ้ งลงทะเบยี นอย่างน้อย 1 วิชา ค่าคงท่ี 1..ค่าคงที่ 2 กาหนดค่าคงท่ี เช่น การยืมหนังสือนักศึกษาได้อย่างน้อย 5 ประเภท แตไ่ ม่เกิน 8 ประเภท การใช้สัญลักษณ์ความสัมพันธ์ของคลาสแบบมีส่วนร่วมและจานวนวัตถุท่ีมี ความสัมพันธ์ ดังภาพท่ี 11.15 นักศึกษาหน่ึงคนมีรหัสบัตรนักศึกษาหมายเลขเดียว เท่านั้น ภาพที่ 11.16 แสดงความสัมพันธ์ระหว่างอาจารย์ท่ีไม่เป็นสมาชิกสหกรณแ์ ละ เป็นสมาชกิ สหกรณไ์ ดช้ ่ือเดียวเท่าน้ัน นกั ศึกษา บตั รนักศึกษา 1 1 ภาพที่ 11.15 ความสัมพันธ์แบบส่วนรว่ มของนกั ศกึ ษาหนง่ึ คน

การวิเคราะหแ์ ละออกแบบเชงิ วตั ถุ | 409 อาจารย์ สมาชิกสหกรณ์ 1 0..* ภาพท่ี 11.16 ความสมั พันธ์แบบสว่ นรว่ มของการสมคั รสมาชิกสหกรณ์ ตัวอย่างความสมั พนั ธ์แบบกลุ่ม ภาพที่ 11.17 การทากิจกรรมงานทะเบียนมี คาร้อง เช่น การลงทะเบียน การเพ่ิมวิชา การถอนรายวิชาสาหรับนักศึกษา ในการ บันทึกคาร้องหนึ่งครั้ง จะมีเจ้าหน้าที่บันทึกรายละเอียดกิจกรรม เจ้าหน้าที่หนึ่งคน อาจจะได้บันทึกกิจกรรมน้ีหรือได้รับมอบหมายทากิจกรรมอื่น ดังน้ัน ความสัมพันธ์ แบบกลมุ่ สาหรับการใช้บริการยน่ื คารอ้ งจะมีหรอื ไม่มี กไ็ มส่ ่งผลตอ่ เจ้าหน้าที่คนน้ัน คา้ ร้อง เจ้าหน้าที่ทะเบียน 1..* 0..* ภาพที่ 11.17 ความสมั พันธ์แบบสว่ นร่วมการบันทกึ คาร้องของเจ้าหน้าท่ี ตัวอย่างความสัมพันธ์แบบส่วนประกอบภาพที่ 11.18 แสดงความสัมพันธ์ ระหว่างนักศึกษากับงานกิจกรรมชมรมท่ีนักศึกษาจะต้องเข้าร่วมกิจกรรมบังคับ ดังนั้น หากนักศึกษาพน้ สภาพการเรียนข้อมลู การรว่ มกจิ กรรมบังคับของมหาวิทยาลยั ก็จะต้อง มกี ารลบทิง้ ไปพร้อมกับการลบข้อมูลนกั ศึกษา นักศึกษา กจิ กรรม 1 0..1 ภาพท่ี 11.18 ความสัมพนั ธแ์ บบส่วนประกอบกิจกรรมของนักศกึ ษา

การวเิ คราะห์และออกแบบเชิงวัตถุ | 410 ตั ว อ ย่ า ง คว า ม สั ม พั นธ์ แ บ บ สื บ ท อ ด คุ ณ ส ม บั ติ ดั ง ภ า พ ที่ 11.15 แ ส ด ง ค ว า ม สั ม พั น ธ์ ข อ ง บุ ค ล า ก ร ม ห า วิ ท ย า ลั ย พื้ น ฐ า น เ ก่ี ย ว กั บ ข้ อ มู ล ส่ ว น บุ คคล ที่อยู่อาศัย วันเข้าทางาน และมหาวิทยาลัยจะกาหนดคลาสย่อย 2 คลาส คือ คลาส บุคลาการสายวิชาการ และคลาสบุคลากรสายสนับสนุน บุคลากร สายวิชาการ สายสนับสนุน ภาพท่ี 11.19 ความสัมพนั ธแ์ บบสบื ทอดคุณสมบัตบิ ุคลากร

การวเิ คราะหแ์ ละออกแบบเชิงวตั ถุ | 411 1.3 แผนภาพ (Diagrams) การสร้างแบบจาลอง เป็นเคร่ืองมือท่ีใช้ในการสื่อสารระหว่างผู้ใช้งาน และนักพัฒนาระบบ การนาเสนอด้วยแผนภาพยเู อ็มแอล มีไดอะแกรมหลัก 13 รปู แบบ แต่ละรูปแบบจะมีรูปแบบวัตถุประสงค์ท่ีใช้งาน ดังภาพท่ี 11.20 แสดงรูปแบบ การทางานของยเู อ็มแอล Class Diagram การแสดงโครงสร้างของคลาสในระบบงาน Object Diagram การแสดงความสัมพันธถ์ ึงวตั ถุต่างๆ ในระบบท่ีแสดงจากโครงสรา้ งคลาสไดอะแกรม Package Diagram แผนภาพทแี่ สดงถงึ การจัดกล่มุ องคป์ ระกอบของระบบเข้าด้วยกนั Composite Structure แสดงรายละเอียดโครงสรา้ งภายในของคลาส Use Case และองค์ประกอบอื่นๆ ของ Diagram ระบบงานความสมั พันธ์ Component Diagram เป็นแผนภาพทีแ่ สดงถงึ ความสมั พนั ธ์ระหว่างองค์ประกอบของซอฟตแ์ วร์ Deployment Diagram เปน็ แผนภาพท่ีแสดงถึงสถาปตั ยกรรมทางกายภาพของระบบทง้ั ฮาร์ดแวร์และ ซอฟต์แวรท์ ่ีติดตั้ง Use Case Diagram การแสดงความสัมพนั ธร์ ะหว่างผใู้ ช้บริการระบบงานดว้ ยการอธบิ ายการทางาน Activity Diagram การแสดงใหเ้ ห็นข้นั ตอนการทางานในแตล่ ะกจิ กรรมลาดบั เหตกุ ารณ์ท่เี กิดข้ึนด้วย แสดงสถานะทแี่ ตกต่างของวัตถทุ ี่มีการเปล่ียนแปลงตามสถานะการใชง้ านจริงของ State Diagram ระบบงาน การแสดงความสมั พนั ธใ์ นการเรยี กใชง้ านแตล่ ะเมทธอดทอี่ ย่ภู ายใตค้ ลาส มีลาดับการ Sequence Diagram ดาเนนิ งานแตล่ ะขัน้ ตอน Communication แผนภาพแสดงการรับส่งข้อมลู ระหว่างวัตถภุ ายใต้การทางานของ Use Case Diagram Timing Diagram แผนภาพแสดงช่วงระยะเวลาในการเปลยี่ นแปลงในแตล่ ะช่วงการทางานของระบบ Interaction Overview Diagram แผนภาพแสดงข้ันตอนการควบคุมกระบวนการทางานของระบบงาน ภาพท่ี 11.20 รปู แบบไดอะแกรมของยเู อ็มแอล

การวเิ คราะห์และออกแบบเชิงวัตถุ | 412 ในบทน้ี จะขออธิบายเคร่อื งมอื ยเู อม็ แอลในสว่ นที่นยิ มใชง้ าน เพือ่ พฒั นา ระบบงานเชิงวัตถุดังน้ี 1.3.1 Use Case Diagram คือแบบจาลองฟังก์ชันการทางานของระบบงาน เป็นการแสดง มุมมองของผู้ใช้งาน ว่ามีความต้องการทาอะไรในระบบ มีส่วนประกอบสัญลักษณ์ ดงั ตารางที่ 11.8 แสดงรายละเอยี ด Use Case ตารางท่ี 11.8 สญั ลักษณ์ Use Case Diagram สัญลักษณ์ ช่อื รายละเอยี ด Use Case คาอธิบายฟงั ก์ชันการทางาน Actor ตัวบุคคลผใู้ ชง้ าน Relation ความสัมพันธ์ระหว่าง Actor กบั User Case Extend ความสมั พนั ธ์ทก่ี ระตนุ้ ให้เกิด กจิ กรรมการทางานของ Use Case

การวเิ คราะหแ์ ละออกแบบเชิงวตั ถุ | 413 ตารางที่ 11.8 สญั ลักษณ์ Use Case Diagram (ต่อ) สัญลกั ษณ์ ชอ่ื รายละเอยี ด Include ความสมั พันธ์ทเ่ี รียกใชง้ านจาก Use Case อ่ืนจากกจิ กรรมทท่ี างาน Use Case กับ Use Case Generalization/ การเช่ือมโยง Use Case กบั Use Specialization Case และ Actor กับ Actor Actor กับ Actor ดังภาพท่ี 11.21 แสดงการใชส้ ญั ลกั ษณ์การสร้างงาน Use Case ทมี่ ีฟังก์ชันการ ทางาน 3 งาน และมีผใู้ ช้งาน 1 คน Actor Use Case Relation ภาพท่ี 11.21 การสร้างงาน Use Case

การวเิ คราะห์และออกแบบเชิงวัตถุ | 414 ภาพท่ี 11.22 แสดงการทางานระบบงานบริการงานทะเบยี น ท่มี ีนกั ศกึ ษามาใช้ บรกิ ารลงทะเบียน เพ่ิมรายวชิ า ถอนรายวิชา เทยี บโอนรายวิชา เป็นต้น เพิ่มรายวิชา ถอนรายวชิ า เทียบโอนรายวิชา กจิ กรรม ภาพท่ี 11.22 การใช้บริการงานทะเบียนสาหรับนกั ศึกษา 1.3.2 Activity Diagram คอื แผนภาพไดอะแกรมทีแ่ สดงพฤตกิ รรมของระบบงาน ที่แสดง ลาดับการดาเนินงานของกิจกรรม และแผนภาพ จะแสดงเง่ือนไขการตัดสินใจระหวา่ ง การทากิจกรรม มีหลักการเหมือนกันกับการ Flow Chart Diagram ตารางท่ี 11.9 แสดงสญั ลกั ษณ์การทางาน Activity Diagram

การวิเคราะห์และออกแบบเชิงวัตถุ | 415 ตารางที่ 11.9 สญั ลักษณ์ Activity Diagram สญั ลกั ษณ์ ชื่อ รายละเอียด Action กจิ กรรม Decision เง่อื นไขการตัดสินใจ Function คลาสฟังกช์ ันของกจิ กรรม Initial Node เรมิ่ ตน้ กิจกรรม Final Node สิ้นสุดกจิ กรรม Fork Node กจิ กรรมย่อย Join Node รว่ มกจิ กรรมยอ่ ย ตั ว อ ย่ า ง ก า ร ส ร้ า ง Activity Diagram ดั ง ภ า พ ท่ี 11.23 แสดงการทางานการส่งั ซ้ือสินค้าของบรษิ ัท RMO ลกู ค้าเขา้ ระบบสารสนเทศเพือ่ ค้นหา สินค้าผ่านระบบคอมพิวเตอร์ และส่ังซื้อสินค้า โดยระบบจะคานวณราคาสินค้าพร้อม ใบสั่งซ้ือสินค้า และภาพที่ 11.24 แสดงการทางานในการตรวจประวัติการยืมหนังสือ หอ้ งสมดุ สาหรับนกั ศกึ ษา โดยนกั ศกึ ษาคน้ หาขอ้ มลู ประวัตกิ ารยมื หนงั สือจากระบบงาน หอ้ งสมดุ และรายงานขอ้ มูลประวตั กิ ารใชง้ านแก่นกั ศกึ ษา

การวเิ คราะห์และออกแบบเชงิ วัตถุ | 416 ภาพท่ี 11.23 Activity Diagram การสง่ั ซ้ือสนิ ค้า (ท่มี า : John W. Satzinger, Robert B. Jackson and Stephen D. Burd, 2004, pp. 257)

การวเิ คราะห์และออกแบบเชงิ วตั ถุ | 417 ภาพที่ 11.24 Activity Diagram ของการตรวจสอบการยมื หนังสือ


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook