ขั้นตอน ที่ 2 การวิเคราะห์ระบบ

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Chapter 8 : Logic Modeling & Data Modeling
Advertisements

รายวิชา ง40206 โครงสร้างข้อมูลและขั้นตอนวิธี
การวิเคราะห์ระบบและวิธีปฏิบัติงาน
ภาษามาตรฐานสำหรับนิยามข้อมูล และการใช้ข้อมูล
แบบฝึกหัด DataFlow Diagram
ภาษามาตรฐานสำหรับนิยามข้อมูล และการใช้ข้อมูล
บทที่ 4 แบบจำลองข้อมูลและกระบวนการ (Data and Process Modeling)
Systems Analysis and Design
กรณีศึกษา : โรงแรมช่ออินทนิล มหาวิทยาลัยราชภัฏเพชรบูรณ์
ข้อสังเกตและข้อผิดพลาด ในการวิเคราะห์และออกแบบระบบ
System Analysis and Design
2.3.1 รหัสเทียม (Pseudo code)
การพัฒนาระบบงานโดยเทคนิคเชิงโครงสร้าง
แบบจำลองกระบวนการ (Process Modeling)
บทที่ 6 พจนานุกรมข้อมูล และ คำอธิบายกระบวนการ
Programming & Algorithm
Introduction to Computer Organization and Architecture Flow of Control ภาษาเครื่อง สายงานของการ ควบคุม.
BC424 Information Technology 1 บทที่ 7 การพัฒนาระบบ สารสนเทศ (Information System Development)
Database Management System
ประเภทของคำสั่งของภาษา SQL
ว่าที่ ร.ต.หญิงวรรณธิดา วรสุทธิพงษ์ ครูแผนกวิชาคอมพิวเตอร์ธุรกิจ
การจัดการและวิเคราะห์ข้อมูล
Microsoft Access การใช้งานโปรแกรมระบบจัดการฐานข้อมูล
บทที่ 10 การออกแบบรายงาน Output Design
การจัดทำมาตรฐานข้อมูล
ภาษา SQL (Structured Query Language)
SQL (Structured Query Language)
Concept of Programing.
INC 161 , CPE 100 Computer Programming
Data Structure & Algorithm Concept
บทที่ 5 แบบจำลองกระบวนการ
BC423 Systems Analysis and Design
2 การพัฒนาระบบสารสนเทศ (Information System Development)
การแสดงขั้นตอนวิธีด้วยรหัสเทียม (Pseudo-Code)
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
Information System Development
การสร้างเว็บไซด์อีคอมเมิร์ซ
Chapter 6 : แบบจำลอง E-R (Entity-Relationship Model)
โดย อ.พัฒนพงษ์ โพธิปัสสา
Chapter 9 : ภาษาทางด้านฐานข้อมูลคำสั่ง SQL (SQL Command)
คำอธิบายรายวิชา การเขียนผังงาน รหัสเทียม ตรรกศาสตร์เบื้องต้น การเขียนโปรแกรมคอมพิวเตอร์แบบโครงสร้าง ชนิดตัวแปร ตัวดำเนินการทางตรรกะ ตัวดำเนินการเปรียบเทียบ.
PHP (2) - condition - loop
13 October 2007
บทที่ 5 ความต้องการ วิศวกรรมความต้องการ แบบจําลองการวิเคราะห์
ความรู้พื้นฐานการเขียนโปรแกรม
การวิเคราะห์ซอฟต์แวร์
7 Entity-Relationship Modeling แผนภาพความสัมพันธ์ ORACLE MS SQL SERVER
การวิเคราะห์ระบบงาน ขั้นตอนวิเคราะห์ จะเริ่มต้นด้วยการวิเคราะห์ระบบงาน
บทนำ แผนภาพกระแสข้อมูล (Data Flow Diagram) เป็นการออกแบบที่แสดงตรรกะของกระบวนการทำงาน โดยมีการวาดแผนผังออกมา คล้ายกับการสร้างบ้าน ที่ต้องมีแปลน ภายนอก.
บทที่ 2 ขั้นตอนการทำงาน (Algorithm)
การออกแบบระบบ System Design.
Chapter 6 Information System Development
Principles of Problem Solving and Basic Programming หลักการแก้ปัญหาและการเขียนโปรแกรมเบื้องต้น2(1-2-3) สัปดาห์ที่ 13 การเขียนรหัสเทียม (Pseudo Code)
(Smart Strategy Praboromarajchanok Institute: SSPI)
for Display Antique and Art Object Information
การเขียนโปรแกรมคอมพิวเตอร์
Lecture no. 1: Introduction to Computer and Programming
5 แบบจำลองกระบวนการ Process Modeling
การพัฒนาระบบสารสนเทศ (Information System Development)
Dr.Surasak Mungsing CSE 221/ICT221 การวิเคราะห์และออกแบบขั้นตอนวิธี Lecture 05: การวิเคราะห์ความซับซ้อนของ ขั้นตอนวิธีการเรียงลำดับข้อมูล.
บทที่ 7 การเขียนผังงานระบบ.
ขั้นตอนการเขียนโปรแกรมคอมพิวเตอร์
DFD Data Flow Diagram Terminator Process Process Store Store
Integrated Mathematics
Use Case Diagram ระบบเบิก-รับเวชภัณฑ์
การสร้างผังงานโปรแกรม
Introduction to Structured System Analysis and Design
การกู้ยืมเงินทุนประกอบอาชีพ
ระบบสารสนเทศทางธุรกิจ
อัลกอริทึม (Algorithm) ???
ใบสำเนางานนำเสนอ:

ขั้นตอน ที่ 2 การวิเคราะห์ระบบ ขั้นตอน ที่ 2 การวิเคราะห์ระบบ System Analysis

Analysis วิเคราะห์ระบบ การวิเคราะห์ระบบในวงจรการพัฒนาระบบนั้นเริ่มต้นจากการศึกษาระบบเดิม แล้วนำข้อมูลที่ได้จากการศึกษา นำมาหาความต้องการ (Requirements) หรือสิ่งที่จะต้องปรับปรุง ในระบบหรืออีกอย่างหนึ่งคือ วิธีแก้ปัญหาของระบบ การวิเคราะห์จะเริ่มหลังจากที่ทราบปัญหา และผ่านขั้นตอนการศึกษาความเป็นไปได้แล้ว

การวิเคราะห์โดยใช้ Logical Model ……………………….. ………………………… Analysis Requirements Specification Logical Model การนำข้อกำหนดมาวิเคราะห์เพื่อสร้างเป็นแผนภาพกระบวนการของระบบใหม่ โดยแผนภาพที่สร้างขึ้นจะนำไปใช้ประโยชน์ในขั้นตอนการออกแบบและพัฒนาซอฟต์แวร์

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

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

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

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

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

