Суббота, 23.11.2024, 23:09
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Технологии разработки программного обеспечения. Вариант 3
engineerklubДата: Четверг, 24.10.2024, 07:28 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 28524
Репутация: 0
Статус: Offline
Технологии разработки программного обеспечения. Вариант 3

Тип работы: Работа Курсовая
Сдано в учебном заведении: ДО СИБГУТИ

Описание:
Формирование требований

Вариант 3. Поиск пути в лабиринте. Лабиринт описывается двумерным массивом с кодами в ячейках: 0 - проход, 1 - стена, 2 - проход, начальная точка, 3 - проход, конечная точка, 4 - проход, часть пути. Минимальный набор функций - редактирование описания лабиринта, поиск пути, показ лабиринта и пути в нем.
Общее описание: Я, как пользователь программы для поиска пути в лабиринте, хочу иметь возможность визуально редактировать и анализировать различные конфигурации лабиринтов, получать быстрые решения по нахождению пути из начальной точки в конечную, а также иметь возможность контролировать процесс решения. Программа должна быть интуитивно понятной, гибкой в настройке и обеспечивать наглядное представление найденного пути.
Функциональные требования:
1. Редактирование лабиринта:
o Возможность задавать размер лабиринта (например, выбор количества строк и столбцов).
o Возможность редактировать ячейки лабиринта вручную с использованием кодов:
 0 – проход (свободная клетка),
 1 – стена (непроходимая клетка),
 2 – начальная точка (старт),
 3 – конечная точка (финиш).
o Обоснование: Возможность редактирования важна для создания и тестирования разных лабиринтов, что позволяет гибко подстраивать программу под различные задачи.
2. Автоматическое решение задачи поиска пути:
o Кнопка для запуска алгоритма поиска пути, который должен найти кратчайший путь (если таковой существует) от стартовой точки (2) до конечной точки (3).
o Поддержка различных алгоритмов поиска пути (например, поиск в ширину, алгоритм А*), возможность выбора метода пользователем.
o Обоснование: Разные алгоритмы могут показывать различные результаты в зависимости от структуры лабиринта, что важно для аналитических задач и гибкости использования.
3. Визуализация решения:
o Показ лабиринта на экране с выделением найденного пути (код 4 — путь) другим цветом или визуальной меткой.
o Возможность пошагового просмотра процесса решения (например, подсвечивание обрабатываемых клеток в реальном времени).
o Обоснование: Визуальная демонстрация процесса и результата повышает удобство использования программы и облегчает понимание работы алгоритма пользователем.
4. Валидация данных:
Проверка введённых данных на корректность: наличие начальной и конечной точек, отсутствие ошибок в вводе (например, лабиринт без стен или непроходимый лабиринт).
o Обоснование: Это защитит пользователя от ввода некорректных данных и ошибок, что может привести к неправильным результатам или сбоям в работе программы.
5. Сброс состояния:
o Кнопка для сброса лабиринта к исходному состоянию (без решений) или сброс до полностью пустого поля.
o Обоснование: Это удобно при многократном использовании программы и необходимости быстро начать новую задачу без перезапуска.
6. Сохранение и загрузка лабиринтов:
o Возможность сохранять текущий лабиринт (вместе с решением) в файл и загружать его для дальнейшей работы.
o Обоснование: Пользователи могут захотеть сохранить результаты своих экспериментов или настроенные лабиринты для последующего использования.
7. Настройки отображения:
o Возможность настройки цвета и размера клеток, а также изменение масштабирования поля (например, для более крупных или мелких лабиринтов).
o Обоснование: Поддержка разных размеров лабиринтов требует гибкости в настройке интерфейса, чтобы пользователи могли удобно работать с разными конфигурациями.
Нефункциональные требования:
1. Интерфейс пользователя:
o Простой, интуитивно понятный интерфейс, который не требует специальной подготовки или обучения.
o Обоснование: Программа ориентирована на широкий круг пользователей, включая тех, кто не имеет глубоких знаний в области программирования или теории графов.
2. Производительность:
o Алгоритм поиска пути должен работать достаточно быстро для лабиринтов среднего размера (до 100x100 клеток), с возможностью оптимизации для более крупных лабиринтов.
o Обоснование: Пользователь ожидает от программы быстрого решения задачи, особенно если она используется для больших и сложных лабиринтов.
3. Кросс-платформенность (при необходимости):
o Возможность работы программы на разных операционных системах (Windows, MacOS, Linux) или как веб-приложение.
o Обоснование: Увеличение доступности программы для пользователей с разными платформам

СКАЧАТЬ
 
  • Страница 1 из 1
  • 1
Поиск:

Рейтинг@Mail.ru