"Quality in a product or service is not what the supplier puts in. It is what the customer gets out and is willing to pay for.": Peter Ducker

 

เมื่อกล่าวถึงคำว่า

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

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

กล่าวไว้ว่า

"Quality in a product or service is not what the supplier puts in. It is what the customer gets out and is willing to pay for.": Peter Ducker 

Quality guru 

ท่านหนึ่งชื่อ  Philip Crosby  ผู้นำเสนอ  management theory and quality management practices  ี่ เป็นที่ ยอมรับทั่วโลก ได้นิยามถึง  quality ว่าคือ "Conformance to requirements” ซึ่งในทาง software คือ ตรงตามความต้องการของผู้ใช ้(มิใช่ตรงตามความต้องการของผู้เขียนโปรแกรม )

ส่วน

Quality guru อีกท่านหนึ่งชื่อ Joseph M. Juran ผู้เป็นบิดาแห่ง Quality management

ซึ่งเป็นหลักการที่ญี่ปุ่นใช้ในการจัดการด้านคุณภาพมายาวนานจนเป็นผู้นำตลาดในระดับโลกมาถึงทุกวันนี้ท่านกล่าวว่า Quality คือ "Fitness for use." และย้ำว่า Fitness is defined by the customer ดังนั้น การเลือกซื้อโปรแกรมที่ใหญ่หรือเล็ืกเกินไป จึงไม่สามารถสร้าง Quality ให ้เกิดขึ้นได ้

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

ประเด็นที่ ต้องพิจารณา

Software product quality มีอะไรบ้าง

  • Product quality
  • conformance to requirementsือ ตรงตาม user requirement จริงๆ
  • Scalability
  • ามารถ upsize และ downsize ได้อย่างเต็มที่ และไม่บังคับให ้ทุกหน่วยงานที่เล็กต้องใช้ระ้บบที่ใหญ่เทอะทะ เป็นการขี่ช้างจับตั๊กแตน และที่ต้องไม่ลืมคือ  Correctness ของข้อมูล ทั้งการ scale up หรือ scale down ต้องสามารถทำได ้ อย่างร้อยเปอร์เซนต์
  • Completeness กรณีที่ เป็ นโปรแกรมสำเร็จรูปคือ มีความสมบูรณ์ตามที่ได้เสนอ มิใช่โปรแกรมที่่ยังทำไม่เสร็จสมบูรณ์ ซึ่งเป็นการเสี่ยงอย่างยิ่งต่อความสาเร็จของโครงการ
  • Absence of bugs
  • คือไม่เต็มไปด้วยบั๊ก ซึ่งในกรณีนี้มิได ้หมา่ยถึง โปรแกรมจะไม่มีบั๊กเลย และ โปรแกรมใหญ่ๆทุกตัวมี bug ทั้งสิ้น แต่โปรแกรมที่ดี ไม่ควรเจอบั๊กรายวัน หรือ เจอบั๊กแล้วไม่สามารถแก้ได ้ ในเวลาอันควร โดยที่ ระบบไม่สามารถ recover ได้

        ”Bug คืออะไรที่ยังไม่รู ้ ว่ามีอยู่ และอยู่ ตรงไหน และเมื่อใดที่ เจอแล้ว มันจะไม่เป็น bug อีกต่อไป

  • Fault-tolerance

    ือทนต่อความผิดพลาดที่ คาดไม่ถึง ซึ่งโปรแกรมที่ออกแบบมาอย่างดี จะ สามารถปรับตัว และเดินหน้าได ้ ตลอดเวลา ซึ่งการกระทบกระเทือนอาจจะมาจาก Hardware OS DBMS Network รวมทั้งแรงกระทบจากเทคโนโลยีใหม่ๆ ดังนั้น software เหล่านี้จึงต้องมีความสามารถที่ จะ

    1. Extensibility
    2. คือขยายความสามารถให ้ ครอบคลุม environment ใหม่ๆ และเทคโนโลยีใหม่ๆ
    3. Maintainability
    4. คือสามารถบำรุงรักษาได ้ อย่างไม่ขาดช่วง ในทุกๆ่สถานการณ์

    การที่ผู้ผลิตรายใดก็ตามที่อยู่ ในตลาดมายาวนาน และสามารถพัฒนา โปรแกรมอย่างต่อเนื่อง สามารถ

    migrate ระบบของลูกค้ารุ่นเก่าๆ มา version ใหม่ได ้100% และระบบต่างๆก็สามารถ link กันได ้100% เป็นตัวชี้วัดควาีมเป็น fault-tolerance ของ software ได ้เป็นอย่างดี Documentation Software  จะมีคุณภาพดีได ้นั้น จะต้องตอบสนองความต้องการของผู้ใช้จึงจะ สร้างความพึงพอใจของผู้ได ้  หาก software ที่เขียนมาดีมาก แต่ผู้ใช้ไม่สามารถ  นำความสามารถเหล่านั้นมาใช้ ก็ไม่สามารถสร้าง quality ได ้ ดังนั้นคู่มือการใช ้ งานที่ เพียงพอจึงเป็นส่วนสาคัญที่ จะทำให ้ผู้ใช้ได้้เข้าถึงความพึงพอใจสูงสุดไ่้ด้

ที่มา www.crystalsoftwaregroup.com