แผนภาพกระแสข้อมูล หมายถึง แผนภาพที่แสดงให้เห็นถึงทิศทางการไหลของข้อมูลที่มีอยู่ในระบบ จากกระบวนการทำงานหนึ่งไปยังอีกกระบวนการหนึ่ง หรือไปยังส่วนอื่นที่เกี่ยวข้อง เช่น แหล่งจัดเก็บข้อมูล หรือผู้ที่เกี่ยวข้องที่อยู่นอกระบบ เป็นต้น หรือเรียกว่า แบบจำลองกระบวนการ (Process Model)

ประโยชน์จากแผนภาพกระแสข้อมูล (1) ลูกค้าหรือผู้ใช้งาน จะใช้เพื่อแสดงภาพรวมของระบบ (2) โปรแกรมเมอร์ ใช้แสดงรายละเอียดของระบบ และเป็นแนวทางการพัฒนา (3) นักวิเคราะห์ระบบ จะใช้เพื่อแสดงภาพรวมของระบบ และรายละเอียดของระบบ

วัตถุประสงค์ของแผนภาพกระแสข้อมูล (1) เป็นแผนภาพที่สรุปรวมข้อมูลของระบบ ตามแนวทางการวิเคราะห์เชิงโครงสร้าง (2) เป็นข้อตกลงร่วมกันระหว่างนักวิเคราะห์ระบบและผู้ใช้งาน (3) เป็นแผนภาพที่นำไปใช้ประโยชน์ต่อไปในขั้นตอนการออกแบบระบบ (4) เป็นแผนภาพที่ใช้ในการอ้างอิง หรือเพื่อการปรับปรุง/พัฒนาระบบในอนาคต (5) เป็นแผนภาพที่ทำให้ทราบที่มาและที่ไปของข้อมูลที่ไหลไปยังกระบวนการต่างๆ

สัญลักษณ์ที่ใช้ในแผนภาพกระแสข้อมูล ความหมาย คำอธิบาย Gane&Sarson Yourdon/Demarco Process กระบวนการ ขั้นตอนการทำงานภายในระบบ Data Flow กระแสข้อมูล เส้นทางการไหลของข้อมูล แสดงทิศทางของข้อมูลจากขั้นตอนหนึ่งไปยังอีกขั้นตอนหนึ่ง External Agent ตัวแทนข้อมูล บุคคล หน่วยงาน หรือระบบอื่น ซึ่งเป็นแหล่งข้อมูล และเป็นปลายทางของข้อมูล Data Store แหล่งจัดเก็บข้อมูล แหล่งจัดเก็บข้อมูล จะอยู่ในรูปของไฟล์หรือฐานข้อมูลก็ได้

กระบวนการ (Processes) เป็นสัญลักษณ์แทนกิจกรรมที่เกิดขึ้นในระบบ หรือกระบวนการที่ต้องทำในระบบ

กระบวนการ (Processes) (ต่อ) การสร้างแผนภาพกระแสข้อมูลโดยทั่วไป จะต้องมีอย่างน้อยหนึ่งกระบวนการเสมอ กระแสข้อมูลที่ผ่านเข้ากระบวนการหมายถึง การนำเข้าข้อมูล กระแสข้อมูลที่ออกจากกระบวนการ หมายถึง การส่งออกข้อมูล กระแสข้อมูลที่ส่งออกจะถูกแปรสภาพหรือเปลี่ยนแปลงไป

ตัวอย่าง กระบวนการ (Processes) 5.0 คำนวณเงินเดือน   เงินเดือน,ภาษี,ประกันสังคม เงินเดือนสุทธิ

เงื่อนไขการใช้สัญลักษณ์กระบวนการมีดังนี้ (1) สัญลักษณ์กระบวนการต้องมีหมายเลขกำกับเสมอ เรียกว่า “หมายเลขกระบวนการ” โดยจะกำหนดเป็นหมายเลข 1,2,3 ตามลำดับ หมายเลขกระบวนการจะซ้ำกันไม่ได้ (2) ชื่อที่กำกับกระบวนการจะใช้คำกริยาที่หมายถึงการกระทำ เช่น ลงทะเบียนเรียน ชำระเงิน เช่ารถ พิมพ์รายงาน เป็นต้น สามารถมีจำนวนกระบวนการได้ตั้งแต่ 2 ถึง 7 กระบวนการ เพราะหากมีมากจะทำให้แผนภาพอ่านยากและดูซับซ้อน จำนวนกระบวนการที่เหมาะอยู่ในช่วงระหว่าง 7 บวกลบด้วย 2 (7+-2) (3) กระบวนการในแผนภาพกระแสข้อมูล จะไม่มีการแสดงรายละเอียดเกี่ยวกับวิธีการทำงาน ดังนั้น กระบวนการจึงเปรียบเสมือนกับกล่องดำ (Black Box) ที่บ่งบอกหน้าที่ มีการแสดงกระแสข้อมูลที่นำเข้าและกระแสข้อมูลที่ส่งออก ส่วนรายละเอียดเกี่ยวกับวิธีการทำงานของแต่ละกระบวนการจะปรากฏอยู่ในแบบจำลองอีกชนิดหนึ่ง ที่เรียกว่า “คำอธิบายการประมวลผล (Process Description)”

กระแสข้อมูล (Data Flows) คือ เส้นทางแสดงการเคลื่อนไหวของข้อมูล สัญญลักษณ์คือ เส้นลูกศร เส้นลูกศรจะไปพร้อมกับข้อมูล ทำให้ทราบถึงข้อมูลๆ ที่เคลื่อนที่ไปมาระหว่าง กระบวนการ แหล่งจัดเก็บข้อมูล ตัวแทนข้อมูล

ตัวอย่างการใช้งานกระแสข้อมูลเพื่อแสดงการเคลื่อนไหวข้อมูลในระบบ 1.0 คำนวณเงินเดือน   เงินเดือน,ภาษี,ประกันสังคม เงินเดือนสุทธิ,สลิปเงินเดือน แผนกการเงิน พนักงาน D3 ตารางภาษี D1 ข้อมูลพนักงาน D2 ข้อมูลเงินเดือน

ตัวอย่างการใช้งานกระแสข้อมูลเพื่อแสดงการเคลื่อนไหวข้อมูลในระบบ

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

ตัวอย่างการแก้ปัญหากระแสข้อมูลทับซ้อนกัน 1.0 Process 1 External Entity 1 D3 Data3 D2 Data2 D4 Data4 3.0 Process 3 Entity 2 D1 Data1 2.0 Process 2 Entity 3 1.0 Process 1 External Entity 1 D3 Data3 D2 Data2 D4 Data4 3.0 Process 3 Entity 2 D1 Data1 2.0 Process 2 Entity 3

