Как создать техническое задание для программиста. Пример технического задания

Судебные споры 13.06.2020

Фирма «Молочка-бы» и компания Франчайзи

Техническое задание

№ 001 «Выполнение планов продаж»

1. Лист согласования

2. Версии документа

3. Термины и определения

4. Назначение и цели доработки

5. Описание доработки

5.1 Регистр сведений «Ценность видов продукции»

5.2 Регистр сведений «Сезонные нормы продаж»

5.3 Отчет «Выполнение норм продаж»

5.4 Документ «Премирование сотрудников»

5.5 Регистр сведений «Премированные сотрудники»

5.6 Интерфейс

6. Требования к организации НСИ

7. Методика приемо-сдаточных испытаний

8. Приложения

8.1 Приложение № 1: Пример установки сезонных норм на год

8.2 Приложение № 2: Пример коэффициентов ценности видов продукции

8.3 Приложение № 3: Печатная форма «Список премированных»

Лист согласования

Версии документа

Термины и определения

Термин

Определение

Автоматизированная система управления заказчика, построенная на базе 1С: УПП

Комплект программ фирмы 1С для автоматизации предприятия, Управление производственным предприятием, версия 1.3.28.1

1С База данных клиента

Система разработки и интерактивного изменения отчетов в 1С

Табличная многострочная часть документа

Назначение и цели доработки

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

Регистр сведений «Ценность видов продукции» - указываются ценности различных видов продукции предприятия, действующие с определенного дня;

Регистр сведений «Сезонные нормы продаж» - указываются нормы продаж менеджеров, в зависимости от сезона года.

Отчет «Выполнение норм продаж» - в разрезе подразделения, сотрудника, вида продукции, выводит информацию за период о продажах сотрудника за каждый день периода, а также среднее дневное значение продаж за весь период.

Документ «Премирование сотрудников» - отражает список сотрудников подразделения, которые превысили выполнение норм в текущем месяце и будут преимрованы.

Регистр сведений «Премированные сотрудники» - содержит информацию документа «Премирование сотрудников» после проведения, используется для расчета премии в механизме начисления зарплаты.

Печатная форма «Список премированных» - формируется из документа «Премирование сотрудников», содержит список сотрудников, которым следует начислить премию. Передается руководителем подразделения в отдел расчета заработной платы.

Описание доработки

Регистр сведений «Ценность видов продукции»

  • Периодичность «День»
  • Измерения:

Вид продукции (справочник «Виды номенклатуры»)

Ценность (Число, 10)

Внимание: Ценность требуется указывать для 1 единицы хранения остатков товара с данным видом продукции.

Регистр сведений «Сезонные нормы продаж»

Регистр сведений - создать новый объект конфигурации БД

  • Периодичность «Год»
  • Измерения:

Организация (справочник «Организации»)

Подразделение организации (справочник «Подразделения организации»)

Зима (Число, 10)

Весна (Число, 10)

Лето (Число, 10)

Осень (Число, 10)

Отчет «Выполнение норм продаж»

Отчет на СКД - создать новый объект конфигурации БД

  • Отбор по периоду с..по… По умолчанию устанавливается на текущий месяц.
  • Группировки по Организации, Подразделению организации, Сотруднику, Виду продукции.
  • Предусмотреть возможность отбора по Организации, Подразделению организации, Сотруднику, Виду продукции.
  • Сортировка по умолчанию по алфавиту А-Я всех группировок
  • Сохранение и восстановление настроек пользователя

Макет отчета:

Группировка/День

Средний результат продаж за день

Отчет на каждый день периода выводит количество проданных товаров с учетом их коэффициента ценности. Например, продажи «Молока 1% жирности» Ивановым Иваном 12.07.2012 года:

КоличествПроданногоМолока * ЦенностьМолока.

КоличествПроданногоМолока - берется количество молока из документов «Реализации товаров и услуг», у которых ответственный Иванов Иван за день 12.07.2012.

ЦенностьМолока - данные из списка «Ценность видов продукции» для вида номенклатуры, указанного у номенклаутры «Молоко 1% жирности»

Сумма продаж всех видов продукции текущим сотрудником в этот день.

Сумма продаж всех сотрудников подразделения в этот день.

Сумма продаж всех подразделений организации в этот день.

Среднее значение в строке = Сумма (количества продаж в день за все дни) / Количество выведенных в отчет дней.

Чтобы учесть, что сотрудник выполнил или нет норму в текущий день:

  • ячейка - красный цвет - если норма не выполнена
  • ячейка - зеленый цвет - если норма выполнена

