Разработка конфигуратора системного блока и средств оценки производительности вычислительной системы

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 24.06.2018
Размер файла 3,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

[Введите текст]

ОГЛАВЛЕНИЕ

  • Аннотация
  • Введение
  • 1. Анализ предметной области и постановка задачи
  • 1.1 Анализ предметной области
  • 1.2 Анализ средств разработки
  • 1.3 Техническое предложение
  • 2. Проектирование
  • 2.1 Разработка базы данных
  • 2.2 Алгоритм определения производительности
  • 2.3 Разработка интерфейса пользователя
  • 3. Реализация программного продукта
  • 3.1 Кодирование программы
  • 3.2 Наполнение базы данными
  • 4. Тестирование
  • Заключение
  • Список использованных источников
  • Приложение

АННОТАЦИЯ

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

ВВЕДЕНИЕ

Персональные компьютеры (далее - ПК) применяются в различных областях человеческой деятельности, и в настоящее время эксплуатируется уже достаточно большое количество ПК. Подбор комплектующих для ПК - это очень важный и сложный процесс. При этом следует учитывать то, для каких целей будет применяться компьютер. На данный момент на рынке представлено огромное количество комплектующих. Выбор становится еще сложнее потому, что не все комплектующие совместимы друг с другом. Конфигуратор ПК позволяет облегчить процесс подбора. С помощью данной программы даже неопытный пользователь может справиться с комплектованием нужного ПК.

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

Для разработки приложения будут использованы средства разработки Microsoft Visual Studio Community 2017, язык программирования C#, СУБД SQLite, SQLiteStudio для работы с базой данных, язык программирования запросов SQL.

1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ И ПОСТАНОВКА ЗАДАЧИ

1.1 Анализ предметной области

Компьютеры достаточно давно и прочно вошли в нашу жизнь. Они кардинально поменяли мир и возможности людей, иногда мы уже не представляем себе нашу жизнь без компьютера и интернета. В настоящее время количество персональных компьютеров и областей их применения растет с каждым днем. Компьютеры используются в сфере образования, для работы, общения, развлечения и решения множества других различных задач. Выбор конфигурации компьютера определяется кругом решаемых задач. В области информационных и компьютерных систем под конфигурацией понимают определенный набор комплектующих, исходя из их предназначения, марки и основных характеристик. Зачастую конфигурация означает выбор аппаратного и программного обеспечения, прошивок и сопроводительной документации. Конфигурация влияет на функционирование и производительность компьютера. Средства операционной системы позволяют автоматически (режим plug and play) или вручную выставлять настройки драйверов [1]. Выбор содержимого системного блока в значительной степени зависит от вычислительной системы в целом, её задач и целей. В системном блоке могут находиться различные компоненты аппаратного обеспечения:

1. Материнская плата и размещённые на ней:

1.1. центральный процессор;

1.2. BIOS;

1.3. кулер;

1.4. оперативная память и кэш;

1.5. слоты расширения шин -- PCI, PCIE, USB, FireWire, AGP (устарела), ISA (устарела), EISA (устарела);

1.6. контроллеры устройств хранения информации: IDE, SCSI, SATA, SAS или других типов, находящиеся непосредственно на материнской плате (встроенные) либо на платах расширения;

1.7. видеоконтроллер (встроенный или в виде отдельной платы), передающий сигнал на монитор;

1.8. звуковой контроллер;

1.9. сетевой интерфейс (сетевая плата).

2. Блок питания.

3. Система охлаждения -- необходима в случае установки блоков, имеющих повышенное тепловыделение.

4. Через контроллеры к материнской плате при помощи шлейфов кабелей, сигнальных и питания, подключены жёсткий диск (их так же можно объединить в RAID-массив), SSD, накопитель на гибких дисках, оптический накопитель типа CD-ROM и другие устройства [2].

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

Рассмотрим существующие решения в данной предметной области.

1. https://www.dns-shop.ru/configurator - это конфигуратор интернет магазина. Данный конфигуратор позволяет создать конфигурацию, узнать стоимость отдельных комплектующих и всей конфигурации, заказать комплектующие, проверить совместимость комплектующих. Есть возможность посмотреть характеристики комплектующих. Конфигуратор разработан с помощью html и javascript. Достаточно простой и удобный в использовании и обладает хорошим дизайном. Интерфейс конфигуратора dns-shop представлен на рисунке 1.

Рисунок 1 - Конфигуратор dns-shop

2. https://asusbrandshop.ru/constructor - это также конфигуратор интернет магазина. Данный конфигуратор позволяет создать конфигурацию, узнать стоимость отдельных комплектующих и всей конфигурации, заказать комплектующие. Есть возможность посмотреть характеристики комплектующих. Конфигуратор разработан с помощью html и javascript. Достаточно простой в использовании и обладает хорошим дизайном. Интерфейс конфигуратора asusbrandshop представлен на рисунке 2.

