วันเสาร์ที่ 18 พฤษภาคม พ.ศ. 2556

กรณีศึกษา 12

กรณีศึกษา 12 ยุคแห่งการแข่งขันการเขียนโปรแกรมคอมพิวเตอร์ที่ปราศจากข้อผิดพลาด (Bug-free)
          ปัจจุบันนี้ได้มีความยุ่งยากและซับซ้อนด้านผู้ใช้งานคอมพิวเตอร์มากขึ้นเป็นลำดับ พร้อมกับความต้องการที่จะใช้โปรแกรมประยุกต์สำหรับงานที่เหลือค้างได้เพิ่มมากขึ้นด้วย และเป็นการเพิ่มความกดดันให้แผนกจัดการระบบสารสนเทศ (MIS) และนักพัฒนาโปรแกรมให้เร่งพัฒนาระบบใหม่ ๆ ไปสู่มือของผู้ใช้งานให้เร็วที่สุดเท่าที่จะเป็นไปได้นักพัฒนาโปรแกรมเคยตอบสนองความต้องการเช่นนั้นด้วยการตั้งคำถามว่า “คุณต้องการโปรแกรมคอมพิวเตอร์ที่ทำงานเร็ว ๆ หรือคุณต้องการโปรแกรมดี ๆ” ในปัจจุบันผู้ใช้งานและผู้เขียนโปรแกรมที่มีคุณสมบัติที่ดีและเร็วควบคู่กัน กล่าวคือ เขาต้องการโปรแกรมที่ไม่มีปัญหาปราศจากข้อผิดพลาดหรือข้อบกพร่องนั่นเอง
          ดังที่กล่าวไว้ในหนังสือเล่มนี้ว่า หลายบริษัทกำลังหันมาใช้เครื่องมือช่วย คือ ภาษารุ่นที่ 4 (4GL) และวิศวกรรมซอฟต์แวร์ที่ใช้เครื่องมือคอมพิวเตอร์เข้าช่วย (CASE) และโปรแกรมเชิงวัตถุ (OOP) เพื่อลดเวลาการพัฒนาโปรแกรมสำหรับการใช้งานในด้านต่าง ๆ ทำให้ผู้พัฒนาโปรแกรมมองเห็นผลกำไรที่รวดเร็ว คุ้มค่าและน่าสนใจมากขึ้น
          อย่างไรก็ตามโปรแกรมที่พัฒนาตามแนวทางของโปรแกรมเชิงวัตถุ (OOP) นั้น ดูเหมือนจะเป็นฐานให้เกิดปัญหาใหม่ ๆ ทางด้านการพัฒนาซอฟต์แวร์อีกด้วย ปัญหาโปรแกรมที่เกิดจากการพัฒนาโปรแกรมเชิงวัตถุ (OOP) ถือกันว่ามีเปอร์เซ็นต์ที่สูงมาก กล่าวคือ เฉพาะปัญหาที่เกิดจากนักพัฒนาโปรแกรมชาวอเมริกันปี ค.ศ.1990 ปีเดียวมีถึง 150 ล้านปัญหาด้วยกัน และมักจะพบบ่อย ๆ ว่าปัญหาที่เกิดขึ้นนั้นได้ซ่อนอยู่ในโปรแกรมใช้งานที่มีความสำคัญอย่างยิ่ง
