Любая работа, совер­шаемая по требо­ваниям заказчика и отданная на “откуп” испол­нителю, должна начинаться подго­товкой техни­че­ского задания, разра­ботка ПО, то есть программного обеспе­чения, не является исклю­чением. Говоря иначе, начать разра­ботку ПО можно только после подго­товки грамотного и правильного ТЗ, охваты­ва­ющего все техни­ческие аспекты будущего проекта и пожелания заказавшей работу органи­зации или физиче­ского лица. Рассмотрим действия, необхо­димые для состав­ления правильного документа, который станет основой при написании требуемых программных продуктов.

За работу платят деньги

Подго­товка техни­че­ского задания для разра­ботки программного обеспе­чения требуется для четкого ограни­чения объемов работы, которую предстоит сделать для дости­жения требу­емого результата. Грамотно состав­ленное ТЗ необходимо для предот­вра­щения спорных ситуаций между испол­ни­телем и заказ­чиком, когда последний, к примеру, хочет выпол­нения каких-либо доработок, не входящих в утвер­жденный план мероприятий, основы­ваясь на возникших в процессе деятель­ности предприятия потреб­ностях. Начинать разра­ботку ПО без согла­со­вания всех нюансов предстоящей работы, то есть без состав­ления хорошего ТЗ, попросту нельзя. Это грозит непони­манием сторон и отказом принимать готовый заказ в связи с “неполным” его выполнением.

Как написать хорошее техни­ческое задание?

Чтобы самосто­я­тельно написать хорошее техни­ческое задание по разра­ботке ПО, необходимо обратиться к существующим ГОСТам, а также составить глоссарий — словарь терминов и опреде­лений, фигури­рующих в ТЗ. Это поможет не “утонуть” в много­чис­ленной специ­фи­ческом терми­но­логии, зачастую приме­няемой при описании функци­онала разра­ба­ты­ваемых программных продуктов. Глоссарий служит “мостом” между испол­ни­телем и заказ­чиком ПО, помогающим сторонам правильно понимать друг друга в процессе обсуж­дения деталей проекта и при оконча­тельном утвер­ждении резуль­татов проде­ланной работы.

Этапы подго­товки техни­че­ского задания для разра­ботки ПО

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

1. Цель проекта
Для написания хорошего техни­че­ского задания обяза­тельно требуется поставить конечную цель проекта, то есть охарак­те­ри­зовать, для чего он создается и какой функционал требуется от разра­ба­ты­ва­емого ПО.

2. Функци­о­нальные требования
Вторым этапом стано­вится опреде­ление функци­о­нальных требо­ваний, которые, в отличие от специ­фичных, описывают как бы внешний “вид” итога работы. То есть содержат описание действий или функций, которые требуется получить в итоге разра­ботки, что грубо можно охарак­те­ри­зовать как “при нажатии на кнопку А должно красиво отобра­жаться меню Б”. Для этого можно исполь­зовать функци­о­нальные решения из других программ или проектов, уже реали­зо­ванных в коде.

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

4. Критерии приёмки
Определить чёткие критерии приёма работы по произ­во­ди­тель­ности, функци­о­наль­ности, качеству исходного кода.

5. Сроки
Указание сроков на разра­ботку ПО при состав­лении грамотного ТЗ является обяза­тельным пунктом, при этом время, отведенное на выпол­нение работы, должно учитывать некоторый запас. Рассчи­тывать сроки необходимо так, чтобы у испол­нителя была возмож­ность осуществлять разра­ботку программы качественно, без аврального режима работы. Также это требуется для установ­ления границ ответ­ствен­ности, при нарушении которых одна из сторон понесет финан­совые потери, связанные с невыпол­нением взятых на себя обязательств.

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

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

Грамотное ТЗ — залог отличного результата

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