กลับไปหน้าบทความ

อ่าน 2 นาที

การเขียนโปรแกรมแบบทีม

ในวิศวกรรมซอฟต์แวร์การเขียนโปรแกรมแบบทีมเป็น กลยุทธ์ การจัดการโครงการสำหรับการประสานงานการกระจายงานในโครงการพัฒนาซอฟต์แวร์คอมพิวเตอร์ ซึ่งเกี่ยวข้องกับการมอบหมาย โปรแกรมเมอร์...

การเขียนโปรแกรมแบบทีม

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

วิธีการจัดการทีมแบบดั้งเดิม

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

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

แนวโน้มสมัยใหม่: โปรแกรมเมอร์หลายคนรับผิดชอบงานย่อยหนึ่งงาน

วิธีการแบบเก่าๆ เหล่านั้นประสบปัญหาต่างๆ เช่น ต้นทุนที่พุ่งสูงขึ้นอย่างควบคุมไม่ได้เมื่อระบบขยายใหญ่ขึ้น และกำหนดการที่ไม่เป็นไปตามเป้าหมายเวลาในการออกสู่ตลาด ปัญหาเหล่านี้จึงนำไปสู่เทคนิคต่างๆ เช่น การเขียนโปรแกรมแบบคู่ (pair programming ) การเขียนโปรแกรมแบบกลุ่ม ( mob programmingหรือensemble programming ) รวมถึงโครงสร้างวงจรชีวิตของระบบแบบใหม่ เช่น เกลียวโบห์ม (Boehm spiral ) การกำหนดรายละเอียดของวิธีการใหม่เหล่านี้เริ่มต้นขึ้นในช่วงกลางทศวรรษ 1980 และยังคงดำเนินต่อไปจนถึงปัจจุบัน กลยุทธ์เหล่านี้หลายอย่างเกี่ยวข้องกับโปรแกรมเมอร์หลายคนทำงานร่วมกันในโค้ดต้นฉบับเดียวกันแทนที่จะรับผิดชอบ งานแต่ละอย่าง แยกกันตัวอย่างเช่น ใน "การเขียนโปรแกรมแบบคู่" ความรับผิดชอบต่อผลิตภัณฑ์ที่ได้จะถูกแบ่งอย่างเท่าเทียมกันระหว่างโปรแกรมเมอร์สองคนที่ทำงานร่วมกันในงานย่อยที่ได้รับมอบหมาย ข้อดีของวิธีการนี้ ได้แก่ การชดเชยความรู้ที่ไม่เพียงพอของโปรแกรมเมอร์คนหนึ่งด้วยความสามารถในด้านเฉพาะของโปรแกรมเมอร์อีกคนหนึ่ง นอกจากนี้ ความรับผิดชอบที่แบ่งปันกันยังช่วยเพิ่มแรงจูงใจในการบรรลุเป้าหมายด้านกำหนดเวลาและคุณภาพของโครงการอีกด้วย

เทคนิคนี้มักใช้ในวิธีการเขียนโปรแกรมแบบใหม่ ๆ ที่เน้น เทคนิคการเขียนโปรแกรม เชิงวัตถุเช่นRational Unified ProcessและExtreme Programming (XP) ซึ่งมักใช้ร่วมกับวิธีการจัดทำเอกสารการออกแบบ เช่นUnified Modelling Language (UML) ในภาษาการเขียนโปรแกรมเชิงวัตถุ ฟังก์ชันการทำงานของซอฟต์แวร์จะประกอบเป็นหน่วยย่อยที่แยกจากกัน (เรียกว่าคลาสสำหรับองค์ประกอบการทำงาน และแพ็กเกจสำหรับกลุ่มของคลาสที่เชื่อมโยงกันซึ่งทำหน้าที่เฉพาะ) สองภาษาที่รู้จักกันดีที่สุดคือC++และJavaสิ่งนี้เอื้อต่อการแบ่งโครงการเขียนโปรแกรมออกเป็นทีมย่อยได้เป็นอย่างดี แม้ว่าปัญหาในการรวมผลิตภัณฑ์ที่ได้หลังจากเสร็จสิ้นแต่ละงานย่อยยังคงเกิดขึ้นบ่อยครั้งก็ตาม

การเขียนโปรแกรมมือถือ

เซสชั่นการเขียนโปรแกรมกลุ่มฝรั่งเศส

