Jewellery inventory

Обща информация

Основният клиент, за когото разработваме този продукт, е компания за производство на бижута. Те са малък бизнес със стремеж към растеж. До момента са управлявали администрацията си чрез множество таблици в Excel, а по-старата им дейност се съхранява само на хартиени носители. Те се нуждаят от инструмент, който да замени текущия им процес, да съхрани цялата им предишна дейност и да осигури по-добра видимост върху нея.

Потребителите на инструмента са служители на компанията, отговорни за:

  • Доставката на ресурси;

  • Производството на бижута;

  • Продажбите;

  • Администратор, който да наблюдава процесите и да извършва редакции при възникване на несъответствия.

Съществува утвърден инструмент, който изпълнява всички гореспоменати функции, но дори и най-евтините му варианти са извън бюджета на повечето малки бижутерски къщи: https://www.gopiro.com/home.

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

Технически проблем

Данните в уебсайта се попълват от местната общност – хора, които живеят в селата, които описват. Процесът включва попълване на форма (Jotform), след което информацията се прехвърля ръчно в уебсайта на WordPress чрез копиране и поставяне, което отнема изключително много време.

Освен това, поради липсата на структурирана база данни за характеристиките на селата, филтрирането на информацията беше възможно единствено по име на селото и област.

Технически предизвикателства

Основното предизвикателство беше първоначалната липса на специфични познания в конкретната бизнес сфера (domain knowledge) в рамките на екипа. За да компенсираме това, работихме в тясно сътрудничество с клиента, който беше наш основен консултант и източник на изисквания за продукта.

Нашите цели включваха:

  • Баланс между специфични нужди и гъвкавост: Искахме да създадем решение, което не само решава конкретните проблеми на клиента, но и е достатъчно универсално, за да поддържа потенциално всеки друг подобен производствен процес.

  • Сложен модел на данните: Резултатът е сравнително комплексен модел на данните, проектиран да обслужва тази концепция за гъвкавост.

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

Решението

Разработихме стабилна и мащабируема архитектура, базирана на съвременни технологии:

  • Backend: Java Spring Boot приложение.

  • База данни: PostgreSQL за сигурно съхранение на структурираните данни.

  • Frontend: Vue.js приложение за интуитивен потребителски интерфейс.

  • Инфраструктура: Услугите са контейнеризирани и разгърнати на AWS EC2 инстанция.

  • Автоматизация: Внедрено е CI/CD решение, използващо GitHub Actions и AWS CodeDeploy, което автоматизира процесите по изграждане, тестване и внедряване на кода.

    Възможности, поддържани от продукта:

Организации:

Потребители:

Ресурси:

Продажби:

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