งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

บทที่ 1 กลยุทธ์ของกระบวนการการพัฒนา ซอฟต์แวร์รายบุคคล

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "บทที่ 1 กลยุทธ์ของกระบวนการการพัฒนา ซอฟต์แวร์รายบุคคล"— ใบสำเนางานนำเสนอ:

1 บทที่ 1 กลยุทธ์ของกระบวนการการพัฒนา ซอฟต์แวร์รายบุคคล
(The Personal Process Strategy) Revision History Revision 1.0 ( ) Initial Version Revision 1.1 ( ) Update to reflect recent data Revision 2.0 ( ) Major update and expand the concept of process management Revision ( ) Minor typo fixes and clarify some issues Revision 2.1 ( ) Update the format of the entire slide. Revision 2.2 ( ) Correct some typo and add more contents Revision 2.3 ( ) Correct some typo, make the font more consistent, and translate the CMMI slide into Thai. Revision 2.4 ( ) Update and change font to TH SarabunPSK Revision ( ) Minor edit Revision 2.5 ( ) Update information to 2012 and move some slides to later chapters

2 วัตถุประสงค์การเรียนรู้
เนื้อหา วัตถุประสงค์การเรียนรู้ แนวคิดพื้นฐานของ PSP วัตถุประสงค์ของ PSP ความหมายของ PSP ระเบียบวินัยสำหรับ วิศวกรรมซอฟต์แวร์ การเรียนรู้การใช้ กระบวนการในการ พัฒนาซอฟต์แวร์ รายบุคคล ตัววัดใน PSP การเตรียมตัวสำหรับ กระบวนการในการ พัฒนาซอฟต์แวร์เชิง กลุ่มงาน เพื่อให้ผู้เรียนเข้าใจ กรอบแนวคิดของ PSP เข้าใจวัตถุประสงค์และ ประโยชน์ของ PSP รู้จักระดับของ กระบวนการ PSP มองภาพรวมของ รายวิชา กระบวนการพัฒนา ซอฟต์แวร์เชิงบุคคล Revision 2.2 ปรับหัวข้อ

3 แนวคิดพื้นฐาน อุปกรณ์อิเล็กทรอนิกส์ในปัจจุบันล้วนแล้วแต่ใช้ ไมโครโพรเซสเซอร์เป็นองค์ประกอบโดยมี ซอฟต์แวร์ทำหน้าที่ควบคุมการทำงาน ดังนั้น คุณภาพของซอฟต์แวร์จึงมีความสำคัญ อย่างยิ่งข้อบกพร่อง (Defect) เพียงเล็กน้อย อาจทำให้เกิดความเสียหายแก่ทรัพย์สินหรือ แม้แต่ชิวิตของมนุษย์ได้

4 แนวคิดพื้นฐาน (2) เนื่องจากคุณภาพซอฟต์แวร์ ขึ้นอยู่กับปัจจัย 5 ประการคือ บุคคลผู้พัฒนาซอฟต์แวร์ กระบวนการที่เขาใช้ เครื่องมือที่เขาใช้ สภาพแวดล้อมที่เขาทำงาน วัตถุดิบที่เขาใช้เพื่อสร้างซอฟต์แวร์ (Requirements) Revision 2.2 เปลี่ยนมาใช้ 5 factors

5 แนวคิดพื้นฐาน (3) วิชานี้จึงเน้นที่การปรับปรุงคุณภาพแบบบูรณา การโดยเริ่มต้นจาก บุคคลผู้พัฒนาซอฟต์แวร์ และกระบวนการ เนื่องจาก กระบวนการ เชื่อมโยงปัจจัยที่เหลือเข้าด้วยกัน สิ่งใช้กระบวนการ คือ บุคคลผู้พัฒนาซอฟต์แวร์ การปรับปรุงนั้นเริ่มจากการสำรวจตนเองเพื่อให้ เห็นว่าจะต้องมีประเด็นใดบ้างที่จะต้องปรับปรุง Revision 2.2 เน้นเรื่อง Process + People

