ניפוי שגיאות באמצעות ברווז גומי

מתוך המכלול, האנציקלופדיה היהודית
קפיצה לניווט קפיצה לחיפוש
Rubber duck assisting with debugging.jpg

ניפוי שגיאות באמצעות ברווז גומי[1][2], בִּירווּז[3] או מבחן ברווז הגומי[4] הוא מונח הומוריסטי ולא-רשמי בהנדסת תוכנה המתאר שיטת ניפוי שגיאות בתוכנה.

רקע

על פי שיטה זו, מתכנת הנתקל בשגיאה בקוד, יסביר בקפידה את פעילות הקוד שכתב לחפץ דומם, כגון ברווז גומי. הנחת היסוד של התהליך היא, שכאשר יגיע המתכנת לחלק שגוי של הקוד, הוא ישים לב לשגיאה בזכות המאמץ שהשקיע בהסברת הקוד לחפץ הדומם[1]. השיטה מבוססת על כך שהניסיון להסביר יוצר דיסוננס קוגניטיבי; המתכנת מתעמת עם העובדה כי הקוד (בין אם הוא נכתב על ידו, ובין אם לאו) אינו מבצע את שתוכנן לבצע[5].

מקורה של שיטה זו בסיפור אודות מתכנת מומחה אשר היה שומר ברווז גומי בסמוך לשולחנו בכל עת. המתכנת היה מנפה שגיאות קוד בכך שהכריח את עצמו להסביר את הקוד, שורה-אחר-שורה, לברווז. יש הסבורים כי מדובר בדניס ריצ'י או בבריאן קרניגן[1]. למעשה קרניגן מציג שיטה זו בספרו "The Practice of Programming" שבה ממלא דוב צעצוע את תפקידו של ברווז הגומי[6].

שיטה הומוריסטית זו דומה בעיקרה לשיטות אחרות, פורמליות יותר של הנדסת תוכנה, ובכללן:

  • code review כלומר סקירה ביקורתית של הקוד על ידי עמיתים, לעיתים כשלב מקדים ומחייב טרם הפעלת השינויים אותם מציע המתכנת לבסיס הקוד המשותף).
  • pair programming שיטה על פיה התכנות נעשה בזוגות
  • Software walkthrough שיטה על פיה מתכנת אחד מבאר לחברו את הקוד שכתב באמצעות מעבר עליו.

יתרה מכך, ההסבר לברווז גומי דומה ואף יכול לסייע לכתיבת תיעוד לתוכנה.

מונחים דומים

  • מתכנת קרטון או גולם תכנות[7][5]
  • גביע של תשובות[8]
  • לחשוב בקול רם[9]

קישורים חיצוניים

הערות שוליים