Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore เอกสารประกอบการเรียน การวิเคราะห์และออกแบบระบบเชิงวัตถุ

เอกสารประกอบการเรียน การวิเคราะห์และออกแบบระบบเชิงวัตถุ

Published by Wanwisa Jaranan, 2022-05-22 10:53:56

Description: เอกสารประกอบการเรียน การวิเคราะห์และออกแบบระบบเชิงวัตถุ

Search

Read the Text Version

รหัสวิชา 30204-2003 การวิเคราะห์และ ออกแบบระบบเชิงวัตถุ (Object Oriented Analysis and Design) หลักสูตรประกาศนียบัตรวิชาชีพชั้นสูง พุทธศักราช 2563 ประเภทวิชาบริหารธุรกิจ สาขาวิชาเทคโนโลยีธุรกิจดิจิทัล

คำนำ หนังสอื วชิ า \"การวิเคราะหแ์ ละออกแบบระบบเชงิ วตั ถุ\" เลม่ นี้ เรียบเรียงขึน้ ใหส้ อดคล้องกับคำอธิบาย รายวิชาการวิเคราะห์และออกแบบระบบเชิงวัตถุ รหัสวิชา 30204-2003 หลักสูตรประกาศนียบัตรวิชาชีพ ชั้นสูง (ปวส.) พุทธศักราช 2563 ของสำนักงานคณะกรรมการการอาชีวศึกษากระทรวงศึกษาธิการ มีเนื้อหา ครบถ้วนและถูกต้องตามจุดประสงค์รายวิชาและสมรรถนะรายวิชาตามที่หลักสูตรกำหนด มีการยกตัวอย่าง พร้อมกรณีศึกษาประกอบในแต่ละหน่วยการเรียนรู้ซ่ึงจะเป็นประโยชนต์ ่อผู้เรียนในการศึกษาเรียนรู้ได้ชัดเจน ย่งิ ขนึ้ มีการเพ่มิ เติมแบบทดสอบก่อนการเรยี นรู้และแบบทดสอบหลังการเรียนรู้เพ่ือวัดและประเมินผลผู้เรียน ให้สอดคล้องตามสภาพจริงครูผู้สอนสามารถนำผลสัมฤทธิ์ที่ได้ไปพัฒนาปรับปรุงการเรียนการสอนได้ทั้งแบบ รายบุคคลและรายกล่มุ รวมทง้ั บรู ณาการร่วมกบั แหล่งการเรียนร้อู ่นื ๆ ได้ตามความเหมาะสม หนังสือเล่มนี้ผู้เรียบเรียงไม่ได้มุ่งหวังเพียงผลสัมฤทธิ์ทางด้านวิชาการหรือทักษะส่วนบุคคลานั้น แต่ มุ่งหวังให้เกิดการปฏิสัมพันธ์ที่ดีระหว่างผู้เรียนด้วยกัน ระหว่างผู้เรียนกับครูผู้สอนปลูกฝังค่านิยมที่ดีในการ ทำงานร่วมกันและการใช้ชีวิตในสังคมปัจจุบัน ซึ่งจะเป็นประโยชน์ต่อตัวผู้เรียนเองในการประกอบอาชีพหรือ ศึกษาต่อในอนาคต อย่างไรก็ดีการเรียบเรียงหนังสือย่อมมีความทันสมัยไปตามช่วงเวลานั้น ๆ และคงไม่มีความสมบูรณ์ เป็นทสี่ ุด หากมีสงิ่ ใดที่ขาดตกบกพร่องหรือมีข้อเสนอแนะเพิ่มเติม ผู้เรียบเรยี งมีความยินดีเป็นอย่างย่ิงที่จะรับ ข้อเสนอแนะและพร้อมปรับปรังพัฒนาใหห้ นังสอื เล่มนี้สอดคลอ้ งกับความต้องการของผูใ้ ช้ใหม้ ากท่ีสุด ผู้เรยี บ เรียงหวังเป็นอย่างย่ิงวา่ หนงั สือเล่มนี้จะเกิดประโยชนต์ ่อการจัดการเรียนการสอนในรายวิชาการวิเคราะหแ์ ละ ออกแบบระบบเชิงวตั ถุ สามารถพัฒนาองคค์ วามรู้ของนกั เรยี นนักศึกษาไดต้ ามสมรรถนะรายวชิ าต่อไป คณะผูจ้ ัดทำ

หลกั สูตรรายวชิ า 30204-2003 การวเิ คราะหแ์ ละออกแบบระบบเชงิ วตั ถุ (Object Oriented Analysis and Design) จุดประสงค์รายวชิ า เพ่ือให้ 1. เขา้ ใจหลักการวิเคราะห์และออกแบบเชงิ วัตถหุ ลกั การของ UML Modeling องคป์ ระกอบของ UML 2. มที ักษะในการวเิ คราะหแ์ ละออกแบบเชิงวตั ถุ ออกแบบโปรแกรมทางธรุ กจิ 3. มีเจตคตแิ ละกจิ นสิ ัยทดี่ ีในการปฏิบตั ิงานด้วยความรบั ผดิ ชอบ ชื่อสัตย์ ละเอียดรอบคอบ สมรรถนะรายวิชา 1. แสดงความเก่ียวกบั หลักการวเิ คราะหแ์ ละออกแบบเชิงวัตถุ 2. วเิ คราะหแ์ ละออกแบบเชงิ วัตถุตามหลกั การ 3. ออกแบบโปรแกรมทางธุรกิจโดยใช้หลักการของ UML คำอธิบายรายวชิ า ศึกษาและปบัติเกี่ยวกับขั้นตอนการพัฒนาระบบสารสนเทศ หลกั การพน้ื ฐานและแนวคดิ เชิงวตั ถ เคราะห์และออกแบบเชิงวตั ถุ โมเดลที่ใช้ออกแบบเชิงวัตถุ หลกั การของ UML Modeling องค์ประกอบของ UML และการวเิ คราะหแ์ ละออกแบบโปรแกรมทางธุรกจิ

.1 สารบัญ หน่วยที่ 1 ระบบสารสนเทศ............................................................................................................................1 ระบบ.................................................................................................................................................................2 องค์ประกอบของระบบ.....................................................................................................................................2 ประเภทของระบบ.............................................................................................................................................2 ปจั จัยทสี่ ่งผลต่อการเปลี่ยนแปลงระบบ...........................................................................................................4 รปู แสดงลักษณะของระบบ...............................................................................................................................4 ปัจจยั ท่สี ่งผลต่อการเปลีย่ นแปลงระบบ...........................................................................................................4 ระบบสารสนเทศ (Information System : IS) .............................................................................................5 ระบบเทคโนโลยสี ารสนเทศ..............................................................................................................................8 หนว่ ยที่ 2 ข้ันตอนการพฒั นาระบบสารสนเทศ...............................................................................................9 ขนั้ ตอนการพัฒนาระบบสารสนเทศ.............................................................................................................. 10 สาเหตทุ ี่ต้องพัฒนาระบบสารสนเทศ............................................................................................................. 10 ปจั จยั ทต่ี ้องพัฒนาระบบสารสนเทศ.............................................................................................................. 11 ข้ันตอนการพัฒนาระบบสารสนเทศ.............................................................................................................. 11 วงจรการพัฒนาระบบ (System Development Life Cycle : SDLC).................................................... 12 ผลทไี่ ด้จากการวิเคราะหแ์ ละออกแบบระบบ ................................................................................................ 17 นกั วเิ คราะหร์ ะบบ (System Analyst : SA) ............................................................................................... 18 ปจั จยั ท่ีมีผลต่อการพฒั นาระบบสารสนเทศ.................................................................................................. 21 แนวทางการพฒั นาระบบสารสนเทศ ............................................................................................................ 22 หนว่ ยที่ 3 หลักการพื้นฐานและแนวคิดเชิงวัตถุ............................................................................................23 หลักการพนื้ ฐานการพัฒนาระบบเชงิ วัตถุ ..................................................................................................... 24 ตารางแสดงแนวคดิ และแนวคดิ เชิงวัตถุเชงิ วตั ถุ .......................................................................................... 25

ฏ2 วธิ ีการพัฒนาระบบเชิงวัตถุ........................................................................................................................... 25 หลกั การเชิงวตั ถุ ............................................................................................................................................ 26 แนวคิดการเขยี นโปรแกรมเชิงกระบวนการกบั การ และแนวคดิ เชิงวัตถุเขียนโปรแกรมเชงิ วตั ถุ ................ 27 พนื้ ฐานความรู้ในการเขียนโปรแกรมเชิงวัตถุ................................................................................................ 29 ประโยชน์ของการเขียนโปรแกรมเชงิ วตั ถุ..................................................................................................... 30 หนว่ ยที่ 4 กระบวนการวิเคราะหแ์ ละออกแบบเชิงวัตถุ.................................................................................32 การวิเคราะหแ์ ละออกแบบระบบ................................................................................................................... 33 การออกแบบระบบ ........................................................................................................................................ 33 การวเิ คราะห์และออกแบบระบบ................................................................................................................... 34 กระบวนการวเิ คราะห์และออกแบบระบบเชิงวัตถุ........................................................................................ 35 ลักษณะสำคัญของกระบวนการวิเคราะห์และออกแบบระบบเชิงวตั ถุ.......................................................... 35 การวางแผน(Planning) ............................................................................................................................... 36 การควบคุม .................................................................................................................................................... 36 ประโยชนท์ ี่ได้รับจากการบริหารโครงการ ..................................................................................................... 37 ความสำเร็จของโครงการ............................................................................................................................... 37 กระบวนการบรหิ ารโครงการ......................................................................................................................... 38 การบริหารโครงการ (Project Manager).................................................................................................... 38 การวิเคราะห์ระบบ (System Analysis) ..................................................................................................... 39 เคสทลู ส์ (CASE Tools) ............................................................................................................................... 40 ขอบข่ายของเคร่ืองมือสนบั สนนุ การพฒั นาระบบ......................................................................................... 42 ประเภทของ CASE Tools............................................................................................................................ 43 สรปุ เคร่ืองมือเคสทูลส์ที่ใช้ในการวิเคราะหแ์ ละออกแบบระบบดังน้ี............................................................ 50 การออกแบบระบบ(System Design) ......................................................................................................... 51

•3 การออกแบบเชิงกายภาพ(Physical Design) ............................................................................................. 52 การติดตัง้ ระบบ.............................................................................................................................................. 53 การบำรุงรักษาระบบ(System Implemetation) ...................................................................................... 55 หนว่ ยที่ 5 โมเดลทีใ่ ช้ออกแบบเชิงวตั ถุ “ UML ”.......................................................................................56 โมเดล (Model) ............................................................................................................................................ 57 ความสำคัญของแบบจำลองระบบงาน.......................................................................................................... 57 ประเภทของโมเดล (Model Type) ............................................................................................................. 58 โมเดลออกแบบเชิงวัตถุ (Object Model) .................................................................................................. 61 หน่วยท่ี 6 หลกั การของ UML ......................................................................................................................69 หลกั การของ UML Modeling ..................................................................................................................... 70 โมเดลมาตรฐานของ MLU ............................................................................................................................ 70 ประโยชนข์ อง UML Advantage................................................................................................................. 71 องคป์ ระกอบ UML ........................................................................................................................................ 72 องคป์ ระกอบ UML แบบ Class Diagram................................................................................................... 72 ส่วนประกอบของแอตทรบิ ิวต์ ....................................................................................................................... 74 ประโยชน์ของ Use Case Diagram............................................................................................................. 75 หน่วยท่ี 7 การวเิ คราะห์และการออกแบบโปรแกรมทางธุรกจิ .......................................................................78 การวเิ คราะหแ์ ละออกแบบโปรแกรมทางธรุ กจิ ............................................................................................. 79 การวเิ คราะห์และออกแบบโปรแกรมดว้ ย Class Diagram ......................................................................... 80 การวิเคราะหแ์ ละออกแบบโปรแกรมทางธุรกจิ ............................................................................................. 81 จํานวนสมาชกิ ที่มอี ยใู่ นความสัมพันธ(์ Multiplicity)................................................................................... 82 การวิเคราะห์และออกแบบโปรแกรมด้วย Use Case Diagram.................................................................. 85 การเขยี นคําอธบิ าย Use Case..................................................................................................................... 86

