Belsoft Borlas Group
Русский | English Поиск:
Новости и события Решения и услуги Отзывы клиентов
Rational Unified Process одна из спиральных методологий разработки программного обеспечения. В качестве языка моделирования в общей базе знаний используется язык Unified Modelling Language (UML).
Отличительной чертой данной методологии является итерационная разработка программного обеспечения, предполагающая разделение проекта на несколько мелких проектов, которые выполняются последовательно, и каждая итерация разработки четко определена набором целей, которые должны быть достигнуты в конце итерации. Конечная итерация предполагает, что набор целей итерации должен в точности совпадать с набором целей, указанных заказчиком продукта, то есть все требования должны быть выполнены.
Наибольшее внимание уделяется начальным стадиям разработки проекта анализу и моделированию. Таким образом, эта методология направлена на снижение коммерческих рисков (risk mitigating) посредством обнаружения ошибок на ранних стадиях разработки. Технические риски (assesses) оцениваются и «расставляются» согласно приоритетам на ранних стадиях цикла разработки, а затем пересматриваются с течением времени и с развитием проекта в течение последующих итераций. Новые цели появляются в зависимости от приоритетов данных рисков. Релизы версий распределяются таким образом, что наиболее приоритетные риски устраняются первыми.
RUP предоставляет структурированный подход к итерационной разработке программного обеспечения, подразделяя процесс на четыре основные фазы: 
  • Inception понимание, что мы создаем. Фаза сбора информации и анализа требований, определение образа проекта в целом; 
  • Elaboration понимание, как мы это создаем. Фаза анализа требований и проектирования системы, планирование необходимых действий и ресурсов, спецификация функций и особенностей дизайна;
  •  Construction создание бета-версии продукта. Основная фаза разработки и кодирования, построение продукта как восходящей последовательности итераций (версий кода);
  • Transition создание конечной версии продукта. Фаза внедрения продукта, поставка продукта конкретному пользователю.

 

Это фазы управления эволюцией продукта итерациями жизненного цикла.
 
Методология RUP основана на девяти основных потоках (workflow), являющихся элементами итерации жизненного цикла ПО:
·        Business modeling (бизнес-анализ) предполагает анализ требований на данной итерации жизненного цикла, определение желаемых параметров системы и нужд пользователей;
·        Requirements (требования) - формализация образа системы. Предполагает сбор требований и управление требованиями, перевод требований в функциональные спецификации. Здесь начинается анализ прецедентов и построение use cases (пользовательских историй) формальное отображение требований пользователя в UML. Результатом являются документы уровня менеджмента;
·        Analysis and design (анализ и моделирование) предполагает перевод собранных требований в формализованную программную модель. Результатом является описание системы на фазе реализации (технический проект) - это документы уровня разработчиков системы. Язык формализации Unified Modelling Language (UML)
·        Implementation (реализация, кодирование) предполагает собственно написание кода.
·        Test (тестирование) предполагает тестирование продукта на данной итерации. Стоит специально отметить, что regression testing (возвратное тестирование, тестирование «неухудшения» продукта) в данном случае должно содержать все актуальные тесты от предыдущей итерации и приемосдаточные тесты от предыдущей transition-фазы;
·        Deployment (внедрение) предполагает установку продукта у заказчика, подготовку персонала, запуск системы плюс приемо-сдаточные испытания, передача материалов отделу продаж (действия опциональны в зависимости от специфики продукта).
·        Configuration management (управление конфигурацией и изменениями) инструментарий, направленный на управление версиями продукта, что предполагает контроль исходного кода (модели, исполняемых модулей, тестов, документации), контроль версий продукта, корпоративные стандарты разработки кода и документации, отслеживание изменений и ошибок (bug tracking); тесно связан с тестированием и поддержкой пользователей (customers support);
·        Management (управление проектом) предполагает набор административных действий управления проектом согласно идеологии RUP
·        Environment (окружение) предполагает создание и поддержку средств анализа, проектирования, разработки, тестирования (как программное, так и аппаратное обеспечение).
ActiveUnit