6 วัตถุประสงค์ของ PSP เพื่อให้ผู้เรียน
รู้จักตนเองมากขึ้น โดยเฉพาะอย่างยิ่งในเรื่องของ กระบวนการทำงานของตนเอง รู้จักการใช้กระบวนการในการพัฒนาซอฟต์แวร์ รู้วิธีการปรับปรุงกระบวนการของตนเอง เพื่อการฝึกวิศวกรซอฟต์แวร์ให้รับผิดชอบต่อการมี ระเบียบวินัยในกระบวนการซอฟต์แวร์ Revision 2.2 เน้นที่เป้าประสงค์ของวิชา

7 ความหมายของ PSP PSP ย่อมาจาก Personal Software Process
พัฒนาโดย Watts S. Humphrey PSP ถูกออกแบบมาเพื่อช่วยเหลือวิศวกรให้ สามารถผลิตซอฟต์แวร์ที่มีคุณภาพสูง ช่วยในเรื่องการประมาณการ การวางแผน และการพัฒนาซอฟต์แวร์

8 ความหมายของ PSP (2) กระบวนการ PSP เป็นการเก็บข้อมูลโดยการ วัดที่ผลผลิต และกระบวนการพัฒนาของ วิศวกรรายบุคคล เพื่อใช้ในการขับเคลื่อนการเปลี่ยนแปลง พฤติกรรมการทำงานของวิศวกรซอฟต์แวร์ โดยการลดข้อบกพร่อง (Defect) เพิ่มทักษะในการวางแผน (Planning) และการ ประมาณค่าซอฟต์แวร์ (Estimation)

9 ระเบียบวินัยสำหรับวิศวกรรมซอฟต์แวร์
เนื่องจากซอฟต์แวร์ในปัจจุบัน มีขนาดใหญ่ และมีความซับซ้อนมากขึ้น ไม่มีเทคนิคใดๆ ที่จะแก้ปัญหาในเชิงการ พัฒนาซอฟต์แวร์ ได้ในชั่วพริบตา จำเป็นต้องมีทีมพัฒนา/วิศวกรซอฟต์แวร์มือ อาชีพที่มีความสามารถสูง รู้จักและเข้าใจกระบวนการทำงาน

10 ระเบียบวินัยสำหรับวิศวกรรมซอฟต์แวร์ (2)
คุณลักษณะวิศวกรที่มีความสามารถสูง ???? ทำงานผิดพลาดน้อยที่สุด มีความรับผิดชอบในงานของตนเองมากที่สุด มีการวางแผนงาน และประมาณการ ทำงานได้ตามแผนที่วางไว้ เพิ่มประสิทธิภาพ/สมรรถนะของตนเอง ได้อย่าง ต่อเนื่อง มีการประเมินและพัฒนาทักษะ (Skill) ของตนเอง อย่างสม่ำเสมอ

11 หลักการวางแผนและคุณภาพ PSP
คุณภาพของซอฟต์แวร์ พิจารณาจากคุณภาพ ขององค์ประกอบของโปรแกรม (Components) ที่แย่ที่สุด คุณภาพขององค์ประกอบของโปรแกรมถูก กำหนดโดยบุคคลผู้พัฒนาโปรแกรม คุณภาพขององค์ประกอบของโปรแกรมถูก กำหนดโดยกระบวนการที่พัฒนาโปรแกรม หัวใจของคุณภาพคือ ทักษะ การยอมรับ และความรับผิดชอบของผู้พัฒนา

12 หลักการวางแผนและคุณภาพ PSP (2)
วิศวกรแต่ละคนต้องวางแผนงานของตนเอง โดยแผนต้องสอดคล้องกับข้อมูลประสิทธิภาพ การทำงานของตนเอง วิศวกรควรใช้กระบวนการที่ถูกกำหนดหรือ นิยามไว้แล้ว และต้องสามารถวัดประเมินได้ ทั้งนี้เพื่อให้สมรรถนะการทำงานเป็นไปอย่าง สม่ำเสมอ

13 การเรียนรู้การใช้กระบวนการการพัฒนาซอฟต์แวร์รายบุคคล
รูปที่ 1.1 ระดับของกระบวนการ PSP

