การให้คะแนนบุคคลในการตรวจสอบเป็นสิ่งที่ตรงกันข้ามกับระบบที่ประสบความสำเร็จที่สุดที่ฉันเคยร่วมงานด้วยอาจเป็นได้ทั้งหมด แต่เป้าหมายที่ฉันพยายามเข้าถึงมานานกว่า 20 ปีเป็นข้อบกพร่องน้อยลงและเพิ่มประสิทธิภาพการผลิตต่อวิศวกร - ชั่วโมง หากการให้คะแนนบุคคลเป็นเป้าหมายฉันคิดว่าสามารถใช้ความเห็นได้ ฉันไม่เคยเห็นสถานการณ์ที่จำเป็นในฐานะคนงานหรือในฐานะผู้นำ
การศึกษาตามวัตถุประสงค์บางอย่าง (Fagan ฯลฯ ) และภูมิปัญญายอดนิยมจำนวนมากแสดงให้เห็นว่าความสัมพันธ์กับเพื่อนช่วยให้การตรวจสอบโค้ดง่ายขึ้นเพื่อลดข้อบกพร่องและเพิ่มผลผลิต ผู้จัดการที่ทำงานอาจเข้าร่วมในฐานะพนักงาน แต่ไม่ได้เป็นผู้จัดการ ประเด็นของการอภิปรายถูกบันทึกไว้การเปลี่ยนแปลงเพื่อให้ผู้ตรวจสอบพอใจโดยทั่วไปเป็นสิ่งที่ดี แต่ไม่จำเป็น ดังนั้นความสัมพันธ์แบบเพื่อน
ใด ๆเครื่องมืออัตโนมัติที่สามารถได้รับการยอมรับโดยไม่ต้องวิเคราะห์ต่อไปหรือคำพิพากษาเป็นสิ่งที่ดี - ผ้าสำลีใน C, C ++, Java การรวบรวมปกติ คอมไพเลอร์เก่งจริงๆที่ข้อบกพร่องของคอมไพเลอร์ findng การจัดทำเอกสารเบี่ยงเบนในการตรวจสอบอัตโนมัติดูเหมือนฟังก์ชั่นการตรวจสอบอัตโนมัติที่ละเอียดอ่อน รหัสแนวทาง (เช่น Java ไม่) ที่อนุญาตให้เบี่ยงเบนเป็นอันตรายสวย IMHO เหมาะสำหรับการแก้ไขข้อบกพร่องเพื่อให้คุณได้รับใจของเรื่องได้อย่างรวดเร็ว ไม่ค่อยดีนักที่จะพบในโค้ดที่ไม่ดีมีบล็อกที่ไม่แสดงความคิดเห็น 50,000 บรรทัดที่คุณเป็นผู้รับผิดชอบ
กฎบางข้อนั้นโง่ แต่ง่ายต่อการบังคับใช้ ค่าเริ่มต้นสำหรับทุกคำสั่งเปลี่ยนแม้ว่าจะไม่สามารถเข้าถึงได้ตัวอย่างเช่น จากนั้นเป็นเพียงกล่องกาเครื่องหมายและคุณไม่ต้องใช้เวลาและเงินในการทดสอบด้วยค่าที่ไม่ตรงกับสิ่งใด ถ้าคุณมีกฎคุณจะมีความโง่เขลาที่พวกเขาจะเชื่อมโยงความสัมพันธุ์ ผลประโยชน์ของกฎใด ๆ ควรมีค่ากับความโง่เขลาที่มีค่าใช้จ่ายและความสัมพันธ์นั้นควรได้รับการตรวจสอบเป็นระยะ ๆ
ในทางตรงกันข้าม "มันทำงาน" ไม่มีคุณธรรมก่อนการตรวจสอบหรือการป้องกันในการตรวจสอบ หากการพัฒนาเป็นไปตามรูปแบบของน้ำตกคุณต้องการทำการตรวจสอบเมื่อการเขียนโค้ดเสร็จสมบูรณ์ 85% ก่อนที่จะพบข้อผิดพลาดที่ซับซ้อนและได้ผลเพราะการตรวจสอบเป็นวิธีที่ถูกกว่าในการค้นหา เนื่องจากชีวิตจริงไม่ใช่รูปแบบของน้ำตกเมื่อใดจึงต้องมีการทบทวนเป็นงานศิลปะและเป็นบรรทัดฐานทางสังคม ผู้ที่จะอ่านรหัสของคุณและมองหาปัญหาในนั้นเป็นทองคำ การจัดการที่รองรับสิ่งนี้อย่างต่อเนื่องคือไข่มุกที่สูงกว่าราคา ความคิดเห็นควรเป็นเช่น checkins- ต้นและมักจะ
ฉันพบสิ่งเหล่านี้มีประโยชน์:
1) ไม่มีสงครามสไตล์ ตำแหน่งที่เครื่องมือจัดฟันแบบหยิกเปิดควรอยู่ภายใต้การตรวจสอบความสอดคล้องในไฟล์ที่กำหนดเท่านั้น เหมือนกันทั้งหมด. ไม่เป็นไร Ditto ลึกเยื้อง ** และ ** ความกว้างของแท็บ องค์กรส่วนใหญ่พบว่าพวกเขาต้องการมาตรฐานทั่วไปสำหรับแท็บซึ่งใช้เป็นพื้นที่ขนาดใหญ่
2) `มอมแมม
looking
ข้อความที่ไม่
line up is hard to read
สำหรับเนื้อหา '
BTW, K&Rย่อหน้าห้าช่องว่าง (FIVE) ดังนั้นการอุทธรณ์ต่อเจ้าหน้าที่จึงไม่มีค่า เพียงแค่ให้สอดคล้อง
3) สำเนาของหมายเลขไฟล์ที่ไม่มีการเปลี่ยนแปลงและเปิดเผยต่อสาธารณชนที่ควรตรวจสอบควรชี้ไปที่ 72 ชั่วโมงหรือมากกว่าก่อนการตรวจสอบ
4) ไม่มีการออกแบบบนการบิน หากมีปัญหาหรือปัญหาให้จดที่ตั้งและเคลื่อนตัวต่อไป
5) การทดสอบที่ผ่านทุกเส้นทางในสภาพแวดล้อมการพัฒนานั้นเป็นแนวคิดที่ดีมากมากและดี การทดสอบที่ต้องใช้ข้อมูลภายนอกขนาดใหญ่ทรัพยากรฮาร์ดแวร์การใช้เว็บไซต์ของลูกค้า ฯลฯ เป็นการทดสอบที่มีค่าใช้จ่ายสูง
6) รูปแบบไฟล์ที่ไม่ใช่ASCIIเป็นที่ยอมรับหากมีการสร้างแสดงแก้ไข ฯลฯ มีเครื่องมือหรือสร้างขึ้นในช่วงต้นของการพัฒนา นี่เป็นอคติส่วนตัวของฉัน แต่ในโลกที่ระบบปฏิบัติการที่โดดเด่นไม่สามารถหลีกทางให้ตัวเองได้ด้วย RAM น้อยกว่า 1 กิกะไบต์ฉันไม่เข้าใจว่าทำไมไฟล์น้อยกว่าพูดว่า 10 เมกะไบต์ควรเป็นอะไรก็ได้ นอกเหนือจาก ASCII หรือรูปแบบอื่นที่สนับสนุนในเชิงพาณิชย์ มีมาตรฐานสำหรับกราฟิกเสียงภาพยนตร์ปฏิบัติการและเครื่องมือที่ไปกับพวกเขา ไม่มีข้อแก้ตัวสำหรับไฟล์ที่มีการแสดงเลขฐานสองของวัตถุจำนวนหนึ่ง
สำหรับการบำรุงรักษาการปรับโครงสร้างใหม่หรือการพัฒนารหัสที่ปล่อยออกมากลุ่มเพื่อนร่วมงานกลุ่มหนึ่งฉันเคยใช้การตรวจสอบโดยบุคคลอื่นนั่งดูที่หน้าจอและดูความแตกต่างของทั้งเก่าและใหม่เป็นประตูสู่การเช็คอินสาขา ฉันชอบมันราคาถูกเร็วค่อนข้างง่ายที่จะทำ Walk-throughs สำหรับผู้ที่ไม่ได้อ่านรหัสล่วงหน้าสามารถเป็นการศึกษาสำหรับทุกคน แต่ไม่ค่อยปรับปรุงรหัสของนักพัฒนา
หากคุณกระจายทางภูมิศาสตร์การมองที่แตกต่างบนหน้าจอในขณะที่พูดคุยกับคนอื่นที่กำลังมองหาสิ่งเดียวกันจะค่อนข้างง่าย นั่นครอบคลุมคนสองคนที่มองการเปลี่ยนแปลง สำหรับกลุ่มที่มีขนาดใหญ่กว่าซึ่งได้อ่านโค้ดที่เป็นปัญหานั้นหลาย ๆ ไซต์นั้นไม่ได้ยากกว่าในห้องเดียวกัน ห้องหลายห้องเชื่อมต่อกันด้วยหน้าจอคอมพิวเตอร์ที่ใช้ร่วมกันและกล่องสควอชทำงานได้ดีมาก ยิ่งมีไซต์มากขึ้นจำเป็นต้องมีการจัดการการประชุมมากขึ้น ผู้จัดการในฐานะผู้อำนวยความสะดวกสามารถรับรายได้ได้ที่นี่ อย่าลืมสำรวจเว็บไซต์ที่คุณไม่ได้ทำ
จนถึงจุดหนึ่งองค์กรเดียวกันมีการทดสอบหน่วยอัตโนมัติซึ่งใช้เป็นการทดสอบการถดถอย นั่นเป็นสิ่งที่ดีจริงๆ แน่นอนว่าเราเปลี่ยนแพลตฟอร์มและการทดสอบอัตโนมัติถูกทิ้งไว้ข้างหลัง รีวิวจะดีกว่าที่เป็นเปรียวบันทึกความสัมพันธ์ที่มีความสำคัญมากกว่ากระบวนการหรือเครื่องมือ แต่เมื่อคุณได้รับการตรวจสอบการทดสอบหน่วยอัตโนมัติ / การทดสอบการถดถอยเป็นความช่วยเหลือที่สำคัญที่สุดต่อไปในการสร้างซอฟต์แวร์ที่ดี
หากคุณสามารถทดสอบตามความต้องการได้เช่นเดียวกับที่ผู้หญิงพูดใน "เมื่อแฮร์รี่พบแซลลี"ฉันจะได้สิ่งที่เธอมีอยู่!
ความคิดเห็นทั้งหมดต้องมีที่จอดรถเพื่อตรวจจับความต้องการและปัญหาการออกแบบในระดับที่สูงกว่าการเขียนโค้ด เมื่อสิ่งที่ได้รับการยอมรับว่าเป็นของที่จอดรถการอภิปรายควรหยุดในการทบทวน
บางครั้งฉันคิดว่าการตรวจสอบรหัสควรเป็นความคิดเห็นแบบวงจรในการออกแบบฮาร์ดแวร์สาธารณะอย่างละเอียดกวดวิชาในตอนท้ายของกระบวนการเกตเวย์หลังจากที่มันได้รับการสร้างและทดสอบ แต่ความคิดเห็นเกี่ยวกับวงจรมีน้ำหนักมากเพราะการเปลี่ยนวัตถุทางกายภาพมีราคาแพง การทบทวนสถาปัตยกรรมส่วนต่อประสานและเอกสารประกอบเกี่ยวกับซอฟต์แวร์น่าจะมีน้ำหนักมาก รหัสเป็นของเหลวมากขึ้น การตรวจสอบรหัสควรมีน้ำหนักเบา
ในหลาย ๆ วิธีฉันคิดว่าเทคโนโลยีเป็นเรื่องเกี่ยวกับวัฒนธรรมและความคาดหวังเป็นอย่างมากเกี่ยวกับเครื่องมือเฉพาะ คิดว่าการปรับตัวแบบ " Swiss Family Robinson " / Flintstones / McGyver ทั้งหมดที่ทำให้หัวใจมีความสุขและท้าทายจิตใจ เราต้องการสิ่งที่เราจะทำงาน ไม่มีหนทางเดียวที่จะนำไปสู่ความเป็น "ปัญญา" ซึ่งอาจถูกทำให้เป็นนามธรรมและเป็นไปโดยอัตโนมัติโดยโปรแกรมAIปี 1960