&4 การบริหารโครงการ....................................................................................................................................... 86 สาเหตกุ ารบรหิ ารโครงการล้มเหลว............................................................................................................... 87 เทคนคิ การบริหารโครงการ............................................................................................................................ 87 หนว่ ยที่ 8 แผนภาพกระแสข้อมลู (DFD) .....................................................................................................90 แผนภาพกระแสขอ้ มูล................................................................................................................................... 91 ประโยชน์ของแผนภาพกระแสขอ้ มูล ............................................................................................................ 91 สญั ลกั ษณ์ทใี่ ช้ออกแบบแพนภาพกระแสข้อมูล............................................................................................ 92 การเขยี นแผนภาพกระแสขอ้ มลู ที่ไม่ถูกตอ้ ง.................................................................................................. 95 ระดบั ชนั้ ของแผนภาพกระแสขอ้ มลู .............................................................................................................. 96 แผนภาพบริบท.............................................................................................................................................. 96 แผนภาพกระแสขอ้ มลู ระดับ 0.................................................................................................................... 100 แผนภาพกระแสขอ้ มูลระดับล่าง ................................................................................................................. 102 หนว่ ยที่ 9 หลักการออกแบบฐานขอ้ มูล ..................................................................................................... 104 ขัน้ ตอนการพฒั นาระบบฐานขอ้ มูล............................................................................................................. 105 แผนภาพออี าร์ไดอะแกรม (Entity Relation Diagram : ERD)............................................................... 107 แอตทริบิวต์.................................................................................................................................................. 109 ความสมั พนั ธร์ ะหว่างเอนตติ ี้....................................................................................................................... 112 ระดับของรเี ลชันชิพ..................................................................................................................................... 114 การออกแบบฐานข้อมลู ด้วย E-R Diagram (ERD).................................................................................... 114 การตรวจสอบความสมดุลระหวา่ งแพนภาพกระแสข้อมลู กบั แบบจำลองความสัมพันธ์ของข้อมลู ........... 116

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

2 ระบบ ระบบ (System) องคป์ ระกอบการทำงานทม่ี ีจุดประสงค์ หรือมคี วามสัมพันธรุ์ ่วมกนั มาอย่ารวมกัน เพอ่ื ใหง้ านนั้นๆ มี มปี ระสิทธิภาพและเพ่ิมประสทิ ธผิ ลให้กับงานท่ตี ้องการ องคป์ ระกอบของระบบ องค์ประกอบของระบบ คือ ระบบย่อย ๆ (Subsystem) ทช่ี ว่ ยประสานการทำงานของระบบให้สามารถ เช่อื มโยงกนั ได้มีการโอนถา่ ยข้อมลู ระหว่างกนั ทำให้ระบบมีประสทิ ธภิ าพในการ ทำงาน ประเภทของระบบ ประเภทของระบบ แบ่งออกเปน็ 2 ประเภท 1. ระบบปิด (Open System) ระบบปิด หมายถึง ระบบท่ไี ม่มกี ารเชอื่ มโยงหรือปฏสิ มั พนั ธ์กับแวดลอ้ มภายนอก ลกั ษณะของระบบรปู แบบน้ี จะปิดกันอปุ กรณ์หรือโปรแกรมอ่นื ๆ 2. ระบบเปิด (Open System) โปรแกรม Visual Basic หรอื โปรแกรม Visual C# ได้ หรอื โปรแกรมท่ี พฒั นาดว้ ยภาษา HTML หรอื PHP กส็ ามารถนํามาพฒั นาปรับปรงุ ใน อนาคตได้ เปน็ ต้น

3 แบ่งตามเปา้ หมาย สามารถแบ่งได้ 2 ประเภท 1. ระบบธุรกิจ(Business System) ภาคธรุ กจิ หมายถึง ระบบที่มีเปา้ หมาย (Objective) เพอื่ มุ่งหวังผลตอบแทนจากการลงทุน และกาํ ไร ท่เี กิดขึ้นจากการบริหารกิจการองค์ประกอบของระบบสว่ นประกอบดว้ ย ระบบการจดั การทรัพยากรบุคคล ระบบการบัญชรี ะบบการตลาด ระบบคลังสินค้าระบบการผลติ ระบบการขายเป็นตน้ 2. ระบบภาครฐั (Public System) ระบบภาครฐั หมายถึง ระบบท่มี ีเป้าหมาย (Objective) เพ่ือมุ่งหวังดา้ นการบริการท่ดี ี การใหบ้ ริการ ระบบสารสนเทศ องคป์ ระกอบสว่ นใหญ่ของระบบกป็ ระกอบไปด้วย - ระบบประกนั สุขภาพภาครัฐ - ระบบชำระภาษีออนไลน์ - ระบบจดั ทำบัตรประจาํ ตัวประชาชน - ระบบการจดั ซ้ือจดั จา้ งภาครฐั เป็นต้น

4 ปัจจัยทสี่ ่งผลตอ่ การเปล่ยี นแปลงระบบ - ระบบเดิม (Old System) - ระบบปจั จุบัน (Current System) - ระบบใหม่ (New System) รูปแสดงลกั ษณะของระบบ การเปลยี่ นแปลงระบบถงึ แมจ้ ะมคี วามเส่ียงดงั ที่กลา่ วมาขา้ งตน้ แต่เม่ือมองอีกดา้ นหน่งึ ก็ถือเปน็ ประโยชน์ ในการพฒั นาอยา่ งต่อเน่ืองเพราปญั หาต่างๆท่ี เกดิ ขึ้นจากระบบเดมิ หรือระบบ ปจั จัยท่ีส่งผลตอ่ การเปลย่ี นแปลงระบบ - ปัจจัยภายในท่ีส่งผลตอ่ การเปลี่ยนแปลง (Internal Factors) - ปัจจยั ภายนอกท่ีสง่ ผลต่อการเปล่ยี นแปลง (External Factors)

5 ระบบสารสนเทศ (Information System : IS) ข้อมลู (Data) หมายถึง ขอ้ เท็จจรงิ ทเ่ี กดิ ขึน้ ในงานตา่ ง ๆไม่วา่ จะเป็นตวั เลข ตวั อกั ษร ข้อความ เสยี ง ภาพ หรือสญั ลักษณพ์ เิ ศษตา่ ง ๆ ซึ่งยังไม่สามารถนำมาใช้ประโยชน์ในการตดั สนิ ใจหรือสรุปข้อมลู ได้ บางคร้งั เรยี กข้อมลู เหล่านว้ี ่าข้อมูลดิบ (RawData) จาํ แนกได้ตามแหลง่ ทมี่ าเป็น 2 ประเภท คอื 1. ข้อมลู ปฐมภูมิ(Primary Data) หมายถึง ข้อมูลที่เก็บรวบรวมมาจากแหลง่ ข้อมูลข้นั ต้น หรือเก็บข้อมูลมา โดยตรง เช่นข้อมูลลกู ค่า ไดจ้ ากการสัมภาษณ์ การตอบแบบสอบถาม การสงั เกต เป็นต้น ซงึ่ เป็นขอ้ มลู ท่ี ทนั สมัยและตรงกบั ข้อเทจ็ จริง 2. ข้อมูลทุตยิ ภมู ิ (Secondary Data) หมายถงึ ข้อมูลที่ได้จากแหลง่ ข้อมูลอน่ื ซ่ึงมีการเก็บรวบรวมขอมูลไวย้ ู่ แล้ว เชน่ ผสู้ ำเรจ็ การศึกษา จากสำนักงานคณะกรรมการการอาชีวศกึ ษา หรอื ข้อมลู การติดเช้อื ไวรัสโค วดิ -19 จากกระทรวงสาธารณสขุ เป็นตน้ สารสนเทศ (Information) หมายถงึ ข้อมลู ทผ่ี า่ นการประมวลผลแล้ว สามารถนาํ ไปใช่ประโยชน์ในการ ตัดสนิ ใจหรอื งานตา่ ง ๆ ได้ เช่น ขอ้ มลู การใชอ้ นิ เทอร์เนต็ ของประชากรในประเทศไทย สามารถนํามาสรุปเป็น สารสนเทศ เช่น สรปุ สถิติการใช้อินเทอรเ์ น็ตในชวี ติ ประจำวัน ซึ่งจะทำใหท้ ราบพฤตกิ รรมการใช้อินเทอรเ์ น็ต ทำ ให้สามารถตัดสินใจวางแผนการให้บรกิ ารกับลูกค้าหรือกำหนดกลยทุ ธ์ทางการตลาดในการแข่งขนั ทางธุรกจิ ได้ ระบบสารสนเทศ หมายถงึ กลุ่มของขอ้ มูลและสารสนเทศที่มีความสัมพนั ธ์กนั ตามที่ระบบน้นั ๆ ตอ้ งการ ซึ่งประกอบไปด้วยข้อมูลของแตล่ ะสว่ นมาเช่ือมโยงกนั มีการส่งตอ้ ข้อมูลทีเ่ ป็นประโยชน์ระหวา่ งกันภายในระบบ อย่างมีข้ันตอนและมีรูปแบบทีแ่ นน่ อน ทำใหล้ ดความซ้ำซ้อนของข้อมูล ข้อมูลมีความถูกตอ้ งแมน่ ยําและนาํ ไปใช้ เปน็ สารสนเทศเพื่อการบรหิ ารจดั การงานของระบบนน้ั ๆ ได้อยา่ งมปี ระสทิ ธผิ ล ทำให้เกิดประโยชน์ในหลาย ๆ ดา้ น ระบบสารสนเทศ(IS) ทำใหเ้ กิดประโยชนใ์ นหลาย ๆ ดา้ น ไดแ้ ก่ 1. ช่วยเพม่ิ ประสิทธิภาพในการทำงาน 2. ชว่ ยเพม่ิ ผลผลิต 3. ชว่ ยเพ่ิมคุณภาพในการบริการลูกคา้ 4. ช่วยผลิตสนิ คา่ ใหมแ่ ละขยายผลติ ภัณฑ์ 5. ช่วยสร้างทางเลือกในการแข่งขนั 6. ชว่ ยดึงดูดลูกคา้ และป้องกนั คู่แข่ง

6 ระบบสารสนเทศ (IS) แบ่งออกเป็น ตามผู้ใช้ 7 ชนิด 1.ระบบประมวลผลรายการปัจจบุ ัน : TPS ทำหน้าท่เี ก็บรายการธรุ กรรมทเี่ กดิ ขนึ้ จากการดำเนนิ งาน เชน่ ส่งั ซ้ือของของลูกค้า และบันทกึ ข้อมูล เหล่านี้ลงในฐานขอ้ มูลบางคร้ังจึงเรียกระบบนว้ี ่า ระบบประมวลผลข้อมูล (Data Processing System : DPS) ซงึ นอกจากจะช่วยองค์กร ในการตดิ ตามงานประจำแล้ว ข้อมูลในฐานขอ้ มลู ยังถกู นำไปใช้ในระบบสารสนเทศเพือ่ การ จดั การ สนับสนุนการตดั สนิ ใจ และระบบสนบั สนุนผ้บู ริหารตอ่ ไป 2.ระบบสารสนเทศเพอ่ื การจดั การ : MIS คือระบบท่ใี หส้ ารสนเทศท่ีผูบ้ รหิ ารต้องการเพื่อให้สามารถทำงานได้อยา่ งมีประสิทธิภาพ โดยจะรวมทั้ง สารสนเทศภายในและภายนอก 3.ระบบสำนักงานอัตโนมตั ิ : OAS คือ ระบบสารสนเทศที่ใช้บคุ ลากรนอ้ ยท่สี ด โดยอาศัยเคร่ืองมือแบบอตั โนมตั ิและระบบข่าวสารเชื่อมโยม ขา่ วสารระหว่างเครื่องมือเหล่าน้นั เขา้ ดว้ ยกนั OAS มีจดุ มุ่งหมายให้เปน็ ระบบท่ไี มใ่ ชก้ ระดาษขา่ วสารถงึ กนั ดว้ ย ข้อมูลทางอิเล็กทรอนกิ ส์ (Electronic DataInterchange) แทน

7 4.ระบบสนบั สนุนการตัดสินใจ : DSS คอื เป็นระบบยอ่ ยหนงึ่ ในระบบ สารสนเทศเพื่อการจดั การ โดยทรี่ ะบบสนับสนนุ การตดั สินใจจะชว่ ย ผู้บริหาร ในเรือ่ งการตัดสินใจในเหตุหารณห์ รอื กจิ กรรมทางธุรกจิ ทไ่ี ม่มโี ครงสรา้ งแน่นอนหรอื กึง่ โครงสร้าง ระบบ สนับสนุนการตัดสนิ ใจอาจจะใชก้ ับบุคคลเดียวหรือช่วยสนับสนุนการตดั สนิ ใจเป็นกลมุ่ 5.ระบบสนบั สนุนผ้บู รหิ ารระดับสูง : ESS คอื ระบบสนับสนนุ ผ้บู ริหารระดบั สูงถูกออกแบบมาชว่ ยในกรตัดสนิ ใจของผบู้ รหิ ารระดับสูง ซึง่ ใช้ในการ วางแผนกลยทุ ธหรือแผนการดำเนนิ การางแผนระยะยาวขององค์กร 6.ระบบผเู้ ชย่ี วชาญ : ES คอื การพัฒนาใหร้ ะบบคอมพิวเตอร์มีความรู้ รูจ้ ักใชเ้ หตุผลในการ วเิ คราะห์ปัญหา โดยใช้ความรูท้ ่ีมี หรือ จากประสบการณ์ในการแกป้ ัญหาหน่ึง ไปแก้ไขปัญหาอน่ื อยา่ งมเี หตุผล ระบบนีจ้ ำเปน็ ต้องอาศยั ฐานข้อมูล 7.ระบบปญั ญาประดิษฐ์ : AIS ปัญญาประดิษฐ์เป็นศาสตร์แขนงหนึ่งของวทิ ยาศาสตร์ คอมพิวเตอร์ ทเี่ ก่ยี วข้องกบั วิธกี ารทำใหม้ ี ความสามารถคล้ายมนุษย์หรือเรียนแบบพฤติกรรมมนุษย์ โดยเฉพาะความสามารถในการคิดได้เองหรือมปี ัญญา น้นั เอง ปญั ญานี้มนษุ ยเ์ ป็นผู้สร้างให้คอมพวิ เตอร์ จงึ เรยี กว่าปญั ญาประดิษฐ์ มมุ มองต่อ AI

