В настоящее время я занимаюсь обновлением проектного документа, чтобы он был правильным и актуальным для будущих разработчиков.
В настоящее время документ фокусируется только на фактах, представляющих дизайн. Нет никакого обоснования для любых представленных решений. Я считаю, что важно найти обоснование, чтобы разработчики знали, почему что-то так, как это, вероятно, повлияет на будущие решения. Я не могу добавить обоснование для всех проектных решений, особенно тех, которые были приняты до того, как я начал работать над проектом, но я делаю все, что могу в этом отделе.
Тем не менее, некоторые из проектных решений, с уважением, являются очень плохими решениями с учетом требований проекта. Хотя есть и хорошие.
Моя первоначальная мысль состояла в том, что я должен включить обсуждение проблем проектирования и потенциальных решений или обходных путей для этих проблем, чтобы сосредоточить внимание будущих сопровождающих, но я не уверен, является ли проектный документ местом для такого типа обсуждения и информации. Я не хочу, чтобы «критика» дизайна привела к «разрыву нового дизайна», когда другие люди работают над этой системой и обновляют документ, поскольку это явно неуместно.
Мой менеджер поддержит любое решение, так что решать мне. Независимо от подхода, который я использую, созданный документ будет официально версионирован и предоставлен разработчикам, работающим над системой, обычно до того, как им будет поручено заняться разработкой. Ожидается, что новый разработчик ознакомится с документами, связанными с данной программной системой, до начала разработки.
Вопросов:
- Должен ли проектный документ придерживаться необработанных фактов («это дизайн») и обоснования («вот почему это дизайн») или его также следует использовать для указания на исправные проблемы с дизайном, которые могут быть проблематичными для будущие разработчики?
- Если проектный документ не должен использоваться для сбора этой информации, какой тип документа должен ее фиксировать, а какой еще должен быть записан с обсуждением обоснований, компромиссов и известных проблем дизайна (которые не являются дефектами, так как дефекты отслеживаются используя другие инструменты)?