02. IBM Rational Software

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

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

Если Вы уже являетесь опытным программистом и хотите расширить свои знания и возможности их применения, то курсы IBM Rational Software могут помочь Вам в этом. Начать обучение можно с курса "Язык программирования Java и введение в технологию JEE c использованием среды разработки IBM — Rational Application Developer (Eclipse)", который познакомит начинающих Java-программистов с основами разработки Web-приложений для сервера IBM Web Sphere.

Продолжить обучение можно на курсе "Разработка корпоративных Java и Java EE приложений в среде IBM Rational Application Developer", который хоть и обозначен как обзорный, но дает неплохое представление о разработке как клиентских, так и серверных приложений на основе технологий JEE.

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

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

Наш Учебный Центр предлагает всем желающим пройти обучение в направлении "IBM Rational Software", чтобы повысить свой профессиональный уровень, изучить новые технологии и применять их в своей профессиональной деятельности. Освоение продуктов IBM Rational Software — это серьезный вклад в Ваше развитие как специалиста в области программирования. Приходите к нам на курсы, получайте новые знания и открывайте перед собой новые горизонты!

Разработка корпоративных Java и Java EE приложений в среде IBM Rational Application Developer

Цена
Цена для организаций 42000 руб.
Цена для частных лиц 42000 руб.

Длительность курса: 40/5 часов/дней.

Это обзорный курс, в котором будет показано большинство технологий JEE для сервера приложений IBM Web Sphere v 7, примеры которых будут разрабатываться в среде RAD (IBM Rational Application Developer v 7 for Web Sphere software). По всем разделам курса будут создаваться приложения, как серверной так и клиентской части, все примеры приложений будут переданы слушателям на магнитных носителях.

По окончанию курса слушатели получат полную картину по разработке приложений с помощью IBM Rational Application Developer в технологии JEE для сервере приложений IBM Web Sphere.