Нормы нужно определять из Списка «Сезонные нормы продаж» - брать ту норму, в сезон которой попадает выводимый день:

01.12 - 29.02 - зима

01.03 - 31.05 - весна

01.06 - 31.08 - лето

01.09 - 31.11 - осень

В документах «Реализации товаров и услуг» указывается управленческое подразделение. Для связи с подразделением организации использовать регистр сведений «Соответствие подразделений и подразделений организации».

Документ «Премирование сотрудников»

Документ - создать новый документ

  • Номер
  • Организация (справочник «Организации»)
  • Подразделение организации (справочник «Подразделения организации»)
  • Ответственный (справочник «Пользователи»)
  • Комментарий (Строка)
  • ТЧ «Сотрудники»
    • Средний объем продаж (Число, 10) - округлять в большую сторону
    • Норма продаж (Число, 10) - норма для сотрудника в этом месяце
    • Начислить премию (Булево) - флажок

Действия по работе с документом

Шаг 1 . Создание документа, заполнение реквизитов шапки документа.

При создании документа должны автоматически заполняться из настроек пользователя по умолчанию следующие реквизиты: «Организация», «Подразделение организации». Текущий пользователь устанавливается в реквизит «Ответственный». Дата документа устанавливается равной дате конца текущего месяца. В реквизите «Комментарий» нужно обеспечить возможность пользователю вводить многострочный текст.

Шаг 2 . Заполнение ТЧ «Сотрудники»

У ТЧ «Сотрудники» предусмотреть командную панель со стандартными командами. На командной панели вывести кнопку «Заполнить». При нажатии на кнопку, если в ТЧ уже есть строки, обеспечить вывод вопроса запрашивающего у пользователя подтверждение на перезаполнение ТЧ. Текст вопроса «Перед заполнением табличная часть будет очищена. Продолжить?» (ответы Да, Нет). При ответе «Нет» - перезаполнение ТЧ не должно выполняться.

Алгоритм заполнения ТЧ «Сотрудники» по кнопке «Заполнить»:

1) Отобрать проведенные документы «Реализации товаров и услуг» за месяц даты документа, по «Организации» и «Подразделению организации», указанному в шапке документа. В документах «Реализации товаров и услуг» указывается управленческое подразделение. Для связи с подразделением организации использовать регистр сведений «Соответствие подразделений и подразделений организации».

2) Определить поле «Сотрудник». Это работающий в организации сотрудник (по основному месту работы), соответствующий пользователю, указанному в реквизите «Ответственный» документа «Реализация товаров и услуг» по срезу последних регистра сведений «Кадровая история сотрудника (по юр лицам)» на дату документа «Премирование сотрудников». Отбираем в регистре записи по физлицам, указанным в соответствующих реквизитах «Ответственный» и «Организации» из шапки документа. В отобранных записях сотрудник должен быть работающим на предприятии, поэтому «Занимаемых ставок > 0».

3) Считается поле «Средний объем продаж» сотрудника за день:

СреднийОбъемПродажСотрудникаЗаДень = СуммаЗаМесяц(ОбъемПродажСотрудникаЗаДень) / КоличествоРабочихДнейВМесяце;

ОбъемПродажСотрудникаЗаДень = СуммаЗаДень(КоличествоПроданногоТовара Х ЦенностьВидаПродукцииТовара).

КоличествоПроданногоТовара = для каждого товара определяется количество проданного документами «Реализация товаров и услуг» товара в единицах хранения остатков за день.

ЦенностьВидаПродукцииТовара = определяется для товара на конец месяца даты документа по регистру «Ценность видов продукции» по виду номенклатуры товара.

КоличествоРабочихДнейВМесяце = определяется по регистру «Регламентированный производственный календарь». Берутся все рабочие дни месяца даты документа.

4) Поле «Норма продаж» определяется из регистра сведений «Сезонные нормы продаж» на конец месяца даты документа.

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

Шаг 4 . Проведение документа.

После выполнения шагов 1, 2, 3 выполняется запись и проведение документа. Вследствие проведения документ делает движения в регистре сведений «Премированные сотрудники».

Создаются записи с периодом даты документа. «Организация» и «Подразделение организации» берутся и шапки документа, поле «Сотрудник» и «Начислять премию» из ТЧ документа.

Шаг 5 . Печать печатной формы «Список премированных»

