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

การพัฒนาซอฟต์แวร์แบบ 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 ที่ต้องเลือกมา จะพิจารณาจากหลักการที่ต้อง ส่งเสริมให้ทีมเกิดความคิดสร้างสรรค์ เกิดพลังขับเคลื่อนในการผลิตซอฟต์แวร์อย่างมีคุณภาพ และเป็นที่ยอมมรับภายในทีมทั้งหมด

 

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

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
วิธีการ Insert , edit ,delete โดยผ่านตัว Model Laravel Framework
โดย makup ส 24 ต.ค. 2020 3:44 pm บอร์ด PHP Knowledge
1
5
ส 24 ต.ค. 2020 3:59 pm โดย makup
ติดปัญหาการค้นหาข้อมูล Listbox ให้เลือกค่าเก่าค้างไว้
โดย makup พฤ 22 ต.ค. 2020 8:05 pm บอร์ด Programming - PHP
3
49
ส 24 ต.ค. 2020 6:27 pm โดย makup
อยากทราบว่า ตรงที่แสดงข้อมูล URL จะให้แสดงเฉพาะ id แค่ตัวเลข ต้องทำอย่างไงครับ
โดย makup พฤ 22 ต.ค. 2020 8:05 pm บอร์ด Programming - PHP
3
29
พฤ 22 ต.ค. 2020 8:16 pm โดย mindphp
วิธีการ Upload file ภาพ ขึ้น Server
โดย makup พฤ 22 ต.ค. 2020 5:41 pm บอร์ด PHP Knowledge
1
33
พฤ 22 ต.ค. 2020 5:54 pm โดย makup
ปัญหา phpBB Error ในหน้า admin vsprintf(): Too few arguments
โดย mindphp พ 21 ต.ค. 2020 5:36 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
0
27
พ 21 ต.ค. 2020 5:36 pm โดย mindphp
สอนเขียนวิธี Upload File Laravel ขึ้น Server
โดย makup พ 21 ต.ค. 2020 3:41 pm บอร์ด PHP Knowledge
2
50
พ 21 ต.ค. 2020 5:25 pm โดย makup
สอบถาม การขึ้นบรรทัดใหม่ ด้วย การนับ len และตัดแบบเต็มคำยังไงคะ
โดย bolue อ 20 ต.ค. 2020 7:22 pm บอร์ด Programming - C/C++ & java & Python
2
51
อ 20 ต.ค. 2020 8:15 pm โดย mindphp
วิธีการทำระบบค้นหา ใน Laravel Framework
โดย makup อ 20 ต.ค. 2020 12:57 pm บอร์ด PHP Knowledge
0
47
อ 20 ต.ค. 2020 12:57 pm โดย makup
เจอปัญหา Publishing failed. You are probably offline. ปัญหาใน Wordpress 5.x
โดย mindphp อ 20 ต.ค. 2020 6:03 am บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
1
32
อ 20 ต.ค. 2020 6:30 am โดย mindphp
แสดงสินค้าที่ขายได้ล่าสุด ด้วย Module Latest Sold Products ใน MooZiiCart
โดย bolue จ 19 ต.ค. 2020 6:53 pm บอร์ด MindPHP News & Feedback
0
104
จ 19 ต.ค. 2020 6:53 pm โดย bolue
ติดปัญหาเรื่อง การทำปุ่ม ค้นหา ที่มีการเชื่อมความสัมพันธ์ Laravel Framework
โดย makup จ 19 ต.ค. 2020 6:23 pm บอร์ด Programming - PHP
3
129
อ 20 ต.ค. 2020 1:32 pm โดย mindphp
วิธีการกำหนด Routing ใน Laravel Framework
โดย makup จ 19 ต.ค. 2020 7:15 am บอร์ด PHP Knowledge
0
123
จ 19 ต.ค. 2020 7:15 am โดย makup
วิธีแสดงพิกัดบนแผนที่ OpenStreetMap ด้วย Laravel Framework
โดย makup อ 18 ต.ค. 2020 6:21 pm บอร์ด PHP Knowledge
0
101
อ 18 ต.ค. 2020 6:21 pm โดย makup
เจอปัญหา ในฐาน Joomla Out of resources when opening file '/tmp/#sql_7059_0.MAD' (Errcode: 24 "Too many open files")
โดย mindphp อ 18 ต.ค. 2020 5:34 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
1
100
อ 18 ต.ค. 2020 5:41 pm โดย mindphp
Re: Mysql เช็คerror ฟิลซ้ำ แสดงข้อความ(PHP)
โดย kimmyth ศ 16 ต.ค. 2020 11:26 pm บอร์ด Programming - PHP
1
105
ส 17 ต.ค. 2020 10:02 am โดย mindphp
Mysql เช็คerror ฟิลซ้ำ แสดงข้อความ
โดย kimmyth ศ 16 ต.ค. 2020 11:22 pm บอร์ด Programming - PHP
0
83
ศ 16 ต.ค. 2020 11:22 pm โดย kimmyth
อยากทราบว่า มีตัวอย่าง OpenstreetMap ในการใช้งานร่วมกับ MySQL , PHP บ้างไหมครับ
โดย makup ศ 16 ต.ค. 2020 7:25 pm บอร์ด Programming - PHP
2
111
ศ 16 ต.ค. 2020 7:48 pm โดย makup
การคำนวณต้นทุนสินค้า แบบ FIFO และ Weighted Average
โดย bolue ศ 16 ต.ค. 2020 6:53 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
120
ศ 16 ต.ค. 2020 6:53 pm โดย bolue
วิธีการเชื่อมความสัมพันธ์ข้อมูล one to many บน Laravel Framework
โดย makup ศ 16 ต.ค. 2020 6:40 pm บอร์ด PHP Knowledge
0
141
ศ 16 ต.ค. 2020 6:40 pm โดย makup
Function Validate Laravel Framework
โดย makup ศ 16 ต.ค. 2020 4:22 pm บอร์ด PHP Knowledge
0
132
ศ 16 ต.ค. 2020 4:22 pm โดย makup