ตัวแทนข้อมูล (External Agent) หรือ ตัวแทนภายนอก (External Entity) หมายถึง บุคคล หน่วยงานในองค์กร องค์กรอื่นๆ หรือระบบงานอื่นๆ ที่อยู่ภายนอกขอบเขตของระบบ แต่มีความสัมพันธ์กับระบบ โดยมีการส่งข้อมูลเข้าสู่ระบบ ตัวแทนข้อมูลเป็นได้ทั้งบุคคล หน่วยงานหรือระบบงาน ในการเขียนแผนภาพกระแสข้อมูล ตัวแทนข้อมูลโดยส่วนมากจะถูกจัดวางตำแหน่งให้อยู่ด้านนอกหรือรอบๆ แผนภาพ เพื่อให้แผนภาพดูสวยงาม และง่ายต่อการตรวจสอบ สัญลักษณ์ของตัวแทนข้อมูลสามารถทำซ้ำ (Duplicate) ได้ ลูกค้า ลูกค้า

แหล่งจัดเก็บข้อมูล (Data Stores) เป็นแหล่งเก็บ/บันทึกข้อมูล เปรียบเสมือนคลังข้อมูล แหล่งจัดเก็บข้อมูล จะมีชื่อข้อมูลที่จัดเก็บและมีการระบุลำดับ เช่น D1,D2,D3 ตามลำดับ อักษร D เป็นคำย่อมาจากคำว่า Data แหล่งจัดเก็บข้อมูลจะถูกใช้งานโดยกระบวนการ D1 Data1

ทิศทางลูกศรของกระแสข้อมูลที่เชื่อมโยงระหว่างแหล่งจัดเก็บข้อมูลกับกระบวนการ (1) ลูกศรจากแหล่งจัดเก็บข้อมูลชี้ไปยังกระบวนการเป็นสัญลักษณ์นำเข้า (Input) เกี่ยวข้องกับการอ่านข้อมูลจากแหล่งจัดเก็บข้อมูล รหัสวิชา, ภาคเรียน D1 ข้อมูลแผนการเรียน 1.0 ลงทะเบียนเรียน รหัสนักศึกษา D2 ข้อมูลนักศึกษา รหัสวิชา,ภาคเรียน, Section,คาบเรียน,ผู้สอน - ใบลงทะเบียนเรียน - ตารางเรียน D3 ข้อมูลรายวิชาที่เปิด นักศึกษา

ทิศทางลูกศรของกระแสข้อมูลที่เชื่อมโยงระหว่างแหล่งจัดเก็บข้อมูลกับกระบวนการ (ต่อ) (2) ลูกศรจากกระบวนการชี้ไปยังแหล่งจัดเก็บข้อมูล เป็นสัญลักษณ์ของส่งออก (Output) เกี่ยวข้องกับการเพิ่มข้อมูลและแก้ไขข้อมูลในแหล่งจัดเก็บข้อมูล รหัสวิชา, ภาคเรียน รหัสนักศึกษา รหัสวิชา, ภาคเรียน, Section D1 ข้อมูลแผนการเรียน D4 ข้อมูลลงทะเบียน 1.0 ลงทะเบียนเรียน รหัสนักศึกษา D2 ข้อมูลนักศึกษา รหัสวิชา,ภาคเรียน, Section,คาบเรียน,ผู้สอน - ใบลงทะเบียนเรียน - ตารางเรียน D3 ข้อมูลรายวิชาที่เปิด นักศึกษา

ทิศทางลูกศรของกระแสข้อมูลที่เชื่อมโยงระหว่างแหล่งจัดเก็บข้อมูลกับกระบวนการ (ต่อ) (3) ลูกศรบนปลายทั้งสองด้าน เป็นสัญลักษณ์ของการนำเข้าข้อมูลและส่งออกข้อมูล (Input/Output) เกี่ยวข้องกับการดึงข้อมูลขึ้นมาแก้ไขและบันทึกลงในแหล่งจัดเก็บข้อมูล รหัสนักศึกษา รหัสวิชา, ภาคเรียน, Section รหัสวิชา, ภาคเรียน D1 ข้อมูลแผนการเรียน D4 ข้อมูลลงทะเบียน 1.0 ลงทะเบียนเรียน รหัสนักศึกษา D2 ข้อมูลนักศึกษา รหัสวิชา,ภาคเรียน, Section,คาบเรียน,ผู้สอน - ใบลงทะเบียนเรียน - ตารางเรียน D3 ข้อมูลรายวิชาที่เปิด - รายวิชาที่ลงทะเบียน นักศึกษา

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

กฏเกณฑ์การเขียนแผนภาพกระแสข้อมูล แหล่งจัดเก็บข้อมูล (Data Store) ข้อมูลจะไหลจากแหล่งจัดเก็บข้อมูลหนึ่ง ไปยังอีกแหล่งจัดเก็บข้อมูลหนึ่งโดยตรงไม่ได้ จะต้องไหลผ่านกระบวนการเท่านั้น ข้อมูลไม่สามารถส่งผ่านจากตัวแทนข้อมูลไปยังแหล่งจัดเก็บข้อมูลได้โดยตรง จะต้องมีกระบวนการเป็นตัวกลางในการเชื่อมโยง ข้อมูลที่ไหลผ่านจากแหล่งจัดเก็บข้อมูล ไม่สามารถเชื่อมโยงเข้ากับตัวแทนข้อมูลได้โดยตรง จะต้องเชื่อมโยงผ่านกระบวนการเท่านั้น ชื่อของแหล่งจัดเก็บข้อมูลจะใช้คำนามเสมอ

กฏเกณฑ์การเขียนแผนภาพกระแสข้อมูล ตัวแทนข้อมูล (External Agent) ตัวแทนข้อมูลไม่สามารถเชื่อมโยงข้อมูลไปยังตัวแทนข้อมูลได้โดยตรง จะต้องใช้กระบวนการเป็นตัวกลางเพื่อการส่งผ่าน ชื่อของตัวแทนข้อมูลจะใช้คำนามเสมอ

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

หลักเกณฑ์การเชื่อมโยงเครื่องหมาย

เปรียบเทียบแผนภาพกระแสข้อมูลในรูปแบบที่ไม่ถูกต้อง และรูปแบบที่ถูก

เปรียบเทียบแผนภาพกระแสข้อมูลในรูปแบบที่ไม่ถูกต้อง และรูปแบบที่ถูก

Rules for Using DFD Symbols List the errors of this DFD 1.0 P1 DF5 DS1 DF6 DF1 DF3 DF4 DS2 2.0 P2 DF7 E2

