На одном языке

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

Работа программиста в финансовой компании в то время была сложнее и ответственнее, чем сейчас. Не примите эту мысль за ностальгию по старым добрым временам. Все обстоит строго наоборот: если бы сегодня молодому и амбициозному айтишнику довелось очутиться в том времени, он бы по-братски проникся к нам сочувствием. На тот момент 95% программного обеспечения, которое использовалось в повседневной работе, было самописным: сотрудники компании создавали его под себя и свои нужды, руководствуясь исключительно личными представлениями о прекрасном.

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

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

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

На одном языке

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

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

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