Каким должно быть ТЗ на Корпоративную ИС?

Представьте, что у вас есть корпоративная информационная система в развитие которой вкладывается 100 млн. рублей ежегодно. С момента внедрения документация на систему превратилась из одного Технического задания на 600 страниц в 300 Технических заданий, у каждого из которых есть дополнение в количестве от 1 до 10 штук, и теперь она занимает объем 3 офисных шкафов и это ещё не конец… Фабрика по производству ПО исправно и ритмично (с периодичностью в месяц) выпускает обновление системы и документирует изменения.

image

Ребята, которые разрабатывали 34-й ГОСТ явно не рассчитывали на то, что дело может принять такой оборот. Да и книги по гибким методологиям разработки тоже не дают каких-то рекомендаций как с этим быть.

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

  • Как в этом объеме документов найти те, что описывают работу определенного функционала системы?
  • Как из 20 найденных документов, описывающих Как дорабатывали функционал за последние 5 лет, понять его устройство сейчас?
  • Как за списком требований «сделать, добавить…» рассмотреть заложенную бизнес-логику?

Часть №1 “Разработка ТЗ”


«Заказчик: Ребята, это фигня какая-то, ничего не работает.
Разработчики: У нас всё сделано согласно ТЗ.»

Технические задания к КИС выглядели как систематизированные перечни требований. Разработать формы, создать поля такого-то типа, такой-то размерностью и логикой формирования… Отличный документ для разработчика, который быстро превращается в чек-лист того, что нужно сделать и проверки что сделано.

Была у этого одна проблема, если сравнить разработку КИС с постройкой ракеты, то это выглядело так, нужные детали создали, а в отдельных местах собирать и присоединять их не стали, так как не было сказано: а) что это нужно сделать, б) как нужно собрать.

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

Итог: Заказчик недоволен и считает, что мы плохие Аналитики… и он прав.

Документ составлен для Разработчиков, а подписывается под ним Заказчик. Всё что в нём изложено «какие поля добавить и т.д.» его не интересует, он в этом не понимает и не должен разбираться, ему интересно получить работающее ИТ-решение его бизнес-задачи. Когда Заказчик ставит подпись на ТЗ он верит, что получит именно последнее.

Я прихожу к директору, я говорю:
— Кто сшил костюм? Кто это сделал? Я ничего не буду делать, не буду кричать, я только хочу в глаза ему посмотреть.
Выходит сто человек. Я говорю:
— Ребята, кто сшил костюм?
Они говорят:
— Мы!
Я говорю:
— Кто это «мы»?
Они говорят:
— У нас узкая специализация. Один пришивает карман, один — проймочку, я лично пришиваю пуговицы. К пуговицам претензии есть?
— Нет! Пришиты насмерть, не оторвёшь! Кто сшил костюм? Кто вместо штанов мне рукава пришил? Кто вместо рукавов мне штаны пришпандорил? Кто это сделал?
Они говорят:
— Скажите спасибо, что мы к гульфику рукав не пришили.
Представляете? Их – сто, а я – один. И все стоят, как пуговицы: насмерть. И я сказал:
— Привет, ребята! Вы хорошо устроились!
Аркадий Райкин

Новый шаблон ТЗ мы разбили на две части: первая для Заказчика, вторая для Разработчиков.

Первую часть ТЗ разрабатывал Бизнес-аналитик с Заказчиком с установкой ни в чем себе не отказывать. На выходе этого полета фантазии идеальный описанный и иллюстрированный вариант выполнения бизнес-операции Заказчика с использованием КИС. Оно состояло из бизнес-сценария и системных сценариев использования (use cases).

Дальше мечта бизнеса спускалась на бренную землю возможностей КИС, где Системный аналитик, Архитектор и Главный разработчик думали над тем как сказку сделать былью. Из горнила рождалась вторая часть ТЗ, которая трассировала бизнес-логику в требования к системе.

После появления второй части и подтверждения «Разработкой», что всё будет работать как описано в первой, Заказчик подписывал первую часть ТЗ и только её.

Пример бизнес-сценария


Пример системного сценария


Так был дан ответ на вопрос «Как за списком требований «сделать, добавить…» рассмотреть заложенную бизнес-логику?».

Часть №2 “Внесение изменений в ТЗ”


«Собери общую картину работы функционала из 20 документов (Пазл 18+)»