Рисунок 2 - Конфигуратор asusbrandshop

3. http://www.ironbook.ru/constructor - это также конфигуратор интернет магазина. Данный конфигуратор позволяет создать конфигурацию, узнать стоимость отдельных комплектующих и всей конфигурации, заказать комплектующие, проверить совместимость комплектующих. Есть возможность посмотреть характеристики комплектующих. Конфигуратор разработан с помощью html и javascript. Достаточно простой в использовании и обладает хорошим дизайном. Интерфейс конфигуратора ironbook представлен на рисунке 3.

Рисунок 3 - Конфигуратор ironbook

4. https://pc-arena.ru/constructor - это также конфигуратор интернет магазина. Данный конфигуратор позволяет создать конфигурацию, узнать стоимость отдельных комплектующих и всей конфигурации, заказать комплектующие, проверить совместимость комплектующих. Есть возможность посмотреть характеристики комплектующих. Конфигуратор разработан с помощью html и javascript. Достаточно простой в использовании и обладает хорошим дизайном. Интерфейс конфигуратора pc-arena представлен на рисунке 4.

Рисунок 4 - Конфигуратор pc-arena

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

Рассмотрим способы оценки производительности.

Индекс производительности

Это специальная программа для компьютера в ОС Windows, которая может рассчитать показатели производительности для компьютера, причем она проводит измерение разных показателей ПК и присваивает оценку как каждому из них, так и выводит общий балл в целом для производительности системы. Данная возможность доступна для версий Windows 7, 8, Vista.

Программа Windows PowerShell

Встроенные приложения и программы для проверки мощности ПК отсутствуют, начиная с Windows 8.1. Поэтому тестирование можно выполнить при помощи оболочки PowerShell.

С помощью программы Windows PowerShell можно выполнить оценку производительности компьютера на Windows 8.1 и Windows 10. Данная встроенная программа поможет определить производительность ПК или ноутбука.

AIDA64.

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

Everest Home Edition

Everest Home Edition бесплатно проверит производительность компьютера. Программа обладает теми же качествами, что и AIDA32, но помимо этого она еще проверяет скорость чтения памяти.

3D Mark

3D Mark может проверять производительность компьютера «в играх». Она создает «экстремальные условия» для компьютера, чтобы проверить его работу. В основном специализируется на проверке видеокарты.

Perfomance Test

Perfomance Test позволяет оценить мощность компьютера и провести тестирование всех его аппаратных частей (процессора, памяти, графики и т.д.).

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

1.2 Анализ средств разработки

Язык программирования C#.

С# -- объектно-ориентированный язык программирования. Разработан в 1998--2001 годах группой инженеров компании Microsoft под руководством Андерса Хейлсберга и Скотта Вильтаумота как язык разработки приложений для платформы Microsoft .NET Framework. Впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270 [3]. C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML. Преимущество данного языка - эффективность, язык спроектирован так, чтобы дать программисту максимальный контроль над всеми аспектами структуры и порядка исполнения программы.

Microsoft Visual Studio Community 2017

Microsoft Visual Studio -- линейка продуктов компании Microsoft, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также веб-сайты, веб-приложения, веб-службы как в родном, так и в управляемом кодах для всех платформ, поддерживаемых Windows, Windows Mobile, Windows CE, .NET Framework, Xbox, Windows Phone .NET Compact Framework и Silverlight. [4]

СУБД SQLite.

SQLite -- компактная встраиваемая СУБД. Сама библиотека SQLite написана на C; существует большое количество привязок к другим языкам программирования, в томчисле Delphi, C++, Java, C#, Python, Perl, PHP, а также ко многим другим. SQLite поддерживает динамическое типизирование данных.[5] Преимущество простота и удобство встраивания. Встраиваемая система управления базами данных -- архитектура систем управления базами данных, когда СУБД тесно связана с прикладной программой и работает на том же компьютере, не требуя профессионального администрирования. Встраиваемые СУБД применяются во многих программах, которые хранят большие массивы данных, но при этом не требуется доступ с многих компьютеров [6].

SQLiteStudio

Менеджер SQLite баз данных, который позволяет просматривать и редактировать SQLite 3, SQLite 2 и SQLCipher базы данных.

Язык программирования запросов SQL

SQL (structured query language -- «язык структурированных запросов») -- декларативный язык программирования, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой соответствующей системой управления базами данных [7].

1.3 Техническое предложение

Цель данной работы - разработка конфигуратора системного блока ПК и средств оценки производительности и стоимости вычислительной системы. В соответствии с этой целью и проведенным аналитическим обзором сформулируем следующие требования к разрабатываемой системе.

1. Возможность создания конфигурации ПК.

2. Проверка совместимости комплектующих.

