[Context] The adoption of micro-frontends architectures has gained traction as a promising approach to enhance modularity, scalability, and maintainability of web applications. [Goal] The primary aim of this research is to investigate the benefits and limitations of migrating a real-world application to a micro-frontends architecture from the perspective of the developers. [Method] Based on the action research approach, after diagnosis and planning, we applied an intervention of migrating the target web application to a micro-frontends architecture. Thereafter, the migration was evaluated in a workshop involving the remaining developers responsible for maintaining the application. During the workshop, these developers were presented with the migrated architecture, conducted a simple maintenance task, discussed benefits and limitations in a focus group to gather insights, and answered a questionnaire on the acceptance of the technology. [Results] Developers' perceptions gathered during the focus group reinforce the benefits and limitations reported in the literature. Key benefits included enhanced flexibility in technology choices, scalability of development teams, and gradual migration of technologies. However, the increased complexity of the architecture raised concerns among developers, particularly in dependency and environment management, debugging, and integration testing. [Conclusions] While micro-frontends represent a promising technology, unresolved issues still limit their broader applicability. Developers generally perceived the architecture as useful and moderately easy to use but hesitated to adopt it.
翻译:[背景] 微前端架构作为一种提升Web应用模块化、可扩展性与可维护性的有效途径,其采用率正持续增长。[目标] 本研究旨在从开发者视角出发,探究将实际应用迁移至微前端架构的优势与局限。[方法] 基于行动研究方法,在完成问题诊断与方案规划后,我们对目标Web应用实施了向微前端架构的迁移干预。随后,通过组织工作坊(参与者为负责维护该应用的其余开发人员)对迁移效果进行评估。工作坊期间,开发者们首先了解迁移后的架构,执行简单的维护任务,随后通过焦点小组讨论收集对优势与局限的见解,并填写关于技术接受度的调查问卷。[结果] 焦点小组收集的开发者反馈印证了文献中记载的优势与局限。主要优势包括技术选型灵活性增强、开发团队可扩展性提升以及技术栈的渐进式迁移能力。然而,架构复杂度的增加引发了开发者的担忧,尤其在依赖与环境管理、调试及集成测试方面。[结论] 尽管微前端是一项前景广阔的技术,但尚未解决的问题仍限制其更广泛的应用。开发者普遍认为该架构具有实用性且易用性中等,但对全面采纳仍持保留态度。