Pair Programming and ISO 27001


16

ฉันทำงานในทีมการเขียนโปรแกรม eXtreme และทำการเขียนโปรแกรมแบบคู่มานานกว่า 7 ปีในสภาพแวดล้อมแบบ windows เมื่อเราเริ่มทำมันใครบางคนจะเข้าสู่ระบบด้วยข้อมูลประจำตัวของ windows ของพวกเขาและดังนั้นการเข้าถึงทรัพยากรโดเมนและการควบคุมรุ่นที่เฉพาะเจาะจงมากขึ้นทั้งหมดจะต้องรับผิดชอบต่อผู้ใช้ windows ที่ ในที่สุดเราก็ได้พัฒนาให้บัญชีการจับคู่ windows สำหรับสถานีจับคู่ที่เฉพาะเจาะจง (เช่น pairA, pairB, PairC ฯลฯ …) devs ทั้งหมดรู้รหัสผ่านของบัญชีเหล่านี้ ความรับผิดชอบต่อการกระทำ (เช็คอิน) ทำได้โดยการใส่ชื่อย่อของโปรแกรมเมอร์ไว้ในคอมเม้นต์ระหว่างการคอมมิท

จนถึงตอนนี้สิ่งนี้ใช้ได้ดีสำหรับเรา แต่ปัจจุบัน บริษัท ของฉันกำลังผ่านการตรวจสอบ ISO 27001 และผู้ตรวจสอบบัญชีถูกตั้งค่าสถานะเป็นความเสี่ยง ฉันมีวิธีแก้ปัญหาที่เป็นไปได้หลายอย่างเช่นการสร้างบัญชีการจับคู่สำหรับชุดค่าผสมทุกคู่ แต่ฉันอยากทราบว่ามีคนอื่นประสบปัญหานี้หรือไม่และพวกเขาแก้ไขได้อย่างไร

ผู้ตรวจสอบยอมรับวิธีการแก้ปัญหาอะไรบ้าง


11
ฉันคิดว่าคนส่วนใหญ่ที่ใช้การเขียนโปรแกรมแบบคู่คิดว่า ISO ทั้งหมดนั้นเป็นรูปแบบวันที่และการเข้ารหัสอักขระ
Lars Viklund

6
ทำไมคุณต้องมีบัญชีจับคู่ มันจะไม่ทำงานเพื่อให้แต่ละบัญชีที่คุณสามารถเข้าสู่ระบบบนเครื่องใด ๆ ?
Garrett Hall

คุณไม่สามารถใช้บัญชีบุคคลธรรมดาได้เพราะจะเกิดอะไรขึ้นถ้ามีคนเข้ามาทำงานเร็ว / เข้าห้องน้ำ ฯลฯ และเข้าสู่ระบบในฐานะผู้ใช้รายอื่น?
John Sibly

@JohnSibly คุณหมายถึงในกรณีที่ต้องการทำงานต่อเนื่องในบัญชีนั้นหรือไม่? มิฉะนั้นคุณควรจะสามารถเปิดเซสชันอื่นบนคอมพิวเตอร์ในฐานะผู้ใช้ของคุณเอง
Sinjo

2
@ JohnSibly จากนั้นคนขับออกจากระบบและให้เพื่อนเข้าสู่ระบบ หากพวกเขาไปห้องน้ำให้ล็อคเครื่องหากคุณไม่ไว้ใจเพื่อนร่วมงาน อย่างไรก็ตามไม่มีความน่าเชื่อถือเป็นปัญหาใหญ่ที่ควรแก้ไข
CaffGeek

คำตอบ:


13

ฉันจะถือว่าผู้ตรวจสอบบัญชีต้องการให้นักพัฒนาลงชื่อเข้าใช้ด้วยตนเองและไม่ใช่ "คู่" บางอันที่มีรหัสผ่านที่ใช้ร่วมกัน ความเสี่ยงควรชัดเจน - ผู้พัฒนาเพิ่มโค้ดที่เป็นอันตรายบางอย่างเป็น "PairA" และกำหนดชื่อย่อของบุคคลอื่นไว้ในความคิดเห็น (หรือไม่แสดงความคิดเห็นเลย) คุณติดตามกลับไปยังผู้พัฒนาที่เป็นอันตรายได้อย่างไร

ฉันขอแนะนำให้ใครก็ตามที่กำลังขับรถก่อน (ในเซสชั่น) เข้าสู่ระบบด้วย ID ของตัวเองและทั้งคู่ยังคงใส่ชื่อย่อทั้งสองของพวกเขาในการแสดงความคิดเห็น - ด้วยวิธีนี้รหัสยังคงติดตามกลับไปยังนักพัฒนาที่แท้จริง


+1 นี่คือสิ่งที่ บริษัท ของฉันทำ เรามีทางเลือกของการทบทวนรหัสเพียร์หรือการเขียนโปรแกรมคู่ กรณีการเขียนโปรแกรมคู่เป็นเพียงกรณีพิเศษของการตรวจสอบโดยเพื่อนซึ่งเพียร์ได้รับการทบทวนอย่างต่อเนื่องในขณะที่เขียนโค้ด
Daniel Pryden

