บทที่ 9
การประมวลผล

วัตถุประสงค์เชิงพฤติกรรม (Behavioral Objectives)

หลังจากศึกษาบทเรียนนี้แล้ว นักศึกษาจะมีความสามารถดังนี

1 อธิบายจุดมุ่งวงหามายการประมวลผล
2 บอกประเภทการประมวลผลที่ไม่ต้องมีการอธิบาย
3 ยกตัวอย่างคำอธิบายการประมวลผล
4 ระบุวิธีการอธิบายการประมวลผล
5 อธิบายภาพกระแสข้อมูล
6 บอกกฎการเขียน DFD ได้ถูกต้อง
7 ยกตัวอย่างระบบงานห้องสมุด
8 ยกตัวอย่างการสร้าแบบสำหรับระบบใหม่
9 ยกตัวอย่างการออกแบบระบบระดับกายภาพ
10 จัดบอร์ดเชิงปฏิบัติการ “การประมวลผล”
11 สนทนาเชิงปฏิบัติการ “ขั้นตอนการสร้างตารางการตัดสินใจ (Decision Table)”
12 สนทนาเชิงปฏิบัติการ “ แผนภาพกระแสข้อมูล“
13 สนทนาเชิงปฏิบัติการ “ การพัฒนาโปรแกรมระบบงานห้องสมุด“
14 SWOT Analysis “การสร้างแบบระบบใหม่”
15 SWOT Analysis “การออกแบบระดับกายภาพ”
16 อธิบายคำศัพท์ได้ 14 คำ

บทที่ 9

การประมวลผล

จุดมุ่งหมายการประมวลผล

1. เพื่อให้การประมวลผลนั้นชัดเจนเข้าใจง่าย การใช้วิธีนี้จะทำให้ผู้วิเคราะห์ได้เรียนรู้รายละเอียดเกี่ยวกับขั้นตอนในการประมวลผลการทำงาน

2. เพื่อให้เกิดความเข้าใจถูกต้องในการอธิบายในรูปแบบเฉพาะของการประมวลผลระหว่างนักวิเคราะห์ระบบและโปรแกรมเมอร์

3. เพื่อตรวจสอบการออกแบบระบบ โดยการประมวลผลนั้นจะถูกต้องหรือไม่ด้านข้อมูลที่ป้อนเข้าเครื่อง และออกการรายงานทางหน้าจอ

ประเภทของการประมวลผลที่ไม่ต้องมีการอธิบาย

ประเภทของการประมวลผลที่ไม่ต้องมีการอธิบายสามารถแบ่งได้ดังนี้

1. การประมวลผลที่ใช้การแทนที่ทางกายภาพในส่วนของการป้อนข้อมูลเข้าระบบหรือการออกรายงานที่เป็นรูปแบบไม่ซับซ้อน เช่น การอ่านค่า การเขียนค่า เป็นต้น

2. การประมวลผลที่แทนที่กระบวนการตรวจสอบข้อมูลซึ่งจะมีรายละเอียดในพจนานุกรมข้อมูล

3. การประมวลผลที่เป็นการประมวลผลในลักษณะที่เป็นการดึง Function ที่มีอยู่เดิมหรือเป็นการนำโปรแกรมย่อยมาใช้

คำอธิบายการประมวลผล

คำอธิบายการประมวลผล “Process Description” หรือเรียกอีกอย่างหนึ่งว่า “Minispecs”

จะอธิบาย รายละเอียดการทำงานภายในโพรเซสหนึ่ง ๆ หรืออีกนัยหนึ่งก็คือ โพรเซสนี้เปลี่ยนอินพุตเป็นเอาต์พุตอย่างไร โพรเซสระดับล่างสุดใน DFD จะต้องเขียนคำอธิบายว่ามันทำงานอย่างไร

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

วิธีการอธิบายการประมวลผล

1. ประโยคโครงสร้าง (Structure Sentences)

2. การตัดสินใจแบบตาราง(Decision Tables)

3. ผังต้นไม้(Decision Tree)

นักวิเคราะห์ระบบจะเลือกใช้วิธีการใดวิธีการหนึ่งหรือใช้ปนกันก็ได้ขึ้นอยู่กับความเหมาะสม แต่ไม่ว่าจะเขียนด้วยวิธีใด ๆ เมื่อเขียนแล้วควรจะมีคุณสมบัติดังนี้

• เขียนแล้วคำอธิบายนั้นควรจะใช้สื่อสารกับผู้อื่นที่เกี่ยวข้องในระบบได้ง่าย ผู้ที่เกี่ยวข้องอาจจะเป็นผู้ใช้ผู้จัดการ ผู้ตรวจสอบ