После проведения документа, по кнопке печать по данным документа формируется печатная форма списка премированных см. приложение № 3. «Организация», «Дата документа», «Номер документа», «Подразделения организации» берутся из шапки документа. В печатную форму попадаю только записи о сотрудниках, которые получат премию. Данные в подписи берутся по физическому лицу, связанному с реквизитом «Ответственный» документа.

Регистр сведений «Премированные сотрудники»

Регистр сведений - новый объект

  • Периодичность «Месяц»
  • Подчиненность документу «Премирование сотрудников»
  • Измерения:

Организация (справочник «Организации»)

Подразделение организации (справочник «Подразделения организации»)

Сотрудник (справочник «Сотрудники»)

Начислить премию (булево).

Интерфейс

В БД - интерфейс «Продажи» - главное меню - подменю «Доработки» добавить открытие следующих объектов:

1) Документ «Премирование сотрудников»

2) Регистр сведений «Ценность видов продукции»

3) Регистр сведений «Сезонные нормы продаж»

4) Отчет «Выполнение норм продаж»

Требования к организации НСИ

Руководитель подразделения по продажам должен:

1) заполнить список «Сезонные нормы продаж» для своего подразделения;

2) заполнить список «Ценность видов продукции» для своего подразделения.

Методика приемо-сдаточных испытаний

Сдается на контрольном примере, в тестовой базе. На основе продаж за июль 2012. Данные о продажах по подразделению смоделированы в базе (созданы несколько документов Реализация товаров и услуг на сотрудников отдела продаж.)

Требуется:

1) Заполнить данные Регистр сведений «Ценность видов продукции»

2) Заполнить регистр сведений «Сезонные нормы продаж»

3) Создать на конец июля и заполнить документ «Премирование сотрудников». Провести документ. Убедиться что в регистре «Премированные сотрудники» есть записи соответствующие данным введенным документом. Сформировать печатную форму «Список премированных», убедиться, что данные печатной формы совпадают с данными документа, а формат вывода соответствует приложению № 3.

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

Приложения

Приложение № 1: Пример установки сезонных норм на год

Приложение № 2: Пример коэффициентов ценности видов продукции

Приложение № 3: Печатная форма «Список премированных»

Утвержденная форма № 4

Список премированных от

Сотрудник

Начислить премию

Ответственный

расшифровка подписи

Зачастую на готовый сайт требуется добавить какой-нибудь полезный сервис. Готовые решения вас не устраивают, и вы нанимаете программиста. Но как правильно составить техническое задание (ТЗ), чтобы потратить меньше времени и денег?

Когда вы ищете программиста -фрилансера, то лучше сразу сузить круг поиска. Пишите короткое объявление по типу:

«Нужен программист, который добавит функцию Х на готовый сайт на Битрикс»

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

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

1. Сроки выполнения работы, а также ситуации, когда дедлайн можно подвинуть.

2. Способ и вариант оплаты.

3. Правки и штрафы.

4. Подробное описание вашего видения того, что должно получиться.

5. Техническая информация.

6. Тестирование.

Первая тройка есть во всех договорах подряда, а последнюю стоит разобрать подробнее.

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

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


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

Теперь перейдем к технической информации. Расскажите только ту информацию, которая потребуется исполнителю для решения этой конкретной задачи. Это легко, если ваш сайт сделан на распространенном движке – вам надо только указать его название и плагины, с которыми должен работать новый функционал. Если вы сами писали сайт или движок, то есть два выхода:

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

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

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


Главное, при составлении ТЗ для фрилансера-программиста быть предельно скрупулезным, также как во время составления ТЗ для разработки сайта. Лучше все заранее продумать, чтобы потом не спотыкаться во ходе работы и не терять время с деньгами. Часто люди сталкиваются с проблемой, когда фрилансеры предоставляют услуги крайне низкого качества, не укладываются в поставленные сроки или попросту перестают отвечать на сообщения и звонки. Мы не рекомендуем работать без подписания договора, в котором будут обозначены обязанности обоих сторон. А такие сложные и масштабные проекты как: разработка крупного интернет магазина, портала, сайта для гос.учреждения - точно лучше заказывать у профессионалов.

Пример плохого т/з:

нужен калькулятор стоимости кухни под заказ как у site.ru

В моем варианте:

Задание: разместить калькулятор для расчета стоимости кухни под заказ.

Формула расчета кухни s*(a+b)+c=x, где s - цена погонного метра, a и b - длина стен вдоль которых стоит кухня, с - стоимость доп. услуг.