@Daniel ขอบคุณที่แบ่งปันประสบการณ์ของคุณ เมื่อเราเริ่มจับคู่ครั้งแรกมันเป็นไดรเวอร์ที่จะเข้าสู่ระบบ อย่างไรก็ตามเซสชันการจับคู่ของเราตอนนี้มีความหลากหลายมากขึ้นและบ่อยครั้งที่คู่จะสลับกันก่อนที่งานจะเสร็จสมบูรณ์อย่างสมบูรณ์ แม้ว่านี่จะไม่เหมาะ แต่บางครั้งก็จำเป็นต้องเตรียมการแลกเปลี่ยนของเราเพราะทุกคนจำเป็นต้องจับคู่กับรหัสการผลิต ซึ่งหมายความว่า 'ไดรเวอร์' ดั้งเดิมต้องเดินออกไปและออกจากระบบ เราสามารถรับรหัสนั้นโดยไม่ต้องเช็คอิน แต่การหยุดชะงักของคู่ที่อาจเกิดขึ้นในระหว่างการตรวจแก้จุดบกพร่องของแอพนั้นไม่ได้ถูกนำมาใช้อย่างเบามือเกินไป
Martin Hughes

7

ฉันจะเก็บบัญชีตามที่เป็นอยู่โดยทั่วไปมีเพียงคนเดียวเท่านั้นที่ขับรถและแม้ว่าคนอื่นจะใช้เครื่อง (อย่างไม่เป็นทางการ) ผู้ที่ลงชื่อเข้าใช้ก็ควรทราบว่าเกิดอะไรขึ้นกับเครื่องของฉัน

เช็คอินยังคงต้องการความคิดเห็นเพื่อแสดงว่าทั้งคู่เป็นใคร


คุณหมายถึงการรักษาบัญชีคู่ ("รักษาบัญชีตามเดิม") หรือใช้แต่ละบัญชี ("บุคคลที่เข้าสู่ระบบ")?
Caleb

@Caleb บุคคลที่เป็นบุคคลที่ลงชื่อเข้าใช้ที่กำลังขับรถอยู่
CaffGeek

6

แทนที่จะสร้างบัญชีแยกต่างหากเพื่อให้งานไม่ได้ล็อคกับผู้ใช้ที่ไม่มีอยู่ให้ใช้ระบบควบคุมเวอร์ชันของคุณ เมื่อทั้งคู่เริ่มทำงานให้สร้างสาขางาน ส่งมอบรหัสไปยังสาขางานทุกครั้งที่การทดสอบผ่าน เมื่องานเสร็จสมบูรณ์ให้ผสานกลับและปิดสาขางาน


5

จนถึงตอนนี้สิ่งนี้ใช้ได้ดีสำหรับเรา แต่ บริษัท ของฉันกำลังผ่านการตรวจสอบ ISO 27001

ISO 27001 หรือไม่ระบบปัจจุบันของคุณใช้งานได้เพราะคุณเป็น บริษัท เล็ก ๆ ที่มีการสื่อสารระดับสูงและไว้วางใจซึ่งกันและกัน สิ่งเหล่านั้นไม่ได้ปรับขนาดได้อย่างดีดังนั้นคุณอาจต้องพิจารณาตัวเลือกอื่น ๆ ในอนาคต

การสร้างบัญชีแยกต่างหากสำหรับทุกคู่ที่เป็นไปได้ดูเหมือนจะมีประโยชน์น้อยลง: คุณต้องมี 90 บัญชีสำหรับกลุ่มนักพัฒนา 10 คนและนักพัฒนา 10 คนแต่ละคนจะต้องรู้ชุดค่าเข้าสู่ระบบ / รหัสผ่านที่แตกต่างกัน 9 รายการ

วิธีแก้ปัญหาในทางปฏิบัติเพียงอย่างเดียวคือการใช้บัญชีส่วนบุคคลตามที่คนอื่นแนะนำและติดตามตัวตนของบุคคลที่สองในคู่ด้วยวิธีอื่น (แสดงความคิดเห็นในการควบคุมเวอร์ชันของคุณกระทำฟิลด์ในระบบติดตามปัญหา ฯลฯ )


2

เพื่อประโยชน์ของ Pete ให้สมาชิกผู้ขับขี่ของทั้งคู่รับเครดิต / ความรับผิดชอบในการผลัก / ส่ง ครั้งต่อไปที่สมาชิกคนอื่นจะขับรถ "คนขับ" จะไม่ทำอะไรที่เขาไม่เห็นด้วยกับนักบิน

การเขียนโปรแกรมเป็นความพยายามร่วมกัน ไม่มีโฉนดโปรแกรมเป็นบุคคล 100% ไม่จำเป็นต้องอดกลั้นที่ต้องการสะท้อนว่าทอมและแฮร์รี่ได้รับการผลักดันและส่งมอบไม่ใช่แค่ทอม ประโยชน์ของการเขียนโปรแกรมคู่มีค่าที่สามารถมองเห็นความแตกต่าง

ผู้ตรวจสอบบัญชีถูกต้องควรหลีกเลี่ยงบัญชี "พูล"

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.