8 ระบบเทคโนโลยีสารสนเทศ ระบบเทคโนโลยสี ารสนเทศ (Information Technology System) หมายถึง ระบบสารสนเทศทีน่ าํ เทคโนโลยเี ขา้ มาชว่ ยในการบริหารจัดการสารสนเทศภายในระบบใหม้ ปี ระสิทธภิ าพ มีความรวดเรว็ ถกู ต้อง สามารถเชอ่ื มโยงกับระบบอืน่ ๆ หรอื นาํ ไปใช้ในการทำงานไดต้ รงตามความต้องการของผูใ้ ช้ให้ได้มากท่ีสดุ ซึ่ง อาจจะเปน็ ฮาร์ดแวรห์ รือซอฟตแ์ วรก์ ไ็ ด้

9 หนว่ ยที่ 2 ข้ันตอนการพฒั นาระบบสารสนเทศ สาระการเรยี นรู้ 1. ขนั้ ตอนการพฒั นาระบบสารสนเทศ 2. วงจรการพัฒนาระบบ 3. ผลที่ไดจ้ ากการวิเคราะห์ระบบ 4. นกั วิเคราะหร์ ะบบ(System Analyst 5. ปจั จยั ที่มีผลต่อการพัฒนาระบบสารสนเทศ 6. แนวทางการพฒั นาระบบสารสนเทศ จดุ ประสงค์การเรียนรู้ 1. เพอ่ื ให้ร้ขู ั้นตอนการพฒั นาระบบสารสนเทศ 2. เพ่ือใหม้ กี ิจนสิ ยั และทศั นคตทิ ่ีดใี นวิชาชพี คอมพวิ เตอร์ สมรรถนะประจำหน่วย 1. แสดงความรู้เกย่ี วกับขน้ั ตอนการพัฒนาระบบสารสนเทศ 2. บอกขน้ั ตอนการพัฒนาระบบสารสนเทศแบบ SDLC 3. เปรยี บเทยี บข้อแตกตา่ งและหนา้ ทหี่ ลกั ของข้ันตอนการพัฒนาระบบสารสนเทศแบบ SDLC

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

11 ปัจจยั ท่ีต้องพัฒนาระบบสารสนเทศ สำหรบั ปจั จัยสำคญั ท่ีเป็นโอกาสใหจ้ ำเปน็ ตอ้ งเร่งปรับปรุงหรอื พัฒนาระบบสารสนเทศ ได้แก่ 1. •ปรบั ปรุงการบริการให้แก่ลกู คา้ 2. เพมิ่ ประสทิ ธิภาพในการทำงาน 3. เพ่ิมกระบวนการควบคุม การทำงาน 4. ลดตน้ ทนุ การดำเนินการ 5. ตอ้ งการสารสนเทศมากข้นึ 6. ปรบั ปรงุ การเชอื่ มโยงกนั ของระบบ และระบบยอ่ ย ขั้นตอนการพฒั นาระบบสารสนเทศ การพัฒนาระบบสารสนเทศมีจุดมุ่งหมายเพื่อพัฒนาหรือปรับปรุงระบบเดิมให้มีประสิทธิภาพในการ ทำงาน สามารถแข่งขันในเชิงธุรกิจและตอบสนองความต้องการของผู้ใช้งานได้ ในทางปฏิบัติมีแนวคิดในการ พัฒนาอยู่หลายรูปแบบ ได้แก่ วงจรการพัฒนาระบบ โมเดลน้ำตกเป็นต้น สำหรับในบทเรียนนี้จะยกตัวอย่าง ขั้นตอนการพัฒนาระบบสารสนเทศในรปู แบบวงจรการพฒั นาระบบ

12 วงจรการพฒั นาระบบ (System Development Life Cycle : SDLC) วงจรการพัฒนาระบบ หรือ วัฎจักรการพัฒนาระบบ แบบ SDLC เป็นทฤษฎีที่เก่าแก่และนิยมนำมาใช้ใน การพัฒนาระบบเนื่องจากมีกระบวนการพัฒนาที่ชัดเจนอย่างเป็นขั้นตอน มีการกำหนดขอบเขตและเป้าหมายใน การทำงานของแตล่ ะขน้ั ตอนอย่างชัดเจนแบ่งออกเปน็ 5ข้ันตอน ประกอบดว้ ย ข้นั ตอนที่ 1 : การวางแผนโครงการ (Project Planning) ขนั้ ตอนที่ 2 : การวเิ คราะหร์ ะบบ (System Analysis) ขั้นตอนท่ี 3 : การออกแบบระบบ (System Design) ขั้นตอนท่ี 4 : การนำไปใช้ (Implementation) ขน้ั ตอนที่ 5 : การบำรงุ รกั ษาระบบ (System Maintenance) ขั้นตอนที่ 1 การวางแผนโครงการ (Project Planning) คือ การศึกษาขอบเขตของปัญหาและแนวทางการพัฒนา เพื่อแก้ไขปัญหาเหลา่ นั้นท่ีชัดเจน มีการวางแผนระยะเวลาในการดำเนินการ กำหนดกรอบงบประมาณดำเนินการ และศึกษาความเปน็ ไปได้ในการพัฒนาระบบใหม่ขนึ้ มาทดแทนหรอื ปรับปรุงระบบเดมิ ให้มปี ระสทิ ธิภาพมากย่ิงขึ้น ซึ่งการศึกษาความเป็นไปได้เหล่านี้ ต้องพิจารณาความเป็นไปได้ทั้งด้านเทคนิค ด้านเศรษฐศาสตร์ และด้านการ ปฏิบัติงานว่าสามารถนำมาใช้ประโยชน์ในการทำงานนั้น ๆ ได้จริงและเป็นที่ยอมรับของผู้ใช้งานได้หรือไม่ นอกจากนี้ยังต้องพิจารณาถึงทมี งานที่จะมาร่วมพัฒนาโปรแกรมว่าควรมีคุณสมบัติอย่างไรหลังจากนั้นจึงเขียน โครงการและนำเสนอโครงการเพ่ือขออนุมัตจิ ากผู้บงั คับบญั ชาหรือลูกค้าตามลำดบั ต่อไป รปู ที่ 2.4 แนวทางการวางแผนโครงการ

13 สรุปงานที่ตอ้ งดำเนนิ การในขนั้ ตอน “การวางแผนโครงการ” 1. ศกึ ษาปัญหา โอกาสและเปา้ หมาย 2. ศึกษาความเปน็ ไปได้ของโครงการ 3. จัดตง้ั ทีมงาน และกำหนดระยะเวลาดำเนินการ 4. จัดทำแบบเสนอโครงการเพ่อื ขออนมุ ตั ิ ตัวอยา่ ง การปัญหาทีน่ ักศึกษาสนใจ และอยากจะนำเทคโนโลยมี าชว่ ยแกไ้ ขปัญหาน้ัน ขน้ั ตอนท่ี 2 การิเคราะห์ระบบ คือ ขั้นตอนการศึกษาแนวทางการพัฒนาระบบให้ตรงกับความต้องการของผู้ใช้งาน และเป็นไปตามขอบเขตที่กำหนด ซึ่งการวิเคราะห์จะต้องรวบรวมข้อมูลที่เกี่ยวข้องจากระบบนั้น ๆ มาศึกษา โดย ข้อมูลที่จะรวบรวมอาจจะไดม้ าจากการสัมภาษณ์ (Interview) การสงั เกต(Observation) การแจกแบบสอบถาม (Questionnaire) หรือ เอกสาร(Documents) เช่น การออกแบบแผนภาพกระแสข้อมูล (Data Flow Diagram : DFDs) หรอื การสร้างแบบจำลองความสมั พันธ์ของข้อมลู (Entity Relationship Diagram : ERD) เปน็ ต้น

14 Context Diagram ของระบบเข้าพักรีสอร์ท การวิเคราะห์ระบบจะชว่ ยใหก้ ารพฒั นาระบบใหมข่ ึ้นมาตรงกบั ความต้องการของผใู้ ช้งานได้มากทส่ี ดุ หาก ไม่มีขั้นตอนนี้การพัฒนาระบบก็จะเป็นไปตามความรู้สึกหรือพัฒนาขึ้นตามความต้องการของนักพัฒนาระบบ เท่านั้นและในที่สุด หลังจากพัฒนาเสร็จสิ้นและนำไปใช้งานจริงก็ไมเ่ กิดประโยชน์ ไม่ตอบสนองความต้องการของ ผู้ใช้ทำให้เกดิ ความสูญเปล่าท้ังงบประมาณ เวลาและทรัพยากรทั้งหมดทีร่ ะดมมาเพื่อสร้างระบบนั้น ๆ ขึ้นมาใหม่ อย่างไรก็ดีการวิเคราะห์ระบบจะมีการออกแบบบางส่วนซึ่งเป็นภาพรวมของระบบในระดับหลักการเท่านั้นหรือท่ี เรียกว่าแบบจำลองทางลอจคิ ัล (Logical Model)

15 ข้ันตอนท่ี 3 การออกแบบระบบ คอื ขน้ั ตอนการตดั สินใจวา่ จะนำระบบใหม่มาแทนท่รี ะบบเดมิ ได้อย่างไร เชน่ การซื้อ โปรแกรมสำเร็จรูป การจ้างโปรแกรมเมอร์หรือบริษัทที่เชี่ยวชาญพัฒนาขึ้นมา หรือจัดตั้งทีมงานภายในเป็น ผูพ้ ฒั นาขึ้นมาเอง โดยในขนั้ ตอนน้ีจะนำผลทไ่ี ดจ้ ากการวเิ คราะห์มาออกแบบ โดยเน้นกิจกรรมทีเ่ ก่ยี วข้องกับระบบ ซอฟตแ์ วร์ และระบบเครือขา่ ย การออกแบบรายงาน (Report Design หรอื Output Design) ข้ันตอนที่ 4 การนำไปใช้ คือ ขั้นตอนการพัฒนาระบบ การทดสอบระบบ การแก้ไขปัญหาที่เกิดขึ้น การติดตั้งระบบ และจัดทำคู่มือการใช้ระบบ รวมทั้งการฝึกอบรมผู้ใช้ระบบให้สามารถทำงานกับระบบใหม่ที่พัฒนาขึ้นมาได้จริง โดยส่งิ ที่ตอ้ งคำนึงถงึ ในขั้นตอนนคี้ อื ความคาดหวงั ของผูใ้ ช้ระบบ และผลตอบแทนทอ่ี งคก์ รจะได้รับ รูปท่ี 2.5 แสดงการเปลย่ี นผา่ นจากระบบเกา่ ไประบบใหม่

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

17 ขน้ั ตอนที่1 - 4 ขั้นตอนท่ี 5 ผลทไ่ี ดจ้ ากการวิเคราะห์และออกแบบระบบ ผลทไี ดจ้ ากการวิเคราะหร์ ะบบ อาจจะกำหนดได้เป็น 3 แนวทาง 1. ไมม่ ีการเปลยี่ นแปลงระบบใด ๆ เลย ภายหลงั จากการวิเคราะห์ระบบแล้วพบว่า ยังไม่มีความจำเป็นเร่งด่วนในการเปลี่ยนแปลง หรือเกิด เหตุการณ์ที่ไม่สามารถเปลี่ยนแปลงระบบได้ตามที่ต้องการ ซึ่งอาจเกิดขึ้นจากภาวะเศรษฐกิจขององค์กรนโยบาย ของภาครัฐ การเปลี่ยนแปลงรูปแบบธุรกจิ การเปลี่ยนแปลงคณะผู้บริหารหรือนโยบายของผูบ้ รหิ าร ก็จะส่งผลให้ ไม่มีการเปลย่ี นแปลงระบบตามทน่ี ักศกึ ษาวิเคราะห์ได้ดำเนนิ การไวไ้ ด้ 2. ปรับปรุงระบบเดมิ ให้ดขี ้ึน เมอ่ื พจิ ารณาผลจากการวิเคราะหร์ ะบบแล้ว พบวา่ ปัญหาเหล่านน้ั สามารถแก้ไขและพัฒนาให้ดีขนึ้ ได้ โดย ยังไม่จำเป็นตอ้ งพฒั นาระบบใหม่ข้นึ มาทดแทน หรืออาจจะมีการเปลยี่ นแปลงเปน็ เฉพาะบางส่วนเท่านนั้ ก็เปน็ ได้ 3. พัฒนาระบบใหมข่ นึ้ มาใชง้ าน เมื่อพิจารณาผลจากการวิเคราะห์ระบบแล้วพบว่า หากไม่มีการเปลี่ยนแปลงก็เกิดผลเสียร้ายแรงกับ องค์กร และมีผลกระทบในวงกว้าง ทำให้ธุรกิจไม่สามารถแข่งขันต่อไปได้ ในความจำเป็นเช่นนี้จำเป็นต้อง เปลี่ยนแปลงระบบใหม่ทั้งหมดหรือพัฒนาระบบใหม่ขึ้นมาทดแทน ถึงแม้ไม่มีงบลงทุนก็จำเป็นต้องแสวงหาความ ร่วมมือจากหน่วยงานอื่น ๆ ที่เกี่ยวข้อง เพราะการเปลี่ยนแปลงระบบถือเป็นการลงทุนทางธุรกิจ ผลตอบแทนท่ี ได้รับยอมประเมนิ คา่ ได้เม่ือเปรียบเทยี บกบั งบลงทนุ

18 นักวิเคราะหร์ ะบบ (System Analyst : SA) นักวิเคราะห์ระบบ หมายถึง บุคคลหรือกลุ่มยุคคลที่ทำหน้าทีในการวิเคราะห์และออกแบบ ซึ่งมีหน้าท่ี สำคญั ในการปรับปรุงและพฒั นาระบบเทคโนโลยีสารสนเทศให้มคี วามทนั สมัยสอดคล้องกับความต้องการของผู้ใช้ ปัจจุบันหน่วยหรือองค์กรขนาดใหญ่มักจะมีนักวิเคราะห์ระบบอยู่ในองค์กรนั้น ๆ ส่วนหน่วยงานหรือองค์กรที่มี ขนาดเล็กและขนาดกลางยังไม่นิยมท่ีจะมีนกวิเคราะห์ระบบในองค์กร เนื่องจากมีภาระค่าใชจ้ ่ายสูงดังนัน้ จงั นิยม จ้างบริษัทท่เี กย่ี วข้องกบั การพัฒนาระบบเทคโนโลยสี ารสนเทศโดยตรงมาวิเคราะห์และออกแบบระบบให้ คณุ สมบัติและทกั ษะนักวเิ คราะห์ระบบ ที่สำคัญ 4 ขอ 1. ทกั ษะและความรทู้ างเทคนิค (Technical Knowledge and Skills) 2. ทกั ษะและความร้ทู างธรุ กิจ(Business Knowledge and Skills) 3. ทกั ษะและความรูด้านคนและทมี งาน(People Knowledge and Skills) 4. ความซ่ือสตั ยล์ ะจรรยาบรรณในวชิ าชีพ(Personal Integrity and Ethisc) 1. ทกั ษะและความรู้ทางเทคนิค การเป็นนักวิเคราะห์ระบบจำเป็นต้องมีความรอบรู้และมีความเชี่ยวชาญทั้งทานด้านซอฟต์แวร์และ ฮารด์ แวร์ โดยเฉพาะควรมีความรู้ความสามารถทางด้านการเขยี นโปรแกรมดว้ ย เพราะหากนักวิเคราะห์ระบบไม่มี ประสบการณ์ทางการด้านการเขียนโปรแกรม ก็จะทำให้มีปัญหากับการสื่อสารให้โปรแกรมเมอร์เข้าใจในงานที่ นักวเิ คราะหร์ ะบบตอ้ งการไดด้ ังน้นั นกั วเิ คราะหร์ ะบบจึงควรมคี วามรู้พื้นฐานทางด้านเทคนิคตา่ ง ๆ ดงั น้ี • มคี วามรู้เกีย่ วกับเทคโนโลยที เ่ี ก่ยี วข้องกบั ระบบทง้ั อดตี ปัจจบุ นั และอนาคต

19 • มคี วามรเู้ กย่ี วกับอุปกรณต์ ่อพ่วงทเ่ี ก่ียวข้อง เขา้ ใน อปุ กรณ์นำเข้าข้อมลู อปุ กรณ์ การแสดงผล และสอื่ ทใ่ี ช้จัดเกบ็ ข้อมูลตา่ ง ๆ • มีความรเู้ ก่ยี วกับเทคโนโลยเี ครือข่ายคอมพวิ เตอร์ และการสอื่ สาร • มีความรู้เกยี่ วกับเทคโนโลยฐี านขอ้ มลู และเขา้ ใจระบบการจัดการฐานข้อมูล • มีความร้เู ก่ยี วกับภาษาคอมพิวเตอร์ทใ่ี ชส้ ำหรับการพฒั นาโปรแกรม • มคี วามรู้และเขา้ ใจเกี่ยวกบั ระบบปฏิบตั กิ าร และโปรแกรมอรรถประโยชนต์ า่ ง ๆ • มีความรูเ้ กี่ยวกับเครื่องมือที่ใช้ในการวเิ คราะห์และออกแบบระบบ รวมถึงเคสทูลส์ (CSE Tools) ตา่ ง ๆ เชน่ โปรแกรม Visible Analyst เป็นต้น 2. ทกั ษะและความรู้ทางธุรกจิ (Business Knowledge and Skills การที่นักวิเคราะห์ระบบจะวิเคราะห์และออกแบบระบบงานใด ๆ ก็ตาม จำเป็นต้องมีความรู้พื้นฐาน เกี่ยวกับงานธรุ กิจนั้น ๆ ดว้ ย เพราะจะชว่ ยทำใหน้ กั วเิ คราะห์ระบบเข้าใจอย่างถ่องแท้เกย่ี วกับระบบงานน้น ๆ เปน็ อย่างดีการวิเคราะห์และออกแบบระบบก็จะเป็นไปตามความต้องการของผู้ใช้งานตัวอย่างเช่น หากได้รับ มอบหมายให้วิเคราะห์และออกแบบระบบคลังสินค้า ถ้านักวิเคราะห์ระบบไม่เข้าใจรูปแบบวิธีการจดั การสินค้าคง คลังก็จะทำให้การวิเคราะห์และออกแบบระบบไม่มีความชัดเจนและขาดความน่าเชื่อถือได้ ดังนั้นนักวิเคราะห์ ระบบจึงจำเป็นต้องเข้าใจรูปแบบการทำงานของธุรกิจ เข้าใจวัฒนธรรมองค์กร และรูปแบบการจัดการในแต่ละ องคก์ ร ซึ่งมีรายละเอียดดงั น้ี • องค์กรมีหน่วยงานท่เี กยี่ วขอ้ งกหี่ นว่ ยงาน มีโครงสร้างองคก์ รเปน็ อยา่ งไร • รูปแบบการจดั การองค์กรเป็นอย่างไร • แต่ละหนว่ ยงานใครเปน็ ผบู้ ังคับบญั ชา และใครเป็นผู้มสี ว่ นเก่ยี วข้องกับระบบ • รูปแบบการบริหารงานภายในองค์กรเปน็ อยา่ งไร เชน่ ระบบบัญชีระบบการผลติ ระบบการตลาด ระบบคลงั สนิ ค้า เปน็ ต้น 3. ทักษะและความรู้ด้านคนและทมี งาน (People Knowledge and Skills) โดยทวั่ ไปการทำงานของนกั วิเคราะห์ระบบจะต้องเชื่อมโยงและสมั พันธ์กับหลายฝา่ ย ดงั น้ันนักวิเคราะห์ ระบบจึงจำเปน็ ต้องมีมนษุ ยส์ ัมพันธใ์ นการทำงานทด่ี ีรู้จักการบรหิ ารจดั การแบบทีมเวิรค์ ที่สำคัญต้องมภี าวะผนู้ ํา เพราะนักวิเคราะห์ระบบเปรียบเสมอื นตวั แทนของการเปลีย่ นแปลง จะตอ้ งสามารถส่ือสารใหบ้ คุ คลท่เี กี่ยวข้อง เข้าใจและสรา้ งทศั นคติท่ดี ีเก่ียวกับระบบใหม่ทีก่ ําลงั จะพฒั นาขนึ้ ให้กบั ผมู้ ีสว่ นรว่ มทุกคน นักวเิ คราะห์ระบบ จำเปน็ ต้องเรียนรลู้ กั ษณะนสิ ัยของคน เรียนรู้พฤติกรรมการโตต้ อบกับคอมพวิ เตอร์ของคนที่เก่ยี วข้อง สามารถ

20 คาดการณล์ ว่ งหน้าถึงปัญหาและวธิ ีการแก้ไขท่ีจะเกิดขน้ึ จากการใช้งานในระบบนนั้ ๆ และพงึ เขา้ ใจต้อผลกระทบที่ จะเกดิ ขน้ึ จากการเปลีย่ นแปลงหลงั จากที่ตดิ ตั้งระบบใหมแ่ ทนท่ีระบบเดมิ ไปเรียบร้อยแล้ว 4. ความซ่ือสตั ย์และจรรยาบรรณในวชิ าชีพ (Personal Integrity and Ethics) ความซื่อสัตย์ ตามพจนานุกรมฉบับราชบัณฑิตยสถาน หมายถึง ประพฤติตรงและจริงใจ มีคิดคดทรยศ ไมค่ ดโกง และไมห่ ลอกลวง จรรยาบรรณ ตามพจนานุกรมฉบับราชบัณฑิตยสถาน หมายถึง ประมวลความประพฤติที่ผู้ประกอบ อาชีพการงานแตล่ ะอยา่ งกำหนดข้ึน เพอ่ื รกั ษาและส่งเสริมเกียรติคณุ ชื่อเสยี งและฐานะของสมาชิก อาจเขียนเป็น ลายลักษณอ์ กั ษรหรอื ไม่กไ็ ด้ จากความหมายดังข้างต้น นักวิเคราะห์ระบบที่ดีจึง ต้องมีความซื่อสัตย์ และมีจรรยาบรรณในวิชาชีพ กล่าวคือ เมื่อนักวิเคราะห์ระบบได้รับมอบหมายให้วิเคราะห์และออกแบบระบบใด ๆ แล้วก็ตาม ข้อมูลต่าง ๆ ท่ี เกี่ยวข้องทั้งหมดก็จะต้องถูกรวบรวมมาใช้เพื่อการวเิ คราะห์ท้ังหมด ทั้งที่เป็นความลับและไม่เป็นความลับ รวมถึง รูปแบบของเอกสารท้ังหมดในองค์กรน้นั ๆ กจ็ ะถูกนำมาเป็นตน้ แบบและเป็นแนวความคดิ ในการพัฒนาระบบให้ สอดคล้องกับความต้องการ ซึ่งสิ่งเหล่านี้ล้วนเป็นนวัตกรรม เป็นภูมิปัญญาและเป็นแนวความคิดที่ได้รับการ ออกแบบเพ่อื การแข่งขันมาแลว้ เป็นอยา่ ง ประเภทของนกั วิเคราะหร์ ะบบ แบ่งออกเป็น 3 ประเภท 1. วิเคราะหร์ ะบบเท่านน้ั เรยี กตำแหน่งน้ี “Information Analysts” ลกั ษณะของนักวิเคราะห์ระบบประเภทน้ี จะทำหนา้ ท่วี ิเคราะห์ระบบเพยี งอย่างเดียวเทา่ น้ัน โดยจะศึกษา ปัญหาที่เกิดขึ้นจากระบบเก่าและวิเคราะห์แนวทางการพัฒนาระบบใหม่ขึ้นมาทดแทนหรือเปลี่ยนแปลงให้ระบบ การทำงานให้สามารถแก้ไขปัญหาที่เกิดขึ้นได้รวมทั้งจะเป็นผู้นำเสนอโครงการเพื่อการพัฒนาระบบใหม่ และ วเิ คราะหค์ วามเป็นไปไดใ้ นการพัฒนาระบบใหม่ขึ้น มาทดแทนด้วย 2. วเิ คราะห์และออกแบบระบบ เรียกตำแหนง่ งานนวี้ ่า “System Designers” หรอื “Applications Developers” ลักษณะของนักวิเคราะห์ระบบประเภทนี้ จะทำหน้าที่ทั้งวิเคราะห์ระบบและออกแบบระบบ ซึ่งมีหน้าที่ เหมือนกับประเภทที่หนึ่งเพียงแต่มีความสามารถในการออกแบบระบบโดยใช้เครื่องมืออื่น ๆที่เกี่ยวข้องในการ ออกแบบระบบได้ เช่น การสร้างแบบจำลองข้อมูล การสร้างแผนภาพกระแสข้อมูล การออกแบบส่วนแสดงผล และสว่ นนําเขา้ ขอ้ มลู เป็นตน้

21 3. วเิ คราะห์ระบบ ออกแบบระบบ และเขียนโปรแกรม เรยี กตำแหน่งงานนว้ี า่ “Programmer Analysts” ลักษณะของนักวิเคราะห์ระบบประเภทนี้นอกจากจะวิเคราะห์และออกแบบระบบแล้ว ยังสามารถพัฒนา โปรแกรมขึ้นมาได้ดว้ ยตนเองส่วนใหญม่ ักมีพื้นฐานมาจากการเปน็ โปรแกรมเมอร์ มีความรแู้ ละความเขา้ ใจในภาษา โปรแกรม และการเขียนโปรแกรมเป็นอย่างดี สามารถทดสอบและแก้ไขปัญหาที่เกดิ ขึ้นจากการพัฒนาโปรแกรม ข้ึนมาไดอ้ ยา่ งมปี ระสทิ ธิภาพ ปัจจัยที่มีผลต่อการพัฒนาระบบสารสนเทศ การพฒั นาระบบสารสนเทศให้ประสบผลสำเร็จตามวัตถุประสงค์ท่ีกำหนดไว้ ขน้ึ อยู่กบั ปัจจยั หลายดา้ น ไดแ้ ก่ • ได้รบั การสนับสนนุ จากผ้บู งั คับบญั ชาหรือฝ่ายบริหารในการดำเนินการ • กำหนดวตั ถุประสงค์และเป้าหมายชดั เจน ครอบคลุมปัญหาทีต่ อ้ งการแก้ไข • ทมี งานเป็นผ้มู ีประสบการณ์ มคี วามรู้ความสามารถและความเช่ยี วชาญมีทักษะในการวเิ คราะห์และ ออกแบบระบบที่ได้รับการยอมรับ และมีเทคนคิ การพฒั นาระบบ • เลือกใชเ้ ทคโนโลยีสารสนเทศและนวตั กรรมท่ีเหมาะสม และมวี ิสัยทศั น์เลง็ เหน็ ความเชอื่ มโยงของ เทคโนโลยีทั้งในปจั จบุ ันและอนาคต • การบรหิ ารโครงการเปน็ ไปอย่างมีประสิทธิภาพ เสรจ็ ทนั ตามระยะเวลาหรือเร็วกวา้ แผนงานทก่ี ำหนด เพราะระยะเวลาของโครงการจะส่งผลถงึ งบประมาณดว้ ยเชน่ กัน • การวางแผน การวิเคราะห์ การตดิ ตามผลงานดำเนนิ การ และการแก้ไขปัญหาเฉพาะเป็นไปอย่างมี ประสิทธภิ าพ

22 แนวทางการพัฒนาระบบสารสนเทศ การพฒั นาระบบสารสนเทศในองค์กร สามารถเลือกแนวทางในการพฒั นาได้หลายแนวทาง ได้แก่ 1. ว่าจ้างบริษัทที่มีประสบการณ์โดยตรงในการพัฒนาระบบสารสนเทศ วิธีนี้จะได้ระบบที่ตรงกับความ ตอ้ งการขององค์กร มคี วามน่าเชื่อถือเพราะพัฒนาโดยผู้มปี ระสบการณ์ตรง และควบคุมระยะเวลาได้ตาม แผนงาน แต่งบประมาณท่ีใชใ้ นการดำเนนิ การค่อนข้างสูง และเป็นการพึ่งพิงบริษัทนนั้ อยู่ตลอดเวลา การ เปลี่ยนแปลงหรือปรับปรุงแก้ไขจะต้องมีงบประมาณเพิ่มเติม รวมถึง การบำรุงรักษาอาจมีค่าใช้จ่ายที่ สูงขนึ้ 2. จัดซื้อโปรแกรมสำเร็จรูปมาใช้งาน วิธีนี้จะทำให้ได้โปรแกรมมาใช้ในองค์กรอย่างรวดเร็ว และเป็นที่ ยอมรับเพราะมีการใช้งานอย่างกวา้ งขวาง แต่โปรแกรมที่นำมาใชไ้ ม่สามารถดดั แปลงใหเ้ หมาะสมกับงาน ขององค์กรได้เป็นการเฉพาะ จะต้องใช้งานในรูปแบบมาตรฐานเหมือน ๆ กัน จึงไม่อาจตอบสนองความ ตอ้ งการพัฒนาระบบสารสนเทศขององค์กรได้ทกุ ๆ เรอ่ื งตามทต่ี ้องการ 3. ให้เจ้าหน้าที่คอมพิวเตอร์ขององค์กรจัดทำขึ้นเอง วิธีนี้เหมาะกับองค์ที่มีเจ้าหน้าที่ที่มีความรู้ ความสามารถ และมีความเชี่ยวชาญหรือมีประสบการณ์ในการพัฒนาระบบสารสนเทศ ซึ่งจัดตั้งอยู่ใน องค์กรอยู่แล้วส่วนใหญ่จะพบในองค์กรขนาดใหญ่ที่มีการพัฒนาระบบสารสนเทศอยู่อย่างต่อเนื่อง เช่น ธุรกิจธนาคาร ธุรกิจการค้าออนไลน์ เป็นต้น แต่ถ้าเจ้าหน้าที่ขาดความรู้ความสามารถนอกจากจะทำให้ ระบบสารสนเทศน้นั ไม่ตอบสนองวตั ถปุ ระสงค์ทีต่ ้องการแล้ว ระยะเวลาและงบประมาณในการดำเนินการ อาจจะสงู กวา่ การเลอื กอกี พัฒนาระบบสารสนเทศดว้ ยวธิ ีอนื่ ๆ 4. ผู้ใช้พัฒนาขึ้นมาใช้เอง สำหรับวิธีนี้เหมาะกับผู้ใช้ที่มีความรู้ความสามารถด้านเทคโนโลยีและ คอมพิวเตอร์ สามารถพัฒนาโปรแกรมขึ้นมาใช้งานได้ด้วยตนเอง โดยอาศัยโปรแกรมประยุกต์ต่าง ๆ มา ช่วย เช่น Microsoft Access, Visual Basic, Visual C# เป็นต้น แต่รูปแบบของโปรแกรมจะไม่มีขนาด ใหญม่ าก เหมาะกบั องค์กรหรอื ธรุ กจิ ขนาดเล็กเป็นต้น

23 หน่วยที่ 3 หลักการพืน้ ฐานและแนวคดิ เชงิ วตั ถุ สาระการเรยี นรู้ 1. หลักการพ้ืนฐานการพัฒนาระบบเชิงวัตถุ 2. แนวคดิ เชงิ วตั ถุ 3. วิธกี ารพฒั นาเชงิ วตั ถุ 4. หลักฐานเชงิ วตั ถุ 5. แนวคิดการเขียนโปรแกรมเชิงกระบวนการกับการเขยี นโปรแกรมเชิงวัตถุ 6. วตั ถุ (Object) 7. คลาส (Class) 8. พนื้ ฐานความรใู้ นการเขียนโปรแกรมเชงิ วัตถุ 9. ประโยชน์ของการเขียนโปรแกรมเชงิ วัตถุ จดุ ประสงคก์ ารเรียนรู้ 1. เพ่อื ให้ร้หู ลกั การพน้ื ฐานพืน้ และแนวคดิ เชิงวัตถุ 2. เพอื่ ใหเ้ ขา้ ใจแนวคิดการออกแบบออบเจ็กต์และคลาส 3. เพื่อให้มเี จตคติและกจิ นสิ ยั ที่ดใี นการปฏิบตั งิ านด้วยความรอบคอบ สมรรถนะประจำหนว่ ย 1. แสดงความรู้เกี่ยวกับหลกั การพื้นฐานและแนวคิดเชิงวัตถุ 2. บอกวธิ กี ารพัฒนาระบบสารสนเทศเชิงวตั ถุ 3. บอกความแตกตา่ งระหว่างออบเจ็กตแ์ ละคลาส 4. เปรยี บเทยี บแนวทางการเขยี นโปรแกรมเชงิ กระบวนการกับการเขียนโปรแกรมเชงิ วตั ถุ

24 หลกั การพน้ื ฐานการพัฒนาระบบเชงิ วตั ถุ เป็นที่ทราบดีว่าในอดีตการพัฒนาระบบมักเป็นรูปแบบเชิงโครงสร้าง และนิยมใช้แนวทางแบบวงจรการ พัฒนาระบบ (SDLC) หรือโมเดลน้ำตก (WaterfallModel) มาพัฒนาระบบสารสนเทศ ซึ่งก็พบว่าประสบ ความสำเร็จอยู่ได้สักระยะหนึ่ง ต่อมาเมื่อมีการปฏิวัติอุตสาหกรรมครั้งใหญ่ระบบสารสนเทศมีการพัฒนาอย่าง รวดเร็วและกว้างขวาง นักพัฒนาระบบต้องพยายามคิดค้นวิธีใหม่ ๆ เพื่อนำมาใช้แข่งขันในทางธุรกิจ ต้องอาศัย นวัตกรรมและเทคโนโลยีสมัยใหม่มาใช้ในการพัฒนาระบบให้มีประสิทธิภาพ และหนึ่งในแนวทางการพัฒนาที่ คดิ คน้ ไดก้ ็คอื การพฒั นาระบบเชิงวัตถุ หรือเรียกว่า “ Object-oriented System” แนวคิดเชงิ วัตถุ คอื การพิจารณาความเป็นจริงต่าง ๆ ท่ีเกดิ ข้นึ ให้อยู่ในรูปของวัตถุ ซ่ึงต่อไปนี้จะเรียกว่า “ออบเจ็กต์” (Object) แล้วกำหนดคุณลักษณะหรือพฤติกรรมของวัตถุชิ้นนั้น ๆ ทำให้วัตถุเหล่านั้นเกิดการจับ กลุ่มและนําไปสู้การพัฒนาโปรแกรมคอมพิวเตอร์โดยใช้รปู แบบภาษาเชิงวัตถุ (OOP) ทำให้โปรแกรมมีขนาดสน้ั สามารถนำมาใช้ใหม่ได้ ลดความซํ้าซ้อน และด้วยขนาดของคำสั่งที่สั้นทำให้การดูแลรักษาง่าย สามารถนําไปเพิ่ม ขยายระบบได้ดแี ละง่ายข้ึน

25 ตารางแสดงแนวคิดและแนวคดิ เชงิ วตั ถเุ ชงิ วัตถุ การพฒั นาความแนวคดิ เชิงวัตถุ การพฒั นาตามกระบวนการ เริ่มต้นดว้ ยการวิเคราะหเ์ อกสารผลลัพธ์ และการ เริม่ ต้นด้วยการวเิ คราะหจ์ ากวัตถุทส่ี ามารถเห็นได้ ทำงานของระบบเดมิ เพื่อศึกษปญั หาและ ชดั เจน แนวทางการพฒั นาระบบ แยกระบบงานออกเปน็ หน่วยย่อย ๆ แยกกลุ่มของวัตถตุ ามคณุ ลักษณะ แตล่ ะองคป์ ระกอบตา่ ง ๆ ของระบบต้องมี แตล่ ะวตั ถุมีความเป็นอิสระต่อกนั ความสมั พันธแ์ ละเช่อื มโยงกนั ทั้งในดา้ นการ การเปล่ียนแปลงจะไม่กระทบกัน ประมวลผล การจดั ทำรายงานการคาํ นวณ ดังนน้ั การ เปลยี่ นแปลงแตล่ ะสว่ นต้องกระทบซ่ึงกันและกัน การปรับเปลย่ี นระบบต้องดำเนนิ การแก้ไข Source การปรบั เปล่ียนระบบ ทำได้โดการเปลี่ยน Code Attributes, Function, ของ Object เครอ่ื งมอื ที่สนับสนนุ การพัฒนาระบบแบบ เคร่อื งมอื ท่ีสนับสนนุ การพฒั นาระบบตามแนวทางเชงิ กระบวนการเริ่มมีน้อยลง วัตถุมมี ากข้ึน วธิ ีการพัฒนาระบบเชงิ วตั ถุ การเปลย่ี นแปลงมาใช้แนวคิดเชงิ วัตถุมาพฒั นาระบบจะตอ้ งพจิ ารณาจากองค์ประกอบสำคญั 4 สว่ น ได้แก่ 1. เครื่องมือที่ใช้ (Tool) คือ ซอฟต์แวร์ที่นำมาใช้ในการพัฒนาระบบ ซึ่งต้องมีลักษณะการทำงานแบบเชิง วัตถุ (Object-oriented programming: OOP) โดยทวั่ ไปจะเรียกซอฟตแ์ วร์ทน่ี าํ มาใช้ระบบน้วี ่า “CASE Tools”ได้แก่ Visual Basic, Visual Studio, Visual FoxPro, Visual C#.Net, Visual.Net เป็นต้นส่วน ภาษาที่สนับสนุนการเขียนโปรแกรมเชิงวัตถุ ได้แก่ PHP, Python, Java, C#, C++, Java Script, Perl เป็นตน้

26 2. เทคนิค (Techniques) คือ วิธีการที่ช่วยให้การพัฒนาระบบสามารถดำเนินกิจกรรม ต่าง ๆ ในแต่ละขั้นตอนของการพัฒนาระบบไปได้อย่างมีประสิทธิภาพ เช่น เทคนิคการบริหารโครงการ ได้แก่ Gantt Chart, Pert/CPM หรอื เทคนคิ การเขียนโปรแกรมเชิงวัตถุ เปน็ ต้น 3. แบบจาํ ลอง (Model) คือ สัญลกั ษณ์ที่ใช้อธบิ ายขั้นตอนการทำงานตามแนวทางเชงิ วัตถุในแต่ละข้ันตอน เพื่อให้เห็นแต่ละมุมมองของระบบเช่น แบบจําลองกระบวนการที่ใช้แผนภาพกระแสการไหลของข้อมูล (DFDs) ในการสร้าง หรอื การใชผ้ ังภาพคลาส (Class Diagram) ท่ีใชส้ ำหรับอธบิ ายคลาสตา่ ง ๆ ของระบบ และความสัมพันธ์ท่ีเกิดขึ้นระหว่างคลาสเหล่านั้น เป็นต้น โดยแบบจําลองที่ทำให้เห็นขั้นตอนของการ ทำงานและขอ้ มลู จะเรียกว่า “แบบจำลองเชงิ วัตถุ” (Object Model) 4. การจัดองคก์ ร (Organization) คือ การวางแผนงาน หรือ การจัดทีมงานที่มีทกั ษะและความพร้อมตาม แนวทางการพัฒนาเชิงวัตถุาหรับองค์ประกอบทั้งสี่ส่วนดังที่กล่าวมาข้างต้น ถือว่าเป็นสิ่งสำคัญในการ พัฒนาระบบเชิงวัตถุ เพราะหากส่วนใดส่วนหนึ่งเกิดความผิดพลาดอาจส่งผลให้เกิดความล้มเหลวในการ พัฒนาระบบนั้นข้ึนมาได้ทนั ที ดังนั้นการประสานกันของทั้งสี่สว่ นจะต้องเป็นไปอย่างมีประสิทธภิ าพ โดย ยดึ หลักการทว่ี า่ “เม่อื คดิ ถงึ ระบบ ใหค้ ดิ ถงึ วตั ถุ” และประสานความสมั พนั ธข์ องทง้ั ส่ีส่วนด้วยข้อความ หลักการเชงิ วัตถุ หลกั การเชงิ วัตถุ คือ การให้ความสำคญั กับวตั ถุ (Object) เปน็ เร่ืองหลกั ในการพัฒนา และถอื เป็น โครงสร้างพืน้ ฐานของระบบหรอื โปรแกรมท่ีกําลังพฒั นา โดยวตั ถุแตล่ ะตวั จะมีท้งั ข้อมูลและพฤตกิ รรมอยู่รว่ มกนั โดยวตั ถุสามารถเป็นได้ทง้ั แบบสัมผัสได้ สงิ่ ท่สี มั ผัสไม่ได้ อาจแทนส่ิงทเี่ ป็นองค์กร หรอื ส่วนของการทำงานของ คอมพวิ เตอร์ก็ได้ ตัวอย่างเช่น ⧫ วตั ถุแทนส่งิ ที่สัมผสั ได้ เชน่ นกั ศึกษา อาจารยห์ ้องเรยี น รถโรงเรียน หนงั สอื ปากกา เปน็ ต้น ⧫ วัตถุแทนสิง่ ท่ีสมั ผสั ไม่ได้ เชน่ ตารางเรียนตารางสอน สาขาวิชา การชําระลงทะเบียน การชําระค่าปรบั การจอง รถบัส เป็นต้น ⧫วัตถุแทนการทำงานของคอมพิวเตอร์ เช่นแฟม้ ลิงค์ลิสตค์ ิว สแตก เป็นตน้ ⧫วัตถุต่าง ๆ ที่รวมกันอย่างมีความสัมพันธ์จะเรียกว่า “ระบบเชิงวัตถุ” ซึ่งวัตถุแต่ละตัวจะส่งข้อความสื่อสาร ระหว่างกันเพื่อร้องขอความต้องการในการทำงานจนทำงานให้งานนั้นประสบความสำเร็จ การส่งข้อความ ปฏสิ มั พนั ธ์ระหว่างกันแบบนจี้ ะเรียกว่า “การส่งผ่านเมสเซจ” (Massage Passing)

27 แนวคิดการเขยี นโปรแกรมเชิงกระบวนการกับการ และแนวคิดเชงิ วัตถเุ ขยี นโปรแกรมเชงิ วัตถุ การเขียนโปรแกรมเชิงกระบวนการ คือ การเขยี นโปรแกรมตามลำดับขน้ั ตอนของระบบจากจดุ เริ่มต้นไป จนถงึ จดุ ส้ินสุดของโปรแกรมในลกั ษณะบนลงล่าง (Top Down Approach) มองการทำงานทุกอย่างเชอ่ื มโยงและ สมั พนั ธ์กันทุกข้ันตอน ตามหลักการ Input - Process -Output เหมาะสมกบั ระบบทไี่ มม่ ีความซับซอ้ น โดยวิธกี าร เขียนโปรแกรมแบบนจี้ ะขาดความยดื หยุนในการทำงานเพราะการแก้ไขในจุดหนงึ่ จะกระทบไปยังอีกจุดหนงึ่ ดว้ ย การเขียนโปรแกรมเชิงวัตถุ คือ การเขียนโปรแกรมทุกอย่างที่มองว่าเป็นวัตถุ โดยจำแนกให้ได้ว่าระบบ นน้ั ประกอบไปดว้ ยวตั ถุ หรอื ออบเจก็ ต์ อะไรบา้ ง มกี ารทำงานและความสัมพนั ธ์ร่วมกันอยา่ งไร โดยสอื่ สารกันด้วย ข้อความระหว่างกัน ซึ่งแตกต่างจากการเขียนโปรแกรมเชิงกระบวนการโดยสิ้นเชิง และมีองค์ประกอบที่สําคัญ 4 สว่ น ด้วยกันคอื 1. Abstraction คือการกำจดั ข้อมูลท่ีไม่เกยี่ วขอ้ งทง้ิ ไป โดยใหเ้ หลอื ข้อมลู ท่ตี ้องการเพยี งพอตอ่ การแกป้ ัญหาเท่าน้ัน 2. Encapsulation คือ การนาํ Operation หรอื การเขา้ รวมเปน็ สว่ นหน่งึ ของวตั ถุ เพือ่ ซ้อน รายละเอียดทไี่ มเ่ ก่ียวข้อง และลดความซบั ซ้อนของวัตถุตอนเวลานาํ ไปใช้งาน 3. Inheritance คอื การสรา้ งคลาสใหม่จากคลาสเดิมท่มี ีอยู่แล้วโดยมกี ารถา่ ยทอดคุณสมบัตขิ อง คลาสหลกั มา 4. Polymorphism คือ การอนุญาตตั้งช่อื ฟงั กช์ ันให้ซํ้ากันได้แบ่งเปน็ 2 ประเภทคอื Overloading และOverriding

28 การเขียนโปรแกรมเชิงวัตถุ เห็นได้ว่า มีความสลับซับซ้อนและยุ่งยากเมื่อเทียบกับแบบแรก แต่ในระยะ ยาวการแก้ไขโปรแกรมแบบจะเป็นเรื่องที่ง่าย เพราะแยกปัญหาหรือระบบงานออกเป็นส่วนย่อย ๆ ลดความ ซ้ำซ้อนของข้อมูล ซึ่งส่วนย่อยเหล่านี้จะเรียกว่า “คลาส” (Class) และภายในคลาสจะสร้างตัวแทนขึ้นมาทำงาน แทนตนเอง เรียกว่า “ออบเจ็กต์” (Object) ตัววัตถุนีเ้ องจะเก็บข้อมูลตา่ ง ๆ รวมกันเอาไวใ้ ห้เป็นวตั ถชุ ิ้นเดยี วกัน เพือ่ ใหง้ ่ายต่อการเรียกใชง้ าน งา่ ยตอ่ การแกไ้ ข (Modify) และง่ายต่อการนำกลับ อย่างไรก็ได้ให้คิดอยู่เสมอว่า “วัตถุแต่ละอย่างนั้น ต่างก็มีลักษณะและวิธีการใช้งานเป็นของตัวเอง” หมายความว่า วัตถุแต่ละชนิดหรือแต่ละชิ้นต่างก็มีรูปร่าง ลักษณะ และการใช้งาน(การกระทำ) ที่แตกต่างกัน ออกไป ซึ่งจะเรียกคุณลักษณะของวัตถุนี้ว่า แอตทริบิวต์ (Attribute)และจะเรียกวิธีการใช้งานวัตถุว่า เมธทอด (Method) ตัวอยา่ งเชน่ “ปากกาเป็นวัตถทุ ่มี ลี ักษณะเรยี วยาว ภายในเป็นไส่หมึกใช้สำหรบั เขยี น การใชป้ ากกำาได้ โดยใช้มอื จบั และเขยี นลงบนวสั ดุรองรับ” วัตถุ (Objects) วัตถุ คือ หน่วยของซอฟต์แวร์ที่ประกอบด้วยข้อมูล (Data) และวิธีการ (Method) วัตถุเป็นได้ทั้งสิ่งท่ี สามารถจับต้องได้ (เช่น อาจารย์ นักศึกษา หนังสือ) และวัตถุที่ไม่สามารถจับต้องได้ (เช่น บริษัท สถานศึกษา หลักสูตร ตารางเรียน ตารางสอน) และเรียกการสื่อสารระหว่างวัตถุนั้น ๆ ว่า Message ดังนั้นเมื่อกล่าวถึงการ สรา้ งวัตถุ หรือ “ออบเจ็กต์” จะตอ้ งพจิ ารณา 2 ส่วน 1. วัตถนุ ี้ประกอบด้วยอะไร นนั่ ก็คือคุณสมบัต(ิ Attributes) ของวัตถุนั้นมีอะไรบ้าง 2. วัตถุนสี้ ามารถทำอะไรไดบ้ า้ ง นนั่ กค็ อื ทำงานอะไรได้บ้าง (Methods) ตัวอย่างเช่น เก้าอี้ คุณสมบัติของเก้าอี้ คือ ทำจากไม้ พลาสติก หรือ เหล็ก รวมถึงสีของเก้าอี้ส่ วนการ ทำงานของเก้าอี้ คือ สามารถนั่งและปรับระดับความสูงได้ ดังนั้นการออกแบบวัตถุต้องพึ่งคําถาม 2 ข้อที่กล่าวใน เบอื้ งต้น

29 คลาส (Class) คลาส คือ กลุ่มของออบเจ็กต์ที่มีโครงสร้างพื้นฐานหรือพฤติกรรมเหมือนกันออบเจ็กต์ที่มีคุณสมบัติ เดียวกัน ก็จะรวมกลุ่มอยู่ในคลาสเดียวกัน คลาสและออบเจ็กต์ มีความคล้ายกันมากจนทำให้สงสัยว่าเป็นส่ิง เดียวกันหรือไม่ ในความเป็นจริง คลาสเป็นนามธรรม (Abstract) ในขณะที่ออบเจ็กต์นั้นเป็นสิ่งที่มีตัวตน (Concrete) การทำงานของออบเจ็กต์ จะเป็นไปตามคุณสมบัติที่กำหนดไว้ในคลาส และออบเจ็กต์ทุกตัวก็ต้องอยู่ ในคลาสดังนั้นคลาสและออบเจ็กต์ จึงเป็นสิ่งคู่กันเสมอ โดยคลาสนอกจากจะมีชื่อกำกับแล้ว ยังต้องมีคุณสมบัติ (Attributes) และหนา้ ที่การทำงาน (Operations หรอื Methods) ดว้ ยเชน่ กัน พนื้ ฐานความร้ใู นการเขียนโปรแกรมเชงิ วตั ถุ การเขียนโปรแกรมเชิงวัตถุดังที่กล่าวมาแล้ว จะเห็นได้ว่าเป็นเรื่องใหม่ในการพัฒนาระบบ การทำงาน หลาย ๆ ส่วนยังไม่มีความคุ้นเคย ดังนั้นผู้ที่จะศึกษาเกี่ยวกับการเกี่ยวกับการเขียนโปรแกรมเชิงวัตถุจำเป็นต้อง เขา้ ใจหลกั คิดและความรูพ้ นื้ ฐานที่เกี่ยว ดงั นี้ 1. การเช่ือมต่อ (Interface) หรือเรียกว่า การอินเตอร์เฟส การเชื่อมต่อระหว่างผู้ใช้กับคอมพิวเตอร์เรียกว่า “ยูสเซอร์ อินเตอร์เฟส” (User Interface) แต่ถ้าเป็นการเชื่อมต่อไปถึงวัตถุนั้น ๆ เพื่อบอกให้สามารถทำอะไร ได้บ้าง เรียกว่า “เมธทอด” (Method)ข้อดีของการมีอินเตอร์เฟส ก็คือ การเปลี่ยนแปลงที่เกิดข้ึน ภายในวตั ถจุ ะไม่กระทบตอ่ อนิ เตอร์เฟส ดงั น้นั ภายในวตั ถผุ เู้ ขยี นสามารถดัดแปลง แก้ไข หรอื เพ่ิมเติม ได้ตลอดเวลาพรอ้ มเกบ็ ค่าตา่ ง ๆ ไดด้ ้วย

30 2. การซอ่ นรายละเอยี ด (Encapsulation) วัตถจุ ะประกอบดว้ ย 2 ส่วนอยา่ งนอ้ ย คือมีส่วนคณุ สมบตั ิใช้เกบ็ ข้อมูล รายละเอียด สถานะและ สว่ นของเมธทอดทเี่ ปน็ ตวั เชอ่ื มการทำงานของวตั ถุ ในภาษา C จะใช้คำวา่ Public, Private 3. การนำวตั ถุมาใช้ใหม่ (Reuse the Object) จดุ ประสงค์หลักของการเขยี นโปรแกรมเชิงวัตถุ คอื การนำสว่ นต่าง ๆ ของวัตถทุ ี่สรา้ งข้ึนกลับมา ใช้ใหม่หรือที่เรียกในภาษาอังกฤษว่า“Reuse” เมื่อผู้เขียนโปรแกรมสร้างวัตถุมีจำนวนมากพอก็ สามารถนำวตั ถุทส่ี ร้างขึ้นมาประกอบเปน็ วตั ถใุ หม่ หรอื ท่ีเรียกว่า “คอมโพสิตช่ัน” (Composition) 4. การพอ้ งรูป (Polymorphism) การพ้องรูป คือ การถ่ายทอดคุณสมบัติ เพราะถ้าไม่มีการถ่ายทอดคุณสมบัติก็จะไม่เกิดสภาวะ การพ้องรูป การถ่ายทอดคุณสมบัติเป็นเครื่องมือที่ยืนยันได้ว่าคลาสลูกที่เกิดจากคลาสแม่เดียวกันย่อมมี คณุ สมบตั ิเหมือนกัน ประโยชนข์ องการเขียนโปรแกรมเชงิ วัตถุ การเขยี นโปรแกรมเชิงวัตถุ เมื่อนำมาใชใ้ นการพฒั นาระบบตามแนวคดิ เชิงวตั ถุแลว้ จะพบวา่ มีประโยชนท์ ี่ สำคญั ดงั นี้ 1. สามารถเรยี กใช้งานได้หลายคร้ัง ดงั น้ี กล่าวคอื วัตถุถูกออกแบบตามหลักการที่ว่าสามารถเรียกใช้งาน ได้หลาย ๆ ครั้ง ในการทำงานครั้งแรกอาจเป็นเรื่องยาก แต่การเขียนโปรแกรมในภายหลังจะท ำได้ ง่ายเพราะสามารถเรียกใช้วัตถุหรือออบเจ็กต์นั้นได้ ทำให้การพัฒนาโปรแกรมรวดเร็วและมี ประสิทธิภาพมากข้ึน 2. มีความน่าเชื่อถือ เพราะองค์ประกอบส่วนย่อย ๆ ได้ทดสอบมาตรฐานแล้วว่าสามารถรวมเข้าไว้ ด้วยกนั ได้ ดังนัน้ คำส่ังที่เขยี นข้ึนมาใหม่ในแต่ละโปรแกรมกจ็ ะมขี นาดสั้นลง 3. มีความตอ่ เนอื่ งกัน เพราะโปรแกรมทีพ่ ัฒนาข้ึนมา สามารถต่อยอดหรอื เปล่ียนภาษาตอ่ ไปไดอ้ ย่างง่าย และใชเ้ วลาไม่มากนกั โดยเฉพาะผู้เขียนโปรแกรมท่ีมคี วามชํานาญจะมีความเขา้ ใจในเนื้อหาโปรแกรม ทำใหโ้ ปรแกรมมีความต่อเน่อื ง ทันสมัยตามความตอ้ งการของผู้ใช้

31 คำศัพท์ ความหมาย ออบเจ็กต์ หน่วยของซอฟต์แวร์ที่ประกอบด้วยข้อมูล (Object) (Data) และวิธีการ (Method) กลมุ่ ของออบเจ็กตท์ ่มี ีโครงสรา้ งพื้นฐาน คลาส หรอื พฤตกิ รรมเหมือนกัน (Class) วิธีการใชง้ านของวัตถุ เมธทอด การส่ือสารท่เี กดิ ขนึ้ ระหว่างออบเจก็ ตต์ ่าง ๆ (Method) ซ่ึงเชอื่ มโยงกนั อย่างมคี วามสัมพนั ธ์ การถา่ ยทอดคุณสมบัตภิ ายในคลาสเดียวกนั เมสเซจ (Message) โพลิมอรฟ์ ิซึม (Poylmorphism)

32 หน่วยท่ี 4 กระบวนการวิเคราะห์และออกแบบเชิงวัตถุ สาระการเรยี นรู้ 1. การวิเคราะหแ์ ละออกแบบระบบ 2. กระบวนการวิเคราะหแ์ ละออกแบบระบบเชิงวตั ถุ 3. ลักษณะที่สำคัญของกระบวนการวิเคราะห์และออกแบบระบบเชชิงวตั ถุ 4. การวางแผน(Planning) 5. การวิเคราะหร์ ะบบ(System Analysis) จดุ ประสงคก์ ารเรียนรู้ 1. เพ่อื ใหร้ รู้ ะบบการวเิ คราะห์และออกแบบเชิงวัตถุ 2. เพือ่ ใหเ้ ข้าใจหนา้ ที่และบทบาทสำคัญในแตล่ ะข้นั ตอนของการวเิ คราะห์และออกแบบระบบ 3. เพอื่ ให้มีเจตคติและกิจนสิ ัยท่ดี ีตอ่ คอมพิวเตอร์ สมรรถนะประจำหน่วย 1. แสดงความรูเ้ ก่ยี วกับกระบวนการวเิ คราะห์และออกแบบเชงิ วัตถุ 2. บอกหน้าทแี่ ละบทบาทสำคญั ของการวเิ คราะห์และออกแบบระบบในแตล่ ะข้นั ตอน

33 การวิเคราะห์และออกแบบระบบ การวิเคราะห์ระบบ คอื กระบวนการพฒั นาระบบสารสนเทศจากระบบเดิมไปสู่ระบบใหม่ เพ่อื ปรับปรุง และแก้ไขกระบวนการทำงานของระบบใหม่มปี ระสิทธภิ าพตามความตอ้ งการของผใู้ ช้ ซ่งึ เกดิ ข้ึนอยา่ งต่อเนื่องและ รวดเร็ว โดยจะยังไม่พิจารณาเรื่องซอฟต์แวร์หรือโปรแกรมทีจะนำมาใช้ และยังไม่คำนึงถึงสมรรถนะของระบบ การวิเคราะห์และออกแบบระบบเปรียบได้กับเครื่องมือทีช่วยใหเข้าใจปัญหาและการทำงานของระบบเดิม และ ส่วนใหญ่มักจะมีเหตุผลประกอบต่าง ๆ เช่น ปรับปรุงบริการแก่ลูกค้า เพิ่ม ประสิทธิภาพการทำงาน เพิ่ม กระบวนการควบคุมการทำงาน ลดตน้ ทุนการดำเนนิ งาน ต้องการสารสนเทศมากข้ึน ซ่งึ หลังจากทวี ิเคราะห์ระบบ แล้ว ผลทีไดม้ ักจะมดี ว้ ยกนั 3 ขอ้ คอื (System Analysis and Design) ผลทีไดจ้ ากการวเิ คราะหแ์ ละออกแบบระบบจะออกมาใน 3 แนวทาง ดังนี้ (System Analysis and Design) 1. ไมต่ อ้ งดำเนนิ การใด ๆ ด้วยเพราะผลของการวเิ คราะห์พบวา่ ปญั หาท่ีเกิดขนึ้ ยังไมร่ า้ ยแรง หรอื สง่ ผลต่อ การทำงานทั้งระบบ ระบบยังสามารถปฏิบัติงานต่อไปได้ หรือระบบอาจจะมีปัญหาที่ต้องได้รับการพัฒนาแต่ งบประมาณมีจำกดั ยงั ไมถ่ งึ เวลาทเ่ี หมาะสม เป็นต้น 2. ปรับปรุงระบบเดิมให้ดีขึน้ สำหรับแนวทางนีเ้ ปน็ เพราะผลจากการวเิ คราะห์ระบบพบว่า ระบบงานน้นั ยังคงมีประสิทธิภาพ แต่มีปัญหาเพียงบางส่วนที่ต้องปรับปรุงแก้ไข หรือด้วยงบประมาณมีจำกัดจึงเลือกปรับปรุง ระบบเดมิ ไปก่อน 3. พัฒนาระบบใหม่ เป็นแนวทางที่แสดงให้เห็นว่า ระบบนั้นมีความจำเป็นเร่งด่วนที่ต้องปรับปรุง ส่วน ใหญ่มักเกิดขึ้นกับระบบเดิมที่ไมม่ ีระบบคอมพิวเตอร์มาใช้ในการประมวลผล จึงจำเป็นต้องจดั สร้างหรือพัฒนาขนึ้ มาใหมท่ ั้งหมด อย่างไรกด็ ใี นการพฒั นาระบบใหมข่ ้ึนมาแสดงว่ามีความพร้อมทั้งงบประมาณ และองค์ประกอบอ่ืน ๆ อยู่แล้วด้วย การออกแบบระบบ การออกแบบระบบ คือ การอธิบายว่าการแก้ปัญหาของระบบเดิมจะทำอย่างไร (how) เป็นการจัดทำ โมเดลเพื่อสนับสนุนการพัฒนาและติดตั้งระบบงานคอมพิวเตอร์ หรืออาจเป็นการปรับปรุงซอฟต์แวรใ์ นระบบเดมิ และการปรบั ปรงุ สมรรถนะของระบบงานเดิมหรือซอฟตแ์ วร์ระบบงานเดิม การออกแบบเป็นกระบวนการที่เปล่ียน การวิเคราะหใ์ หเ้ ป็นคุณลกั ษณะของซอฟต์แวร์

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

35 กระบวนการวเิ คราะห์และออกแบบระบบเชงิ วัตถุ การวเิ คราะหแ์ ละออกแบบระบบเชิงวัตถุ เป็นกระบวนการทค่ี ล้ายกบั กระบวนการพฒั นาระบบสารสนเทศ โดยทั่วไป ซึง่ เรยี กวา่ “AgileDevelopment” โดยเอกสารทีเ่ กิดขนึ้ ในระยะวิเคราะห์ระบบและออกแบบระบบน้ัน จะประกอบดว้ ยโมเดลต่าง ๆ ทใี่ ชอ้ ธิบายขนั้ ตอนการทำงานของระบบต่าง ๆ กันไป สำหรบั ในเนอ้ื หาบทเรียนน้ีจะ แยกกระบวนการวิเคราะห์และออกแบบระบบเชงิ วัตถุออกเป็น 5 ข้นั ตอน คอื ลักษณะสำคัญของกระบวนการวิเคราะห์และออกแบบระบบเชงิ วตั ถุ กระบวนการวิเคราะห์และออกแบบระบบเชิงวัตถุ มีลักษณะที่สำคัญคือเป็นกระบวนแบบวนซ้ำ (Interactive Development) แบ่งขั้นตอนการทำงานเป็นรอบ ๆ ในแต่ละรอบจะมีการกำหนดระยะเวลาท่ี ชัดเจน ไม่สั้นหรือยาวจนเกินไป ขึ้นอยู่กับวัตถุประสงค์ของการพัฒนาระบบในรอบนั้น ๆ โดยให้ความสำคัญกับ ความต้องการหลักของผู้ใช้งานระบบ อาจมีการปรับเปลี่ยนได้ในการพัฒนาระบบ ขึ้นอยู่กับขอบเขตซึ่งจะแปรผนั ตามผลป้อนกลับ (Feedback) ทำให้ระยะเวลาการทำซ้ำของแต่ละรอบมีการขยายวงกว้างออกไป โดยข้อดีของ กระบวนการทำซ้ำ ได้แก่ 1. สามารถตรวจสอบและวเิ คราะห์ความเสีย่ งในการพัฒนาระบบทั้งด้านเทคนิค ความต้องการของระบบ การใชง้ านได้ในระยะตน้ ๆ ของการพัฒนาระบบข้อดีของกระบวนการทำซ้ำ ได้แก่ 2. สามารถเหน็ ความก้าวหนา้ ของโครงการพัฒนาระบบได้ต้ังแต่ระยะแรก ๆ ของการพฒั นาระบบ 3. สามารถไดร้ บั ข้อเสนอแนะ การมสี ว่ นรว่ มของผใู้ ช้ และการปรับระบบ เพ่ือให้ระบบท่ีกำลงั พฒั นาขน้ึ ตรงกบั ความต้องการของผู้ใช้งานระบบ

36 4. สามารถจดั การกบั ความซับซอ้ นของระบบโดยไม่ต้องติดขดั กับการวเิ คราะหท์ ใ่ี ช้เวลานาน 5. สามารถนำประสบการณจ์ ากการพัฒนาระบบในรอบกอ่ น ๆมาปรบั ปรงุ วธิ กี ารดำเนนิ งานในรอบถัด ๆ ไปได้ข้อดีของกระบวนการทำซ้ำ ได้แก่ การวางแผน(Planning) การวางแผน คือ การกำหนดขอบเขตของระบบ วัตถุประสงค์ในการดำเนินการ ระยะเวลา งบประมาณ และตารางกิจกรรมต่าง ๆ ที่จะเกิดขึ้นในกระบวนการพัฒนาระบบสารสนเทศ โดยจะรวมถึงการควบคุมและการ บริหารความเสี่ยงที่จะเกิดขึ้น รวมไปถึงการกำหนดบุคลากรที่รับผิดชอบกิจกรรมนั้น ๆ ด้วยโดยมีทั้งการวางแผน ระยะสั้น ประมาณ 3 -6 เดือน การวางแผนระยะกลาง ประมาณ 6 - 12 เดือน และการวางแผนระยะยาว ประมาณ 2 ปขี นึ้ ไป การวางแผนโครงการที่ดีจะต้องเริ่มตั้งแต่จุดเริ่มต้นของโครงการไปจนกระทั่งเสร็จสิ้นโครงการ ผู้วางแผน จะต้องเข้าใจขั้นตอนการทำงานอย่างละเอียด และเลือกใช้เครื่องมือรวมถึงบุคคลที่เหมาะสมในการดำเนินการ กิจกรรมแต่ละกิจกรรม การกำหนดทรพั ยากรทจ่ี ำเป็นต้อ งใชแ้ ละวิธกี ารควบคุม ทส่ี ำคัญตอ้ งคาดคะเนปัญหาและ อุปสรรคพร้อมแนวทางแก้ไขปัญหาเหล่านั้นไว้ล่วงหน้า เพื่อให้ผู้ที่เกี่ยวข้องสามารถจัดการกับปัญหาได้อย่างมี ประสิทธภิ าพ ซ่งึ กลุ่มบคุ คลทมี่ ี ต่อการวางแผนโครงการประกอบด้วย คณะกรรมการผู้บริหาร คณะกรรมการ อำนวยการ และผูจ้ ัดการตามสายงานน้ัน ๆ เปน็ ตน้ การควบคมุ ควบคุม หมายถึง การตรวจเช็คและติดตามการทำงานในทุกกิจการจกรมให้สามารถปฏิบัติได้ตาม ระยะเวลาทกี่ ำหนดไว้ในขั้นตอนการวางแผนได้อย่างมปี ระสทิ ธภิ าพ ซงึ่ การควบคุมจะชว่ ยใหก้ ารทำงานเปน็ ไปตาม ระยะเวลาของโครงการที่กำหนดและเกิดแรงจูงใจในการปฏบิ ัตงิ านของบคุ ลากรทเ่ี กีย่ วข้อง

37 ประโยชน์ทไ่ี ดร้ บั จากการบริหารโครงการ • การดำเนนิ กิจกรรมต่าง ๆ ของโครงการ หากไดร้ บั การบริหารจดั การโครงการทด่ี ี กจ็ ะมีประโยชน์กบั โครงการนนั้ ดังนี้ • ช่วยลดความเส่ยี งในการจัดโครงการ • การดำเนนิ งานเปน็ ไปตามแผนทก่ี ำหนดไว้ • เกิดความเชื่อมน่ั วา่ กิจกรรมดำเนนิ ไปตามทศิ ทางที่กำหนดไว้ • เกดิ ระบบการประสานงานและความร่วมมือ • สามารถปรับแผนหรือแก้ไขปัญหาไดท้ นั ทว่ งที • ทราบผลการดำเนนิ งานว่าประสบผลสำเรจ็ เพยี งใด ความสำเรจ็ ของโครงการ การประสบความสำเร็จของโครงการหลงั จากปิดโครงการไปแล้ว สามารถกำหนด ได้ 3 ลักษณะ คือ สำเร็จภายในระยะเวลา (Schedule Success) หมายถึงโครงการนั้นสามารถจัดทำให้สำเร็จได้ภายใน ระยะเวลาหรือเรว็ กว่าระยะเวลาทีก่ ำหนดไว้ในโครงการ สำเร็จภายใต้งบประมาณ (Budget Success) หมายถึงโครงการนั้นสามารถจัดทำได้จนสำเร็จภายใต้ งบประมาณท่กี ำหนดหรอื มงี บประมาณคงเหลือจากทกี่ ำหนดไว้ สำเร็จตามวัตถุประสงค์ (Objective Success)หมายถึง โครงการนั้นสามารถจัดทำได้จนสำเร็จและ บรรลตุ ามวัตถุประสงค์ของโครงการท่ีกำหนดไว้ทุกประการ

38 กระบวนการบริหารโครงการ กระบวนการบริหารโครงการ กลา่ วถงึ ในการวางแผนโครงการคงไม่สามารถทำได้ในคร้ังเดียวแล้วเสร็จส้ิน หากแต่จำเป็นต้องอาศัยกระบวนการตั้งแต่เริ่มต้นจนถึงสิ้นสุดโครงการ ซึ่งกระบวนการวางแผนในสมัยใหม่ก็มี หลากหลายแนวทาง แต่ที่ได้รับความนิยมก็คงเป็นกระบวกการวางแผนโดยใช้ “วัฏจักรของเดมมิ่ง” (Deming cycle) ประกอบด้วย 4 ขนั้ ตอน คอื การวางแผน การปฏบิ ัติ การตรวจประเมนิ และการปรบั ปรงุ แกไ้ ข “วฏั จกั รของเดมมงิ่ ” (Deming cycle) ประกอบด้วย 4 ข้ันตอน การบรหิ ารโครงการ (Project Manager) การบริหารโครงการเป็นการดำเนินการให้โครงการประสบความสำเร็จตามที่ตั้งเป้าหมายไว้ จำเป็นต้อง อาศัยผูบ้ รหิ ารโครงการมากำกับดแู ล และควบคมุ ใหก้ ารดำเนนิ งานของโครงการนั้นเป็นไปตามแผนงานท่ีกำหนดไว้ ซง่ึ แบง่ ออกได้เปน็ 2 ระดับ คือ 1) ผู้บริหารโครงการระดบั สงู 2) ผู้บรหิ ารโครงการระดบั ปฏิบตั กิ าร

