นำไปใช้&บำรุงรักษา

การเขียนโปรแกรม (Coding)

          ขั้นตอนการเขียนโปรแกรม

  • 1. การวิเคราะห์งาน (job analysis) หรือ การวิเคราะห์ปัญหาและความต้องการ (problem analysis and requirementanalysis) และการศึกษาจากเอกสารต่างๆ
  • 2. การออกแบบ (design)
  • 3. การเขียนผังงาน (flowcharting))
  • 4. การเขียนโปรแกรม (programming) หรือ การเขียนรหัสคำสั่ง (coding)
  • 5. การทดสอบและแก้ไขโปรแกรม (program testing anddebugging)
  • 6. การจัดทำเอกสาร (documentation)
  • 7. การบำรุงรักษาโปรแกรม (program maintenance)

          ประกอบด้วยกิจกรรมหลัก  คือ       

  • 1. คัดเลือกภาษา เพื่อนำ มาใช้ในการเขียนโปรแกรมภาษาคอมพิวเตอร์คือกลุ่มของกฎเกณฑ์ที่มนุษย์สั่งให้คอมพิวเตอร์ปฏิบัติตาม ตัวอย่างภาษาคอมพิวเตอร์ที่รู้จักกันดี คือ ภาษาระดับสูง เช่น COBOL, Java, Visual basic หรือภาษาในยุคที่ 4 (fourth generation language : 4GL)
  • 2.เขียนโปรแกรม หรือสร้างโปรแกรมตามที่ได้ออกแบบไว้โดยนักวิเคราะห์ระบบ สำหรับโปรแกรมหรือระบบงานใด ๆที่พัฒนาขึ้นด้วยภาษาคอมพิวเตอร์ นักเขียนโปรแกรมจะต้องปฏิบัติตามวากยสัมพันธ์ (syntax) และกฎเกณฑ์การเขียนโปรแกรมนั้น ๆ อย่างเคร่งครัด

การทดสอบ (Testing)

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

เทคนิคการทดสอบ (Testing Techniques) สามารถดำเนินการทดสอบวิธีการต่อไปนี้

  • ทดสอบแบบกล่องดำ  Black Box Testing เป็นการทดสอบการทำงานของระบบ ที่ต้องการทราบเพียงว่า เมื่อมีการนำข้อมูลเข้าสู่ระบบแล้ว จะได้ผลลัพธ์ออกมาอย่างไร โดยไม่สนใจว่าภายในระบบมีกระบวนการทำงานอย่างไร
  • ทดสอบแบบกล่องขาว  White Box Testing เป็นการทดสอบโปรแกรมภายในว่ามีวิธีการเขียนอย่างไร มีการตรวจสอบฟังก์ชันการทำงานว่าถูกต้องและครบถ้วนหรือไม่ โปรแกรมที่เขียนขึ้นมีข้อผิดพลาดเชิงตรรกะ (Logic Error) หรือไม่ มีการออกแบบตรรกะโปรแกรมที่มีประสิทธิภาพหรือไม่ อย่างไร