Содержание курса:

  • Введение в RAD и IBM Rational Software Delivery Platform (SDP). Инсталляция и конфигурация среды разработки, основные компоненты.
  • Общая архитектура сервера приложений IBM Web Sphere V7. Консоль управления сервером для решения тестовых задач разработчика. Порядок создания серверного JEE приложения. Конфигурация сервера, узла, цели. Определение основных сервисов JEE. Управление сервисом JAAS, JDBC, JMS, Timer и другими.
  • Разработка приложений клиента в архитектуре (RCP — Rich Client Platform) для IBM Web Sphere. Инсталляция клиента для сервера приложений. Библиотеки для подключения к серверу приложений. Протоколы взаимодействия с сервером (RMI, IIOP). Интерфейс javax.naming.Context. Введение в службу имен (JNDI). Создание GUI интерфейса с помощью RAD 7.x. Утилита launchClient для тестирования приложения.
  • Разработка XML приложений (Визуальные средства RAD). Технология JAXB 2.
  • Обзор разметки. Сведения о синтаксисе XML. DTD — определение типа документа. Язык определения схем. Пространство имен и язык Xpath. XLink. Объектная модель документа. SAX. Использование каскадных таблиц стилей CSS. Язык преобразования XSLT, связь с HTML. Интеграция XML с корпоративными приложениями. Получение объекта Java из XML документа, преобразование Java объекта в XML поток .
  • Разработка приложений с использованием Servlets, JSP, STRUTS, JSF
  • Web взаимодействия. Конфигурирование OC4J для работы с Web приложениями. Структура WAR и EAR архивов, дескрипторы размещения и доставки. Последовательность создания Web приложения.
  • Правила построения безопасного доступа к Web приложениям. Сервис JAAS. Principals и JAZN аутентификация. Пример разработки приложения с использованием JAAS сервера. Безопасность на основе форм.
  • Разработка Web контроллеров на основе сервлетов. Листенеры, фильтры, управление безопасностью через сервлеты. Технология программирования сервлетов, сеансы и жизненный цикл. Контекст приложения и сервлета. Отслеживание сеансов. Цикл жизни сессии. Настройка дескриптора размещения Web приложения. Использование JNDI для доступа к данным в сервлетах. Взаимодействие между сервлетами через контекст приложения.
  • Посроение простейших JSP страниц. JSP тэги. Использование языка выражений. Получение информации из структур данных. Операторы языка выражений. Приведение типов данных.
  • Работа с действиями Core. Запись в выходной поток. Установка и удаление переменных. Итераторы. Просмотр коллекций в цикле. Импортирование статических и динамических ссылок
  • Работа с XML действиями. Синтаксический разбор XML документа. Условные Х операторы и операторы циклов. Трансформация расширяемого языка стилевых таблиц
  • Локализация приложений с помощью ресурсных контентов.
  • Библиотека SQL тэгов. Конфигурирование и использование источников данных. Работа с результирующими множествами. Работа с транзакциями.
  • Struts framework в Web приложениях.Struts конфигурационный файл.
  • Интеграция Web приложений с приложениями EJB. Введение в технологию EJB.
  • Особенности многомодульной компоновки приложений для сервера IBM Web Sphera.
  • Общая архитектура EJB 3. Аннотации метаданных и дескрипторов доставки. Переносимость и миграция между спецификациями 2 и 3. Два типа компонент — Сессионные и Управляемые событиями. Сущностные бины.
  • Порядок сборки, упаковки и отправки на сервер приложений модулей с EJB3 компонентами. Аннотации вместо файла ejb-jar.xml. Конфигурация приложения на конкретном сервере приложений с помощью аннотаций сервера приложений
  • Клиенты для сессионных компонент (локальные , удаленные, Web сервисы). Создание удаленного клиента на основе SWING приложения для выполнения методов компонент с использованием rmi протокола.Управление сессионным состоянием. Цикл жизни сессионных компонент. Аннотации, методы для управления циклом жизни. Методы управления доступом к компонентам. Распределение ролей для выполнения различных методов. Методы и классы Interceptor, аннотация @@AroundInvoke.
  • Доступ к ресурсам приложения и сервера. TimerService. Создание компоненты для выполнения действий по расписанию. Управление пассивацией в сессионных компонентах с состоянием. Создание простейшего сущностного компонента на основе таблицы в базе данных. Конфигурация первичного ключа. Аннотация @Id, @SequenceGenerator, @TableGenerator. Композиционный первичный ключ. Аннотация @Embeddable и @EmbeddedId. Отображение композиционного первичного ключа на сущностный класс — аннотация @IdClass.
  • Конфигурация метаданных по таблицам и колонкам — аннотации @Table, @SecondaryTable. @Column. Связанные колонки — @JoinColumn. Использование различных отношений между колонками. Конфигурация базового отображения примитивных типов данных в таблицах — @Basic. Конфигурация больших объектов — @ Lob. Конфигурация поля Version для производства оптимистической блокировки записи.
  • Определение методов жизненного цикла сущностной компоненты — @Pre… и @Post… аннотации. Ассоциация листенера и сущностного класса.
  • Конфигурация наследования в сущностных компонентах.
  • Язык запросов EJBQL. Использование аннотаций для создания именованных запросов -@NamedQuery. Использование параметров в запросах. Создание динамических запросов — javax.management.Query.
  • Компоненты, управляемые сообщениями (MDB)

Язык программирования Java и введение в технологию JEE c использованием среды разработки IBM — Rational Application Developer (Eclipse)

Цена
Цена для организаций 42000 руб.
Цена для частных лиц 42000 руб.

Длительность курса: 40/5 часов/дней.

Вопрос: Как появился этот курс? Ответ: При многократном чтении курса лекций по основам языка Java, у автора сложилось мнение, что для быстрого старта в мир программирования Java и связанных с ним технологий не стоит вдаваться в подробности изучения типов данных и языковых конструкций, ООП, механизмов обработки исключительных ситуаций (хотя это очень важные моменты и автор не снимает с себя ответственности по сокращению материала , посвященному этим вопросам). Однако современному разработчику необходимо быстро приступить к созданию проекта — нужен выход "Годного".

В связи с этим возник план создать курс, в котором будут показаны те аспекты языка Java, без которых не возможно приступить к разработке приложений JEE (остальное слушатель сможет изучить самостоятельно по тем материалам, которые он получит по окончанию курса), так же в курсе будут показаны ключевые аспекты JEE спецификации — как основа быстрого старта в разработке проекта. По окончанию курса слушатели смогут самостоятельно приступить к созданию Web и EJB приложений для любых серверов приложений.

