(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Разработка облачных приложений с помощью инструментов Rational

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

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

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

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

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

Бизнес-сценарии на базе общедоступного облака

Начнем с рассмотрения некоторых примеров применения облачных вычислений:

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

Количество субъектов, сотрудничающих в облачной среде:

  • разработчик облачных услуг создает программное обеспечение и других ресурсы для потребления в облаке;
  • потребитель облачных услуг запрашивает ресурсы и утверждает смету расходов. В число потребителей облачных услуг могут входить пользователи, администраторы и менеджеры;
  • поставщик облачных услуг предоставляет услуги потребителям.

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

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

На рисунке 1 приведена схема для этого сценария.

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

Если предприятие принимает доказательство концепции, может потребоваться долговременное использование POC. В этом случае POC можно переместить в частную сеть предприятия, сохранив образ и запустив его экземпляр в виртуализованной ЛС.

В таблице 1 сравнивается традиционный подход к доказательству концепции и подход на основе облака.

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

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


Понятие об IBM SmartCloud Enterprise

IBM SmartCloud Enterprise ― это коллективная облачная инфраструктура как сервис (IaaS), уникальное общедоступное облако, предназначенное для предприятий. Облако позволяет пользователям создавать виртуальные машины x86 с операционными системами Linux® и Windows® и управлять ими, а также управлять соответствующими ресурсами, включая образы систем, дисковое пространство и IP-адреса.

Особенность облака IBM состоит в том, что оно включает в себя широкий спектр услуг и продуктов, возможности самообслуживания и модели делегированного администрирования, которые позволяют сотрудничать, предоставлять нужные предприятию услуги поддержки и выбирать из обширного каталога образов виртуальных машин, созданных в центре разработки образов. (Добавив семейство продуктов IBM PureSystems™ и соответствующие услуги, вы получаете доступ к еще более проверенному опыту управления конфигурацией и внедрения в виде готовых, основанных на передовом опыте виртуальных шаблонов.)

Основным способом программного взаимодействия с SmartCloud Enterprise является API SmartCloud Enterprise на базе REST. Он предоставляет множество возможностей, включая пользовательский интерфейс самообслуживания для управления экземплярами, образами, дисковым пространством и IP-адресами. Для удобства предоставляются также клиенты API командной строки и API Java™, которые служат оболочкой сервисов REST. Зарегистрированные пользователи бесплатно загружают клиент API Java и инструмент командной строки через каталог ресурсов. Командная строка удобна для ускорения работы опытных пользователей, но если нужно создать приложение, которое интерпретирует выходные данные из API, то придется написать специальную программу.

API IBM SmartCloud Enterprise можно использовать для добавления дополнительных возможностей или интеграции средств управления облаком в другие приложения. Для Java®-программистов наиболее удобным вариантом будет API Java. Разработчики, специализирующиеся на других языках, могут использовать API REST.

API служат средством интеграции в облако большинства инструментов.


Задачи и инструменты, функции и результаты облачного проекта

В этом разделе рассматриваются инструменты управления жизненным циклом приложений (ALM) и их связь с облачными вычислениями. Последняя тенденция заключается в интеграции этих инструментов в облачную среду. Это позволяет применять их в облаке, использовать облако тем или иным образом или применять эти инструменты для разработки облачных приложений, оставаясь в пределах пространства облачной среды.

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

  • инструменты для управления требованиями: документирование и отслеживание функциональных и нефункциональных требований. Примером служит Rational Requirements Composer;
  • инструменты планирования: планирование времени и ресурсов, необходимых для реализации проекта, и помощь в отслеживании выполнения этого плана реализации проекта. Примерами служат Microsoft Project и IBM Rational Team Concert;
  • репозитории исходного кода: централизованное управление кодом. Примерами служат инструменты с открытым исходным CVS и Subversion и такие коммерческие инструменты, как Microsoft Visual Source Safe и IBM Rational Team Concert;
  • интегрированные среды разработки (IDE): редактирование и отладка исходного кода. Примерами служат инструменты с открытым исходным кодом Eclipse IDE и коммерческие инструменты IBM Rational Application Developer и Microsoft Visual Studio;
  • инструменты тестирования: помогают исполнять и отслеживать функциональные тесты, тесты производительности, а также интеграционные, глобализационные и регрессионные тесты;
  • системы отслеживания дефектов: отслеживают дефекты;
  • системы отслеживания заявок: используются для поддержки клиентов. В проектах ПО с открытым исходным и облачных проектах во многих случаях заменяются форумами.

Когда проект становится коллективным, появляется необходимость обмена исходным кодом через центральный репозиторий. Управление исходным кодом обеспечивает система с открытым исходным кодом Concurrent Versions System (CVS), популярная уже много лет. Это масштабируемая система, которую удобно использовать из интегрированной среды разработки с помощью подключаемых модулей. В последнее время CVS начали дополнять и заменять другие системы с открытым исходным кодом, особенно Subversion. Коммерческой алтернативой со значительно более широкими возможностями является IBM Rational Team Concert (RTC). Основное влияние облачных вычислений на средства управления исходным кодом заключается в том, что с ними можно удобно работать в облаке.

Когда исходный код загружен в центральный репозиторий, его необходимо встраивать в развертываемые артефакты. Это делается с помощью таких инструментов с открытым исходным кодом, как Ant или Maven. Maven имеет несколько более широкий набор возможностей с учетом более широкого спектра событий жизненного цикла. Коммерческий сервер сборки IBM Rational Build Forge обеспечивает еще более широкие возможности. Образ Build Forge имеется в корпоративном каталоге IBM Cloud.

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

Чтобы разработчики могли полностью тестировать свой собственный код, а тестеры ― проверять, что он работает правильно. Этот процесс начинается с тестирования модулей. Простой и полезный инструмент для тестирования модулей Junit может составлять полезные отчеты; однако когда код интегрируется с другими системами, тестирование модулей может быть затруднено. Для представления таких зависимостей могут использоваться фиктивные объекты. Для этого весьма полезен инструмент с открытым исходным кодом EasyMock.

Тестирование с функциональной верификацией ― это тестирование, при котором проверяется, что код в рабочей среде способен выполнять все возможные функции, на которые он рассчитан. Это можно сделать вручную, наблюдая за различными окнами в Web-браузере. В идеале же этот процесс можно автоматизировать путем регистрации действий пользователя. Для этого может применяться коммерческий продукт IBM Rational Functional Tester (RFT).

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

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

Таблица 2. Сопоставление артефактов традиционных и облачных проектов
Традиционная среда Облако
Программа установки программного обеспечения (требует много времени на разработку) Образ виртуальной машины (экземпляр можно получить нажатием кнопки)
Письменные отчеты с описанием шагов развертывания Модели топологии развертывания, сценарии автоматизации
Пользовательская документация, составленная с нуля Многоразовая документация на основе стандартных образов
Конфигурационные файлы в разных местах Добавление ресурсов в каталог облака
Трудный процесс поддержки Поддержка посредством удаленного доступа к облаку

Управление каталогом документов с помощью Rational Asset Manager

Система управления документами управляет файлами, так что их можно хранить централизованно для удобства доступа, индексации и поиска. Современные системы управления документами позволяют пользователям добавлять к документам свои комментарии и обладают такими функциями Web 2.0, как тегирование и рейтинги. Они поддерживают управление доступом на основе ролей для управления документами, и к документам можно применять рабочие процессы, чтобы гарантировать, что перед публикацией они будут рассмотрены и утверждены.

В IBM SmartCloud Enterprise управление документами осуществляется посредством IBM Rational Asset Manager (RAM). Это особенно уместно, потому что большинство документов в облаке - это образы виртуальных машин, которые сами по себе являются ресурсами программного обеспечения. Rational Asset Manager ― стандартный продукт IBM, который можно использовать и в своих собственных проектах. Rational Asset Manager входит в каталог образов, что позволяет запускать его на своем собственном сервере.

Все образы из каталога SmartCloud Enterprise содержат учетные записи, которые видны всем. При сохранении виртуальной машины в виде образа в SmartCloud Enterprise создается учетная запись. Вы можете добавить такие документы, как "Запуск системы" и снимки с экрана, чтобы помочь пользователям ваших образов, и Rational Asset Manager поддерживает форум, который позволяет пользователям задавать вопросы.

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

Rational Asset Manager поддерживает и другие типы документов, например, текстовые документы. Большинство документов поддержки SmartCloud Enterprise хранится как документальные ресурсы Rational Asset Manager. При создании нового документа в Rational Asset Manager появляется окно, показанное на рисунке 2.

Рисунок 2. Создание документа в Rational Asset Manager
Создание документа в Rational Asset Manager

Можно добавить имя, краткое описание, подробное описание и прикрепить файлы. Можно настроить рабочий процесс утверждения, который будет автоматически выполняться, прежде чем документ станет видимым для других. Пример одного из этапов рабочего процесса утверждения приведен на рисунке 3.

Рисунок 3. Рассмотрение документа, введенного в Rational Asset Manager
Рассмотрение документа, введенного в Rational Asset Manager

В данном случае выполняется два шага: рассмотрение заявки и принятие/отклонение документа.


Полный сценарий разработки

Теперь мы покажем, как настроить Rational Software Architect в облаке и сохранить образ виртуальной машины, который можно будет использовать в качестве стандартной среды разработки. Иными словами, продемонстрируем, как использовать инструменты Rational и SmartCloud Enterprise в полном сценарии разработки.

Rational Software Architect - это интегрированная среда разработки для Java, J2EE, Web 2.0 и других платформ. В каталоге SmartCloud Enterprise имеются образы для Rational Application Developer. Кроме того, в Rational Application Developer есть облачный плагин, который обеспечивает интеграцию с серверами, такими как сервер приложений WebSphere®, в облаке. Это позволяет выполнять сценарии, подобные следующему.

  1. Поиск образа Rational Application Developer Virtual Image в каталоге.
  2. Выбор свойств виртуальной машины.
  3. Установка соединения с виртуальным рабочим столом на базе NX Client.
  4. Запуск Rational Application Developer на удаленной машине.
  5. Добавление нового сервера WebSphere в облаке.
  6. Создание учетных данных в облаке.
  7. Запрос виртуальной машины для WebSphere в облаке.

Разработка образа

Сначала найдите Rational Software Architect в каталоге и подготовьте экземпляр.

Войдите в Rational Software Architect удаленно с помощью NX Client. Технология удаленного рабочего стола NX опирается на NX Server и NX Client. NX Server поставляется как коммерческий продукт NoMachine или дистрибутив с открытым исходным кодом. Некоторые образы в SmartCloud Enterprise используют пакет ПО с открытым исходным кодом FreeNX. NX Server отвечает за аутентификацию и активацию пользовательского сеанса. Третий компонент - NX Node. nxservice и родственные команды ― не демоны; они активируются сервером SSH.

Файлы конфигурации обычно находятся в каталоге /etc/nxserver, который также содержит ключи, необходимые для проверки подлинности. В случае проблем полезно установить параметр NX_LOG_LEVEL в файле node.cfg. Можно задать его равным 4, что соответствует связи клиент-сервер (Server-Client communication). Местоположение файла журнала тоже настраивается в файле node.cfg со значением по умолчанию /var/log/nxserver.log.

NX Client можно бесплатно загрузить с Web-сайта NoMachine. После установки импортируйте и сохраните ключ SSH (без PuTTY-преобразования) и укажите в поле Server имя хоста или IP-адрес своей виртуальной машины. Экран конфигурации показан на рисунке 4.

Рисунок 4. Мастер подключения NX Client
Мастер подключения NX Client

Пользовательский интерфейс настройки клиента позволяет выбрать рабочий стол, такой как KDE или Gnome. Это чревато ошибками и если после проверки подлинности возникли проблемы при установлении сеанса связи, возможно, придется попробовать другое значение. Файлы конфигурации и сеанса связи клиента хранятся в каталоге пользователя .nx (в Windows ― C:\Documents и Settings\Administrator\.nx). В случае ошибок проверьте каталог сеансов, который также находится в каталоге .nx.

Импортировав ключ и набрав имя хоста или IP-адрес, введите свое имя пользователя и пароль. На рисунке 5 показан рабочий стол Rational Software Architect Desktop в SmartCloud Enterprise в сеансе NX Client Remote Session.

Рисунок 5. Rational Software Architect Desktop в SmartCloud Enterpriseв в сеансе NX Client Remote Session
Rational Software Architect Desktop в SmartCloud Enterpriseв в сеансе NX Client Remote Session

Клиенты Rational Team Concert и Rational Asset Manager можно загрузить из jazz.net и использовать для их установки Install Manager.

После установки сохраните полученный образ. И последний шаг - чтобы разрешить использовать образ в качестве стандартного клиента разработки, в пользовательском интерфейсе самообслуживания SmartCloud Enterprise нужно изменить значение параметра visibility (видимость) с private на enterprise. Это иллюстрируется на рисунке 6.

Рисунок 6. Задание общей видимости для образа Rational Software Architect
Задание общей видимости для образа Rational Software Architect

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

Администрирование проекта

Rational Team Concert ― это полнофункциональный инструмент коллективной разработки, поддерживающий гибкое управление проектами, сервер сборки и управление дефектами. Образ Rational Team Concert доступен в каталоге SmartCloud Enterprise. Rational Team Concert поддерживает браузер, Eclipse и клиенты Microsoft Visual Studio. Rational Team Concert обеспечивает различные роли, такие как администратор проекта, руководитель проекта и члены проектной группы, поддерживая несколько проектов и групп с делегированным администрированием.

Чтобы попробовать Rational Team Concert, выполните следующие шаги.

  1. Найдите образ в каталоге и щелкните на ссылке Start an instance of your image (запустить экземпляр образа). Для доступа к Web-интерфейсу используйте URL-адрес https://hostname/jazz/web/.
  2. Введите административный пароль, созданный при подготовке экземпляра виртуальной машины.
  3. После входа вам будет предложено выполнить установку Jazz Team Server. Выберите Fast Path (короткий путь).
  4. Существует два варианта лицензии для разработчиков, которую нужно принять в процессе установки. Выберите Tomcat User Database, чтобы вызвать реестр пользователей.
  5. Выберите Project Management Area. Сначала проектов нет. Перейдите по ссылке в раздел Project Area Management Вы должны увидеть нечто похожее на рисунок 7.

    Рисунок 7. Раздел Project Areas Management системы Rational Team Concert
    Раздел Project Areas Management системы Rational Team Concert

  6. Нажмите кнопку Create Project Area (создать область проекта). Введите имя, краткое описание и полное описание проекта.
  7. Нажмите на ссылку Deploy predefined process templates (развернуть готовые шаблоны процессов).
  8. Добавьте пользователей в Rational Team Concert с помощью раздела User Management, как показано на рисунке 8. Создав пользователей, добавьте их в проект.

    Рисунок 8. Раздел управления пользователями Rational Team Concert
    Раздел управления пользователями Rational Team Concert

  9. Настройка параметров электронной почты в Rational Team Concert.
    1. Настройте сервер электронной почты, затем выберите Server > Configuration > E-mail Settings и введите значения параметров сервера электронной почты, как показано на рисунке 9.

      Рисунок 9. Настройка параметров электронной почты Rational Team Concert
      Настройка параметров электронной почты Rational Team Concert

    2. Установите значение true параметра Enable E-mail Notification. Введите localhost для SMTP-сервера. В качестве адреса отправителя (E-Mail From Address) в последней части адреса электронной почты используйте полное доменное имя сервера, например, idcuser@vhost0297.site1.compute.ihost.com.
    3. Нажмите кнопку Save.
  10. Добавление пользователя.
    1. Выберите Project Management > Project Name.
    2. Под заголовком Members добавьте в проект пользователя. Чтобы создать приглашение, наведите курсор мыши на строку, содержащую члена группы, и щелкните на значке Invite to Join Team, который виден только при наведении курсора. Должно появиться окно приглашения присоединиться к группе, как на рисунке 10.

      Рисунок 10. Приглашение стать членом группы Rational Team Concert
      Приглашение стать членом группы Rational Team Concert

Пользовательский Web-интерфейс полезен для многих целей, но для разработки или администрирования Rational Team Concert следует применять клиент Rational Team Concert Eclipse.


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




 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 12.10.2012 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
IBM Rational Functional Tester Floating User License
Rational ClearQuest Floating User License
IBM RATIONAL Clearcase Floating User From Rational Clearcase Lt Floating User Trade Up License + Sw Subscription & Support 12 Months
IBM RATIONAL Clearcase Floating User License + Sw Subscription & Support 12 Months
Rational ClearCase Multisite Floating User License
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
СУБД Oracle "с нуля"
Программирование на Visual Basic/Visual Studio и ASP/ASP.NET
Windows и Office: новости и советы
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100