• เขียนแล้วคำอธิบายนั้นสามารถนำมาตรวจสอบความถูกต้องกับผู้ใช้ได้ง่ายการเขียนเป็นประโยคโครงสร้างอาจจะไม่เหมาะสมถ้าต้องนำมาตรวจสอบกับผู้ใช้เพราะว่า คำอธิบายนั้นจะยาวแบะ คำอธิบายเกี่ยวกับเงื่อนไข หรือการทำงานซ้ำก็เขียนไม่สะดวก ตัวอย่างเช่น เงื่อนไขหรือการทำงานซ้ำก็เขียนไม่สะดวก ตัวอย่างเช่น เงื่อนไขที่มี AND,OR หรือ NOT

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

1. ความชอบของผู้ใช้

2. ความชอบของผู้เขียน

3. ลักษณะการทำงานของโพรเซสเซอร์

ประโยคโครงสร้าง (Structure Sentences)

วิธีนี้ใช้การอธิบายเป็นประโยคเขียนให้มีลักษณะเป็นโครงสร้างคล้าย ๆ การเขียนโปรแกรมโครงสร้าง การเขียนประโยคโครงสร้างอาจเลือกใช้คำศัพท์ต่าง ๆ กันดังนี้

• ใช้คำกริยาที่เมื่อทำแล้วมีความหมายว่าได้ผลลัพธ์บางอย่างออกมา เช่น “คำนวณ”

สิ่งนั้นสิ่งนี้ หรือ “เปรียบเทียบ” สิ่งนั้นกับสิ่งนี้ เป็นต้น คำกริยาที่อาจจะเลือกใช้ได้เช่น

GET COMPUTE

PUT DELETE

FIND VALIDATE

ADD MOVE

SUBTRACT REPLACE

MULTIPLR SET

DIVIDE SORT เป็นต้น

• ใช้ชื่อข้อมูลเป็นคำนามในประโยค ตัวอย่างเช่น วันชำระใบทวงหนี้ รายงานเพื่อเตรียมเงินสด เป็นต้น

• ใช้คำศัพท์ที่แสดงความสัมพันธ์ระหว่างข้อมูลเช่น “และ” “หรือ” “เท่ากับ” “ไม่เท่ากับ” “มากกว่า” และ “น้อยกว่า” เป็นต้น

• ใช้คำที่บอกการเคลื่อนที่ของข้อมูลคล้ายกับคำที่ใช้ในการเขียนโปรแกรมได้แก่

1. ถ้า........มิฉะนั้น(if…….else…….)

2. กรณี......(case)

3. ทำซ้ำ(Do3…….loop)

4. ทำตามลำดับ (Sequence)

สรุปประโยคโครงสร้าง ประโยคโครงสร้างและตารางตัดสินใจเป็นเครื่องมือที่ใช้อธิบายการทำงานภายในของ PROCESS ควรจะเลือกวิธีเขียนอธิบายการทำงานที่ดีและเหมาะสมกับงานนั้น ๆ

วิธีการตัดสินใจแบบตาราง (Decision Table)

การตัดสินใจแบบตารางเป็นตาราง 2 มิติโดยที่แถวตั้งด้านซ้ายเป็นเงื่อนไขและแถวนอนเป็นรายละเอียดของเงื่อนไขที่ทั้งหมดก่อน ตามด้วยกิจกรรมทั้งหมดที่มีในการประมวลผลนั้น และช่างถัดมาคือ กฎต่าง ๆ ที่เป็นตัวกำหนดผลในการกระทำกิจกรรมนั้น

รูปหลักการเขียนตารางตัดสินใจ (Decision Table)

ขั้นตอนการสร้างตารางตัดสินใจ(Decision Table)

1. พิจารณาว่ามีปัจจัยอะไรบ้างที่ใช้ในการตัดสินใจ และดูเงื่อนไขในการตัดสินใจว่ามีเงื่อนไขใดบ้าง เขียนลงในส่วนบนซ้ายมือของตารางเรียงไปตามแนวนอน

2. พิจารณากิจกรรมต่าง ๆ ที่มีโอกาสเกิดขึ้น เขียนลงในตารางการตัดสินใจด้านซ้ายมือด้านล่างเรียงไปตามแนวนอน

