Выбор команды проекта очень важен. И я уверена, что вы подходите к этому вопросу со всей серьезностью. Если уже принято решение о самостоятельной разработке или передаче проекта внешним разработчикам, то необходимо также определить, кто напишет техническое задание на основе разработанных бизнес-схем и ваших требований к разрабатываемой системе (БТА).
Чтобы ответить на него, необходимо разобраться, о какой документации идет речь и в чем суть задачи. Давайте еще раз взглянем на процесс автоматизации. Чтобы поставить задачу программисту на разработку программного обеспечения (или доработку), необходимо составить техническое задание, где указаны все алгоритмы программы, условия выполнения, входные и выходные данные, интерфейсы, экранные формы, описания ролей пользователей и прочее и прочее. Все, что необходимо знать до мельчайших деталей и описаний кнопочек, чтобы разработчик смог в точности воспроизвести задумки (мыслимые и немыслимые) заказчика.
Чаще всего сразу написать техническое задание, руководствуясь только бизнес-схемой, крайне сложно, особенно если необходимо автоматизировать не простую линейную операцию в уже существующей системе, а создать сложную систему с нуля.
Поэтому, прежде чем приступать к техническому документу, который оформлен и написан так, чтобы его понял программист-разработчик (или команда программистов), следует описать схему словами в виде требований к предполагаемой системе. Проще говоря, зафиксировать пожелания и ожидания заказчика в виде словесного описания уже разработанных бизнес-схем. Описание должно быть очень подробным и содержать требования: "Система должна позволять... , В программе должно быть то и то, так и так... На экране в такой то момент времени при выполнении такого то условия или при нажатии такой-то кнопки должен появится определенный результат...". Этот описательный документ носит название Бизнес требования к автоматизации. (Он может носить и другое название, принятое в организации, но суть его остается прежней. Я же буду пользоваться этим обозначением, а именно сокращенным БТА.) И на основе БТА уже создается техническое задание, где словесное описание "переводится" на технический язык программистов.
Если ваша программа более сложная, чем прямая последовательность действий в 3-5 шагов, то чаще всего довольно скоро становится понятно, что самостоятельно описать собственные требования и желания крайне сложно. В этом вам может помочь системный аналитик, специалист, который грамотно и дотошно снимет с вас, как с заказчика, потребность в разрабатываемой программе, структурирует полученные данные, подготовит БТА, которое с вами согласует и напишет грамотное ТЗ для программиста. При этом, в последствии поможет вам наладить контакт с программистом, когда у него появятся вопросы (а они обязательно появятся) по разработке, а также проконтролировать правильность написания готового программного обеспечения с запланированным результатом. Более того, на этапе реализации аналитик поможет вам скорректировать техническое задание с учетом выявившихся новых ваших пожеланий (Как бы вы не старались продумать все до мельчайших подробностей и условностей с помощью аналитика, абсолютно все предугадать и предусмотреть невозможно - множество корректировок придется вносить уже в процессе реализации. И тогда нужно будет оперативно дописывать или корректировать уже имеющееся ТЗ, что крайне проблематично сделать самостоятельно без аналитика).
Конечно, если вы сами являетесь неплохим аналитиком, то эту функцию можете взять на себя. Если же нет, то настоятельно рекомендую взять в свою проектную команду такого специалиста. Это убережет вас от лишних дорогостоящих рисков:
1. Получить на выходе не то, что ожидали
2. Потерять возможность контролировать процесс автоматизации в части реализации
3. Потерять возможность корректировать в процессе реализации без понимания системы в целом
4. Получить споры и конфликты с программистами из-за отсутствия взаимного понимания
5. Потратить впустую ресурсы
и еще множества других неприятных сюрпризов.
Принципы описания БТА и ТЗ приводить не буду, если вы не аналитик, то это вам все равно не поможет, а если аналитик, то это вы и без меня это хорошо знаете!
Чаще всего сразу написать техническое задание, руководствуясь только бизнес-схемой, крайне сложно, особенно если необходимо автоматизировать не простую линейную операцию в уже существующей системе, а создать сложную систему с нуля.
Поэтому, прежде чем приступать к техническому документу, который оформлен и написан так, чтобы его понял программист-разработчик (или команда программистов), следует описать схему словами в виде требований к предполагаемой системе. Проще говоря, зафиксировать пожелания и ожидания заказчика в виде словесного описания уже разработанных бизнес-схем. Описание должно быть очень подробным и содержать требования: "Система должна позволять... , В программе должно быть то и то, так и так... На экране в такой то момент времени при выполнении такого то условия или при нажатии такой-то кнопки должен появится определенный результат...". Этот описательный документ носит название Бизнес требования к автоматизации. (Он может носить и другое название, принятое в организации, но суть его остается прежней. Я же буду пользоваться этим обозначением, а именно сокращенным БТА.) И на основе БТА уже создается техническое задание, где словесное описание "переводится" на технический язык программистов.
Если ваша программа более сложная, чем прямая последовательность действий в 3-5 шагов, то чаще всего довольно скоро становится понятно, что самостоятельно описать собственные требования и желания крайне сложно. В этом вам может помочь системный аналитик, специалист, который грамотно и дотошно снимет с вас, как с заказчика, потребность в разрабатываемой программе, структурирует полученные данные, подготовит БТА, которое с вами согласует и напишет грамотное ТЗ для программиста. При этом, в последствии поможет вам наладить контакт с программистом, когда у него появятся вопросы (а они обязательно появятся) по разработке, а также проконтролировать правильность написания готового программного обеспечения с запланированным результатом. Более того, на этапе реализации аналитик поможет вам скорректировать техническое задание с учетом выявившихся новых ваших пожеланий (Как бы вы не старались продумать все до мельчайших подробностей и условностей с помощью аналитика, абсолютно все предугадать и предусмотреть невозможно - множество корректировок придется вносить уже в процессе реализации. И тогда нужно будет оперативно дописывать или корректировать уже имеющееся ТЗ, что крайне проблематично сделать самостоятельно без аналитика).
Конечно, если вы сами являетесь неплохим аналитиком, то эту функцию можете взять на себя. Если же нет, то настоятельно рекомендую взять в свою проектную команду такого специалиста. Это убережет вас от лишних дорогостоящих рисков:
1. Получить на выходе не то, что ожидали
2. Потерять возможность контролировать процесс автоматизации в части реализации
3. Потерять возможность корректировать в процессе реализации без понимания системы в целом
4. Получить споры и конфликты с программистами из-за отсутствия взаимного понимания
5. Потратить впустую ресурсы
и еще множества других неприятных сюрпризов.
Принципы описания БТА и ТЗ приводить не буду, если вы не аналитик, то это вам все равно не поможет, а если аналитик, то это вы и без меня это хорошо знаете!
Если вам интересна тема автоматизации бизнес-процессов заказчика, подписывайтесь, чтобы получать уведомления о продолжении.
Также буду благодарна вашей обратной связи и вопросам. Пишите и я отвечу!
To be continued...
Всегда ваша
Денисова Елена,
Комментариев нет:
Отправить комментарий