39 สำหรับคุณสมบัติของผ้บู ริหารโครงการควรมคี วามรแู้ ละทักษะท่จี ำเป็น ดงั น้ี 1) ความร้แู ละทกั ษะด้านการวางแผน 2) ความรแู้ ละทักษะด้านการจดั หนว่ ยงาน 3) ความรู้และทกั ษะด้านการควบคุมการปฏบิ ตั ิงานโครงการ 4) ความรแู้ ละทักษะด้านงบประมาณ บญั ชี กฎหมาย และจิตวิทยา สรปุ กจิ กรรมทีเ่ กิดข้นึ ในข้ัน ตอนการวางแผนในกระบวนการวเิ คราะหแ์ ละออกแบบระบบเชิงวตั ถุ ได้ดงั นี้ การวิเคราะหร์ ะบบ (System Analysis) การวิเคราะห์ระบบ คือ การศึกษาปัญหาและความสำคัญในการพัฒนาระบบใหม่ขึ้นมาแทนที่ระบบเดิม โดยรวบรวมข้อมลู ความต้องการของระบบใหม่จากผู้ใชร้ ะบบ เชน่ บคุ คล แผนก องค์กร หรือหน่วยงานที่เกี่ยวข้อง ซึ่งจะใช้เทคนิคการเก็บรวบรวมขอ้ มูล เช่น การสัมภาษณ์ การสังเกต การแจกแบบสอบถาม และรวบรวมเอกสาร ตา่ ง ๆ ทีม่ ีอยูใ่ นระบบนั้น ๆ หลงั จากนน้ั จะใชเ้ ทคนคิ การจำลองแผนภาพความตอ้ งการของระบบใหม่ด้วยเคสทูลส์ (Case Tools) ตา่ ง ๆโดยเม่อื รวบรวมข้อมูลเรยี บร้อยแลว้ ก็จะนำไปสู่การวเิ คราะห์แนวทางแก้ไขโดยใชแ้ บบจำลอง ระบบใหมด่ ้วยแผนภาพ Class Diagram หรอื ObjectDiagram เปน็ ต้น