3. ตัดสินใจถึงความสัมพันธ์ของเงื่อนไขที่มีผลต่อกิจกรรมซึ่งจะเกิดขึ้นเป็นกฎที่ใช้ตัดสินใจให้เกิดการกระทำกิจกรรมนั้น เขียนเป็นกฎแต่ละข้อเรียงไปในแนวตั้ง โดยใส่ “ใช่ (Y) ”เมื่อเป็นไปตามเงื่อนไขนั้นให้ตรงกับแถวของเงื่อนไขนั้น และใส่ “ไม่ (N)” ในกรณีที่ไม่เป็นไปตามเงื่อนไขนั้นให้ตรงกับแถวของเงื่อนไขนั้น ซึ่งจะสามารถคำนวณได้เป็น 2N โดยที่ N คือจำนวนเงื่อนไข

4. ใส่กากบาท(?) ให้ตรงกันกับกิจกรรมที่จะต้องกระทำ (Action) เมื่อเป็นไปตามเงื่อนไขหรือกฎนั้น ถ้าไม่เกิดการกระทำกับกิจกรรมใด ให้ขีดเส้นแทน

ภาพที่ 9.1 แสดงตัวอย่าง ตารางการตัดสินใจ

ผังต้นไม้(Decision Tree)

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

ขั้นตอนการสร้างผังต้นไม้(Decision Tree)

การสร้างผังต้นไม้จะมีลักษณะดังต่อไปนี้

1. เขียนเริ่มต้นจากรากแตกกิ่งไปตามจำนวนเงื่อนไขที่เป็นไปตามกฎ โดยพิจารณาเงื่อนไขที่จะเกิดขึ้นในการตัดสินใจเริ่มแรก

2. แตกกิ่งของเงื่อนไขแรกนั้นเป็นเงื่อนไขถัดไป

3. แตกกิ่งของเงื่อนไขต่อไป จนกระทั่งหมดเงื่อนไขที่จะเกิดขึ้น

4. เขียนกิ่งของกิจกรรมที่จะต้องกระทำ เมื่อเป็นไปตามเงื่อนไขจากรากไปปลายกิ่งเงื่อนไขนั้น

เทคนิคในการเลือกวิธีการเขียนอธิบายการประมวลผล

1. เลือกวิธีประโยคโครงสร้างภาษา(Structure Language)เมื่อ

- การประมวลผลนั้นเป็นกรณีที่เกิดเหตุการณ์ที่มีการกระทำซ้ำ

- ต้องการสื่อสารระหว่างผู้ใช้กับนักวิเคราะห์ระบบในการอธิบายการประมวลผลวิธีนี้จะดีที่สุด

2. เลือกวิธีใช้ตารางการตัดสินใจ(Decision Table)เมื่อ

- เงื่อนไข กิจกรรมที่จะกระทำ และกฎในการประมวลผลมีความซับซ้อนมาก

- เมื่อการประมวลผลนั้นมีกฎต่าง ๆ ที่ขัดแย้ง และเกิดกรณีฟุ่มเฟือยได้ วิธีนี้จะสามารถแก้ปัญหานี้ได้

3. เลือกวิธีผังต้นไม้ (Decision Table)เมื่อ

- การเกิดเงื่อนไขต่าง ๆ และการกระทำกิจกรรมเป็นไปตามลำดับก่อนหลัง

- กรณีที่มีเงื่อนไขหลากหลายแบบ ในการแตกกิ่งที่แตกต่างกันไปคือเงื่อนไขไม่จำกัดเป็นต้น

แผนภาพกระแสข้อมูล

แผนภาพกระแสข้อมูล (DFD) เป็นเครื่องมือที่ใช้กันอย่างแพร่หลายในการเขียนแบบระบบใหม่ โดยเฉพาะกับระบบที่ “หน้าที่” ของระบบมีความสำคัญและมีความสลับซับซ้อนมากกว่าข้อมูลที่ไหลเข้า

กฎการเขียนผัง DFD ที่ถูกต้องมีดังนี้

- ข้อมูลที่เคลื่อนออกจากแฟ้มข้อมูลจะต้องมีการนำข้อมูลนั้นเข้าสู่แฟ้มข้อมูลก่อน

- ข้อมูลที่เคลื่อนที่เข้าสู่แฟ้มข้อมูลสุดท้ายแล้ว จะต้องเป็นข้อมูลที่เคยนำเข้าสู่กระบวนการนั้น

- ข้อมูลที่เคลื่อนออกจากกระบวนการ จะต้องเป็นข้อมูลที่เคยนำเข้าสู่กระบวนการนั้นหรือไม่ก็ต้องจัดทำขึ้นภายในกระบวนการนั้น

- ข้อมูลที่เคลื่อนเข้าสู่กระบวนการจะต้องถูกส่งออกหรือไม่ก็ถูกใช้ประมวลผลภายในกระบวนการนั้น

- เอนทิตี้ต้นทาง/ปลายทาง ติดต่อกันเองไม่ได้ ต้องมีกระบวนการอยู่ ณ ข้างใดข้างหนึ่งของเส้นทางเชื่อมต่อข้อมูล