14 PSP0 : The Baseline Personal Process
เป็นกระบวนการรายบุคคลสำหรับใช้อ้างอิง เปรียบเทียบกับกระบวนการที่ได้รับการปรับปรุง ฝึกปฏิบัติแล้วในภายหลัง แนะนำให้รู้จักวัฎจักร 6 ขั้นตอน (Phase) ในการพัฒนาซอฟต์แวร์ Planning Design Code Compile Test Post mortem (PM)

15 รูปที่ 1.2 PSP0 Process Flow

16 PSP0 : The Baseline Personal Process (2)
โดยการวัดจะมีการบันทึกในแบบฟอร์มของเอกสารที่ กำหนดไว้ รวมถังผลสรุปสุดท้ายจะบันทึกใน Project Plan Summary ในขั้นตอน PSP0.1 เป็นการแนะนำแบบฟอร์ม เอกสาร Process Improvement Proposals (PIP) ที่ให้บันทึกแนวความคิดที่ต้องการใช้เพื่อ พัฒนากระบวนการ

17 PSP1 : Personal Project Management
เป็นการเน้นเทคนิคการจัดการโครงการ รายบุคคล โดยแนะนำการประมาณขนาดของโปรแกรมและ แรงงาน (Effort) ที่คาดว่าจะใช้ การวางแผนงาน (Task planning) การวางแผนตารางเวลา (Schedule planning) และการติดตาม (Tracking) การประมาณขนาดของโปรแกรม และแรงงาน โดยวิธี PROBE (Proxy-Based Estimating)

18 PSP2 : Personal Quality Management
ในขั้นตอน PSP2 มีการเพิ่มการออกแบบ รายบุคคล (Personal design) การทบทวน Code (Code review) เพื่อช่วยให้วิศวกรสามารถพบข้อบกพร่องได้เร็ว ขึ้นในกระบวนการ ทำให้การแก้ปัญหาได้เร็ว และประหยัดเวลา มีการวิเคราะห์ข้อบกพร่องที่พบ และนำมาใช้ เป็นข้อมูลในการสร้างรายการตรวจสอบ (Review checklists)

19 PSP2 : Personal Quality Management (2)
12/13/2019 PSP2 : Personal Quality Management (2) PSP2.1 เป็นการชี้ให้เห็นถึงความจำเป็นของ การออกแบบ โดยเพิ่มส่วนของ Design notation มีการกำหนดต้นแบบ (Template) ของการ ออกแบบ 4 แบบ และวิธีการทบทวนการ ออกแบบ ข้อกำหนดทางการปฏิบัติ (The Operation Specification Template :OST) ข้อกำหนดทางฟังก์ชัน (The Functional Specification Template : FST) ข้อกำหนดทางสถานะ (The State Specification Template : SST) ข้อกำหนดทางตรรกะ (The Logic Specification Template : LST)

20 PSP3 : Cyclic Personal Process
12/13/2019 PSP3 : Cyclic Personal Process PSP3 เป็นขั้นตอนซึ่งชี้ให้เห็นขนาดของ โครงการที่เหมาะสมสำหรับวิศวกรหนึ่งๆ สามารถทำได้ โดยไม่ทำให้คุณภาพงานของ ตนเองลดลง วิศวกรจะเรียนรู้ผลผลิต (Productivity) ของ ตนเอง จากช่วงของขนาดของโครงการ ตั้งแต่โครงการที่เล็กที่สุด ถึงโครงการใหญ่ ที่สุด และ ณ จุดที่ผลผลิตของตนเองเริ่มลดลง หมายถึงจุดที่บ่งบอกถึงขนาดของโครงการที่ ใหญ่ที่สุดที่วิศวกรคนนั้นจะทำได้