Документ №1 (основное ТЗ): Сделать поле №1.
Документ №2 (Дополнение №1 к ТЗ): Сделать поле №2.
Документ №3 (Дополнение №2 к ТЗ): Внести изменения в поле №1, сделать поле №3.
Документ №4 (Сменился РП по направлению, поэтому создано новое ТЗ): Внести изменения в поле №2 и поле №3.
Документ №5 (Дополнение №1 к новому ТЗ): Внести изменение в поле №3 и №1, сделать поле №4.
Документ №6 (Новый РП нашел основное ТЗ, Дополнение №3 к основному ТЗ): Внести изменение в поле №2 и поле №4.

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

Мотив: у нас всегда один актуальный документ.

Нарисовалась проблема. Заказчик начал грустить, что из-за одного нового поля, он должен перечитывать весь документ, чтобы поставить на нем свою подпись. Представим, что одно ТЗ в среднем это 40 страниц, а в месяц Заказчик получает около 10 таких документов (фабрика же / быстрая разработка …).

Вернули дополнения к ТЗ и в них стали указывать, что на что меняем в основном ТЗ или какой новый раздел в него добавляем. Заказчик согласовывает дополнение к ТЗ на 2-3 страницы, а на его основании происходило обновление основного ТЗ. На выходе всё тот же один единственный документ, который описывает актуальное состояние ИТ-решения.

Пример внесения изменений в основное ТЗ с помощью дополнения
image

Так мы ответили на второй вопрос «Как из 20 найденных документов, описывающих Как дорабатывали функционал за последние 5 лет, понять его устройство сейчас?».

Часть №3 “Навигация по ТЗ”


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

  1. Подразделения заказавшего разработку
  2. Заказчика в подразделении, который формулировал и ставил задачу
  3. Руководителя проекта нашего отдела, который отвечал за реализацию
  4. Системного аналитика подрядчика, написавшего ТЗ для разработчиков

Описали базовый бизнес-процесс компании (без фанатизма, крупными мазками) и внутри, по мере необходимости, детализировали/дробили процессы на процедуры.
Каждому ТЗ указывали:
5. в рамках какого бизнес-процесса выполняются работы и
6. какую процедуру оно реализует.

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

Вот такое решение для последнего вопроса «Как в этом объеме документов найти те, что описывают работу определенного функционала системы?».

Каким должно быть Техническое Задание?


Один всегда актуальный документ. Достаточно прочитать только его, чтобы понять как устроен бизнес-процесс и его автоматизация. Чтобы найти нужные ТЗ в них есть метки в виде названия функционала КИС, бизнес-процессов и процедур, которые оно затрагивает.
Шаблон Технического Задания


Поделитесь какое ТЗ у вас, под какие задачи оно у вас настроено и как с ними справляется.

Что почитать по теме


  1. Применение Сценариев использования (use case) при разработке ТЗ
  2. Что такое Use Case и зачем они нужны?
  3. Книга Алистера Кокберна «Writing Effective Use Cases» на русском языке
  4. Техническое задание на сайт
  5. Техническое задание на сайт. Практика
  6. Описание процесса разработки ПО в компании Nevlabs с примером ТЗ (размещен на сайте компании)

