การพัฒนาซอฟต์แวร์ หรือ ระบบ

Download Report

Transcript การพัฒนาซอฟต์แวร์ หรือ ระบบ

บทที่ 9
การพัฒนาระบบ
• System Development
–
–
–
–
–
การพัฒนาซอฟต์แวร์ หรื อ ระบบ
การจัดทาเอกสารประกอบซอฟต์แวร์ หรื อ ระบบ
การทดสอบซอฟต์แวร์ หรื อ ระบบ
การบารุ งรักษาระบบ
การตรวจสอบซอฟต์แวร์ หรื อ ระบบ
1
การพัฒนาซอฟต์ แวร์
หรือ ระบบ
• การพัฒนาระบบต้องคานึงถึง
–
–
–
–
–
–
–
–
Top-down structure
Module development
Coupling
Cohenion
Span of control
Module size
Share user
Structure chart
2
Top-Down
การออกแบบจากบนลงล่ าง
• ขบวนการออกแบบ หรื อ วิเคราะห์งานเริ่ มจาก ระบบทัว่ ไป และ
ขยายลงสู่ระบบย่อย
• การพัฒนาซอฟต์แวร์เริ่ มจากภาระกิจหลัก และ แยกเป็ นภาระกิจ
ย่อยๆ เรี ยกว่า โมดูล (MODULE)
3
การพัฒนาระบบ
โดยใช้ โมดูล
• ประโยชน์ที่ได้จากการใช้ โมดูล
– ง่ายต่อการเขียน และ แก้ไข
– ง่ายต่อการบารุ งรักษา
– สามารถใช้งานได้อย่างอิสระ
4
การพัฒนาระบบ
โดยใช้ โมดูล
• ข้อเสนอแนะการเขียนโมดูล
–
–
–
–
โมดูลหนึ่งๆควรมีขนาดเหมาะสม
ควบคุมการสื่ อสารระหว่างโมดูล
จากัดจานวนโมดูล
รักษาโคร้างสร้างบนลงล่าง
5
การเชื่อมต่ อ
COUPLING
• การเชื่อมต่อ (Coupling)
–
–
–
–
เครื่ องวัดความสัมพันธ์ของข้อมูลระหว่างโมดูล
ยิง่ มีการเชื่อมต่อน้อยเท่าไร โมดูลมีอิสระมากเท่านั้น
การเชื่อมต่อระหว่างโมดูล ทาได้โดยการผ่านพารามิเตอร์
การผ่านพารามิเตอร์ มี 2
แบบ
* แบบข้อมูล
* แบบตัวควบคุม
6
การเชื่อมต่ อระหว่ างโมดูล
(Module Coupling)
• ประเภทการต่อเชื่อม
คุณสมบัติ
Commom
External
Control
Stamp
Data
ผลของการเชื่อม
เชื่อมต่อระดับสูง
เชื่อมต่อระดับต่า
ระดับ
ต่าสุ ด
สูงสุ ด
7
การเชื่อมต่ อระหว่ างโมดูล
(Module Coupling)
• Common
– เกิดจากโมดูลต่างๆอ้างอิงถึง โครงสร้ างข้ อมูลส่ วนกลาง
(โครงสร้างข้อมูล คือ กลุ่มข้อมูลที่มีความสัมพันธ์ กัน เช่น
ระเบียน หรื อ แถวลาดับ)
• External
– เกิดจากโมดูลต่างๆอ้างอิงถึงตัวแปรส่ วนกลาง (Global
Variable)
– ตัวแปรส่ วนกลางเป็ นข้อมูลพื้นฐานไม่มีโครงสร้างที่ซบั ซ้อน
8
การเชื่อมต่ อระหว่ างโมดูล
(Module Coupling)
• Control
– เกิดจากการส่ งผ่าน ตัวแปรควบคุม ระหว่างโมดูล โดย
ตัวแปรที่ส่งผ่านจะควบคุมการทางานของโมดูล
• Stamp
– เกิดจากการส่ งผ่าน โครงสร้ างข้ อมูล ระหว่างโมดูล และ
การส่ งผ่านทาในรู ปของพารามิเตอร์
9
การเชื่อมต่ อระหว่ างโมดูล
(Module Coupling)
• Data
– เกิดจาการส่ งผ่านตัวแปรระหว่างโมดูล มีลกั ษณะคล้าย
Stamp เพียงแต่ขอ้ มูลที่ส่งผ่านเป็ นตัวแปร ไม่ใช่
โครงสร้างข้อมูล
10
การเชื่อมต่ อ
COUPLING
• การส่ งผ่านข้อมูลมากเกินไปทาให้ โมดูลทางานได้ไม่เต็มที่
• ภาพ ก
ภาพ ข Edit new
Edit new
customer
Edit new
customer
Customer
record
Edit customer
Phone number
Valid
phone flag
Type of
Error
Phone
numbers
Employee
Valid
Phone
flag
Type of
Edit Phone error
number
Phone
number
Edit Phone
number
Valid
Phone
Flag
Type of
Error
11
การเชื่อมต่ อ
COUPLING
• ภาพ ก เนื่องจากส่ งผ่านโครงสร้างข้อมูลระหว่างโมดูล (Stamp
coupling) ทาให้โมดูล Edit customer phone number ตรวจสอบ
หมายเลขโทรศัพท์ เฉพาะ ของลูกคาเท
้ านั
่ ้น
• หากเปลี่ยนการส่ งผ่านเฉพาะข้อมูล (Data Coupling) แล้วทาให้
โมดูลตรวจสอบหมายเลขโทรศัพท์ สามารถใช้ได้กบั การ ตรวจสอบ
ทัว่ ๆไป
12
การเชื่อมต่ อ
COUPLING
• การเชื่อมต่อที่ดีมีแนวทางดังนี้
–
–
–
–
–
ควบคุมจานวนการส่ งผ่านพารามิเตอร์
หลีกเลี่ยงการส่ งผ่านข้อมูลที่ไม่จาเป็ น
ส่ งผ่านเฉพาะข้อมูลเมื่อจาเป็ น
รักษาความสัมพันธ์ระหว่างโมดูล
พยายามส่ งผ่านข้อมูลแทนการส่ งผ่านแบบข้อมูลควบคุม
13
การยึดเหนี่ยว
Conhension
• เครื่ องวัดกาลังยึดภายในโมดูล พิจารณาจากความสัมพันธ์ภายใน
ของโมดูล การยึดเหนี่ยวสูง ถือว่าเป็ นโมดูลที่ดี
14
การเชื่อมต่ อ
COUPLING
• ประเภทของการยึอเหนี่ยว
ระดับ
คุณสมบัติ
Conicidental
การยึดเหนี่ยว
Logical
Temporal
Procedural
Communicational
Sequential
Functional
การยึดเหนี่ยวมาก
กาลังยึด
ตา่ สุ ด
สู งสุ ด
15
การเชื่อมต่ อ
COUPLING
• Coincidental เกิดจากการรวมกลุ่มกิจกรรมที่ไม่มีความสัมพันธ์กนั
จึงกาหนดหน้าที่เฉพาะโมดูลได้ยาก
• Logical
เกิดจากกิจกรรมในโมดูลถูกรวมเขา้
ด้วยกัน เพราะมีลกั ษณะของ กิจกรรมคล้ายกัน แต่ไม่เกี่ยวข้องกัน
เช่น การอ่านแฟ้ มข้อมูล
• Temporal
เกิดจากการรวมตัวของกิจกรรมทีม
่ ี
ความสัมพันธ์กนั ทางเวลา เช่น โมดูลกาหนดค่าเริ่ มต้น
16
การเชื่อมต่ อ
COUPLING
• Procedure
เกิดจากการแบงโปรแกรมขนาดใหญ
่
่
ออกเป็ นส่ วนต่างๆ ตาม กระบวนงาน หรื อ โครงสร้างโปรแกรม
โดยไม่คานึงถึงหน้าที่
• Communication
เกิดจากการทีก
่ จ
ิ กรรมตางๆภายใน
่
โมดูลทาการปฏิบตั ิการ บนข้อมูลชุดเดียวกัน เช่น โมดูลมีการ
ตรวจสอบความ ถูกต้อง ของข้อมูล (Validation)
17
การเชื่อมต่ อ
COUPLING
• Sequential
เกิดจากการทางานภายในของโมดูล
โดยที่ข้นั ตอนการ ทางานหนึ่งต้องขึ้นตรงกับการทางานก่อนหน้า
นั้น เช่น ข้อมูลออกจากโมูดลหนึ่งไปเป็ นข้อมูลเข้าของอีกโมดูล
ถัดไป
• Functional
เกิดจากการทีก
่ จ
ิ กรรมภายในโมดูล
ทางานเฉพาะอย่าง คือ ทางานเพียงอย่างเดียว ดังนั้นการตั้งชื่อโมดูล
18
ทาได้โดยง่าย
ควบคุมการกระจาย
ขนาดของโมดูล
• ควบคุมการกระจาย (Span of control)
กาหนดจานวนของโมดูลทีถ
่ ก
ู เรียก
ต่อ โมดูลที่เรี ยก ปกติโมดูลที่ถูกเรี ยกจะมีจานวน 5-7 โมดูล ไม่
ควรมากกว่านั้น
• ขนาดของโมดูล (Module size)
การกาหนดขนาดของโมดูล โดย
กาหนดจานวนประโยค ในแต่ละโมดูล (50ประโยคต่อโมดูล หรื อ
โมดูลหนึ่งใช้ หนึ่งหน้ากระดาษ) เป็ นสิ่ งไม่ถูกต้อง ต้องกาหนด
19
โดยหน้าที่
การใช้ โมดูลร่ วมกัน
Shared Module
• เมื่อโมดูลมีอิสระและมีการทางานเฉพาะอย่างแล้ว สามารถแบ่งใช้
โมดูลกับระบบอื่นๆได้
• สาเหตุที่ใช้โมดูลร่ วมกัน
–
–
–
–
ช่วยลดขั้นตอนและการเขียนโปรแกรม
ง่ายต่อการบารุ งรักษา
ช่วยลดข้อผิดพลาดในระบบ เมื่อเกิดข้อผิดพลาดก็แก้ไขเพียงแห่ งเดียว
ระบบเก็บโมดูลในรู ปห้องสมุด (Library)
20
Structure Chart
ผังโครงสร้ าง
• ผังโครงสร้างแสดงแนวทางการออกแบบจากบนลงล่าง โดยมี
ภาระกิจหลักอยูร่ ะดับบน ภาระกิจย่อยอยูใ่ นระดับต่าลงมา และยัง
แสดงการผ่านพารามิเตอร์ การวนซ้ า และ การตัดสิ นใจ โดยใช้
สัญลักษณ์ต่อไปนี้
หรือ
ผ่ านพารามิเตอร์
การวนซ้า
การตัดสิ นใจ
21
Structure Chart
ผังโครงสร้ าง
• ผังโครงสร้าง แสดง
Process Report
การพิมพรายงาน
มี
์
โมดูลอานข
อมู
ล และ
่
้ Student
EOF
Info. ล Flag
ส่งขอมู
้ ลไปยังโมดู
พิมพรายงาน
์
Read student
Record
Student
Info.
Print report
22
Structure Chart
ผังโครงสร้ าง
Organize part Number
Raw input
EOF flag
2.1
Read part number
Part
number
Raw
Edit flag
input
2.2
Edit part number
Sort
Part
part number
number
2.3
Sort part number
23
Structure Chart
ผังโครงสร้ าง
•
•
•
•
•
สัญลักษณ์
แสดงว่า บางโมดูลมีการวนซ้ า
โมดูล 2.1 ทาการอ่านข้อมูล
ข้อมูลถูกส่ งไป โมดูล 2.2 ทาการแก้ไขตรวจสอบ part number
โมดูล 2.1 และ 2.2 ทางานซ้ าจนกระทั้งข้อมูลหมด
ข้อมูลทั้งหมดถูกเรี ยงลาดับใน โมดูล 2.3
24
Structure Chart
ผังโครงสร้ าง
• สัญลักษณ แสดงว่ามีทางเลือก แบบ OR จากภาพ การปรับปรุ ง
แฟ้ มลูกค้า มีการเรี ยงลาดับโดย ชื่อ หรื อ
รหัสลูกคา้ หรือ ทีอ
่ ยู่ บาง โมดูล
เท่านั้นที่ถูกปฏิบตั ิการ Update Cust.
file
100
Sort by name
200
Sort by code
300
Sort by address
25
Structure Chart
ผังโครงสร้ าง
• การวางตาแหน่งสัญลักษณ์มีความสาคัญเพราะทาให้ การออกแบบ
โมดูลมีประสิ ทธิภาพต่างกัน
• ดูตวั อย่างจาก 2 ภาพต่อไป
26
Structure Chart
ผังโครงสร้ าง
000 Process order
type of sale
100 Prepare Invoice
110
Determine
detail price
120
Calculate
Wholesale
price
130
Print
invoice
type of sale
200 Update Records
210
Retail Record
220
Update sale
Record
27
Structure Chart
ผังโครงสร้ าง
000 Process order
100 Prepare Retail
Invoice and Update
110
Determine
detail price
120
Update Retail
Records
130
Print
invoice
200 Prepare Whole
sale invoice and update
210
220
230
Determine Update Whole Print invoice
Wholesale sale Records
Price
28
Structure Chart
ผังโครงสร้ าง
• ผังลาดับทั้ง 2 มีผลลัพธ์ของการทางานเหมือนกัน แต่การออกแบบ
ผังที่ 1 ยังไม่ค่อยดีนกั เพราะมีการตัดสิ นใจถึง 2 แห่ง ขณะที่ผงั ที่
2 เหมาะสมกว่าเพราะมีการลดจานวนการตัดสิ นใจ ซึ่งสามารถ
ลดการส่ งผ่านพารามิเตอร์ระหว่างโมดูล ดังนั้นโมดูลจึงอิสระ
มากกว่า
29
การเขียน DFD เป็ น
ผังโครงสร้ าง
30
การเขียน DFD เป็ น
ผังโครงสร้ าง
31
การเขียนเอกสาร
ประกอบซอฟท์ แวร์
• เทคนิคการทาเอกสารประกอบการออกแบบ มี 2 ประเภท
– ประเภทใช้สญ
ั ลักษณ์ เช่น HIPO, N-S diagram, FLOWCHART
– ประเภทที่ใช้โครงสร้าง เช่น Warnier-Orr, Pseudocode
32
HIPO
• HIPO ย่อมาจาก Hierarchy Input Process Output พัฒนาโดย IBM
• คือ เครื่ องมือที่ใช้ในการออกแบบ และวิธีการเขียนซอฟต์แวร์
• ประกอบด้วย โปรแกรม และ ผังงาน สาหรับอธิบาย ข้อมูลส่ วน
นาเข้า การประมวลผล และ ข้อมูลส่ งออก
33
HIPO
• การเขียน HIPO ต้องอาศัยผังงาน 3 แบบ คือ
– ผังลาดับความสาคัญของกิจกรรม (VTOC : Visual table of contents)
– ผังรวม IPO (Overview IPO diagram)
– ผังภาพรายละเอียด IPO (Detailed IPO diagram)
34
HIPO
• VTOC
ผังทีใ่ ช้จัดลาดับของกิจกรรมสาคัญ
ของโปรแกรม โดยพิจารณาจาก ข้อกาหนด และ ความต้องการแล้ว
นามาแบ่งเป็ นภารกิจหลัก จากนั้นหาความสัมพันธ์ระหว่างกิจกรรม
พร้อมจัดลาดับ ความ สาคัญ ของกิจกรรมเหล่านั้น การแสดงลาดับ
ของกิจกรรม เหมือน กับการแสดงในผังลาดับชั้น
35
HIPO
• ผังรวม IPO
ผังแสดงภาพรวมของระบบที่
ประกอบด้วย ส่ วนนาเข้า ส่ วนประมวลผล และ ส่ วนนาออก (Input
Process Output)
– ส่ วนแสดงการนาเข้าอธิ บายถึงแฟ้ มข้อมูล (เป็ นสัญลักษณ์) ที่ใช้แต่ละ
ขั้นตอน
– ส่ วนแสดงการประมวลผล มีหมายเลขกากับที่ใช้ใน VTOC อธิบาย
ลักษณะของกิจกรรม
– ส่ วนแสดงการนาออก บรรยายถึงข้อมูลที่ผา่ นการประมวลผล ตลอดจน 36
สื่ อบันทึกในรู ปของสัญลักษณ์
HIPO
• ผังภาพรายละเอียด IPO
คือผังขยายรายละเอียดเพิม
่ จาก ผัง
รวม IPO ขยายการประมวลผล ให้ละเอียดจนอยูใ่ นรู ปคาสัง่ ผังยังมี
ลักษณะคล้ายผังรวมของ IPO
37
HIPO
• สัญลักษณ์ที่ใช้ใน HIPO
กิจกรรม
การเคลือ่ งไวข้ อมูล
จุดเชื่อมหน้ า
จอภาพ
เอกสาร
การควบคุม
แฟ้ มข้ อมูล
แฟ้มพิมพ์
จุดเชื่อมต่ อระหว่ างข้ อมูล
38
HIPO
• ผังงาน HIPO ทั้ง 3 ประเภท
39
HIPO
• ตัวอย่าง การเขียนผัง HIPO การลงทะเบียนลูกค้า มีการบันทึกข้อมูล
การแก้ไขข้อมูล การลบข้อมูล และ การพิมพ์ขอ้ มูล กาหนดเป็ น
VTOC และ เขียนเป็ นผังลาดับ มีหมายเลขแสดงความสัมพันธ์ของ
กิจกรรมดังนี้
40
HIPO
1.0
ข้ อมูลทั้งหมด
2.0 การเพิม่
เติมข้ อมูล
3.0 การ
แก้ ไข
ข้ อมูล
4.0 การลบ
ข้ อมูล
5.0 การค้ น
หาข้ อมูล
6.0 การพิมพ์
ข้ อมูล
5.1
จากชื่อ
5.2
จากกลุ่ม
5.3
จากวิชา
41
HIPO
• จาก VTOC นามาลาดับ ส่ วนนาเข้า ส่ วนประมวลผล และ ส่ วนนา
ออก โดยใช้สัญลักษณ์ จะได้ภาพรวม IPO ดังนี้
42
HIPO
• ภาพรวมของ IPO จากตัวอย่างการลงทะเบียนลูกค้า
43
HIPO
• ผังรายละเอียด IPO ต้องทารายละเอียดของทุกโมดูล โดยขั้นตอน
การประมวลผลของแต่ละโมดูล จะแสดงให้ชดั เจนในรู ปโครงสร้าง
หรื อ คาสัง่ ผังรายละเอียด IPO นี้แสดงเฉพาะโมดูล 2.0 เท่านั้น
44
ผังรายละเอียด IPO
อินพุต
มาสเตอร์
ทรานแซคชั่น
กิจกรรม
2.0
เอาต์ พุต
กระบวนการ
1. รับรหัสลูกค้ า
2. ค้ นหาในแฟ้มมาสเตอร์
3. ถ้ า พบ (ลูกค้ าเก่ า)
- แสดงชื่อ รหัส ทีอ่ ยู่
อย่ างอืน่
- บันทึกรหัสลูกค้ าลงใน
แฟ้ มมาสเตอร์ ชื่อ ทีอ่ ยู่
- บันทึกส่ วนอืน่ ๆลงใน
แฟ้มทรานแซคชั่น
มาสเตอร์
ทรานแซคชั่น
รีเทอร์ น
45
HIPO
• การนา Data Flow Diagram มาเขียนเป็ น HIPO โดย Input/Output
file แสดงเป็ นสัญลักษณ์อยูด่ า้ นข้างของผัง ขณะที่รายงาน เป็ น
กระบวนการอยูต่ รงการ
• ข้อดีของ HIPO คือง่ายต่อการเข้าใจ เพียงเข้าใจสัญลักษณ์
• ข้อเสี ยคือสัญลักษณ์เป็ นภาพ มีขนาดเทอะทะ ทาให้เสี ยเนื้อที่
หน้ากระดาษ
46
HIPO
• ภาพการเปลี่ยน DFD เป็ น HIPO
47
Flowchart
ผังงานโปรแกรม
• ผังงานโปรแกรม ผังที่ใช้ลูกศรและสัญลักษณ์แบบต่างๆ แสดงการ
รับส่ งข้อมูลทัว่ ระบบงาน หรื อสายการควบคุมตลอด โปรแกรม
48
BATCH PROCESSING
• PAYROLL
KEY &
VERIFY
NEW FORM
TRANSACTION
FILE
UPDATE
FORM
SORT
PROCESSING
SORTED
TRANSACTION
1
49
BATCH PROCESSING
• Cont.
1
UPDATE
PROCESSING
SORTED
RECORDS
TO
PERSNEL
CHECKS FOR
DISTIBUTION
OLD
MASTER
FILE
<
REPORT
PAYROLL
FILE
NEW
MASTER
FILE
50
นาชิชไนเดอร์ แมน
N-S Diagram
• N-S diagram เป็ นผังภาพที่มีลกั ษณะของโครงสร้างรวมอยูก่ บั
สัญลักษณ์ โครงสร้างมี 3 แบบ คือ
– แบบเรี ยงลาดับ
– แบบทางเลือก
– แบบวนซ้ า
51
นาชิชไนเดอร์ แมน
N-S Diagram
แบบเรี ยงลาดับ
Statement 1
Statement2
แบบทางเลือก
Yes
แบบวนซ้ า
IF condition
DOWHILE condition
No
Statement 1 Statement 2
Statement
Block
Statement 3
52
นาชิชไนเดอร์ แมน
N-S Diagram
• N-S diagram แสดงการปรับปรุ งระบบ
อ่ านระเบียนหลัก
อ่ านระเบียนปรับปรุง
ยังมีระเบียนปรับปรุ ง หรือ ระเบียนหลัก
ระเบียนหลัก =ระเบียนปรับปรุง
จริง
เท็จ
หลัก < ปรับปรุ ง
ปรับปรุ งแฟ้ มหลัก
จริง
เท็จ
บันทึกแฟ้ มหลัก
บันทึกแฟ้ มหลัก พิมพ์รายงานความผิดพลาด
อ่ านแฟ้ มหลัก
อ่ านแฟ้ มหลัก
อ่ านแฟ้ มหลัก
อ่ านแฟ้ มปรับปรุง
ปิ ดแฟ้มหลัก
53
ปิ ดแฟ้ มปรับปรุง
รหัสเทียม
PUSEUDOCODE
• กลุ่มประโยคในภาษาอังกฤษที่มีรูปแบบและอักษรย่อ มองดูคล้าย
ภาษาคอมพิวเตอร์ระดับสูงใช้ คาหลัก และการย่อหน้าแสดง
โครงสร้าง
• มีโครงสร้าง 3 แบบ
– แบบเรี ยงลาดับ
– แบบทางเลือก
– แบบวนซ้ า
54
รหัสเทียม
PUSEUDOCODE
แบบเรี ยงลาดับ
แบบวนซ้ า
Statment 1
Satement 2
Statement 1
Stattemnt 3
3
แบบทางเลือก
IF condition THEN DOWHILE
Statement 1
ELSE
Statement 2
Statement 2
Statement 55
Warnier-Orr Diagram
• Warnier-Orr (W/O) มีการออกแบบจากบนลงล่าง
• ใช้เครื่ องหมายปี กกา วงเล็บ
สั ญลักษณ์
ความหมาย
{
แสดงกลุ่ม และ กลุ่มย่ อย
{
(M)
จานวนครั้ง
(0,1)
เงือ่ นไข จริง หรือ เท็จ
+
แสดงประโยคบน ล่ าง เป็ น
ทางเลือกแบบ OR
PERFORM
การกระโดดข้ ามไปยังส่ วนอืน่ ๆของโปรแกรม
56
Warnier-Orr Diagram
• การเขียน W/O diagram มีการใช้โครงสร้าง 3 แบบ คือ
– แบบเรี ยงลาดับ เขียนจากซ้ายไปขวา จากบนลงล่าง
แฟ้มบุคคล { ระเบียนพนักงาน { เขตข้อมูลพนักงาน
ต่อไปนี้
หรือ อาจเขียนตามรูปแบบ
รหัส
เขตขอมู
้ ลพนักงาน
ตาแหน่ง
ชือ
่
57
Warnier-Orr Diagram
• การเขียน W/O diagram มีการใช้โครงสร้าง แบบวนซ้ า
การประมวลผลระเบียน (R) คือ วนซ้ าตั้งแต่ 0-R ครั้ง
การประมวลผลระเบียน (1,R) คือ วนซ้ าตั้งแต่ 1-R ครั้ง
การประมวลผลระเบียน (10) คือ วนซ้ าตั้งแต่ 10
ครั้ง
58
Warnier-Orr Diagram
• การเขียน W/O diagram มีการใช้โครงสร้างแบบทางเลือก
ทีเ่ ลือกเอาอยางใดอย
างหนึ
่ง หรือ
่
่
ทั้งสอง อย่าง (OR)
ฝึ กงาน
ตรวจสอบสถานะ
+
กาลังศึกษา {พิมพ์รายงาน
59
Warnier-Orr Diagram
• การเขียน W/O diagram มีการใช้โครงสร้างแบบทางเลือก
• หากต้องการอย่างใดอย่างหนึ่งเท่านั้น (AND) ต้องมี (0,1) กากับ
เช่น
ฝึ กงาน (0,1)
ตรวจสอบสถานะ
กาลังศึกษา(0,1) { พิมพ์รายงาน
+
60
Warnier-Orr Diagram
BEGIN REPORT
PRINT HEADING
BEGIN SELECT
DEPT. A (0,1)
PERSONAL (R)
+
OTHER DEPT.
END SELECT
(0,1)
PRINT TOTAL
END REPORT
PRINT DETAIL
COMPUTE TOTAL
READ NEXT RECORD
{READ NEXT REC.ORD
61
Warnier-Orr Diagram
• ข้อดีของ W/O diagram
– ทาความเข้าใจได้ง่าย
– สามารถเพิ่มเติมรายละเอียดได้ง่าย ไม่ตอ้ งปรับโครงสร้างใหม่
• ข้อเสี ย
– ผูท้ ี่ไม่คุน้ เคยต้องการ การฝึ กหัด
– ไม่เหมาะกับงานวิทยาศาสตร์
62
วิธีเลือกเทคนิค
การจัดทาเอกสาร
• แนวทางในการเลือก
– เอกสารใหม่ควรเทียบเท่ากับเอกสารที่มีอยูเ่ ดิม
– เอกสารเป็ นที่เข้าใจของบุคคลในองค์กร
– อนุญาตให้นกั วิเคราะห์สามารถกลับมาทางานระบบนี้ได้ ภายหลังเสร็ จ
งาน แล้วสักระยะหนึ่ง
– เอกสารต้องเหมาะสมกับขนาดขององค์กร
– เอกสารควรมี การออกแบบโครงสร้างรวมอยู่ เพื่อง่ายต่อการ ใช้งานใน
องค์กร
– เอกสารควรง่ายต่อการ ขยาย ปรับปรุ ง และ แก้ไข
63
การทดสอบระบบ
TESTING
• เพื่อค้นหาข้อผิดพลาดของระบบ ซึ่งอาจอยูใ่ น โปรแกรม คูม่ ือ หรื อ
เครื่ องมือ
• การทดสอบระบบทาอย่างต่อเนื่องเริ่ มตั้งแต่การพัฒนาระบบจนถึง
ขั้นตอนสุ ดท้าย
• การทดสอบถือเป็ นขั้นตอนสาคัญ การทดสอบไม่ดีพอระบบ จะ
ล้มเหลวภายหลังติดตั้งระบบ
• การทดสอบต้องทดสอบระบบย่อยทุกระบบ
• ระบบที่ทางานร่ วมกัน ต้องทดสอบการเชื่อมต่อระหว่างระบบย่อย
64
การทดสอบระบบ
TESTING
• เอกสาร เอาต์พตุ ต้องถูกตรวจสอบ
• โปรแกรมเมอร์ นักวิเคราะห์ ผูใ้ ช้ระบบ มีบทบาทในการทดสอบ
• การทดสอบเครื่ องคอมพิวเตอร์ ปกติถูกทดสอบ จากผูข้ าย ก่อนส่ ง
มอบเครื่ อง
65
การทดสอบระบบ
TESTING
• ขั้นตอนการทดสอบ
– การทดสอบโปรแกรมด้วยข้อมูลทดสอบ
– การทดสอบการเชื่อมโยงระหว่างโปรแกรมด้วยข้อมูลทดสอบ
– การทดสอบด้วยข้อมูลจริ ง
66
การทดสอบระบบ
TESTING
• ผลที่คาดว่าจะได้จากการทดสอบข้อมูลทดสอบ
– เป็ นการทดสอบความถูกต้องของคู่มือการใช้ และ เอกสารอื่นๆว่าถูกต้อง
และ ปฏิบตั ิงานอย่างมีประสิ ทธิ ภาพ
– เป็ นการตรวจสอบขบวนการที่ทาด้วยมือว่าชัดเจนพอที่จะนาไปใช้เตรี ยม
ข้อมูลเข้า
– เป็ นการทดสอบว่าการไหลของงานไม่สะดุดเมื่อมีการขยายหรื อปรับปรุ ง
– ตรวจดูความถูกต้องและรู ปแบบของเอาต์พุตว่าตรงกับความต้องการของ
ผูใ้ ช้
67
การทดสอบระบบ
TESTING
• ประโยชน์ที่ได้จากการทดสอบข้อมูล
– เป็ นการตรวจสอบมาตรฐานของระบบ
– ใช้วดั ผลการทางานของระบบ เช่น
* ระยะเวลาในการประมวลผล
* ความยากง่ายในการใช้ระบบ
* ลาดับการเปลี่ยนแปลงที่เหมาะสม
– ทาให้เข้าใจกระบวนงานในระบบ
68
MAINTENANCE
การบารุงรักษาระบบ
•
•
•
•
•
•
นักวิเคราะห์มีหน้าที่บารุ งรักษาระบบภายหลังติดตั้งระบบ
การออกแบบระบบที่ดีทาให้การบารุ งรักษาระบบง่ายขึ้น
ต้นทุนในการบารุ งรักษาใช้งบ ประมาณ 50% ของงบทั้งหมด
ต้นทุนในการบารุ งรักษาสูงสะท้อนให้เห็นถึงการออกแบบที่ไม่ดี
การออกแบบที่ป้องกันข้อผิดพลาดเป็ นการลดต้นทุน
การบารุ งรักษาเป็ นขบวนการที่เพิ่มประสิ ทธิภาพการทางานมากกว่า
แก้ไขความล้มเหลวของระบบ
69
MAINTENANCE
การบารุงรักษาระบบ
• การบารุ งรักษา อาจเป็ นการแก้ไขโปรแกรม หรื อ เพิ่มโปรแกรม ที่
ต้องการ
• การแก้ไขอาจเกิดจากการเปลี่ยนขององค์กร หรื อ จากข้อผิดพลาด
ของระบบ
• นักวิเคราะห์ตอ้ งการคาแนะนา หรื อ FEEDBACK จากผูใ้ ช้ระบบ
70
การตรวจสอบระบบ
AUDITING
• เพื่อเพิ่มความมัน่ ใจในระบบ หรื อ สารสนเทศที่ถูกต้อง ต้องมีการ
Auditing จากผูเ้ ชี่ยวชาญ ที่ไม่เกี่ยวข้องกับการติดตั้งระบบ
ตรวจสอบว่าข้อมูลถูกต้องแค่ไหน
• การตรวจสอบมี 2 ประเภท คือ
– การตรวจสอบภายนอก เกิดจากข้อมูลที่ระบบใช้มีผลต่องบการเงิน
ตองอาศั
ยบุคคลภายนอกมาตรวจสอบ
้
– การตรวจสอบภายใน ควบคุมข่าวสาร ระบบรักษาความปลอดภัย
ตรวจสอบกระบวนการทางาน การตรวจสอบแบบนี้เจาะลึกกว่าแบบแรก
71