Итак, выяснилось, что наш потенциальный (или уже реальный)
клиент заинтересован в решении некоторой задачи.
Обычно, все это происходит уже тогда, когда кем-то проделана
совсем не маленькая работа. Хотя случается, что и в дружеской беседе под пиво…
Теперь у нас есть возможность поговорить с самими клиентом.
И услышать, что же он на самом деле хочет, и что его в действительности
волнует.Если вы что-то уже слышали о
проблеме этого клиента из третьих рук, то ваши шансы понять, что же в
действительности требуется, довольно высоки, но я бы посоветовал не радоваться
раньше времени.
Работа программистав нашей реальности дело очень интересное. Самое главное- избавиться от иллюзии, которые внушает
успешно сделанный проект. Каждый раз, начиная новую разработку, мы снова должны
стать чистым листом, на котором не видно следов предыдущих побед, или
неудач.Момент, когда приходит
понимание требований, когда каждое из них начинает, как голограмма
раскладываться в свой собственныйнабор
решений и проблем, пожалуй, один из самых загадочных и интересных в каждом
проекте. Прелесть профессиипрограммиста состоит еще и в том, что самый ценный навык, не алгоритмы,
или языки программирования, но умение быстро стать настоящим профессионалом в
той области, которая сейчас автоматизируется. Сохранить ли профессиональные
знания в дальнейшем, или так и оставить их «отлитыми в коде» - отдельный выбор
каждого. Не секрет, что все люди разные, и тех, кому доставляет удовольствие
воспроизводить уже однажды сделанное, ничуть не меньше тех, кому интересно
покорять неизведанное.Но я что-то
отвлекся…
Итак,у нас есть
примерное понимание задачи, как ее видит один из представителей заказчика.
Должен сразу сказать, что начинать разработку со слов только одного человека
можно только в двух случаях:
Это
как раз тот человек, который будет и принимать работу иплатит деньги.
Это
ваш научный руководитель, у которого в голове давно сложилась постановка
(да и реализация) задачи, а вам осталось лишь воплотить замыслы в
реальность.
Во всех остальных случаях надо предпринимать попытки
поговорить с максимально возможным количеством представителей заказчика,
которые будут иметь непосредственное отношение к программе, на всех этапах ее
существования. Естественно, что не обязательно разговаривать с абсолютно всеми
пользователями… «Со всеми» вы встретитесь, если дойдет то внедрения программы.
Пока это наши начальные выпуски, я возьму на себя смелость
выступить в качестве клиента, которому необходимо программное обеспечение
вполне определенного класса.
Директор:
«Я больше не могу на это смотреть …
Они постоянно теряют документы, хорошо ещё, когда это
наши внутренние, но когда это подписанный акт, или договор, это становится
просто невыносимо.
Чтобы найти нужный документ, иногда требуется час, а то и
больше.
Хорошо, хоть попалась толковая секретарша. Теперь все
разложено по разноцветным папочкам. Но вот-вот должен появиться серьезный
заказ, работа по нему должна быть согласована и склад, и монтаж, и настройка, и
масса технической документации. Я должен быть уверен, что все будет сделано
вовремя, что никто ничего не забудет».
Вот это она и есть, «самая общая постановка задачи», которую
мы будем решать…
В следующем выпуске мы наметим шаги, которые помогут нам
выяснить, что же действительно происходит у нашего «клиента». Может быть, мы
даже поймем, что действительно нужно, чтобы улучшить ситуацию.