{"id":14276,"url":"\/distributions\/14276\/click?bit=1&hash=721b78297d313f451e61a17537482715c74771bae8c8ce438ed30c5ac3bb4196","title":"\u0418\u043d\u0432\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u043b\u044e\u0431\u043e\u0439 \u0442\u043e\u0432\u0430\u0440 \u0438\u043b\u0438 \u0443\u0441\u043b\u0443\u0433\u0443 \u0431\u0435\u0437 \u0431\u0438\u0440\u0436\u0438","buttonText":"","imageUuid":""}

«Делай все по чертежу» или как написать ТЗ

Привет! Меня зовут Коренев Александр, я соучредитель Магазина полезных подарков Nsk-digital.ru, в нем уже 8 лет выполняю функции директора по ИТ. Я занимаюсь доработками crm, сайта, различных сервисов. Причем делаю это все в условиях ограниченного бюджета.

Хочу поделиться опытом организацией разработки ПО в небольших компаниях. Эта история не про Яндекс, Сбер или Газпром с их мега и гига бабками, а про маленький региональненький "свечной заводик", который хочет допиливать под себя типовые решения вроде 1с, opencart, wordpress и т.д.

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

Разберем на примере из жизни.

Есть проблема:

Некоторые поставщики «случайно» выставляют в счете цены по менее выгодной для нас колонке. Или цены меняются, но поставщик об этом не уведомляет. Когда закупаешь 10 позиций, изменения видны. Но когда это 2 тыс позиций, на память уже нереально полагаться.

С чего начать?

1. Сформулируем потребность

Важно сформулировать не на словах, а на бумаге.

В правильно заданном вопросе содержится половина ответа

Для нас это будет:

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

2. Описываем общую логику работы

Пишем. Именно пишем, а не проговариваем в уме

Описываем все, что мы хотим увидеть по окончанию работ

  • Каждый раз при заведении Поступления сопоставляем для каждого товара входящие цены из ближайшего поступления по этому же поставщику
  • Если входящая цена больше или меньше 3%, выводим этот товар в отчет
  • Необходимо вывести разницу в ценах в рублях и процентах, а так же дату предыдущего поступления и его номер
  • ...

3. Визуализируем необходимый результат

Нарисуй, что хочешь получить. Меньше будешь дорабатывать

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

4. Тестируем визуализацию

Пытаемся поработать с визуализацией. Выясняем, насколько она удобна. Может что-то надо помечать цветом? Как-то надо сортировать данные? Иначе расположить кнопки?

В нашем случае заполняем таблицу реальными данными.

5. Дополняем изначальную логику работы

С мыслью надо переспать

Желательно подождать 1-2 дня после составления техзадания. Как правило появляются новые идеи и мысли.

Оформление ТЗ

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

6. В нескольких предложениях указываем суть доработки

Программист должен сразу понять, о чем идет речь. А не после чтения нескольких листов со слишком детализированными хотелками. Желательно сразу же указать версию имеющегося ПО. К примеру:

На базе 1С Предприятия 8.2. реализовать отчет, в котором будут выводиться изменения закупочных цен.

7. Все требования перечисляем по пунктам

Делай все по чертежу и не будет гундежу

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

...

П5. Каждый раз при заведении Поступления сопоставляем для каждого товара входящие цены из ближайшего поступления по этому же поставщику

П6. Вывести данные в следующую таблицу

...

8. Используем как можно больше схем, рисунков, таблиц, скринов, видео экрана.

Разработчик - не телепат!

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

На этом все

Буду признателен замечаниям и комментариям.

В следующем посте я расскажу, где и как искать разработчика.

0
Комментарии
-3 комментариев
Раскрывать всегда