Return to search

Ensidesapplikationers kodkvalitet och förvaltningsbarhet : En jämförelse av förvaltningsbarhet hos single-page applications utvecklade med AngularJS och React / Code Quality and Maintainability of Single-page Applications : Comparison of AngularJS and React

Single-page applications have historically been subject to strong market forces driving fast development and deployment in lieu of quality control and changeable code, which are important factors for maintainability. In this report we develop two functionally equivalent applications using AngularJS and React and compare their maintainability as defined by ISO/IEC 9126. AngularJS and React represent two distinct approaches to web development, with AngularJS being a general framework providing rich base functionality and React a small specialized library for efficient view rendering. The quality comparison was accomplished by calculating Maintainability Index for each application. Version control analysis was used to determine quality indicators during development and subsequent maintenance where new functionality was added in two steps.   The results show no major differences in maintainability in the initial applications. As more functionality is added the Maintainability Index decreases faster in the AngularJS application, indicating a steeper increase in complexity compared to the React application. Source code analysis reveals that changes in data flow requires significantly larger modifications of the AngularJS application due to its inherent architecture for data flow. We conclude that frameworks are useful when they facilitate development of known requirements but less so when applications and systems grow in size. / Ensidesapplikationer har historiskt sett påverkats av starka marknadskrafter som pådriver snabba utvecklingscykler och leve­rans­er. Detta medför att kvalitetskontroll och förändringsbar kod, som är viktiga fak­torer för förvaltningsbarhet, blir lidande. I denna rapport utvecklar vi två funktionellt ekvi­val­enta ensidesapplikationer med AngularJS och React samt jämför dessa applikationers för­valtningsbarhet enligt ISO/IEC 9126. AngularJS och React representerar två distinkta angreppsätt på webbutveckling, där AngularJS är ett ramverk med mycket färdig funk­tional­itet och React ett mindre bibliotek specialiserat på vyrendering. Kvalitets­jämförelsen utfördes genom att beräkna förvaltningsbarhetsindex för resp­ek­tive applikation. Ver­sions­­hanteringsanalys användes för att bestämma andra kvalitets­indi­kat­orer efter den initiala utvecklingen samt två efter­följande underhållsarbeten.   Resultaten visar inga markanta skillnader i förvaltningsbarhet för de initiala applikationerna. I takt med att mer funktionalitet lades till sjönk förvaltnings­barhetsindex snabbare för AngularJS-applikationen, vilket motsvarar en kraft­igare ökning i komplexitet jämfört med React-applikationen. Versions­hanteringsanalys visar att ändringar i dataflödet kräver större mod­ifika­tioner för AngularJS-applikationen på grund av dess förbestämda arki­tek­tur. Utifrån detta drar vi slutsatsen att ramverk är användbara när de under­stödjer utvecklingen mot kända krav men att deras nytta blir begränsad ju mer en applikation växer i storlek.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:du-21617
Date January 2016
CreatorsNiskanen, Tom, Nyström, Johan
PublisherHögskolan Dalarna, Informatik, Högskolan Dalarna, Informatik
Source SetsDiVA Archive at Upsalla University
LanguageSwedish
Detected LanguageSwedish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.1093 seconds