ขั้นตอนการเขียนแผนภาพกระแสข้อมูล 1.นำความต้องการที่รวบรวมมาทำการวิเคราะห์ กำหนดขอบเขตของระบบ ระบุตัวแทนข้อมูลที่เกี่ยวข้อง (บุคคล หน่วยงาน หรือระบบงานต่างๆ ) กระแสข้อมูลที่เข้าออกภายในระบบ 2.วาดแผนภาพบริบท (Context Diagram) เพื่อแสดงภาพรวมและขอบเขตของระบบที่จะพัฒนา แผนภาพบริบท ทำให้ทราบว่า มีกระแสข้อมูลอะไรบ้างที่ส่งมาจากตัวแทนข้อมูล ทำให้ทราบว่าระบบส่งกระแสข้อมูลอะไรออกไปยังตัวแทนข้อมูลบ้าง

ขั้นตอนการเขียนแผนภาพกระแสข้อมูล 3.วิเคราะห์ข้อมูลที่ต้องจัดเก็บในระบบ 4.เขียนแผนภาพกระแสข้อมูลระดับที่ 0 เพื่อแสดงถึงการทำงานหลักของระบบ 5.เขียนแผนภาพระดับที่ 1,2,3... โดยแผนภาพระดับล่างสุดจะเป็นขั้นตอนการทำงานของระบบที่ไม่สามารถแตกย่อย (Primitive Diagram) ได้อีก การแตกระดับจะต้องมีความสมดุลกับแผนภาพระดับบน การสร้างแผนภาพกระแสข้อมูล สามารถนำเครื่องมือช่วยวาด เช่นโปรแกรม Microsoft Visio หรือ โปรแกรมเคสทูลส์ของ Visible Analysis เป็นต้น

แผนภาพบริบท (Context Diagram) คือแผนภาพกระแสข้อมูลระดับบนสุดที่แสดงภาพรวมการทำงานของระบบที่มีความสัมพันธ์กับสภาพแวดล้อมภายนอกระบบ หลักเกณฑ์การใช้สัญลักษณ์สร้างแผนภาพกระแสข้อมูล - แผนภาพบริบทต้องสมดุลอยู่ภายในหนึ่งหน้ากระดาษ - ชื่อของกระบวนการในแผนภาพบริบท ควรเป็นชื่อของระบบงานนั้น - มีการแสดงตัวแทนข้อมูลและกระแสข้อมูลที่ติดต่อกับระบบ แผนภาพบริบทจะไม่มีการแสดงแหล่งจัดเก็บข้อมูล (Data Store) แผนภาพบริบทจะมีหมายเลขกระบวนการ เป็น 0 ชื่อกระบวนการจะเป็นชื่อระบบงานที่ทำการวิเคราะห์ระบบ

กรณีศึกษาการสร้างแผนภาพบริบท ร้านนาย ก

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

จดหมายยืนยันการสมัคร แผนภาพบริบท ระบบตรวจสอบการเช่าดีวีดีร้านนายก กระทู้ที่ต้องการเขียน กระทู้ข่าว เงื่อนไข DVD ที่ต้องการค้น ระบบงานตรวจสอบ การเช่าดีวีดี ร้านนายก เงื่อนไข DVD ที่ต้องการค้น ข้อมูล DVD ที่ค้นเจอ ข้อมูล DVD ที่ค้นเจอ กระทู้ข่าว ข้อมูลการ Log in ผู้ใช้ทั่วไป สมาชิก กระทู้ที่ต้องการเขียน ผลการ Log in ผลการสมัครสมาชิก ข้อมูลสมัครสมาชิก ข้อมูลส่วนตัว ข้อมูลการค้างคืนแผ่น DVD ข้อมูลส่วนตัวที่ต้องการแก้ จดหมายยืนยันการสมัคร Mail Server

แผนภาพบริบท ระบบตรวจสอบการเช่าดีวีดีร้านนายก

กรณีศึกษาการสร้างแผนภาพบริบท ระบบงานจัดหางานแรงงานจังหวัดเชียงราย

การแตกระดับแผนภาพกระแสข้อมูล คือการแสดงรายละเอียดของกระบวนการ เพื่ออธิบายขั้นตอนการทำงานของกระบวนการในระบบ ลำดับแผนภาพจะประกอบด้วย แผนภาพกระแสข้อมูลระดับที่ 0 หรือ Data Flow Diagram Level 0 แสดงถึงขั้นตอนการทำงานของระบบหลัก แผนภาพกระแสข้อมูระะดับที่ 1 หรือ Data Flow Diagram Level 1 คือการแตกย่อยรายละเอียดของกระบวนในแผนภาพกระแสข้อมูลระดับที่ 0 แผนภาพกระแสข้อมูระะดับที่ 2 หรือ Data Flow Diagram Level 2 คือการแตกย่อยรายละเอียดของกระบวนในแผนภาพกระแสข้อมูลระดับที่ 1 ………..

การแตกระดับแผนภาพกระแสข้อมูล แผนภาพกระแสข้อมูลระดับที่ 0 แต่ละกระบวนการจะมีหมายเลขกำกับด้านบนของสัญลักษณ์ เริ่มตั้งแต่ หมายเลข 1.0,2.0,… แผนภาพกระแสข้อมูลระดับที่ 1 จะมีหมายเลขกำกับด้านบนของสัญลักษณ์ โดยจะระบุหมายเลขของกระบวนการในแผนภาพกระแสข้อมูลระดับที่ 0 และตามด้วยลำดับ ตั้งแต่ 1,2,3 เช่น เป็นแผนภาพกระแสข้อมูลระดับที่ 1 ของกระบวนการที่ 1.0 ในแผนภาพกระแสข้อมูลระดับที่ 0 หมายเลขกระบวนการจะเริ่มจาก 1.1,1.2,1.3,.. จำนวนกระบวนการที่ต้องทำในระบบไม่ควรมีมากน้อยเกินไป ควรอยู่ระหว่าง 2-7 (หรือ +/- 2) กระบวนการ

การแบ่งย่อยแผนภาพ (Decomposition Diagram) เป็นวิธีการแบ่งระบบใหญ่ออกเป็นระบบย่อยๆ เนื่องจากแผนภาพ Context Diagram ไม่สามารถอธิบายการทำงานของระบบได้ทั้งหมด จึงต้องมีการแบ่งเป็นระบบย่อยที่มีขนาดเล็กลงเรื่อยๆจนสามารถอธิบายระบบทั้งหมดได้ การแบ่ง DFD ไปเรื่อยๆ จนถึงระดับที่ไม่สามารถแบ่งได้อีกแล้ว เรียกว่า Primitive Diagram ลำดับของแผนภาพที่แบ่งย่อยมาจาก Data Flow Diagram Level 0 จะเรียกว่า Data Flow Diagram Level-1 หรือเรียกว่า Diagram 1 ของกระบวนการที่ .... Data Flow Diagram Level-2 หรือเรียกว่า Diagram 2 ของกระบวนการที่ .... Data Flow Diagram Level-3 หรือเรียกว่า Diagram 3 ของกระบวนการที่ .... …… ซึ่งการแบ่งย่อยระดับถัดมาจะต้องมีกระบวนการ 2 กระบวนการขึ้นไป

