You are on page 1of 31

บทที่ 7

การวิเคราะห์ระบบโดยการใช้แผนภาพ
การไหลของกระแสข้อมูล

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

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

แผนภาพแสดงการไหลของกระแสข้อมูล(Data Flow Diagram : DFD)


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

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

สัญลักษณ์ท่ีใช้ในแผนภาพการไหลของกระแสข้อมูล
 สัญลักษณ์ของสิง่ ที่อยู่ภายนอกระบบ (External Entity)
 กระแสข้อมูล (Data Flow)
 กระบวนการประมวลผลหรือโปรเซส (Process)
 แหล่งเก็บข้อมูล (Data Store)

5
External Entity
( )

Flow of Data
( )

2.1
Process
( )

Data Store
D3
( )

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

7
แผนภาพการไหลของกระแสข้อมูล
Data Flow Diagram : DFD
ขัน้ ตอนในการเขียนแผนภาพการไหลของข้อมูล
1. ทาการวิเคราะห์ถึงกระบวนการทางานทีเ่ กิดขึ้นในหน่วยงาน เพื่อกาหนดถึงสิง่
ต่อไปนี้
 สิง่ ทีอ่ ยูภ่ ายนอกระบบ (External Entity)
 กระแสข้อมูล (Data Flow)
 กระบวนการประมวลผล (Process)
 แหล่งเก็บข้อมูล (Data Store)
2. สร้างแผนภาพแสดงการทางานหลักของระบบงาน (Context Diagram)
ขึ้นมา โดยในแผนภาพนี้จะแสดงให้เห็นถึงกระแสข้อมูลที่ไหลมาจากสิง่ ทีอ่ ยู่
ภายนอกระบบงานเข้าสูร่ ะบบ และแสดงถึงกระแสข้อมูลที่ได้จากระบบไปสูส่ งิ่ ที่
อยูภ่ ายนอกระบบงาน แต่จะไม่มีการแสดงให้เห็นถึงส่วนจัดเก็บข้อมูล
8
แผนภาพการไหลของกระแสข้อมูล
Data Flow Diagram : DFD

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


3. สร้างแผนภาพการทางานระดับ 0 (Diagram 0) โดยในแผนภาพระดับนี้จะ
เริม่ มีการแสดงให้เห็นถึงส่วนของการจัดเก็บข้อมูลทีม่ ีอยูใ่ นระบบงาน
4. สร้างแผนภาพระดับย่อยหรือระดับลูก(Child Diagram) ของแผนภาพการ
ทางานระดับ 0 ทุก ๆ แผนภาพ
5. ตรวจสอบความผิดพลาดทีเ่ กิดขึ้น และตรวจสอบเกี่ยวกับชือ่ ทีใ่ ช้กบั สัญลักษณ์
ให้ถูกต้อง