การเขียนโปรแกรมแบบกลุ่ม (บางครั้งเรียกอย่างไม่เป็นทางการว่าmobbing , ensemble programmingหรือposse programming [ 1 ] ) เป็นวิธีการพัฒนาซอฟต์แวร์ที่ทั้งทีมทำงานในสิ่งเดียวกัน ในเวลาเดียวกัน ในพื้นที่เดียวกัน และบนคอมพิวเตอร์เครื่องเดียวกัน ซึ่งคล้ายกับการเขียนโปรแกรมแบบคู่ที่คนสองคนนั่งอยู่ที่คอมพิวเตอร์เครื่องเดียวกันและทำงานร่วมกันในโค้ดเดียวกันในเวลาเดียวกัน ด้วยการเขียนโปรแกรมแบบกลุ่ม การทำงานร่วมกันจะขยายไปถึงทุกคนในทีม ในขณะที่ยังคงใช้คอมพิวเตอร์เครื่องเดียวในการเขียนโค้ดและป้อนโค้ดลงในฐานโค้ด[ 2 ]

แนวคิดพื้นฐานของการเขียนโปรแกรมแบบกลุ่มนั้นเรียบง่าย: ทั้งทีมทำงานร่วมกันเป็นทีมในงานเดียวในแต่ละครั้ง นั่นคือ: หนึ่งทีม – หนึ่งคีย์บอร์ด (ที่ใช้งานอยู่) – หนึ่งหน้าจอ (โปรเจ็กเตอร์แน่นอน) [ 3 ]

— มาร์คัส แฮมมาร์เบิร์ก, การเขียนโปรแกรมแบบกลุ่ม – ทีมเต็มกำลัง เต็มที่

สร้างขึ้นบนหลักการของการผลิตแบบลีนการเขียนโปรแกรมแบบสุดขั้วและการพัฒนาซอฟต์แวร์แบบลีนการใช้คำว่า "การเขียนโปรแกรมแบบกลุ่ม" ในช่วงแรกเกิดขึ้นในExtreme Programming Perspectives [ 4 ]

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

ดูเพิ่มเติม

  • การเขียนโปรแกรมมือถือ
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Team_programming&oldid=1346293844#Mob_programming "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ การเขียนโปรแกรมแบบทีม

ในวิศวกรรมซอฟต์แวร์การเขียนโปรแกรมแบบทีมเป็น กลยุทธ์ การจัดการโครงการสำหรับการประสานงานการกระจายงานในโครงการพัฒนาซอฟต์แวร์คอมพิวเตอร์ ซึ่งเกี่ยวข้องกับการมอบหมาย โปรแกรมเมอร์...

วิธีการจัดการทีมแบบดั้งเดิม

การพัฒนาซอฟต์แวร์แบบดั้งเดิมมักเกี่ยวข้องกับ โปรแกรมเมอร์ หลายคน ทำงานแยกกันในส่วนต่างๆ ของระบบคอมพิวเตอร์สำหรับโครงการที่มีขอบเขตและขนาดใหญ่ ซึ่งเป็นวิธี การแบ่งงานกันทำ เห็นได้ชัดว่า...

แนวโน้มสมัยใหม่: โปรแกรมเมอร์หลายคนรับผิดชอบงานย่อยหนึ่งงาน

วิธีการแบบเก่าๆ เหล่านั้นประสบปัญหาต่างๆ เช่น ต้นทุนที่พุ่งสูงขึ้นอย่างควบคุมไม่ได้เมื่อระบบขยายใหญ่ขึ้น และกำหนดการที่ไม่เป็นไปตามเป้าหมายเวลาในการออกสู่ตลาด ปัญหาเหล่านี้จึงนำไปสู่เทคนิคต่างๆ เช่น การ เขียนโปรแกรมแบบคู่ (pair programming )...

การเขียนโปรแกรมมือถือ

การเขียนโปรแกรมแบบกลุ่ม (บางครั้งเรียกอย่างไม่เป็นทางการว่า mobbing , ensemble programming หรือ posse programming [ 1 ] ) เป็นวิธีการพัฒนาซอฟต์แวร์ที่ทั้งทีมทำงานในสิ่งเดียวกัน ในเวลาเดียวกัน ในพื้นที่เดียวกัน และบนคอมพิวเตอร์เครื่องเดียวกัน ซึ่งคล้ายกับ...