สิ่งที่น่ากลัวที่สุดก็คือ ปัญหาความบกพร่องของคอมพิวเตอร์นั้นสามารถก่อให้เกิดอันตรายแก่ผู้ใช้ได้ หลายปีที่ผ่านมานี้มีผู้เคราะห์ร้าย 3 คนที่ได้รับบาดเจ็บอย่างถาวรและอีกคนหนึ่งเสียชีวิต เนื่องจากการได้รับรังสีเอ็กซเรย์ (X-ray) นานเกินไป ดังนั้นจึงสามารถกล่าวได้ว่า พวกเขาได้รับผลกระทบจากปัญหาด้านซอฟต์แวร์ในเครื่องมือการแพทย์ที่ใช้สำหรับการวินิจโรคนั่นเอง ถึงแม้ว่าปัญหาดังกล่าวจะไม่ส่งผลกระทบโดยตรงต่อบุคลากรในบริษัทแต่ปัญหานั้นก็สามารถทำให้ภาพพจน์ของบริษัทต่อสาธารณชนเสียหายอย่างต่อเนื่องได้ เช่น บริษัท Ashton-tate ไม่สามารถสร้างภาพพจน์ให้ดีได้เหมือนเดิม จากการจำหน่ายสินค้าโปรแกรมฐานข้อมูลชื่อดีเบสรุ่น 4 ซึ่งมีปัญหาอย่างมาก และในที่สุดบริษัท Borland International ก็เข้ายึดครองบริษัท Ashton-tate
แม้ว่าผู้ใช้อาจจะไม่ได้รับความเสียหายจากปัญหาดังกล่าว แต่ตามทัศนะของนายเกรกอรี่ ไปป ผู้อำนวยการฝ่ายกฎหมายด้านเทคโนโลยีของบริษัท ติบูรินซิสเต็มซ์ กล่าวว่า “ปัญหาบางอย่างอาจจะใช้เวลาครึ่งวันสำหรับการแก้ไขในขั้นตอนการผลิต และอาจจะต้องใช้เวลาหนึ่งอาทิตย์หรือมากกว่านั้นในการแก้ไขเมื่อโปรแกรมนั้นสำเร็จออกไปสู่ตลาดแล้ว”
เพื่อเป็นการช่วยเหลือผู้ขายและองค์การค้าซอฟต์แวร์ให้สามารถพัฒนาโปรแกรมที่ปราศจากข้อผิดพลาดในเบื้องต้น จึงได้มีการพัฒนาชุดเครื่องมือที่ใช้ทดสอบซอฟต์แวร์อย่างอัตโนมัติ (Automatic software) ซึ่งเป้ฯเครื่องมือที่ใช้เทคโนโลยีชั้นสูงเพื่อกำจัดความผิดพลาดด้วย Source code ดังกล่าว อย่างไรก็ตามการตอบสนองของตลาดต่อเครื่องมือทดสอบซอฟต์แวร์นี้ได้ผลเป็นที่น่าพอใจ
บริษัทต่างๆ ได้ค้นพบกรรมวิธีอื่น ๆ อีกมากที่จะพัฒนาซอฟต์แวร์เพื่อไม่ให้เกิดปัญหาต่อผู้ใช้ ซึ่งในการใช้งานนั้นจะเกี่ยวข้องกับโปรแกรมที่สามารถใช้งานร่วมกันได้หลาย ๆ คน แท้จริงแล้วเครื่องตรวจสอบปัญหาที่ดีที่สุดก็คือ ผู้ใช้ปลายทาง และประสบการณ์การใช้งานนั่นเอง ไม่ได้หมายถึงเฉพาะนักพัฒนาโปรแกรมเท่านั้นที่มุ่งพัฒนาโปรแกรมและคิดว่าโปรแกรมจะมีความสามารถในการทำอะไรได้บ้างหรือข้อผิดพลาดควรจะเกิดจากอะไร ทั้งนี้สามัญสำนึกและประสบการณ์ของนักเขียนโปรแกรมเองอาจทำให้มองข้ามบางสิ่งบางอย่างไปได้
องค์กรบางแห่งได้พัฒนา “ห้องปฏิบัติการใช้” เพื่อทำการทดสอบตัวโปรแกรม โดยจะทำการพัฒนาโปรแกรมในห้องนี้ก่อนนำออกสู่ตลาด ห้องปฏิบัติการเหล่านี้จะบันทึกภาพถ่ายผู้ใช้ปลายทางในขณะที่ใช้งานซอฟต์แวร์ใหม่ ๆ เพื่อช่วยให้ผู้พัฒนาโปรแกรมค้นพบปัญหา และยังสามารถช่วยให้ตัดสินใจได้ว่าผู้ใช้ปลายทางจะสามารถใช้โปรแกรมใหม่เหล่านั้นในการทำงานได้อย่างแท้จริงหรือไม่
ผู้ค้าในเชิงพาณิชย์ส่วนใหญ่มักจะนำผู้ใช้ปลายทางเข้ามามีส่วนเกี่ยวข้องในการค้นหาปัญหาของผลิตภัณฑ์ซอฟต์แวร์ด้วย โดยเฉพาะช่วยในการทดสอบขั้นแรก (อัลฟา) และขั้นถัดมา (เบต้า) อย่างไรก็ตามผู้จัดการทั่วไป และผู้จัดการด้านระบบสารสนเทศเพื่อการจัดการ (MIS) มีความเห็นสอดคล้องกันว่า วิธีที่เปิดโอกาสให้ผู้ใช้เข้ามาร่วมทดสอบโปรแกรมนี้ไม่สามารถเป็นไปได้ทุกกรณี เพราะว่าการประสานงานกับผู้ใช้และผู้พัฒนาโปรแกรมนั้นเป็นไปได้ค่อนข้างลำบาก
Clem Hergenhan ประธานบริษัท CSF ซึ่งเป็นบริษัทที่ปรึกษาทางด้านโทรคมนาคม ที่ซัมเมอร์วิล รัฐนิวยอร์ก กล่าวว่า “ถ้าท่านปล่อยให้ส่วนประกอบของซอฟต์แวร์ที่มีปัญหาออกสู่ตลาดแล้ว จะเป็นโอกาสที่จะสร้างความเสียหายมากกว่า และจะย้อนกลับมาหาท่านเสมือนการสะท้อนสิ่งที่ไม่ดีใส่หน้าท่านนั่นเอง”

