Вы на портале

Техническое задание на разработку программного обеспечения: взгляд юриста

Спор «Гомельлифта» и «Элитсофт» показал, что подготовка технического задания (далее — ТЗ) на разработку программного обеспечения (далее — ПО) — это важный этап разработки ПО. Качественное ТЗ учитывает не только требования заказчика, но и его неозвученные потребности, выявленные в ходе предпродажного аудита. Оно позволяет эффективно решать бизнес-задачи, избежать разногласий при приемке разработанного ПО и снизить риск претензий со стороны третьих лиц.

Поскольку ТЗ — это документ и часть договора на разработку ПО, разрабатывать его должен юрист. Или нет? Поговорим о роли юриста в составлении ТЗ.

Воронкова Марина
Воронкова Марина

Ведущий юрисконсульт отдела общеправовой работы ИООО «ЭПАМ Системз»

7130 Shape 1 copy 6Created with Avocode.

«А кто это должен делать?»

Подход к возложению обязанностей по составлению ТЗ в разных компаниях отличается.

Справочно.
Выбор сотрудника, ответственного за составление ТЗ, зависит от многих факторов: продуктовой или заказной модели работы компании; должностных обязанностей, закрепленных за конкретными сотрудниками; квалификации специалистов, размера штата сотрудников и их загруженности; позиции руководства; сложившегося подхода к порядку оформления внутренней и «внешней» документации и построения процесса переговоров с заказчиками.

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

Нередки и обратные случаи, когда составление ТЗ поручают программистам, инженерам, другим техническим специалистам, имеющим серьезную квалификацию, глубокие знания предмета разработки и представление о том, каким должен быть конечный результат. Однако ТЗ, составленное таким специалистом, может представлять собой набор непонятных букв, цифр и шифров, содержать узкоспециальные технические термины, «программистские жаргонизмы» и выдержки из ТНПА (без указания источника). С технической точки зрения это идеальное ТЗ, но оно нечитабельно для «неспециалиста» (в том числе для юриста и судьи) и практически неприменимо для ведения переговоров в случае возникновения споров.

Каков же выход в данной ситуации? Кто должен и, что немаловажно, может участвовать в составлении ТЗ в организации? Квалификация какого специалиста в наибольшей мере отвечает потребностям нанимателя и способствует правильному составлению ТЗ?

Правильного ответа нет. Процесс составления ТЗ достаточно тонок и зависит от многих факторов. Таким образом, каждая организация решает для себя, какому сотруднику поручить эту задачу. Однако принимать такое решение стоит, лишь ознакомившись с процессом составления ТЗ и (потенциальной) ролью юриста в этом процессе.

Рекомендация.
Нанимателю следует ознакомиться с процессом составления ТЗ и определить, какую роль будет играть юрист в этом процессе.

Что такое ТЗ?

Если мы обратимся к НПА, то определение ТЗ можно найти, например, в СТБ ИСО/МЭК 12207-2003 «Информационные технологии. Процессы жизненного цикла программных средств» (далее — СТБ 12207-2003). В соответствии с п. 3.29 СТБ 12207-2003 ТЗ — это документ, используемый заказчиком в качестве средства для описания и определения задач, выполняемых при реализации договора.

Справочно.
Техническое задание — это документ, используемый заказчиком в качестве средства для описания и определения задач, выполняемых при реализации договора

Согласно СТБ 12207-2003 заказчик может составить ТЗ самостоятельно либо поручить это исполнителю, который будет разрабатывать программный продукт. Основная задача стороны, ответственной за подготовку ТЗ, — провести анализ требований к программным средствам, в том числе определить характеристики их качества.

Зачем нужен бизнес-аналитик?

Выпуск № 1 Единого квалификационного справочника должностей служащих (ЕКСД) «Должности служащих для всех видов деятельности», утвержденный постановлением Министерства труда Республики Беларусь от 30.12.1999 № 159, включает перечень должностных обязанностей бизнес-аналитика. Так, бизнес-аналитик:

— выявляет информационные потребности заказчика;

— анализирует потребности организации в автоматизации выполнения деловых процессов производства продукции, товаров (работ, услуг);

— проводит предпроектное обследование и формирует требования к разрабатываемой автоматизированной информационной системе и соответствующему программному продукту;

— проводит экспертизу существующих информационных систем, моделей и применяемых технологий;

— описывает текущее состояние объекта автоматизации;

— ведет и представляет установленную отчетность.

Оптимально поручить составление ТЗ бизнес-аналитику. Именно он обладает необходимыми знаниями и навыками, которые позволяют как корректно сформулировать требования заказчика, так и облечь их в словесную форму, понятную и техническим специалистам, и административному персоналу (специалисту по продажам, юристу).

Однако не всегда в штате компании есть бизнес-аналитик. Кроме того, в некоторых компаниях бизнес-аналитик лишь определяет требования к ПО, но не участвует в составлении ТЗ как приложения к конкретному договору на разработку либо как части служебного задания на разработку собственного продукта компании. Распространено мнение о том, что ТЗ — это «документ» и «часть договора», а поскольку составление и проверка договоров входит в обязанности юриста, то и ТЗ должен составлять юрист, в то время как бизнес-аналитики не владеют навыками составления ТЗ «юридически». 

Справочно.
Юрист и бизнес-аналитик владеют разным набором навыков. Так, бизнес-аналитик может проанализировать требования к ПО и изложить их простым языком, а юрист знает, как облечь полученную информацию в форму приложения к договору. То есть юрист и бизнес-аналитик могут составить отличное ТЗ вместе, но навыки каждого из них в отдельности не позволяют подготовить завершенный и качественный документ.

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

