Дипломная работа: Разработка сервиса для свободного обмена одеждой

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Рис. 18. Экран приложения для свободного обмена одеждой. Экран «Обмен»

Кроме проиллюстрированных основных экранов, в приложении также реализовано:

Экран ошибки (страница 404).

Экран редактирования информации о себе.

Экран с краткой инструкцией о пользовании приложением.

Экран регистрации.

Экран входа в приложение.

В заключительной главе выпускной квалификационной работы продемонстрирована настройка и развертывание базы данных на удаленном сервере MongoDBAtlas, реализация моделей данных, показан процесс тестирования запросов к БД. В рамках разработки серверной части приложения, проиллюстрирована схема взаимодействия частей приложения, настроены маршруты, используя фреймворк Express.js, указаны используемые в разработке библиотеки. Также показана схема отправки данных на сервер, процесс управления состоянием клиента, используя Redux. Описаны реализованные формы сервиса и визуальное решение (компоненты, UIбиблиотека). Исходные коды серверной и клиентской части опубликованы на GitHub, ссылки на соответствующие репозитории:

Клиентская часть: URL: https://github.com/plastya-flomaster/swop-frontend/

Серверная часть: URL: https://github.com/plastya-flomaster/swop-backend/

Заключение

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

Результаты исследования российского рынка показали, что российский потребитель готов использовать digitalпродукты. Было выявлено, что элементы геймификации положительно влияют на пользовательский опыт, который, в свою очередь, все больше экспертов называют конкурентным преимуществом бизнеса [22].

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

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

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

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

Исходные коды серверной и клиентской частей опубликованы на GitHub, ссылки на соответствующие репозитории:

Клиентская часть: URL: https://github.com/plastya-flomaster/swop-frontend/

Серверная часть: URL: https://github.com/plastya-flomaster/swop-backend/

Литература

1. LVMH будут работать с ЮНЕСКО над защитой биоразнообразия // TheBlueprintmagazine, 2020. URL: https://theblueprint.ru/news/11069(дата обращения: 01.02.2020).

2. Z. Mi, D.M. Coffman. The sharing economy promotes sustainable societies // Nature Communications, vol. 149, pp. 123-130, 2019.

3. Euromonitor Passport: Digital consumer in Russia // Euromonitor international, 2019.

4. Was 2018 The Year Of The Influential Sustainable Consumer? // Nielsen Company. URL: https://www.nielsen.com/us/en/insights/article/2018/was-2018-the-year-of-the-influential-sustainable-consumer/, 2018 (дата обращения: 23.12.2019).

5. Г. И. Абдрахманова, К. О. Вишневский, Л. М. Гохберг и др., науч. ред. Л. М. Гохбергдокл. к XX Апр. междунар. науч. конф. по проблемам развития экономики и общества, Москва, 9-12 апр. 2019 г. Нац. исслед. ун-т «Высшая школа экономики», 2019.

6. V. B. Betelin, Challenges and Opportunities in Forming a Digital Economy in Russia // Scientific Research Institute of System Analysis, Russian Academy of Sciences, 2019.

7. L. Loussaпef, I. Ulrich, C. Damay. How does access to luxury fashion challenge self-identity? Exploring women's practices of joint and non-ownership // Universitйd'Angers, Journal of Business Research, vol. 102, pp. 263-272, 2019.

8. K. Gera, P. Hasdell. Gamified Sharing Economy The Role of Game // School of Design, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong, 2020.

9. Tingyi S. Lin. Conceptualizing a Sharing Economy Service Through an Information Design Approach Design Department // National Taiwan University of Science and Technology, International Conference on Human Factors in Artificial Intelligence and Social Computing, Washington D.C., USA, July 24-28, pp.329-335, 2019.

10. POINTFOR SERVICES LTD // The Open Database Of The Corporate World, 2020. URL: https://opencorporates.com/companies/cy/HE393603 (датаобращения: 23.02.2020).

11. Best JavaScript framework for frontend // RubyGarage magazine, 2020. URL: https://rubygarage.org/blog/best-javascript-frameworks-for-front-end (дата обращения: 03.03.2020).

12. State of JS // Data aggregation of popularity JavaScript technologies, https://stateofjs.com/(датаобращения: 23.02.2020).

