مستند بیصاحب از بیمستندی بدتر است

حرف اصلی این متن ساده است: آن بخش از حافظهی فنی که همراه کد تغییر میکند، وقتی قابل اعتماد میماند که در همان مسیری دیده شود که تغییر کد دیده میشود؛ کنار کامیت، بازبینی کد، یا سند نسخهدار داخل مخزن. باقی مستندها هم باید مسئول مشخص و مخاطب روشن داشته باشند. اگر این شرطها نباشند، مستند بهجای اینکه فهم سیستم را آسان کند، خودش گیجکننده میشود.
منظور از مستند بیصاحب، سندی است که معلوم نیست چه کسی مسئول درستی امروز آن است، از چه مسیری باید اصلاح شود، و آیا هنوز میشود برای تصمیم گرفتن به آن تکیه کرد یا نه.
پس بحث اصلی این نیست که مستند کجا راحتتر نوشته میشود؛ بحث این است که کجا درستتر میماند. سندی که سریع نوشته میشود اما همراه تغییرهای واقعی دیده نمیشود، دیر یا زود از واقعیت عقب میافتد.
در بسیاری از تیمها، بخشی از دانش فنی در جای نامناسب زندگی میکند: دلیل یک تنظیم در ذهن یک نفر است، رفتار حساس یک سرویس در کد هست اما توضیحش نیست، و تصمیمهای قدیمی در صفحههایی ماندهاند که معلوم نیست هنوز معتبرند یا نه. مسئله فقط کمبود مستند نیست؛ مسئله این است که حافظهی تیم پراکنده، بیمسئول و جدا از کار روزمرهی توسعه است.
این نوشته از همین نقطه شروع میکند: کد چه چیزی را میگوید، مستند چه چیزی را باید بگوید، و هر نوع دانش فنی کجا باید بماند تا با تغییر سیستم از واقعیت عقب نیفتد.