3. Возможность оценить приблизительную стоимость.

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

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

2. ПРОЕКТИРОВАНИЕ

2.1 Разработка базы данных

В разрабатываемом приложении используется база данных для хранения информации о комплектующих. Создана база данных с помощью SQLiteStudio с названием database.

Создана таблица с названием cpu, которая хранит информацию о процессорах. Таблица cpu состоит из столбцов id, name, price, info, brend, top. Столбец id имеет тип integer и является ключом. Столбец name имеет тип varchar и хранит название модели процессора. Столбец price имеет тип integer и хранит стоимость процессора. Столбец info имеет тип varchar и хранит краткую информацию о процессоре. Столбец brend имеет тип varchar и хранит информацию о производителе процессора. Столбец top имеет тип integer и хранит информацию о производительности. Запрос для создания таблицы cpu представлен на рисунке 5.

Рисунок 5 - Запрос для создания таблицы cpu

Создана таблица с названием Motherboard, которая хранит информацию о материнских платах. Таблица Motherboard состоит из столбцов id, name, price, info, brend, ddr, maxddr, minf, maxf, maxkol. Столбец id имеет тип integer и является ключом. Столбец name имеет тип varchar и хранит название модели материнской платы. Столбец price имеет тип integer и хранит стоимость материнской платы. Столбец info имеет тип varchar и хранит краткую информацию о материнской плате. Столбец brend имеет тип varchar и хранит информацию о производителе материнской платы. Столбец ddr имеет тип varchar и используется для проверки совместимости оперативной памяти и материнской платы. Столбец maxddr имеет тип integer и хранит максимальное значение поддерживаемого объема оперативной памяти, используется для проверки совместимости. Столбец minf имеет тип integer и хранит минимальное значение поддерживаемой частоты оперативной памяти, используется для проверки совместимости. Столбец maxf имеет тип integer и хранит максимальное значение поддерживаемой частоты оперативной памяти, используется для проверки совместимости. Столбец maxkol имеет тип integer и хранит количество слотов для оперативной памяти, используется для проверки совместимости. Запрос для создания таблицы Motherboard представлен на рисунке 6.

Рисунок 6 - Запрос для создания таблицы Motherboard

Создана таблица с названием cpu_Motherboard, которая хранит информацию о совместимых процессорах и материнских платах. Таблица cpu_Motherboard состоит из столбцов id_cpu, id_Motherboard. Столбец id_cpu имеет тип integer и хранит код процессора. Столбец id_Motherboard имеет тип integer и хранит код материнской платы. Данная таблица используется для проверки совместимости процессора и материнской платы. Запрос для создания таблицы cpu_Motherboard представлен на рисунке 7.

Рисунок 7 - Запрос для создания таблицы cpu_Motherboard

Создана таблица с названием cooler, которая хранит информацию о кулере. Таблица cooler состоит из столбцов id, name, price, info, brend, csize. Столбец id имеет тип integer и является ключом. Столбец name имеет тип varchar и хранит название модели кулера. Столбец price имеет тип integer и хранит стоимость кулера. Столбец info имеет тип varchar и хранит краткую информацию о кулере. Столбец brend имеет тип varchar и хранит информацию о производителе кулера. Столбец csize имеет тип integer и хранит информацию о высоте кулера, используется для проверки совместимости с корпусом. Запрос для создания таблицы cooler представлен на рисунке 8.

Рисунок 8 - Запрос для создания таблицы cooler

Создана таблица с названием cpu_cooler, которая хранит информацию о совместимых процессорах и кулерах. Таблица cpu_cooler состоит из столбцов id_cpu, id_cooler. Столбец id_cpu имеет тип integer и хранит код процессора. Столбец id_cooler имеет тип integer и хранит код кулера. Данная таблица используется для проверки совместимости процессора и кулера. Запрос для создания таблицы cpu_cooler представлен на рисунке 9.

Рисунок 9 - Запрос для создания таблицы cpu_cooler

Создана таблица с названием videocard, которая хранит информацию о видеокартах. Таблица videocard состоит из столбцов id, name, price, info, brend, vsize, top. Столбец id имеет тип integer и является ключом. Столбец name имеет тип varchar и хранит название модели видеокарты. Столбец price имеет тип integer и хранит стоимость видеокарты. Столбец info имеет тип varchar и хранит краткую информацию о видеокарте. Столбец brend имеет тип varchar и хранит информацию о производителе видеокарты. Столбец vsize имеет тип integer и хранит информацию о длине видеокарты, используется для проверки совместимости с корпусом. Столбец top имеет тип integer и хранит информацию о производительности. Запрос для создания таблицы videocard представлен на рисунке 10.

Рисунок 10 - Запрос для создания таблицы videocard

