บทที่ 6 การวิเคราะห์และออกแบบระบบเชิงโครงสร้าง

สรุปหนังสือวิศวกรรมซอฟแวร์:สุวรรณี อัศวกุลชัย

NUTHDANAI WANGPRATHAM
2 min readJul 16, 2019

การวิเคราะห์และออกแบบระบบเป็นกระบวนการเชิงโครงสร้างที่ใช้สำหรับพัฒนาระบบสารสนเทศเพื่อนำไปใช้ในการแก้ปัญหาต่างๆ

แผนภาพการไหลของข้อมูล (DATA FLOW DIAGRAM, DFD)

แผนภาพการไหลของข้อมูล (DATA FLOW DIAGRAM, DFD) เป็นเครื่องมือช่วยให้นักวิเคราะห์ระบบเข้าใจถึงกระบวนการทำงานของแต่ระระบบย่อยโดยมีวัตถุประสงค์เพื่อทำความเข้าใจกับผู้เกี่ยวข้องรวมถึงอ้างอิงการพัฒนาในอนาคต ซึ่งในแผนภาพการไหลของข้อมูลมีส่วนประกอบดังนี้

  1. การประมวลผล (process) คือกระบวนการในการเปลี่ยนแปลงรูปแบบของข้อมูลจากลักษณ์หนึ่งไปสิ่งหนึ่งลักษณ์หนึ่ง
เครื่องหมายขั้นตอนการประมวลผล

2.เส้นทางการไหลของข้อมูล (Data flow) แสดงถึงการเคลื่อนที่ของข้อมูล

เครื่องหมายแสดงเส้นทางการไหลของข้อมูล

3.แหล่งเก็บข้อมูล (data store)คือที่รวบรวมข้อมูลหลังจากประมวลผลแล้วเพื่อใช้ในการผลิตสารสนเทศต่อไป

4.แหล่งประมวณผลภายนอก (External entity) คือสิ่งต่างๆภายนอกระบบอาทิคน หน่วยงาน

ข้อกำหนดการเขียนแผนภาพการไหลของข้อมูล

1. สัญลักษณ์ของแผนภาพไม่สามารถเชื่อต่อกันได้โดยตรงจำเป็นต้องมีการไหลเพื่อบอกทิศทางการไหล

2. การไหลของข้อมูลทุกครั้งต้องผ่านการประมวลผลก่อนทุกครั้ง

3. จำนวนข้อมูลต้องเท่ากันตั้งแต่ต้นจนจบ

Logical data flow และ Physical data flow

Logical data flow เป็นแผนภาพการไหลของข้อมูล แสดงกระบวนการของระบบในระดับแนวคิด เพื่อแสดงการไหลของระบบงาน

Physical data flow เป็นแผนภาพการไหลของข้อมูล แสดงกระบวนการของระบบในระดับแนวคิด เพื่อแก้ปัญหาหรือปรับปรุงการทำงานให้ดีขึ้น

ขั้นตอนการเขียนแผนภาพการไหลของข้อมูล

  1. สร้างภาพรวมของระบบโดยการเขียนแผนภาพการไหลของข้อมูลเบื้องต้น (Context diagram) ที่แสดงให้เห็นถึงเอนทิตีต่างๆ โดยยังไม่มี ที่จัดเก็บข้อมูล

2. แตกกระบวนการหลักให้เป็นกระบวนการย่อยๆ โดยเพิ่มการประมวลผลของระบบและที่เก็บข้อมูล

3. ถ้าหากมีรายละเอียดของกระบวนการย่อยจากขั้นตอนที่ 2 ให้ย่อยลงมฃไปเรื่อย จนสามารถเข้าใจได้ง่าย

4. ตรวจสอบข้อผิดพลาดของข้อมูลในแผนภาพการไหล

5. ตรวจสอบสมดุลของข้อมูลเข้าและออก

6. พัฒนารูปแบบจาก แผนภูมิ Logical data flow ให้ไปอยู่ในรูปแบบ แผนภูมิ Physical data flow

7. ทำการแบ่งส่วนของแผนภูมิ Physical data flow โดยการแบ่งเป็นระบบย่อย เพื่อความสะดวกในการพัฒนาโปรแกรม

การตรวจสอบความถูกต้องของแผนภาพการไหลของข้อมูล

การตรวจสอบความถูกต้องของแผนภาพการไหลของข้อมูลเป็นหัวใจสำคัญ ของการออกแบบระบบ เพราะหากแผนภาพมีข้อผิดพลาดหรือบกพร่องในขั้นตอนการออกแบบแผนภาพอาจส่งผลต่อความสำเร็จของการพัฒนาระบบได้เลยโดยมีข้อสังเกตที่สำคัญดังนี้

1. ถ้า DFD มีความซับซ้อนมสูง ควรแตก DFD เป็นระดับย่อยๆ

2. ไม่ควรใส่ข้อมูลที่ไม่มีการใช้ในระบบ

