Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания по практическим работам.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
27.83 Кб
Скачать

Методические указания по выполнению практикума по дисциплине "Введение в программную инженерию"

Практикум включает комплекс домашних заданий, лабораторных работ и семинарских занятий.

Целью практикума является практическое освоение основ объектно-ориентированного проектирования программного обеспечения с использованием языка UML.

Работы, выполняемые студентами в рамках практикума, соответствуют первым итерациям в рамках реализации эволюционных и спиральных жизненных циклов программных продуктов. Разработанная модель может использоваться в дальнейшем для планирования следующей итерации разработки, включая определение сроков и содержания работ, выявление и оценку рисков, формирование заданий программистам, тестировщикам, разработчикам пользовательской документации и другим участникам процесса разработки. Кроме того, построенные модели могут в дальнейшем использоваться при выполнении курсового проекта по дисциплине "Объектно-ориентированное программирование" как основа для дальнейшей реализации (конструирования) программы в среде программирования.

Инструментальные средства разработки - программа Microsoft Visio. На данном этапе обучения инструментальная среда используется только как визуальный редактор диаграмм UML. При необходимости студенты могут использовать другие редакторы, при условии, что они обеспечивают поддержку нотации UML.

Содержание и порядок выполнения работ

В начале практикума каждый студент получает тему для индивидуального задания на разработку проекта программы. Варианты тем заданий приведены в приложении 1. На основе темы он самостоятельно оформляет и согласует с преподавателем техническое задание (ТЗ) на разработку, в котором выбранная тема может уточняться и развиваться. Форма ТЗ приведена в приложении 2.

Практикум включает 7 этапов работ, которые отражаются в календарном плане. Каждый их этапов включает домашнее задание для самоподготовки, лабораторную работу и семинарское занятие. Этап выполняется за 2 недели.

В целом студент должен самостоятельно разработать проект интерфейса (внешнего вида) программы и комплекс диаграмм на языке UML используя примеры, представленные преподавателем. В процессе практикума студент должен провести публичное обсуждение своей модели, которое проходит на семинарских занятиях, и участвовать в обсуждении моделей, разработанных другими студентами, выступая в роли программиста, системного аналитика и заказчика.

Этап 1. Планирование разработки

Домашнее задание: подготовить ТЗ

Лабораторная работа: Согласовать ТЗ с преподавателем. Разработать макет интерфейса программы, определить термины и понятия, используемые проекте.

Семинар: Рассмотреть пример ТЗ и макета, разработанных преподавателем. Обсудить ТЗ и макеты, разработанные студентами. Рассмотреть пример диаграммы прецедентов, разработанной преподавателем.

Этап 2. Анализ требований

Домашнее задание: изучить диаграммы прецедентов, подготовить проект диаграмм прецедентов.

Лабораторная работа: Разработать диаграммы прецедентов в среде разработки.

Семинар: Обсудить диаграммы прецедентов, разработанные студентами. Рассмотреть пример диаграммы классов, разработанной преподавателем.

Этап 3. Проектирование архитектуры

Домашнее задание: изучить диаграммы классов, подготовить проект диаграмм классов.

Лабораторная работа: Разработать диаграммы классов в среде разработки.

Семинар: Обсудить диаграммы классов, разработанные студентами. Рассмотреть пример диаграммы последовательности, разработанные преподавателем.

Этап 4. Проектирование механизмов взаимодействия классов

Домашнее задание: изучить диаграммы последовательности, подготовить проект диаграмм последовательности и состояний.

Лабораторная работа: Разработать диаграммы последовательности в среде разработки.

Семинар: Обсудить диаграммы последовательности, разработанные студентами. Рассмотреть пример диаграмм состояний и деятельности, разработанные преподавателем.

Этап 5. Проектирование поведения программы и алгоритмов.

Домашнее задание: изучить диаграммы состояний и деятельности, подготовить проект диаграмм состояний и деятельности.

Лабораторная работа: Разработать диаграммы состояний и деятельности в среде разработки.

Семинар: Обсудить диаграммы состояний и деятельности, разработанные студентами. Рассмотреть пример диаграмм компонентов и развертывания, разработанных преподавателем.