ขั้นตอนการทดสอบ (Stages of Tests) จะประกอบด้วย 4 ขั้นตอนพื้นฐาน คือ

  • 1.  การทดสอบหน่วยย่อย (Unit Testing)  มุ่งเน้นถึงการตรวจสอบความถูกต้องและข้อผิดพลาดที่เกิดขึ้นภายในโมดูล โปรแกรมเมอร์ก็จะทดสอบจนกระทั่ง เชื่อว่าโค้ดโมดูลนี้ปราศจากข้อผิดพลาด
  • 2.  การทดสอบด้วยการนำโปรแกรมมาประกอบรวมกัน (Integration Testing) คือการทดสอบ ด้วยการนำกลุ่มโปรแกรมหรือโมดูลต่าง ๆ มาประกอบรวมกัน ระบบจะต้องทำงานโดยปราศจากข้อผิดพลาด และต้องมีความมั่นใจว่าการเชื่อมโยง และการส่งผ่านข้อมูลไปมาระหว่างโมดูลจะต้องทำงานอย่างถูกต้องและครบถ้วน สามารถดำเนินการด้วยวิธีแบบล่างขึ้นบน (Bottom-up Integration) และวิธีแบบบนลงล่าง (Top-down Integration)
  • 3.  การทดสอบทั้งระบบ (System Testing) คือการทดสอบระบบทั้งหมดก่อนที่จะดำเนินการส่งมอบให้กับลูกค้า นักวิเคราะห์ระบบจะต้องมั่นใจว่าทุก ๆ โมดูล และโปรแกรมต่าง ๆ จะต้องทำงานร่วมกันโดยปราศจากข้อผิดพลาด และตรงตามความต้องการของผู้ใช้ รวมถึงการทดสอบประสิทธิภาพของระบบ (Performance Testing) ว่าระบบมีความน่าเชื่อถือมากน้อยเพียงไร
  • 4.  การทดสอบการยอมรับในระบบ   (Acceptance Testing) คือการตรวจรับระบบ ที่ผู้ใช้จะเป็นผู้ยืนยันถึงความสมบูรณ์ของระบบ ว่าระบบสามารถรองรับกระบวนการทางธุรกิจได้ตรงความต้องการ ถูกต้อง และครบถ้วนหรือไม่ อย่างไร แบ่งออกเป็น การทดสอบแบบอัลฟา (Alpha Testing) จะดำเนินการทดสอบระบบด้วยการจำลองสภาพแวดล้อมขึ้นมา และการทดสอบแบบเบต้า (Beta Testing) ทีมงานจะให้ผู้ใช้งานจริงทำการทดสอบระบบบนสภาพแวดล้อมจริง และใช้ข้อมูลจริงในการทดสอบ

การติดตั้งระบบ (Installation)

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

วิธีการติดตั้งระบบงาน มีอยู่ 4 วิธีด้วยกันคือ

1. การติดตั้งแบบทันที (Direct Installation) เป็นรูปแบบการติดตั้งเมื่อถึงวันกำหนดการติดตั้งระบบ ระบบงานเดิมที่ใช้งานอยู่นั้นจะถูกยกเลิกทั้งหมด และถูกแทนที่ด้วยระบบใหม่โดยทันที        

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

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

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

3. การติดตั้งแบบเป็นระยะ (Phased Installation) เป็นวิธีการติดตั้งแบบทีละส่วนเป็นระยะ ๆ ด้วยการติดตั้งทีละระบบย่อย และค่อย ๆ ดำเนินการติดตั้งระบบย่อยอื่น ๆ ต่อไปจนครบทุกระบบ        

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

4. การติดตั้งแบบนำร่อง (Pilot Project) เป็นวิธีการติดตั้งที่มีความคล้ายคลึงกับวิธีการติดตั้งแบบเป็นระยะ โดยจะนำร่องด้วยการติดตั้งระบบเฉพาะส่วนงานใดส่วนงานหนึ่งก่อน เช่น หากเป็นหน่วยงานที่มีหลายสาขาก็สามารถทดลองติตั้งนำร่องในสาขาใดสาขาหนึ่งก่อน จนกระทั่งคิดว่าระบบสามารถทำงานได้ดีก็จะทยอยติดตั้งในสาขาอื่น ๆ จนครบทุกสาขา

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

