Курсовая работа по предмету МиТП на тему создания программы для игры в слова. Курсовая работа. Составляем слова
Скачать 1.43 Mb.
|
Карагандинский технический университет Кафедра: ИВС КУРСОВАЯ РАБОТА По дисциплине: "Методы и технологии программирования”.”.” (наименование дисциплины) Тема: Составляем слова . _________________________Вариант №10_______________________ Приняла: ______________ доц. Томилова Н.И. (оценка) (фамилия, инициалы) ____________________________ (подпись) (дата) Члены комиссии: Выполнил: _________________________ ст.гр. ИС 20-02 Садырбаев А. Т. (подпись,фамилия, и.о.)(фамилия, инициалы) _________________________ 20/6-187. (подпись,фамилия, и.о) (шифр зач. книжки) Караганды 2021 Содержательная постановка задачи 3 Техническое задание 4 Спецификация требований 9 Метод решения основной функциональности ПО 14 Проект программной системы 19 Концептуальный алгоритм работы ПС 19Структурная схема ПС 20 Пользовательский интерфейс 22 Архитектура ПО 27 Концептуальная архитектура ПО 27 Диаграмма классов 29 Блок-схемы основных реализованных функций ПС 29 Тестирование программного обеспечения 35 Функциональное тестирование 35 Структурное тестирование 36 Тестирование пользовательского интерфейса 36 Руководство пользователя 38 Заключение 43 Календарный план 44 Задание 45 Листинг программы 47 СОДЕРЖАТЕЛЬНАЯ ПОСТАНОВКА ЗАДАЧИ Задачей курсового проекта является разработка программы создания игры с человеком или компьютером “Составляем слова” – одной из большого количества словесных игр, предназначенной для большого количества людей (по большинству может быть предназначена для школьников и детей дошкольного возраста) вне зависимости от их специальности и прочих факторов с целью обучения звукобуквенному анализу, развития памяти, внимания, логического мышления, а также пополнения словарного запаса. Данная программа может быть определена для людей, желающих обогатить свой словарный запас, а также обучить звукобуквенному анализу и развить память, внимание, логическое мышление. Результат этой программы (сама игра) может быть как дидактическим по отношению к школьникам и детям дошкольного возраста, которым необходимо в малом возрасте развивать звукобуквенный анализ, так и развлекательным по отношению к подросткам и взрослым, желающим потратить время впустую и поиграть во время досуга. Курсовая работа выполнена в среде Python с использованием графического модуля Tkinter. ВВЕДЕНИЕ Наименование программы Наименование разрабатываемой программы – «Составляем слова» Назначение и область применения Настоящее техническое задание распространяется на разработку программы создания игры с компьютером “Составляем слова”, предназначенной для большого количества людей (по большинству может быть предназначена для школьников и детей дошкольного возраста) с целью скоротать время, обучить звукобуквенному анализу, развить память, эрудицию, комбинаторные навыки, внимание, логическое мышление, а также обогатить словарный запас. «Составляем слова» или иначе - «Наборщик» - среди многих игр со словами одна из самых популярных как настольная, так и на ПК. В Интернете в открытом доступе есть множество вариаций «Наборщика», однако большинство из них труднодоступны для начинающих пользователей. Благодаря модулю Tkinter в высокоуровневом языке программирования Python возникает возможность создания удобного графический интерфейса, который будет наиболее удобен и лёгок в понимании для всех пользователей. 2.1. ОСНОВАНИЯ ДЛЯ РАЗРАБОТКИ Система разрабатывается на основании учебного плана кафедры 050704 ИВС в качестве курсового проекта по дисциплине «Структуры данных и процессы разработки программ». 2.2. НАЗНАЧЕНИЯ ДЛЯ РАЗРАБОТКИ Программа предназначена для обучения звукобуквенному анализу, развития памяти, эрудиции, внимания, логического мышления, а также пополнения словарного запаса. Пользователем может выступить абсолютно любой человек, в частности школьники и дети дошкольного возраста, которым необходимо развивать память, мышление, чтение, звукобуквенный анализ. 2.3. ТРЕБОВАНИЯ К ПРОГРАММЕ ПРОГРАММНОМУ ИЗДЕЛИЮ 2.3.1. Требования к функциональным характеристикам 2.3.1.1. Система должна обеспечивать возможность выполнения следующих функций: Функция составления различных слов Выбор права первого хода Функция вывода выигрыша в случае составления наибольшего количества слов Возможность игры с ЭВМ Введение слов по очерёдности 2.3.1.2. Исходные данные • Случайно сгенерированное ЭВМ слово; 2.3.1.3. Результат Результатом работы программы является наибольшее число составленных слов одним из двух пользователей или ЭВМ, что будет обозначать победу в игре. 2.3.2. Требования к надежности 2.3.2.1. Предусмотреть контроль вводимой информации и блокировку некорректных действий пользователя при работе с системой. 2.3.2.2. Обеспечить целостность информации, хранящейся в базе данных. 2.3.3. Требования к составу и параметрам технических средств Система должна работать на IBM совместимых персональных компьютерах Минимальная конфигурация: а) тип процессора Intel Pentium III и выше; б) объем оперативного запоминающего устройства 128 Мб и выше. 2.3.4. Требования к информационной и программной совместимости Система должна работать под управлением семейства операционных систем Windows 32/64x – Windows 2000, XP, Vista, 7, 8, 8.1. 2.4. ТРЕБОВАНИЯ К ПРОГРАММНОЙ ДОКУМЕНТАЦИИ 2.4.1. Разрабатываемые программные модули должны быть задокументированы, т.е. тексты программ должны содержать все необходимые комментарии. 2.4.2. Разрабатываемая программа должна включать справочную информацию об основных приемах работы с форматированием электронной текстовой информации. 2.4.3. В состав сопровождающей документации должны входить: 2.4.3.1. Пояснительная записка на 25-30 листах, содержащая описание разработки. 2.4.3.2. Руководство пользователя. 2.5. ТЕХНИКО-ЭКОНОМИЧЕСКИЕ ПОКАЗАТЕЛИ 2.5.1. Ориентировочная экономическая эффективность не рассчитываются. 2.5.2. Предполагаемая годовая потребность не рассчитывается. 2.5.3. Экономические преимущества: бесплатное распространение. Существующие аналоги: https://www.logozavr.ru/514/, https://www.min2win.ru/gm.php?id=1873 2.6. СТАДИИ И ЭТАПЫ РАЗРАБОТКИ 2.6.1. Стадии разработки Разработка должна быть проведена следующими стадиями: разработка технического задания; проектирование; реализация и отладка; внедрение. 2.6.2. Этапы разработки На стадии разработки технического задания должен быть выполнен этап разработки, согласования и утверждения настоящего технического задания. На стадии проектирования должны быть выполнены перечисленные ниже этапы работ: Разработка спецификации программы; Составление проекта программы и плана отладки. На стадии реализации и отладки должны быть выполнены перечисленные ниже этапы работ: Алгоритмизация. Выбор основных средств отладки; Программирование. Подготовка тестов; Отладка программы. На стадии внедрения должен быть выполнен этап разработки подготовка и передача программы. 2.6.3. Сроки разработки Разработка технического задания – 1 неделя; Разработка спецификации программы – 1 неделя; Составление проекта программы и плана отладки – 2 недели; Алгоритмизация. Выбор основных средств отладки – 2 недели; Программирование. Подготовка тестов – 3 недели; Отладка программы – 5 недель. 2.7. ПОРЯДОК КОНТРОЛЯ И ПРИЕМКИ 2.7.1. Виды испытаний Испытание общей работоспособности на различных операционных системах и различном оборудовании; Испытания работоспособности набора и форматирования текста; Испытания работоспособности дополнительных функций программы (открытие, справка и т.д.). 2.7.2. Общие требования к приемке Программа должна выполнять все необходимые требования, указанные в постановке задачи; Программа должна иметь удобный, интуитивно-понятный пользовательский интерфейс; 3.1 ФУНКЦИОНАЛЬНАЯ ЧАСТЬ 3.1.1 Таблица Функции программы
3.1.2 Тип пользовательского интерфейса В приложение реализовано иерархическое меню. Иерархические меню используют при большом количестве вариантов или их очевидных различиях, например, операции с файлами и операции с данными, хранящимися в этих файлах. Древовидная организация меню предполагает строго ограниченную навигацию: либо переходы «вверх» к корню дерева, либо - «вниз» по выбранной ветви. Каждому уровню иерархического меню соответствует свое определенное окно, содержащее пункты данного уровня. При этом возможны два варианта реализации меню: каждое окно меню занимает весь экран или на экране одновременно присутствуют несколько меню разных уровней. Во втором случае окна меню появляются при выборе пунктов соответствующего верхнего уровня — «выпадающие» меню. 3.1.3 Диаграммы ПС На рисунках продемонстрированы: диаграмма переходов состояний (рис. 1), диаграмма потоков данных (рис. 2.1. и 2.2.), SADT-модель (рис. 3.1. и 3.2.). 3.2 ЭКСПЛУТАЦИОННАЯ ЧАСТЬ 3.2.1 Требования к производительности К разработке данного ПО предоставляются следующие требования к производительности; обеспечить максимальную скорость переходов между окнами; обеспечить максимальную скорость обработки текстовой информации обеспечить максимальную производительность программы при анализе текста; обеспечить минимальное использование оперативной памяти. 3.2.2 Требования к надежности К разработке данного ПО предоставляются следующие требования к надежности: обеспечить безотказность работы программы; обеспечить целостность обрабатываемой информации. 3.2.3 Обработка ошибок К разработке данного ПО предоставляются следующие требования к обработке ошибок: если пользователь введёт слово некорректным образом, то программа выдаст сообщение о неправильно введённом слове; если пользователь захочет сдаться, программа спросит его, точно ли он хочет сдаться или нет; если пользователь захочет выйти из программы, программа спросить его, точно ли он хочет выйти из нее или нет. 3.2.4 Интерфейсные требования К разработке данного ПО предоставляются следующие интерфейсные требования: минимальность затрат ресурсов пользователя при вводе, модификации и просмотре данных; максимально простое взаимодействие программы и пользователя; минимальный объём оперативной памяти пользователя; максимально простая навигация меню; комфортная цветовая гамма. 3.2.5 Ограничения К разработке данного ПО предоставляются следующие ограничения: программа должна быть написана на языке программирования Python; программа должна иметь модульную структуру. 3.3 ОБРАТНЫЕ ТРЕБОВАНИЯ К разработке данного ПО предоставляются обратные требования: программа не должна работать с данными типа integer и др.; программа не должна проводить математические расчёты Рис. 1 – Диаграмма переходов состояний Рис. 2.1. – Диаграмма потоков данных Рис. 2.2. – Дополненная диаграмма потоков управляющих данных Рис. 3.1. – SADT модель: концептуальный уровень I1 – Запуск программы R1 – В R2 – Вывод случайного слова Рис. 3.2. – SADT модель: детальный уровень МЕТОД РЕШЕНИЯ 4 .1 АЛГОРИТМ РЕШЕНИЯ ОСНОВНОЙ ФУНКЦИОНАЛЬНОСТИ ПО (в виде блок-схемы) Рис. 4. – Блок-схема алгоритма решения основной функциональности ПО 4.2 АЛГОРИТМ РЕШЕНИЯ ОСНОВНОЙ ФУНКЦИОНАЛЬНОСТИ ПО (словесный) Начало: запуск программы При открытии окна происходит выбор игрока При переходе в следующее окно разыгрывается первый ход При переходе в основное окно игры пользователем вводится слово При нажатии на кнопку «Ввести слово» подтверждается введённое слово Если слово введено корректно, то ход предоставляется другому игроку Если слово введено некорректно, то система напишет «Вы ввели неправильное слово» При нажатии на кнопку «Сдаться» происходит переход в окно результатов игры, где написано количество очков и проигравший игрок В окне результатов игры при нажатии на кнопку «В главное меню» происходит переход в изначальное окно выбора игрока |