48
03 กกกกกกกกก PSP0 กกกกกกกกกกกกก 2551, 2552, 2553 กกกกกกกกก กกกกกกกกกกกกกก

03 using psp0

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 03 using psp0

03 การใช้�งาน PSP0

สงวนลิ ขส ทธิ์ � 2551, 2552, 2553โดยส�รเดช้ จิ ตประไพก�ลิศาลิ

Page 2: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 2

หั�วข�อ• การใช้�กระบวนการ• กระบวนการ PSP0• การบ�นท"กข�อมู$ลิ• ต�วอย%างข�อมู$ลิ• ข�อควรระว�งในการบ�นท"กข�อมู$ลิ• สร�ป

Page 3: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 3

การปฏิ บ�ต ตามูกระบวนการ

• ตรวจิเกณฑ์*การเร +มูต�นก%อนเร +มูต�นเฟส• บ�นท"กเวลิาเร +มูต�น• ด-าเน นก จิกรรมูแลิะบ�นท"กข�อบกพร%องท/+พบแลิะแก�ไข• ตรวจิเกณฑ์*การส 0นส�ดก%อนจิะจิบเฟส• บ�นท"กเวลิาส 0นส�ด

บ�นท"กเวลิาเร +มูต�น

ด-าเน นภารก จิ

บ�นท"กข�อบกพร%อง

บ�นท"กเวลิาส 0นส�ด

ตรวจิเกณฑ์*การ

เร +มูต�น

ตรวจิเกณฑ์*การ

ส 0นส�ด

Page 4: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 4

กระบวนการ PSP

• PSP ไมู%ใช้%กระบวนการส-าหัร�บการเข/ยนโปรแกรมู แต%เป2นกระบวนการส-าหัร�บเร/ยนร$ �เร3+องกระบวนการ

• PSP เป2นต�วอย%างของกระบวนการ ซึ่"+งบางคนอาจิน-าไปใช้�ในงานของตนได�เลิย ในขณะท/+บางคนต�องปร�บ PSP ใหั�เหัมูาะสมูก�บสภาพการท-างานของตน

• หัลิ�งศ"กษา PSP แลิ�วเราควรท/+จิะ– ส-ารวจิตรวจิสอบข�อมู$ลิ PSP ของเราเอง– ทบทวนส +งท/+เร/ยนร$ �แลิ�วน-ามูาปร�บใช้�ก�บตนเอง– ปร�บ PSP ใหั�สอดคลิ�องก�บความูต�องการของเรา

Page 5: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 5

กระบวนการ PSP0

• PSP0 เป2นกระบวนการอย%างง%ายๆ ประกอบด�วย– วางแผน– พ�ฒนาโปรแกรมูด�วยว ธิ์/การท/+ใช้�ในป9จิจิ�บ�น– รวบรวมูข�อมู$ลิเก/+ยวก�บเวลิาแลิะข�อบกพร%องจิากงาน– จิ�ดท-ารายงานสร�ป

Page 6: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 6

ว�ตถุ�ประสงค*ของ PSP0

• เพ3+อแสดงใหั�เหั;นถุ"งการใช้�กระบวนการท/+ก-าหันดในการเข/ยนโปรแกรมูขนาดเลิ;ก

• เพ3+อสอดแทรกการว�ดข�0นพ30นฐานเข�าส$%กระบวนการพ�ฒนาซึ่อฟต*แวร*

• เพ3+อใหั�มู/การเปลิ/+ยนแปลิงว ธิ์/ปฏิ บ�ต น�อยท/+ส�ด• เพ3+อรวบรวมูข�อมู$ลิส-าหัร�บใช้�อ�างอ ง (baseline)

Page 7: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 7

กระบวนการ PSP0

ใน PSP0 เราจิะเร/ยนร$ �• การปฏิ บ�ต ตามูกระบวนการท/+ก-าหันดไว�• การบ�นท"กเวลิา• การบ�นท"กข�อบกพร%อง (defect)• ประส ทธิ์ ภาพการท-างานเบ30องต�น

(productivity)• สมูรรถุนะในการท-างาน (performance)

Page 8: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 8

ข�0นตอนของ PSP0

วางแผนออกแบบ

เข/ยนโปรแกรมูคอมูไพลิ*ทดสอบ

สร�ปจิบ

แบบฟอร*มู

ผลิสร�ปโครงการ(ต�วว�ดต%างๆ)