การจัดทำเอกสารคู่มือใช้งานการนําเสนองานกลุ่ม หรือ คู่มือการใช้งาน (Documentation / Manuals)

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

  • 1 คู่มือสำหรับผู้ใช้ (User  Documentation) เป็นเอกสารแสดงขั้นตอนการปฏิบัติงานกับระบบ ซึ่งผู้ใช้ที่ปฏิบัติงานกับระบบจะต้องศึกษาและปฏิบัติตามขั้นตอนที่ระบุ ภายในคู่มือจะบอกรายละเอียดขั้นตอนและแนะนำผู้ใช้ว่าจะโต้ตอบกับระบบได้อย่างไร มีขั้นตอนการกรอกหรือส่งข้อมูลอย่างไร และถือว่าคู่มือนี้เป็นคู่มือที่ผู้ใช้ระบบจะต้องติดตัวไว้ใช้งานเสมอ ดังนั้นรายละเอียดภายในจึงควรมีข้อมูลและภาพประกอบที่ครบถ้วน และใช้ภาษาที่อ่านแล้วเข้าใจง่าย
  • 2 คู่มือสำหรับระบบ (System  Documentation)  เอกสารคู่มือสำหรับระบบจะแตกต่างจากคู่มือสำหรับผู้ใช้คือ คู่มือสำหรับระบบจะนำไปใช้เพื่องานจัดการระบบเป็นสำคัญ ผุ้ดูแลรับผิดชอบก็คือหัวหน้าควบคุมดูแลระบบ ที่มีหน้าที่ศึกษารายละเอียดคู่เพื่อนำไปใช้แก้ไขปัญหาเบื้องต้น ในกรณีที่ระบบเกิดข้อผิดพลาดขึ้นมา ดังนั้นบุคคลที่ทำหน้าที่นี้จำเป็นต้องมีความรู้ทางเทคนิคพอตัว ที่สามารถใช้งาน เคลื่อนย้าย หรือปรับปรุงอุปกรณ์ภายในระบบได้ ตัวอย่างเช่น กรณีที่ไม่สามารถส่งงานไปพิมพ์บนเครื่องพิมพ์ได้ จะต้องแก้ไขอย่างไร กรณีที่ผู้ใช้ไม่สามรถล็อกอินเข้าระบบได้จะต้องแก้ไขอย่างไร กรณีต้องการเพิ่มสิทธิการใช้งานให้กับผู้ใช้ ต้องดำเนินการอย่างไร กรณีที่ต้องการเพิ่มฮาร์ดดิสก์ หรือเคลื่อนย้ายฮาร์ดดิสก์จะต้องดำเนินการอย่างไร และการสำรองข้อมูล หรือการกู้คืนข้อมูลจะต้องดำเนินการอย่างไร

การฝึกอบรม (Training)

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

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

          ชนิดของการฝึกอบรม (Types of Training) การฝึกอบรม จึงสมควรดำเนินการฝึกอบรมตามชนิดของกลุ่มบุคคล ซึ่งประกอบด้วย การฝึกอบรมผู้ใช้ และการฝึกอบรมผู้ปฏิบัติการ

  •   - การฝึกอบรมผู้ใช้ (User Training) จะตั้งอยู่บนพื้นฐานการทำงานของระบบ และความต้องการเข้าถึงข้อมูลของผู้ใช้เป็นสำคัญ จะต้องอธิบายให้ผู้ใช้เข้าใจถึงการทำงานของระบบว่าประกอบด้วยอะไรบ้าง และจะต้องดำเนินการอย่างไรเป็นสำคัญ
  •   - การฝึกอบรมผู้ปฏิบัติการ (Operator Training) จะมุ่งความสนใจถึงหน้าที่การสนับสนุนระบบเป็นสำคัญ ด้วยการอธิบายว่าระบบมีการทำงานอย่างไร มากกว่าที่จะอธิบายว่าระบบทำอะไรบ้าง

การประเมินผลระบบ (System Evaluation)

          การประเมินผลระบบมีอยู่ 3 แนวทางด้วยกันคือ

1 การประเมินผลทางเทคนิค

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

2 การประเมินความคิดเห็นจากผู้ใช้ระบบ

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

3 การประเมินตนเอง

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


การบำรุงรักษาระบบ (Maintenance)

          การบำรุงรักษาระบบจะมีอยู่ 4 วิธีด้วยกันก็คือ 

1 การบำรุงรักษาระบบด้วยการปรับปรุงแก้ไขให้ถูกต้อง (Corrective Maintenance)

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

2 การบำรุงรักษาระบบด้วยการดัดแปลง (Adaptive Maintenance)

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

3 การบำรุงรักษาระบบด้วยการปรับประสิทธิภาพ (Perfective Maintenance)

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

4 การบำรังรักษาระบบด้วยการป้องกัน (Preventive Maintenance)

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