9
แผนภาพการไหลของกระแสข้อมูล
Data Flow Diagram : DFD
ขัน้ ตอนในการเขียนแผนภาพการไหลของข้อมูล (ต่อ)
6. สร้างแผนภาพแสดงการไหลของกระแสข้อมูลในระดับกายภาพ (Physical
Data Flow Diagram) จากแผนภาพแสดงการไหลของกระแสข้อมูลในระดับ
ตรรกะ (Logical Data Flow Diagram) ทีส่ ร้างขึ้นในตอนแรก โดยการ
ระบุถึงส่วนทีเ่ ป็ นกระบวนการทางานโดยคอมพิวเตอร์ออกจากส่วนที่ทางานด้วย
คน หรือการระบุถึงส่วนจัดเก็บข้อมูลทีเ่ ป็ นแฟ้ มข้อมูลทางคอมพิวเตอร์ออก
จากการจัดเก็บข้อมูลทีเ่ ป็ นเอกสาร รวมทัง้ การเพิ่มส่วนควบคุมการทางานของ
โปรแกรมต่าง ๆ ลงไปในระบบงาน
7. ทาการแบ่งส่วนขัน้ ตอนงานที่อยูใ่ นแผนภาพแสดงการไหลของกระแสข้อมูลใน
ระดับกายภาพออกเป็ นกลุม่ งาน เพื่อให้งา่ ยต่อการนาไปเขียนโปรแกรมและ
พัฒนาขึ้นเป็ นระบบงานต่อไป
10
แผนภาพการไหลของกระแสข้อมูล
Data Flow Diagram : DFD
แผนภาพแสดงการทางานหลักของระบบงาน (Context Diagram)
หลังจากที่มีการวิเคราะห์ถึงสิ่งที่อยู่ภายนอกระบบและสิ่งที่เกี่ยวข้องกับระบบ
(External entity) ว่ามีอะไรบ้าง รวมทัง้ วิเคราะห์ถึงกระแสข้อมูลที่ได้จากสิ่งที่อยู่ภายนอก
ระบบเหล่านี้ตลอดจนกระแสข้อมูลที่เป็ นผลลัพธ์ที่ได้จากระบบที่ไหลไปสู่สิ่งที่อยู่ภายนอก
แล้วจึงนาสิ่งเหล่านี้มาเขียนอธิบายเป็ นแผนภาพแสดงการทางานหลักของระบบงาน โดยใน
แผนภาพนี้จะมีสญ ั ลักษณ์ของโปรเซสหรือสัญลักษณ์แสดงกระบวนการประมวลผลเพียงหนึ่ง
รู ปและ ใช้ชื่อ ของโปรเซสเป็ นชื่อ ของระบบงาน และโดยรอบของสัญ ลัก ษณ์โ ปรเซส จะมี
สัญลักษณ์ของสิ่งที่อยู่ภายนอกระบบ รวมถึงสัญลักษณ์ของกระแสข้อมูลที่ไหลจากสิ่งที่อยู่
ภายนอกระบบเข้าสูส่ ญ ั ลักษณ์ของโปรเซส และแสดงให้เห็นถึงกระแสข้อมูลที่ไหลจากโปรเซส
ออกไปสู่สิ่งที่อยู่ภายนอกระบบ แต่จะไม่แสดงให้เห็นถึงแหล่งเก็บข้อมูล (Data Store)
ต่าง ๆ ทีม่ ีอยูใ่ นระบบงาน

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

แผนภาพแสดงการทางานหลักของระบบงาน (Context Diagram)

External 1 Input A 0

Output C
System External 3
Input B Name
External 2

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

13
External 1 Input A 0

Output C
System External 3
Input B Name
External 2

1 2

Input A Data Flow B Output C


External 1 Process Process External 3
W Data Flow C X

Record A Record E

D1 Data Store 1 D2 Data Store 2

Record A Record E

3 4

Input B Data Flow D


External 2 Process Process
Y Z

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

แผนภาพระดับลูก (Child Diagram)


เป็ นแผนภาพที่แสดงการทางานของโปรเซสย่อยที่แตกออกจากโปรเซสต่าง
ๆ ที่ปรากฏอยูใ่ นแผนภาพแผนภาพแสดงการทางานระดับ 0 (Diagram 0)
โดยจะเรียกแผนภาพระดับลูกนี้ตามหมายเลขของโปรเซสแม่ หรือหมายเลขของ
โปรเซสก่อนที่จะแตกออกมาเป็ นแผนภาพระดับลูก เช่น ถ้าเป็ นแผนภาพที่
แสดงรายละเอียดของโปรเซสหมายเลข 1 ก็จะเรียกแผนภาพนี้วา่ แผนภาพ
Diagram 1 และโปรเซสที่ปรากฏอยูใ่ นแผนภาพนี้จะใช้หมายเลข 1.1 , 1.2
หรือ 1.3 ตามลาดับ และเส้นกระแสข้อมูลที่เกิดขัน้ ในแผนภาพระดับลูก จะต้อง
สอดคล้องกับกระแสข้อมูลทีป่ รากฏอยูใ่ นแผนภาพระดับแม่
15
แผนภาพการไหลของกระแสข้อมูล
Data Flow Diagram : DFD
แผนภาพระดับลูก (Child Diagram)
การเขียนแผนภาพระดับลูกสามารถแตกย่อยโปรเซสลงไปเป็ น
ระดับย่อยได้เรื่อย ๆ จนกว่าจะได้โปรเซสที่ไม่สามารถแตกย่อยได้อกี แล้ว หรือ
เป็ นโปรเซสที่สามารถนาไปสร้างเป็ นโปรแกรมได้ในหนึ่งโมดูล โดยจะเรียก
โปรเซสนี้วา่ ไพมิทีพโปรเซส (Primitive Process) จึงจะยุติการแตก
แผนภาพออกเป็ นแผนภาพระดับลูกอีก
ในการแตกโปรเซสย่อยจะหยุดดาเนินการก็ตอ่ เมื่อ เกิดกรณีท่ีทา
การแบ่งเป็ นโปรเซสย่อยแล้วเกิดโปรเซสย่อยน้อยกว่า 2 โปรเซส หรือเมื่ อ
แบ่งเป็ นโปรเซสย่อยแล้วเกิดแต่โปรเซสที่เกี่ยวข้องกับการจัดการข้อมูลเท่านัน้
เช่น โปรเซสของการเพิ่ม ลบ แก้ไขหรือปรับปรุงข้อมูล เป็ นต้น
16
D1 Data Store 1