- แฟ้มข้อมูลจะติดต่อกันเองโดยตรงไม่ได้ เช่นเดียวกันกับ เอนทิตี้ต้นทางปลายทาง

- เอนทิตี้และแฟ้มข้อมูลจะติดต่อกันโดยตรงไม่ได้จะต้องผ่านกระบวนการ

ตัวอย่างระบบงานห้องสมุด

การพัฒนาโปรแกรมระบบงานห้องสมุด ได้ใช้แผนภาพกระแสข้อมูล (Data Flow Diagram) ในการวิเคราะห์ระบบ แผนภาพกระแสข้อมูลแสดงความสัมพันธ์ระหว่างกระบวนการ

1. แผนภาพกระแสข้อมูลระบบสูงสุด (Context Diagram) แสดงเส้นทางของข้อมูลที่เข้าและออกจากแหล่งที่มีผลกระทบต่อระบบ

2. แผนภาพกระแสข้อมูลระดับที่ 1 (Data Flow Level 1 ) แสดงกระบวนการทำงานหลักของระบบ ข้อมูลที่เข้าและออกจากกระบวนการทำงานต่าง ๆ

3. แผนภาพกระแสข้อมูลระดับที่ 2 (Data Flow Level 2 )แสดงกระบวนการทำงานโดยจะแสดงรายละเอียดของกระบวนการทำงานต่าง ๆ ในแผนภาพกระแสข้อมูลระดับแผนภาพแสดงการไหลของข้อมูลหรือ DFD สามารถแสดงได้ดังนี้

ภาพที่ 9.4 แผนภาพกระแสข้อมูลระดับ Context Diagram ของระบบงานห้องสมุด

ภาพที่ 9.5แผนภาพกระแสข้อมูลระดับที่ 1(DFD-Level 1): ระบบงานห้องสมุด

ภาพที่ 9.6แผนภาพกระแสข้อมูลระดับที่ 2(DFD-Level 2): ระบบงานห้องสมุด

ภาพที่ 9.7แผนภาพกระแสข้อมูลระดับที่ 2(DFD-Level 2): ระบบงานห้องสมุด

ภาพที่ 9.8 แผนภาพกระแสข้อมูลระดับที่ 2( DFD-Level 2) ระบบหนังสือ

ภาพที่ 9.9 แผนภาพกระแสข้อมูลระดับที่ 2 (DFD=Level2):ระบบการกำหนดค่ามาตราฐาน

ภาพที่ 9.10 แผนภาพกระแสข้อมูลระดับที่ 2 (DFD-Level2):ระบบการจัดพิมพ์รายงาน

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

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

การจัดพจนานุกรมข้อมูล

พจนานุกรมข้อมูลถูกเขียนเรียงลำดับตามตัวอักษร โดยไม่สนใจว่าข้อมูลนั้นจะเป็นแบบไปไหนคือ เขียนรวมปะปนกันทั้งข้อมูลเดี่ยวข้อมูลที่ไปหลใน DFD หรือข้อมูลที่เก็บในไฟล์แล้วนำมาเรียงลำดับ (Sorted) ตามตัวอักษร แบบเรียงจากน้อยไปหามาก ปกติจะเขียนพจนานุกรมด้วยมือแต่ปัจจุบันก็มีคอมพิวเตอร์ซอฟต์แวร์ที่ช่วยทำงานนี้ได้ด้วย ปกติพจนานุกรมข้อมูลมีขนาดใหญ่มาก ถ้าใช้คอมพิวเตอร์ช่วยจะสะดวกมากกว่า

ตารางที่ 9.1 ตารางสมาชิก(Member)เป็นตารางที่เก็บรายละเอียดของสมาชิก

การสร้างแบบสำหรับระบบใหม่

ในบทนี้จะใช้เครื่องมือต่าง ๆ ที่ได้กล่าวมาแล้วมาช่วยในการสร้างระบบใหม่เครื่องมือเหล่านี้ ได้แก่ พจนานุกรม แผนภาพกระแสข้อมูล (Data Flow Diagram:DFD)คำอธิบายโพรเซสและฐานข้อมูล นักวิเคราะห์ระบบจะใช้แบบของระบบใหม่นี้ เพื่อทดสอบความคิดแบะให้เห็นภาพลักษณ์ของระบบใหม่ด้วย แบบของระบบใหม่นี้คล้าย ๆ กับแบบแปลนบ้านของสถาปนิกนั่นเอง แบบแปลนนี้จะทำให้เห็นว่าบ้านที่จะปลูกมีหน้าตาเป็นอย่างไร ก่อนที่จะลงมือก่อสร้างจริง กระบวนการสร้างแบบของระบบใหม่จะช่วยปรับปรุงระบบใหม่ให้ดีขึ้นกว่าระบบปัจจุบันที่กำลังใช้งานอยู่ด้วย

