ТЕХНИЧЕСКИЙ АНАЛИЗ
Позаботьтесь, чтобы децентрализованная разработка не привела к появлению негодного продукта
Надежды сэкономить за счет привлечения сторонних программистов быстро испарятся, если написанное ими ПО не будет работать.
Соответственно для успешного использования внештатных сотрудников необходимо предварительно вложить деньги, чтобы приобрести, установить и освоить инфраструктуру, которая требуется для создания дизайна приложений, внесения изменений, организации совместного труда, тестирования и поддержки в течение всего жизненного цикла. Лишь при этом условии можно будет в установленный срок выпустить на рынок качественную программу. Необходимо убедиться, позволяют ли инструменты для децентрализованной разработки объединить несколько коллективов, часто принадлежащих к разным культурам, в эффективную команду.
Выпускаемые в последнее время инструменты, которые поступают в eWeek Labs для включения в обзоры, учитывают такую необходимость. Например, мы уже отмечали в этом году, что возможности коллективной работы в реальном времени интегрированы в Sun Microsystems Java Studio Enterprise 7.0 - пакет, победивший в пятом ежегодном конкурсе продуктов для создания приложений eWeek Excellence Award (см. нижний экран на рисунке). В сентябре другой изготовитель средств разработки, компания Borland Software, включил в свой продукт JBuilder 2006 сходные средства организации коллективной работы.
В течение нескольких ближайших месяцев программисты получат в свое распоряжение еще более совершенные средства, позволяющие четко формулировать требования заказчика, сводя к минимуму вероятность ошибок и неправильного толкования. В сентябре, например, выпущена версия 3.0 пакета Agitator компании Agitar Software. Это на удивление интеллектуальная среда разработки и тестирования приложений. Версия 2.0 уже выходила в нынешнем году в финал конкурса eWeek Excellence Award. В третьей версии появились широкие возможности для включения знаний о выполняемых задачах в процесс создания тестов. В результате используемые для тестирования случайные данные и другие параметры более точно отражают те условия, в которых данный фрагмент кода будет работать в реальной жизни (см. верхний экран).
Технологии вроде применяемых компанией Agitar могут устранить одну из главных проблем, связанных с передачей разработки важнейших бизнес-приложений сторонним подрядчикам, - опасение, что внешние программисты недостаточно понимают задачи приложения и окружение, в котором оно будет действовать. Плохое знание этих вопросов может вызвать ошибки концептуального плана или невнимание к мелким, но важным деталям.
Наборы настраиваемых экспертных критериев пакета Agitator, которые можно расширять, позволяют главным разработчикам автоматизировать выполнение некоторых важнейших задач. После этого они могут с помощью дополнительного инструмента компании Agitar под названием "приборная доска" своевременно получить точную информацию о том, насколько успешно внешние программисты придерживались правил написания высококачественного кода.
Еще до выпуска версии 3.0 сотрудники eWeek Labs поинтересовались у инженеров из Agitar, может ли их технология применяться для создания формальных критериев оценки качества и соответствия сформулированным в явном виде требованиям к качеству продукта при работе с внешними подрядчиками. В качестве ответа они показали нам черновой вариант готовящегося проекта "соглашение об уровне качества". Оно разрабатывается по аналогии с соглашениями о качестве обслуживания, которые часто заключаются, например, при предоставлении сетевых услуг.
Представители компании Agitar сообщили, что отмечают растущий интерес клиентов к заключению подобных соглашений с работающими по контракту программистами. Причем не только при окончательной приемке продукта, но и в процессе его подготовки, чтобы наблюдать за работой в режиме реального времени. Как мы ожидаем, в течение ближайших двух лет подобный мониторинг станет обычным делом.
eWeek Labs отмечает также, что ведущие разработчики получают более широкие возможности для того, чтобы применять свое знание общей картины при настройке других инструментов тестирования. Например, в конце года мы рассчитываем увидеть DevPartner Studio 8 компании Compuware. Мы познакомились с предварительной версией данного продукта во время конференции Professional Developers Conference, проводившейся корпорацией Microsoft в сентябре в Лос-Анджелесе.
Такие инструменты, как Agitator 3.0 компании Agitar, позволяют использовать в ходе
тестирования программ знание реальных задач, которые им предстоит решать
(вверху). Благодаря Sun Java Studio Enterprise подаваемые в дистанционном режиме
команды разработчиков становятся ближе (внизу)
Новая версия пакета Compuware должна появиться одновременно с выходом давно ожидаемого продукта Microsoft Visual Studio 2005, который в настоящее время запланирован на ноябрь. Compuware расширяет среду разработки Microsoft Visual Studio. Наиболее важными являются новые средства высокоуровневого анализа и помощи в решении обнаруженных проблем. Одни инструменты поставляются уже настроенными, другие могут модифицироваться пользователями.
Автоматизация управления процессом разработки и возможность приспосабливать средства управления к конкретным нуждам помогают привести работу внешних программистов в соответствие с ожиданиями заказчика. Эту тенденцию мы наблюдаем также в развитии продукта Jtest компании Parasoft (в июне поступила в продажу седьмая версия). К уже имевшемуся расширяемому набору правил разработки и стандартов программирования, который появился в выпущенной в начале года версии 6, июньское обновление добавило возможность динамического тестирования посредством автоматической проверки исполняемого кода.
Кроме прочего инструменты, имеющиеся в составе Jtest 7, как и алгоритмы выявления и классификации критических ситуаций компании Agitar, ускоряют процесс обучения в коллективах разработчиков и позволяют с течением времени совершенствовать эти средства. Последний тезис дает ответ на часто задаваемый вопрос, не суждено ли программированию превратиться в соревнование за снижение цен, когда по всему миру будут выискивать разработчиков, предлагающих свои услуги по минимальной цене. Организации, которые ищут, берут на вооружение и применяют лучшие из предлагаемых инструментов и используют преимущества новых технологий для расширения базы знаний, адаптации продуктов к своим потребностям и обучения сотрудников, станут более интеллектуальными. Они извлекут существенную выгоду из разработок, проведенных как внутри компании, так и внешними подрядчиками.
Хотя инструментальные средства сами по себе не могут привести к такому результату, отрадно видеть, что они помогают тем, кто ими обладает.
С редактором по вопросам технологии Питером Коффи можно связаться по адресу: peter_coffee@ziffdavis.com.