ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

การพัฒนาซอฟต์แวร์แบบ Extreme Programming

รูปการทำงานของ Extreme Programming

 

Extreme Programming คือกฎระเบียบการพัฒนาซอฟต์แวร์ โดยจะเน้นความสนใจไปที่ สมาชิกในทีมทั้งหมด ได้แก่ Manager, Customer, XP Programmer และ XP Coach เพื่อมุ่งไปสู่เป้าหมายร่วมกัน โดยหลักการคุณค่าของ Extreme Programming

 

บทบาทของ XP Programmer จะมีทักษะทางเทคนิคที่กว้างขวาง และหลากหลาย ได้แก่ Design, Analysis, Programming, Database Analysis และ Hardware Infrastructure โดย XP Programmer สามารถแชร์หรือช่วยเหลือ และเเบ่งปันความสามารถให้แก่กันได้ 

 

หลักการปฎิบัติของ Extreme Programming 

  1. The Planning Game : ลูกค้า หรือ โปรแกรมเมอร์จะช่วยกันทำงานเพื่อให้ได้คุณค่าสูงสุดและเร็วที่สุด ซึ่งยังเป็นผลดีกับตัวลูกค้าเองด้วย
  2. Small Releases : จะเริ่มต้นด้วยลูกค้าจะเป็นผู้เลือกรูปแบบของ feature งานที่ให้อัตถะประโยชน์ที่ได้จากการใช้งาน feature สูงสุด และใช้เวลาเร็วที่สุด เพื่อให้ได้ซอฟต์แวร์ออกมาใช้งานก่อน แล้วค่อย ๆ เพิ่ม feature set ใหม่เข้าไป
  3. System Metaphor ในเเต่ละ Projects จะต้องกำหนดนิยามความหมายของคำเฉพาะทางเทคนิคของลูกค้าให้เข้าใจตรงกัน เพื่อให้สามารถสื่อสารกันได้ง่ายขึ้น 
  4. Simple Design พยายามออกแบบให้ง่าย ๆ และทำงานได้ดีก่อน เพื่อให้งานออกมาสำเร็จเร็วที่สุด เพราะความต้องการของลูกค้าสามารถเปลี่ยนแปลงได้ตลอดเวลา
  5. Continuous Testing ก่อนที่โปรแกรมเมอร์ จะเพิ่ม feature ควรจะมีการทดลองคิดจินตนาการ แล้วเขียน Test สำหรับทดสอบ feature นั้นให้ได้ก่อน
  6. Refactoring โปรแกรมเมอร์จะต้องแก้ไข Code ของตัวเองให้ดีขึ้นอยู่เสมอ เช่น Logic ที่เขียน Code ซ้ำ ๆ กันก็จะถูกรวมไว้ที่เดียวกัน
  7. Pair Programming ในทุก ๆ Production code ที่ถูกเขียนขึ้นมาโดยโปรแกรมเมอร์ สองคนที่อยู่บนเครื่องเดียว สองคนนั้นก็จะ Review และเขียน Unit test และทดสอบ Code ที่ถูกเขียนขึ้นมาเอง
  8. Collective Code Ownership ไม่มีบุคคลใดเป็นเจ้าของ Module ใด ๆ คนเดียวทุกคนใจททีมจะต้องคาดหวังว่าจะสามารถทำงานบน Code base เดียวกัน
  9. Continuous Integration(CI) การเปลี่ยนแปลงทั้งหมดจะถูกรวมอยู่ใน Code base อย่างน้อยทุกวัน เเละการทดสอบจะต้องถูกต้อง 100% ทั้งก่อนและหลังการรวม (integration)
  10. 40-Hour Work Week โปรแกรมเมอร์จะต้องกับบ้านตรงเวลา และเมื่อไหร่ก็ตามที่โปรแกรมเมอร์ทำงานล่วงเวลาแสดงว่าจะต้องมีบางสิ่งผิดพลาด
  11.  On-site Customer ทีม XP จะต้องเข้าถึงชีวิตการทำงานจริงๆ ของลูกค้าซึ่ง มันก็คือผู้ใช้งานจริงอยู่ในระบบ
  12. Coding Standards Code ของทุกคนเป็นมาตรฐานเดียวกันหมด เป็นสิ่งที่ทำให้การทำงานง่ายขึ้น และเมื่อทุกคนในทีมอ่าน Code ที่มีรูปแบบการจัดการ และเขียน Code ที่มีรูปแบบไปในทางเดียวกัน 

 

 Extreme Programming คือ หลักการจัดเตรียมการปฏิบัติ ที่เหมาะสมกับบริบทหรือสภาวะเเวดล้อมภายในทีม XP เอง และหลักการปฏิบัติของ XP ที่ต้องเลือกมา จะพิจารณาจากหลักการที่ต้อง ส่งเสริมให้ทีมเกิดความคิดสร้างสรรค์ เกิดพลังขับเคลื่อนในการผลิตซอฟต์แวร์อย่างมีคุณภาพ และเป็นที่ยอมมรับภายในทีมทั้งหมด

 

