
- •Архитектуры баз данных. Преимущества и недостатки
- •Реляционные базы данных, основные понятия.
- •Понятия и терминология, связанные с таблицей реляционной базы данных
- •1.4.1. Отношение "один-ко-многим"
- •Отношение "один-к-одному"
- •Отношение "многие-ко-многим"
- •Понятия терминология, связанные с полем таблицы
- •Понятия ключевых атрибутов для таблиц и индексов.
- •1.7. Индексы и методы доступа
- •Реляционные отношения и целостность данных. Пример
- •1.4.1. Отношение "один-ко-многим"
- •1.4.2. Отношение "один-к-одному"
- •1.4.3. Отношение "многие-ко-многим"
- •1.4.4. Связь между записями одной таблицы
- •1.5. Ссылочная целостность и каскадные воздействия
- •Навигационный и sql ориентированный подход к обработке данных.
- •Нормализация данных. Первая нормальная форма. Пример
- •Нормализация данных. Третья нормальная форма. Пример
- •Индексы. Определение, назначение, характеристики.
- •Жизненный цикл программного обеспечения. Модели жизненного цикла.
- •Основные этапы программирования (структурный, rad технологии, case технологии). Кризис программирования.
- •Методология системного анализа и системного моделирования. Диаграммы idefo.
- •Язык uml. Назначение.
- •Статические диаграммы uml (варианты использования, классов)
- •Диаграммы поведения uml ( состояний, последовательности, деятельности).
- •Основные принципы организации процесса разработки по по rup.
- •Понятие rup. Основные принципы. Структура процесса проектирования. Инструментальная поддержка.
- •Статическая структура описания rup. Понятия исполнителей и артефактов. Основные технологические процессы.
- •Технологический процесс управления проектом.
- •Технологический процесс процесса моделирования производства. 6 сценариев разработки моделей.
- •Технологический процесс управления требованиями
- •Технологический процесс анализа и проектирования
- •Технологический процесс реализации
- •Технологический процесс тестирования
- •Технологический процесс управления конфигурацией и изменениями
- •Технологический процесс управления средой
- •Технологический процесс распространения
- •Конфигурирование и реализация rup
Понятие rup. Основные принципы. Структура процесса проектирования. Инструментальная поддержка.
Что такое Rational Unified Process
Rational Unified Process— это полное описание жизненного цикла разработки программного обеспечения.
Это продукт процесса, благодаря которому разработчики своевременно получают необходимую информацию в форме "электронных руководств".
Он обеспечивает управление многими современными технологиями и подходами: объектно-ориентированной технологией и модульной разработкой, моделированием и языком UML, архитектурой и итеративной разработкой и т.д.
Это не "застывший" продукт; Наоборот, Rational Unified Process— это "живой",постоянно эксплуатируемый и непрерывно развивающийся процесс.
Он основан на жесткой архитектуре процесса и позволяет организации-разработчику настраивать и адаптировать его.
Этот продукт следует шести лучшим советам относительно организации процесса разработки программного обеспечения.
Rational Unified Process – это процесс, разработки программного обеспечения, который обеспечивает упорядоченный подход к распределению задач и обязанностей в организации-разработчике. Целью этого процесса является производство качественного программного обеспечения, удовлетворяющего требования конечных пользователей, в рамках прогнозируемого бюджета и графика работ.
Rational Unified Process – это продукт процесса, разработанный корпорацией Rational Software, Он неразрывно связан с выпускаемым корпорацией набором средств для разработки программного обеспечения.
Rational Unified Process – это еще и контур процесса, который можно адаптировать и расширить для удовлетворения требований принявшей его организации.
Rational Unified Process объединяет многие из лучших методов разработки современного программного обеспечения, причем им придана форма, подходящая для значительного числа проектов и организаций.
Структура процесса: два измерения
На рис.2.2 показана общая архитектура Rational Unified Process. В процессе Можно выделить две структуры, или, если желаете, дна измерения.
Рис. 2.2 Структура процесса – два измерения.
Горизонтальная ось представляет время и показывает развитие различных аспектов жизненного цикла процесса.
Вертикальная ось представляет основные технологические процессы, логически объединяющие виды деятельности по их природе.
Первое измерение представляет динамическую сторону процесса, т.е. показы показывает, как процесс происходит. Это выражается через циклы, фазы, итерации и вехи.
Второе измерение представляет статическую сторону процесса: его описание через компоненты процесса, виды деятельности, технологические процессы, артефакты и исполнители.
Инструментальная поддержка
Чтобы процесс был эффективным, он должен поддерживаться соответствующими инструментальными средствами. Rational Unified Process поддерживается набором средств, позволяющих автоматизировать многие виды деятельности. Эти средства используются для создания и эксплуатации различных артефактов (в частности, моделей) процесса установки программного обеспечения, а именно – визуального моделирования, программирования и тестирования. Инструментальные средства бесценны при учете использования ресурсов, связанного с управлением изменениями и конфигурацией, сопровождающим каскадную итерацию.
Поскольку для моделирования производства и системы используются одни и те же понятия языка UML (особенно это справедливо для незначительно отличающихся стереотипов), то в обоих случаях можно применять и одинаковые инструментальные средства. Одним из таких средств, обеспечивающих визуальное моделирование, является Rational Rose.
Для описания текстовых аспектов моделей производства и установления зависимостей между элементами различных моделей можно использовать, как и в случае программно-технического моделирования, средство Rational RequisitePro.
Для создания и поддержания документации по моделям можно использовать средство Rational SoDA.
Для эффективного управления всеми аспектами проектных требований, поддержания их атрибутов и возможности оперативного контроля над другими элементами проекта, необходима поддержка инструментальных средств управления проектом. Одним из таких средств, облегчающих сбор требований и фиксацию их в документах и архиве требований, является Rational RequisitePro. Это приложение также предоставляет возможность управления масштабом требований и их изменениями. Более того, если вы используете прецеденты, то приложение RequisitePro поможет вам описать их текстовые свойства.
Для визуального моделирования артефактов процесса управления требованиями можно использовать средство Rational Rose, обеспечивающее автоматическую поддержку исполнителей и прецедентов модели прецедентов (с возможностью интеграции с RequisitePro для поддержки текстовых свойств, атрибутов требований и возможности связи), а также архива прецедентов и классов границ. Использование этого приложения также облегчает поддержание связи с элементами модели проектирования.
Еще одним полезным приложением является средство Rational SoDA, помогающее автоматизировать создание документов. Оно позволяет определить "разумный шаблон", способный извлекать информацию из различных источников. Приложение Rational SoDA особенно полезно, если для определения результатов технологического процесса используется несколько инструментальных средств, а информацию, поступающую от этих средств, требуется собрать в единый документ.
3. Предпочтительным языком для выражения всех описанных моделей является UML, а все указания по моделированию, связанные с различными артефактами, выражаются в терминах этого языка. Поэтому рекомендуемым инструментальным средством, позволяющим фиксировать, отображать модели и управлять ими, является Rational Rose. Это приложение позволяет выполнять циклическое проектирование на нескольких избранных языках программирования, а также поддерживать синхронность проекта и кода; кроме того, оно позволяет развивать программную систему на основе проекта или кода либо на основе и проекта, и кода.
Rational Unified Process предлагает инструментальные наставники, направляющие разработчиков, использующих UML и Rose. Средство Rose RealTime допускает прямую реализацию модели проектирования. SoDA позволяет автоматически создавать документы и отчеты, извлекая информацию из нескольких инструментальных средств, таких как Rose или RequisitePro, и форматируя ее.
4. Традиционно, при реализации используются классические средства разработки программного обеспечения— редакторы, компиляторы, компоновщики и отладчики. Сейчас эти средства собраны в комплексные среды разработки и имеют общую семантику. Например, среда разработки Rational Apex для языков Ada или C++.
Инструментальное средство Rational Rose обеспечивает циклическое проектирование, в результате чего тесно переплетаются процессы проектирования и реализации. Средства, подобные Purify или Quantify, позволяют выявлять дефекты кода. Средство ClearCase обеспечивает поддержку индивидуальных рабочих сред и рабочих сред для создания подсистем и интеграции системы. Рекомендуемым средством отслеживания дефектов и запросов на внесение изменений с последующим поиском их в исходном коде является ClearQuest.
5. Поскольку тестирование — это итеративная работа, выполняемая в течение всего цикла разработки, инструментальная поддержка необходима для того, чтобы тестирование начать рано и выполнять часто; ручное тестирование недостаточно эффективно и не позволяет тщательно оценить разрабатываемое программное обеспечение. Последнее утверждение особенно справедливо для эксплуатационных испытаний и испытаний под нагрузкой, в которых должна моделироваться рабочая нагрузка и должен накапливаться значительный объем данных.
Корпорация Rational Software предлагает следующие инструментальные средства, поддерживающие автоматизацию тестов и процесс тестирования в целом.
■ TestStudio — это набор инструментальных средств, поддерживающих выполнение тестов и оценку результатов тестирования. Средства TestStudio позволяют испытателю создавать сценарии тестирования, имеющие графический интерфейс пользователя. Эти сценарии акцентируют внимание на таких параметрах качества, как надежность, функционирование и производительность.
В наборTestStudio входят следующие инструменты.
-Robot поддерживает выполнение тестов, позволяя испытателям создавать и воспроизводить сценарии тестирования с графическим интерфейсом пользователя и сравнивать полученные и ожидаемые результаты.
-LogViewer фиксирует результаты тестирования и представляет отчет для оценки выполнения теста.
-TestManager поддерживает планирование, проектирование и оценку тестов, позволяет определить тестовое покрытие и генерирует отчеты о состоянии тестов.
-TestFactory поддерживает тестирование надежности путем автоматического создания и выполнения сценариев тестирования. Кроме того, этот инструмент в программной форме сообщает о тестовом покрытии.
■ PerformanceStudio выполняет сценарии тестирования виртуального пользователя, используя для этого эксплуатационные испытания и некоторые функциональные испытания.
■ DevelopmentStudio поддерживает технологический процесс тестирования и включает следующие инструментальные средства.
Rational Purify для локализации труднообнаруживаемых ошибок времени выполнения.
Rational PureCoverage для определения участков кода, не прошедших тестирование, и выполнения анализа покрытия кода.
Rational Quantify для выявления фрагментов кода, ограничивающих производительность.
Существуют следующие инструментальные средства разработки от корпорации Rational Software, поддерживающие технологический процесс управления конфигурацией и изменениями.
ClearCase помогает при управлении конфигурацией.
ClearQuest облегчает управление запросами на внесение изменений и управление состоянием и измерениями.