ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

การบำรุงรักษาซอฟต์แวร์ (Software Maintenance)

 

การบำรุงรักษาซอฟต์แวร์
การบำรุงรักษาซอฟต์แวร์ Software Maintenance

 

การบำรุงรักษาซอฟต์แวร์ (software Maintenance) คือการเปลี่ยนแปลงซอฟต์แวร์ภายหลังจากการส่งมอบเพื่อแก้ไขปัญหาหรือข้อผิดพลาดเพื่อนำมาปรับปรุงให้มีประสิทธิภาพ หรือ การดักแปลงซอฟต์แวร์ให้มีความเหมาะสมกับสภาพเเวดล้อมที่เปลี่ยนแปลงไป โดยจะมีแแนวทางการบำรุงรักษา ดังบทความนี้ 

 

แนวทางของการบำรุงรักษา

  1. การทำความเข้าใจโปรแกรม (Program Comprehension)
  2. การฟื้นฟูสภาพระบบ (System Rejuvenation)
    • การปรับเอกสารใหม่
    • การปรับโครงการสร้างใหม่
    • การวิศวกรรมย้อนกลับ
    • การปรับรื้อใหม่

 

ทางเลือกระหว่างการบำรุงรักษากับการพัฒนาซอฟต์แวร์ใหม่ ควรพิจารณาข้อต่อไปนี้

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

 

ประเภทของการบำรุงรักษาซอฟต์แวร์

รายละเอียด

Corrective Maintenance

- ควบคุมการทำงานแต่ละฟังก์ชันของซอฟต์แวร์ ให้ยังคงถูกต้องต้องเป็นประจำวัน

- การแก้ไขข้อผิดพลาดทันทีที่ค้นพบ

Adaptive Maintenance

- เมื่อมีการซ่อมบำรุงส่วนหนึ่งและมีผลกระทบกับบางส่วน จึงต้องใช้วิธีนี้

- เพื่อดัดแปลงส่วนที่ได้รับผลกระทบให้สอดคล้องกับส่วนที่ปรับปรุงไปก่อนหน้า

Perfective Maintenance

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

Preventive Maintenance

- การปรับปรุงที่ไม่ให้การทำงานของซอฟต์แวร์ล้มเหลว เช่น การตรวจหาข้อผิดพลาดร้ายแรง การเขียนโปรแกรมรองรับข้อผิดพลาดลักษณะต่าง ๆ เพิ่มเติม หรือ การเขียน Code เพื่อดักจับข้อผิดพลาดขณะรับโปรแกรมเพิ่มเติม

 

กระบวนการบำรุงรักษาซอฟต์แวร์

กระบวนการบำรุงรักษาซอฟต์แวร์
กระบวนการบำรุงรักษาซอฟต์แวร์

 

เสนอให้เปลี่ยนแปลง

  • การยื่นข้อเสนอให้ปรับปรุงเปลี่ยนแปลงระบบจากผู้ใช้งาน

 

จำแนกและระบุประเภทของการบำรุงรักษา

  • ทีมงานจะเป็นผู้พิจารณาในการอนุมัติ หรือไม่
  • หากทีมงานอนุมัติต้องมีการประเมินเบื้องต้นด้วย

 

ออกแบบ

  • ทำหน้าที่ออกแบบส่วนที่ต้องปรับ อาจจะแยกตามโมดูลที่ต้องการเท่านั้น
  • เลือกโมดูลที่ส่งผลกระทบน้อยที่สุดโปรแกรม
  • แก้ไขในเอกสารด้วย เมื่อทดสอบเสร็จแล้ว

 

ดำเนินงานซ่อมบำรุง

  • เป็นขั้นตอนในการลงมือแก้ไข Code
  • เป็นช่วงเวลาที่อันตรายให้ระมัดระวัง

 

ทดสอบระบบ

  • ทดสอบในทุกหน่วยเพื่อให้ได้ข้อมูลที่เป็นจริงที่สุด

 

ทดสอบการยอมรับ

  • เพื่อทดสอบว่า ซอฟต์แวร์ รุ่นใหม่ที่ปรับปรุงแล้วเป็นที่ยอมรับของลูกค้า

 

ส่งมอบ วัดประสิทธิภาพของซอฟต์แวร์

  • มีการติดตั้ง และจัดอบรม

 

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

 

