Software Quality

สำหรับคนทำงาน IT ทั้งคนวิเคราะห์ คนเก็บ requirement และทั้งสำหรับลูกค้าที่กำลังมองหา software


Software Quality (หรือเรียกว่า Quality Attribute) ซึ่งมีด้วยกันหลายตัว โดยระบบซอฟต์แวร์ควรจะต้องคำนึกถึง

  • Availability ความพร้อมในการให้บริการ
  • Modifiability สามารถปรับเปลี่ยนความสามารถได้
    • Customizibility customize ได้ (เช่น หน้าจอ) 
    • Extensibility เพิ่มเติมความสามารถ (feature) ภายหลังได้
    • Integrability ทำงานติดต่อกับ legacy system ได้ เน้นด้าน low level เช่น OS, network, protocol
    • Interoperability ทำงานร่วมกันได้ โดยปราศจากข้อจำกัด เน้น high level เช่นทำงานร่วมกับ function ต่างๆ
    • Manageability 
    • Maintainability
    • Portability ทำงานข้ามแพลตฟอร์มได้
    • Scalability รองรับการขยายตัวของการประมวลผลที่เพิ่มขึ้น (vertical, horizontal)
    • Supportability รองรับ เช่น OS, virtual machine, hardware
  • Performance ประสิทธิภาพ, การใช้ resource
  • Security ความปลอยภัย (hardware, network, software)
    • Safety ปลอดภัยต่อชีวิตและทรัพย์สิน สำหรับ software ที่เกี่ยวข้องกับความปลอดภัย เช่น software ควบคุมลิฟต์
  • Testability ทดสอบได้
  • Usability ใช้งานง่าย, ได้ประโยชน์ (การประมวลผล และความรู้สึก)
  • Reliability มีความน่าเชื่อถือ (การประมวลผล และความรู้สึก)
โดยในระบบหนึ่งๆ อาจจะมี Key Quality (หรือเรียกว่า Architectural Driver) ประมาณ 4 - 7 ตัว ถ้ามากกว่า 7 ตัวจะเยอะเกินไป ยกเว้นในกรณีระบบใหญ่ๆ เท่านั้น

No comments:

Post a Comment