Рафаль Луковецки, директор компании Project Botticelli, хорошо известен как консультант в области моделей программирования (в том числе и Microsoft .NET) и управления проектами в области программных и инфраструктурных решений, а также в области защиты информации. Его часто приглашают на различне ИТ-конференции по всему миру. Так, последние два года на Microsoft TechEd Europe он был основным докладчиком. Я беседовал с ним во время прошедшей совсем недавно в Москве конференции «Платформа 2003», где Рафаль также сделал несколько интересных докладов.
Вопрос. Расскажите, пожалуйста, поподробнее об областях специализации, выбранных вашей компанией?
Ответ. Первая область — модели программирования; вторая — управление проектами, вернее, две небольшие части из этой области — управление проектами разработки больших приложений, в которых участвуют от 20 до 60 программистов, и управление сетевой инфраструктурой. И третья — безопасность, точнее, криптография.
Начну с последнего. Еще будучи студентом, в Польше, мне очень хотелось изучать информатику, но в то время такой возможности не было, и я пошел на математический факультет. Больше всего мне нравилась алгебра, которая и является основой криптографии. Позже, уже в Лондоне, я поступил в Imperial College, где изучал передовые информационные технологии. Сейчас в Botticelli мы консультируем по вопросам использования криптографии: в частности, учим оценивать риски и стоимость информации, строить защиту.
Что касается управления проектами, то мы пытаемся научить людей тому, как завершить проект вовремя, достигнув при этом нужного результата и затратив ранее намеченные средства. К сожалению, значительная часть проектов, связанных как с разработкой программного обеспечения, так и с развертыванием ИТ-инфраструктуры, заканчивается неудачей. Причин тому много: разрыв между бизнесом и технологией, отделение цели проекта от функции сотрудников, использование негибких или необщепринятых процедур.
Наша компания специализируется на использовании Microsoft Solutions Framework (MSF) как для разработки приложений, так и для развертывания инфраструктуры. Сейчас вместе с моим другом Давидом Приди мы готовим к выпуску книгу на тему MSF.
Если смотреть с точки зрения управления имеющейся инфраструктурой, то мы рекомендуем для администрирования и технической поддержки использовать среду Microsoft Operations Framework (MOF), которая помогает найти слабые места в конкретной рабочей среде. MOF тесно связана с набором оптимальных методов IT Infrastructure Library (ITIL ). В свое время я участвовал в реализации одного весьма сложного проекта в сфере здравоохранения для американской организации ветеранов войны, в ходе которой была развернута сеть на базе серверов Microsoft Exchange и SMS, а общее число рабочих мест составило 80 тыс. по всей Америке. Проект действительно был очень сложным, и, если бы мне сейчас предложили участвовать в похожем, я бы, пожалуй, отказался.
Третья область специализации нашей компании — изучение моделей программирования. Отрасль производства программного обеспечения прошла эволюцию от монолитной модели приложений, затем через клиент-серверную к современной архитектуре распределенных вычислений, или слабосвязанной модели — loose-coupling, одним из представителей которой является Microsoft .NET. Архитектура .NET по праву считается на сегодня наиболее проработанной и полной в плане уже имеющихся возможностей и способна в ближайшие четыре — семь лет решать задачи создания новых приложений в условиях быстро меняющегося бизнеса. Будет ли она лидирующей платформой и в последующие годы — посмотрим, может быть, и нет.
Вопрос. Рафаль, как Вы думаете, почему компания Microsoft прибегает к услугам таких компаний, как ваша?
Ответ. Наша компания является, прежде всего, независимой, внешней по отношению к Microsoft. Да, мне нравится Microsoft, и мне предлагали работать в этой компании. Но мне хочется высказывать точку зрения стороннего наблюдателя по тем или иным вопросам. Да, наша фирма тоже может выступить в роли программистской компании, но это будет стоить заказчику очень дорого. Мы не программисты, мы — thinkmakers, если хотите, наша задача — генерировать идеи, производить анализ и делать прогнозы.
И еще. У нас есть опыт работы в области реализации проектов не только с точки зрения технологий, но и с точки зрения реального бизнеса. Основная проблема отрасли информационных технологий в том, что в ней мало специалистов, которые понимают и в бизнесе, и в новейших технологиях. К большому сожалению, специалисты по информационным технологиям не владеют языком реального бизнеса. Тому, кто занимается бизнесом, понять информационные технологии весьма тяжело, а вот специалисту по информационным технологиям понять бизнес легче. И поэтому, на мой взгляд, на механико-математическом факультете МГУ имеет смысл преподавать основы ведения бизнеса.
Вопрос. Если смотреть с позиций бизнесмена, пользователя, специалиста по ИТ и разработчика, то что им может дать .NET?
Ответ. Прежде всего, .NET объединяет их всех, создавая общую, знакомую всем среду. Если же посмотреть с точки зрения каждой из сторон, то для бизнеса, например, это возможность строить новые бизнес-процессы. Сейчас создание большого бизнес-приложения занимает не меньше шести месяцев и обходится не менее чем в 500 тыс. долларов. С .NET, и я приводил несколько примеров в своих докладах, например с eBAY, это заняло бы две недели и стоило бы на порядок меньше.
Для пользователя реализация технологий .NET приведет к тому, что не будет разной реакции на одинаковые вопросы на разных устройствах. Сейчас информация пользователя хранится в разрозненных базах данных, .NET позволит эти базы объединить, и для пользователя устройства будут как бы соединены, что позволит получать согласованный ответ разных устройств. А это, прежде всего, вызовет доверие к технологии.
С точки зрения специалиста, обслуживающего информационную систему, лучше бы ничего не менялось, тем более если все работает. Но конкуренция нарастает, бизнес диктует свои условия. Поэтому для профессионала ИТ лучше, чтобы все изменения происходили как можно незаметнее, что и позволяет делать .NET. Например, сегодня систему Exchange, базу от IBM и приложение от SAP вряд ли вообще можно соединить. Но в рамках .NET это возможно, поскольку основой всех приложений будут стандарты.
Разработчик всегда задается вопросом — как использовать то программное обеспечение, которое уже есть. Ответ от Sun — перепишите его на Java. В случае .NET ответ такой — пишите на чем хотите, хоть на Cobol, все будет работать, поскольку для 22 языков уже существуют диалекты для .NET.
Вопрос. Активное распространение технологий .NET по всему миру заставляет задуматься об обеспечении безопасности, особенно если учитывать, что ядро всего построения — сеть Internet. Что Вы можете сказать об этом?
Ответ. Я бы взглянул на проблему шире. Безопасность — это часть проблемы доверия к вычислительной среде, именно поэтому Microsoft и взялась за реализацию новых инициатив в рамках Truthworth Computing. Да, важно гарантировать сохранение конфиденциальных данных, важно применять оптимальные методы обеспечения защиты. Но лучше объединить эти методы еще и с наиболее эффективными методами и приемами из других областей информационной цепочки.
Правила использования приложений основаны на том, что исполнение приложений должно быть контролируемым, а приложения должны быть написаны грамотно. Например, в среде исполнения .NET — в CLR, программы выполняются в более защищенных, более жестких условиях, чем ранее. Для этого задействована защита на уровне доступа к коду, защита через запрет запуска несанкционированных приложений, а также предоставление программам изолированного хранилища. Обычно программа на диске занимает место рядом с другими программами и «видит» их все. В .NET же каждая программа занимает свое место, «видит» только свою систему файлов и может взаимодействовать с ней лишь в рамках наложенных ограничений.
Если говорить о безопасности работы Web-служб, то удовлетворяющих необходимым требованиям стандартов для создания защищенных служб не было. Сейчас они созданы в рамках организации WS-I, и разработчикам следует пользоваться соответствующим комплектом разработки Web Service Development Kit (WSDK). К сожалению, пока не все разработчики знакомы с этим инструментом.
Вопрос. В настоящее время семейство продуктов Microsoft включает весьма широкий спектр продуктов — от игровой приставки Xbox и комплекта для создания беспроводной сети до приложений управления предприятием и сложных в плане исполнения технологий .NET. Не может ли такая «всеядность» помешать каждому продукту по отдельности?
Ответ. Я, естественно, могу ответить на этот вопрос только с точки зрения независимого эксперта. Так вот, не думаю, что такое возможно. Компанию Microsoft можно представить как некую страну, хотя ее бюджет больше бюджетов многих реальных стран. Внутри этой страны действует множество компаний, каждая из которых отвечает за свой продукт, там очень хорошие правила экономики и практически нет политики. Все эти компании работают независимо и полностью отвечают за свои продукты. Угрозой для такой страны может быть только усиление отрицательных тенденций во внешней политике.
ДМИТРИЙ ТОРОПОВ — главный редактор журнала Windows 2000 Magazine/RE, системный администратор, MCSE. С ним можно связаться по электронной почте по адресу: toropovd@osp.ru.