Чем может помочь юрист?

Ниже выделены ключевые моменты, в которых юрист может оказать помощь техническому специалисту при составлении ТЗ.

1. Ознакомиться с перечнем ТНПА, которые регулируют процесс создания ПО, вместе с составителем ТЗ выделить ключевые моменты и требования, содержащиеся в этих ТНПА, уточнить неясные моменты.

Перечень ТНПА зачастую предлагает сам заказчик. Необходимые СТБ, ГОСТы, ТКП и пр. уже могут содержать требования к ПО, которые станут основой готовящегося ТЗ. В этом случае юрист проверяет актуальность указанных ГОСТов и СТБ и отмечает ТНПА, утратившие силу.

2. Рекомендовать примерное содержание ТЗ.

Зачастую в работе возникают ситуации, при которых лицо, ответственное за составление ТЗ, даже не знает, с какой стороны подступиться к составлению этого документа. Юрист может предоставить план содержания ТЗ, основанный на содержании пунктов СТБ 12207-2003. Данный ТНПА включает вопросы, которые необходимо охватить в разрабатываемом ТЗ. Этот перечень требований можно взять за основу разделения ТЗ на разделы.

Справочно.
Пункт 5.3.4.1 СТБ 12207-2003 выделяет ряд требований к программным средствам, которые должны быть задокументированы, в том числе функциональные и технические требования, включая производительность, физические характеристики и окружающие условия, под которые должен быть создан программный объект архитектуры; требования к внешним интерфейсам программного объекта архитектуры и т.д.

3. Проверить формулировки работ в ТЗ на их соответствие предмету договора.

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

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

Резидентам Парка высоких технологий (далее — ПВТ) следует обратить на данный пункт особое внимание, так как помимо соответствия предмету договора работы, перечисленные в ТЗ, должны соответствовать также виду деятельности, разрешенному для данного резидента ПВТ.

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

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

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

Пример.
По договору на разработку ПО подрядчик разрабатывает программное обеспечение информационной системы, одной из функций которой будет обработка персональных данных пользователей. В соответствии со 
ст. 17 Закона Республики Беларусь от 10.11.2008 № 455-З «Об информации, информатизации и защите информации» персональные данные относятся к информации, распространение и (или) предоставление которой ограничено. Согласно ч. 4 ст. 28 данного Закона информация, распространение и (или) предоставление которой ограничено, не отнесенная к государственным секретам, должна обрабатываться в информационных системах с применением системы защиты информации (СИЗ), аттестованной в порядке, установленном Оперативно-аналитическим центром при Президенте Республики Беларусь. 

Таким образом, при составлении ТЗ необходимо решить вопрос об использовании системы защиты информации (СЗИ) — будет ли она разрабатываться подрядчиком самостоятельно либо с привлечением третьих лиц. Возможно, заказчик предпочтет использовать существующее СЗИ — в этом случае разрабатываемое ПО должно быть с ним совместимо, что необходимо предусмотреть в ТЗ.

4. Сравнить условия ТЗ и основного договора на предмет отсутствия внутренних противоречий.

ТЗ — это часть договора, и при наличии противоречий по одному или нескольким условиям между основным текстом договора и ТЗ такие условия могут быть признаны несогласованными.

Справочно.
Если одно или несколько условий договора противоречат ТЗ, такие условия могут быть признаны несогласованными. Договор, в котором не согласованы существенные условия, является незаключенным.

Пример.
Договор может предусматривать поддержку пользователя в рабочее время исполнителя, а ТЗ — поддержку 24/7; сроки отдельных этапов работ в договоре могут быть указаны в рабочих днях, а в ТЗ — в календарных.

При этом технический специалист, который непосредственно составляет ТЗ, может не знать тонкостей определения сроков по закону или посчитать различия несущественными и не влияющими на права и обязанности сторон. 

Рекомендация.
Если ТЗ предусматривает использование объектов интеллектуальной собственности (фотографии, аудиозаписи, библиотеки и т.д.), юристу следует проверить наличие в договоре условия о распределении обязанностей по приобретению прав на использование таких объектов между сторонами договора, а также дополнительно указать разработчику на необходимость подтвердить легальность использования объектов интеллектуальной собственности третьих лиц.

5. Проверить ТЗ на логику и последовательность изложения.

Юристу следует проверить, в каком значении употребляются термины, не используются ли разные термины для обозначения одинаковых понятий.  

Рекомендация.
Юристу следует дать расшифровку терминов, значение которых неявно вытекает из текста ТЗ или договора и может быть истолковано двояко, заменить «жаргонизмы» на термины, употребляемые в ТНПА.

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

Юрист обычно осведомлен о внутренних процессах организации, в том числе о доступных ресурсах компании, необходимых внутренних процедурах и их сроках, о порядке организации труда работников, порядке оплаты и сроках закупки каких-либо товаров, ПО, которые могут потребоваться для исполнения договора. Соответственно, юристу следует проверить ТЗ на выполнимость: возможность соблюдения ТЗ с учетом реальной работы организации. При необходимости юрист запрашивает у ответственных исполнителей подтверждение наличия необходимых ресурсов, осведомленности о внутренних процессах и готовности обеспечить соблюдение условий договора и ТЗ как его части.

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

Дополнительно по теме:
>>Грабовская Н., Пархимович А. Договор на разработку программного обеспечения

7130 Shape 1 copy 6Created with Avocode.
Последнее
по теме