PSP (Personal Software Process) คือ แบบจําลองการปรับปรุงกระบวนการซอฟตแวรระดับ
บุคคล พัฒนาโดย Watts Humphrey และ SEI (Software Engineering Institute) โดยวัตถุประสงค
ของ PSP ก็คือตองการฝกวิศวกรซอฟตแวรใหรับผิดชอบตอการมีระเบียบวินัยในกระบวนการซอฟตแวร
PSP ถูกออกแบบมาเพื่อชวยเหลือวิศวกรใหสามารถผลิตซอฟตแวรที่มีคุณภาพสูง โดย PSP
จะชวยในดานการประมาณ การวางแผน และการพัฒนาระบบซอฟตแวร คลายกันกับ Capability
Maturity Model (CMM) ของ SEI ที่อยูบนหลักการของการปรับปรุงกระบวนการ แตในขณะที่ CMM
มุงเนนการพัฒนาความสามารถในระดับองคกร , PSP จะมุงเนนการพัฒนาคุณภาพที่ตัวของวิศวกรเปน
ราย บุคคล PSP ปกติจะเปนหลักสูตรซึ่งใชในการเรียนการสอน เชน ในมหาวิทยาลัย หรือฝกอบรมเปนหมูคณะ โดย PSP จะเสนอขั้นตอนที่ถูกกําหนดมาแลวอยางดี มีรูปแบบ และมาตรฐานเพื่อปรับปรุง
กระบวนการการพัฒนาซอฟตแวรเปนรายบุคคล
ในกระบวนการของ PSP เปนการเก็บขอมูลโดยการวัดที่ผลผลิต และกระบวนการพัฒนาของ
ผูพัฒนาซอฟตแวรเปนรายบุคคล และใชการวัดเหลานี้ในการขับเคลื่อนการเปลี่ยนแปลงพฤติกรรมการ
พัฒนาซอฟตแวรของนักพัฒนา โดยวัตถุประสงคหลักของการปรับปรุงกระบวนการการพัฒนา
ซอฟตแวรเปนรายบุคคลนี้ คือ การลดขอบกพรอง (defect) เพิ่มทักษะในการวางแผนและการประมาณ
คา (planning and estimation) ซอฟตแวร
PSP ถูกออกแบบบนหลักการของการวางแผน และคุณภาพ ดังนี้
- คุณภาพของระบบซอฟตแวรถูกพิจารณาจากคุณภาพขององคประกอบของโปรแกรม
- คุณภาพขององคประกอบของโปรแกรมถูกกําหนดโดยบุคคลผูพัฒนามันขึ้นมา
- คุณภาพขององคประกอบของโปรแกรมถูกกําหนดโดยกระบวนการที่พัฒนามัน
- หัวใจของคุณภาพก็คือทักษะ การยอมรับ ความรับผิดชอบของผูพัฒนา
- วิศวกรทุกคนตางกัน ซึ่งเปนผลอยางมาก วิศวกรจึงตองวางแผนงานของพวกเขา และแผน
- เพื่อใหสมรรถนะในการทํางานเปนไปอยางสม่ําเสมอ วิศวกรควรใชกระบวนการที่ถูก
- เพื่อที่จะผลิตผลิตภัณฑที่มีคุณภาพ วิศวกรจะตองรูสึกรับผิดชอบตอคุณภาพของ
ผิดพลาด วิศวกรจะตองใชความพยายามอยางหนักในการรักษาคุณภาพของงาน
- คาใชจายจะลดลงหากตรวจพบขอบกพรองที่จะตองแกไขแตเนิ่นๆในกระบวนการ
- ประสิทธิภาพการทํางานจะมากขึ้นหากปองกันขอบกพรองมากกวาการคนหาแลวแกไข
- ทางที่ดีที่สุดก็คือ ทางที่เร็วและประหยัดที่สุดในการทํางาน
สัญญา หรือเริ่มการทํางาน และจะตองกําหนดกระบวนการไวเปนแผนงาน เพื่อใหเขาใจถึงสมรรถภาพ
ในการทํางานเปนรายบุคคล วิศวกรตองทําการวัดเวลาที่ใชในแตละขั้นตอนของงาน จํานวนขอบกพรอง
ที่สรางขึ้น และที่กําจัดออก ขนาดของซอฟตแวรที่สราง เพื่อใหคุณภาพของผลิตภัณฑเปนไปอยาง
สม่ําเสมอ วิศวกรตองวางแผน วัด และติดตามคุณภาพของผลิตภัณฑ และจะตองมุงเนนที่คุณภาพ
ตั้งแตเริ่มโครงการ ในที่สุดแลว ตองมีการวิเคราะหผลของงานแตละชิ้น และใชผลนี้ในการคนหาวิธีการ
ปรับปรุงกระบวนการของวิศวกรผูนั้นตอไป
ขอดีจากการใช PSP ( จากงานวิจัยของ Will Hayes และคณะ )
1. การประมาณขนาดของซอฟตแวรแมนยําขึ้น 2.5 เทา
2. การประมาณแรงงานแมนยําขึ้น 1.75 เทา
3. คุณภาพของกระบวนการ จํานวนของขอบกพรองที่ถูกคนพบกอนการคอมไพลโปรแกรม
เพิ่มขึ้น 50%
4. คุณภาพของผลิตภัณฑ สามารถคนพบขอบกพรองขณะทํา Unit test พัฒนามากขึ้น 2.5 เทา
5. การเพิ่มผลิตภาพสวนบุคคล (Personal productivity) โดยดูจากคา LOC/HOUR ไดขอสรุปวา
PSP ไมไดสงผลใหคา productivity สูงขึ้น
ขอดอยของการใช PSP
1. ตนทุนคาใชจายที่เพิ่มขึ้น ไดแก คาฝกอบรม เวลาที่ใชในการเรียนรูและทดลองใช ความเสี่ยง
ตออัตตาของนักพัฒนาซอฟตแวรและสภาพอารมณที่จะคงรักษาวินัยการพัฒนาซอฟตแวรนี้ไว
2. การไมชอบการบันทึกขอมูล รูสึกเปนภาระ
3. ไมชอบแบบฟอรม แมแบบ
4. อึดอัดกับการยึดติดกับมาตรฐานการทํางาน
5. ไมคอยมีเครื่องมือที่ชวยกระบวนการ PSP
ที่มา http://www.squared.chula.ac.th/?p=intern&id=86