Отказ от ответственности : взгляды и мнения, выраженные в этой статье, являются исключительно моими собственными и не обязательно отражают точку зрения какого-либо учреждения или организации.
Сложность программных систем часто требует от инженеров-программистов или менеджеров написания предложений по согласованию изменений между командами, организациями или заинтересованными сторонами (партнерскими командами, зависимыми службами и т. д.). Эти предложения помогают кратко передать мотивацию, рекомендации или основные этапы, одновременно получая обратную связь и согласовывая действия всех заинтересованных сторон.
Такие документы также служат ориентирами прошлого для новых сотрудников, вступающих во владение программными системами и понимающих мыслительный процесс того, как принимались решения в прошлом. В этой статье представлен общий шаблон для написания однопейджеров; хотя это не ограничивается программными системами, оно доказало свою полезность в ведущих организациях по разработке программного обеспечения.
Это будет краткое изложение документа, подходящее для отражения мотивации и того, что вы предлагаете читателям, чтобы заинтересовать ваш документ.
Предоставьте подробную информацию о предпосылках/мотивациях изменения. Могут быть включены показатели/данные, чтобы объяснить проблему и предоставить дополнительную информацию.
Требования к данному проекту.
Назовите любые нецелевые или выходящие за рамки задачи этого проекта. Это может отвлекать вас от решения проблемы, на которой вы хотите сосредоточиться.
Составьте список вариантов/альтернатив, которые вы рассматривали для решения проблемы, желательно с указанием плюсов и минусов каждого.
На основе альтернатив, обсуждавшихся в предыдущем разделе, дайте рекомендации по стратегическим решениям с пояснениями или подтверждающими аргументами.
Тактический подход как вариант. В зависимости от проблем/времени, связанных с достижением рекомендуемого подхода, рассмотрите возможность предоставления тактического решения; потенциально это может быть постепенным шагом к стратегическому решению или минимальным изменениям для решения проблемы в краткосрочной перспективе.
Опишите, как вы будете проверять, что функция работает должным образом; что ты будешь тестировать? Как вы будете это тестировать? Будет ли период гамма-проверки или предпроизводственной проверки? Что это повлечет за собой? Обязательно включите тестовые примеры, подтверждающие, что функция применяется только к тем событиям, к которым она должна применяться.
Перечислите высокоуровневые задачи/этапы для рекомендуемых решений с оценками в днях разработки. Чтобы представить этот список помимо функциональных изменений, подумайте о:
Ссылки, по вашему мнению, могут помочь читателям глубже погрузиться в проблемную область или представленные альтернативы.
Активно отвечайте на любые ожидаемые вопросы или вопросы, которые могли возникнуть в ходе последовательных обсуждений, связанных с этим предложением.
Добавьте к предложению любую дополнительную информацию, к которой читатели смогут обратиться при необходимости.
Сохраните приведенную ниже сводку для встреч, на которых вы рассматриваете предложение.
Участники
Список людей, присутствовавших на собрании.
Месяц (протокол собрания)
Обобщите протокол собрания для дальнейшего использования.