Создана таблица с названием ram, которая хранит информацию об оперативной памяти. Таблица ram состоит из столбцов id, name, price, info, brend, ddr, vram, nkol, fddr. Столбец id имеет тип integer и является ключом. Столбец name имеет тип varchar и хранит название модели оперативной памяти. Столбец price имеет тип integer и хранит стоимость оперативной памяти. Столбец info имеет тип varchar и хранит краткую информацию об оперативной памяти. Столбец brend имеет тип varchar и хранит информацию о производителе оперативной памяти. Столбец ddr имеет тип varchar и используется для проверки совместимости оперативной памяти и материнской платы. Столбец vram имеет тип integer и хранит значение объема оперативной памяти, используется для проверки совместимости. Столбец nkol имеет тип integer и хранит количество модулей оперативной памяти в комплекте, используется для проверки совместимости. Столбец fddr имеет тип integer и хранит значение частоты оперативной памяти, используется для проверки совместимости. Запрос для создания таблицы ram представлен на рисунке 11.

Рисунок 11 - Запрос для создания таблицы ram

Создана таблица с названием hdd, которая хранит информацию о жестких дисках. Таблица hdd состоит из столбцов id, name, price, info, brend, top. Столбец id имеет тип integer и является ключом. Столбец name имеет тип varchar и хранит название модели жесткого диска. Столбец price имеет тип integer и хранит стоимость жесткого диска. Столбец info имеет тип varchar и хранит краткую информацию о жестком диске. Столбец brend имеет тип varchar и хранит информацию о производителе жесткого диска. Столбец top имеет тип integer и хранит информацию о производительности. Запрос для создания таблицы hdd представлен на рисунке 12.

Рисунок 12 - Запрос для создания таблицы hdd

Создана таблица с названием ssd, которая хранит информацию об ssd. Таблица ssd состоит из столбцов id, name, price, info, brend, top. Столбец id имеет тип integer и является ключом. Столбец name имеет тип varchar и хранит название модели ssd. Столбец price имеет тип integer и хранит стоимость ssd. Столбец info имеет тип varchar и хранит краткую информацию об ssd. Столбец brend имеет тип varchar и хранит информацию о производителе ssd. Столбец top имеет тип integer и хранит информацию о производительности. Запрос для создания таблицы ssd представлен на рисунке 13.

Рисунок 13 - Запрос для создания таблицы ssd

Создана таблица с названием Power, которая хранит информацию о блоках питания. Таблица Power состоит из столбцов id, name, price, info, brend, psize. Столбец id имеет тип integer и является ключом. Столбец name имеет тип varchar и хранит название модели блока питания. Столбец price имеет тип integer и хранит стоимость блока питания. Столбец info имеет тип varchar и хранит краткую информацию о блоке питания. Столбец brend имеет тип varchar и хранит информацию о производителе блока питания. Столбец psize имеет тип varchar и хранит информацию о размере блока питания, используется для проверки совместимости. Запрос для создания таблицы Power представлен на рисунке 14.

Рисунок 14 - Запрос для создания таблицы Power

Создана таблица с названием Power_Motherboard, которая хранит информацию о совместимых блоках питания и материнских платах. Таблица Power_Motherboard состоит из столбцов id_Motherboard, id_Power. Столбец id_Motherboard имеет тип integer и хранит код материнской платы. Столбец id_Power имеет тип integer и хранит код блока питания. Данная таблица используется для проверки совместимости блока питания и материнской платы. Запрос для создания таблицы Power_Motherboard представлен на рисунке 15.

Рисунок 15 - Запрос для создания таблицы Power_Motherboard

Создана таблица с названием videocard_Power, которая хранит информацию о совместимых блоках питания и видеокартах. Таблица videocard_Power состоит из столбцов id_videocard, id_Power. Столбец id_videocard имеет тип integer и хранит код видеокарты. Столбец id_Power имеет тип integer и хранит код блока питания. Данная таблица используется для проверки совместимости блока питания и видеокарты. Запрос для создания таблицы videocard_Power представлен на рисунке 16.

Рисунок 16 - Запрос для создания таблицы videocard_Power

Создана таблица с названием housing, которая хранит информацию о корпусах. Таблица housing состоит из столбцов id, name, price, info, brend, psize, vsize, csize. Столбец id имеет тип integer и является ключом. Столбец name имеет тип varchar и хранит название модели корпуса. Столбец price имеет тип integer и хранит стоимость корпуса. Столбец info имеет тип varchar и хранит краткую информацию о корпусе. Столбец brend имеет тип varchar и хранит информацию о производителе корпуса. Столбец psize имеет тип varchar и хранит информацию о размере блока питания, используется для проверки совместимости. Столбец csize имеет тип integer и хранит информацию о высоте кулера, используется для проверки совместимости. Столбец vsize имеет тип integer и хранит информацию о длине видеокарты, используется для проверки совместимости. Запрос для создания таблицы housing представлен на рисунке 17.