ความูต�องการ

ซึ่อฟต*แวร*

ค$%มู3อการปฏิ บ�ต งาน

ใช้�เป2น

แนวทาง

มูาตรฐาน

ใช้�เป2น

แนวทาง

พ�ฒนา

ด�ดแปลิงมูาจิาก Introduction to PSP and TSP, Software Engineering Institute, 2006

Page 9: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 9

องค*ประกอบของกระบวนการ PSP0

• ค$%มู3อการปฏิ บ�ต 4 กระบวนการ– เพ3+อเป2นแนวทางในการปฏิ บ�ต ตามูกระบวนการ

• แบบฟอร*มู 3 แบบ– เพ3+อช้%วยเก;บรวบรวมูข�อมู$ลิ

• มูาตรฐาน 1 มูาตรฐาน– เพ3+อเป2นแนวทางในการปฏิ บ�ต งาน

• ต�วว�ดพ30นฐาน 2 ต�ว– เวลิา แลิะ ข�อบกพร%อง

Page 10: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 10

ลำ��ดั�บ กิ�จกิรรม ร�ยลำะเอี�ยดั1 วางแผน จิ�ดท-าหัร3อจิ�ดหัารายการความูต�องการ

ประมูาณเวลิาท/+จิะใช้�ในการพ�ฒนาแลิ�วบ�นท"กในแบบฟอร*มูสร�ปแผนโครงการ บ�นท"กเวลิาในแบบฟอร*มูบ�นท"กเวลิา

2 พ�ฒนา ออกแบบโปรแกรมูเข/ยนโปรแกรมูคอมูไพลิ*โปรแกรมู แลิะแก�ไขข�อบกพร%องท/+พบทดสอบโปรแกรมู แลิะแก�ไขข�อบกพร%องท/+พบบ�นท"กเวลิาในแบบฟอร*มูบ�นท"กเวลิา

3 สร�ปจิบ บ�นท"กสร�ปข�อมู$ลิเวลิาแลิะข�อบกพร%องในแบบฟอร*มูสร�ปแผนโครงการใหั�สมูบ$รณ*เกิณฑ์�กิ�รสิ้��นสิ้�ดั โปรแกรมูผ%านการทดสอบอย%างถุ/+ถุ�วน

แบบฟอร*มูสร�ปแผนโครงการมู/ข�อมู$ลิครบถุ�วนสมูบ$รณ*แบบฟอร*มูบ�นท"กเวลิาแลิะแบบฟอร*มูบ�นท"กข�อบกพร%องมู/ข�อมู$ลิครบถุ�วนสมูบ$รณ*

จ�ดัประสิ้งค์� เพ3+อเป2นแนวทางการพ�ฒนาโปรแกรมูระด�บโมูด$ลิ

เกิณฑ์�กิ�รเร��มต้�น โจิทย*หัร3อความูต�องการแบบฟอร*มูสร�ปแผนโครงการ PSP0แบบฟอร*มูบ�นท"กเวลิาแลิะแบบฟอร*มูบ�นท"กข�อบกพร%องมูาตรฐานข�อบกพร%องนาฬิ กาจิ�บเวลิา (ถุ�าจิ-าเป2น)

ค$%มู3อการปฏิ บ�ต งาน PSP0

ท/+มูา: Watts S. Humphrey, PSP: A Self-Improvement Process for Engineers, Addison-Wesley 2005

Page 11: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 11

กระบวนการ PSP0

วางแผน

พ�ฒนา

สร�ปจิบ

PSP0 Process Script

รวบรวมูความูต�องการ

ประมูาณทร�พยากร

PSP0 Planning Script

ออกแบบ

เข/ยนโค�ด

คอมูไพลิ*

ทดสอบ

PSP0 Development Script

ตรวจิข�อมู$ลิข�อบกพร%อง

ตรวจิความูคงเส�นคงวาของข�อมู$ลิ

ตรวจิสอบข�อมู$ลิเวลิา

PSP0 Postmortem Script

Page 12: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 12

เฟสใน PSP0

• PSP0 ประกอบด�วย 6 เฟส:– วางแผน– ออกแบบ– เข/ยนโค�ด– คอมูไพลิ*– ทดสอบ– สร�ป

ออกแบบ

เข/ยนโค�ด

คอมูไพลิ*

ทดสอบ

วางแผน

สร�ป

Page 13: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 13

เฟสใน PSP0