Цель курса: После окончания курса слушатели смогут самостоятельно создавать многомодульные приложения масштаба предприятия для серверf приложений IBM Web Sphere в среде разработки IBM Rational Application Developer на базе технологий Eclipse.

Категория слушателей: начинающие разработчики, которые будут использовать язык Java для разработки многозвенных и WEB приложений в архитектуре JEE для сервера IBM Web Sphere.

Необходимая подготовка: начальные знания операционной системы Windows, или Linux. Основы процедурного и объектно-ориентированного программирования.

Рекомендуемая литература: Брюс Эккель Философия JAVA, Питер. The J2EE 1.4 Tutorial, SUN

Содержание курса:

  • Почему Java? Краткий обзор Java — история. Первое простейшее приложение.
  • Сравнение интегрированных сред разработки Jdeveloper, Eclipse, Net Beanse
  • Четыре вида приложений, разрабатываемые в Java. Пакет — основа размещения классов. Сборка приложений. Манифест и дескрипторы размещения приложений. Передача приложений конечным пользователям, размещение на серверах приложений. Использование серверов для для поддержки версионности приложений. Командная строка Java для запуска приложений. Использование библиотек. Управление памятью из командной строки.
  • Скалярные и объектные типы данных. Классы и загрузчики. Оболочки и синглетоны. Перечисления и аннотации.
  • Использование UML для разработки моделей классов. Статическое и динамическое представление классов. Ассоциации. Управление доступом к переменным и методам. Наследование и реализация интерфейсов.
  • Обзор основных пакетов java. Классы для работы со строками (String, StringBuffer, StringTokenizer). Класс Runtime и System — получение доступа к среде выполнения. Управление свойствами среды выполнения Java. Коллекции. Списки класса List. Стеки и класс LinkedList, создание очередей. Множества Set и SortedSet. Ассоциированные списки Map (HashMap, TreeMap, SortedMap, Vector и Enumeration. Файловый ввод/вывод (InputStream, OutputStream и др.). Класс File. Чтение и запись данных, сериализация объектов. Сохранение и восстановление пользовательского интерфейса. Передача объектов Java по сети. Краткое введение в события Java. Модель возникновения и обработки событий. Вложенные и анонимные классы. Менеджеры компоновок. Использование классов графического интерфейса пользователя Abstract Window Toolkit(AWT), Swing . Формирование собственных компонент и их инсталяция в средах разработки.
  • Комплексный пример разработки приложения для выполнения методов класса, полученного в результате динамической компиляции и загрузки (маленький сервер приложений).
  • Основы XML. Общая нотация языка разметки. Схема документа. Управление пространством имен. DOM и SAX парсеры, использование Java классов для проверки документов. Построение схем документов с помощью средств разработки Java. Введение в JAXB. Маршалинг XML документов. Создание объектов Java на основе XML дркументов.
  • Многопоточное программирование. Процессы и потоки, контексты. Приоритеты потоков и синхронизация. Класс Thread и доступ к главному потоку. Два способа создания дочернего потока — интерфейс Runnable и класс Thread. Группы потоков. Разработка конкретных приложений с использованием средств многопоточного программирования.
  • Общая архитектура сервера приложений на примере Oracle WebLogic. Обзор сервисов. Порядок управления серверами приложений. Использование протокола RMI для управления сервером приложений. Порядок создания, сборки и отправки WEB, EJB и многомодульных приложений на сервер. Дескрипторы размещения и отправки приложений.
  • Понятие JNDI каталога. Получение доступа к службе именований. Локальные и удаленные клиенты JNDI. Размещение в JNDI каталоге констант и объектов. Локальные и глобальные контексты.
  • Основы доступа к данным. Использование пула соединений JNDI для доступа к данным. Выполнение операторов DDL и DML. Основные интерфейсы для доступа к данным. Создание конкретных приложений с использованием данных.
  • Основы Разработка Web контроллеров на основе сервлетов. Листенеры, фильтры, управление безопасностью через сервлеты. Технология программирования сервлетов, сеансы и жизненный цикл. Контекст приложения и сервлета. Отслеживание сеансов. Цикл жизни сессии. Настройка дескриптора размещения Web приложения. Использование JNDI для доступа к данным в сервлетах. Взаимодействие между сервлетами через контекст приложения. Построение простейших JSP страниц. Определение JSF технологии.
  • Введение в EJB 3. Три вида компонент. Аннотации. Взаимодействие EJB с WEB приложениями. Локальные и удаленные клиенты. Определение жизненного цикла различных EJB компонент. Дескрипторы развертывания компонент.
  • Определение SOAP протокола. Web сервисы. Создание простейших интерфейсов на основе языка WSDL. Создание клиентских мест для Web сервисов. Оркестровка сервисов с использованием языка BPEL.

Современные методы групповой разработки сложных информационных систем на основе продуктов IBM Rational

Цена
Цена для организаций 48000 руб.
Цена для частных лиц 48000 руб.

Длительность курса: 60/6 часов/дней.

Современные методы групповой разработки сложных информационных систем на основе продуктов IBM Rational

Аудитория:

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

Цели курса:

  • освоение процесса описания предметной области, проектирования и разработки программных систем на основе Rational Unified Process с использованием CASE Rational Rose и докумен-тирование процесса с использованием средства управления требованиями Rational RequisitePro.
  • разработка на примерах слушателей проекта по описанию предметной области и созданию на его основе объектно-ориентированного приложения с использованием CASE Rational Rose, формируется документ, отображающий требования к системе (техническое задание или спе-цификация на программную систему) с использованием Rational RequisitePro.

Предварительный уровень подготовки: базовые знания в области информационных технологий

Продолжительность курса: 6 дней/ 60 ак. часов

Содержание курса:

Унифицированный процесс проектирования и разработки программных систем Rational Unified Process

  • Общие сведения о процессе RUP

    • Цели RUP;
    • Область применения RUP;
    • Особенности RUP.
  • Архитектура процесса разработки
  • Потоки работ:

    • Бизнес моделирование;
    • Требования;
    • Анализ и проектирование;
    • Реализация;
    • Тестирование;
    • Размещение;
    • Управление конфигурацией и изменениями;
    • Управление проекта;
    • Настройка среды проекта.
  • Фазы разработки и итерации:

    • Начальная фаза;
    • Фаза разработки архитектуры системы;
    • Фаза разработки системы;
    • Фаза внедрения системы;
    • Итерации.
  • Бизнес моделирование

    • Концепции бизнес моделирования;
    • Моделирование в Rational Rose:

      • целей бизнеса;
      • бизнес процессов;
      • объектных или аналитических моделей бизнеса;
      • бизнес правил;
    • Определение бизнес требований к системе;
    • Документирование бизнес требований с использованием Rational RequisitePro.
  • Требования

    • Концепции требований, проблемы управления требованиями, характеристики требо-ваний:

      • типы требований;
      • атрибуты типов требований;
      • зависимости между требованиями;
    • Переход от моделей бизнес процессов, анализа или объектных моделей бизнеса к модели системных требований;
    • Моделирование в Rational Rose:

      • целей системы;
      • функциональных требований;
      • экранных форм;
      • сценариев работы пользователей с системой;
      • ограничений системы;
    • Документирование требований с использованием Rational RequisitePro.
  • Анализ и проектирование

    • Концепции анализа и проектирования;
    • Разработка в Rational Rose:

      • модели сущность-связь и физической модели данных;
      • модели анализа;
      • модели проектирования;
      • модели размещения;
    • Документирование моделей этапа анализа и проектирования.
  • Реализация

    • Прямое и обратное проектирование в Rational Rose;
    • Разработка компонентной модели системы в Rational Rose;
    • Документирование моделей этапа реализации.
  • Тестирование

    • Модели тестирования черного ящика;
    • Модели тестирования белого ящика;
    • Документирование моделей этапа тестирования.

Объектно-ориентированный анализ и проектирование информационных систем с помощью IBM Rational Rose

Цена
Цена для организаций 32000 руб.
Цена для частных лиц 32000 руб.

Длительность курса: 40/4 часов/дней.

Аннотация:

На курсе рассматривается методология разработки программных систем с использованием IBM Rational Unified Process (RUP) фирмы IBM Rational Software Corporation и CASE IBM Rational Rose. Консультация проводится в форме деловой игры на примерах слушателей.

Аудитория:

Курс предназначен для менеджеров проектов по разработке программных систем, аналитиков предметной области, системных аналитиков, проектировщиков БД, проектировщиков интерфейса, программистов.

Продолжительность курса: 4 дня/ 40 ак.часов

Программа курса:

  • Введение

    • Цели использования CASE технологий
    • Модель жизненного цикла программной системы по методологии разработки программных систем IBM Rational Unified Process (RUP) фирмы IBM Rational Software Corporation
    • Этапы и фазы разработки сложных программных систем по методологии RUP
  • Визуальное моделирование и его аспекты

    • Виды моделирования
    • Унифицированный язык визуального моделирования Unified Modeling Language (UML), его достоинства
    • Диаграммы в UML:
    • Activity diagram (диаграммы деятельности)
      Основные элементы диаграммы деятельности — start state (начальное состояние), end state (конечное состояние), activity (деятельность), state (состояние), state transition (переход), decision (решение), swimlane (разделительные линии), synchronization (синхронизаторы), object (объект), object flows (поток объектов)
    • Use сase diagram (диаграммы функций)
      Основные элементы диаграммы функций — organization unit (организационная единица), business worker (работник), business actor (действующее лицо производственного процесса), business use case (производственная функция) package (система, подсистема), actor (действующее лицо), use case (функция системы), association (связь), стереотипы связей (расширяет, использует)
    • Class diagram (диаграммы классов)
      Основные элементы диаграммы классов — business entity (сущность производственного процесса), entity (сущность), class (класс), связи между сущностями и классами (association (ассоциация), aggregation (агрегация), generalization (наследование)), мощность связи
      Стереотипы классов Ассоциативные классы
    • Sequence diagram (диаграммы последовательностей) и Collaboration diagram (диаграммы взаимодействия)
      Основные элементы диаграмм последовательностей и взаимодействия- object (объект), message (сообщение)
    • Statechart diagram (диаграммы состояний)
      Основные элементы диаграммы состояний — start state (начальное состояние), end state (конечное состояние), state (состояние), state transition (переход)
      Вложенность состояний
      Диаграммы внедрения: component diagram (диаграмма компонент) и deployment diagram (диаграмма размещения)
      Основные элементы диаграмм компонент — package (подсистемы), component (компонента), dependency (связь)
      Стереотипы компонент
      Основные элементы диаграмм размещения — processor (процессоры), device (устройство), connection (соединение)
  • Business Modeling (моделирование предметной области)

    • Цели моделирования предметной области
    • Моделирование действующих лиц производственного процесса и их функций с использованием диаграмм деятельности (Activity diagram) и диаграмм функций (Use case diagram)
    • Описание документооборота с использованием элементов диаграммы классов (Class diagram)
    • Описание сценариев производственных функций с использованием Sequence diagram (диаграмм последовательностей) и Collaboration diagram (диаграмм взаимодействия)
    • Описание поведения объектов производственной деятельности с использованием State diagram (диаграммы состояний)
  • Requirements (определение требований к программной системе)

    • Переход от моделей предметной области к функциональной модели системы
    • Построение функциональной модели системы с использованием Use сase diagram (диаграммы функций)
    • Декомпозиция функций системы на функции пользовательского интерфейса, взаимодействия с БД, алгоритмические и т.д
    • Моделирование пользовательского интерфейса с использованием Class diagram (диаграммы классов)
    • Моделирование сценариев пользовательского интерфейса с использованием Activity diagram (диаграмм деятельности), Sequence diagram (диаграмм последовательностей) и Collaboration diagram (диаграмм взаимодействия)
  • Analysis &Design (анализ и проектирование)

    • Моделирование БД с использованием Class diagram (диаграммы классов), экспорт диаграмм классов из IBM Rational Rose в Erwin, импорт диаграмм сущность-связь из Erwin в IBM Rational Rose
    • Проектирование БД с использованием Data Modeler. Основные возможности Data Modeler. Сравнение их с аналогичными функциями структурных CASE средств
    • Концептуальное и на языке реализации проектирование классов, реализующих взаимодействие с БД, алгоритмические функции и прочие функции
  • Implementation (реализация)

    • Разработка компонент программной системы с использованием Component diagram (диаграммы компонент)
    • Кодогенерация
    • Обратное проектирование
  • Deployment (внедрение)

    • Разработка диаграммы размещения компонент программной системы использованием Deployment diagram (диаграммы размещения)