Рисунок 17 - Запрос для создания таблицы housing

Создана таблица с названием housing_Motherboard, которая хранит информацию о совместимых корпусах и материнских платах. Таблица housing_Motherboard состоит из столбцов id_Motherboard, id_housing. Столбец id_Motherboard имеет тип integer и хранит код материнской платы. Столбец id_housing имеет тип integer и хранит код корпуса. Данная таблица используется для проверки совместимости корпуса и материнской платы. Запрос для создания таблицы housing_Motherboard представлен на рисунке 18.

Рисунок 18 - Запрос для создания таблицы housing_Motherboard

Целостность данных обеспечивается средствами СУБД SQLite, общие меры защиты информации пользователя реализуются средствами операционной системы, антивирусными и прочими внешними приложениями. Специальные меры защиты целостности и доступности информации в приложении не предусмотрены.

После создания базы данных перейдем к разработке приложения.

2.2 Алгоритм определения производительности

В разрабатываемом приложении выполняется оценка производительности. Так как в нашем случае ПК еще не собран, то никаких тестов провести невозможно, поэтому мы используем результаты тестов, проведенных компанией NIX. Данная компания провела тесты комплектующих и составила таблицу с результатами. В нашей базе данных хранится информация о производительности. При выборе комплектующих информация о производительности выводиться в соответствующие поля области «оценка производительности». В нашем приложении представлена оценка производительности процессора [6], видеокарты [7], жесткого диска [8], ssd [9]. Так же производительность во многом зависит от характеристик и настроек оперативной памяти, но на сайте компании NIX не представлена таблица с информацией об оперативной памяти. Поэтому в инструкции пользователю даны советы по выбору оперативной памяти. Информация об итоговой производительности вычисляется по наименьшему значению производительности из всех комплектующих и выводится в поле «итоговая производительность».

2.3 Разработка интерфейса пользователя

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

Рисунок 19 - Интерфейс разрабатываемого приложения

3. РЕАЛИЗАЦИЯ ПРОГРАММНОГО ПРОДУКТА

3.1 Кодирование программы

Кодирование программы производилось с помощью средств разработки Microsoft Visual Studio Community 2017. Сначала было создано приложение WindowsForms. Далее в форму были добавлены все необходимые компоненты, представляющие интерфейс поьзователя.

Было реализовано соединение с базой данных при запуске программы. Для этого было объявлено поле для хранения соединения с базой данных. Затем объявлено и установлено новое соединение с базой данных. Пример кода представлен на рисунке 20.

Рисунок 20 - Пример кода установление соединения с базой данных

При закрытии формы реализовано отключение соединения с базой данных. Пример кода представлен на рисунке 21.

Рисунок 21 - Пример кода отключения соединения от базы данных

При запуске приложения второй и третий столбцы конфигуратора заполняются данными о производителях и моделях из базы данных. Для этого создана SQLite команда с запросом к базе данных. Далее создан объект SQLiteDataReader, которому присваивается результат выполнения запроса к базе данных. После этого с помощью цикла читаем данные из объекта SQLiteDataReader и добавляем записи в comboBox. Пример кода для добавления данных о модели процессора в comboBox при запуске приложения представлен на рисунке 22.

Рисунок 22 - Пример кода для добавления данных о модели процессора в comboBox при запуске приложения

Все остальные comboBox во втором и третьем столбце при запуске приложения заполняются аналогично.

При выборе процессора происходит заполнение поля с ценой и поля с краткой информацией. Для этого создана SQLite команда с запросом к базе данных с условием равенства столбца name и выбранного значения модели процессора. Далее создан объект SQLiteDataReader, которому присваивается результат выполнения запроса к базе данных. После этого с помощью цикла читаем данные из объекта SQLiteDataReader и заполняем поле с ценой и поле с краткой информацией из базы данных для выбранного процессора. Так же заполняется поле оценки производительности. Для проверки совместимости создана переменная idcpu, значение которой так же присваивается. Присваивается значение arr[0], которое используется для расчета итоговой стоимости и значение arr2[0], которое используется для итоговой оценки производительности. Пример кода для заполнения поля с ценой и поля с краткой информацией представлен на рисунке 23.

Рисунок 23 - Пример кода для заполнения поля с ценой и поля с краткой информацией

При выборе процессора меняются модели материнских плат в comboBox2 на совместимые с выбранным процессором. Пример кода представлен на рисунке 24.

Рисунок 24 - Пример кода замены материнских плат на совместимые с выбранным процессором

Для остальных таблиц проводятся аналогичные действия.

3.2 Наполнение базы данными

Наполнение базы данными производилось с помощью запроса на добавление данных в таблицу. Данные о комплектующих, их характеристиках и ценах взяты с сайта интернет магазина dns-shop. Цена является приблизительной, так как цены на одни и те же комплектующие в различных магазинах отличаются, в базу заносится значение по последнему обновлению.

