Please enable JavaScript.
Coggle requires JavaScript to display documents.
วิธีการพัฒนาซอฟต์แวร์แบบเอ็กซ์พี (Extreme Programming) (12…
วิธีการพัฒนาซอฟต์แวร์แบบเอ็กซ์พี
(Extreme Programming)
Extreme Programming(XP) คืออะไร?
Extreme Programming(XP) ความหมาย
กฏระเบียบการทำงานพัฒนาซอฟแวร์ ที่จะเน้นความสนใจไปที่ คนในทีมทั้งหมด(Manager, Customer, XP Programmer และ XP Coach) เพื่อมุ่งไปสู่เป้าหมายร่วมกัน โดยผ่านหลักการคุณค่าของ XP
แนวคิดหลักของ XP
2.การสื่อสาร (Communication)
3.การปฏิบัติตามระเบียบ (Discipline)
1.เน้นที่ทำงานร่วมกัน (Collabaration)
เมื่อใดควรใช้ XP
1.เมื่อความต้องการไม่คงที่ เปลี่ยนแปลงไปตามเวลา
2.ผู้ใช้ไม่สามารถระบุความต้องการที่ชัดเจน
3.โครงการที่มีความเสี่ยงสูง เช่น โครงการถูกระบุวันเวลาที่จะต้องเสร็จ หรือ เป็นโครงการใหม่สำหรับทั้งอุตสาหกรรมซอฟต์แวร์ นั่นคือ เป็นเทคโนโลยีใหม่
12 หลักการปฏิบัติสำคัญของ XP
5.Continuous integration
6.Design improvement
4.Whole team
7.Small release
3.Test driven development
Coding standard
2.Planning game
9.Corrective code ownership
1.Pair programming
10.Simple design
11.System metaphor
12.Sustainable pace
ข้อดีและข้อเสียของ XP
ข้อดี (Advantages)
3.การทำ on-site customer หรือก็คือการที่ทีมพัฒนาจะปรับปรุงเปลี่ยนแปลงโปรแกรมไปตามความต้องการของ user ตลอดเวลา ซึ่งก็จะเป็นวิธีที่มีความยืดหยุ่นมาก
4.เน้นในเรื่องการมีส่วนร่วมของ user โดยจะมีการออกแบบโปรแกรมตาม user story
2.ต้นทุนในการพัฒนาต่ำเนื่องจากเป็นวิธีที่ไม่ต้องเสียเวลารื้อแก้ใหม่ทั้งหมด
5.user และProgrammer มีความสัมพันธ์ที่ดีต่อกัน
1.ประหยัดเวลาในการพัฒนา ไม่ต้องเสียเวลาในการเปลี่ยนแปลงหรือปรับแก้โปรแกรมใหม่ตั้งแต่ต้น
6.เน้นในเรื่องของ Teamwork และการสื่อสาร
7.ออกแบบง่าย เน้นความคล่องตัวและเรียบง่ายของกระบวนการพัฒนา
8.สามารถ redesign ได้บ่อยครั้ง และมีวิธีที่ทำให้ Code อ่านง่าย ให้สามารถเป็น Document ในตัว
ข้อเสีย (Disadvantages)
2.การเขียนโค้ดในแบบที่อ่านได้ง่าย ซึ่งถือเป็นการทำเอกสารของวิธีนี้นั้น การเขียนโค้ดให้อ่านเข้าใจง่ายเพื่อทำให้เป็นเอกสารสำหรับระบบขนาดใหญ่นั้นไม่สามารถเป็นไปได้ในทางปฏิบัติเนื่องจากว่าโค้ดมีจำนวนมากกว่าหลาย 1000 หน้า การไม่จัดทำเอกสาร จึงเป็นข้อจำกัดที่ทำให้ใช้ได้กับโปรแกรมเล็กๆเท่านั้น
3.กระบวนการพัฒนาที่ขึ้นอยู่กับการ test เป็นส่วนใหญ่แบบนี้ไม่สามารถผลิตโปรแกรมที่มีคุณภาพได้ การออกแบบที่ไม่มีขั้นตอนและไม่มีโครงสร้างในการตรวจทานทำให้เสียค่าใช้จ่ายและเวลาในการ test โดยไม่จำเป็น
1.การพัฒนาวิธีนี้มุ่งเน้นที่การเขียนโค้ดเป็นหลักไม่เน้นที่การออกแบบ ซึ่งวิธีนี้ไม่มีผลกับโปรแกรมขนาดเล็ก แต่สำหรับโปรแกรมขนาดใหญ่หรือการทำงานของโปรแกรมเกี่ยวข้องกับคนจำนวนมาก การออกแบบไม่สมบูรณ์เพียงนิดเดียวก็ถือเป็นหายนะ
คุณค่าและทฤษฤีของ Extreme Programming มีกฎพื้นฐาน
3.ข้อเสนอแนะ (feedback)
4.ความเคารพ (respect)
2.ความเรียบง่าย (simplicity)
1.การติดต่อสื่อสาร(communication)
5.ความกล้าหาญ (courage)