Рекомендуемая категория для самостоятельной подготовки:
Дипломная работа*
Код |
563111 |
Дата создания |
2020 |
Страниц |
80
|
Мы сможем обработать ваш заказ (!) 20 декабря в 12:00 [мск] Файлы будут доступны для скачивания только после обработки заказа.
|
Содержание
СОДЕРЖАНИЕ
Введение 7
1 Анализ предметной области и постановка задачи 8
1.1 Анализ предметной области 8
1.2 Анализ средств разработки 15
1.3 Техническое предложение 16
2 Проектирование системы 17
2.1 Определение источников, способов доступа и форматов входных данных 17
2.2 Разработка структуры базы данных 19
2.3 Разработка алгоритма поиска и сравнение информации по комплектующим
с имеющимися в базе, актуализации данных в базе 25
3 Реализация системы 27
3.1 Разработка интерфейса пользователя системы 27
3.2 Кодирование программных компонентов 28
3.3 Наполнение базы данными 39
3.4 Защита информации в системе 51
3.5 Оформление пользовательской документации 52
4 Функциональное и нагрузочное тестирование, апробация решения 54
Заключение 57
Список использованных источников 58
Приложения 59
Фрагмент работы для ознакомления
1.1 Анализ предметной области
Для сборки конфигурации ПК необходимо точно понимать, каковы характеристики у каждого компонента, но не все дистрибьютеры предоставляют достоверную информацию. В результате возникает необходимость сверять характеристики, указанные продавцом, с характеристиками компонента с сайта производителя. Также необходимо проверять совместимость устройств между собой для достижения сбалансированности системы.
Таким образом, в ходе выполнения ВКР необходимо разработать приложение для решения следующих задач:
1. Сравнение характеристик компонентов с данными сайта производителя.
2. Синхронизация комплектующих между собой.
В настоящий момент у многих интернет магазинов есть специальные средства подбора комплектующих - конфигураторы, но они решат только одну из поставленных задач.
Рассмотрим существующие решения.
1. Конфигуратор магазина Ситилинк - https://www.citilink.
...
1.2 Анализ средств разработки
В качестве языка программирования мною использован Java. Java - строго типизированный объектно-ориентированный язык программирования, разработанный компанией Sun Microsystems (в последующем приобретённой компанией Oracle). Разработка ведётся сообществом, организованным через Java Community Process, язык и основные реализующие его технологии распространяются по лицензии GPL.
Изначально язык назывался Oak, но из-за того, что язык с таким названием уже существовал, продукт вскоре был переименован в честь марки кофе Java.
Java с середины 90-х годов 20 века стал широко использоваться для написания клиент - серверных приложений. Основной особенностью языка является кроссплатформенность, программы транслируются в байт-код, который в свою очередь, выполняется виртуальной машиной Java (JVM) – которая обрабатывает байт код и передает инструкции оборудованию.
Приложение разрабатывалось в среде разработки IDEA.
...
2.1 Определение источников, способов доступа и форматов входных данных
Для определения характеристик комплектующих персонального компьютера воспользуемся сайтом E-Katalog [1]. Сайт предоставляет сервис для поиска товаров в различных интернет-магазинах. К системе E-Katalog подключено более 1000 магазинов, данные которых периодически обновляются, таким образом, облегчается задача по написанию парсеров для заполнения базы данных. Интерфейс сайта изображен на рисунке 7.
Рисунок 7 - Интерфейс сайта E-Kataog с характеристиками процессора
Способ доступа и взаимодействия с данным сервисом - возможно только взаимодействие посредством web-интерфейса, сайт не предоставляет готовых таблиц в формате (*.xml, *.xlsx) или API для работы с его ресурсами. Таким образом, информацию о компонентах возможно получить только при распарсивании страницы, в результате будет получено строковое представление о наименовании производителя, компонента и его характеристиках.
...
2.2 Разработка структуры базы данных
Для хранения типа, названия и характеристик комплектующих в проектируемом приложении будет использоваться СУБД MySQL компании ORACLE. Для управления БД используется Workbench.
При создании таблиц будет использоваться нормализация таблиц с использованием первых 3-х форм.
Что бы уменьшить нагрузку на сеть и минимизировать потери информации при парсинге, все таблицы компонентов создаются в двух экземплярах.
Для хранения проверенных характеристик комплектующих потребуются следующие таблицы:
- ЦП;
- материнская плата;
- оперативная память;
- видеокарта;
- блок питания;
- жесткий диск;
- твердотельный диск.
Также при нормализации образовались следующие таблицы:
- производители;
- чипсеты;
- тип памяти;
- сокеты ЦП;
- серия ЦП;
- графический процессор.
Теперь добавим в базу данных таблицы с полями, соответствующими характеристикам компонента.
...
2.3 Разработка алгоритма поиска и сравнения информации по комплектующим с имеющимися в базе, актуализации данных в базе
Алгоритм для поиска информации заключается в распарсивании html страницы и получении нужной информации из блоков и тегов. Что бы упросить задачу и не перебирать полученную html страницу построчно, для поиска нужных тегов используется библиотека Jsoup.
Jsoup представляет из себя библиотеку с открытым исходным кодом, она выполняет следующие функции: анализ, извлечение и обработка данных из html документа. Что бы при сравнении не зависеть от сайтов производителей компонентов и сайта E-Katalog, операции произведём в несколько этапов. Сначала соберем нужную информацию и запишем в базу данных, а потом ее сравним.
При сравнении компонентов основываемся на том, что сайт производителя предоставляет верную и актуальную информацию.
...
3.1 Разработка интерфейса пользователя системы
Интерфейс пользователя может быть выполнен в нескольких вариантах, т.к. Java широко используется в области web-приложений. Огромное количество RESTful сервисов было создано с использованием Spring MVC, Struts 2.0 и похожих фреймворков. Даже простейшие приложения, основанные на Servlet, JSP и Struts, достаточно популярны в различных государственных проектах. Поэтому реализация приложения будет выполнена с упором на клиент-серверное взаимодействие.
Из этого следует, что первым из вариантов взаимодействия с пользователем будет web-интерфейс, который отправляет запросы по протоколу HTTP. Вторым способом является работа с приложением через консоль.
На данном этапе разработки выполнена реализация через консоль. Приложение принимает строку с названием компонента, набором его характеристик и их значениями.
...
3.2 Кодирование программных компонентов
Написание программы производилась с использованием среды разработки IntelliJ IDEA. Первоначально был написан парсер строки, он разбивает строку на компонент и параметры. Для создания запроса необходимо, чтобы каждый параметр содержал корректные значения, а также необходима проверка на принадлежность параметра к заданному компоненту.
За основу для определения названий компонентов и их параметров созданы классы перечисления ComponentPC, Parameter.
Класс ComponentPC содержит константы, соответствующие названию компонента, которые должен вводить пользователь в консоли. Каждая константа содержит переменную с названием таблицы в базе данных.
Класс Parameter содержит константы, соответствующие названию параметров, которые должен указывать пользователь в запросе. Каждая константа содержит переменную с названием столбца таблицы.
Пример кода класса компонент указана на рисунке 18, а класса параметры на рисунке 19.
...
3.3 Наполнение базы данными
Наполнение базы данных возможно несколькими вариантами.
Рассмотрим способ добавления компонентов в базу данных на примере таблицы с центральными процессорами, с помощью формирования запроса в ручном режиме. Для формирования и отправки запроса можно использовать встроенную в IDE консоль для отправки SQL запросов или иcпользовать MySQL Workbench — инструмент для визуального проектирования баз данных. Структура запроса будет выглядеть одинаково, пример запроса приведён на рисунке 31.
Рисунок 31 - SQL запрос на добавление процессора Intel i5-9600
Хотя такое внесение данных возможно, оно актуально только при записи в базу небольшого количества данных.
Для заполнения таблицы написан парсер, представляющий собой набор классов для получения информации с web-страницы.
Чтобы осуществить сбор информации со страницы, необходимо получить ее адрес. Для осуществления этой функциональности создан класс СomponentURLParser.
...
3.4 Защита информации в системе
Создаваемая в рамках ВКР система предназначена для работы с общедоступной информацией, производная информация не представляет существенной дополнительной ценности для возможных конкурентов, следовательно, обеспечение её конфиденциальности не требуется. Защитные меры ограничиваются обеспечением целостности и доступности информации.
Для заполнения базы данных использовалась информация из открытых источников, поэтому необходимо следить за источниками для получения достоверной информации.
Целостность полученной информации обеспечивают штатные средства СУБД. В системе MySQL предусмотрен определенный механизм ограничений первичных и внешних ключей в целях поддержки целостности данных. Столбцы могут быть объявлены таким образом, чтобы сделать ввод значений NULL недопустимым.
...
Список литературы
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Сервис поиска товаров в интернет-магазинах [Электронный ресурс]: офиц. сайт. – Режим доступа: https://www.e-katalog.ru/
2. Все процессоры, содержащиеся на сайте e-katalog.ru[Электронный ресурс]: офиц. сайт. – Режим доступа: https://www.e-katalog.ru/list/186/
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.0043