Файл: Пояснительная записка к выпускной квалификационной работе в виде дипломного проекта по пм. 01 Разработка модулей программного обеспечения.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 15.03.2024

Просмотров: 38

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


В ходе проведения нормализации таблиц и создания связей была создана логическая модель базы данных (См. рисунок).

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

Приведем обязательные характеристики полей таблиц базы данных:

а) имя поля - некоторый минимальный набор символов, предназначенный для поиска данных в таблице;

б) тип данных - обозначение типа данных в соответствии с конкретной программной системой;

в) ключ - указание, что данное поле является ключевым;

г) домен - предполагаемое количество символов, которые будут храниться в ячейках поля. [10, c. 38].

Определив основные характеристики полей таблицы, была построена физическая модель базы данных приложения (См. таблицу В.1).

Итак, проектирование - процесс определения архитектуры, компонентов, интерфейсов и других характеристик системы или её части. Первый этап — это создание серверной части приложения — получает запрос от клиента, выполняет вычисления и возвращает ответ. Следующий этап создание клиентской части приложения — это интерфейс с набором функций, с которым взаимодействует пользователь. На этапе создания концептуальной модели базы данных на основе анализа социальных сетей, были выделены основные сущности: пользователь, токен, сообщения, публикации, сообщества, изображения; на этапе создания логической модели базы данных, была построена логическая модель с отображением связей один к одному между сущностями; определив основные характеристики полей таблицы, создали физическую модель базы данных: ключевое поле, название поля, тип данных и допустимость пустых значений.



    1. Создание и тестирование приложения


Для разработки приложения выбрал интегрированную среду для разработки WebStorm - интегрированная среда для разработки на JavaScript и связанных с ним технологиях. Как и другие IDE JetBrains, WebStorm позволяет автоматизировать рутинную работу и легко справляться со сложными задачами, делая разработку более увлекательной.

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

  1. Присутствует встроенная поддержка множества технологий: JavaScript, TypeScript, React, React Native, Electron, Vue, Angular, Node.js, HTML, CSS и др;

  2. IDE сделает автодополнение кода, отследит ошибки и избыточный код, предложив возможные исправления, и поможет сделать безопасный рефакторинг;

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

  4. WebStorm включает мощные инструменты для рефакторинга кода по всей кодовой базе.

  5. WebStorm позволит вам быстро перейти к объявлению символа и покажет, где он используется в проекте.


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

MariaDB - ответвление от системы управления базами данных MySQL, разрабатываемое сообществом под лицензией GNU GPL. Разработку и поддержку MariaDB осуществляет компания MariaDB Corporation Ab и фонд MariaDB Foundation. MySQL - свободная реляционная система управления базами данных.

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

На первом этапе, создаем БД в MariaDB, который предполагает создание таблиц и соединения их связями между собой по ранее разработанной физической модели.

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

Для создания приложения было использовано несколько библиотек которые позволили упростить и ускорить процесс разработки. Основной библиотекой мы использовали React.

React — JavaScript-библиотека с открытым исходным кодом для разработки пользовательских интерфейсов.

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

Для хранения данных на клиентской части используется библиотека Redux, библиотека для JavaScript с открытым исходным кодом, предназначенная для управления состоянием приложения.

А для взаимодействия с серверной части использовалась библиотека Axios — клиентская библиотека HTTP, которая позволяет отправлять запросы (запросы) к заданной конечной точке.

После каждой сборки клиентской части проводится тестирование каждого компонента на наличие ошибок во время процесса обработки компонента, тестирование проводится встроенной библиотекой в React.

На третьем этапе, осуществляет создание серверного приложения и организация его взаимодействия с базой данных.

Для упрощения работы был использован Node.js - программная платформа, основанная на движке V8 (компилирующем JavaScript в машинный код), превращающая JavaScript из узкоспециализированного языка в язык общего назначения.


Node.js добавляет возможность JavaScript взаимодействовать с устройствами ввода-вывода через свой API, Node.js применяется преимущественно на сервере, выполняя роль веб-сервера.

Для работы упрощения работы сервера был использован Express - фреймворк для Node.js, который реализовывает слой функций, необходимых для создания эффективных приложений и API.

Для работы с базой данных была использована библиотека Sequelize это инструмент для организации взаимодействия между платформой Node.js и реляционными базами данными без использования специального языка запросов SQL.

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

После завершения этапа написания кода необходимо провести тестирование и отладку. Тестирование приложения - процесс поиска ошибок в работе приложения.

Цель тестирования - проверка соответствия ПО предъявляемым требованиям, обеспечение уверенности в качестве ПО, поиск очевидных ошибок в программном обеспечении, которые должны быть выявлены до того, как их обнаружат пользователи программы. Тестирование осуществляется с помощью unit-test’a. Unit-test (модульное тестирование) - процесс в программировании, позволяющий проверить на корректность отдельные модули исходного кода программы. Цель unit - тестирования состоит в том, чтобы убедиться, что каждая единица программного кода работает должным образом. Отладка была проведена встроенными средствами WebStorm. Отладка - поиск (локализация), анализ и устранение ошибок в ПО, которые были найдены во время тестирования.

