บทที่ 6 พจนานุกรมข้อมูล และ คำอธิบายกระบวนการ (Data Dictionary and Process Description)
พจนานุกรมข้อมูล (Data Dictionary) เป็นแหล่งที่เก็บกลางของข้อมูลในระบบ สำหรับนักวิเคราะห์ระบบใช้ในการรวบรวมเป็นหลักฐานเอกสาร เพื่อการจัดการข้อมูลในระบบ รวมทั้งบรรจุข้อมูลของกระแสข้อมูล แหล่งเก็บข้อมูล เอนทิตีภายนอกและโพรเซสทั้งหมด
พจนานุกรมข้อมูลของสัญลักษณ์ต่างๆ ของ DFD
การอธิบายกระแสข้อมูล (Data Flow Description)
การอธิบายโครงสร้างข้อมูล (Data Structure Description)
การบรรยายโครงสร้างข้อมูล สัญลักษณ์ ความหมาย = ประกอบด้วยหรือเท่ากับ (Definition) + และ ( ) ข้อความในวงเล็บจะมีหรือไม่มีก็ได้ (Optional) { } ให้กระทำตามข้อมูลในวงเล็บซ้ำ (Iteration ) ถ้าเป็น 1{...} หมายถึงทำซ้ำอย่างน้อย 1 ครั้ง 1{...}5 หมายถึง ทำซ้ำอย่างน้อย 1 ครั้งแต่ไม่เกิน 5 ครั้ง [ ] ให้เลือกหน่วยข้อมูล (Data Element) ตัวใดตัวหนึ่งในวงเล็บ (Selection case *...* ข้อความในเครื่องหมาย *...* คือคำอธิบาย (Comment) @ ข้อมูลต่อไปนี้คือ key field /,: ใช้เป็นเครื่องหมายแยกข้อมูลให้เลือกได้ [] (Separator)
การอธิบายสมาชิกของข้อมูล (Data Element Description)
การอธิบายสมาชิกของข้อมูล (Data Element Description)
การอธิบายแหล่งที่เก็บข้อมูล (Data Store Description)
คำอธิบายกระบวนการ (Process Description) จากแผนภาพการไหลของข้อมูล (DFD) แหล่งจัดเก็บข้อมูล การเดินทางของข้อมูลโดยแสดงในแผนภาพบางครั้งอาจจะยากต่อการทำความเข้าใจ การแสดงรายละเอียดในแต่ละกระบวนการ จึงควรมีการแสดงรายละเอียด หรือ คำอธิบายกระบวนการ (Process Description) ที่สามารถอธิบายดีดีกว่าการใช้แผนภาพ โดยจำนวนของคำอธิบายกระบวนการจะมีมากน้อยเพียงใดขึ้นกับจำนวนงานที่แสดงอยู่ในแผนภาพการไหลของข้อมูลของแต่ละระดับ การเขียนเป็นภาษาเขียนเพียงภาพรวมอาจจะทำให้เข้าใจไม่ตรงกันในรายละเอียดได้จึงมีเทคนิคที่ใช้ในการอธิบายกระบวนการ 3 ลักษณะคือ ภาษาอังกฤษแบบโครงสร้าง (Structure English) ต้นไม้การตัดสินใจ (Decision Tree) ตารางการตัดสินใจ (Decision Table)
เครื่องมือที่ใช้ในการอธิบายการประมวลผล Structure English 1.0 Process Specification Form Decision Tree Decision Table
ภาษาอังกฤษแบบโครงสร้าง (Structure English) บางครั้งเรียกว่า โครงสร้างภาษา (Structure Language) คือการนำภาษาอังกฤษ (หรือภาษาไทย) มาเขียนเพื่อบอกรายละเอียดการทำงานของกระบวนการที่แสดงอยู่ใน DFD รูปแบบการเขียนใกล้เคียงกับการเขียนโปรแกรมที่มีคำสั่งเฉพาะ ประกอบด้วยคำสั่งคล้ายการเขียนโปรแกรมแบโครงสร้าง (Structure Programming) 3 ลักษณะดังนี้ โครงสร้างการทำงานแบบตามลำดับ (Sequence Structure) โครงสร้างการทำงานแบบเลือก (Selection Structure) โครงสร้างการทำงานแบบทำซ้ำ (Iteration Structure)
Begin While If End Do Then Repeat Case Else Until Of End if For Or AND ตัวอย่างคำสั่ง Begin While If End Do Then Repeat Case Else Until Of End if For Or AND
โครงสร้างการทำงานแบบตามลำดับ (Sequence Structure) Begin READ CustomerID, BookID Calculate TotalAmount = BookPrice * QTY Print Total Amount END
โครงสร้างการทำงานแบบตามลำดับ (Sequence Structure) เริ่ม (การฝากเงิน) ป้อนเลขที่บัญชีผู้ฝาก ตรวจสอบเลขที่บัญชีผู้ฝากถูกต้อง ป้อนจำนวนเงิน ปรับปรุงยอดเงินฝากในบัญชี พิมพ์รายการฝากเงินพร้อมยอดลงในสมุดฝาก จบการทำงาน
โครงสร้างการทำงานแบบเลือก (Selection Structure)
โครงสร้างการทำงานแบบเลือก (Selection Structure) แบบ IF- Then-Else BEGIN IF Accept_CustomerID then READ BookID, BookPrice Calculate Total Amount Else Unknown CustomerID END IF
โครงสร้างการทำงานแบบเลือก (Selection Structure) แบบ CASE Structure Select Case (Item) Case 1 : Statement 1; Case 2: Statement 2; Case 3: Statement 3; … … Case n: Statement n; End Case
โครงสร้างการทำงานแบบทำซ้ำ (Iteration Structure)
โครงสร้างการทำงานแบบทำซ้ำ (Iteration Structure) แบบ Do While Begin Do While Not End-of-File Read Book Record Print Book Record End Do End
โครงสร้างการทำงานแบบทำซ้ำ (Iteration Structure) แบบ Do Until Begin Do Read Book Record Print Book Record Until End-of-File End
ตัวอย่างภาษาอังกฤษแบบโครงสร้าง (Structure English)
ตัวอย่าง แผนภาพกระแสข้อมูลระบบควบคุมสินค้าคงคลังของ Hoosier Burger
ตัวอย่าง Structure English ของ Process ระบบควบคุมสินค้าคงคลังของ Hoosier Burger Process 1.0 : Update Inventory Added DO READ Next Invoice-item-record FIND Matching Inventory-record ADD Quantity-added from Invoice-item-record to _ Quantity-in-stock on Inventory-record UNTIL End-of-file Process 2.0 : Update Inventory Used DO READ next Stock-item-record FIND matching Inventory-record SUBTRACT Quantity-used on Stock-item-record from Quantity-in-stock on Inventory-record UNTIL End-of-file
ตัวอย่าง Structure English ของ Process ระบบควบคุมสินค้าคงคลังของ Hoosier Burger Process 3.0 : Generate Orders DO READ next Inventory-record BEGIN IF IF Quantity-in-stock is less than Minimum-order-quantity THEN Generate Order END IF UNTIL End-of-file Process 4.0 : Generate Payments READ Today’s-date DO SORT Inventory-record by Date READ next Invoice-record BEGIN IF IF Date is 30 days or greater than Today’s-date THEN Generate Payments END IF UNTIL End-of-file
ต้นไม้การตัดสินใจ (Decision Tree)
ตัวอย่างการเขียนแผนภาพต้นไม้การตัดสินใจ
ตัวอย่างการเขียนแผนภาพต้นไม้การตัดสินใจ ยอดขายทั้งแผนก > 1 ล้านบาท <= 1 ล้านบาท ยอดขาย > 50,000บาท ยอดขาย <= 50,000บาท ได้รับ 5% ของยอดขาย ได้รับจดหมายเชิดชูเกียรติ ได้เลื่อนตำแหน่ง ได้รับ 2% ของยอดขาย ไม่ได้อะไรเลย การจ่ายค่า คอมมิชชั่น
ตัวอย่างการเขียนแผนภาพต้นไม้การตัดสินใจ
ตารางการตัดสินใจ (Decision Table)
ตัวอย่างตารางการตัดสินใจ (Decision Table) ผู้ป่วยที่เข้ารับการรักษาพยาบาลที่โรงพยาบาล ผู้ป่วยบางคนมีการประกันสุขภาพเอาไว้ ซึ่งสามารถประกันสุขภาพได้มากกว่า 1 แบบต่อคน ดังนั้น การจ่ายเงินค่ารักษาพยาบาลจึงมีเงื่อนไขต่างๆ ตามมา
ตัวอย่างตารางการตัดสินใจ (Decision Table) คะแนนรวม มากกว่า 79 คะแนน อยู่ในช่วง 50 – 79 คะแนน น้อยกว่า 50 คะแนน ให้เกรดเป็น G ให้เกรดเป็น P ให้เกรดเป็น F X 1.มากกว่า 79 คะแนน 2.อยู่ในช่วง 50 – 79 คะแนน 3.น้อยกว่า 50 คะแนน Y N ให้เกรดเป็น G ให้เกรดเป็น P ให้เกรดเป็น F X
ตัวอย่างตารางการตัดสินใจ (Decision Table)
การเขียนกลุ่มเงื่อนไขที่เป็นไปได้
กรณีที่มีการปฏิบัติการที่ขัดแย้งและซ้ำซ้อนในการตัดสินใจ
การเขียนแบบฟอร์ม การอธิบายการประมวลผล ตัวอย่างการใช้ Structured English
การเขียนแบบฟอร์ม การอธิบายการประมวลผล ตัวอย่างการใช้ Decision Table
การเขียนแบบฟอร์ม การอธิบายการประมวลผล ตัวอย่างการใช้ Decision Tree
Reference สกาวรัตน์ จงพัฒนากร. การวิเคราะห์และออกแบบระบบสารสนเทศ. กรุงเทพฯ: สำนักพิมพ์มหาวิทยาลัยเกษตรศาสตร์, 2550.