แสดงการแบ่งย่อยแผนภาพ Context Diagram แสดงการแบ่งย่อยแผนภาพ แบ่งย่อย เป็น DFD Level 0 Data Flow Diagram Level-0

กรณีศึกษา ระบบวิชาการ

Context Diagram ระบบงานิวชาการ

Data Flow Diagram Level 0 ระบบงานวิชาการ

Data Flow Diagram Level 1 ระบบงานวิชาการ กระบวนการที่ 1

แนวทางในการสร้างแผนภาพกระแสข้อมูลที่สมบูรณ์ 1. แผนภาพกระแสข้อมูลต้องมีความสมบูรณ์ (DFD Completeness) หากกระแสข้อมูล กระบวนการแหล่งจัดเก็บข้อมูลและตัวแทนข้อมูลบนแผนภาพกระแสข้อมูลไม่เชื่อมต่ออยู่กับสิ่งใดๆ แสดงว่าแผนภาพกระแสข้อมูลนั้นไม่สมบูรณ์ 2. มีความสอดคล้อง (DFD Consistency) หากมีสิ่งที่ปรากฏแผนภาพกระแสข้อมูลในระดับบน เมื่อแบ่งย่อยกระบวนการหรือแตกแผนภาพลงมาในระดับล่าง ต้องมีสิ่งที่ปรากฏอยู่ในระดับบนนั้นเสมอ 3. การทำซ้ำ (Iterative Development) การสร้างแผนภาพกระแสข้อมูลในรอบแรก อาจจะยังไม่เป็นแผนภาพที่มีความถูกต้องและสมบูรณ์ ต้องตรวจสอบแผนภาพหรือปรับปรุงแผนภาพทุกครั้งที่มีการเปลี่ยนแปลงหรือแก้ไขความต้องการ

แนวทางในการสร้างแผนภาพกระแสข้อมูลที่สมบูรณ์ 4. การตัดสินใจยุติการแบ่งแผนภาพกระแสข้อมูลระดับล่างสุด (Primitive DFD) คือ เมื่อไม่สามารถแบ่งย่อยขั้นตอนการทำงานได้อีกแล้ว หรือใช้หลักเกณฑ์การตัดสินใจดังนี้ (1) เมื่อมีการแบ่งย่อยขั้นตอนการทำงานแต่ละขั้นตอน ลงมาจนกระทั่งมีการทำงานในขั้นตอนการทำงานนั้นเพียงหน้าที่เดียว เช่นมีการอ่านข้อมูล ปรับปรุง สร้าง และลบข้อมูลในฐานข้อมูล เป็นต้น (2) เมื่อแต่ละแหล่งจัดเก็บข้อมูลที่ใช้ในการจัดเก็บข้อมูล มีการจัดเก็บข้อมูลเพียงไฟล์เดียว เช่น ไฟล์ลูกค้า ไฟล์สินค้า หรือไฟล์สั่งซื้อ เป็นต้น (3) เมื่อผู้ใช้ระบบเห็นว่าไม่มีรายละเอียดใดๆ ที่จะเป็นต่อการทำงานของระบบ

ระบบงานร้านค้าออนไลน์ กรณีศึกษา ระบบงานร้านค้าออนไลน์

ระบบงานร้านค้าออนไลน์ เป็นระบบที่ให้บริการขายสินค้าให้แก่สมาชิกบนเครือข่ายอินเทอร์เน็ต โดยขอบเขตงานแบ่งตามกลุ่มผู้ใช้ดังนี้ 1) บุคคลทั่วไป สามารถค้นหารายการสินค้าที่อยู่ในร้านได้ แต่ไม่สามารถดูราคาสินค้า สามารถสมัครสมาชิกได้

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

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

Context Diagram ระบบงานร้านค้าออนไลน์

แผนภาพกระแสข้อมูล ระดับที่ 0 (Data Flow Diagram Level 0)ระบบงานร้านค้าออนไลน์

แผนภาพกระแสข้อมูลระดับที่ 1 กระบวนการที่ 1 ค้นหารายการสินค้าในร้าน

แผนภาพกระแสข้อมูลระดับที่ 1 กระบวนการที่ 1 ค้นหารายการสินค้าในร้าน

แผนภาพกระแสข้อมูลระดับที่ 1 กระบวนการที่ 2 สมัครสมาชิก

แผนภาพกระแสข้อมูลระดับที่ 1 กระบวนการที่ 3 เข้าสู่ระบบ

แผนภาพกระแสข้อมูลระดับที่ 1 กระบวนการที่ 5 ขายสินค้า

แผนภาพกระแสข้อมูลระดับที่ 1 กระบวนการที่ 6 จัดการข้อมูลสินค้าในร้าน

แผนภาพกระแสข้อมูลระดับที่ 1 กระบวนการที่ 7 ระบบข้อความ

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

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

รูปแบบคำอธิบายการประมวลผล สามารถเขียนได้ 2 รูปแบบคือ (1) คำอธิบายการประมวลผลแบบธรรมชาติ (Natural Language Specifications) (2) คำอธิบายการประมวลผลแบบสคริปต์ (Scripting) คำว่า สคริปต์ หมายถึง การเขียนคำอธิบายในบางสิ่งบางอย่างด้วยโครงสร้างที่มีความชัดเจน (2.1) ภาษาอังกฤษแบบโครงสร้าง (Structured English) คือการนำโครงสร้างภาษาอังกฤษที่มีลักษณะคล้ายกับอัลกอริทึม (2.2) ผังการตัดสินใจแบบต้นไม้ (Decision Tree) มีลักษณะเป็นโครงสร้างเงื่อนไขการตัดสินใจที่มีลักษณะคล้ายต้นไม้ที่แผ่กิ่งก้าน (2.3) ตารางการตัดสินใจ (Decision Table) เป็นตารางที่แบ่งออกเป็นส่วนๆ ประกอบด้วยส่วนสำคัญคือเงื่อนไข (Condition) ต่างๆ ที่ถูกกำหนดขึ้น และส่วนการกระทำ (Action) คือ ผลลัพธ์หรือการกระทำที่เกิดขึ้นจากเงื่อนไขนั้นๆ

(2.1) ภาษาอังกฤษแบบโครงสร้าง (Structured English) การอธิบายเป็นประโยคโดยเขียนให้มีลักษณะเป็นโครงสร้าง คล้ายการเขียนโปรแกรมโครงสร้าง ใช้คำกริยาที่เมื่อทำแล้วมีความหมายว่าได้ผลลัพท์บางอย่างออกมา เช่น “คำนวณ” สิ่งนั้นสิ่งนี้ หรือ “เปรียบเทียบ” สิ่งนั้นกับสิ่งนี้เป็นต้น คำกริยาที่อาจเลือกใช้ได้เช่น