Этап 6. Разработка методов развертывания программы.

Домашнее задание: изучить диаграммы компонентов и развертывания, подготовить проект диаграмм компонентов и развертывания.

Лабораторная работа: Разработать диаграммы компонентов и развертывания в среде разработки.

Семинар: Обсудить диаграммы компонентов и развертывания, разработанные студентами. Рассмотреть пример оформления отчета по результатам моделирования.

Этап 7. Анализ результатов проектирования и планирование дальнейших работ.

Домашнее задание: изучить методы анализа и оценки результатов моделирования программ.

Лабораторная работа: Подготовить итоговый отчет.

Семинар: Обсудить модели, разработанные студентами. Провести оценку их качества. Обсудить планы дальнейших мероприятий по реализации программ.

Приложение 1. Варианты тем для индивидуальных заданий

1. Шахматы

Визуализация игры, управление с помощью мыши и клавиатуры, возможность игры двух игроков с контролем правильности хода, сохранение истории игры, сохранение игровой ситуации с возможностью продолжения игры.

2. Шашки

Визуализация игры, управление с помощью мыши и клавиатуры, возможность игры двух игроков или одного игрока с компьютером, сохранение истории игры, сохранение игровой ситуации с возможностью продолжения игры.

3. Карты: игра в "подкидного дурака"

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

4. Детский конструктор

Визуализация набора элементов конструктора и набора инструментов, управление с помощью мыши и клавиатуры, Возможность создания и редактирования изображения, сохранение изображения с возможностью последующей загрузки и продолжения работы.

5. Тетрис

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

6. Бильярд

Визуализация игры, управление с помощью мыши и клавиатуры, возможность игры двух игроков, сохранение игровой ситуации с возможностью продолжения игры.

7. Движущиеся объекты

Визуализация набора объектов, возможность выбора объектов и траекторий их перемещения, визуализация динамической картинки по типу screensaver.

8. Доминоизуализация игры, управление с помощью мыши и клавиатуры, выбор количества игроков, возможность игры с компьютером, сохранение игровой ситуации с возможностью продолжения игры.

9. Игра "Удав, кролики и мангусты"

Визуализация игры, управление с помощью клавиатуры, возможность выбора уровня игры, сохранние игровой ситуации с возможностью продолжения игры.

10. Экосистема "Озеро"

Визуализация жизнедеятельности экосистемы

11. Школьный класс - опрос школьников

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

12. Экосистема "Хвойно-лиственный лес"

Визуализация жизнедеятельности экосистемы

13. Система массового обслуживания (конвейер по розливу напитков в различные емкости)

Визуализация работы конвейера с емкостью, разливающим устройством и устройством для закупоривания, возможность моделирования поведения системы в аварийных ситуациях, управление с помощью мыши и клавиатуры

14. Графический редактор

Возможность создания и редактирования графических изображений с помощью графических примитивов, возможность сохранения и загрузки созданного изображения

15. Аэродром

Визуализация работы аэродрома со взлетно-посадочной полосой, вертолетной площадкой и летательными аппаратами, моделирование работы диспетчерской службы.

16. Арканоид

Визуализация игры, управление с помощью клавиатуры, возможность выбора уровня, подсчет очков, сохранение результатов.17. Регулируемый перекресток

Визуализация движения транспорта на перекрестке с установленными светофорами, моделирование различных дорожных ситуаций.

18. Личный календарь

Ведение планов, формирование уведомлений, использование календаря.

19. Архив электронных фотографий

Аналог сервисов для хранения фото в социальных сетях, реализованный в виде приложения Windows.

20. Программа формирования блок схем алгоритмов

Формирование блок схемы из типовых элементов. Примером является Visio.

21. Игра Сапер

Пример в наборе игр Windows.

22.Пасьянс Косынка

Пример в наборе игр Windows.

23. Аудио плеер

Хранение аудиозаписей с выделением рубрик, авторов, альбомов. Формирование и хранение плейлистов.

24. Ведение журналов старостой группы

Возможность создания журналов и отметки посещения занятий. Формирование и распечатка отчетов по количеству пропусков по предметам и людям.