ปัญหาและข้ออภิปราย
1. ซอฟต์แวร์ (Software) ที่ปราศจากข้อผิดพลาด (Bug-free) จะช่วยประหยัดเงินให้องค์การในระยะยาวได้อย่างไร
ตอบ ได้ เพราะไม่ทำหั้ยองกรณ์เกิดความเสียหาย ลูกค้าพึงพอใจในสินค้า เกิดผลกำไรในระยะยาว

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

3. ท่านคิดว่าอะไรดีกว่ากัน ระหว่างการส่งเสริมนักพัฒนาโปรแกรมให้ลดการทดสอบโปรแกรมลง รวมทั้งลดการแก้ไขโปรแกรมโดยเฉพาะจุดบกพร่องของโปรแกรม (Bug) เพื่อให้สามารถจัดส่งโปรแกรมไปให้ลูกค้าใช้งานได้โดยเร็ว กับการยอมรับให้มีโปรแกรมใช้งานตกค้างเหลืออยู่เป็นเวลานาน เพื่อทำการแก้ไขพัฒนาโปรแกรมให้สมบูรณ์เสียก่อนที่จะส่งไปให้ลูกค้าใช้งาน จงอธิบายพร้อมให้เหตุผลประกอบ ตอบ การยอมรับให้มีโปรแกรมใช้งานตกค้างเหลืออยู่เป็นเวลานาน เพื่อทำการแก้ไขพัฒนาโปรแกรมให้สมบูรณ์เสียก่อนที่จะส่งไปให้ลูกค้าใช้งานเป็นสิ่งที่ดีกว่า เพราะถ้าท่านปล่อยให้ส่วนประกอบของซอฟต์แวร์ที่มีปัญหาออกสู่ตลาดแล้ว จะเป็นโอกาสที่จะสร้างความเสียหายมากกว่า และจะย้อนกลับมาหาท่านเสมือนการสะท้อนสิ่งที่ไม่ดีใส่หน้าท่านนั่นเอง”

ไม่มีความคิดเห็น:

แสดงความคิดเห็น