ช่องทางการศึกษาเพิ่มเติมข่าวสารที่น่าสนใจเกี่ยวกับ : บทความทั่วไป

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ชอบ Feature นี้ของ Joomla ตัวช่วยตรวจสอบ โครงสร้างตารางเวลามีการอัพเกรด
โดย mindphp พ 13 พ.ย. 2019 8:41 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
0
19
พ 13 พ.ย. 2019 8:41 pm โดย mindphp
งานประจำวันที่ 13 พฤศจิกายน 2562
โดย numtan5839 พ 13 พ.ย. 2019 10:09 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
4
23
พ 13 พ.ย. 2019 9:31 pm โดย thatsawan
Generate QR Code
โดย chaiyasitpraphut พ 13 พ.ย. 2019 7:03 pm บอร์ด MindPHP News / Feedback
0
18
พ 13 พ.ย. 2019 7:03 pm โดย chaiyasitpraphut
การใช้ CSS selectors เพื่ออ้างอิง h1 tag ที่อยุ่ข้างใน div
โดย bankjittapol พ 13 พ.ย. 2019 6:49 pm บอร์ด CSS Knowledge
1
8
พ 13 พ.ย. 2019 6:52 pm โดย mindphp
ประโยชน์ของ IOT - internet of things
โดย chaiyasitpraphut พ 13 พ.ย. 2019 6:49 pm บอร์ด IOT - Internet of things
0
5
พ 13 พ.ย. 2019 6:49 pm โดย chaiyasitpraphut
วิธีการเพิ่ม css ให้กับ class โดยใช้ js
โดย Ittichai_chupol พ 13 พ.ย. 2019 6:41 pm บอร์ด Jquery & Ajax Knowledge
0
6
พ 13 พ.ย. 2019 6:41 pm โดย Ittichai_chupol
ติดตั้ง Broad ESP8266 ลงบน Arduino IDE
โดย chaiyasitpraphut พ 13 พ.ย. 2019 6:37 pm บอร์ด IOT - Internet of things
0
3
พ 13 พ.ย. 2019 6:37 pm โดย chaiyasitpraphut
ทำไมตั้งค่าเมล แบบ POP3 ใน Android ไม่ได้ครับ
โดย chatee supasand พ 13 พ.ย. 2019 6:29 pm บอร์ด Mobile Programming - Android, iOS, Window Phone
2
13
พ 13 พ.ย. 2019 7:01 pm โดย chatee supasand
VDO - โปรแกรมคำนวณอัตราแลกเปลี่ยนสกุลเงิน
โดย numtan5839 พฤ 07 พ.ย. 2019 4:05 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
20
112
พ 13 พ.ย. 2019 6:24 pm โดย mindphp
แนะนำ tools Online
โดย chaiyasitpraphut พ 13 พ.ย. 2019 6:21 pm บอร์ด MindPHP News / Feedback
0
8
พ 13 พ.ย. 2019 6:21 pm โดย chaiyasitpraphut
ปัญหาในการใช้งานเครื่องมือออนไลน์
โดย chaiyasitpraphut พ 13 พ.ย. 2019 6:21 pm บอร์ด MindPHP News / Feedback
0
7
พ 13 พ.ย. 2019 6:21 pm โดย chaiyasitpraphut
แนะนำ Website Free Icon
โดย numtan5839 พ 13 พ.ย. 2019 5:59 pm บอร์ด Graphic design
0
12
พ 13 พ.ย. 2019 5:59 pm โดย numtan5839
เพชรแท้จะไม่ติดสีหมึก จริงหรือ
โดย jiraporn66 พ 13 พ.ย. 2019 4:52 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
7
พ 13 พ.ย. 2019 4:52 pm โดย jiraporn66
VDO - Program Check Tracking Thailand Post
โดย numtan5839 อ 12 พ.ย. 2019 2:12 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
3
18
พ 13 พ.ย. 2019 4:51 pm โดย thatsawan
NB‑IoT คืออะไร
โดย chaiyasitpraphut พ 13 พ.ย. 2019 4:46 pm บอร์ด IOT - Internet of things
0
5
พ 13 พ.ย. 2019 4:46 pm โดย chaiyasitpraphut
งานประจำวันที่ 13 พฤศจิกายน 2562
โดย chaiyasitpraphut พ 13 พ.ย. 2019 9:50 am บอร์ด MT35 - นายชัยยะสิทธิ์ พระพุทธ
7
40
พ 13 พ.ย. 2019 7:22 pm โดย chaiyasitpraphut
report แจ้งปัญหา เวลาสมัครกดเลือกภาษา แล้วเด้งกลับไปหน้าก่อนหน้า
โดย chatee supasand พ 13 พ.ย. 2019 4:04 pm บอร์ด MindPHP News / Feedback
2
12
พ 13 พ.ย. 2019 6:59 pm โดย mindphp
ระหว่าง joomla กับ wordpress แตกต่างกันยังไงครับ
โดย aloha11x พ 13 พ.ย. 2019 2:12 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
0
11
พ 13 พ.ย. 2019 2:12 pm โดย aloha11x
แนะนำ website สำหรับปรับขนาดรูปภาพ
โดย numtan5839 พ 13 พ.ย. 2019 2:07 pm บอร์ด Graphic design
0
9
พ 13 พ.ย. 2019 2:07 pm โดย numtan5839
Application Blynk
โดย chaiyasitpraphut พ 13 พ.ย. 2019 1:37 pm บอร์ด IOT - Internet of things
0
6
พ 13 พ.ย. 2019 1:37 pm โดย chaiyasitpraphut