UPD.
Рекомендую прочесть комментарии к статье. Особенно ветку комментария habrahabr.ru/post/312538/#comment_9897642
В нём хорошо раскрывается первая часть статьи «Разработка ТЗ» (на Корпоративную ИС).
Поделиться публикацией
Ммм, длинные выходные!
Самое время просмотреть заказы на Фрилансим.
Мне повезёт!
Реклама
Комментарии 27
  • +2
    Вы же в курсе, что ракеты, как практически и любой сложный современный продук так и создаются — детали делаются в разных местах, а затем собираются в единый продукт. В поисках идеального тз, вы не получите не продукта, ни тз. А вот если один продукт разобьёте на кучу мелких, то всё станет гораздо проще. А для простого продукта тз можно писать прямо на ходу, а то и постфактум.
    • 0
      А вот если один продукт разобьёте на кучу мелких, то всё станет гораздо проще.

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

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

      В поисках идеального тз, вы не получите не продукта, ни тз.

      Вторая статья в списке для чтения на Хабре по теме как раз про это.
      Полное отсутствие ТЗ порождает Diff(-erence) между тем что сделано и ожиданиями Заказчика.
      ТЗ эту разницу позволяет сократить. Что включать в ТЗ это уже предмет изучения шишек на лбу команды.

      Если Заказчик не зрелый в области проектирования своих собственных бизнес-процессов, то с ним точно надо описывать Бизнес-процесс с применением ИС. Это точно лучше, чем множество итераций/спринтов, и через них приходить с ним к тому процессу который будет ему удобен и более эффективен в сравнении с тем, что у него был до этого. Будет и быстрее по времени и ресурсов «сожжено» меньше.

      Мой опыт говорит о том, что когда Заказчик не знает чего хочет, быстрой итерационной разработкой это не лечится.

      Дальше бизнес-процесса и сценариев использования системы можно не углубляться, если у вас чистое поле или «свежий» функционал.

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

      Момент определяется достаточно просто, когда используя старую парадигму написания легкого ТЗ или без него, вы начинаете делать что-то, выпускаете обновление и что-то в другом месте отваливается.
      Чем чаще и в больших местах отваливается, тем больше это становится актуальным.
    • +2
      Если в ТЗ есть текст типа
      Документ №1 (основное ТЗ): Сделать поле 1.
      Документ №2 (Дополнение №1 к ТЗ): Сделать поле №2.

      то:
      1. удивительно, что оно на 40 страниц
      2. это плохое ТЗ

      Правильнее писать в ТЗ верхнеуровневый список функциональности, которая будет сделана, например:
      шаг 1 Ввод клиентских данных
      шаг 2 Сохранение клиентских данных.
      • 0
        Ага, то есть написать Т.З. в текстовом файле, положить его в git и иметь всё, что вы описали (изменения, навигацию, подпись только под diff-ом) и много чего еще (pull — request-ы, например) — не вариант?
        • 0
          Вариант и даже очень.

          Два момента:
          Когда мы этот снежный ком толкнули, мы не думали о том, что нам это понадобится.
          А когда он нас накрыл, не было необходимой квалификации, чтобы этот вариант реализовать. Тогда он даже не пришёл в голову, насколько смогли «подтянуть себя за волосы», из того места где сидели, настолько подтянули.
          • 0
            GIT + LaTeX
            остаётесь в относительно текстовом файле, так что правки вполне читаемы в истории версий.
            Богатство оформления и возможность вывести на выходе нормальный PDF
        • 0
          Заказчик подписывал первую часть ТЗ и только её

          А потом начнется: "А мне вот это не нравится — некрасиво. Тут я хочу вместо обычной кнопки красную и круглую. А в таком то случае, чтоб сообщение пользователю было «ололо», а не «трололо» и т.п.
          И все переделки/доделки, конечно же, за счёт исполнителя.
          • 0
            А мне вот это не нравится — некрасиво. Тут я хочу вместо обычной кнопки красную и круглую. А в таком то случае, чтоб сообщение пользователю было «ололо», а не «трололо» и т.п.

            Мы лечили это следующим образом:
            • Описание выполнения бизнес-операций сопровождалось картинками, где уже на старте было видно как будут выглядеть кнопочки, где круглые, а где красненькие. Что в ответ на их нажатие появится.
            • Мы настраивали Заказчиков минимум на три итерации. Первая — минимально работающее ИТ-решение решающее бизнес-задачу. Вторая — удобно и красиво. Третья — чтобы быстро работало.
            • Заказчик подписывал первую часть ТЗ и проверял в соответствии с ней, всё что не вошло в ТЗ, это дополнительное требование. Дополнительные требования оплачиваются за счёт Заказчика. При этом главный критерий приемки — то, что созданный ИТ-продукт решает бизнес-задачу ради которой задумывался. Система выдаёт целевой бизнес-результат, указанный в ТЗ.

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

            На месте заказчика, я бы послал исполнителя с таким подробным ТЗ.
            • 0
              Цитата из 34.602:
              2. Необходимость согласования проекта ТЗ на АС с органами государственного надзора и другими заинтересованными организациями определяют совместно заказчик системы и разработчик проекта ТЗ на АС,
              Работу по согласованию проекта ТЗ на AC осуществляют совместно разработчик ТЗ на АС и заказчик системы, каждый в организациях своего министерства (ведомства).
              6. Согласование проекта ТЗ на АС разрешается оформлять отдельным документом (письмом). В этом случае под грифом «Согласовано» делают ссылку на этот документ.
              7. Утверждение ТЗ на АС осуществляют руководители предприятий (организаций) разработчика и заказчика системы.

              Это рекомендованное дополнение, и тем не менее.
              Руководитель предприятия заказчика и не должен изучать ТЗ — ему достаточно листа согласования. Все дело уже в том, как он составлен.
              • +1
                Я говорю о том, что ТЗ не должно (или почти не должно) содержать требований по способу реализации функций системы. Это внутренний вопрос исполнителя, часть его работы. Заказчика не должно волновать, каким именно образом исполнитель сделает ему красиво.
                • 0
                  Это да, там это практически прямо написано:
                  Задаваемые в ТЗ на АС требования не должны ограничивать разработчика системы в поиске и реализации наиболее эффективных технических, технико-экономических и других решений.

                  Т.е. нельзя писать «язык программирования — Java», например. Это можно писать уже в проектной документации.
                  Другими словами, заказчик не может требовать сортировку пузырьком, но он может требовать определенной скорости сортировки на неком типовом наборе данных, например. Или ограничить занимаемый при этом объем памяти. Но не конкретный алгоритм и не конкретный язык.
            • 0
              Мы работаем по методологии Agile, но с использованием стиля Waterfall, а именно отталкиваемся от небольших спринтов, которые основаны на требованиях заказчика, далее делаем макет приложения и потом пишем ТЗ на приложение/АС, документ подписывает заказчик и он передаётся всем участникам разработки, в итоге за короткий период мы получаем работающий скелет ПО, на который навешиваем игрушки выпуская новые версии моб. приложения :-) Главная ценность такого подхода — экономия бюджета заказчика, нашего времени для написания ТЗ и разработку ПО!
              • 0
                Первый пункт я так понимаю это классическое прототипирование?
                • 0
                  Вот поэтому и все движутся в направлении DevOps. Документация — это тоже продукт и она должна разрабатываться по аналогии с исходными кодами. Т.е. должа быть система контроля версий (не важно SharePoint или что-то более удобное), все изменения должны быть легко отслеживаемыми (в Word-е есть отслеживание изменений и комментарии для этих целей).

                  На мой взгляд лучше иметь один актуальный документ, чем кучу приложений. Приложения могут показываться заказчику и подписываться им, но в этих приложениях — просто список изменений по отношению к предыдущей версии ТЗ.
                  • 0
                    Забавно читать подобные статьи, когда ни разу не работал по подобным тз :-)
                    Я фрилансер, работаю в разных командах исключительно с технически-грамотными заказчиками из «далекого зарубежа».
                    Мне трудно представить масштаб проекта взятого в пример для этой статьи, так что, если у вас проект размером с авиалайнер, то, мое мнение, вероятно, не релевантно.
                    Так вот, я работаю в основном по системе scrum или тому подобных решениях. Никогда вообще не встречал тех проблем, что вы описали, хотя постоянно о них слышу… исключительно от тех, кто работает с заказчиками из рф.
                    • 0
                      Никогда вообще не встречал тех проблем, что вы описали, хотя постоянно о них слышу… исключительно от тех, кто работает с заказчиками из рф.


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

                      В нашем случае это была Pivotal CRM и покупалась в том момент, когда система входила в лидеры квадранта Gartner. Нас оправдывает только то, что лучших практик тогда не было.
                      Система создавалась для развития ипотечного рынка.
                      Ребята ездили в Америку изучать ИТ-системы и опыт Freddie Mac и Fannie Mae.
                      После этого было принято решение делать своё.

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

                        И какой объём занимало ТЗ на ИТ-системы Freddie Mac и Fannie Mae?

                        • 0
                          Не смогу ответить на ваш вопрос. Был не с самого начала появления нашей системы.

                          Пришел работать в компанию уже после того, как ребята съездили в командировку, CRM-система была закуплена и развернута, начат процесс по её доработке/развитию.

                          У нас был и электронный и бумажный архив документации на систему. Последний ведется по той причине, что компания каждый год проходит проверку Генеральной Прокуратурой и Счетной Палатой на предмет целевого расходования средств, так как основной акционер компании Государство.
                          Их интересует:
                          — кто авторизовал расходование средств на ИТ-систему,
                          — на что они пошли и зачем это было нужно,
                          — кто делал / кто получил деньги,
                          — кто осуществлял приемку.

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

                          Погуглил.
                          Так как у меня остались смутные воспоминания, со времен изучения SADT, что в Америке в 70-е годы документация на ИТ-системы доходила до нескольких тон, если это касалось систем масштаба страны.

                          Structured Analysis and Deign Technique появилась в 1969-1973 году.
                          Упомянутые здесь в комментариях GIT и SVN появились в 2000-е.
                          CVS первый выпуск 1990.

                          Freddie Mac появилась в 1970 году.
                          в 2006 году оборот компании 44 млрд. долларов.
                          Активы в 2015 году 1,946 трлн. долларов.

                          Fannie Mae появилась в 1938 году.
                          Активы в 2014 году 3,2 трлн. долларов.

                          Даты создания компаний, масштаб бизнеса, дата появления SADT и даты появления систем управления версиями указывают на то, что у каждой ТЗ на ERP-систему могло быть больше чем в 3 шкафа.
                    • 0
                      На мой взгляд, в статье перепутаны 2 разных документа: техническое задание и руководство пользователя. У нас техническое задание пишется на текущее изменение системы, т.е. на то, что нужно добавить, удалить или изменить. Если же есть необходимость поддерживать в актуальном состоянии руководство пользователя, то изменения в нем должны вноситься техническим писателем параллельно с изменениями в системе (или сразу после них).

                      Посмотрел на Ваш образец технического задания. Если речь идет о внутренней разработке, то, на мой взгляд, оно чрезвычайно сложное и изобилует ненужными разделами. Мы придерживаемся той точки зрения, что результат нашей работы — это готовая программа, а не техническое задание. Поэтому стараемся делать его максимально кратким и максимально полезным.
                      • 0
                        Комментарий Кирилла навел меня на ряд размышлений, что вылилось в не короткий ответ (читать ниже), который лучше раскрывает поднятую тему.
                        Locolind, 7 ноября в 22:31
                        Добрый вечер, Кирилл.

                        Благодарю за комментарий к статье «Каким должно быть ТЗ?» у меня займёт некоторое время подготовить для вас ответ.
                        Хочу уточнить у вас, какие разделы показались вам лишними / не нужными в нашем шаблоне ТЗ?
                        И если есть возможность, то дайте комментарий почему считаете его лишним.

                        Askofen, 9 ноября в 01:13
                        Добрый вечер, Максим!

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

                        Когда документ согласован, то, в зависимости от объема, в системе контроля задач создается новый проект либо создается новая задача. А на ее основе создаются задачи для разработчиков.

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

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

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

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

                        По этой причине описывать работу Корпоративной ИС лучше с точки зрения бизнес-процесса, а не функциональных возможностей системы.
                        Когда описываешь КИС с позиции рабочего процесса ТЗ начинает сильно быть похожим на руководство пользователя, охватывая работу разных типов пользователей в ней. Те участки, что не покрывались текущим решением отражались на схеме и в описании как выполняемые без КИС. Это служит целеуказателем куда дальше развивать ИТ-решение.
                        Полученный документ это:
                        • на 80% готовое руководство пользователя, его остается сгруппировать и структурировать по ролям/группам пользователей.
                        • готовые сценарии для функционального тестирования.


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

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

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

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

                        Вторая причина – ему не дадут это сделать после, а не до. Система находится под большой нагрузкой, переваривает 60 миллиардов рублей в год, в день это 170 мил. рублей в день. В ней работает более 2000 пользователей. Простой системы – это финансовые потери и последующие «перегрузки» в работе компании, так как выпавший в работе день нужно будет нагонять. Есть понимание что “time to market” должен быть минимален на столько на сколько это возможно, но при условии, что риск будет сопоставим с получаемой выгодой. Если риск убытков высок, а выгода не покрывает их, то мы склоны сперва спроектировать новый бизнес процесс, посмотреть как мы будем работать на тестовой среде и только после этого ставить обновление на промышленную систему и проводить изменение в бизнес-процессах компании.
                        Мы придерживаемся той точки зрения, что результат нашей работы — это готовая программа, а не техническое задание.

                        Взгляните на это с ещё одной точки зрения, что результат нашей работы это не готовая программа, а новое ИТ-решение включающее и программу и бизнес процесс.
                        Мне кажутся лишними такие разделы: лист согласования,
                        Мы используем электронный документооборот и систему контроля задач.

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

                        Мне кажется, вы смотрите на неё только с точки зрения Разработчика.
                        Основание для разработки – это для Аудита, чтобы связать то что сделано (на что были потрачены ресурсы) с бизнес-запросами (обоснованием этих затрат).
                        Тема разработки и бизнес-процесс предназначены для Бизнес-аналитика по направлению, чтобы внести данные в реестр ТЗ и в последующем осуществлять навигацию и поиск нужных ТЗ.
                        Постановка задачи, задачи и цель также предназначены для Бизнес-аналитика, чтобы быстро «считать» о чем ТЗ, что им реализовано.
                        Охваченные компоненты – это для Архитектора и Системного Аналитика, чтобы быстро «считать» есть ли интеграция с чем-то ещё или всё в рамках одной ИС.
                        Этапы внедрения – это для Заказчика и Руководителя ДИТ фиксирующие факт окончания работ и подтверждения, что решение принято Заказчиком.
                        Думаю, что документ можно разделить на 2 документа или на 2 части.

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

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

                        За излишней детализацией незримо присутствует нотация IDEF0 (SADT), которая говорит, что у действия есть вход, выход, кто это действие выполняет, инструменты и управление. Мы дополняем вход указанием от кого кому, откуда куда, так как описание текстовое.
                        В таком виде документ поступает на вход бизнес-аналитику, и он готовит второй документ (или вторую часть документа), в которой рисует screen-flow и мокапы экранов.

                        1. А почему вы этого сотрудника называете бизнес-аналитиком, а не системым аналитиком?
                        2. И кто тогда готовит тот документ, который поступает на вход «бизнес-аналитику»?

                        Сложилось впечатление, что вы так разводите два этапа работ, описание бизнес-процесса и проектирование программы.

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

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

                        Так решается проблема, что ребята могут придумать новый концепт, который в корне отличается от существующего, разработаны новые регламенты и подготовлено ИТ-решение, но им просто Страшно переходить на новую схему, так как никто в ней не умеет работать, полное виденье есть у Начальника и Проектировщика, но им страшно не меньше чем всем остальным. Страх нагоняет упоминавшийся выше контекст, что подразделение находится под существенной нагрузкой и они не готовы к возможным не предвиденным остановкам. Поэтому здесь работает стратегия эволюционных изменений в сторону нового концепта.  
                        • 0
                          Максим,

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

                          Это нормально. Главное, что бы логически задания (и модифицируемые системы) были выстроены правильно (с точки зрения их иерархии). В Вашем случае, как я понял иерархия (и логическая последовательность) выглядят так:

                          Бизнес-процесс => Приложение => UI => Подсистемы приложения

                          В таком случае, сначала пишется ТЗ, в котором излагаются новые требования к бизнес-процессу. Результат выполнения этого ТЗ — это описание нового или измененного бизнес-процесса.

                          Измененный бизнес-процесс предъявляет новые требования к приложению. Поэтому следующим шагом пишется ТЗ для приложения. В качестве первого шага при подготовке этого ТЗ описываются изменения, которые необходимо внести в существующий интерфейс. Но не в виде конкретных решений, а в виде проблем (что надо добавить? что — изменить? чего не хватает?) Затем вырабатываются решения перечисленных проблем, которые представляются в виде мокапов, screen flows, детальных юз-кейсов и т.д. и т.п.

                          После этого (или параллельно с этим) начинает готовиться документ, в котором описываются изменения в архитектуре системы, новые компоненты, диаграммы взаимодействия и т.д.

                          Все это можно оформить как в виде различных документов, так и разделами одного документа. Это непринципиально. Главное — соблюдать последовательность.
                          • 0
                            Да, вы верно ухватили суть и процесс.

                            Добавлю ещё пару уточняющих моментов.

                            Момент №1

                            Если функционал новый

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

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

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

                            На этом этапе согласования подключается Тестировщик и вместе с Системным Аналитиком готовит сценарии тестирования.

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

                            Если функционал не новый

                            Изменения в реализованный бизнес-процесс Бизнес-аналитик вносит через документ «Дополнение к ТЗ», который указывает какой раздел описания бизнес-процесса изменяется и на что.
                            И далее по цепочке, подключается Системный аналитик и анализирует новые требования к Приложению.


                            Момент №2

                            Наличие «картинок и кнопок» в ТЗ делает описание бизнес-процесса для Заказчика похожим на правду. Из абстрактного, описание превращается в конкретное.

                            Сравните
                            Создаёт в системе новое поручение через специальную экранную форму.

                            И

                            Нажимает на кнопку «Создать новое поручение»,

                            на открывшейся форме «Нового поручения»
                            сотрудник ОККЭ заполняет поля …

                            Если Пользователь уже знает интерфейс системы, то для него такое описание выглядит ещё более правдивым.

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

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