- •Требования к функциональным характеристикам
- •Требования к программной документации
- •Стадии и этапы разработки
- •Порядок контроля и приемки
- •2 Технический проект
- •Описание функционала разрабатываемого проекта
- •Разработка программного интерфейса
- •Описание алгоритма решения задачи
- •Описание функций, используемых системой
- •Описание функции «выбор загружаемого файла из системы»
- •Описание функции «сохранение промежуточных результатов»
- •Описание функции «ввод ключа дешифровки»
- •Описание функции «вывод информации о дешифровании»
- •Описание функции «вывод информации о возникающих ошибках»
- •3 Рабочий проект
- •Модули и объекты интерфейса пользователя
- •Описание объектов интерфейса программы
- •Тестирование программной системы
- •Случай использования: дешифровка методом Виженера.
- •Случай использования: проверка кнопки «Сохранить как…».
- •Случай использования: переход с формы навигации на форму «о программе».
- •Случай использования: переход с формы «Дешифровка» по кнопке «Назад» на предыдущую форму.
- •Случай использования: выбор зашифрованного файла.
- •Приложение а
- •Приложение б
Разработка программного интерфейса
Разработка предназначена для получения навыков проектирования архитектуры приложения с целью программной реализации на языке C# программы дешифрования, зашифрованного текстового файла методами Виженера и Гронсфельда.
Необходимо разработать программу для расшифровки текстового файла методами Гронсфельда и Виженера с доступным и удобным пользовательским интерфейсом, которое дает возможность быстро и просто выводить результат в файлы формата .txt [8].
Для достижения поставленной цели, пользовательский интерфейс должен обладать следующими компонентами на форме:
1. Поле вывода зашифрованного файла.
2. Поле ввода ключей.
3. Кнопки для дешифрования.
4. Кнопки открытия зашифрованного файла и сохранения результата.
5. Кнопка перехода на главное меню.
6. Кнопки перехода на форму «О программе» [5].
Для того, чтобы начать пользоваться программой, пользователю необходимо:
Запустить программный продукт.
Перейти на главную форму.
Нажать на кнопку «Перейти к дешифрованию».
Нажать на кнопку «Загрузить зашифрованный файл».
Выбрать зашифрованный файл.
Описание алгоритма решения задачи
Основной успешный сценарий:
Пользователь нажимает кнопку «Загрузить зашифрованный файл».
Пользователь выбирает зашифрованный текст.
Система выводит содержимое файла на экран.
Пользователь вводит ключ для метода Гронсфельда.
Пользователь нажимает кнопку «Дешифровка методом Гронсфельда».
Система производит дешифрование по алгоритму.
Система выводит результат дешифрования на экран.
Система сохраняет результат дешифрования в файл под именем «Гронсфельд.txt».
Пользователь вводит ключ для метода Виженера.
Пользователь нажимает кнопку «Дешифровка методом Виженера».
Система производит дешифрование по алгоритму.
Система выводит результат дешифрования на экран.
Система сохраняет результат дешифрования в файл под именем «Виженер.txt».
На Рисунок 3 представлена диаграмма прецедентов для программной среды.
Рисунок 3 - Диаграмма прецедентов для программной среды
Классическим примером таких алгоритмов являются симметричные криптографические алгоритмы, перечисленные ниже:
простая подстановка;
одиночная перестановка по ключу;
двойная перестановка;
перестановка «Магический квадрат»;
простая перестановка.
Описание функций, используемых системой
Программа дешифровки зашифрованного файла методами Гронсфельда и Виженера должна включать в себя следующие функции:
возможность выбора файла из системы.
ввод ключа дешифровки.
сохранение промежуточных результатов в файлы.
информацию о дешифровании с выводом на экран в виде текстовых сообщений.
информацию о возникающих ошибках с выводом на экран в виде сообщений.
Ниже представлены описания этих функций.
Описание функции «выбор загружаемого файла из системы»
Данная функция предназначена для ввода пользователем зашифрованного файла. Для выбора файла должно использоваться специальное диалоговое окно формы выбора из системы.
Предусловие: открыта форма «Дешифрование».
Постусловие: нажата кнопка «Загрузить зашифрованный файл». Пользователь выбирает зашифрованный файл.
Входные данные: зашифрованный файл.
Выходные данные: форма отображает содержание файла.