Skip to main content

LUP Student Papers

LUND UNIVERSITY LIBRARIES

Architectural Consequences of Implementing a Functional Module in Desktop- versus Web-Based Clients

Magnusson Lundbladh, Cebastian LU and Hagström, Samuel LU (2026) EITL05 20261
Department of Electrical and Information Technology
Abstract (Swedish)
Detta examensarbete undersöker övergången från en monolitisk skrivbordsapplikation till en distribuerad webbaserad klient inom ett industriellt mjukvarusystem som utvecklats i samarbete med Energy Opticon. Examensarbetet fokuserar på implementering och jämförelse av modulen Smart Data View (SDV) i två olika klientarkitekturer: en befintlig skrivbordsapplikation byggd i VB.NET med Windows Forms och DevExpress-komponenter, samt en nyutvecklad webbklient byggd med React, TypeScript och Fluent UI.

Huvudsyftet är att analysera hur arkitektoniska skillnader påverkar systemets struktur, dataflöde, tillståndshantering och utvecklingsprocess vid implementation av samma funktionalitet. SDV-modulen implementerades i webbklienten med hjälp av... (More)
Detta examensarbete undersöker övergången från en monolitisk skrivbordsapplikation till en distribuerad webbaserad klient inom ett industriellt mjukvarusystem som utvecklats i samarbete med Energy Opticon. Examensarbetet fokuserar på implementering och jämförelse av modulen Smart Data View (SDV) i två olika klientarkitekturer: en befintlig skrivbordsapplikation byggd i VB.NET med Windows Forms och DevExpress-komponenter, samt en nyutvecklad webbklient byggd med React, TypeScript och Fluent UI.

Huvudsyftet är att analysera hur arkitektoniska skillnader påverkar systemets struktur, dataflöde, tillståndshantering och utvecklingsprocess vid implementation av samma funktionalitet. SDV-modulen implementerades i webbklienten med hjälp av befintliga backend-API:er, utan att ändra backend-logik eller göra förändringar på databasnivå.

Analysen baseras på centrala arkitektoniska koncept såsom lagerarkitektur, händelsedriven programmering, observatörsmönster och enkelriktat dataflöde. Implementationen i skrivbordsklienten bygger på en tätt kopplad, händelsedriven och observatörsbaserad struktur där användargränssnitt och logik är nära integrerade. Webbimplementationen följer däremot en komponentbaserad arkitektur med en tydlig separation mellan presentation, tillståndshantering och serverkommunikation.

Resultaten visar att webbarkitekturen förbättrar modularitet, ansvarsfördelning och långsiktig underhållbarhet, men introducerar samtidigt ökad komplexitet, särskilt i hantering av tillstånd och asynkron data. Skrivbordsarkitekturen erbjuder en mer direkt och integrerad utvecklingsmodell, men med begränsad flexibilitet när det gäller skalbarhet och vidareutveckling av systemet.

Sammanfattningsvis belyser examensarbetet de avvägningar som uppstår vid migrering från ett monolitiskt skrivbordssystem till en modern webbaserad arkitektur, särskilt vad gäller struktur, datahantering och utvecklingsprocess. (Less)
Abstract
This thesis explores the transition from a monolithic desktop application to a distributed web-based client within an industrial software system developed in collaboration with Energy Opticon. The thesis focuses on the implementation and comparison of the Smart Data View (SDV) module in two different client architectures: an existing desktop application built in VB.NET using Windows Forms and DevExpress components, and a newly developed web client built with React, TypeScript, and Fluent UI.

The main objective is to analyze how architectural differences influence system structure, data flow, state handling, and development workflow when implementing the same functionality. The SDV module was implemented in the web client using existing... (More)
This thesis explores the transition from a monolithic desktop application to a distributed web-based client within an industrial software system developed in collaboration with Energy Opticon. The thesis focuses on the implementation and comparison of the Smart Data View (SDV) module in two different client architectures: an existing desktop application built in VB.NET using Windows Forms and DevExpress components, and a newly developed web client built with React, TypeScript, and Fluent UI.

The main objective is to analyze how architectural differences influence system structure, data flow, state handling, and development workflow when implementing the same functionality. The SDV module was implemented in the web client using existing backend APIs, without modifying backend logic or introducing database-level changes.