ความคิดหลาย ๆ ความคิดที่ใช้ในที่นี้มาจาก DeMarco(1979)และ McMenamin and Palmar(1985) ความคิดทั้งหมดมีความสัมพันธ์กับความคิดเดิมของ Yourdon Inc. ซึ่งเป็นบริษัทชั้นแนวหน้าในเรื่องการวิเคราะห์ระบบแบบโครงสร้าง

ก่อนที่จะเริ่มการสร้างระบบ ควรทำความเข้าใจกับคำว่า “ลอจิคัล” และ “ฟิสิคัล” สมมุติว่าพูดถึง “จ่ายเงินใบทวงหนี้” จะเพียงว่าทำอะไร แต่ถ้าพูดว่าการจ่ายเงินอาจจะทำได้หลายวิธี เช่น เขียนเช็คด้วยมือ หรือเขียนเช็คด้วยเครื่องคอมพิวเตอร์อัตโนมัติ หรืออาจจะใช้วิธีโอนเงินระหว่างธนาคารก็ได้ ดังนั้นที่พูดว่า “จ่ายเงินทวงหนี้”จะมีวิธีการจ่ายเงินทั้ง 3 วิธีจะเป็น

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

ปกตินักวิเคราะห์ระบบใช้ระบบด้วยกัน 4 แบบในการทำงาน จากระบบปัจจุบันสู่ระบบใหม่โดยเริ่มต้นจาก 1. ฟิสิคัลของระบบปัจจุบันแก้ไขเป็น 2.ลอจิคัลของระบบปัจจุบันแล้ว จึงเขียนเป็น 3.ลอจิคัลของระบบใหม่และสุดท้ายเป็น 4. ฟิสิคัลของระบบใหม่ แบบของระบบทั้ง 4 มีความสัมพันธ์กันดังแสดงในรูปข้างล่าง

DFD ระดับแม่ ไม่เพียงพอที่จะบอกรายละเอียดการทำงานทั้งหมดของระบบได้ ดังนั้นจึงจำเป็นจะต้องแตกเป็นลูกหลานต่อไป ซึ่งจะทำให้ได้ DFD ต่างระดับขึ้น DFD ระดับลูกอันแรกติดกับระดับแม่เป็นภาพรวมของการทำงานดังรูปความสัมพันธ์ในที่นี้จะเป็นแบบ “แม่/ลูก” และ DFD ในระดับลูกนี้ก็อาจจะเป็นแม่ของลูกในระดับถัดไป และสามารถแตกแยกย่อยลงไปได้เรื่อย ๆ ภาพรวมของ DFD นี้จะไม่มีสัญลักษณ์ของระบบภายนอกเข้ามาเกี่ยวข้องเพราะว่าระบบภายนอกปรากฏอยู่เฉพาะใน DFD ระดับสูงสุดอย่างเดียวเท่านั้น