40 (a) Class Diagram (b) Object Diagram เคสทลู ส์ (CASE Tools) เคสทูลส์ (Computer Aided Software Engineering Tools) คือเครื่องมือที่ใช้ในการวิเคราะห์และ ออกแบบระบบ โดยอาศัยเทคโนโลยีด้านซอฟต์แวร์มาช่วยในการวิเคราะห์และออกแบบระบบข้อมูล ข่าวสาร รวมถึงกระบวนการทำงานต่าง ๆ ให้ออกมาอยู่ในรปู ของแผนภาพ รายงาน โคด้ โปรแกรมอย่างอัตโนมัติ ทำให้เกิด ประโยชน์ในการทำงาน ได้แก่

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

42 ขอบข่ายของเคร่อื งมอื สนบั สนนุ การพฒั นาระบบ สำหรับเคสสท์ ลู ท่ีนำมาชว่ ยในการวเิ คราะห์และออกแบบระบบนนั้ สามารถแบง่ ตามขอบขา่ ยของงานไดอ้ อกเปน็ 2 ชว่ ง ได้แก่ 1. เคสทลู ส์ระดับสูง (Upper CASE Tools) เปน็ เครอื่ งมือสนับสนนุ การทำงานในขนั้ ตอนแรก ๆ ของวงจร การพฒั นาระบบ ได้แก่ ขนั้ ตอนการวางแผน ขนั้ ตอนการวิเคราะห์ และข้ันตอนการออกแบบระบบ เช่น การ ออกแบบหน้าจอ การออกแบบรายงาน การออกแบบพจนานกุ รมข้อมลู การบรหิ ารโครงการ การออกแบบแผนผงั ระบบและรปู แบบในการวิเคราะห์ โดยโปรแกรมท่ีนิยมใช้ในข้ันตอนน้ไี ด้แก่ Microsoft Visio และโปรแกรมVisible Analysis เป็นต้น

