Главная » Просмотр файлов » Пояснительная записка

Пояснительная записка (1209818), страница 3

Файл №1209818 Пояснительная записка (Разработка программного средства контроля и обеспечения целостности файлов и каталогов) 3 страницаПояснительная записка (1209818) страница 32020-10-04СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

Классы и объекты являются основой объектно-ориентированного подхода в проектировании систем. Они представляются абстракциями реальной или воображаемой сущности (набора сущностей). Класс анализа – еще более абстрактная сущность, чем просто класс, представляет собой набор из одного или более классов [4].

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

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

В базе данных выделяется таблица «Проект», с которой связаны все остальные.

Рисунок 3.2.1 – Диаграмма классов анализа

Диаграмма последовательности наглядно отображает временной аспект взаимодействия. Она имеет два измерения. Одно измерение указывает на порядок вовлечения экземпляров сущностей во взаимодействие. Крайним слева на диаграмме отображается экземпляр актера или объект, который является инициатором взаимодействия. Правее отображается другой экземпляр сущности, непосредственно взаимодействующий с первым. Второе измерение указывает на порядок обмена сообщениями. Начальному моменту времени соответствует самая верхняя часть диаграммы.

В рамках данной работы были построены две диаграммы последовательности. Первая описывает взаимодействие между классами приложения и базой данных при сохранении и выполнении контроля целостности, представлена на рисунке 3.2.2. Пользователь на диаграмме является актером, отправляющим запрос на сохранение и выполнение контроля целостности. Приложение создает и заполняет экземпляр класса проект, добавляет его в базу и получает ID записи, повторяет эти действия с экземпляром класса список, и в цикле заполняет данными экземпляры класса файл, заносит в них информацию о всех файлах последовательно, и по одному записывает их в базу данных. Все пути в цикле заполняются, и заносятся в базу данных.

Вторая диаграмма показывает взаимодействие между классами приложения, базой данных и файловой системой Windows при восстановлении файлов − рисунок 3.3.2. Пользователь является актером, выполняющим запрос на восстановление файлов. Фокус управления переходит на диалоговое окно «Восстановить все файлы». Приложение обращается к классу ссылок в проекте. В цикле получает исходные ссылки на все файлы, из базы данных. Затем обращается к источнику копии, возвращает информацию об архиве. После получения информации об архиве, программа обращается к файловой системе. Все файлы перемещаются по исходным путям. В итоге пользователь получает оповещение об успешном восстановлении файлов.

Рисунок 3.3.2 – Диаграмма последовательности – Сохранение и выполнение контроля целостности



Рисунок 3.3.2 – Диаграмма последовательности – восстановление файлов и папок.




    1. Модель проектирования



Цель модели проектирования – создание полного детализированного описания внутренней архитектуры и алгоритмов работы системы. Данная модель разрабатывается без привязки к конкретным языкам программирования в идеале, но на практике языки учитываются.

Основные задачи модели проектирования:

  • уточнение внутренней архитектуры и вариантов использования системы;

  • уточнение требований;

  • определение детализированных алгоритмов работы системы в целом и ее отдельных элементов [4].

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

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

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

Рисунок 3.3.1 – Диаграмма классов часть 1

Рисунок 3.3.2 – Диаграмма классов часть 2

Для разрабатываемого приложения также была спроектирована база данных. Схема базы данных на английском языке представлена на рисунке 3.3.3, схема базы данных на русском языке представлена на рисунке 3.3.4.

Рисунок 3.3.3 – Диаграмма базы данных на английском языке

Рисунок 3.3.4 – Диаграмма базы данных на русском языке

Таким образом, в базу данных, разработанную для системы Control Integrity входят восемь таблиц.

Таблица Файловый сервер FTP содержит информацию о FTP-сервере, подключенном к проекту. Связана с таблицей «Проект» по столбцу FTP_ID, для одного проекта может быть только один FTP сервер.

Таблица Тип Интервала является справочником, и содержит список наименований интервалов времени – час, день, сутки, неделя, месяц.

Таблица тип хеширования содержит информацию о наименовании алгоритма для хеширования, является справочником.

Таблица «Пути для резервного копирования» содержит список путей, для сохранения копий. Связана с таблицей «Проект» по столбцу Project_ID

Таблица «Пути для проекта» содержит список и тип путей, для файлов в проекте. Связана с таблицей «Проект» по столбцу Project_ID

Таблица «Файл» содержит информацию о каждом файле в проекте, связана с таблицей список по столбцу List_ID

Таблица «Список файлов» содержит дату создания списка контроля целостности, и дату резервного копирования. Связана с таблицей «Проект» по столбцу Project_ID

Таблица «Проект» является главной, и содержит информацию, о работе с проектом. Связана со справочниками по столбцам «Тип Интервала», «Тип Интервал» (резервное копирование) и «Тип Хеширования».

3.4 Модель реализации

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

Задачи модели реализации:

  • определение окончательного состава, структуры и кода классов;

  • распределение классов по компонентам и подсистемам;

  • определение топологии распределенной системы и распределение подсистем по узлам сети;

  • планирование итераций (версий) сборки системы;

  • сборка версий системы.

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