• วางแผน– วางแผนส-าหัร�บการพ�ฒนาโปรแกรมูตามูความู

ต�องการ• ออกแบบ

– จิ�ดท-าแบบตามูความูต�องการ• เข/ยนโปรแกรมู

– แปลิงแบบใหั�เป2นช้�ดค-าส�+ง

Page 14: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 14

เฟสใน PSP0

• คอมูไพลิ*– แปลิงช้�ดค-าส�+งใหั�เป2นโปรแกรมูพร�อมูใช้�งาน

• ทดสอบ– ตรวจิด$ว%าโปรแกรมูท-างานสอดคลิ�องก�บความูต�องการ

หัร3อไมู%• สร�ป

– สร�ปแลิะว เคราะหั*ข�อมู$ลิ

Page 15: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 15

ลิ-าด�บของเฟส• สาเหัต�ท/+เฟสมู/ลิ-าด�บด�งน/0เพราะ

– เราไมู%สามูารถุทดสอบโค�ดก%อนคอมูไพลิ*

– เราไมู%สามูารถุคอมูไพลิ*ก%อนเข/ยนโค�ด– ออกแบบหัลิ�งเข/ยนโค�ดก;เปลิ%า

ประโยช้น*

Design

Code

Compile

Test

Page 16: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 16

เกณฑ์*การเร +มูต�นแลิะส 0นส�ดเฟสิ้ เกิณฑ์�กิ�รเร��มต้�นแลำะสิ้��นสิ้�ดั

วางแผน เร +มูเมู3+อ เร��มกิ�รว�งแผนส 0นส�ดเมู3+อ แผนสิ้มบ"รณ�

ออกแบบ เร +มูเมู3+อ เร��มกิ�รอีอีกิแบบส 0นส�ดเมู3+อ แบบสิ้มบ"รณ�

เข/ยนโค�ด เร +มูเมู3+อ เร��มกิ�รเขี�ยนโค์�ดัส 0นส�ดเมู3+อ โค์�ดัเขี�ยนเสิ้ร%จสิ้มบ"รณ�

คอมูไพลิ* เร +มูเมู3+อ เร��มค์อีมไพลำ�ค์ร��งแรกิส 0นส�ดเมู3+อ ค์อีมไพลำ�ผ(�น

ทดสอบ เร +มูเมู3+อ เร��มทดัสิ้อีบค์ร��งแรกิส 0นส�ดเมู3+อ ผ(�นกิ�รทดัสิ้อีบท��งหมดัโดัยไม(ม�ขี�อีผ�ดัพลำ�ดั

สร�ป เร +มูเมู3+อ เร��มสิ้ร�ปกิ�รท��ง�นส 0นส�ดเมู3+อ กิ�รสิ้ร�ปเสิ้ร%จสิ้��น

จิาก Dan Burton, Introduction to the TSP and the PSP, SEI, 2005

Page 17: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 17

ต�วอย%างท/+ 1 ใช้� PSP0 ก�บการท-างานตามูลิ-าด�บ

• ส-าหัร�บโปรแกรมูขนาดเลิ;กเราก;อาจิจิะใช้�ว ธิ์/ท-างานตามูลิ-าด�บจินเสร;จิ (Waterfall)

วางแผน

พ�ฒนา

สร�ป

ออกแบบ

เข/ยนโค�ด

คอมูไพลิ*

ทดสอบ

Page 18: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 18

ต�วอย%างท/+ 2 ใช้� PSP0 ก�บการเข/ยนแลิะคอมูไพลิ*ท/ลิะส%วน

• ถุ�าโปรแกรมูขนาดใหัญ่%ข"0น เราอาจิจิะออกแบบก%อน

• จิากน�0นแยกเข/ยนโค�ดแลิะคอมูไพลิ* ท/ลิะโมูด$ลิ

• แลิ�วทดสอบหัลิ�งจิากคอมูไพลิ*ท�กโมูด$ลิ

วางแผน

พ�ฒนา

สร�ป

ออกแบบ

เข/ยนโค�ด

คอมูไพลิ*

เข/ยนโค�ด

คอมูไพลิ*

ทดสอบ

Page 19: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 19

ต�วอย%างท/+ 3 ใช้� PSP0 ก�บการเข/ยนคอมูไพลิ*แลิะทดสอบท/ลิะส%วน

• หัร3อ เราอาจิจิะออกแบบแลิ�ว

• ค%อยเข/ยนโค�ด คอมูไพลิ* แลิะทดสอบ ท/ลิะโมูด$ลิ จินครบท�กโมูด$ลิ

วางแผน

พ�ฒนา

สร�ป

ออกแบบ

เข/ยนโค�ด

คอมูไพลิ*

เข/ยนโค�ด

คอมูไพลิ*

ทดสอบทดสอบ

Page 20: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 20

ต�วอย%างท/+ 4 ใช้� PSP0 ก�บการพ�ฒนาเป2นรอบๆ (Iterative)

• ถุ�าโปรแกรมูขนาดใหัญ่%มูาก เราอาจิจิะแยกพ�ฒนาท/ลิะโมูด$ลิ (Iterative) โดย ออกแบบ เข/ยนโค�ด คอมูไพลิ* แลิะทดสอบ ท/ลิะโมูด$ลิจินครบท�กโมูด$ลิ

วางแผน

พ�ฒนา

สร�ป

ออกแบบ

เข/ยนโค�ด

คอมูไพลิ*

เข/ยนโค�ด

คอมูไพลิ*

ทดสอบทดสอบ

ออกแบบ

Page 21: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 21

แบบฟอร*มู PSP0

• ใน PSP0 เราใช้�แบบฟอร*มูต%อไปน/0ในการรวบรวมูข�อมู$ลิ– แบบฟอร*มูสร�ปแผนโครงการ PSP0

• สร�ปผลิการท-างาน– แบบฟอร*มูบ�นท"กเวลิาการท-างาน

• บ�นท"กเวลิาในการท-างาน– แบบฟอร*มูบ�นท"กข�อบกพร%อง

• บ�นท"กรายลิะเอ/ยดข�อบกพร%องท/+เก ดข"0น

Page 22: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 22

แบบฟอร*มูสร�ปแผนโครงการ PSP0

Student DateProgram Program #Instructor Language

Time in Phase (min.) Plan Actual To Date To Date %

Planning

Design

Code

Compile

Test

Postmortem

Total

Page 23: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 23

แบบฟอร*มูสร�ปแผนโครงการ PSP0Defects Injected Actual To Date To Date %

Planning

Design

Code

Compile

Test

Total Development

Page 24: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 24

แบบฟอร*มูสร�ปแผนโครงการ PSP0Defects Removed Actual To Date To Date %

Planning

Design

Code

Compile

Test

Total Development

After Development

Page 25: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 25

แบบฟอร*มูบ�นท"กเวลิาการท-างานStudent DateProgram Program

#Instructor Language

Project

Phase

Start Date and Time

Int. Time

Stop Date and Time

Delta

Time

Comments

Page 26: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 26

แบบฟอร*มูบ�นท"กข�อบกพร%องStudent DateProgram Program

#Instructor Language  Project Date Numb

erType

Inject

Remove Fix Time

Fix Ref.

 Description:

  Project Date Number

Type

Inject

Remove Fix Time

Fix Ref.

 Description:

Page 27: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 27

มูาตรฐานใน PSP0

ใน PSP0 มู/เพ/ยงมูาตรฐานเด/ยวค3อ• มูาตรฐานช้น ดข�อบกพร%อง (Defect Type

Standard ) ใช้�เพ3+อจิ-าแนกช้น ดของข�อบกพร%อง เพ3+อสะดวกในการปร�บปร�งแก�ไข

Page 28: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 28

รห�สิ้ ชน�ดั สิ้��งท��ผ�ดัพลำ�ดั10 Documentation เอกสาร (Document) หัมูายเหัต� (Comment) ข�อความูต%างๆ

(Message) ค$%มู3อ (Manual) 20 Syntax ต�วสะกด (Spelling) เคร3+องหัมูายวรรคตอนเช้%น comma หัร3อ

semicolon พ มูพ*ผ ด (typos) ร$ปแบบค-าส�+ง (instruction formats)

30 Build, Package การจิ�ดการความูเปลิ/+ยนแปลิง (Change management ) ไลิบราร/ (library ) การควบค�มูเวอร*ช้�+น (version control ) โปรเจิคไฟลิ* (project file, make file, etc)

40 Assignment การประกาศต�วแปร (Declaration ) การต�0งช้3+อ (duplicate name )ขอบเขต (scope ) การก-าหันดค%าเร +มูต�น (initialization ) การด-าเน นการเมู3+อเสร;จิส 0นการใช้�งาน (finalization ) ช้%วงค%า (range)

50 Interface การเร/ยกใช้�ฟ9งก*ช้�+น (Procedure calls ) การต ดต%อก�บ input/output (I/O ) ร$ปแบบการแสดงผลิ (User format)

60 Checking ข�อความูแสดงความูผ ดพลิาด (Error messages ) การตรวจิท/+ไมู%เพ/ยงพอ (inadequate checks)

70 Data โครงสร�าง (Structure ) เน30อหัา (content)80 Function ตรรกะ (Logic ) พ�อยเตอร* (pointers ) การวนรอบ (loops ) การเร/ยก

ใช้�ต�วเอง (recursion ) การค-านวณ (computation ) หัน�าท/+การท-างาน (function)

90 System ป9ญ่หัาของระบบซึ่"+งอย$%นอกเหัน3อจิากโปรแกรมู เช้%น Configuration ของระบบปฏิ บ�ต การ ฮาร*ดแวร* หัน%วยความูจิ-า

100

Environment ป9ญ่หัาของ compiler, editor, IDE, test tool หัร3อส +งอ3+นๆ ท/+เก/+ยวข�องก�บ environment ท/+ใช้�ในการพ�ฒนาโปรแกรมู

Page 29: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 29

ต�วว�ดใน PSP0

• ข�อมู$ลิปฐมูภ$มู ท/+เรารวบรวมูใน PSP0 ได�แก%– เวลิาท/+ใช้�ในแต%ลิะเฟส

• เร +มูแลิะส 0นส�ดเมู3+อไร• ถุ$กข�ดจิ�งหัวะไปเท%าไร

– ข�อบกพร%อง• ช้น ดไหัน• เก ดท/+เฟสไหัน• ขจิ�ดในเฟสไหัน• เวลิาท/+ใช้�ในการค�นหัาแลิะขจิ�ดข�อบกพร%อง• รายลิะเอ/ยดของสาเหัต�

Page 30: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 30

ต�วว�ดอ3+นๆ• จิากข�อมู$ลิพ30นฐานท/+เก;บรวบรวมูใน PSP0 เราสามูารถุ

ค-านวณต�วว�ดอ3+นๆท/+เป2นประโยช้น*ได�เช้%น– เปอร*เซึ่;นของเวลิาในแต%ลิะเฟส (To-Date % Time-in-

phase)– เปอร*เซึ่;นของข�อบกพร%องท/+เก ด (To-Date % Defect

injected)– เปอร*เซึ่;นของข�อบกพร%องท/+ขจิ�ด (To-Date % Defect

removed)– ต�นท�นค�ณภาพ (Cost of Quality หัร3อ COQ)– อ�ตราการเก ดข�อบกพร%อง (Defect Injection Rate)– อ�ตราการขจิ�ดข�อบกพร%อง (Defect Removal Rate)– ต�นท�นในการด-าเน นธิ์�รก จิ (Overhead)

Page 31: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 31

ต�วว�ดท/+ได�จิากการค-านวณใน PSP0 โดยจิะใช้�เป2นจิ�ดอ�างอ งในอนาคต

• เปอร*เซึ่;นของเวลิาในแต%ลิะเฟส (To-Date % Time-in-phase)– แสดงถุ"งส�ดส%วนการใช้�เวลิาในแต%ลิะเฟส

• เปอร*เซึ่;นของข�อบกพร%องท/+เก ด (To-Date % Defect injected)– แสดงถุ"งส�ดส%วนของการเก ดข�อบกพร%องในแต%ลิะเฟส

• เปอร*เซึ่;นของข�อบกพร%องท/+ขจิ�ด (To-Date % Defect removed)– แสดงถุ"งส�ดส%วนของการขจิ�ดข�อบกพร%องในแต%ลิะเฟส

Page 32: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 32

ต�วว�ดอ3+นๆท/+สามูารถุค-านวณได�ใน PSP0 แต%ย�งไมู%ใช้�ใน PSP0

• ต�นท�นค�ณภาพ (Cost of Quality หัร3อ COQ)– ส�ดส%วนต�นท�นของความูผ ดพลิาด (Percent Failure COQ)

• แสดงถุ"งค%าใช้�จิ%ายท/+เก ดข"0นเมู3+อมู/ความูบกพร%องเก ดข"0นท-าใหั�จิะต�องเส/ยเวลิา แลิะค%าใช้�จิ%ายในการแก�ไข

• อ�ตราการเก ดข�อบกพร%อง (Defect Injection Rate)– แสดงถุ"งอ�ตราการเก ดข�อบกพร%องต%อหัน%วยเวลิา

• อ�ตราการขจิ�ดข�อบกพร%อง (Defect Removal Rate)– แสดงถุ"งอ�ตราในการขจิ�ดข�อบกพร%องต%อหัน%วยเวลิา

• ต�นท�นในการด-าเน นธิ์�รก จิ (Overhead)– แสดงถุ"งค%าใช้�จิ%ายในการวางแผนแลิะสร�ปโครงากร

Page 33: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 33

ว ธิ์/การบ�นท"กข�อมู$ลิ• บ�นท"กข�อมู$ลิขณะท-างาน• พยายามูบ�นท"กข�อมู$ลิใหั�เท/+ยงตรงแมู%นย-า• บ�นท"กเฟสิ้ท��โปรแกิรมอีย"(ไมู%ใช้%ก จิกรรมูท/+ท-า

Page 34: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 34

ความูส-าค�ญ่ของการบ�นท"กข�อมู$ลิ• ข�อมู$ลิท/+ถุ$กต�อง เท/+ยงตรง แมู%นย-า คงเส�นคงวา

แลิะสมูบ$รณ*จิะช้%วยใหั�สามูารถุใช้�ประโยช้น*จิาก PSP ได�อย%างเต;มูท/+

• ถุ�าขาดข�อมู$ลิท/+ด/เราจิะไมู%สามูารถุ– ว เคราะหั*กระบวนการได�อย%างถุ$กต�อง– ร$ �ได�ว%าเราท-างานเป2นอย%างไร– ปร�บปร�งกระบวนการพ�ฒนาของเราอย%างเหัมูาะสมู

Page 35: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 35

ความูแมู%นย-าก�บความูเท/+ยงตรง• ความูแมู%นย-า

– เก/+ยวข�องก�บการใช้�ต�วว�ดท/+เหัมูาะสมู– เช้%น เราว�ดเวลิาในการท-างานจิากเวลิาท/+ใช้�จิร ง แต%ไมู%ว�ด

จิากระยะเวลิาท/+ถุ$กข�ดจิ�งหัวะ• ความูเท/+ยงตรง

– เก/+ยวข�องก�บการรวบรวมูข�อมู$ลิท/+ระด�บความูลิะเอ/ยดท/+เหัมูาะสมู

– เช้%น เราจิะว�ดระยะเวลิาในหัน%วยนาท/ส-าหัร�บงานท/+คาดว%าจิะใช้�เวลิาไมู%เก น 1 ส�ปดาหั* แต%จิะไมู%ใช้�หัน%วยนาท/ส-าหัร�บงานท/+คาดว%าจิะใช้�เวลิา 1 ป@

Page 36: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 36

ความูแมู%นย-าก�บความูเท/+ยงตรง

แม(นย��แลำะเท��ยงต้รง

ไม(แม(นย��แต้(เท��ยงต้รง

แม(นย��แต้(ไม(เท��ยงต้รง

ไม(แม(นย��แลำะไม(เท��ยงต้รง

Page 37: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 37

ต�วอย%างการบ�นท"กข�อมู$ลิ• ม�นะ ต้��งใจเร�ยนเป2นน�กศ"กษาว ช้า SE514 ใช้� PSP0 ในการเข/ยน

โปรแกรมูเพ3+อส%งอาจิารย*สิ้ะอี�ดั สิ้อีนดั� • มูานะเร +มูการวางแผนโดยบ�นท"กเวลิาเร +มูต�นในแบบฟอร*มูบ�นท"ก

เวลิา• หัลิ�งอ%านโจิทย*ซึ่"+งจิะใหั�เข/ยนโปรแกรมูเพ3+อค-านวณค%าเฉลิ/+ย มูานะ

ประมูาณว%าจิะใช้�เวลิา 120 นาท/ถุ�าเข/ยนด�วยภาษา Java มูานะจิ"งบ�นท"ก 120 ลิงในช้%องเวลิาท�0งหัมูดท/+วางแผนว%าจิะใช้�ของแบบฟอร*มูสร�ปแผนโครงการ

• ระหัว%างท/+ท-าการวางแผนอย$%น� 0น มูาลิ/ได�โทรศ�พท*มูา มูานะได�สนทนาก�บมูาลิ/ร%วมู 2 นาท/แลิ�วกลิ�บมูาท-างานต%อ

• จิากน�0นก;บ�นท"กเวลิาส 0นส�ดการวางแผนในแบบฟอร*มูบ�นท"กเวลิา

Page 38: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 38

ต�วอย%างการบ�นท"กข�อมู$ลิTime Recording Log

Student มูานะ ต�0งใจิเร/ยน Date 9 มู.ค . 2553Program ค-านวณค%าเฉลิ/+ย Program

#1

Instructor อาจิารย*สะอาด สอนด/ Language Java

Project

Phase

Start Date and Time

Int. Time

Stop Date and Time

Delta

Time

Comments

1 Plan 9 มู.ค . 5313:00:04

Page 39: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 39

ต�วอย%างการบ�นท"กข�อมู$ลิPSP0 Project Plan Summary

Student มูานะ ต�0งใจิเร/ยน Date 9 มู.ค .2553

Program ค-านวณค%าเฉลิ/+ย Program #

1

Instructor อาจิารย*สะอาด สอนด/ Language JavaTime in Phase (min.) Plan Actual To Date To Date %

Planning

Design

Code

Compile

Test

Postmortem

Total 120

Page 40: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 40

ต�วอย%างการบ�นท"กข�อมู$ลิTime Recording Log

Student มูานะ ต�0งใจิเร/ยน Date 9 มู.ค . 2553Program ค-านวณค%าเฉลิ/+ย Program

#1

Instructor อาจิารย*สะอาด สอนด/ Language Java

Project

Phase

Start Date and Time

Int. Time

Stop Date and Time

Delta

Time

Comments

1 Plan 9 มู.ค . 5313:00:04

2 9 มู.ค . 5313:04:28

2:24 พ$ดโทรศ�พท*ก�บมูาลิ/

Page 41: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 41

ต�วอย%างการบ�นท"กข�อบกพร%อง• หัลิ�งจิากเข/ยนโปรแกรมูเสร;จิแลิ�ว มูานะเร +มูคอมูไพลิ*

โปรแกรมู• คอมูไพเลิอร*แสดงข�อผ ดพลิาดว%าไมู%พบส�ญ่ลิ�กษณ*

Systemout• สาเหัต�ก;ค3อ ตก . ระหัว%าง System ก�บ out• มูานะแก�ไข แลิ�วคอมูไพลิ*อ/กคร�0ง คราวน/0แสดงข�อผ ด

พลิาดว%าไมู%มู/ package Syste• สาเหัต�ก;ค3อ ระหัว%างการแก�ไขข�อบกพร%องท/+ 1 มูานะได�ท-า

สร�างข�อบกพร%องท/+ 2 ค3อ พ มูพ* . ท�บไปท/+ต�วอ�กษร m

Page 42: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 42

ต�วอย%างการบ�นท"กข�อมู$ลิDefect Recording Log

Student มูานะ ต�0งใจิเร/ยน Date 9 มู.ค . 2553Program ค-านวณค%าเฉลิ/+ย Program # 1Instructor อาจิารย*สะอาด สอนด/ Language Java

  Project

Date Number

Type

Inject

Remove Fix Time

Fix Ref.

  1 9 มู.ค .53

1 20 Code

Compile 1

Description: ตก . ระหัว%าง System แลิะ out บรรท�ดท/+ 10.

  Project

Date Number

Type

Inject Remove Fix Time

Fix Ref.

  1 9 มู.ค .53

2 20 Compile

Compile 1 1

Description: พ มูพ* . ท�บต�วอ�กษร m ระหัว%างแก�ไข Systemout บรรท�ดท/+ 10.

Page 43: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 43

ความูผ ดพลิาดท/+พบบ%อย• ไมู%ได�บ�นท"กเวลิาท�นท/• ข�ามูเฟสหัร3อสลิ�บลิ-าด�บเฟสการท-างาน• ไมู%ได�บ�นท"กข�อบกพร%อง• เข�าใจิผ ดเร3+องเวลิาในการแก�ไขข�อบกพร%อง• ส�บสนระหัว%างเฟสก�บก จิกรรมู• บ�นท"กเฟสผ ดเมู3+อพ�ฒนาแบบท-าจินเสร;จิท/ลิะส%วน

Page 44: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 44

เวลิาในการแก�ไขข�อผ ดพลิาด• เวลิาในการแก�ไขข�อผ ดพลิาด = เวลิาท/+ใช้�ในการค�นหัาแลิะ

แก�ไขข�อบกพร%อง• ต�วอย%าง

10:00 พบข�อบกพร%องระหัว%างคอมูไพลิ*โปรแกรมู10:20 เปBดโปรแกรมูมูาแก�ไข10:30 แก�ไขข�อผ ดพลิาด10:31 คอมูไพลิ*ผ%าน

ค-าถุามู: เวลิาในการแก�ไขข�อผ ดพลิาดเป2นเท%าไร?ค-าตอบ: 11 นาท/

Page 45: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 45

เฟส แลิะ ก จิกรรมูต�วอย%าง:

ระหัว%างคอมูไพลิ*โปรแกรมู ปร/ช้าพบว%าเขาต�องออกแบบแลิะเข/ยนโปรแกรมูบางส%วนใหัมู%

ค-าถุามู: ปร/ช้าท-าก จิกรรมูใด?ค-าตอบ: แก�ไขข�อบกพร%อง ออกแบบแลิะเข/ยนโปรแกรมูค-าถุามู: โปรแกรมูของปร/ช้าอย$%ในเฟสไหัน?ค-าตอบ: คอมูไพลิ*

Page 46: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 46

การบ�นท"กเมู3+อพ�ฒนาโปรแกรมูแบบท-าท/ลิะส%วน

• ปBต แบ%งการพ�ฒนาโปรแกรมูเป2น 2 ส%วนค3อ โมูด$ลิ A แลิะ B

• ปBต เข/ยน คอมูไพลิ* แลิะทดสอบโมูด$ลิจินผ%าน

• ต%อมูาขณะก-าลิ�งเข/ยนโค�ดของโมูด$ลิ B ปBต พบแลิะแก�ไขข�อบกพร%องในโมูด$ลิ A

ค-าถุามู: ข�อบกพร%องถุ$กขจิ�ดในเฟสไหัน

ค-าตอบ: Test (ของโมูด$ลิ A)

ออกแบบ

เข/ยนโค�ด

คอมูไพลิ*

ทดสอบ

เข/ยนโค�ด

คอมูไพลิ*

ทดสอบ

โมูด$ลิ A โมูด$ลิ B

Page 47: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 47

การบ�นท"กข�อบกพร%องท/+เก ดจิากการแก�ไขข�อบกพร%องก%อนหัน�า

• ระหัว%างการทดสอบโปรแกรมู กนกพบว%าเขาเข/ยนตรรกะบางส%วนของโปรแกรมูไมู%ถุ$กต�อง เขาจิ"งออกแบบ แลิะเข/ยนโปรแกรมูส%วนด�งกลิ%าวใหัมู%

• ระหัว%างการคอมูไพลิ*โปรแกรมูท/+แก�ไขใหัมู% คอมูไพเลิอร*แสดงข�อผ ดพลิาด ซึ่"+งเขาก;แก�ไขแลิ�วคอมูไพลิ*ใหัมู%อ/กคร�0ง ปรากฏิว%าคอมูไพลิ*ผ%าน

ค-าถุามู: ข�อผ ดพลิาดใหัมู%น/0เก ดในเฟสไหันค-าตอบ: ทดสอบ (เน3+องจิากเก ดขณะท/+โปรแกรมูอย$%ในเฟสทดสอบ)ค-าถุามู: ข�อผ ดพลิาดใหัมู%น/0ขจิ�ดในเฟสไหันค-าตอบ: ทดสอบ (เน3+องจิากขจิ�ดขณะท/+โปรแกรมูอย$%ในเฟสทดสอบ)

Page 48: 03 using psp0

Revision 2.1 03 PSP0การใช้�งาน 48

สร�ป• เราเร/ยนร$ �ส +งต%อไปน/0ใน PSP0

– หัลิ�กการของกระบวนการ– การว�ดข�0นพ30นฐาน– การเก;บข�อมู$ลิการท-างาน– เก;บข�อมู$ลิเพ3+อใช้�อ�างอ งในอนาคต

• ข�อมู$ลิมู/ค�ณค%าก;ต%อเมู3+อข�อมู$ลิน�0นถุ$กต�อง แมู%นย-า คงเส�นคงวา แลิะครบถุ�วนสมูบ$รณ*