Запрос на добавление процессора в базу данных представлен на рисунке 25.

Рисунок 25 - Запрос на добавление процессора в базу данных

Для добавления остальных процессоров выполняются аналогичные запросы.

Запрос на добавление материнской платы в базу данных представлен на рисунке 26.

Рисунок 26 - Запрос на добавление материнской платы в базу данных

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

Процессор Intel Core i9-7940X и материнская плата ASUS WS X299 PRO/SE являются совместимыми. Они добавлены в таблицу cpu_Motherboard. Запрос на добавление представлен на рисунке 27.

Рисунок 27 - Запрос на добавление в таблицу cpu_Motherboard

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

Запрос на добавление кулера в базу данных представлен на рисунке 28.

Рисунок 28 - Запрос на добавление кулера в базу данных

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

Кулер Arctic Cooling Freezer 33 eSports Edition и процессор Intel Core i9-7940X являются совместимыми. Они добавлены в таблицу cpu_cooler. Запрос на добавление представлен на рисунке 29.

Рисунок 29 - Запрос на добавление в таблицу cpu_cooler

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

Запрос на добавление видеокарты в базу данных представлен на рисунке 30.

Рисунок 30 - Запрос на добавление видеокарты в базу данных

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

Запрос на добавление оперативной памяти в базу данных представлен на рисунке 31.

Рисунок 31 - Запрос на добавление оперативной памяти в базу данных

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

Запрос на добавление жесткого диска в базу данных представлен на рисунке 32.

Рисунок 32 - Запрос на добавление жесткого диска в базу данных

Для добавления остальных жестких дисков выполняются аналогичные запросы.

Запрос на добавление ssd в базу данных представлен на рисунке 33.

Рисунок 33 - Запрос на добавление ssd в базу данных

Для добавления остальных ssd выполняются аналогичные запросы.

Запрос на добавление блока питания в базу данных представлен на рисунке 34.

Рисунок 34 - Запрос на добавление блока питания в базу данных

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

Блок питания Corsair RMx 1000W и материнская плата ASUS WS X299 PRO/SE являются совместимыми. Они добавлены в таблицу Power_Motherboard. Запрос на добавление представлен на рисунке 35.

Рисунок 35 - Запрос на добавление в таблицу Power_Motherboard

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

Блок питания Corsair RMx 1000W и видеокарта Asus GeForce GTX 1080 Ti POSEIDON являются совместимыми. Они добавлены в таблицу videocard_Power. Запрос на добавление представлен на рисунке 36.

Рисунок 36 - Запрос на добавление в таблицу Power_Motherboard

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

Запрос на добавление корпуса в базу данных представлен на рисунке 37.

Рисунок 37 - Запрос на добавление корпуса в базу данных

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

Корпус CoolerMaster N400 и материнская плата ASUS WS X299 PRO/SE являются совместимыми. Они добавлены в таблицу housing_Motherboard. Запрос на добавление представлен на рисунке 38.

Рисунок 38 - Запрос на добавление в таблицу housing_Motherboard

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

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

Для того, чтобы конечный пользователь мог использовать конфигуратор на своём ПК, был разработан инсталлятор с помощью средств Microsoft Visual Studio Community 2017, который позволит установить все необходимые компоненты для дальнейшего использования приложения.

После завершения этапа разработки выполнено тестирование приложения.

4. ТЕСТИРОВАНИЕ

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

Рисунок 39 - Первая тестовая конфигурация

Вторая конфигурация имеет среднюю производительность и среднюю стоимость. Все выбранные комплектующие являются совместимыми. Вторая конфигурация представлена на рисунке 40.

Рисунок 40 - Вторая тестовая конфигурация

После проведения тестов мы видим, что конфигуратор выполняет свои функции.