การเก็บข้อมูลกับ DFD ระดับลูก การเก็บข้อมูลอันแรกในภาพนี้ คือ ไฟล์ใบสั่งซื้อทำไมจึงจำเป็นต้องเก็บข้อมูลนี้ เพราะข้อมูลนี้จะต้องเก็บไว้ระยะเวลาหนึ่งซึ่งจะต้องนำมาใช้ภายหลัง เริ่มตั้งแต่มีการสั่งซื้อจนกระทั่งเสร็จสิ้นการจ่ายเงิน นอกจากนั้นในกรณีที่ข้อมูลถูกป้อนเข้ามาแบบหนึ่ง แต่ต้องเรียกใช้อีกแบบหนึ่ง ลักษณะนี้จำเป็นต้องมีการเก็บข้อมูลเช่น ข้อมูลผู้ขายเป็นต้น เมื่อทราบว่าจะต้องมีการเก็บข้อมูล คราวนี้จะทราบได้อย่างไรว่าเมื่อมันจะประกฎใน DFD มีกฎว่าการเก็บข้อมูลควรจะปรากฏในระดับสูงสุด(นอกเหนือจาก DFD ระดับแรก) โดยที่ต้องมี โพรเซสอย่างน้อยสองโพรเซส เรียกใช้ไฟล์นั้น ๆ สำหรับไฟล์สั่งซื้อมีโพรเซสสองโพรเซสเรียกใช้เพราะฉะนั้นเขียนไว้ใน DFD ระดับนี้ได้ แต่ถ้ามีเพียงโพรเซสเดียวเรียกใช้ จะเก็บไว้แล้วแสดงใน DFD ระดับต่ำลงไปกว่านี้อีก เมื่อสร้างไฟล์ในระดับใดแล้ว DFD ในระดับที่ต่ำลงไปสามารถเรียกใช้ไฟล์นั้นง่าย ๆ ครั้งจนกว่าจะได้ DFD ที่พอใจ วิธีที่ดีที่สุดของการแบ่งโพรเซสคือพยายามให้ข้อมูลที่ไหลระหว่างสองโพรเซสมีจำนวนน้อยที่สุดจะทำให้ระบบดูง่ายขึ้นปกติจะแบ่งโพรเซสตามหน้าที่ของ DFD ที่เห็นในรูปได้จากการเขียนแล้วหลายครั้ง ในที่สุดก็ได้รูปนี้ขึ้นมาการทดลองเขียนครั้งแรกนั้นรวมโพรเซสที่สามและสี่เข้าด้วยกันและส่วนหนึ่งของโพรเซสที่สามในการตรวจสอบการอนุมัติไปรวมอยู่ในโพรเซสที่สองในกรณีนี้สามารถใช้ข้อมูลที่เหมือนกันหลายอย่างในโพรเซสที่สี่แต่การทำงานในโพรเซสนี้จะมีมากมายทีเดียว ดังนั้น DFD ในภาพข้างบนจึงดูดีกว่า การเขียนDFDรูปหนึ่ง ๆ ไม่ควรมีโพรเซสมากกว่าเจ็ด เลขเจ็ดเป็นเลขที่สวยสำหรับสมองคนเช่น เบอร์โทรศัพท์เป็นต้นและเหมาะที่จะเขียนบนกระดาษขนาด A4(8.5 นิ้วคูน11นิ้ว)แต่ถ้าจำเป็นมากที่จะต้องมีมากกว่าเจ็ดโพรเซสก็ไม่เป็นไร ไม่ควรเขียนโพรเซสเดียวกันใน DFD รูปเดียวกัน DFDในระดับนี้จะไม่รวมโพรเซสจำพวก”Edit/แก้ไข”หรือ ”Format/จัดรูปแบบ”การทำงานทำนองนี้จะเขียนอยู่ใน DFD ระดับลึกกว่านี้อีกจากตัวอย่างจะเห็นว่าทุกโพรเซสตั้งชื่อโดยใช้คำกิริยาเป็นคำเริ่มต้นซึ่งปฏิบัติตามกฎทุกประการ

กระแสข้อมูลกับภาพรวมของ DFD ก่อนที่จะพูดถึงข้อมูลที่เคลื่อนไหวใน DFD ลองมาพิจารณาพจนานุกรมข้อมูลคือ

ใบอนุมัติจ่ายเงิน=เลขที่ใบสั่งซื้อ

รายละเอียดการจ่ายเงิน= เลขที่เช็ค+เลขที่ใบทวงหนี้+เลขที่ใบสั่งซื้อ

ใบทวงหนี้ค้างจ่าย= {เรคคอร์ดใบทวงหนี้ค้างจ่าย}

เรคคอร์ดใบทวงหนี้ค้างจ่าย=เลขที่ใบทวงหนี้+เลขที่ใบสั่งซื้อ+จำนวนเงินในใบทวงหนี้+เลขที่ผู้ขาย+ส่วนลด+กำหนดวันชำระเงิน

ชื่อข้อมูลจะต้องไม่เหมือนกัน ลูกศรของข้อมูลมีเพียงข้อมูลเดียวเท่านั้นกำหนดอยู่หัวลูกศรบอกทิศทางการเคลื่อนที่ ถ้ามีการเคลื่อนของข้อมูลออกจากไฟล์ หรือเข้าสู่ไฟล์โดยที่ข้อมูลทั้งหมดหรือข้อมูลส่วนใหญ่ของเรคคอร์ดถูกใช้ ก็ไม่จำเป็นต้องมีชื่อข้อมูลกำกับลูกศรหมายความว่า ข้อมูลที่เคลื่อนที่นั้น คือ ข้อมูลในไฟล์นั้นเอง ถ้าใช้เพียงบางส่วนของเรคคอร์ดเท่านั้นก็ให้ใส่ชื่อข้อมูลกำกับไว้ด้วย ตัวอย่างในรูปDFD ลูกศรจากไฟล์สั่งซื้อและไฟล์ใบทวงหนี้ ค้างจ่ายไม่มีชื่อข้อมูลกำกับแสดงว่าข้อมูลทั้งเรคคอร์ดจะต้องถูกใช้ แต่ข้อมูลจากไฟล์ผู้ขายอันหนึ่งมีชื่อกำกับว่า”ชื่อผู้ขาย”เป็นการแสดงว่าฟิลด์ชื่อผู้ขายเท่านั้นที่ต้องการ

