Региональный директор по поддержке разработчиков Microsoft о российской индустрии ПО

Андрей Федоров: «Первый стул мы купили через три года, а первое лицензионное ПО — через полгода»
Андрей Федоров, руководитель компании Digital Design (http://www.digdes.com), уже семь лет разрабатывающей информационные системы для Октябрьской железной дороги, в своем выступлении на конференции «Инфотранс ?99» постарался продемонстрировать, что процесс разработки программных систем перестал считаться искусством с непредсказуемым результатом. Федоров, по совместительству региональный директор по поддержке сети разработчиков Microsoft, в беседе с ответственным редактором журнала «Открытые системы» Дмитрием Волковым поделился своими взглядами на программную индустрию.

Чем занимается Digital Design?

Мы разрабатываем заказные системы, используя, в частности, технологии наших бизнес-партнеров — IBM (промежуточное ПО MQSeries) и Microsoft. У компании офис в Питере и представительство в Англии. Среди основных продуктов и услуг: системы документооборота, хранилища данных, система технологической почты, геоинформационные системы, консалтинг и обучение. В числе клиентов — Октябрьская железная дорога, авиакомпания «Пулково», Государственная Дума, компания «Балтика», банк «Петровский», Сбербанк. Digital Design работает и с рядом зарубежных заказчиков. Среди них, в частности, концерн Volvo, получивший от Digital Design мобильную систему управления продажами, используемую дилерами этого автогиганта.

Один из распространенных в общественном мнении штампов — невысокое качество программное обеспечение от Microsoft. Ваше мнение по этому поводу?

Следует отметить два аспекта: технологический и маркетинговый. Прежде всего, за конечный результат, будь то железнодорожный мост или программная система, отвечает, в конечном счете, разработчик — инженер или руководитель софтверной компании. Именно он должен для каждой задачи выбрать адекватное решение. При сдаче проекта в эксплуатацию инженер стоит под мостом, который он построил, подтверждая тем самым свою уверенность в качестве решения. Когда мост упадет ему на голову, будет бессмысленно говорить о том, что виноват металлург, который поставил плохой швеллер или болт, не выдержавший нагрузки. Именно инженер отвечает за правильность выбора компонентов будущей системы и формирование критериев их оценки. Сегодня часто проблема упирается в незнание проектирующими ИТ-инженерами своего дела, отсутствие профессионализма. Если решения от Microsoft не отвечают поставленным критериям — нечего выбирать, например, Windows NT, а потом пенять на корпорацию за низкое качество операционной системы. Чаще всего оказывается, что причина ошибок в неверном использовании продукта.

Возьмем, например, такую ошибку или, скорее, недочет, как отсутствие в Windows NT 4.0 возможности изменять состояние domain controller на stand alone, которая в Windows 2000, кстати, устранена. Если в проекте требуется изменять статус операционной системы, что называется, «на лету», тогда, безусловно, NT по данному критерию не проходит. Но если рассмотреть другие критерии и проранжировать их, то может оказаться, что указанный недочет не так существен, тем более что независимые разработчики предлагают специальные продукты, позволяющие изменять состояния системы. Кроме того, надо посмотреть, как эта функция реализуется (или не реализуется) в других ОС.

Нельзя однозначно говорить: NT — это плохо, а Unix всегда хорошо. Взять хотя бы обычную ручку, дешевую пластмассовую или перьевую от «Паркера», — каждая решает свою задачу. Но если «Паркер» лучше пишет, то это совсем не означает, что я куплю его своему ребенку в школу. Продукт должен удовлетворять каким-то конкретным требованиям, нет требований — нельзя говорить и о качестве. Для школы одни требования (дешевая, безопасная, удобная, легкая), для ручки — аксессуара делового человека — совсем иные.

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

Очень тесно с технологическим связан маркетинговый аспект качества продуктов Microsoft. С целью повышения уровня разработок и исключения давления продавцов и создан институт региональных директоров по поддержке сети разработчиков. На территории бывшего СССР их три: Санкт-Петербург, Казань, Киев, а всего 130 человек по всему миру. Каждый работает на общественных началах, полностью независим от местных коммерческих представительств Microsoft и подотчетен непосредственно центру. Мы имеем доступ к самым свежим версиям всех программных продуктов, любой корпоративной информации, что необходимо для взаимодействия с региональными разработчиками, минуя коммерческие каналы. Кроме информации и свежих версий ПО, за свою работу мы иногда получаем от корпорации «подарки», многие из которых часто выбираются в соответствии с американским менталитетом и их иногда трудно даже назвать вознаграждением.

Что вы думаете о российской культуре разработки ПО?

От национальности и вероисповедания культура программного обеспечения не зависит, но если брать в среднем по России, она у нас ужасна. И главная причина в нежелании следовать корпоративным стандартам, в отсутствии дисциплины. А ведь если все равно как делать, то почему бы не следовать стандартам? У нас долгое время программирование считалось искусством, однако сегодня на первом месте стоит решение. Время, когда программирование было искусством, прошло. Искусством был первый автомобиль, а в настоящее время его массовое производство, как и программирование, поставлено на конвейер, с которого сходит продукция с заведомо определенным качеством. Сегодня программирование — промышленный процесс.

Ваше отношение к пиратским ПО, рейдам милиции на «Горбушке» и т. д.?

Как продавец программного обеспечения, антипиратские рейды считаю важным делом — другой вопрос, насколько они эффективны. Вопрос о начальниках, использующих у себя на предприятии нелицензионное программное обеспечение, несколько сложнее. Начальники ведь тоже бывают разные, и часто сами они в личном плане отнюдь не бедствуют, так почему бы им не приобрести своим разработчикам лицензионное ПО. Как компания мы работаем уже семь лет, но свой первый фирменный компьютер купили только на четвертом году жизни, первый стул — через три года, а первое лицензионное ПО — уже через полгода. Прежде всего, у нас было желание делать программное обеспечение профессионально, а я не верю, что можно сегодня работать на высоком уровне, не имея доступа к Сети, без нормальной документации и лицензионного инструментария. Хороший автомеханик может и не разъезжать на крутых авто, однако куда он обычно вкладывает последнюю копейку? В инструмент, который у него всегда будет самый современный и удобный. У него нет лишних денег, но это подход профессионала.