Я сочувствую вам и вашему боссу. Я думаю, что примечательно, что в наше время сделать программное обеспечение «идеальным» было бы настолько дорого, что никто не захотел бы за него платить. В конце концов, клиенты соглашаются с уровнем ошибок, который делает программное обеспечение доступным.
Я внесу простой кусок "метода". Это идея веха с нулевым дефектом . В программных проектах очень часто говорят о вехах, которые представляют важные моменты на временной шкале проекта. В большинстве случаев, которые я видел, люди говорят, что достигли вехи в тот момент, когда они закончили вводить код для функций в этой вехе. В действительности, конечно, это не дает вам представления о том, как продвигаться к завершению.
Веха с нулевым дефектом не пытается иметь нулевые дефекты. Скорее, это означает, что вы не объявляете, что достигли вехи, пока не проведете некоторое тестирование и не будете иметь определенный уровень уверенности в том, что вы знаете, что все ваши ошибки . Вы можете решить исправить некоторые из них, прежде чем объявить этап, или нет, но, по крайней мере, вы знаете, что это такое. Вы определяете, сколько тестов нужно выполнить, и какие ошибки допустимы, но эти вещи заранее согласованы.
Этот тип вехи является гораздо лучшим показателем того, насколько далеко вы продвинулись к завершению, но удивительно, как редко вы видите проекты, управляемые таким образом. Я рекомендую это.