Моделирование ПО
2024/25 учебный год г., Институт математики и информационных технологий, III курс6 семестр(ы)
Специальности:
- 09.03.04 - Программная инженерия.
- Дмитрий Жоржевич Корзун <dkorzun@cs.karelia.ru>
Содержание лекционных занятий.
- Гл.0. Введение в моделирование. Роль моделирования в общем процессе разработки ПО.
-
Гл.1. Модели разработки требований.
- 1.1. Сбор требований.
- 1.2. Управление требованиями.
- 1.3. Документирование требований
-
Гл.2. Модели проектирования.
- 2.1. Архитектура ПО и рамки системы.
- 2.2. Детальное проектирование: компоненты и интерфейсы.
- 2.3. Документирование проектирования и ПО.
-
Гл.3. Модели оценки.
- 3.1. Метрики кода: статический анализ.
- 3.2. Модели трудоемкости.
- 3.3. Экспериментальное исследование качества.
Темы докладов для практических занятий
- Тема 1. Сценарии использования. (1) Диаграмма прецедентов. (2) Таблицы "событие - реакция". (3) Таблицы/деревья решений. (4) Архитектурные модели. (5) Прототип.
- Тема 2. Анализ и управление. (1) Атрибуты качества для пользователей. (2) Атрибуты качества для разработчиков. (3) Связи и цепи требований. (4) Приоритеты. (5) Контроль изменений.
- Тема 3. Модели проектирования. (1) Архитектура. (2) Структуры данных. (3) Алгоритмы. (4) Интерфейс подсистем. (5) Интерфейс пользователя.
- Тема 4. Инструментальные средства и языки. (1) Языки моделирования. (2) Кодогенераторы. (3) Трансляторы. (4) Документирование. (5) Управление разработкой.
- Тема 5. Трудоемкость и стоимость. (1) Модель функциональных точек (Functional Point). (2) Модель COCOMO (Constructive Cost Model) (3) Модель SLIM (Software Life-cycle Model). (4) Оценки с целью выиграть контракт.
- Тема 6. Качество ПО. (1) Тестирование. (2) Измерение работы программы. (3) Имитационное моделирование. (4) Патентный поиск, (5) Модели документации.
По темам определяются доклады для обучающихся. Обучающийся согласовывает конкретную тему (как правило, пример конкретной прикладной задачи по разработке ПО, где требуется моделирование). В самом докладе акцентируется постановка и решение конкретной задачи моделирования и ее роль при разработке заданного ПО, а не описание общих методов решения таких задач.
Список литературы
- Орлов, С.А. Программная инженерия. Технологии разработки программного обеспечения. 5-е издание обновленное и дополненное. Стандарт третьего поколения. СПб.: Питер, 2016. 640 с. (Серия «Учебник для вузов»).
- Вигерс, К.И. Разработка требований к программному обеспечению / К.И. Вигерс. - Пер. с англ. - М.: Издательско-торговый дом "Русская Редакция", 2004. - 576 с.
- Черушева, Т. В. Проектирование программного обеспечения : учеб. пособие / Т. В. Черушева. – Пенза : Изд-во ПГУ, 2014. – 172 с. URL: https://dep_vipm.pnzgu.ru/files/dep_vipm.pnzgu.ru/books/cherusheva_proektirovanie_programmnogo_obespecheniya.pdf
- Лагерев, Д. Г. Программная инженерия: лабораторный практикум / Д. Г. Лагерев, Д. А. Коростелев, А. А. Азарченков, Е. В. Коптенок. – Москва ; Берлин : Директ-Медиа, 2021. – 157 с. : табл., ил. – Режим доступа: по подписке. – URL: https://biblioclub.ru/index.php?page=book&id=602232
Инструкции по обучению:
- По каждой теме практических занятий 1-6 обучающийся выбирает подтему. Определяет конкретную рамочную прикладную задачу по разработке ПО. Выделяет конкретную задачу моделирования. Тема согласовывается с лектором и руководителем практических занятий.
- Лектор уточняет формулировку конкретных прикладных задач, определяет источники теоретических методов для изучения по выбранной задаче, отправляет обучающемуся и руководителю практических занятий. Согласованный выбор отражается в журнале занятий лектором и руководителем практических занятий.
- Обучающийся готовит в электронном виде презентацию (доклад) по утверждённой задаче моделирования ПО. На практических занятиях презентация обсуждается. По результатам обсуждения обучающийся улучшает презентацию для обсуждения на следующих практических занятиях.
Шаги 1-3 повторяются еженедельно.
В итоге, к концу семестра каждый обучающийся должен сформировать набор из 6 презентаций, каждая должна быть скорректирована не менее 1 раза по результатам обсуждения. Аттестационное занятие построено в виде индивидуального собеседования с обучающимся по представленным презентациям.