43 ขอบข่ายของเครื่องมือสนบั สนนุ การพัฒนาระบบ เคสทูลส์ระดับลา่ ง (Lower CASE Tools) เปน็ เครือ่ งมือสนับสนนุ การทำงานในขั้นตอนการนำไปใช้งาน การทดสอบระบบ และการบำรุงรกั ษาระบบ ซ่งึ ส่วนใหญเ่ ป็นข้นั ตอนในระยะสดุ ท้ายของวงจรการพฒั นาระบบ ซ่ึง บางขน้ั ตอนอาจจะซ้อนกบั เคสทลู สร์ ะดบั สูงก็ได้สำหรับประโยชน์ทเี่ กิดข้นึ ในขัน้ ตอนนจ้ี ะช่วยให้ระบบพฒั นาไดเ้ รว็ ขนึ้ ลดระยะเวลาในขนั้ ตอนการบำรุงรกั ษาระบบ สามารถนำไปพฒั นาด้วยโคด๊ อน่ื ๆ ได้มากกวา่ 1 ภาษา ลด ค่าใชจ้ า่ ยเม่ือต้องเปลย่ี นโปรแกรมในอนาคต และชว่ ยลดขอ้ ผดิ พลาดในการเขยี นโปรแกรม สำหรบั โปรแกรมที่ นยิ มใช้ในขั้นตอนนไ้ี ด้แก่ Relational rose, QMetry Test Management เป็นต้น ประเภทของ CASE Tools เคสทูลส์ เมื่อแบ่งประเภทตามกระบวนการทำงาน จะสามารถแบง่ ออกไดเ้ ป็น 8 กลุ่ม ได้แก่ 1. เครือ่ งมือสำหรบั การวิเคราะห์ (Software Requirement Tools) เปน็ เคสทูลสท์ ใี่ ชส้ ำหรบั การจัดทำ เอกสารเพ่ือรวบรวมความตอ้ งการของลกู คา้ หรอื ผู้ใช้งาน ตัวอยา่ งโปรแกรมสำหรับการวเิ คราะห์ไดแ้ ก่ Case Spec TraceClound SpiraTest Process Street และAligend Elements เป็นต้น สำหรับเคสทูลสป์ ระเภทนส้ี ามารถ แบ่งออกเป็น 2 กลุ่ม คือ 1.1 เครอ่ื งมือในการสรา้ งแบบจำลองความต้องการ (Requirement Modeling Tools) 1.2 เครื่องมือการตดิ ตามความตอ้ งการ (Requirement Traceabi lityTools)