Каждый параметр калькулятора в скрипте отметить комментарием.

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

Значит у вас нет четкого и понятного технического задания (т/з).

Я помогу вам изложить все ваши сумбурные пожелания в т/з которое поймет любой исполнитель.

Пример плохого т/з:

нужен калькулятор стоимости кухни под заказ как у site.ru

В моем варианте:

Задание: разместить калькулятор для расчета стоимости кухни под заказ.

Формула расчета кухни s*(a+b)+c=x, где s - цена погонного метра, a и b - длина стен вдоль которых стоит кухня, с - стоимость доп. услуг.

Каждый параметр калькулятора в скрипте отметить комментарием.

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

При нажатии на кнопку "заказать" всплывает форма заказа с 1 полем "телефон" в формате +7 (...) ... -. . -. . и кнопка "отправить".

При нажатии на кнопку "отправить" проверяем корректно заполненный телефон, если телефон заполнен некорректно - делаем подсветку поля красным цветом, рядом добавляем сообщение "Проверьте телефон", если проверка прошла успешно, отправляется письмо на почту и показываем всплывающее окно с уведомлением "Спасибо, заказ принят!" , которое исчезает через 5 сек после появления.

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

Чем отличается Проект от Технического задания? Проект - это намерение разработать некий механизм автоматизации учёта или желание получать быстрые и точные отчёты от уже имеющийся системы. Начинается он с назначения руководителя проекта. Им может быть либо сотрудник фирмы заказчика, либо фирмы исполнителя; во втором случае, естественно, все услуги по ведению проекта войдут в его стоимость. Далее, в случае с «1С:Предприятием», выбирают и изучают типовую конфигурацию по вопросам её возможностей и необходимости в доработках. Только после соответствующего анализа руководитель проекта составляет доскональное и точное задание программистам на внесение изменений в конфигурацию. Это задание и называется Техническим заданием (ТЗ), и именно составление ТЗ рассматривается в данном разделе.

Есть ли смысл изменять конфигурацию? Этот вопрос требует серьёзного рассмотрения. Все конфигурации, работающие с бухгалтерской компонентой, в некоторой степени - правовые системы, т.е. кроме функций расчёта и хранения информации от них требуется соответствующее государственным законам ведение учета. Для этих программ фирмой «1С» ежемесячно выпускаются обновления 1С, как форм отчётности, так и самих конфигураций. Но что получится, если Вы измените программу, а после установите обновление? Все Ваши изменения пропадут. Можно каждый раз восстанавливать их, но зачастую это практически то же, что делать работу заново. В данной ситуации самый лучший способ - выполнять все доработки во внешних модулях. Рассмотрим конфигурацию, доработка которой, по мнению пользователей, необходима - «Торговля и Склад». Необходимость доработки - это не значит, что программный продукт некачественный, наоборот, эта конфигурация, пользуется огромной популярностью. В своём базовом варианте она способна работать в разных торговых сферах деятельности. Но у каждого бизнеса есть свои нюансы, и совмещать их в одной программе не имеет смысла.

Теперь перейдем к теме. У Вас возникла идея изменить программу или автоматизировать учёт. В своём воплощении любая идея проходит 4 стадии: Проектирование -> Реализация -> Проверка -> Анализ. В перспективных долгоживущих проектах после Анализа снова следует Проектирование, замыкая тем самым «круг»; такой цикл будет существовать на протяжении всего срока эксплуатации программы. Как показывает практика, для воплощения идеи необходимо 3-4 цикла, потом, через какое-то время, возникнет новая идея, но её реализация потребует меньших усилий. Что бы воплотить Ваш проект в жизнь при минимальных финансовых затратах, необходимо найти опытного исполнителя. Но, каким бы опытным не был программист, в первых двух циклах стадии: Проектирования, Проверки и Анализа желательно выполнять своими силами, при соответствующих консультациях исполнителя. Очень важно не жалеть времени на изучение материала -типовой конфигурации. Писать программу с «нуля» не имеет смысла, так как приобретая «1С:Предприятие» Вы в любом случае в комплекте получите конфигурацию. Как показывает практика, именно на стадии Проектирования возникает до 80% ошибок, особенно при разработке нестандартных решений, из-за неправильно сформулированных требований. Опытному программисту не стоит большого труда воплотить практически любое задание в жизнь, но его работа - это Ваши деньги и время; следовательно, чем точнее и продуманнее задание, чем ответственнее вы подходите к составлению ТЗ , тем быстрее и дешевле реализация.

