Разработка информационной подсистемы управления доступом к электронным ресурсам компьютерной сети для ООО "Еврософт", г. Ставрополь

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



тор, так и пользователь. Данный программный продукт является оболочкой для запуска внешних программ. Стоимость за использования различных программ может быть разной и устанавливается администратором. Каждые двадцать секунд, в случае если запущены внешние программы, генерируется запрос на сервер о списании определённой суммы со счёта клиента, причём эта сумма соответствует самому дорогостоящему приложению среди запущенных. Максимальное количество одновременно запущенных приложений с вкладок Офис, Мультимедиа и Интернет равно пяти. Максимальное количество одновременно запущенных приложений с вкладки Бизнес равно одному. На вкладке Бизнес могут располагаться программы, работающие с другими платёжными системами.

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

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

3.3 Описание логической структуры программы

При запуске разработанного программного обеспечения первоначально происходит проверка на наличие обновлений информационной подсистемы. Проверкой занимается программа start. Она считывает ссылку из файла file_update.mycl, и по этой ссылке отправляет запрос на скачивание текстового файла, в котором хранятся имена файлов и их md5 коды. На ожидание ответа с сервера отводится 30 секунд. Если сервер не отвечает, то запускается имеющаяся версия программы A_Class. В противном случае сравниваются md5 коды имеющихся файлов подсистемы и файлов, указанных в скаченном файле. Если обнаружены не совпадения, то соответствующие файлы скачиваются. После установки обновлений запускается программы A_Class. Спецификация основных функций модуля программы start представлена в таблице 3.1.

Таблица 3.1 - Спецификация функций модуля mainwindow

Прототип функцииНазначениеНазначение формальных параметров123MainWindow(QWidget *parent = 0);Конструктор класса. Служит для первоначальной инициализации полей класса.Указывает на родительский widget.~MainWindow()Деструктор классанетПродолжение таблицы 3.1

123start_a_class()Запускает программу a_class.нетzapros()Формирует запрос на скачивание с сервера файла update.txt.нетgetReplyFinished (QNetworkReply *reply)Обработчик события ответа с сервера.Указывает на ответ с сервераpoisk(QString s)Осуществляет поиск всех файлов и подкаталогов в указанном каталоге.Передаёт в функцию полное имя каталога.hashir(QString s)Хеширует указанный файл.Передаёт в функцию полное имя файла подлежащего хешированию.compare()Сравнивает хеш-коды имеющихся файлов подсистемы и файлов указанных в скаченном файле update.txt, а также скачивает файлы у которых имеются различия в хеш-коде. нетpaste(QString str_copy, QString str_paste)Заменяет скаченными файлами уже имеющиеся файлы подсистемы.Передаёт в функцию имя файла подлежащего копированию и путь куда необходимо вставить.delete_update(QString s)Удаляет ранее скаченные файлы.Передаёт в функцию имя файла или каталога подлежащего удалению.keyt()Обработчик события одновременного нажатия клавиш Alt + C. Закрывает программу start.нетtick()Обработчик события для 1-го таймера. Осуществляет проверку на попытку выключения или перезагрузки компьютера из под программы a_classнетtick_2()Обработчик события для 2-го таймера. Даёт разрешение на запуск программы a_class по истечению 20 секунд.нетДо отображения экранной формы программы происходит определение языка программы. Определение языка программы осуществляется в два этапа: определение наличия файла Language.mycl отвечающего за язык программы, и непосредственного чтения этого файла. Если файл Language.mycl имеется с записью Russian, то язык в программе устанавливается русский, в противном случае английский.

Первоначальной формой после запуска файла A_Class.exe является форма с логотипом Cyberclub. Щелчком левой кнопки мыши по логотипу пользователь может перейти к форме с соглашением об использовании сервиса Cyberclub. Щелчком левой кнопки мыши по кнопке я согласен или I agree (в зависимости от языка программы) формируется запрос для сервера на баланс конкретного компьютера из конкретного зала. В случае удачного получения ответа пользователь попадает на главную форму программы. В противном случае программа предлагает повторить запрос. В любой момент до перехода на главную форму пользователь может перейти на форму авторизации путём одновременного нажатия сочетания клавиш Alt+Q. Из формы авторизации пользователь может попасть в главную форму программы с правами администратора, если выберет логин Администратор (Administrator если программа работает на английском языке) и верно введет пароль. Если логин выбран как Пользователь (User если программа работает на английском языке), то пользователь попадёт на форму с логотипом Cyberclub. Спецификация основных функций модуля main_a_class программы A_Class представлена в таблице 3.2.

Таблица 3.2 - Спецификация функций модуля main_a_class

Прототип функцииНазначениеНазначение формальных параметров123Main_a_class (QWidget *parent)Конструктор класса. Служит для перво