ช่องทางการศึกษาเพิ่มเติมข่าวสารที่น่าสนใจเกี่ยวกับ : บทความทั่วไป

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ทำความรู้จัก Mindjet MindManager
โดย sirirat อ 19 พฤษภาคม 2020 12:01 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
99
อ 19 พฤษภาคม 2020 12:01 pm โดย sirirat
อยากทราบวิธีการตั้งค่า php เพื่อที่จะให้ cron ใน phpbb สามารถทำงานได้
โดย Ittichai_chupol อ 19 พฤษภาคม 2020 10:16 am บอร์ด Programming - PHP
0
79
อ 19 พฤษภาคม 2020 10:16 am โดย Ittichai_chupol
ขอความช่วยเหลือ PyCharm
โดย kaao_19 จ 18 พฤษภาคม 2020 10:35 pm บอร์ด Programming - C/C++ & java & Python
2
1011
อ 19 พฤษภาคม 2020 1:23 am โดย kaao_19
สรุปการเรียนรู้ประจำวัน 18/05/63
โดย sirirat จ 18 พฤษภาคม 2020 9:42 pm บอร์ด M102 - ศิริรัตน์ ทิพย์น้อย
0
14
จ 18 พฤษภาคม 2020 9:42 pm โดย sirirat
มาทำความรู้จักกับจังหวัดกระบี่ สำหรับผู้สนใจจะมาท่องเที่ยว
โดย sirirat จ 18 พฤษภาคม 2020 5:05 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
2
90
ศ 19 มิ.ย. 2020 1:03 am โดย mindphp
สอบถาม ผมกำลังทำ gitlab CI สร้างไฟล์ yml มาแล้วแต่ตอนทำงานมันเป็นแบบนี้ครับเป็นเพราะอะไรครับ
โดย jirawoot จ 18 พฤษภาคม 2020 5:04 pm บอร์ด Programming - C/C++ & java & Python
1
160
อ 19 พฤษภาคม 2020 7:33 pm โดย jirawoot
วิธีการเดินทางจาก จ.กระบี่ มา กทม.
โดย sirirat จ 18 พฤษภาคม 2020 2:49 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
79
จ 18 พฤษภาคม 2020 2:49 pm โดย sirirat
อยากทราบวิธีการ แปลง ไฟล์ html มาเป็น pdf
โดย Ittichai_chupol จ 18 พฤษภาคม 2020 12:26 pm บอร์ด Programming - PHP
2
92
พ 20 พฤษภาคม 2020 1:39 pm โดย Ittichai_chupol
งานประจำวันที่ 18 พฤษภาคม 2563
โดย sirirat จ 18 พฤษภาคม 2020 10:50 am บอร์ด M102 - ศิริรัตน์ ทิพย์น้อย
3
44
จ 18 พฤษภาคม 2020 6:43 pm โดย sirirat
list ความรู้ที่มี ว่าเคยเรียน หรือ เคยทำอะไรมาบ้าง
โดย sirirat จ 18 พฤษภาคม 2020 10:48 am บอร์ด M102 - ศิริรัตน์ ทิพย์น้อย
3
43
จ 18 พฤษภาคม 2020 11:03 am โดย sirirat
NOTE
โดย sirirat จ 18 พฤษภาคม 2020 10:47 am บอร์ด M102 - ศิริรัตน์ ทิพย์น้อย
0
3
จ 18 พฤษภาคม 2020 10:47 am โดย sirirat
Work's on Hand ศิริรัตน์ ทิพย์น้อย M102
โดย sirirat จ 18 พฤษภาคม 2020 10:46 am บอร์ด M102 - ศิริรัตน์ ทิพย์น้อย
0
8
จ 18 พฤษภาคม 2020 10:46 am โดย sirirat
เปิดให้ลงทะเบียนร้านค้าแล้วที่ www.ไทยชนะ.com พร้อมรับ New Normal ควมคุมโรคระบาดโควิด 19
โดย thatsawan ส 16 พฤษภาคม 2020 6:01 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
121
ส 16 พฤษภาคม 2020 6:01 pm โดย thatsawan
SSL หมดอายุ Enginx โชว์ข้อความ This is a placeholder for the subdomain โดเมน.com ที่มีปัญหา
โดย mindphp พฤ 14 พฤษภาคม 2020 5:58 pm บอร์ด Linux - Web Server
0
165
พฤ 14 พฤษภาคม 2020 5:58 pm โดย mindphp
ตัวช่วยในการคำนวณภาษีรถยนต์
โดย prmindphp พ 13 พฤษภาคม 2020 7:05 pm บอร์ด MindPHP News & Feedback
0
120
พ 13 พฤษภาคม 2020 7:05 pm โดย prmindphp
อยากทราบวิธีการ Export จาก html มาเป็น Excel โดยใช้ php
โดย Ittichai_chupol พ 13 พฤษภาคม 2020 6:26 pm บอร์ด Programming - PHP
2
112
พ 13 พฤษภาคม 2020 7:36 pm โดย Ittichai_chupol
สอบถามวิธีการทำให้หน้าเว็บปรับขนาดตามจอค่ะ
โดย Anonymous อ 12 พฤษภาคม 2020 11:35 pm บอร์ด HTML CSS
4
223
พ 13 พฤษภาคม 2020 8:52 pm โดย บุคคลทั่วไป
ตั้งค่าความกว้างของรูป 100% ในส่วนเสริม Latest News Enhanced ยังไงครับ
โดย toonytoony2004 จ 11 พฤษภาคม 2020 8:30 pm บอร์ด Joomla Development
1
280
อ 12 พฤษภาคม 2020 2:38 pm โดย tsukasaz
สอบถามวิธีการคำนวน sum(prices) แบบรายปี
โดย Anonymous อ 10 พฤษภาคม 2020 9:25 am บอร์ด Programming - PHP
2
611
อ 12 พฤษภาคม 2020 8:34 am โดย บุคคลทั่วไป
สอบถามการเพิ่มข้อมูลลงฐานข้อมูลค่ะ php, mysql
โดย Anonymous ศ 08 พฤษภาคม 2020 11:20 pm บอร์ด Programming - PHP
12
4961
พ 03 มิ.ย. 2020 9:55 am โดย Sirayu