Введение
Rational Unified Process - это процесс разработки программного обеспечения, созданный и распространяемый корпорацией Rational Software. Это - упорядоченный подход к распределению задач и обязанностей в организации-разработчике и управлению ими. Цель этого процесса - создать в рамках прогнозируемого бюджета и графика работ программное обеспечение высокого качества, отвечающее требованиям конечного пользователя.
В Rational Unified Process собраны многие из лучших методов организации производственных работ в современной области разработки программного обеспечения. Эти методы представлены в адаптируемой форме, подходящей для множества проектов и организаций. Rational Unified Process оперативно доносит все указанные методы к проектной группе, причем делает это в достаточно удобной форме.
Книга, которую вы держите в руках, - это введение в понятия, структуру, содержание и мотивацию Rational Unified Process.
Основные задачи книги
Благодаря этой книге вы
- узнаете, чем является Rational Unified Process;
- освоите словарь Rational Unified Process и поймете его структуру;
- высоко оцените предлагаемые нами советы по организации производственных работ;
- поймете, как Rational Unified Process может стать путеводителем вашего проекта.
Данная книга является составляющей Rational Unified Process, хотя и не охватывает его полностью. Точнее будет назвать ее сокращенным вариантом Rational Unified Process. Полный вариант содержит подробнейшее руководство, необходимое для претворения в жизнь вашего проекта. Получить такое руководство - электронную базу знаний - можно через корпорацию Rational Software.
В этой книге неоднократно упоминается язык UML (Unified Modeling Language), но более подробно он рассматривается в таких работах, как The Unified Modeling Language User Guide и The Unified Modeling Language Reference Manual.
В данном вводном руководстве обсуждается моделирование и объектно-ориентированные технологии, а не методы проектирования, поэтому эта книга не научит вас, как нужно моделировать. Подробные руководства по всевозможным методам, встроенным в Rational Unified Process, можно найти только в продукте этого процесса.
В некоторых главах книги рассматриваются вопросы управления проектом, описывающие аспекты планирования итеративного развития, управления риском и т.д. При всем этом данная книга не является всеобъемлющим руководством по управлению проектом и экономике программного обеспечения. Если вам требуется информация по этим вопросам, обратитесь к работе Software Project Management: A Unified Framework.
Кроме того, можно порекомендовать книгу The Unified Software Development Process, описывающую процесс, частным, конкретизированным экземпляром которой является Rational Unified Process.
Для кого предназначена эта книга
Книга Введение в Rational Unified Process, второе издание, написана для широкого круга людей, задействованных в процессе разработки программного обеспечения: руководителей проекта, разработчиков, специалистов по качеству, технологов, методистов, системных инженеров и аналитиков.
Книга крайне важна для сотрудников организаций, которые приняли Rational Unified Process или собираются это сделать. Отметим, что хотя организация и может несколько модифицировать Rational Unified Process для удовлетворения собственных потребностей, но основной процесс, описанный в книге, должен оставаться неизменным.
Эта книга будет полезна студентам, прослушивающим один из многих профессиональных курсов обучения, предоставляемых корпорацией Rational Software и ее партнерами в науке и промышленности. Отдельные темы, охваченные этими курсами, обзорно рассмотрены и в данной книге.
Предполагается, что читатель уже имеет общее представление о процессе разработки программного обеспечения. Специальные знания из области языков программирования, объектно-ориентированных методов или языка UML не требуются.
Как использовать эту книгу
Профессионалы в области разработки программного обеспечения, работающие в организации, которая полностью или частично приняла Rational Unified Process, могут читать эту книгу последовательно. Для этих людей главы книги расположены естественным образом.
Руководители проекта могут ограничиться чтением глав 1, 2, 4 и 7, в которых раскрывается суть итеративного, управляемого рисками, процесса разработки программного обеспечения.
Технологам и методистам, возможно, придется адаптировать Rational Unified Process к нуждам их организаций. Эта категория людей должна внимательно изучить главы 3 и 17, в которых описана структура процесса и общий подход к реализации Rational Unified Process.
Структура книги
Книга разбита на две части.
В части I описан процесс, его среда, история, структура и жизненный цикл разработки программного обеспечения. Здесь также описываются некоторые ключевые свойства, отличающие Rational Unified Process от прочих процессов разработки программного обеспечения.
- Глава 1: Советы по организации процесса разработки программного обеспечения
- Глава 2: Rational Unified Process
- Глава 3: Статическая структура: описание процесса
- Глава 4: Динамическая структура: итеративная разработка
- Глава 5: Процесс, основанный на архитектуре
- Глава 6: Процесс, управляемый прецедентами
В части II дается обзор различных компонентов процесса, называемых технологическими процессами. Каждому из основных технологических процессов посвящена отдельная глава.
- Глава 7: Технологический процесс управления проектом
- Глава 8: Технологический процесс моделирования производства
- Глава 9: Технологический процесс управления требованиями
- Глава 10: Технологический процесс анализа и проектирования
- Глава 11: Технологический процесс реализации
- Глава 12: Технологический процесс тестирования
- Глава 13: Технологический процесс управления конфигурацией и изменениями
- Глава 14: Технологический процесс управления средой
- Глава 15: Технологический процесс распространения
- Глава 16: Типичные планы итераций
- Глава 17: Конфигурирование и реализация Rational Unified Process
Большинство глав этой части содержит шесть разделов.
- Цель технологического процесса
- Определения и основные понятия
- Исполнители и артефакты
- Типичный процесс: обзор видов деятельности
- Инструментальная поддержка
- Резюме
В двух приложениях перечислены все исполнители (роли процесса) и артефакты (результаты процесса), которые вводятся в главах 7-15. В заключение представлен перечень аббревиатур и глоссарий распространенных терминов, а также дается небольшой список библиографии, снабженной краткими комментариями.
Дополнительная информация
Информацию о Rational Unified Process, в том числе спецификацию и загружаемую демо-версию, можно получить на узле корпорации Rational Software: www.rational.com/rup_info/.
Для тех, кто уже использует Rational Unified Process и нуждается в дополнительной информации, можно порекомендовать Центр ресурсов (Rational Unified Process Resource Center), в котором имеются дополнительные продукты, обновления и сведения о партнерах корпорации Rational Software. Гиперссылку на Центр ресурсов можно найти в онлайновой версии данного процесса.
Научные организации, желающие получить информацию об отдельной программе в целях включения Rational Unified Process в учебный план, могут обратиться к корпорации Rational Software.
Отличия второго издания
Изменения во втором издании книги Введение в Rational Unified Process связаны с тем, что Rational Unified Process 2001, по сравнению с предыдущей версией, был расширен и углублен. Расширение выразилось во введении нового материала, охватывающего проектирование производства, управление нефункциональными требованиями, развитие и размещение многоярусных распределенных приложений.
Помимо этого, существующий материал был уточнен, в том числе улучшено изложение вопросов проектирования интерфейса приложений (особенно по отношению к разработке эффективных Web-приложений) и разработки систем с использованием шаблонов и контуров. Здесь также представлен обзор разработки систем реального времени и реагирующих систем. Тестирование теперь сопровождает весь цикл разработки, начиная от утверждения архитектурных прототипов и заканчивая проверкой произведенного продукта. И наконец, в этой работе введены сетевые графики процесса, позволяющие получить общее представление о принципах применения процесса к проектам и технологиям различных типов. Кроме того, изложение материала было углублено, и теперь здесь представлены дополнительные контрольные таблицы и директивы для артефактов, видов деятельности и фаз процесса.
Благодарности
Rational Unified Process - это отражение мудрости множества профессионалов в области разработки программного обеспечения, работающих в корпорации Rational Software (и не только в ней). (История этого процесса излагается в главе 2.) Создание книги, даже такой маленькой и скромной, как эта, потребовало значительных усилий преданных своему делу людей, которых мне бы хотелось здесь назвать.
В первую очередь, это сотрудники группы разработки Rational Process Development Group, которые создали Rational Unified Process и внесли свой вклад в данную книгу. Некоторые из этих имен вы еще увидите, поскольку многие главы книги написаны совместно с этими людьми.
- Курт Биттнер (Kurt Bittner) принимал участие в написании глав, посвященных анализу и проектированию, тестированию и управлению проектом, а также освещал вопросы проектирования данных.
- Мария Эриксон (Maria Ericsson) освещала вопросы, связанные с проектированием производства и управлением требованиями, а также следила за сохранностью архитектуры процесса.
- Лесли Пробаско (Leslee Probasco) внес свой вклад в главу, посвященную технологическому процессу управления требованиями.
- Стефан Байлунд (StefaBylund) помогал в написании главы, посвященной анализу и проектированию, а также придал законченный вид вопросам проектирования пользовательского интерфейса.
- Хэкан Дирхэдж (Hakan Dyrhage) внес множество идей относительно организации и структуры процесса, его реализации и конфигурации; кроме того, он координировал развитие онлайновой версии процесса.
- Джон Смит (John Smith) расширил вопросы управления проектом для RUP 2000.
- Джас Мэдхэр (Jas Madhur) помогал в вопросах, связанных с распространением, а также управлением конфигурацией и изменениями.
- Брюс Кац (Bruce Katz) внес свой вклад в вопросы тестирования процесса.
- Маргарет Чен (Margaret Chan) отвечала за интеграцию продукта и изготовление большинства иллюстраций к книге.
- Дебби Грей (Debbie Gray) была верным административным помощником команды, разбросанной по девяти часовым поясам.
Мы крайне признательны Грейди Бучу (Grady Booch) за написание главы 1
Выражаю признательность Перу Кроллу (Per Kroll), управляющему отделом сбыта Rational Unified Process, Паэру Дженсону (Paer Jansson), управляющему производством, а также недавно присоединившемуся Мэтту Хердону (Matt Herdon). Благодарю Кристину Гисселберг (Christina Gisselberg) и Эрика Тьюрсона (Eric Turesson), спроектировавших и создавших онлайновую версию процесса. Стефан Элквист (Stefan Ahlqvist) был автором идей проектирования пользовательского интерфейса. Чинх Во (Chinh Vo) помог собрать данную книгу в единое целое.
Rational Unified Process и данная книга только выиграли от рецензирования и внесенных идей. За это я благодарю Дейва Бернштейна (Dave Bernstein), Грейди Буча (Grady Booch), Джефа Клемма (Geoff Clemm), Кэтрин Коннор (Catherine Connor), Майка Делвина (Mike Delvin), Кристиана Эренбурга (Christian Ehrenborg) (он же "доктор Прецедент"), Сэма Гукенхаймера (Sam Guckenheimer), Бьерна Густафсона (Bjorn Gustafsson), Айвара Джейкобсона (Ivar Jacobson), Рона Крубека (Ron Krubek), Дина Леффингвелла (Dean Leffingwell), Эндрю Лайонса (Andrew Lyons), Брюса Маласки (Bruce Malasky), Роджера Оберга (Roger Oberg), Гари Полиса (Gary Pollice), Лесли Пробаско (Leslee Probasco), Терри Кватрани (Terri Quatrani), Уокера Ройса (Walker Royce), Джима Румбаха (Jim Rumbaugh), Джона Смита (John Smith) и Брайана Уайта (Brian White).
Хотелось бы поблагодарить наших партнеров - Скотта Амблера (Scott Ambler), а также компанию Ensemble Systems, службу IBM Global Services и компанию Content Integration - за сотрудничество.
Отдельная благодарность сообществу Rational, а особенно нашим британским друзьям, для которых процесс Rational Unified Process всегда представлял особый интерес: Яну Гейвину (Ian Gavin), Яну Спенсу (Ian Spence) и Майку Тудболу (Mike Tudball).
Франция и Швеция были представлены Джо Хэмпхиллом (Joy Hemphill) и Памелой Кларке (Pamela Clarke).
И наконец, огромное спасибо нашему редактору Дж. Картеру Шанклину (J. Carter Shanklin), а также Кристину Эриксону (Kristin Erickson), Мэрилин Раш (Marilyn Rash) и ее команде и сотрудникам издательства Addison-Wesley Longman за то, что эта книга вышла так быстро.
Филипп Крачтен
Ванкувер, Канада