Рассмотрим основные принципы составления ТЗ :

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

2. Ознакомьтесь с интерфейсом программы. В случае, если назначение какого-то элемента Вам не понятно - проконсультируйтесь у исполнителя. Очень часто при разработке технического задания пользователи, которые только начинают использовать «1С:Предприятие», просят убрать не нужные, с их точки зрения, поля, документы или справочники. Не спешите этого делать, так как с одной стороны убрать их, для программиста несколько часов работы, а вернуть их в будущем обратно раза в два больше, и это время Вам придётся оплатить. Что же касается настройки прав доступа и меню - это совсем несложно, здесь нет необходимости приглашать специалиста. Не забывайте только о том, что, если Вы отдали конфигурацию на доработку, подождите, пока её вернут, иначе придётся делать настройки заново.
Вывод: старайтесь по минимуму изменять интерфейс, в плане удаления «ненужных» полей или усовершенствования, это дорогой и бесполезный процесс, а настройку прав и меню, проконсультировавшись со специалистом, сделайте своими силами.

3. При составлении ТЗ в начале разработки помните о том, что это задание, а не весь проект и постарайтесь объяснить программисту, что от него требуется в результате. Снабдите его образцами форм, сделанными в Ms Excel, Ms Word или нарисованными от руки, но в точности такими, какие Вы хотите получить. Постарайтесь не использовать подобных объяснений: «интерфейс должен быть предельно понятным», «документы желательно распечатывать по какой-то форме», «по результатам нужно, чтобы строился какой-то отчёт» или «документы как-то должны попадать в 1С:Бухгалтерию». Если Вы попросите оценить подобное задание, то цена может быть 10-1000 у.е., точнее сказать трудно. Лучше сформулируйте так: «интерфейс документа похож на документ Реализация ТМЦ», «необходимо две печатные формы, образцы прилагаются», «по результатам необходим следующий отчёт, его форма в Excel-файле». Разрабатывать обмен данными между базами лучше после накопления некоторого опыта работы с ними и проведения основных доработок, связанных с изменением структуры программы.
Вывод: постарайтесь в первом задании как можно подробнее объяснить программисту, что от него требуется. В дальнейшем задания могут иметь более свободную форму, всё зависит от взаимопонимания с исполнителем.

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

5. Возникающие при разработке алгоритма трудности стоит обсудить с программистом. При всех различиях и спецификах деятельности в большинстве проектов реализуются схожие задачи. Наиболее часто такие как: система скидок (постоянные, накопительные или от суммы документа), система учёта заявок покупателей, системы расчёта потребностей в товаре и заказов поставщику, и конечно наиболее частые задания - по обмену между базами. Некоторые из этих вопросов уже решены в типовых конфигурациях, возможно, только стоит с ними ознакомиться.

«1С:Предприятие» пользуется огромной популярностью, и при серьёзном подходе к вопросу проектирования, результат оправдает Ваши ожидания. С помощью программирования возможно реализовать любые схемы учёта, но заказчику необходимо вполне определённо представлять результат, который он хочет получить.

1) Общие сведения, назначение и цели доработки
Необходимо сформулировать цели доработки и для чего в конечном итоге она предназначается. Данный пункт должен быть уточнен глобальными целями .
2) Характеристика объектов автоматизации.
Нужно указать, что именно мы будем разрабатывать в терминах платформы «1С». Какие объекты метаднных будут добавлены к конфигурации, какие изменены и в какой части. Данный пункт Постановщик составляет совместно с Исполнителем по результатам работы с Заказчиком
3) Требования к системе.
Заказчик излагает свои требования в виде списка. Определяются критерии оценки эффективности выполнения требований.
4) Состав и содержание работ по созданию системы.
Исполнителем составляется план работ, который утверждается Заказчиком.
5) Порядок контроля и приемки системы.
Заказчик назначает ответственных специалистов по тестированию доработок, определяются порядок и сроки тестирования, согласовываются с Исполнителем.
6) Требования к составу и содержанию работ по подготовке объекта автоматизации к вводу системы в действие.
Заказчик предоставляет требования по начальным корректировкам ИБ, осуществляемым через пакетный ввод данных.
7) Требования к документированию.
Постановщик и Исполнитель утверждают содержание документации по доработке.

Надеемся, что наши советы помогут в составлении ТЗ и решении Ваших задач.

Назначение, цели ТЗ

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