การออกแบบระดับกายภาค

การออกแบบระดับกายภาคแตกต่างจากระดับตรรกะในแง่ของการแสดงขั้นตอนของระบอบโดยจะให้ความสำคัญเกี่ยวกับรายละเอียดของข้อมูล ผลลัพธ์และการประมวลผลชนิดของสื่อที่ใช้ในการบรรจุข้อมูลด้วยมาดูตัวอย่างการออกแบบที่ดีตัวอย่างหนึ่งคือโปรแกรมคำนวณบัญชีเงินเดือนของบริษัทแห่งหนึ่ง ผลที่ได้จากการคำนวณจะนำไปปรับค่าข้อมูลในไฟล์หลักของข้อมูลพนักงานด้วยดังแสดงไว้ด้วยผังงานระบบ(System Flow Chart)การออกแบบระบบในระดับนี้จะระบุถึงข้อมูลและผลลัพธ์ที่ได้จากการทำงาน รวมถึงขั้นตอนในการทำงานในกรณีที่เกิดข้อผิดพลาดความสำคัญของผังงานระบบนี้เปรียบเสมือนเป็น”พิมพ์เขียว”ที่จะใช้ในการพัฒนาระบบต่อไป

จากการวิเคราะห์ข้อมูลระบบนี้สรุปว่าข้อมูลได้แก่ไฟล์รายการเปลี่ยนแปลงซึ่งบรรจุอยู่ในเรคคอร์ดในไฟล์ที่ว่านี้ระบุจำนวนชั่วโมงทำงานของพนักงานแต่ละคน และเพื่อให้การทำบัญชีเงินเดือนเป็นไปด้วยประสิทธิ์ภาพจะนำข้อมูลดังกล่าวมาเรียงลำดับตามรหัสประจำตัวพนักงานก่อน

ส่วนข้อมูลอีกส่วนหนึ่งได้แก่ไฟล์ข้อมูลหลักที่เก็บข้อมูลของพนักงานเอาไว้ข้อมูลนี้ได้แก่รหัสพนักงาน ชื่อ ที่อยู่ และค่าแรงพนักงานแต่ละคนเงินเดือนที่ได้รับตั้งแต่ต้นปีและเงินเดือนหลังหักภาษีแล้วเป็นต้นและเช่นเดียวกันคือเรคคอร์ดในไฟล์หลักนี้จะเรียงลำดับไว้ตามรหัสประจำตัวพนักงานเพื่อสะดวงในการทำงาน

ผลลัพธ์ที่ต้องการจากโปรแกรมบัญชีเงินเดือนได้แก่การพิมพ์เช็คเงินเดือนที่จะจ่ายให้พนักงานและการปรับปรุงค่าเงินเดือนในไฟล์หลักโดยการเพิ่มค่าเงินเดือนทีได้รับในเดือนนั้นเข้าไปนอกเหนือจากนั้นได้แก่ รายงานเงินเดือนที่จ่ายไปทั้งหมอ พร้อมด้วยรายงานข้อผิดพลาดต่าง ๆ เช่นมีรหัสพนักงานปรากฏในไฟล์รายการเปลี่ยนแปลงที่ไม่มีตัวตนในไฟล์หลักเป็นต้น

การประมวลผลเกิดขึ้นในส่วนขอโปรแกรมบัญชีเงินเดือนได้แก่ขั้นตอนของการอ่านไฟล์รายการเปลี่ยนแปลงและค้นหาเรคคอร์ดของพนักงานในไฟล์หลักเพื่อคำนวณเงินเดือนและเปลี่ยนแปลงค่านำในไฟล์หลักขอให้สังเกตว่า ในการเปลี่ยนแปลงระบบจะยังไม่แสดงรายละเอียดของวิธีการทำงานของโปรแกรม

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

หลังจากการออกแบบระบบได้เสร็จสิ้นเรียบร้อยแล้ว นักวิเคราะห์ระบบจะต้องเสนอการออกแบบนี้เพื่อให้เจ้าของงานรับรองว่าเป็นไปตามความต้องการจากนั้นจึงเริ่มเข้าสู่ขั้นตอนต่อไปคือการสร้างระบบนั้นเอง

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

แบบทดสอบและกิจกรรมการฝึกทักษะ

บทที่ 9 การประมวลผล

ตอนที่ 1 อธิบาย (หมายถึง การให้รายระเอียดเพิ่มเต็ม ขยายความ )