При разработке диаграмм компонентов преследуются цели:

‒ спецификация общей структуры исходного кода системы;

‒ спецификация исполнимого варианта системы.

Данная диаграмма обеспечивает согласованный переход от логического к физическому представлению системы в виде программных компонентов. Одни компоненты могут существовать только на этапе компиляции программного кода, другие – на этапе его исполнения. Диаграмма компонентов для решения «Control Integrity» представлена на рисунке 3.4.1.

На диаграмме компонентами являются файлы исходного кода, и формы.

Все файлы исходного кода, кроме MainMethods.cs используют файл SQLiteCmd.cs. В свою очередь файл DateTable.cs использует файл ProjectsOfFiles.cs.

Формы в приложении создаются на основе файлов исходного кода. Одна форма может создаваться на основе одного файла:

  • FTP.cs на основе FTPserver.cs;

  • OpenProject.cs на основе ProjectOfFiles.cs;

  • ListToChange.cs на основе ListOfFiles.cs.

Или на основе нескольких:

  • MainForm.cs: DateIntervalTypes.cs, ProjectOfFiles.cs, PathsInProject.cs, BackUpPaths.cs;

  • ControlIntegrityResult.cs: ListOfFiles.cs, FilesForWork.cs.

Все вместе формы и файлы исходного кода составляют исполняемый файл –ControlIntegrity.exe.

Рисунок 3.4.1 – Диаграмма компонентов

  1. Выбор программных средств

4.1 Язык программирования и средства разработки

Используемый для разработки язык программирования C# является относительно новым языком программирования, обладающий тремя основными преимуществами:

‒ спроектирован для использования с Microsoft .NET Framework (развитой платформой разработки, развертывания и выполнения распределенных приложений);

‒ основан на объектно-ориентированной методологии проектирования, являющейся на данный момент основной методологией для разработки корпоративных информационных систем;

‒ при разработке использован опыт создания других языков программирования, исключены многие подходы, признанные неудачными.

Язык C# разработан корпорацией Microsoft и впервые выпущен в виде альфа-версии в середине 2000 года [1].

Версия .NET, используемая при разработке – 4.5.1, является обновлением версии 4.5 от апреля 2014 года. В этой версии, по сравнению с версиями серии 4.4, в язык программирования C# добавлены следующие возможности:

  • поддержка строго типизированных запросов, применяемых для взаимодействия с различными структурами данных;

  • поддержка анонимных типов, позволяющих моделировать форму типа, а не его поведение;

  • поддержка кодировки Юникод (UTF-16) в консоли;

  • усовершенствования в области сжатия ZIP, позволяющие уменьшить размер сжатого файла;

  • возможность использования лямбда-операций, упрощающих работу с типами делегатов;

  • новый синтаксис инициализации объектов, позволяющий устанавливать значения свойств во время создания объекта [7].

Причинами выбора этого языка являются:

  • наличие средств, позволяющих относительно просто и быстро создавать надежные и производительные сетевые службы;

  • наличие опыта разработки на этом языке.

В качестве среды для разработки была использована Microsoft Visual Studio 2015 Enterprise Edition. Причины выбора:

  • поддержка языка программирования C#;

  • удобство использования;

  • возможность бесплатного использования.

    1. База данных

В качестве БД была выбрана SQLite, так как для приложения не требуется система клиент – сервер, и скорость работы SQLite довольно высокая, при условии, что операции хеширования и резервного копирования сами по себе являются долгими, то это не мало важный плюс.

SQLite – это библиотека, поддерживающая большинство спецификаций SQL92 и хранящая данные в единственном файле. Кроме того, библиотека является и маленькой, и быстрой при этом, не слишком сильно увеличивая объём приложения.

Возможности SQLite:

  • поддерживает большую часть SQL92, включая триггеры и транзакции;

  • существует система отката, защищающая целостность данных;

  • файлы БД могут совместно использоваться между машинами с различными запросами;

  • поддерживаются БД до 2 терабайт, занимая при этом небольшую часть памяти [8].

  1. Руководство пользователя

Работа c приложением начинается с запуска стартовой формы.

Стартовая форма программы представлена на рисунке 5.1

Рисунок 5.1 – Стартовая форма

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

В верхней части расположено выпадающее меню, первая вкладка которого представлена на рисунке 5.2. Создание проекта возможно двумя способами – по клику на верхнюю картинку – Новый проект или выбрав соответствующую вкладку в меню.

Рисунок 5.2 – Выпадающее меню

Открытие проекта так же возможно двумя способами – кликом по нижней картинке, предварительно выбрав нужный проект в правой части формы или выбрав соответствующую вкладку в меню.

При нажатии на картинку «Создать новый», содержимое формы меняется, отображается режим создания проекта, представленный на рисунке 5.3.

Характеристики

Список файлов ВКР

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7039
Авторов
на СтудИзбе
260
Средний доход
с одного платного файла
Обучение Подробнее