Основною причиною дефектів програмного забезпечення я вважаю програмістів.
Не кажу, що це просто смішно, а тому, що одна з великих проблем, яку я спостерігав на своїй роботі, - це поганий збір вимог у поєднанні з поганим розумінням проблемної області, що спричиняє основні дефекти та зручність використання в проекті.
Частина цього походить від небажання вивчати / розуміти термінологію кінцевого користувача, що спричиняє непорозуміння.
Частина цього надходить із того, щоб говорити про техніку занадто рано в процесі роботи, щоб люди, які не мають поняття, про що ви говорите або чому це важливо.
Найкращим прикладом цього було те, коли я почув, як один із програмістів намагався розібратися, як довго питання / відповіді будуть містити символи ... Я знав, що він намагається з'ясувати, яке поле розміру використовувати в базі даних, але департамент, який вимагає цього, не мав найголовнішого, чому це мало значення - або що пробіли рахували. Нам це здається очевидним, але для них це було справжнім одкровенням.