The analysis is based on key architectural concepts such as layered architecture, event-driven programming, observer patterns, and unidirectional data flow. The desktop implementation relies on a tightly coupled, event-driven and observer-based structure, where UI and logic are closely integrated. In contrast, the web implementation follows a component-based architecture with a clear separation between presentation, state management, and server communication.

The results show that the web architecture improves modularity, separation of concerns, and long-term maintainability, while also introducing more complexity in state management and asynchronous data handling. The desktop architecture offers a more direct and tightly integrated development model, but with reduced flexibility for scaling and evolving the system.

Overall, the thesis highlights the trade-offs involved in migrating from a monolithic desktop system to a modern web-based architecture, particularly in terms of structure, data handling, and development workflow. (Less)
Popular Abstract
Many older software systems are built as desktop applications, where much of the user interface, logic, and state handling is closely connected in one application. At the same time, many companies are moving toward web-based systems that are easier to maintain, update, and develop over time.

This thesis studies such a transition in collaboration with Energy Opticon. The work focuses on moving the Smart Data View module from an existing desktop client to a new web client. The same functionality was studied in both environments in order to understand how the choice of client technology affects the system architecture.

The results show that the web-based solution gives a clearer structure, better separation between different parts of... (More)
Many older software systems are built as desktop applications, where much of the user interface, logic, and state handling is closely connected in one application. At the same time, many companies are moving toward web-based systems that are easier to maintain, update, and develop over time.

This thesis studies such a transition in collaboration with Energy Opticon. The work focuses on moving the Smart Data View module from an existing desktop client to a new web client. The same functionality was studied in both environments in order to understand how the choice of client technology affects the system architecture.

The results show that the web-based solution gives a clearer structure, better separation between different parts of the system, and improved long-term maintainability. However, it also introduces more complexity, especially when handling application state and asynchronous communication with backend services. The desktop solution is more direct and tightly integrated, but less flexible when the system needs to grow or change.

The thesis shows that moving from a desktop client to a web client is not only a technical rewrite. It also changes how developers structure code, handle data, manage state, and reason about future development. (Less)
Please use this url to cite or link to this publication:
author
Magnusson Lundbladh, Cebastian LU and Hagström, Samuel LU
supervisor
organization
course
EITL05 20261
year
type
M2 - Bachelor Degree
subject
keywords
Software architecture, Desktop applications, Web applications, React, State management, Component-based architecture, Data flow, System migration
report number
LU/LTH-EIT 2026-1138
language
English
id
9236395
date added to LUP
2026-06-15 13:44:49
date last changed
2026-06-15 13:44:49
@misc{9236395,
  abstract     = {{This thesis explores the transition from a monolithic desktop application to a distributed web-based client within an industrial software system developed in collaboration with Energy Opticon. The thesis focuses on the implementation and comparison of the Smart Data View (SDV) module in two different client architectures: an existing desktop application built in VB.NET using Windows Forms and DevExpress components, and a newly developed web client built with React, TypeScript, and Fluent UI.

The main objective is to analyze how architectural differences influence system structure, data flow, state handling, and development workflow when implementing the same functionality. The SDV module was implemented in the web client using existing backend APIs, without modifying backend logic or introducing database-level changes.

The analysis is based on key architectural concepts such as layered architecture, event-driven programming, observer patterns, and unidirectional data flow. The desktop implementation relies on a tightly coupled, event-driven and observer-based structure, where UI and logic are closely integrated. In contrast, the web implementation follows a component-based architecture with a clear separation between presentation, state management, and server communication.

The results show that the web architecture improves modularity, separation of concerns, and long-term maintainability, while also introducing more complexity in state management and asynchronous data handling. The desktop architecture offers a more direct and tightly integrated development model, but with reduced flexibility for scaling and evolving the system.

Overall, the thesis highlights the trade-offs involved in migrating from a monolithic desktop system to a modern web-based architecture, particularly in terms of structure, data handling, and development workflow.}},
  author       = {{Magnusson Lundbladh, Cebastian and Hagström, Samuel}},
  language     = {{eng}},
  note         = {{Student Paper}},
  title        = {{Architectural Consequences of Implementing a Functional Module in Desktop- versus Web-Based Clients}},
  year         = {{2026}},
}