Есть мнение некоторых “побитых” опытом людей, что ТЗ надо писать так, как будто с ним вы будете присутствовать на суде и использовать его в качестве защиты. Может это и крайность, но тем не менее - повод лишний раз задуматься о важности хорошо написанного и детализированного ТЗ .

По своему объему ТЗ может быть достаточно большим документом. Web-компании часто предлагают помощь по составлению ТЗ отдельной услугой, как правило 10-20% от стоимости всей разработки сайта.

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

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

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

  • Простая истина - чем сложнее проект, тем детализирование должно быть ТЗ.
  • Среди возможных вариантов можно назвать ТЗ, описывающее главные страницы интерфейса со всей совокупностью элементов на ней и описанием их поведения. Или же это может быть лаконичное описание нескольких страниц для сайта-визитки и т.п.
  • В ТЗ для программиста не должен упоминаться дизайн элементов или звучать пожелания по дизайну. Задание все-таки для программиста..
  • Описания задач в отдельных частях ТЗ должны быть граничными. Что это значит? Нужно четко обозначать конец конкретного пункта задания. В ТЗ не должно быть абстрактных фраз типа «должна быть удобная навигация». Это все субъективные признаки – одним удобно, другим не удобно и понять выполнен ли данный пункт бывает сложно из-за нечеткости положений ТЗ. Т. е. это необходимо контролировать.
  • Для несложных сайтов, где нужно описать какой-нибудь функциональный модуль, чтобы заново не изобретать велосипед, нужно проанализировать сайты с похожим функционалом, так сказать, провести анализ конкурентов; сохранить гиперссылки на страницы с требуемыми элементами интерфейса и функциями, и включить их в ТЗ с расширенными пояснениями о том, что именно делать. Также необходимо в обязательном порядке снять скриншоты с нужных страниц на случай, если сайт через время будет не доступен. При этом можно ставить свои пометки на изображениях (благо средств сейчас много для этого - click2.net, Awesome Screenshot и прочие).
  • Если дизайна для страниц нету или он не так важен в рамках какого-то проекта, скажем, заказчик решил сэкономить на дизайне админ-панели сайта, в этом случае программист вполне может использовать прототипы.

Справка

Прототип - это графическая схема размещения элементов интерфейса. Грубо говоря, нарисованная в специальной программе страница со всеми элементами.

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

Из популярных можно выделить:
– среди бесплатных: iPlotz, MockFlow, Mockup Builder, Cacoo;
– среди платных: Creately, ProtoShare, Adobe Fireworks,Axure . Возможностей в общем много - выбирай, осваивай, рисуй…

Общая структура ТЗ. От абстракции к конкретике…

Одна из возможных структур сайта, подчеркну возможных, может выглядеть примерно так:

  1. Общая информация о сайте.
  2. Функциональное назначение сайта.
  3. Понятия и термины
  4. Описание модулей сайта
  5. Функциональные характеристики
  6. Описание страниц.
  7. Резервирование и надежность.
  8. Хостинг для сайта.

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

2. Функциональное назначение сайта
Тут краткий перечень того, какими техническими средствами или инструментами должен обладать сайт, исходя из общей цели. Поясню на примере. Для сайта-визитки это может быть банально, форма обратной связи, перечень основных страниц, например с «о компании», «контакты» и прочие.

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

4. Описание модулей сайта.
Этот раздел включает список модулей, которые используются на сайте. Это вполне например может быть упоминаемая выше форма обратной связи (ФОС). Но, что очень важно - нельзя просто писать «Должна присутствовать ФОС». Каждая сущность требует определения своих атрибутов! В данном случае атрибуты могут быть такими:

  • Поле «Ваш имя»;
  • Поле «Ваш е-mail»;
  • Поле «Ваш вопрос»;
  • Поле ввода капчи для защиты от спам-роботов.

И все это должно быть четко прописано, что бы потом не возникло вопросов:«…а где перечень выбора категории вопроса? » или что-то в этом роде.

5. Функциональные характеристики
Сюда можно отнести, например, список браузеров, где сайт должен корректно отображаться и работать. Например, некоторые заказчики могут требовать, что бы их сайт работал корректно и в небезызвестном Internet Explorer 6, что бы не терять хоть и небольшую, но долю возможных посетителей.
Если планируется делать высоконагруженный сайт – это тоже нужно указывать. Высоконагруженный сайт требует другого подхода при разработке и по настройке сервера.

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

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

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

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

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

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

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


Copyright 2019. All rights reserved.

Рекомендуем почитать

Наверх