Как задокументировать плохой проект, никого не опозорив?

Я принял участие в катастрофическом фриланс-проекте, полном плохих решений. Я оставил это. В рамках передачи я должен «задокументировать свою работу», что, по сути, означает, что я должен задокументировать весь проект (я первый, кто написал какие-либо документы по нему).

Теперь мне нужно объяснить, как идут дела, его структуру, архитектуру, рабочие процессы разработки и т. д. В нем полно ошибок. Теперь, когда я пишу это, я потрясен и также удивлен.

Профессиональное поведение состояло бы в том, что я просто пишу документ, не упоминая ничего, что я думаю об этом. Теперь проблема в том, что мое имя будет в этом документе, и, таким образом, будет казаться, что плохие решения будут хотя бы частично моими.

Конечно, я мог бы объяснить или хотя бы косвенно упомянуть, что «нет, это было не мое решение». Я мог бы, но это было бы явно крайне непрофессионально.

Я мог бы также написать документы, не упоминая ничего о каких-либо обязанностях. Проблема в том, что в этом случае это опозорило бы и мое имя. Я также могу подозревать, что мои (бывшие) коллеги будут склонны стыдить меня, вместо того чтобы признать свои ошибки. Но я явно не могу посрамить и их имя.

Как разрешить это противоречие? Или, в более широком смысле: каков оптимальный, профессиональный выход в такой ситуации?

Вы поднимали эти опасения, когда проект работал? Если вы ничего не сделали в то время, то вы замешаны в проблемах и должны быть названы. Оглядываться назад — это замечательная вещь, из которой мы можем извлечь уроки, но обвинять всех вокруг, если вы просто позволили этому случиться, — значит попытаться полностью отклонить проблему, в решение которой вы действительно внесли свой вклад.
В прошлом я избегал обвинять людей, говоря такие вещи, как; некоторый унаследованный устаревший код не соответствовал текущим стандартам кодирования:
Или же ; сокращенный этап интеграции означал, что не все запланированные тесты могли быть выполнены. То же самое с отсутствующими тестовыми данными. Требования клиентов поступили слишком поздно, чтобы их можно было удовлетворительно выполнить. Нехватка времени означала, что навыки персонала не соответствовали требованиям. Такие вещи.

Ответы (3)

Ваша документация должна быть на 100% нейтральной. Как вы упомянули, вы не должны вносить свой личный вклад в документацию относительно того, как вы относитесь к проекту, людям, которые работали над проектом, деталям дизайна и т. д. люди, которые были на проекте, с вами все будет в порядке, так как будет ясно, что не вы принимали плохие решения.

Что касается вашей новой документации, то это можно сделать и без упоминания кого-либо конкретного. Например, «Том решил денормализовать таблицы базы данных, чтобы упростить написание кода, но в конце концов он стал неуправляемым и с ним стало трудно работать» можно было бы переписать как «Решение, принятое в отношении хранения данных, состояло в том, чтобы денормализовать базу данных. таблицы, чтобы уменьшить количество кода, необходимого для написания на стороне приложения. Однако данными стало очень трудно управлять из-за отсутствия хороших отношений и структуры между данными и таблицами». Это позволяет вам по-прежнему четко сообщать о проблеме и о том, что произошло, не обвиняя.

Возложение вины происходит, когда вы предоставляете электронные письма, протоколы собраний и что-либо еще, чтобы создать бумажный след того, как были приняты решения. Опять же, вы остаетесь нейтральным как человек, который делает документацию, но вы предоставляете любую соответствующую информацию и позволяете читателю прийти к логическому заключению на основе содержания. Если есть цепочка электронных писем, в которых вы не согласны с решением или вы даже не участвовали в решении, которое закончилось неудачей, любой, кто читает электронное письмо, поймет, что это не ваша вина.

Обычно вы говорите что-то вроде «я решил», «мы решили», «наш руководитель группы решил». Если вы говорите «было принято решение сделать Х» или «было решено сделать Х», особенно если становится очевидным, что это было плохое решение, это совершенно ясно говорит о том, что вы не хотите называть имена, и что вы отрицаете, что способствовали этому решению.

Вы документируете систему как есть. Вы не осуждаете ни его, ни тех, кто его написал. Не волнуйтесь, если документация достаточно ясна, другие будут судить за вас.

Если приложение правильно хранится в различных версиях с отметкой даты, должно быть ясно, что ваш документ был создан после того, как система была «готова». Если приложение такое большое, что его написали несколько человек, то я не понимаю, как это приложение можно было повесить на вас и только на вас.

Сделайте свою работу по документированию и забудьте обо всем этом. Одно предостережение: когда вы документируете, убедитесь, что вы не используете «я» или «мы».