
- •Часть 1. Варианты заданий.
- •Содержание
- •1Общие сведения
- •2Требования к выполнению лабораторных работ
- •2.1Методика подготовки и выполнения лабораторных работ
- •2.2Требования к содержанию лабораторных работ
- •3Требования к выполнению курсовой работы
- •3.1Методика подготовки и выполнения курсовой работы
- •3.2Требования к содержанию курсовой работы
- •Литература.
- •4Требования к оформлению программного кода
- •5Варианты заданий Вариант №1
- •5.1Автоматизация учета и анализа результатов испытаний артиллерийских установок
- •Вариант №2
- •5.2Автоматизация учета и анализа результатов собеседований соискателей на бирже труда
- •Вариант №3
- •5.3Автоматизация учета поставок товаров на оптовый склад
- •Вариант №4
- •5.4Автоматизация учета и анализа результатов проведения акций по продвижению товара на рынок
- •Вариант №5
- •5.5Автоматизация учета и контроля технического состояния парка самолетов
- •Вариант №6
- •5.6Автоматизация учета планового технического обслуживания парка автомобилей, сдаваемых в прокат
- •Вариант №7
- •5.7Автоматизация учета и анализа результатов тренировок спортсменов.
- •Вариант №8
- •5.8Автоматизация учета результатов продвижения рекламных интернет‑услуг
- •Вариант №9
- •5.9Автоматизация учета и контроля успеваемости студентов.
- •Вариант №10
- •5.10Автоматизация учета и контроля назначений в процедурном кабинете поликлиники
- •6Литература
2Требования к выполнению лабораторных работ
Практикум включает в себя цикл из шести лабораторных работ, который завершается выполнением курсовой работы.
2.1Методика подготовки и выполнения лабораторных работ
В рамках выполнения лабораторных работ студенты должны применить знания по следующим темам:
Абстрактный тип данных; список как абстрактный типа данных; реализация абстрактного списка с использованием динамических массивов и связных списков.
Поиск; сортировка, применение поиска и сортировок в процессе разработки программ; реализация алгоритмов поиска и сортировки.
Основы языка С++; указатели и ссылки; динамические массивы; реализация связного списка; обработка исключений.
Основы объектно-ориентированного программирования в С++: инкапсуляция, наследование, полиморфизм.
Основы объектно-ориентированного проектирования; объектная модель; паттерны объектно-ориентированного проектирования (на примере паттернов «одиночка» и «стратегия»).
Технология программирования; этапы жизненного цикла программного обеспечения.
Технология программирования; модульный подход к разработке программ; разделение кода реализации интерфейса взаимодействия с пользователем и кода реализации логики предметной области.
В результате выполнения лабораторных работ студенты должны получить следующие навыки:
Разработать математическую модель задачи на основе ее текстового описания (выявление критериев контроля и анализа с помощью математических понятий - формул).
Разработать объектно-информационную модель задачи на основе ее текстового описания (выявление объектов, их свойств и поведения)
Реализовать шаблонный класс связного списка средствами языка программирования С++.
Реализовать объектно-информационную модель объектно-ориентированными средствами языка программирования C++.
Реализовать алгоритмы сортировки и поиска на списке объектов в соответствии с выявленными критериями анализа.
Лабораторные работы объединены общим замыслом и направлены на поэтапное решение единой типовой задачи.
В разделе «Варианты заданий к лабораторным работам» представлен полный текст вариантов типовых задач. В основе каждого варианта лежит однотипная объектно-информационная модель с определенным количеством классов, типовым распределением ролей и отношений между ними, а также типовыми ограничениями на реализацию данных отношений.
Содержание типовой задачи предполагает разработку программного продукта, автоматизирующего этапы цикла управления некоторого процесса: планирования, учета, контроля и анализа.
Решение задач учета предполагает регистрацию объектов предметной области и отношений между ними. В тексте задания сущности предметной области, относительно которых ведется учет, выделены подчеркиванием.
Решение задач контроля предполагает проверку согласованности вводимых данных в соответствии с типовыми ограничениями на реализацию отношений объектно-информационной модели. В тексте задания правила согласованности, исполнение которых необходимо контролировать в программе, выделены курсивом.
Решение задач анализа предполагает формирование упорядоченного списка объектов, отвечающих заданным критериям. В начале списка должны быть представлены «наилучшие» с точки зрения соответствия заданному критерию объекты, в конце – «наихудшие». Объекты, не отвечающие заданному критерию, не должны быть в нем представлены. Предполагается, что сформированный список должен предъявляться ответственному лицу как основа для принятия управленческих решений. При этом данные решения в первую очередь должны приниматься относительно «наилучших» объектов, находящихся в начале аналитического списка.
Для формирования аналитического списка применяются алгоритмы поиска и сортировка. Описание критериев поиска и сортировки в тексте задания также выделяются курсивом.
Раздел «Рекомендации к выполнению лабораторных работ» содержит текст рекомендаций к выполнению каждой лабораторной работы, ориентированный на содержание нулевого (примерного) варианта задачи, а также фрагменты кода его реализации.
Каждая лабораторная работа нацелена на решение определенных вопросов, представленных полным текстом задачи, и предполагает применение на практике определенных разделов теоретических знаний. Выполнение заданий каждой последующей лабораторной работы базируется на результатах выполнения заданий предыдущих лабораторных работ, в которые вносятся требуемые изменения: модифицируются детали реализации, расширяется структура, добавляется новая функциональность.
Результатом выполнения полного цикла лабораторных работ является программа, реализующая в полном объеме заявленную в тексте задачи функциональность и отвечающая всем предъявленным требованиям.
При подготовке к лабораторной работе необходимо изучить соответствующий теоретический материал. Затем следует ознакомиться с требованиями к содержанию лабораторной работы, а также с рекомендациями к ее выполнению на типовом примере. В результате необходимо предъявить к защите персональный вариант задачи, выполненный по аналогии с типовым примером.
Отклонения реализации от приведенного примера допустимы, однако при этом они должны быть теоретически обоснованы.
Требования к средствам разработки
Лабораторные работы выполняются на языке С++ в среде Microsoft VisualStudio.NET (неуправляемый С++) в формате консольного приложения.