Веббазована система групового розподіленого розроблення програм

Loading...
Thumbnail Image
Date
2023
Authors
Давиденко, Андрій
Глибовець, Микола
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
У статті описано архітектуру, використані технології створеної веббазованої системи розподіленого розроблення програм з акцентом на ефективне й просте одночасне групове створення тексту програми та її редагування і відлагодження. Впровадження модульної архітектури та механізму збереження вмісту сесій редагування забезпечило злагоджену функціональність компонент системи та ефективну підтримку узгодженості, управління неблокуючим паралелізмом, а також підтримку застосування сторонніх компіляторів та їх інтеграції з вебсистемою для колаборативного редагування. Для зручності спілкування користувачів у системі реалізовано чат. Вагомим доробком є підтримка окремих сесій редагування. Також імплементовано механізм прототипування клієнтських вебзастосунків, що дає змогу розробникам вебзастосунків швидко перевірити коректність програмного коду або верстки вебсторінки і поділитися цим з іншими розробниками. Коротко представлено сфери застосування системи і подальшого вдосконалення.
Description
The article describes the architecture and technologies used to create a web-based distributed soft-ware development system with an emphasis on efficient and simple simultaneous grouped creation of program text, its editing, and debugging. The introduction of a modular architecture and a content stor-age mechanism ensured the coordinated functionality of the system components and effective support for consistency and non-blocking parallelism management. Since the system has a non-blocking property, the local response time is insensitive to network delays. The non-relational MongoDB database is used to save the changes made to the program code and to recover lost data in the event of a technical server failure. An important feature of the system is the use of a flexible modular architecture to support the effective use of third-party compilers and their integration with the web-based system for collaborative editing. To facilitate user communication, the system has a chat feature. A significant improvement is the support of separate editing sessions. A mechanism for prototyping client web applications has also been imple-mented, which allows web application developers to quickly check the correctness of the program code or web page layout and share it with other developers. It is for such cases that the new mechanism will come in handy.The areas of its application and further improvement are briefly presented. Further development of the system may include the study of the implementation of nonconflicting replicated data types (CRDTs) as an alternative to operational transformations to ensure data synchronization during collaborative editing.
Keywords
операційні перетворення, розподілені системи, веброзроблення, програмування, колаборативні середовища, стаття, operational transformations, distributed systems, groupware, web-development, programming, collaborative environments
Citation
Давиденко А. М. Веббазована система групового розподіленого розроблення програм / Давиденко А. М., Глибовець М. М. // Наукові записки НаУКМА. Комп'ютерні науки. - 2023. - Т. 6. - С. 41-47. - https://doi.org/10.18523/2617-3808.2023.6.41-47