Migrace PHP backendu skladového systému Atlantis do jazyka C#, architektura / Migration of Atlantis inventory system's PHP backend to C#, including architectural considerations
- Authors
- Publication Date
- Jun 07, 2024
- Source
- Digital Library of the Czech Technical University in Prague
- Keywords
- License
- Unknown
Abstract
Projekt Atlantis je skladový systém původně vyvinutý v PHP. Systém zahrnuje frontend, backend, databázi a další doprovodné komponenty, které více než 3 roky spravuje společnost Jagu s.r.o. Systém je úspěšný, ovšem setkává se s problémy týkajicí se rozšiřitelnosti, výkonu a udržitelnosti kvůli výběru platformy. Tato diplomová práce se bude zabývat přechodem projektu Atlantis z PHP do jazyka C# na platformě .NET. Hlavním cílem je pečlivě naplánovat a provézt částečnou migraci backendového systému, přičemž zajistit kompatibilitu s původním systémem, jeho frontendem a databází, a to bez narušení jejich funkcionality. To zahrnuje analýzu současného systému a úzkou spolupráci s členy týmu. Zaměření této práce je technický setup projektu, architektura a technologické myšlenky zaměřeny na přechod mezi zmíněnými technologiemi. Vzhledem k rozsahu práce nebude práce pokrývat kompletní implementaci celého backendu. Výsledkem bude pevný základ, na kterém bude migrace prováděna, včetně strategií a nástrojů potřebných pro process migrace. Přínosy nové architektury byly demonstrovány prostřednictvím částečné implementace, která byla spuštěna na prostředí podobném produkčnímu. / The Atlantis project is a warehouse inventory system originally built in PHP, the system includes a frontend, backend, database and other accompanying components maintained by Jagu s.r.o for over 3 years. While the system has been successful, it has faced some extensibility, performance, and maintainability challenges due to the platform choice. This thesis discusses the transition of Atlantis from PHP to C# on the .NET platform, aiming to take advantage of the enterprise features of .NET. The main goal is to carefully plan and carry out the migration of the backend system, making sure it can still work with the old PHP system to avoid disrupting current functions. This involves analyzing the current system and working closely with team members. The focus of the thesis is the technical setup of the project, architecture and technical knowledge to support a seamless transition between the mentioned technologies. Due to the sheer scale of the system, it will not cover the complete implementation of the entire backend. This thesis will ensure that the new backend can still communicate with the existing components like the frontend and database without issues. The final outcome will be a foundation upon which the migration will be carried out, including strategies and tools needed for the process. We demonstrated the benefits of the new architecture through partial implementation which was showcased on a production-like environment.