Skip to content

Latest commit

 

History

History
53 lines (49 loc) · 6.21 KB

2.4.Process improvement.md

File metadata and controls

53 lines (49 loc) · 6.21 KB

Process improvement

Process improvement

  • บริษัทซอฟต์แวร์ส่วนใหญ่ นำ software process improvement มาเป็นแนวทางในการเพิ่มคุณภาพให้กับซอฟต์แวร์ ลดต้นทุนหรือแม้กระทั่งเพิ่มความเร็วในกระบวนการพัฒนาซอฟต์แวร์
  • Process improvement หมายถึง การทำความเข้าใจกระบวนการที่มีอยู่เดิม แล้วทำการเปลี่ยนกระบวนการเหล่านั้น เพื่อเพิ่มคุณภาพผลผลิต และ/หรือลดต้นทุนรวมทั้งระยะเวลาที่ใช้ในการพัฒนา

Approaches to improvement

  • กระบวนการกำหนดวุฒิภาวะ (process maturity approach)
    • มุ่งเน้นการปรับปรุงกระบวนการและการจัดการโครงการและแนะนำการปฏิบัติด้านวิศวกรรมซอฟต์แวร์ที่ดีมาใช้
    • ระดับของ process maturity จะสะท้อนถึงเทคนิคและการจัดการที่ดีในองค์กร
  • The agile approach
    • มุ่งเน้นไปที่การพัฒนาซ้ำ (iterative development) และการลดค่าโสหุ้ย (overheads) ในกระบวนการซอฟต์แวร์
    • ลักษณะเบื้องต้นของวิธีการแบบ agile คือการส่งมอบ functionality และมีการตอบสนองอย่างรวดเร็วต่อการเปลี่ยนแปลงความต้องการของลูกค้า

The process improvement cycle

Process improvement activities

  • Process measurement
    • วัดคุณลักษณะของ process หรือ product ของซอฟต์แวร์อย่างน้อยหนึ่งรายการ
    • การวัดเหล่านี้เป็นพื้นฐานที่ช่วยให้ตัดสินใจว่าการปรับปรุงกระบวนการทำงานได้ดีหรือไม่
  • Process analysis
    • มีการประเมินกระบวนการปัจจุบัน ทำให้สามารถระบุจุดอ่อนของกระบวนการและปัญหาคอขวดที่มี
    • สิ่งที่จะได้คือ Process models (บางครั้งเรียกว่าแผนที่กระบวนการ process maps)
  • Process change
    • Process changes are proposed to address some of the identified process weaknesses. These are introduced and the cycle resumes to collect data about the effectiveness of the changes.
    • ทำการการเปลี่ยนแปลงกระบวนการ เพื่อแก้ไขจุดอ่อนของกระบวนการที่ระบุไว้
    • วนรอบกลับไปทำการรวบรวมข้อมูลเกี่ยวกับประสิทธิภาพของการเปลี่ยนแปลง

Process measurement

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

Process metrics

  • เวลาที่ต้องใช้ในการดำเนินกิจกรรมของกระบวนการ
    • เช่น เวลาตามปฏิทินที่ต้องใช้จนกว่ากระบวนการจะแล้วเสร็จ
  • ทรัพยากรที่ต้องใช้ในการดำเนินกิจกรรมของกระบวนการ
    • เช่น ชั่วโมงทำงานของคนงานทั้งหมด
  • จำนวนเหตุการณ์พิเศษ
    • เช่นจำนวนชิ้นงานที่เสียหาย defect จากการผลิต

Capability maturity levels

The SEI capability maturity model

  • Initial
    • ไม่มีการควบคุม
  • Repeatable
    • มีการกำหนดและใช้งาน Product management procedures
  • Defined
    • มีการกำหนดและใช้งาน Process management procedures and strategies
  • Managed
    • มีการกำหนดและใช้งาน Quality management
  • Optimising
    • มีการกำหนดและใช้งาน Process improvement strategies