13. Db-EnginesRanking chart // Knowledge Base of Relational and NoSQL Database Management Systems. URL: https://db-engines.com/en/ranking (датаобращения: 02.03.2020).

14. Баланс в веб-дизайне или как должен выглядеть продающий сайт // ThePoltor, 2018. URL: https://poltor.com/stati/balance.html (дата обращения: 04.02.2020).

15. Стрибли М. Элементы и принципы дизайна // Mediumblog, 2019. URL: https://medium.com/основы-визуального-дизайна/элементы-и-принципы-дизайна-c6d47be46b2c (дата обращения: 07.01. 2020).

16. Документация Express.js // Opensource community. URL: https://github.com/expressjs/express, 2020 (дата обращения: 13.05.2020).

17. Библиотека визуальных компонентов Grommet // Grommetinc. URL: https://v2.grommet.io/, 2020 (дата обращения: 15.05.2020).

18. J. Holtstrцm, C. Bjellerup and J. Eriksson. Business model development for sustainable apparel consumption The case of Houdini Sportswear // Linkцping University, Journal of Strategy and Management, vol. 12 No. 4, pp. 481-504, 2019.

19. Реляционные базы данных // AmazonCloudBlog. URL: https://aws.amazon.com/ru/relational-database/ , 2018 (дата обращения: 02.05.2020).

20. A New Textiles Economy: Redesigning Fashion's Future // Ellen Macarthur Foundation. URL: https://www.ellenmacarthurfoundation.org/assets/downloads/publications/A-New-Textiles-Economy_Full-Report.pdf (дата обращения: 21.02.2020).

21. B.J. Corbitt, T. Thanasankit. Trust and e-commerce: a study of consumer perceptions // Electronic commerce research and applications, vol. 2, pp. 203-215, 2003.

22. S. Deterding, D. Dixon, R. Khaled, L. NackeFrom game design elements to gamefulness: defining “gamification // Proceedings of the 15th International Academic MindTrek Conference: Envisioning Future Media Environments, Amsterdam, The Netherlands, September 12-16, 2011, pp. 111-143.

23. S. Sahai, R. Goel, A. Venaik, V. Garg. Impact of Digital Commerce on Fashion Industry to Gain Customer Loyalty // International Journal of Engineering and Advanced Technology (IJEAT), Vol. 8, 2019.

24. Xun Xu. How Do Consumers in the Sharing Economy Value Sharing? Evidence from Online Reviews // College of Business Administration, California State University, Stanislaus, Decision Support Systems, vol. 108, pp. 456-469, 2020.

Приложение А

Рис. 19

Рис. 20

Приложение Б

Рис. 21

Приложение В

Рис. 22

Приложение Г

Описание моделей данных в виде MongooseSchema

СхемаUser

const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const UserSchema = new Schema({

name: {

type: String,

required: true,

},

email: {

type: String,

required: true,

},

password: {

type: String,

required: true,

},

phone: String,

instagram: String,

avatar: String,

date: {

type: Date,

default: Date.now,

},

});

module.exports = User = mongoose.model('users', UserSchema);

СхемаLikedItems

const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const LikedItemSchema = new Schema({

items: { type: [String], required: true },

userId: { type: String, required: require },

});

const LikedItemsCollectionSchema = new Schema({

userId: { type: String, required: true },

pairs: [LikedItemSchema],

disLike: [String],

});

const LikedItems = mongoose.model('LikedItems', LikedItemsCollectionSchema);

module.exports = LikedItems;

const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const CategoriesSchema = new Schema({

category: String,

});

module.exports = Categories = mongoose.model('categories', CategoriesSchema);

const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const CategorySchema = require('./Category');

const ItemSchema = new Schema({

_id: Schema.Types.ObjectId,

userId: Schema.Types.ObjectId,

title: String,

category: String | CategorySchema,

description: String,

tags: [

{

tag: String,

},

],

photos: [String],

});

const ItemsSchema = new Schema({

userId: {

type: String,

required: true,

},

items: [ItemSchema],

});

module.exports = Items = mongoose.model('items', ItemsSchema);

const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const ChangeSchema = new Schema({

senderId: String,

recieverId: String,

senderitemId: String,

recieverItemId: String,

status: String

});

module.exports = Change = mongoose.model('change', ChangeSchema);