ความแตกต่างระหว่าง Agile กับ V Methodologies (Model)
Agile vs V Methodologies (Model)
ปัจจุบันมีหลายวิธีในการพัฒนาซอฟต์แวร์ที่ใช้ในอุตสาหกรรมซอฟต์แวร์ V Methodologies (V-Model) เป็นส่วนขยายของวิธีการพัฒนาน้ำตก (ซึ่งเป็นหนึ่งในวิธีแรกสุด) จุดสนใจหลักของ V-Model คือให้น้ำหนักที่เท่ากันกับการเขียนโค้ดและการทดสอบ รูปแบบ Agile เป็นรูปแบบการพัฒนาซอฟต์แวร์ล่าสุดที่นำเสนอเพื่อแก้ไขปัญหาข้อบกพร่องที่พบในโมเดลที่มีอยู่ เป้าหมายหลักของ Agile คือการผสานรวมการทดสอบให้เร็วที่สุดเท่าที่จะเป็นไปได้และปล่อยผลิตภัณฑ์เวอร์ชันที่ทำงานได้เร็วมากโดยแบ่งระบบออกเป็นส่วนย่อยที่มีขนาดเล็กและสามารถจัดการได้
V Methodologies (Model) คืออะไร?
V Methodologies (V-Model) เป็นรูปแบบการพัฒนาซอฟต์แวร์ ถือเป็นส่วนขยายของรูปแบบการพัฒนาซอฟต์แวร์แบบน้ำตกโดยทั่วไป V-Model ใช้ความสัมพันธ์ระหว่างขั้นตอนที่กำหนดไว้ในแบบจำลอง Waterfall (เช่นรูปแบบน้ำตก) V- รุ่นขั้นตอนลงตามแนวทแยงมุมและจากนั้นย้ายกลับขึ้น (หลังจากขั้นตอนการเขียนโปรแกรม), การขึ้นรูปของตัวอักษร V. รูปร่าง V นี้ถูกสร้างขึ้นเพื่อแสดงความสัมพันธ์ระหว่างแต่ละขั้นตอนของ การพัฒนา / การออกแบบและขั้นตอนการทดสอบที่สอดคล้องกัน เวลาและระดับของสิ่งที่เป็นนามธรรมแสดงด้วยแกนนอนและแนวตั้งตามลำดับ
การทดสอบ (ทางขึ้นไปทางขวาของ V) จะกระทำเพื่อการตรวจสอบขณะที่ใช้ขั้นตอนการออกแบบที่สอดคล้องกัน (ทางขึ้นลงด้านซ้ายของ V) เพื่อตรวจสอบความถูกต้อง ใน V-Model น้ำหนักที่เท่ากันจะได้รับสำหรับการเขียนโค้ดและการทดสอบ V-Model แนะนำให้สร้างเอกสารทดสอบพร้อมกับเอกสาร / รหัสการออกแบบ ตัวอย่างเช่นควรมีการเขียนเอกสารการทดสอบการผสานรวมเมื่อมีการจัดทำเอกสารการออกแบบในระดับสูงและการทดสอบหน่วยควรได้รับการบันทึกไว้ในขณะที่มีการวางแผนการออกแบบโดยละเอียด ซึ่งหมายความว่าต้องมีการสร้างแผนปฏิบัติการสำหรับการทดสอบแต่ละครั้งก่อนที่จะรอจนกว่าการพัฒนาจะเสร็จสิ้นเพื่อที่จะสามารถส่งมอบให้กับทีมทดสอบได้
Agile คืออะไร?
Agile เป็นวิธีการพัฒนาซอฟต์แวร์ล่าสุดเมื่อใช้แถลงการณ์เปรียว นี้ได้รับการพัฒนาเพื่อแก้ปัญหาข้อบกพร่องบางอย่างในแบบดั้งเดิม V-Model และน้ำตกวิธีการพัฒนาซอฟต์แวร์ วิธีเปรียวขึ้นอยู่กับการให้ความสำคัญกับการมีส่วนร่วมของลูกค้าในช่วงต้นของวัฏจักรการพัฒนา แนะนำให้ใช้การทดสอบโดยลูกค้าในช่วงต้นและบ่อยที่สุดเท่าที่จะเป็นไปได้ การทดสอบจะดำเนินการในแต่ละจุดเมื่อมีเวอร์ชันเสถียรภาพพร้อมใช้งาน รากฐานของ Agile ขึ้นอยู่กับการเริ่มต้นการทดสอบตั้งแต่เริ่มต้นโครงการและดำเนินการต่อไปจนถึงจุดจบของโครงการค่าที่สำคัญของ Agile คือ "คุณภาพคือความรับผิดชอบของทีม" ซึ่งเน้นว่าคุณภาพของซอฟต์แวร์เป็นความรับผิดชอบของทั้งทีม (ไม่ใช่ทีมทดสอบเท่านั้น) อีกแง่มุมที่สำคัญอื่น ๆ ของ Agile คือการทำลายซอฟต์แวร์ลงในชิ้นส่วนที่จัดการได้ง่ายและส่งมอบให้กับลูกค้าได้อย่างรวดเร็ว การส่งมอบผลิตภัณฑ์ที่ทำงานเป็นสิ่งที่สำคัญที่สุด จากนั้นทีมงานยังคงปรับปรุงซอฟต์แวร์และดำเนินการต่อเนื่องในแต่ละขั้นตอนที่สำคัญ นี่คือความสำเร็จโดยมีวงจรการปล่อยสั้นมากเรียกว่า sprints และได้รับข้อเสนอแนะสำหรับการปรับปรุงในตอนท้ายของแต่ละรอบ ผู้ร่วมให้ข้อมูลที่ไม่มีการมีปฏิสัมพันธ์กับทีมเช่นนักพัฒนาซอฟต์แวร์และผู้ทดสอบในวิธีการก่อนหน้าขณะนี้ทำงานร่วมกันภายในรูปแบบ Agile
อะไรคือความแตกต่างระหว่าง Agile กับ V Methodologies (Model)?
รุ่น Agile ให้ผลิตภัณฑ์เวอร์ชันที่ทำงานได้เร็วกว่ารุ่น V-Model เมื่อมีการเพิ่มคุณลักษณะมากขึ้นลูกค้าจะได้รับประโยชน์บางอย่างในระยะแรก รอบการทดสอบของ Agile ค่อนข้างสั้นเมื่อเทียบกับ V-Model เนื่องจากการทดสอบทำควบคู่ไปกับการพัฒนา เปรียวเป็นรูปแบบเชิงรุก (เนื่องจากวงจรที่สั้นมาก) เมื่อเทียบกับ V-Model ที่มีปฏิกิริยามากขึ้น V-Model มีความแข็งและมีความยืดหยุ่นน้อยกว่ารุ่น Agile เนื่องจากข้อดีทั้งหมด Agile จึงเป็นที่ต้องการมากกว่ารุ่น V ในขณะนี้