Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программа ГЭ_010503.doc
Скачиваний:
2
Добавлен:
23.08.2019
Размер:
83.46 Кб
Скачать

Раздел 2. Технология разработки программного обеспечения

  1. Введение. Краткая характеристика дисциплины, ее цели, задачи, порядок изучения материала, связь с другими дисциплинами учебного плана. Программная инженерия.

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

  3. Основные концепции RUP. Введение в RUP. Проблема разработки ПО. Концепции RUP. Лучший опыт: итерационная разработка, управление требованиями, использование компонентной архитектуры, визуальное моделирование, контроль качества, управление изменениями. Инструментальная поддержка: управления требованиями, визуальное моделирование, автоматическое тестирования, управления изменениями. Услуги поставщика.

  4. Управление средой разработки. Проект Rational и Rational Administrator. Цели управления средой, основные понятия управления средой, поток работ управления средой, понятие проекта Rational.

  5. Бизнес-моделирование. Цели бизнес-моделирования, основные понятия, поток работ, инструментальная поддержка, переход от бизнес-моделей к системным моделям.

  1. Визуальное моделирование с использованием Rational Rose. Назначение Rational Rose. Основы графического интерфейса. Представления. Диаграммы. Работа в группе.

  1. Управление запросами изменения, Rational ClearQuest. Назначение ClearQuest. Обзор архитектуры. Понятия схем и баз данных ClearQuest. Основные операции.

  2. Администрирование Rational ClearQuest. Основные понятия администрирования ClearQuest, процесс управления запросами изменения в проекте, задачи администратора. Интеграция ClearQuest и RequisitePro: введение, отличие запроса расширения от требования, обзор инструментов, необходимость интеграции, настройка интеграции.

  3. Управление требованиями, Реализация. Цели управления требованиями. Основные понятия управления требованиями. Инструментальная поддержка. Поток работ управления требованиями. Совместное использование ClearQuest и RequisitePro. Rational Unified Process: Реализация. Цели дисциплины «Реализация». Ограничения. Артефакты дисциплины «Реализация». Поток работ дисциплины.

  4. Rational Unified Process: Анализ и проектирование. Цели анализа и проектирования. Артефакты. Поток работ. Пример.

  5. Управление конфигурацией и изменениями. Цели управления конфигурацией и изменением. Основные понятия. Поток работ.

  6. Обзор Rational SoDA. Назначение SoDA. Основные понятия.Команды. Настройка шаблона. Template View: пример создания шаблона.

  7. Rational Unified Process: Управление проектом. Основы управления проектами. Цель дисциплины «Управление проектом». Основные понятия. Поток работ.

  8. Универсальный язык моделирования (UML). Назначение и история UML. Применение UML в жизненном цикле проектов. Обзор составных частей языка UML. Нотация и семантика языка. Сущности. Отношения. Диаграммы. Стандартные элементы языка UML.

  9. Варианты использования (use cases) - внешнее представление системы. Диаграммы вариантов использования

(use case diagram). Актеры. Роли. Отношения между вариантами использования: включение, обобщение, расширение. Применение вариантов использования на этапе исследования проекта.

  1. Диаграммы классов (class diagram) - описание типов объектов и статических отношений между ними. Элементы диаграммы классов: класс, объект, пакет, примечание. Отношения между классами: ассоциация, агрегирование, обобщение, зависимости. Разновидности классов UML: интерфейс, шаблон, утилита. Применение диаграмм классов для построения модели предметной области. Объекты. Диаграммы объектов (object diagram). Стереотипы. Отношение между объектом и его типом -классификация.

  2. Диаграммы взаимодействия (interaction diagram) -описание поведения взаимодействующих объектов. Виды диаграмм взаимодействия: диаграммы последовательности (sequence diagram), диаграммы кооперации (collaboration diagram). Применение диаграмм взаимодействия для описания поведения объектов в рамках одного варианта использования.

  3. Кооперация - именованное взаимодействие классов. Диаграммы состояний (statechart diagram) - отображение возможных состояний объекта с течением времени. Применение диаграмм состояний для описания поведения объекта в различных вариантах использования. Диаграммы деятельности (activity diagram) - описание последовательности состояний деятельности системы. Возможность изображения условного и параллельного поведений: ветвления, соединения, разделения.

  4. Группирование классов в Пакеты (packages). Зависимости пакетов. Диаграмма пакетов. Физические диаграммы: диаграмма развертывания (deployment diagram), диаграмма компонентов (component diagram).

  1. Требования к программной системе. Понятия требований к программе. Функциональные и нефункциональные требования. Формализация и стандартизация описания требований. Техническое задание на разработку программы. Разработка и анализ технического задания. Управление требованиями.

  2. Анализ и моделирование. Методы анализа и моделирование. Модели с различных точек зрения: с внешней

перспективы (моделируется контекст системы); с поведенческой перспективы (моделируется поведение системы); со структурной точки зрения, в которой моделируется архитектура системы или структура данных, обрабатываемых системой. Модели данных, модель "сущность-связь". Объектные модели.

  1. Структура программы. Разработка структуры программы. Оценка структуры программы. Понятие прочности и сцепления модулей, методы количественной оценки прочности и сцепления. Методы разработки структуры программы. Нисходящие и восходящие методы. Методика Джексона. Разработка компонентов программы. Модуль. Внешние спецификации модуля. Способы описания спецификаций. Проектирование логики модуля. Документирование модуля.

  2. Испытания программных систем. Верификация, тестирование и отладка программы. Основные методы верификации программы и их сравнительный анализ. Тестирование и отладка. Методы тестирования. Структурное тестирование, функциональное тестирование. Заглушки. Использование инструментальных средств тестирования и отладки. Организация процесса тестирования.

  3. Внедрение и сопровождение программных систем. Задачи сопровождения программы. Расширение возможностей, адаптация и коррекция. Средства и методы сопровождения. Организация сопровождения. Эксплуатационная документация. Единая система программной документации (ЕСПД).

  4. Конфигурационное управление. Задача конфигурационного управления. Элементы конфигурации. Инструментальные средства. Организация конфигурационного управления.

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

27. Организация разработки программных систем.

Структура организации-разработчика программных систем. Организация коллектива программистов. Характер труда разработчиков программных систем. Бригада - основная форма организации труда программистов. Критерии оценки труда бригады и отдельного члена бригады. Управление качеством разработки ПО. Стандарты СММ, ISO-9000. Управление проектами, управление производством программных продуктов.

ЛИТЕРАТУРА

  1. Орлов С.А. Технологии разработки программного обеспечения: Учебник. - СПб.: Питер, 2002. - 464 с.

  2. Иан Соммервилл. Инженерия программного обеспечения, 6-е издание. Пер. с англ. - М.: Изд. дом «Вильяме», 2002. - 624 с.

  3. Брауде Э. Технология разработки программного обеспечения. -СПб.: Питер, 2004.-655 с.