О проблемах связки бизнес-аналитики - разработчики

Авторы: Алексей Янчук, Константин Кондратюк

Каждому айтишнику приходилось читать творчество бизнес-аналитиков, называемое спецификацией. Что мы частенько видим перед собой? Путанное, неполное, противоречивое описание системы. Концентрируется на тривиальном. Сложные моменты объясняются двумя-тремя ничего не говорящими предложениями . В отдельных клинических случаях бывало и так, что согласно спецификации одна и та же функция системы должна работать диаметрально противоположно -- в зависимости от того, читаете вы главу 3 или 9ть.

Можно привести свой опыт разработки проекта по спецификации. Все делаем по книжке, клиент подписал задание, рисуем прототипы, регулярно устраиваем чек-поинты с представителями пользователей, собираем обратную связь, уточняем планы. И вот, у нас демо перед запуском. Приглашаем небольшой коллектив представителей заказчика, показываем им систему. И тут главный товарищ со стороны заказчика говорит: а что-то я не вижу вот такой вот структуры данных в интерфейсе. А я (Алексей Янчук) с удивлением -- простите, какой-какой структуры? Главный сдвигает брови, и сурово спрашивает, а зачем мы его тогда пригласили на демо, если самого важного во всей системы по факту не наблюдается? Простите -- говорю ему -- давайте обратимся к заданию. Вот тут у нас спецификация на 50 страниц, вот мы по ней все сделали. Не все! -- отвечает заказчик, открывает спецификацию на середине и тыкает пальцем. Вот! -- всем body language показывая, какого "высокого" он мнения о наших умственных способностях -- вот тут доходчиво написано, что мне надо, а все остальное -- это просто рюшечки вокруг ключевого функционала!

Что оказалось? В спецификации из 50 страниц на суть того, что должна делать система было отведено… 4,5 строчки текста. Четыре с половиной! Остальное, как оказалось, было добавлено "для солидности". Только вот мы разработчики, а не телепаты, и чужие мысли на расстоянии читать не умеем.

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

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

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

Бизнес-анализ -- в ИТ -- нужен, чтобы донести задачу до разработчиков, поскольку бизнес-клиент эффективно это сделать-- в силу объективных причин -- не может. К сожалению, частенько на практике бизнес-анализ заканчивается простым переведением слов клиента в MS Word. Что, как мы знаем, особо никому не помогает, зато генерирует занятость аналитикам. ;-)

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

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

В третьих, анализ должен обозначить допустимые отклонения от того, что заявлено в спецификации. Если заказанная система должна обрабатывать на пике 10,000 транзакций в минуту, что случится, если в реальной жизни максимум на пике упадет до 9,500?

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

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

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

RSS-материал подписаться на рассылку

Опрос

Какой тренинг Вам наиболее интересен?:
 

Яндекс.Метрика