Регистрация / Вход
Прислать материал

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

Сведения об участнике
ФИО
Хваталин Максим Михайлович
Вуз
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Мордовский государственный университет им. Н.П. Огарёва»
Тезисы (информация о проекте)
Область наук
Информационные технологии и вычислительные системы
Раздел области наук
Информационные технологии
Тема
Разработка информационной системы визуализации ассортимента строительных магазинов
Резюме
Работа посвящена разработке информационной системы (онлайн сервиса / веб-приложения), позволяющего покупателям провести апробацию выбранных строительных материалов и компонентов на 3D строительных объектах.
Магазины смогут, перейдя в личный кабинет, загружать трехмерные модели своего ассортимента в любом из предложенных форматов трехмерных графических файлов, а также модели помещений при необходимости. Покупатели, перейдя по ссылке, смогут выбрать помещение, либо сформировать своё по заданным характеристикам, а затем смоделировать интерьер из необходимых материалов и компонентов в интерактивном режиме с автоматическим соблюдением пропорций.
Ключевые слова
Визуализация, WEB, 3D Графика, SASS
Цели и задачи
Разработать информационную систему визуализации ассортимента магазинов по продаже строительных материалов и компонентов с поддержкой современных web-браузеров, смартфонов.
Введение

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

Для решения рассмотренной проблемы и ликвидации указанных недостатков было решено разработать онлайн сервис. Он будет представлять собой web – приложение, использующее современные web технологии, предоставляющее доступ магазинам и покупателям к заранее подготовленным 3D моделям и помещениям, основанных на реальных строительных объектах.

Методы и материалы

В качестве основной методологии при проектировании и разработке АИС была выбрана Rational Unified Process, позволяющая методично и четко выделить основной функционал ИС, пользователей, а также потоки бизнес - процессов.

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

1) "Покрытие требований", которая позволяет оценить степень полноты системы тестов по отношению к функциональности системы.

2) “Покрытие кода”, показывающая процент, насколько исходный код программы был протестирован.

Скорость работы серверной части АИС оценивалась с помощью RPS (requests per seconds), мера оценивающая количество запросов в секунду. Низкие значения свидетельствовуют о необходимости оптимизации реализации выбранных алгоритмов и сложности запросов к СУБД.

Скорость работы клиентской части АИС оценивалась с помощью FPS (frames per second) на выбранном аппаратном обеспечении. Низкие значения FPS позволили выделить проблемные места программного кода, а также алгоритмы с высокой алгоритмической сложностью по O-нотации.

Описание и обсуждение результатов

1. Спроектирована архитектура информационной системы. Архитектура, функционал и требования к АИС были спроектированы в соответствии с методологией Rational Unified Process и при помощи графического языка описания UML.

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

3. Подобран и проверен инструментарий для разработки серверной и клиентской частей информационной системы. В результате проведенных испытаний наиболее оптимальным решением стало написать серверную часть системы с использованием языка программирования Ruby и каркаса разработки Ruby on Rails, клиентскую часть системы на ЯП Coffescript и каркасе разработки Angular.js. Для трехмерной визуализации было принято решение использовать библиотеку Babylon.js имеющую весь необходимый для разработки инструментарий.

4. Написана серверная часть информационной системы. Была запрограммирована вся логика прецедентов, описанных во время этапа проектирования. Для осуществления обмена между серверной и клиентскими частями АИС был написан REST API, для обеспечения обновления данных в реальном времени реализован end point для протокола WebSocket.

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

6. Написаны скрипты клиентской части информационной системы. Написаны скрипты, обеспечивающие взаимодействие с сервером, используя REST API, обработку 3D объектов и их визуализацию.

7. Сверстана клиентская часть информационной системы. Личный кабинет сотрудника магазина выполнен в светлых тонах, за основу навигации между разделами выбран навигационный блок. В основе интерфейса 3D сцены лежат полупрозрачные темные скрываемые элементы управления, на которых отчетливо виден контраст других важных элементов управления и пиктограмм товара.

8. Проведено функциональное тестирование клиентской части информационной системы. Было осуществлено покрытие функциональными тестами модулей клиентской части АИС.

10. Тестовый запуск. Закрытое тестирование тестирования в рамках выбранных пользователей выявило основные недостатки и достоинства системы, что позволило выбрать дальнейший вектор развития.

 

Используемые источники
1. Арлоу Д. UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование / Д. Арлоу, А. Ней- штадт - М. : Символ-Плюс, 2007. - 624 с.
2. Маглинец Ю. А. Анализ требований к автоматизированным информационным системам / Ю. А. Маглинец - М. : Интернет-университет информационных технологий, 2008. - 200 с.
3. Ханссон Д. Х. Гибкая разработка веб-приложений в среде Rails / Д. Х. Ханссон - М. : Питер, 2012. - 464 с.
4. Макфарланд Д. С. Большая книга CSS3 / Д. С. Макфарланд - М. : Питер, 2014. - 608 с.
5. Chelimsky D. The RSpec Book: Behaviour-Driven Development with Rspec, Cucumber, and Friends / D. Chelimsky, D. Astels, Z. Dennis, A. Hellesoy, B. Helmkamp, D. North - М. : The Pragmatic Programmers, 2011. - 448 с.
Information about the project
Surname Name
Khvatalin Maxim
Project title
Information building material shops stock visualization system
Summary of the project
The purpose of the product - developing web-application that allows users to select necessary building materials and component using ready 3D models of selected shop.
Keywords
Visualization, WEB, 3D-Graphics, SASS