ภาษาอังกฤษแบบโครงสร้าง (Structured English) GET PUT FIND ADD SUBTRACT MULTIPLY DIVIDE COMPUTE DELETE VALIDATE MOVE ใช้ชื่อข้อมูลเป็นคำนามในประโยค เช่น วันชำระเงินใบทวงหนี้ รายงานเพื่อเตรียมเงินสด ใช้ศัพท์ที่แสดงความสัมพันธ์ระหว่างข้อมูล เช่น “และ” “หรือ” “เท่ากับ” “ไม่เท่ากับ” “มากกว่า” “น้อยกว่า”

ภาษาอังกฤษแบบโครงสร้าง (Structured English) ใช้คำที่บอกการเคลื่อนที่ข้อมูลคล้ายกับคำที่ใช้ในการเขียนโปรแกรมได้แก่ Sequencing begin : end

Conditional select case if condition case 1 (condition) then ... do …. else ... select case case 1 (condition) do …. case 2 (condition) do … : end case or

Repetition Do … Until (condition) While (condition) … End Do or

ตัวอย่างการเขียนคำอธิบายการประมวลผล ภาษาอังกฤษแบบโครงสร้าง (Structured English) ใช้ข้อมูล A และข้อมูล B เพื่อคำนวณข้อมูล C ตรวจสอบข้อมูล C If ข้อมูล C ถูกต้อง then เก็บในไฟล์ else ให้พิมพ์ข้อมูลผิดพลาด คำนวณผลรวม

( 2.2) รูปแบบผังการตัดสินใจแบบต้นไม้ (Decision Tree Template) มีลักษณะเป็นโครงสร้างเงื่อนไขการตัดสินใจที่มีลักษณะคล้ายต้นไม้ที่แบ่งแยกเงื่อนไขออกเป็นส่วน ๆ ทำให้เห็นโครงสร้างเงื่อนไขได้ชัดเจน

รูปแบบผังการตัดสินใจแบบต้นไม้ (Decision Tree Template)

คำอธิบายการประมวลผลในรูปแบบผังการตัดสินใจแบบต้นไม้ การจ่ายโบนัสพนักงาน การจ่ายโบนัสพนักงานโดยพิจารณาจากตำแหน่งของพนักงาน กรณีผู้บริหารจะได้โบนัส 5 เท่าของเงินเดือน กรณีผู้จัดการจะได้โบนัส 4 เท่าของเงินเดือน กรณีพนักงานปฏิบัติการ จะพิจารณาตามคะแนนประเมินผลการทำงาน โดยกรณีคะแนนการปฏิบัติงาน ถ้าได้คะแนนมากกว่า 90 คะแนน ได้โบนัส 3 เท่าของเงินเดือน ถ้าได้คะแนน 80-89 คะแนน ได้โบนัส 2 เท่าของเงินเดือน ถ้าได้คะแนนมากกว่า 70-79 โบนัส 1 เท่าของเงินเดือน ถ้าได้คะแนน้อยกว่า 70 คะแนนไม่ได้โบนัส

คำอธิบายการประมวลผลในรูปแบบผังการตัดสินใจแบบต้นไม้ การจ่ายโบนัสพนักงาน

คำอธิบายการประมวลผลในรูปแบบผังการตัดสินใจแบบต้นไม้ การให้รางวัลพนักงาน คำอธิบายการประมวลผลในรูปแบบผังการตัดสินใจแบบต้นไม้ การให้รางวัลพนักงาน พิจารณาจากยอดขายทั้งแผนก ถ้ายอดขายทั้งแผนก มากกว่า 1 ล้านบาท พิจารณายอดขายรายบุคคล ถ้ายอดขายรายบุคคล มากกว่า 50,000 บาท ได้รับเงิน 5% ของยอดขาย ได้รับจดหมายเชิดชูเกียรติ และได้เลื่อนตำแหน่ง ถ้ายอดขายรายบุคคล ไม่เกิน 50,000 ได้รับเงิน 5% ของยอดขาย และได้รับจดหมายเชิดชูเกียรติ ถ้ายอดขายทั้งแผนกไม่เกิน 1 ล้านบาท พิจารณายอดขายรายบุคคล ถ้ายอดขายรายบุคคล มากกว่า 50,000 บาท ได้รับเงิน 5% ของยอดขาย และได้รับจดหมายเชิดชูเกียรติ ถ้ายอดขายรายบุคคล ไม่เกิน 50,000 ไม่ได้รับรางวัล

ตัวอย่างการเขียนผังต้นไม้ การให้รางวัลพนักงาน ตัวอย่างการเขียนผังต้นไม้ การให้รางวัลพนักงาน ได้รับ 5% ของยอดขาย ได้รับจดหมายเชิดชูเกียรติ ได้เลื่อนตำแหน่ง ยอดขาย > 50,000 บาท ยอดขายทั้งแผนก > 1 ล้านบาท ได้รับ 5% ของยอดขาย ได้รับจดหมายเชิดชูเกียรติ ยอดขาย <= 50,000 บาท ได้รับ 2% ของยอดขาย ได้รับจดหมายเชิดชูเกียรติ ยอดขาย > 50,000 บาท ยอดขายทั้งแผนก <= 1 ล้านบาท ยอดขาย <= 50,000 บาท

Process Description Tools: Decision Trees วันอาทิตย์ นอนต่ออีก 2 ชั่วโมง 2 ใช่ วันจันทร์-ศุกร์ ออกไปทำงาน วันเสาร์ 1 ไม่ใช่ นอนต่ออีก 1 ชั่วโมง คำอธิบาย 1=รุ่งเช้าหรือไม่ 2=เป็นวันอะไร กลับไปนอนต่อ

(2.3) ตารางการตัดสินใจ (Decision Table) เป็นตารางที่แบ่งออกเป็นส่วนๆ ประกอบด้วยส่วนสำคัญคือเงื่อนไข (Condition) ต่างๆ ที่ถูกกำหนดขึ้น และส่วนการกระทำ (Action) คือ ผลลัพธ์หรือการกระทำที่เกิดขึ้นจากเงื่อนไขนั้นๆ เป็นตารางแบบ 2 มิติ โดยที่แถวตั้งด้านซ้ายเป็นเงื่อนไข และแถวนอนเป็นรายละเอียดของเงื่อนไขและผลของการตัดสินใจ เงื่อนไข คือ สิ่งที่มีค่าเปลี่ยนแปลงได้

ตัวอย่าง : ระบบเงินเดือน (payroll system) If employee is salaries(S) type, pay base salary If employee is hourly (H) type, pay by the number of hour worked, normally 40 hours. That means if more than 40 hours -----> overtime if less than 40 hours ----> absent

Condition Employee type -----> Salaried Type (S), Hourly Type (H) Hours worked -----> < 40 , 40 , >40 ค่าที่เป็นไปได้ = 2 X 3 = 6

