Return to search

Improving Quality of Experience through Performance Optimization of Server-Client Communication

In software engineering it is important to consider how a potential user experiences the system during usage. No software user will have a satisfying experience if they perceive the system as slow, unresponsive, unstable or hiding information. Additionally, if the system restricts the users to only having a limited set of actions, their experience will further degrade. In order to evaluate the effect these issues have on a user‟s perceived experience, a measure called Quality of Experience is applied. In this work the foremost objective was to improve how a user experienced a system suffering from the previously mentioned issues, when searching for large amounts of data. To achieve this objective the system was evaluated to identify the issues present and which issues were affecting the user perceived Quality of Experience the most. The evaluated system was a warehouse management system developed and maintained by Aptean AB‟s office in Hässleholm, Sweden. The system consisted of multiple clients and a server, sending data over a network. Evaluation of the system was in form of a case study analyzing its performance, together with a survey performed by Aptean staff to gain knowledge of how the system was experienced when searching for large amounts of data. From the results, three issues impacting Quality of Experience the most were identified: (1) interaction; limited set of actions during a search, (2) transparency; limited representation of search progress and received data, (3) execution time; search completion taking long time. After the system was analyzed, hypothesized technological solutions were implemented to resolve the identified issues. The first solution divided the data into multiple partitions, the second decreased data size sent over the network by applying compression and the third was a combination of the two technologies. Following the implementations, a final set of measurements together with the same survey was performed to compare the solutions based on their performance and improvement gained in perceived Quality of Experience. The most significant improvement in perceived Quality of Experience was achieved by the data partitioning solution. While the combination of solutions offered a slight further improvement, it was primarily thanks to data partitioning, making that technology a more suitable solution for the identified issues compared to compression which only slightly improved perceived Quality of Experience. When the data was partitioned, updates were sent more frequently and allowed the user not only a larger set of actions during a search but also improved the information available in the client regarding search progress and received data. While data partitioning did not improve the execution time it offered the user a first set of data quickly, not forcing the user to idly wait, making the user experience the system as fast. The results indicated that to increase the user‟s perceived Quality of Experience for systems with server-client communication, data partitioning offered several opportunities for improvement. / I programvaruteknik är det viktigt att överväga hur en potentiell användare upplever ett system vid användning. Ingen användare kommer att ha en tillfredsställande upplevelse om de uppfattar systemet som långsamt, icke responsivt, ostabilt eller döljande av information. Dessutom, om systemet binder användarna till ett begränsat antal möjliga handlingar, kommer deras upplevelse vidare försämras. För att utvärdera vilken påverkan dessa problem har på en användares upplevda kvalitet, används mätenheten Upplevd Tjänstekvalitet. I detta arbete var det huvudsakliga syftet att förbättra en användares upplevelse av ett system som led av de tidigare nämnda problemen vid sökning av större datamängder. För att uppnå detta syfte utvärderades systemet för att identifiera befintliga problem samt vilka som mest påverkade användares Upplevda Tjänstekvalitet. Systemet som utvärderades var en mjukvara för lagerhantering som utvecklades och underhölls av Aptean AB‟s kontor i Hässleholm, Sverige. Systemet bestod av flera klienter och en server som skickade data över ett nätverk. Systemet utvärderades med en fallstudie där prestandan anayserades tillsammans med en enkät utförd i samarbete med Apteans personal för att få insikt i hur systemet upplevdes vid sökningar av stora datamängder. Resultaten visade på tre problem som hade störst inverkan på den Upplevda Tjänstekvaliteten: (1) interaktion; begränsade antal möjliga handlingar under en sökning, (2) transparens; begränsad tillgång till information om sökningens progress samt den hämtade datan, (3) körningstid; slutförande av en sökning tog lång tid. Efter att systemet hade analyserats, implementerades hypotetiska teknologiska lösningar för att lösa de identifierade problemen. Den första lösningen delade in datan i ett flertal partitioner, den andra minskade datans storlek som skickades över nätverket genom att tillämpa komprimering och den tredje var en kombination av de två teknologierna. Efter implementationen utfördes en sista uppsättning mätningar tillsammans med enkäten för att jämföra lösningarna baserat på deras prestanda och förbättringar av Upplevd Tjänstekvalitet. Den mest signifikanta förbättringen av Upplevd Tjänstekvalitet kom från datapartitioneringslösningen. Trots att kombinationen av lösningar uppnådde en mindre vidare förbättring, var det primärt tack vare datapartitioneringen, vilket innebar att den teknologin var den mest passande lösningen till de identifierade problemen jämfört med komprimering, vilken visade på endast en liten förbättring av Upplevd Tjänstekvalitet. När data partitionerades kunde flera uppdateringar skickas och användaren tilläts ett större antal möjliga handlingar under en sökning, men också en förbättrad tillgång till information i klienten angående sökningens progress samt den hämtade datan. Trots att datapartitionering inte förbättrade körningstiden, kunde den erbjuda användaren en första mängd data snabbt utan att tvinga användaren att sysslolöst vänta, vilket gjorde att systemet upplevdes som snabbt. För att förbättra den Upplevda Tjänstekvaliteten för system med server-klient kommunikation visade resultaten att datapartitionering är en lösning som erbjöd flera möjligheter för förbättring.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:bth-13327
Date January 2016
CreatorsAlbinsson, Mattias, Andersson, Linus
PublisherBlekinge Tekniska Högskola, Institutionen för datalogi och datorsystemteknik
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageSwedish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0029 seconds