Record A

3 4

Input B Data Flow D


External 2 Process Process
CCC DDD

D1 Data Store 1

Record A

3.1
Transaction Transaction 3.2

Input B Detailed Record 1 Record 1 Detailed


D5 Transaction File 1
Process Process
XXX YYY

Error Detailed
Data Flow Z

3.3

Detailed
Process
ZZZ

Data Flow D

17
แผนภาพการไหลของกระแสข้อมูล
Data Flow Diagram : DFD
การตรวจสอบความสมดุลของแผนภาพ
ในการแตกย่ อ ยของแผนภาพจากระดับ บนไปสู่ ร ะดับ ล่ า ง เช่ น จาก
Diagram 0 ไปเป็ น Diagram 1 หรือจาก Diagram 1 ไปเป็ น
Diagram 1.1 นัน ้ นักวิเคราะห์ระบบ จะต้องทาการตรวจสอบความสมดุล
ของแผนภาพ (Balancing) โดยการตรวจสอบว่าเส้นกระแสข้อมูลที่วงิ่ เข้าสู่
โปรเซสแม่ หรื อวิ่ง ออกจากโปรเซสแม่ จะต้อ งมี ป รากฏอยู่อย่างครบถ้วนใน
แผนภาพระดับลูกที่แตกออกมาจากโปรเซสนัน้ แต่ในแผนภาพระดับลูกสามารถ
เกิดเส้นกระแสข้อมูล ที่วิ่งออกจากแผนภาพนอกเหนือจากเส้นกระแสข้อมูลที่
ปรากฎอยู่ ใ นแผนภาพระดับ แม่ ไ ด้ แต่ต อ้ งเป็ นเส้น กระแสข้อ มู ล ที่ ใ ช้แ สดง
ข้อผิดพลาด (Error Line) ทีเ่ กิดจากโปรเซสย่อยในแผนภาพระดับลูกเท่านัน้
18
D1 Data Store 1

Record A

3 4

Input B Data Flow D


External 2 Process Process
CCC DDD

D1 Data Store 1

Record A

3.1
Transaction Transaction 3.2

Input B Detailed Record 1 Record 1 Detailed


D5 Transaction File 1
Process Process
XXX YYY

Error Detailed
Data Flow Z
Error Line

3.3

Detailed
Process
ZZZ

Data Flow D

19
แผนภาพการไหลของกระแสข้อมูล
Data Flow Diagram : DFD
การตรวจสอบที่ผดิ ในแผนภาพแสดงการไหลของกระแสข้อมูล
 เส้นกระแสข้อมูลเส้นเดียวกันและเกิดจากแหล่งกาเนิดเดียวกัน จะไม่สามารถแตกออก
มากกว่าหนึ่งเส้นทางได้
 จะต้องไม่มีเส้นกระแสข้อมูลทีไ่ หลจาก External Entity หนึ่งไปยังอีก External
Entity หนึ่งโดยตรง
 จะต้องไม่มีเส้นกระแสข้อมูลทีไ่ หลจาก External Entity หนึ่งไปยังแหล่งเก็บข้อมูล(Data
Store) หรือจากแหล่งเก็บข้อมูลไปยัง External Entity โดยตรง
 จะต้องไม่มีเส้นกระแสข้อมูลทีไ่ หลจากแหล่งเก็บข้อมูลหนึ่งไปยังอีกแหล่งเก็บข้อมูลหนึ่ง
โดยตรง ดังตัวอย่างทีแ่ สดงในรูปที่ 7.6
 โปรเซสใด ๆ ทีป่ รากฏอยูใ่ นแผนภาพจะต้องไม่มีเส้นกระแสข้อมูลวิง่ เข้าหาเพียงอย่างเดียว
หรือวิง่ ออกจากโปรเซสเพียงอย่างเดียว
 ชือ่ ของโปรเซสทีป่ รากฏอยูใ่ นแผนภาพระดับต่าง ๆ จะต้องไม่ซา้ กันหรือเหมือนกัน
20
21
D1

1 2 3

