Borland: нас ждут великие дела

2 декабрь, 2003 - 00:00Александр Черников Юбилейная конференция Borland Developer's Day, которая состоялась 13 ноября в Москве и собрала около 400 участников, подчеркнула важность рынка СНГ для Borland -- в течение последнего месяца аналогичные конференции прошли также в Сан-Хосе и Амстердаме для разработчиков Северной Америки и Европы.

Borland нас ждут великие дела
Дэвид Интерсимоне: "Я проработал программистом почти 18 млн. минут, и из них более 9,5 млн. -- в компании Borland. Это огромная часть моей жизни, и, конечно, мне доставляет большое удовольствие то, что я принимаю участие в упрощении и улучшении жизни разработчиков. Это не только моя карьера, но и мое хобби"
Не умаляя значения выступлений менеджеров и технических специалистов, следует признать, что главной персоной конференции стал Дэвид Интерсимоне (David Intersimone), вице-президент по связям с разработчиками и главный специалист по пропаганде решений Borland, пришедший в компанию еще в 1985 г.

Он рассказал аудитории о прошлом и настоящем Borland и ее видении перспектив развития средств разработки ПО. По его словам, в 2003 г. начался новый этап в их эволюции, который определяется понятием Agile, подразумевающим методы "гибкой" разработки.

Сегодня Borland предлагает своим клиентам целый ряд продуктов, интегрированных в единый набор для управления всем жизненным циклом создания программного обеспечения (ALM -- Application Lifecycle Management).

Около года назад Borland достигла окончательного соглашения о приобретении компаний TogetherSoft и Starbase, с которыми тесно сотрудничала с середины 90-х гг. Еще в 1996 г. Borland и TogetherSoft выпустили совместный продукт Borland C++ и набор средств разработки DesignTools. Так появилась первая интегрированная среда, охватывающая весь процесс создания ПО. В прошлом году Starbase и TogetherSoft вступили в партнерские отношения, и то, что они теперь находятся под флагом Borland, стало, по сути, следующим логичным шагом. За счет объединения усилий и продуктов компаний и было создано решение Borland ALM.

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

Потом появилась Microsoft Windows, пока еще 16-разрядная, и новым увлечением программистов всего мира стала концепция ускоренной разработки приложений, RAD (Rapid Application Development).

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

К этому времени в некоторых компаниях, работавших над очень большими программными проектами, появилась необходимость контроля их выполнения и обеспечения повторяемости. Для этого было разработано достаточно много интересных методик, а Borland в итоге выбрала подход, связанный с UML -- унифицированным языком моделирования.

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

Borland нас ждут великие дела
Четверть века эволюции представлений о принципах создания ПО: от монолитных приложений к унифицированным средам разработки
Поэтому сейчас основные надежды программистов связаны с Agile-методами, которые получили распространение в течение последних полутора-двух лет. Все появляющиеся в этом направлении методики в итоге нацелены на выполнение трех основных требований -- скорость, свобода и гибкость.

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

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

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

Ключевым элементом этого гибкого итеративного процесса разработки является управление, и в частности управление изменениями. Здесь должны применяться мощные методы измерения и средства отслеживания дефектов, а объектом контроля и управления должны являться все, по выражению г-на Интерсимоне, цифровые артефакты, которые возникают в процессе разработки.

В арсенале Borland сегодня есть средства такого класса для программистов и на Java, и на .NET, и на С++. При этом возможно использование в них и продуктов других поставщиков. Элементы решения выглядят следующим образом.

Для формирования требований к разрабатываемому программному продукту и контроля за их изменениями используется CaliberRM. В нем также предусмотрены элементы технологии Workflow для оповещения всех участников процесса и средства анализа риска. Специальная информационная панель Management Dashboard позволяет отслеживать статистику изменений и их последствия. В результате можно легко определить, что явилось причиной того или иного дефекта или почему не было выполнено то или иное требование.

Поддержку проектирования программных решений осуществляет система Together, которая дает возможность исследовать код будущего приложения с разных точек зрения. С ее помощью можно манипулировать исходным текстом, используя специальные CASE-представления или модельные диаграммы, прогнозируя его изменения в случае смены требований. Можно также выявить реализации, выходящие за рамки принятых ограничений по сложности.

В области собственно средств разработки у Borland позиции всегда были очень прочными. Здесь имеется целый спектр продуктов. Так, JBuilder позволяет быстро и достаточно просто разрабатывать Java-приложения и различные Web-службы. Для тех, кто создает приложения для платформы .NET, предназначен C#Builder, обеспечивающий также интеграцию нового приложения с существующей программной инфраструктурой. Для разработчиков под Windows и .NET предназначен Delphi, прошедший довольно долгий эволюционный путь, совпадающий с развитием продуктов Microsoft. Менее месяца назад был сделан анонс очередной, восьмой, версии Delphi для среды .NET Microsoft Framework, которая поступит в продажу в следующем году. C++BuilderX позволяет создавать приложения не только для Windows, Linux и Solaris, но и для Symbian и Palm.

Следующий этап цикла разработки -- тестирование -- удобно выполнять с помощью набора приложений Optimizeit Suite. Если необходимо, например, определить, какой элемент сложной программной среды вызывает замедление и ограничивает производительность всей системы, можно воспользоваться продуктом Optimizeit ServerTrace, позволяющим выявить такие проблемы. Для облегчения развертывания и внедрения программных систем Borland предлагает еще одну группу продуктов, к которой относятся высокопроизводительный Borland Enterprise Server и СУБД InterBase и JDataStore.

Очень актуальным в последнее время является вопрос: если в программной инфраструктуре присутствуют и .NET, и J2EE, как обеспечить их взаимодействие друг с другом? Конечно, можно попытаться интегрировать их через Web-сервисы, но при этом далеко не всегда достигается необходимая производительность. Решение Borland в этой области -- продукт Janeva. Он позволяет разработчикам использовать привычные для них инструменты -- .NET, J2EE или CORBA. Janeva обеспечивает взаимодействие модулей через IIOP API и производит преобразование типов с обеих сторон.

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

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

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

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

Сегодня, когда Borland празднует свой 20-летний юбилей, она, тем не менее, не забывает, что ей еще многое предстоит сделать для того, чтобы "разрабатывать решения, которые действительно работают, а не такие, о которых мы полагаем, что они работают".