1. อธิบายจุดมุ่งหมายในการใช้การอธิบายการประมวลผล ตอบ 1 เพื่อให้การประมวลผลนั้นชัดเจน เข้าใจง่าย การใช้วิธีนี้ จะทำให้ผู้วิเคราะห์ได้เรียนรู้ 2เพื่อให้เกิดความเข้าใจถูกต้องในการอธิบาย ในรูปแบบเฉพาะของการประมวลผล 3เพื่อตรวจสอบการออกแบบระบบ โดยการประมวลผลนั้นจะถูกต้องหรือไม่ในด้านข้อมูลที่ป้อนเข้าเครื่อง

2. อธิบายประเภทของการประมวลผล ตอบ 1 การประมวลผลที่ใช้การแทนที่ทางกายภาพในส่วยของการป้อนข้อมูลเข้าระบบหรือการออกรายงานที่เป็นรูปแบบไม่ซับซ้อน 2 การประมวลผลที่แทนที่ กระบวนการตรวจสอบข้อมูล การแก้ไข้ข้อมูล ซึ่งจะมีรายละเอียดอยู่ในพจนานุกรมข้อมูลหรือมีอยู่ในรหัสโปรแกรม 3 การประมวลผลที่เป็นการประมวลผลในลักษณะที่เป็นการดึง Function ที่มีอยู่เดิมหรือเป็นการนำโปรกแกรมย่อย มาใช้ จะมีการอธิบายการประมวลผลนี้มาอ่าน้อยหนึ่งครั้งแล้ว

3. อธิบายลักษณะของการอธิบายการประมวลผลแบบประโยคโครงสร้าง ตอบ ประโยคโครงสร้างและตารางตัดสินในเป้เครื่องมือที่ใช้อธิบายการทำงานในของ PROCESS ควรจะเลือกวิธีที่เขียนอธิบายการทำงานที่ดีและเหมาะสมกับงานนั้นๆ

4. อธิบายเทคนิคในการเลือกวิธีการอธิบายการประมวลผลแบบผังต้นไม้ ตอบ 1 เลือกวิธีประโยคโครงสร้างภาษา (Structure Language) เมื่อ -การประมวลผลนั้นเป็นกรณีที่เกิดเหตูการณ์ที่มีการประทำซ้ำ -ต้องการสื่อสารระหว่างผู้ใช้กับนักวิเคราะห์ระบบในการ อธิบายการประมวลผลวิธีนี้จะดีที่สุด 2 เลือกวิธีใช้ตารางการตัดสินใจ เมื่อ -เงื่อนไขกิจกรรมที่จะกระทำ และกฎในการประมวลผลมีความซับซ้อนมาก -เมื่อการประมวลผลนั้นมีกฎต่างๆ ที่ขัดแย้ง 3 เลือกวิธีผังต้อนไม้ เมื่อ -การเกิดเงื่อนไขต่าง ๆ และการกระทำกิจกรรมเป็นไปตมลำดับก่อนหลัง -กรณีที่เงื่อนไขหลากหลายแบบ ในการแตกกิ่งที่แตกต่างกันไป

5. อธิบายรายละเอียดของ พจนานุกรมข้อมูล ตอบ พจนานุกรมข้อมูลถูกเขียนเรียงลำดับตามตัวอักษร โดยไม่สนใจว่าข้อมูลนั้นจะเป็นแบบไหน คือ เขียนรวมปะปนกันทั้งข้อมูลเดี่ยว ข้อมูลที่ไหลใน DFD หรือข้อมูลที่เก็บเก็บในไฟล์ พจนานุกรม ด้วยมือ แต่ปัจจุบัน ก็มีคอมพิวเตอร์ซอฟต์แวร์ที่ช่วยทำงานนี้ได้ด้วย ปกติ พจนานุกรมขอ้มูลมีขนาดใหญ่มาก

ตอนที่ 2 อธิบายคำศัพท์ (อธิบายความหมาย ขยายความเพิ่มเต็ม)

บทที่ 9 การประมวลผล

Data Dictionary พจนานุกรมข้อมูล

Source Code รหัสโปรแกรม

Sub Program โปรแกรมย่อย

Process Description คำอธิบายการประมวลผล

Minispecs คำอธิบายการประมวลผล

Structure sentenes ประโยคโครงสร้าง

Decision Table การตัดสินใจแบบตาราง

Decision Tree ผังต้นไม้

Structure Language วิธีโครงสร้างภาษา

Data Flow Diagram : DFD แผนภาพกระแสข้อมูล

System Flowchat ผังงานระบบ



นายธีระทัศน์ เสียงอ่อน
5039011012