3. จำนวนระดับย่อยในแต่ละแผนภาพไม่ควรมีความแตกต่างกันมากเกินไป

พจนานุกรมข้อมูล (Data dictionary)

ในการพัฒนาโปรแกรมมักจะพัฒนาเป็นทีมดังนั้นเพื่อให้ทีมงานเข้าใจข้อมูลแต่ละส่วนตรงกันจึงจำเป็นต้องมี สิ่งที่เรียกว่า พจนานุกรมข้อมูล (Data dictionary)ซึ่งคือเอกสารแสดงรายละเอียดของข้อมูลทั้งหมดของระบบ นอกจากนั้น พจนานุกรมข้อมูล ยังมีประโยชน์อย่างมากเมื่อในอนาคตระบบจำเป็นต้องปรับปรุงแก้ไขหรือเชื่อมต่อข้อมูลกับระบบอื่น พจนานุกรมข้อมูล จะทำให้ผู้พัฒนาอื่นสามารถเข้าใจระบบได้เลย โดยปกติพจนานุกรมข้อมูลจะประกอบด้วย 5 ส่วนดังต่อไปนี้

1. ชื่อข้อมูล (Name and aliases of the data item)

2. คำอธิบายข้อมูล (Description of the data item)

3. ชนิดของข้อมูล (Data type)

4. ขนาดของข้อมูล (Length of Item )

5. หมายเหตุ (Other additional information)

การอธิบายข้อกำหนดของกระบวนการ (Process speciation)

การอธิบายข้อกำหนดของกระบวนการ (Process speciation) มีขึ้นเพื่อ ทำให้ผู้อื่นสามารถเข้าใจการประมวลผลรายละเอียดต่างๆ โดยเฉพาะการสือสารระหว่าง นักวิเคราะห์ระบบและ ผู้เขียนโปรแกรม เนื่องจากในการพูดคุยอาจทำให้อีกฝ่ายเข้าใจไม่ตรงกัน การมีการอธิบายข้อกำหนดของกระบวนการ (Process speciation)จะทำให้เข้าใจตรงกันมากขึ้น สุดท้าย การอธิบายข้อกำหนดของกระบวนการ (Process speciation) ยังทำให้สามารถตรวจสอบความถูกต้องของการออกแบบระบบได้ด้วย โดยในการอธิบายข้อกำหนดของกระบวนการ (Process speciation) มีด้วยกันสามแนวทางดังนี้

1. โครงสร้างภาษา หรือ pseudo code แสดง การอธิบายการประมวลผลที่ปรากฏอยู่บน DFD โดยมีรูปแบบการเขียนโครงสร้างภาษาที่เข้าใจง่ายคล้ายกับ การเขียนปรแกรมแบบโครงสร้างซึ่งมีการทำงาน 3 ส่วนดังนี้

a. แบบตามลำดับ เป็นประโยคที่แสดงให้เห็นถึงการทำงานที่ละขั้นตอนอย่างชัดเจน โดยไม่มีเงือนไขใดๆ

b. แบบมีเงือนไข อธิบายการประมวลผลที่มีข้อกำหนดตามแต่ละเงือนไขที่กำหนดโดยแบ่งย่อยได้ดังนี้

i. If-then-else จะเกิดขึ้นเมื่อเงื่อนไขมีเพียงสองทางเลือกเท่านั้น คือจะดำเนินการเมื่อเงือนไขเป็นจริงหรือไม่ดำเนินการเมื่อเงือนไขเป็เท็จ

ii. Case ใช้เมื่อเงือนไขมีความเป็นไปได้มากกว่าสอง กรณี โดยจะอธิบายเมื่อเหตุการณืต่างๆเกิดจะให้ระบบทำอะไร

iii. การทำซ้ำ เป็นโครงสร้างแบบมีเงือนไขที่ทำซ้ำไปเรื่อยๆ ภายใต้เงื่อนไขที่ระบุ

2. ตารางการตัดสินใจ ตารางการตัดสินใจ (Decision table) เป็นเครื่องมือที่ใช้แสดงเงื่อนไขการตัดสินใจ และการเลือกการทำงานหรือกระทำกิจกรรมใต้เหตุการณ์ของเงื่อนไขที่ระบุ เช่นเดียวกับต้นไม้การตัดสินใจ แต่ตารางการตัดสินใจเป็นลักษณะตาราง

3. แผนภาพต้นไม้ตัดสินใจ เป็นแผนภาพที่ใช้อธิบายการประมวลผลภายใต้เงื่อนไขต่างๆ โครงสร้างการอธิบายจะอยู่ในรูปแบบ node เเชื่อมต่อกับเงื่อนไข

--

--

NUTHDANAI WANGPRATHAM
NUTHDANAI WANGPRATHAM

Written by NUTHDANAI WANGPRATHAM

I am a learner and have a multipotential life. You can contact me at nutdnuy@gmail.com

No responses yet