Action Pay-based salary Calculate hourly wage Calculate overtime Produce absent report

สร้างตารางการตัดสินใจ Decision Table พิจารณาเงื่อนไขต่างๆ เงื่อนไข ( Condition ) กฎการตัดสินใจ ( Decision Rule ) 1 2 3 4 5 6 Employee type S H Hours worked <40 =40 >40 การกระทำ(Action) การกระทำที่เกิดขึ้นจริง(Action Entries) Pay-based salary X - Calculate hourly wage Calculate overtime Produce absent report

สร้างตารางการตัดสินใจ Decision Table พิจารณาเงื่อนไขต่างๆ เงื่อนไข ( Condition ) กฎการตัดสินใจ ( Decision Rule ) 1 2 3 4 Employee type S H Hours worked - <40 =40 >40 การกระทำ(Action) การกระทำที่เกิดขึ้นจริง(Action Entries) Pay-based salary X Calculate hourly wage Calculate overtime Produce absent report

ตัวอย่าง ร้านวีดีโอในหมู่บ้านแห่งหนึ่งได้กำหนดเกณฑ์ในการเช่าวีดีโอไว้ว่าผู้ที่อาศัยอยู่ในหมู่บ้านทุกคนหรือผู้เป็นสมาชิกสโมสรของหมู่บ้านมีสิทธิ์ในการเช่าวีดีโอ กรณีที่ 1 พิจารณาเงื่อนไขจะเห็นได้ว่า เงื่อนไข มีอยู่ 2 เงื่อนไข คือ - สมาชิกสโมสร - ลักษณะการอยู่อาศัย การกระทำ มีอยู่ 2 อย่าง คือ - ให้เช่า - ไม่ให้เช่า กรณีที่ 2 พิจารณาค่าที่เป็นไปได้ของเงื่อนไข ค่าที่เป็นไปได้ของแต่ละเงื่อนไข สมาชิกสโมสรมีอยู่ 2 ค่าคือ เป็นสมาชิก = Y และไม่เป็นสมาชิก = N ค่าที่เป็นไปได้ของลักษณะการอยู่อาศัยมีอยู่ 2 ค่าคือ อยู่ในหมู่บ้าน = Y และไม่อยู่ในหมู่บ้าน = N

สร้างตารางการตัดสินใจ Decision Table พิจารณาเงื่อนไขต่างๆ เงื่อนไข ( Condition ) กฎการตัดสินใจ ( Decision Rule ) 1 2 3 4 สมาชิกสโมสร Y N ลักษณะการอยู่อาศัย การกระทำ(Action) การกระทำที่เกิดขึ้นจริง(Action Entries) ให้เช่า X - ไม่ให้เช่า

สร้างตารางการตัดสินใจ Decision Table พิจารณาเงื่อนไขต่างๆ ( Condition ) กฎการตัดสินใจ ( Decision Rule ) 1 2 3 สมาชิกสโมสร Y N N  ลักษณะการอยู่อาศัย - การกระทำ(Action) การกระทำที่เกิดขึ้นจริง (Action Entries) ให้เช่า X ไม่ให้เช่า

สร้างตารางการตัดสินใจ Decision Table การจ่ายโบนัสพนักงาน การจ่ายโบนัสพนักงานโดยพิจารณาจากตำแหน่งของพนักงาน กรณีผู้บริหารจะได้โบนัส 5 เท่าของเงินเดือน กรณีผู้จัดการจะได้โบนัส 4 เท่าของเงินเดือน กรณีพนักงานปฏิบัติการ จะพิจารณาตามคะแนนประเมินผลการทำงาน โดยกรณีคะแนนการปฏิบัติงาน ถ้าได้คะแนนมากกว่า 90 คะแนน ได้โบนัส 3 เท่าของเงินเดือน ถ้าได้คะแนน 80-89 คะแนน ได้โบนัส 2 เท่าของเงินเดือน ถ้าได้คะแนนมากกว่า 70-79 โบนัส 1 เท่าของเงินเดือน ถ้าได้คะแนน้อยกว่า 70 คะแนนไม่ได้โบนัส

สร้างตารางการตัดสินใจ Decision Table เรื่องการจ่ายโบนัสพนักงาน เงื่อนไข ประเภทพนักงาน ผู้บริหาร ผู้จัดการ พนักงานระดับปฏิบัติการ คะแนนประเมินผลการทำงาน - >90 80-89 70-79 <70 การตัดสินใจ การจ่ายโบนัส 5 เท่า เงินเดือน 4 เท่า 3 เท่า 2 เท่า 1 เท่า ไม่ได้ โบนัส

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

ระบบงานร้านค้าออนไลน์ (ต่อ) กรณีศึกษา ระบบงานร้านค้าออนไลน์ (ต่อ)

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

จากแผนภาพกระแสข้อมูลระดับที่ 1 กระบวนการที่ 2 สมัครสมาชิกสามารถอธิบายขั้นตอนการประมวลรูปแบบภาษาอังกฤษแบบโครงสร้าง ได้ดังนี้ Input เลขที่บัตรประจำตัวประชาชน If เลขที่บัตรประจำตัวประชาชน = เลขที่บัตรประจำตัวประชาชนในตารางสมาชิก Then แสดงข้อความ “เลขที่บัตรประจำตัวประชาชนซ้ำ กรุณาป้อนข้อมูลใหม่” Else Begin Input Username If Username = Username ในตารางสมาชิก Then แสดงข้อความ “Usernameซ้ำ” Input Password, Repassword,ชื่อ,นามสกุล,e-mail,ที่อยู่,เบอร์โทรศัพท์ If บันทึกข้อมูล Then บันทึกข้อมูลสมาชิก End

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

พจนานุกรมโครงสร้างข้อมูล หรือ Data Structure Dictionary

แสดงสัญลักษณ์ในการเขียนพจนานุกรมข้อมูล ความหมาย = (Equal Sign) ประกอบด้วย + (Plus Sign) และ 1{ } n (Braces) การกระทำซ้ำของข้อมูลย่อย (1 ถึง n รอบ) [ ] (Brackets) การพิจารณาทางเลือกเพียงทางเลือกหนึ่ง ( ) (Optional) จะมีหรือไม่มีก็ได้