21 PSP3 : Cyclic Personal Process (2)
12/13/2019 PSP3 : Cyclic Personal Process (2) โดย PSP3 จะแนะนำกลยุทธ์ในการพัฒนา เป็นวงรอบ นั่นหมายถึงโปรแกรมขนาดใหญ่จะถูกแบ่งเป็นส่วน งานย่อยๆ ในแต่ละวงรอบ ในการพัฒนาตาม ความสามารถของตนเอง และทำส่วนที่เหลือใน วงรอบถัดไป PSP3 มีการแนะนำ High-level design High-level design review Cycle planning Development cycles บนพื้นฐานของ PSP2.1

22 PSP3 : Cyclic Personal Process (3)
12/13/2019 PSP3 : Cyclic Personal Process (3) โดยใช้เอกสารใหม่ 2 แบบฟอร์ม เอกสารสรุปในแต่ละวงรอบ ซึ่งเป็นการบันทึก ผลสรุปของขนาด เวลาที่ใช้ ข้อบกพร่องที่พบ เอกสารที่ติดตามประเด็นปัญหาสำคัญ ซึ่งอาจส่งผล ต่อวงรอบในอนาคต หรือเมื่อพัฒนาทุกวงรอบอย่าง สมบูรณ์แล้ว

23 ตัววัดใน PSP การวัดเวลาที่ใช้ในการพัฒนา (Development time measurement)
การบันทึกข้อบกพร่องที่เกิดขึ้น (Defect recording) การวัดขนาดของโปรแกรม (Size measurement) ข้อมูลสรุปโครงการ (Project plan summary) Revision 2.2 00 บทนำ

24 รูปที่ 1.3 PSP Time Recording Log
12/13/2019 รูปที่ 1.3 PSP Time Recording Log

25 รูปที่ 1.4 ตัวอย่าง PSP Time Recording Log

26 รูปที่ 1.5 PSP Defect Recording Log

27 รูปที่ 1.6 PSP Project Plan Summary
00 บทนำ Revision 2.2 รูปที่ 1.6 PSP Project Plan Summary

28 การเตรียมตัวสำหรับกระบวนการในการพัฒนาซอฟต์แวร์เชิงกลุ่มงาน
00 บทนำ Revision 2.2 การเตรียมตัวสำหรับกระบวนการในการพัฒนาซอฟต์แวร์เชิงกลุ่มงาน เมื่อวิศวกรในทีมพัฒนาซอฟต์แวร์ มีความรู้ และเข้าใจในกระบวนการพัฒนาซอฟต์แวร์ รายบุคคล วิศวกรก็จะมีความพร้อมในการ ทำงานเป็นทีม TSP team PSP แสดงให้เห็นว่างานที่มีคุณภาพ สามารถ ประมาณการค่าใช้จ่าย และเวลาได้ ซึ่งเป็น หลักการที่สำคัญของวิศวกรรมซอฟต์แวร์ ใน Ch14 จะอธิบายเกี่ยวกับ TSP และแสดงให้ เห็นว่า จะต้องเตรียมตัวอย่างไรจาก PSP ไปสู่การเป็นสมาชิกของทีม TSP

29 8 อุปนิสัยสำหรับการเรียนรู้อย่างมีประสิทธิผลสูง
กระตือรือร้น ตั้งเป้าหมายก่อนทำ เรียงลำดับความสำคัญก่อนหลัง คิดหาทางให้ทุกฝ่ายได้รับประโยชน์ร่วมกัน พยายามทำความเข้าใจผู้อื่นก่อนจะให้ผู้อื่น เข้าใจเรา ประสานพลังสร้างสิ่งใหม่ หมั่นฝึกฝน ค้นหาศักยภาพที่แฝงอยู่ภายในตัวเรา

30 เอกสารอ้างอิง เอกสารประกอบการสอนดร. สุรเดช จิตประไพ กุลศาล Revision 2.2 PSP: Personal Software Process แต่งโดย ดร. พรภัทร์ ศิริธรรมกุล จาก Humphrey, W. S. PSP: A self-improvement process for software engineers. Addison- Wesley, ISBN:


ดาวน์โหลด ppt บทที่ 1 กลยุทธ์ของกระบวนการการพัฒนา ซอฟต์แวร์รายบุคคล

งานนำเสนอที่คล้ายกัน


Ads by Google