РЕЦЕНЗИИ
Хавар Заман Ахмед, Кери Е. Амриш. Разработка корпоративных Java-приложений с помощью J2EE и UML. М.: Вильямс, 2002. - 272 с.
Для разработки сложного программного обеспечения недостаточно просто написать огромное количество кода. Разработчик или руководитель проекта должен уметь применять на практике методы архитектурного построения, анализа и проектирования, процессы разработки, визуальное моделирование и базовые технологии. С повышением сложности возрастает роль визуализации и документирования ключевых элементов системы.
Визуальный язык представления архитектуры объектно-ориентированных программных систем UML (Unified Modeling Language - унифицированный язык моделирования) в последние годы стал стандартом де-факто для индустрии ПО. Он содержит три механизма расширения своих возможностей - стереотипы, меченые значения и ограничения, благодаря которым можно создавать так называемые профили UML для тех или иных технологий. На сегодняшний день существуют профили для моделирования процессов разработки ПО, бизнес-процессов, данных, программ в реальном времени, XML DTD, схем XML, веб-приложений *1 и EJB-систем. Описанию последнего профиля - спецификации Sun Java Request-26 для UML/EJB - и посвящена рецензируемая книга.
_____
*1 Коналлен Джим. Разработка Web-приложений с использованием UML. М.: Вильямс, 2001. - 288 с.
Структуру книги можно логически поделить на три части. В первой приведен краткий обзор состояния разработки программных систем предприятия и родственных технологий. Дается краткое описание корпоративной платформы J2EE (Java 2 Enterprise Edition) и UML. Обсуждаются вопросы, связанные с процессами разработки ПО и подхода RUP (Rational Unified Process). Во второй, основной части отдельно рассмотрены технологии, входящие в состав J2EE, и существующие возможности по их моделированию в рамках UML. Описаны сервлеты, компоненты JSP (Java Server Pages - серверные страницы Java) и EJB (Enterprise Java Beans - корпоративные компоненты Java). В заключительной, третьей части подробно рассматривается пример по автоматизации банковских услуг, анализируя который, читатель может закрепить полученные знания.
В заслугу авторам стоит поставить целостность книги, в которой затронуты многие вопросы разработки ПО - от постановки требований и управления проектом до сборки и его развертывания. Материал хорошо коррелирует с методологией RUP, зарекомендовавшей себя именно в разработке крупных промышленных систем с большой командой разработчиков. В ней аккумулирован десятилетний опыт индустрии программирования. Однако авторы не обошли стороной и другие подходы, кратко обрисовав ICONIX, OPEN, XP, FDD.
Помимо описания самого профиля UML/EJB приводится масса рекомендаций по вопросам моделирования и советы, как избежать некоторых подводных камней. Данная книга будет полезна архитекторам и разработчикам, интересующимся вопросами использования UML при разработке приложений J2EE. Она поможет работать с UML при моделировании систем уровня предприятия, а следовательно, документировать и обосновывать принятые в результате анализа проектные решения, что крайне важно для создания высококачественных программных систем.