Конечным этапом создания информационной системы стало написание инструкции по работе с приложением.

Итак, создание приложения связано непосредственно с этапами кодирования, отладки и тестирования, направленных на получение готового программного продукта. При разработке приложения были использованы интегрированная среда разработки WebStorm, СУБД MariaDB. WebStorm - интегрированная среда для разработки на JavaScript и связанных с ним технологиях. На первом этапе, создаем БД в MariaDB - ответвление от системы управления базами данных MySQL, разрабатываемое сообществом под лицензией GNU GPL. На втором этапе, осуществляется создание клиентского приложения и организация его взаимодействия с серверной частью, которая в свою очередь работает с БД. На третьем этапе, осуществляет создание серверного приложения и организация его взаимодействия с базой данных. Для упрощения работы был использован Node.js - программная платформа, основанная на движке V8, превращающая JavaScript из узкоспециализированного языка в язык общего назначения. После завершения этапа написания кода провели тестирование и отладку. Тестирование приложения - процесс поиска ошибок в работе приложения. Тестирование осуществляется с помощью unit-test’a. Unit-test (модульное тестирование) - процесс в программировании, позволяющий проверить на корректность. Отладка была проведена встроенными средствами WebStorm. Отладка - поиск (локализация), анализ и устранение ошибок в ПО, которые были найдены во время тестирования. Конечным этапом создания информационной системы стало написание инструкции по работе с приложением.




    1. Разработка инструкций по работе с приложением


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

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

Инструкции бывают двух видов:

  1. типовые;

  2. индивидуальные.

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

  1. разрабатывается для конкретного предприятия;

  2. разрабатывается для структурного подразделения;

  3. разрабатывается для комиссии.

В первом блоке приведены минимальные системные требования к мобильному устройству. Установка и функционирование приложения возможно на устройстве, работающей под управлением Android 12.0 и выше, аппаратное обеспечение которой удовлетворяет следующим минимальным характеристикам:

  1. оперативная память - не менее 2 Гб;

  2. свободное дисковое пространство - не менее 0.5 Гб;

  3. подключение к сети передачи данных с характеристиками не менее 8 Мб/с.

Во втором блоке описаны правила и порядок работы с приложением.

Загрузка приложения производится файлом «Minosy». По истечению некоторого промежутка времени на экране появится окно авторизации для пользователя. Поля для ввода данных «Логин» и «Пароль».

После входа в систему пользователь попадает на страницу «Главная», снизу каждой страницы находится меню, которое содержит в себе следующие пункты:

  1. просмотр страницы «Главная»;

  2. просмотр страницы «Сообщения»;

  3. просмотр страницы «Сообщества»;

  4. просмотр страницы «Друзья»;

  5. просмотр страницы «Профиль»;

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

Пункт «Главная» содержит список постов от друзей и сообществ.

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

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

Пункт «Друзья» содержит список друзей пользователя и также поле ввода позволяет выполнять поиск по друзья.

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


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

  1. Заключение

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

Целью нашей ВКР в виде дипломного проекта стала разработка мобильного приложения «Социальная сеть».

Для достижения поставленной цели, были выполнены следующие задачи:

  1. проанализировать и описать предметную область;

  2. спроектировать приложение;

  3. создать и протестировать приложение;

  4. разработать инструкцию по работе с приложением.

Анализ предметной области позволил нам определить «Социальная сеть» как мобильное приложения, позволяет обмениваться сообщения, общаться в тематических сообществах, добавлять друзей. Для организации процесса работы клиента с сервером было разработано мобильное приложения в интегрированной среде для разработки WebStorm.

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

Итак, создание приложения связано непосредственно с этапами кодирования, отладки и тестирования, направленных на получение готового программного продукта. При разработке приложения были использованы интегрированная среда разработки WebStorm, СУБД MariaDB. WebStorm - интегрированная среда для разработки на JavaScript и связанных с ним технологиях. Как и другие IDE JetBrains, WebStorm позволяет автоматизировать рутинную работу и легко справляться со сложными задачами, делая разработку более увлекательной. MariaDB - ответвление от системы управления базами данных MySQL, разрабатываемое сообществом под лицензией GNU GPL. Разработку и поддержку MariaDB осуществляет компания MariaDB Corporation Ab и фонд MariaDB Foundation. MySQL - свободная реляционная система управления базами данных. После завершения этапа написания кода провели тестирование и отладку. Тестирование приложения - процесс поиска ошибок в работе приложения. Тестирование осуществляется с помощью unit-test’a. Unit-test (модульное тестирование) - процесс в программировании, позволяющий проверить на корректность. Отладка была проведена встроенными средствами WebStorm. Отладка - поиск (локализация), анализ и устранение ошибок в ПО, которые были найдены во время тестирования.