การเขียน Data Structure Dictionary สัญลักษณ์เท่ากับ ใช้เขียนอธิบายว่าข้อมูลที่อยู่ทางซ้ายมือแยกย่อยลงได้เป็นข้อมูลย่อยๆ ทางขวามือ โดยมีเครื่องหมาย "+" หมายถึง"และ" ตัวอย่างเช่น ที่อยู่ผู้ขาย = ถนน + จังหวัด + รหัสไปรษณีย์ สัญลักษณ์ [ ] หมายถึงให้เลือกหนึ่งจากตัวเลือกที่มีมากกว่าหนึ่ง เช่น เกรด = [A B+ B C+ C D+ D E I] * เกรดหมายถึงผลการเรียนในแต่ละวิชา * สัญลักษณ์ { } การทำซ้ำสำหรับข้อมูลตัวหนึ่ง หรือกลุ่มของข้อมูลชุดหนึ่งนอกจากนั้นจะมีข้อความกำกับว่า "max" และ "min" หมายความว่าทำซ้ำจากจำนวนน้อยที่สุด (min) ไปถึงจำนวนมากที่สุด (max) ครั้ง ตัวอย่างเช่น ใบสั่งซื้อ = ชื่อบริษัทที่ชื้อสินค้า + {ชื่อสินค้า+หน่วยสินค้า+จำนวน+ราคา}

พจนานุกรมกระแสการไหลของข้อมูล หรือ Data Flow Dictionary ชื่อข้อมูล รายละเอียด จาก ถึง ... ....

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

ตัวอย่าง พจนานุกรมแหล่งเก็บข้อมูล หรือ Data Store Dictionary ความหมาย รายละเอียด ข้อมูลนักศึกษา จัดเก็บข้อมูลนักศึกษา ID  Name  รหัสนักศึกษา  ชื่อนักศึกษา

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

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

กรณีศึกษา ระบบงานจัดหางานแรงงานจังหวัดเชียงราย

พจนานุกรมแหล่งเก็บข้อมูล ทะเบียนผู้หางาน (JobSeeker) ที่ แอตทริบิวต์ ความหมาย ชนิดข้อมูล หมายเหตุ 1 idCard เลขที่บัตรประชาชน Char(13)   2 Prename คำนำหน้า Char(1) 1 : นาย, 2 : นาง, 3 : นางสาว 3 Firstname ชื่อ Varchar(100) 4 Lastname นามสกุล 5 Sex เพศ F : หญิง, M : ชาย 6 Nationality สัญชาติ 1 : ไทย, 2 : ต่างด้าว 7 RegisStatus สถานะการขึ้นทะเบียน 1 : ว่างงาน, 2 : เปลี่ยนงาน 8 Address ที่อยู่ปัจจุบันที่ติดต่อได้ Varchar(250) ไม่รวม ต. อ. และ จ. 9 TbCode รหัสตำบลที่ติดต่อได้ Varchar(6) อ้างถึงตาราง Tumbon 10 Zipcode รหัสไปรษณีย์ Varchar(5) 11 Tel โทรศัพท์ Varchar(25) ระบุได้ 2 เบอร์ คั่นเบอร์ด้วย ,

พจนานุกรมแหล่งเก็บข้อมูล นายจ้าง Company ที่ แอตทริบิวต์ ความหมาย ชนิดข้อมูล หมายเหตุ 1 coID ทะเบียนนิติบุคคล / เลขที่บัตรฯ Varchar(13)   2 coName ชื่อกิจการ Varchar(200) 3 coType ประเภทกิจการ Char(1) 1 : นิติบุคคล, 2 : ไม่นิติบุคคล 4 Address ที่ตั้งกิจการ Varchar(250) ไม่รวมจังหวัดและรหัสไปรษณีย์ 5 tbCode ตำบลที่ตั้งกิจการ Char(6) อ้างถึงตาราง Tubom 6 ZipCode รหัสไปรษณีย์ที่ตั้งกิจการ Char(5) 7 Tel โทรศัพท์ Varchar(25) เก็บได้ 2 เบอร์ คั่นด้วย , 8 Fax โทรสาร 9 Contact ชื่อผู้ติดต่อ 10 ContactTel โทรศัพท์ผู้ติดต่อ 11 RegisDate วันที่ขึ้นทะเบียน Date 12 Status สถานะการใช้งานระบบ 0 : ปิด, 1 : เปิด 13 StartDate วันที่เปิดให้ใช้ระบบครั้งแรก

พจนานุกรมแหล่งเก็บข้อมูล ประกาศรับสมัครงาน (Want Ad) ที่ แอตทริบิวต์ ความหมาย ชนิดข้อมูล หมายเหตุ 1 coID ทะเบียนนิติบุคคล / เลขที่บัตรฯ Varchar(13) อ้างถึงตาราง Company 2 No ครั้งที่ int   3 IssueDate วันเวลาที่ลงประกาศ DateTime 4 BeginDate วันเริ่มรับสมัคร Date 5 EndDate วันสิ้นสุดการรับสมัคร 6 ActivityCode รหัสกิจกรรม Int(2) อ้างถึงตาราง Activity

พจนานุกรมแหล่งเก็บข้อมูล รายละเอียดการรับสมัครงาน (WantDetail) ที่ แอตทริบิวต์ ความหมาย ชนิดข้อมูล หมายเหตุ 1 coID ทะเบียนนิติบุคคล / เลขที่บัตรฯ Varchar(13) อ้างถึงตาราง WantAd 2 No ครั้งที่ int 3 OcCode ตำแหน่ง Char(6) อ้างถึงตาราง Occupation 4 Number จำนวน Int   5 Sex เพศ Char(1) F : หญิง, M : ชาย, A : ไม่ระบุ 6 DegreeCode ระดับการศึกษา Int (2) อ้างถึงตาราง Degree 7 FromAge จากอายุ Int (3) 8 ToAge ถึงอายุ 9 Salary อัตราค่าจ้าง 10 Spec เงื่อนไข/คุณสมบัติ Text 11 WorkTime ช่วงเวลาทำงาน Varchar(100) 12 personType ประเภทบุคคล 1 : ทั่วไป, 2 : คนพิการ, 3 : นร./นศ.

พจนานุกรมแหล่งเก็บข้อมูล ระดับการศึกษาอาชีพ (Occupation) ที่ แอตทริบิวต์ ความหมาย ชนิดข้อมูล หมายเหตุ 1 OcCode รหัสระดับการศึกษาอาชีพ Char(6)   2 OcName ชื่อระดับการศึกษาอาชีพ Varchar(200) 3 UnitCode รหัสหน่วยอาชีพ Char(4) อ้างถึงตาราง Unit

พจนานุกรมแหล่งเก็บข้อมูล ตำแหน่งงานที่ต้องการ (RequireList) แอตทริบิวต์ ความหมาย ชนิดข้อมูล หมายเหตุ 1 idCard เลขที่บัตรประชาชน Char(13) อ้างถึงตาราง JobSeeker 2 No ลำดับที่ Int   3 UnitCode ตำแหน่งงานที่ต้องการ Char(4) อ้างถึงตาราง Unit 4 FromSalary อัตราค่าจ้างเริ่มต้นที่ต้องการ 5 ToSalary อัตราค่าจ้างสิ้นสุดที่ต้องการ 6 Per อัตราต่อ Char(1) H : ชั่วโมง, D : วัน, M : เดือน