D2 D1

D3

External Data Store Data Store Data Store

22
แผนภาพการไหลของกระแสข้อมูล
Data Flow Diagram : DFD
แผนภาพการไหลของกระแสข้อมูลเชิงตรรกะและเชิงกายภาพ
(Logical and Physical Data Flow Diagrams)

Current Logical New Logical New Physical


Data Flow Diagram Data Flow Diagram Data Flow Diagram

23
Logical Data Flow Diagram

D1

1 2 3 4

Physical Data Flow Diagram

D1 D2 ikpdki:nhv

1 2 3 4

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

การแบ่งส่วนแผนภาพแสดงการไหลของกระแสข้อมูล
(Partitioning Data Flow Diagram)

 แบ่งตามกลุม่ ของผูใ้ ช้โปรเซส


 แบ่งตามช่วงเวลาในการประมวลผลโปรเซส
 แบ่งตามลักษณะของโปรเซส
 แบ่งตามความสามารถของโปรเซส
 แบ่งตามความเกี่ยวเนื่องของข้อมูล
 แบ่งตามระดับความปลอดภัยของโปรเซส
25
ตัวอย่างการเขียนแผนภาพการไหลของกระแสข้อมูล
 ลูกค้าจะเช่าวิดโี อได้จะต้องมีการทาบัตรสมาชิกกับทางร้านเสียก่อน โดยในบัตรสมาชิกจะมี
หมายเลขสมาชิกของลูกค้า
 เมื่อลูกค้าจะทาการเช่าวิดโี อจากร้านค้าจะต้องแจ้งหมายเลขสมาชิกให้กบั ทางร้านทราบ พร้อม
ทัง้ นาม้วนวิดโี อทีต่ อ้ งการเช่ามาทาการบันทึกรหัสหมายเลขประจาม้วนวิดโี อ แล้วระบบจะทา
การคานวณค่าเช่าแจ้งให้กบั ผูเ้ ช่าทราบ เมื่อผูเ้ ช่าชาระเงินแล้วระบบจะทาการพิมพ์
ใบเสร็จรับเงินพร้อมทัง้ กาหนดการส่งคืนม้วนวิดโี อให้กบั ผูเ้ ช่า
 เมื่อลูกค้ามาคืนม้วนวิดโี อ ทาได้โดยการนาม้วนวิดโี อทีเ่ ช่าไปมาบันทึกรหัสหมายเลขประจา
ม้วนวิดโี อ และระบบจะทาการตรวจสอบการคืนเกินกาหนด และคานวณค่าปรับแจ้งให้กบั ผู ้
เช่าทราบ พร้อมทัง้ บันทึกค่าปรับไว้คานวณรวมกับค่าเช่าครัง้ ถัดไป
 ระบบจะต้องทาการตรวจสอบหาผูเ้ ช่าทีม่ ียอดการเช่าต่อเดือนมากกว่า 500 บาท เพื่อทาการ
ส่งคูปองสมนาคุณให้กบั ลูกค้ารายนัน้ ทราบ
 ระบบจะต้องทาการตรวจสอบหาผูเ้ ช่าทีม่ ียอดการเช่าต่อปี มากกว่า 3000 บาท เพื่อทาการส่ง
คูปองสมนาคุณให้กบั ลูกค้ารายนัน้ ทราบ
26
ตัวอย่างการเขียนแผนภาพการไหลของกระแสข้อมูล

แสดงแผนภาพ Context Diagram


27
ตัวอย่างการเขียนแผนภาพการไหลของกระแสข้อมูล
1 2

D1

3 5

D1

แสดงแผนภาพ Logical Data Flow Diagram ในระดับ Diagram 0 28


ตัวอย่างการเขียนแผนภาพการไหลของกระแสข้อมูล
1.1 1.2

1.3 1.4

D1

1.5

D1

แสดงแผนภาพ Logical Data Flow Diagram ในระดับ Diagram 1 29


ตัวอย่างการเขียนแผนภาพการไหลของกระแสข้อมูล
1 2

D2

D3
D1 D4

3
4

5 6

D1

แสดงแผนภาพ Physical Data Flow Diagram ในระดับ Diagram 0


30
ตัวอย่างการเขียนแผนภาพการไหลของกระแสข้อมูล
1.2
D4 D1

1.6 1.7 1.8


1.3 D1

1.1
1.4

1.5

D3 D2

แสดงแผนภาพ Physical Data Flow Diagram ในระดับ Diagram 1


31

You might also like