ДжазТим — надежный технологический партнер

Agile разработка ПО на Java

Система объединения облачных хранилищ

Описание проекта

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

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

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

Вот неполный список действий, доступных для пользователей:

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

С самой первой версии, разработанная система доступна для следующих популярных платформ: Windows Desktop, Mac OS, Linux, Windows Phone, IOS, Android.

Технологии

Spring, JDBC, Quartz, Camel, JavaFX, StealJS, MySQL SQLite, Maven, Gradle, TeamCity, MicrosoftAzure

Скриншоты

Особенности проекта

  • Многопрофильная команда разработчиков, бизнес-аналитиков и QA инженеров работала в качестве единой сплоченной команды.
  • На момент создания проекта, подобных аналогов не существовало.
    Покрытие тестами всех модулей приложения, в том числе создание UI-тестов.
  • Создание полной технической документации (UML диаграммы, графики, описания и т.д.).
  • Поддержка мультиплатформенности, настройка и администрирование серверов с различными ОС (Linux, MacOSX, Windows).
  • На проекте использовались: HTML5 file system API, File API, HTML5 Webworker, механизм определения мобильной платформы и адаптация страницы под конфигурации мобильной платформы.
  • Работа по Scrum процессам, использование JIRA Agile.

Результаты проекта

  • Все проектные работы были завершены успешно.
    Continuous Integration успешно внедрён во все фазы проекта. Было автоматизировано множество процессов:
  • контроль кода — тесты проходили сразу после внесения разработчиком изменений;
  • сборка и установка серверной части и веб-приложения на сервер;
  • была налажена система ночных билдов;
  • система релизов клиентских приложений;
  • и многое другое.
  • Использованы алгоритмы шифрования, которые, в сочетании с децентрализованными способами хранения, эффективно исключают возможность кражи данных или несанкционированного доступа.
  • Проведен R&D анализ существующих решений по бираспределенному хранению данных

Достижения компании на проекте

  • Покрыты автоматизированными тестами все слои и компоненты приложения: Unit, Integration, UI для всех клиентских частей приложения.
  • Были формализованы и налажены процессы по методологии Scrum/Agile, что позволило эффективно работать в распределённой команде и выйти на стабильные итерации.
  • Нашей командой было предложено и реализовано шифрование данных на уровне клиентской, а не серверной части. Было произведено разбиение файлов на равные блоки данных и последующее шифрование этих блоков (алгоритм блочного шифрования AES), затем скачивание зашифрованных блоков данных для последующей расшифровки и склеивания в один конечный файл, предоставляемый клиенту (пользователю).
  • Созданы и успешно внедрены прототипы различных алгоритмов по разбиению и шифрованию больших файлов.
  • Команда проекта предложила и внедрила большое количество архитектурных решений, которые позволили стабилизировать и расширить функционал проекта.
  • Проведение бизнес-анализа требований в результате непосредственного общения с заказчиками.

Отзывы клиентов

Акционер проекта

Коллектив разработчиков ДжазТим участвовал в бизнес-анализе требований проекта, реализовал все поставленные задачи в полном объеме и в срок, оправдав наши ожидания успешной командной работы.

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

Эффективным решением со стороны компании ДжазТим было налаживание процессов в команде и внедрение методологии Scrum/Agile. В итоге, каждый в распределенной команде был заинтересован в эффективной реализации проекта, что позволило выйти на стабильные итерации.

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

Свяжитесь с нами, чтобы обсудить Ваш IT-проект

    Имя *

    Название компании

    Email *

    Телефон

    Чем мы можем Вам помочь? *

    * – Обязательные поля для заполнения