понедельник, 9 июня 2014 г.

О проекте автоматизации HR-процессов. Написание бизнес-процесса под автоматизацию. Part 5.2

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

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

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

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

Поэтому, получается, что лучше, если картина будет полной и исчерпывающей и даже избыточной (но не слишком), чем неполной. Объясню подробней. Под автоматизацию можно смоделировать только алгоритм работы компьютера - то, что будет выполняться автоматически, но для человека, разрабатывающего систему, картина окажется неполной. Некоторые действия, вырванные из контекста "жизни", будут не понятны, и нельзя будет оценить целесообразность или правильность описываемых этапов и шагов. Это во-первых. Во-вторых, программирование, как ни странно звучит, также творческий процесс, и если программист понимает процесс хорошо, то он может и предложить лучшие варианты реализации, или даже проверить реализуемый процесс на адекватность и логичность - возможно, он предложит вам более интересный и простой вариант, который вы сами не увидели. Если же давать процесс разорванный и только автоматизацию конкретных действий, вы рискуете не использовать полный потенциал разработчика и получить только то, что просили. Чаще всего, это в итоге не совсем то, что вы представляли себе, так как не учли множество нюансов и особенностей разрабатываемой системы.

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

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

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

Если вам это интересно, подписывайтесь, чтобы получать уведомления о продолжении.

Также буду благодарна вашей обратной связи и вопросам. Пишите и я отвечу!

To be continued...

Всегда ваша
Денисова Елена,
https://www.facebook.com/profile.php?id=100004487832154
@EDDenisova