ЗАКЛЮЧЕНИЕ

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

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Конфигурация компьютера: [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/Конфигурация_компьютера. (Дата обращения: 21.03.2018).

2. Аппаратное обеспечение: [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/Аппаратное_обеспечение. (Дата обращения: 21.03.2018).

3. C Sharp: [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/C_Sharp. (Дата обращения: 25.03.2018).

4. Microsoft Visual Studio: [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/Microsoft_Visual_Studio. (Дата обращения: 25.03.2018).

5. SQLite: [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/SQLite. (Дата обращения: 25.03.2018).

6. Встраиваемая СУБД: [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/Встраиваемая_СУБД. (Дата обращения: 25.03.2018).

7. SQL: [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/SQL. (Дата обращения: 25.03.2018).

8. Сравнение процессоров, рейтинг производительности процессоров: [Электронный ресурс]. URL: https://www.nix.ru/hardware-review/cpu-benchmark-performance.html. (Дата обращения: 12.04.2018).

9. Рейтинг игровых видеокарт, Сравнение видеокарт, Таблица производительности видеокарт: [Электронный ресурс]. URL: https://www.nix.ru/hardware-review/video-graphics-gpu-benchmark-performance.html. (Дата обращения: 12.04.2018).

10. Рейтинг жестких дисков, лучшие жесткие диски 2018: [Электронный ресурс]. URL: https://www.nix.ru/hardware-review/hard-disk-hdd-benchmark-performance.html. (Дата обращения: 12.04.2018).

11. Рейтинг SSD дисков, выбираем лучший SSD 2018, тест скорости SSD дисков: [Электронный ресурс]. URL: https://www.nix.ru/hardware-review/ssd-benchmark-performance.html. (Дата обращения: 12.04.2018).

ПРИЛОЖЕНИЕ

(обязательное)

Инструкция пользователю.

Для установки программы необходимо запустить setup.exe и следовать инструкциям инсталлятора. Также необходимо подключение к сети интернет для обновления данных в базе.

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

При выборе оперативной памяти нужно учитывать: чем выше частота, тем выше производительность. Но будет доступна только оперативная память поддерживаемая процессором и чипсетом, поэтому лучше выбрать максимальную частоту из поддерживаемых. Объем оперативной памяти, минимально необходимый на сегодняшний день для 64-битных ОС - 4Гб. Он подойдет для решения не требовательных к ресурсам задач. Рекомендуется использовать объем оперативной памяти 8Гб и выше. Объем 8Гб подойдет для решения большинства задач. Объем оперативной памяти 16Гб и выше подойдет для решения требовательных к ресурсам задач.

Приведем пример подбора конфигурации ПК. Сначала по желанию пользователя выбираем производителя процессора. Выбирать производителя не обязательно. Далее выбираем модель процессора. Результат представлен на рисунке 41.

Рисунок 41 - Выбор процессора

После выбора процессора выбираем материнскую плату. Сначала по желанию пользователя выбираем производителя материнской платы. Выбирать производителя не обязательно. Далее выбираем модель материнской платы. Результат представлен на рисунке 42.

Рисунок 42 - Выбор материнской платы

После выбора материнской платы выбираем кулер. Сначала по желанию пользователя выбираем производителя кулера. Выбирать производителя не обязательно. Далее выбираем модель кулера. Результат представлен на рисунке 43.

Рисунок 43 - Выбор кулера

После выбора кулера выбираем видеокарту. Сначала по желанию пользователя выбираем производителя видеокарты. Выбирать производителя не обязательно. Далее выбираем модель видеокарты. Результат представлен на рисунке 44.

Рисунок 44 - Выбор видеокарты

После выбора видеокарты выбираем оперативную память. Сначала по желанию пользователя выбираем производителя оперативной памяти. Выбирать производителя не обязательно. Далее выбираем модель оперативной памяти. Результат представлен на рисунке 45.

Рисунок 45 - Выбор оперативной памяти

После выбора оперативной памяти выбираем жесткий диск. Сначала по желанию пользователя выбираем производителя жесткого диска. Выбирать производителя не обязательно. Далее выбираем модель жесткого диска. Результат представлен на рисунке 46.

Рисунок 46 - Выбор жесткого диска

После выбора жесткого диска выбираем SSD. Сначала по желанию пользователя выбираем производителя SSD. Выбирать производителя не обязательно. Далее по желанию пользователя выбираем модель SSD. Выбирать SSD не обязательно. Результат представлен на рисунке 47.

Рисунок 47 - Выбор SSD

После выбора SSD выбираем блок питания. Сначала по желанию пользователя выбираем производителя блока питания. Выбирать производителя не обязательно. Далее выбираем модель блока питания. Результат представлен на рисунке 48.

Рисунок 48 - Выбор блока питания

После выбора блока питания выбираем корпус. Сначала по желанию пользователя выбираем производителя корпуса. Выбирать производителя не обязательно. Далее выбираем модель корпуса. Результат представлен на рисунке 49.

Рисунок 49 - Выбор корпуса

После выбора всех комплектующих мы получили результат, представленный на рисунке 49. На этом моменте подбор конфигурации завершен.

Размещено на Allbest.ru

...

Подобные документы

  • Выбор состава технических и программных средств разработки системы. Описание входных и выходных данных. Выбор модели базы данных. Разработка подсистемы наполнения базы данных, формирования отчетов. Разработка интерфейса пользователя, тестирование системы.

    курсовая работа [3,7 M], добавлен 04.12.2014

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

    курсовая работа [138,3 K], добавлен 04.01.2016

  • Разработка схемы организации связи объектов транспортной сети. Расчет характеристик резидентных шлюзов доступа (RAGW). Обоснование выбора типов интерфейсов. Расчет производительности коммутаторов транспортной сети и производительности Softswitch.

    курсовая работа [1,8 M], добавлен 30.04.2014

  • Разработка и реализация программного комплекса для обеспечения возможности проведения тестирования в образовательной среде. Разработка структура системы, базы данных, алгоритмов, интерфейса пользователя. Технико-экономическое обоснование проекта.

    дипломная работа [3,3 M], добавлен 03.09.2012

  • Основные правила разработки интерфейса пользователя. Создание базы данных с использованием разработанных моделей. Кодирование модулей программной системы с целью создания прототипа. Первичное окно при запуске программы. Защита от потери информации.

    лабораторная работа [857,8 K], добавлен 13.06.2014

  • Описание структуры обучающего блока. Проектирование его алгоритма и лингвистического и информационного обеспечения. Организация его взаимодействия с базой данных. Разработка графического интерфейса. Программная реализация основных функций приложения.

    дипломная работа [2,1 M], добавлен 20.12.2015

  • Определение номера бурового станка с максимальной суммарной производительностью за весь период. Решение задачи с помощью электронных таблиц. Расчетная таблица с формулами. Разработка макроса для построения графика. Разработка интерфейса программы.

    курсовая работа [1,9 M], добавлен 10.04.2014

  • Комплексный подход к организации ИТ-операций. Упрощение ИТ-инфраструктуры и сокращение расходов. Повышение производительности приложений. Конфигурации серверов IBM, их характеристика. Дополнительное оборудование для сервера, программное обеспечение.

    курсовая работа [1,4 M], добавлен 25.03.2015

  • Методики оценки производительности и пути выбора вычислительных систем. Использование альтернативных единиц измерения данных о работе на программно-аппаратной платформе используемого приложения. Скорость обработки транзакций; популярные тесты и бенчмарки.

    презентация [937,6 K], добавлен 11.12.2013

  • Анализ существующих решений для составления расписания репетитора. Разработка архитектуры программного продукта. Выбор инструментальных средств. Проектирование реляционной базы данных. Определение методики тестирования. Реализация интерфейса пользователя.

    дипломная работа [411,7 K], добавлен 22.03.2018

  • Разработка и анализ интерфейса пользователя базы данных. Ознакомление с процессом поэтапного создания проекта и добавления файла локальной базы данных. Исследование и характеристика главных принципов программирования функциональной части интерфейса.

    дипломная работа [3,0 M], добавлен 27.09.2017

  • Компоновку компьютерной системы целесообразно начинать с выбора чипсета. Выбор процессора производится исходя из максимальной производительности устройства за минимальные средства. Оперативная память выбирается согласно характеристикам материнской платы.

    реферат [1,0 M], добавлен 08.01.2009

  • Сравнительный анализ топологий сети. Описательная сущность эталонной модели взаимосвязи открытых систем (OSI) и сетевых протоколов. Разработка структурно-функциональной схемы локальной сети, расчет производительности каналов и подбор оборудования.

    курсовая работа [1,1 M], добавлен 16.11.2010

  • Оценка вариантов подключения Интернета для малой домашней PC сети и производительности приложения. Средства анализа и оптимизации локальных сетей. Влияние топологии связей и производительности коммуникационных устройств на пропускную способность сети.

    дипломная работа [6,9 M], добавлен 12.09.2012

  • Разработка компьютерной системы для работы в дизайн-студии. Требования к компонентам компьютерной системы для использования ее в качестве дизайн-студии. Выбор процессора с учетом его производительности. Выбор материнской платы. Видеокарта и ее параметры.

    реферат [1,3 M], добавлен 03.01.2009

  • Решение задачи с помощью программы MS. Использование интерфейса для работы с электронной таблицей. Разработка и создание базы данных для хранения и обработки информации. Оформление пояснительной записки с помощью текстового редактора Microsoft Word.

    курсовая работа [2,7 M], добавлен 13.01.2015

  • Производительность вычислительной системы. Важным показателем производительности компьютера-степень его быстродействия. Быстродействие серийно выпускаемых микропроцессоров. Применение суперкомпьютеров. Развитие аппаратных и программных средств.

    доклад [19,3 K], добавлен 22.09.2008

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

    курсовая работа [371,1 K], добавлен 12.08.2011

  • Модели производительности и эффективности затрат с учетом индивидуальных данных. Чувствительность системы обработки сообщений к изменению параметров М, Р, Т. Зависимость межпроцессорных накладных расходов и быстродействия процессора от параметров системы.

    курсовая работа [2,7 M], добавлен 08.07.2012

  • Описание первичных и результатных документов, типа связи информационных объектов. Построение информационно-логической модели базы данных и её реализация в СУБД Access (создание таблиц, запросов, форм, отчётов). Разработка интерфейса пользователя.

    курсовая работа [2,1 M], добавлен 14.11.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.