Advanced

Vad karaktäriserar komplexa ärenden i mjukvaruprojekt?

Cicek, Mehmet Fatih LU and Afghani Khorasgani, Soheil LU (2015) In LU-CS-EX 2015-36 EDA920 20151
Department of Computer Science
Abstract (Swedish)
I de avancerade mjukvarusystem som utvecklas idag krävs det en hel del processer och arbetsmetodik för att säkerställa att produkten håller en bra kvalité. Svårigheten uppstår i att organisationer oftast är tvungna att hantera väldigt många ändringar som kommer från kunder och dessa kan vara av varierande komplexitet, dvs. kräva olika mycket resurser att åtgärda. CGI är ett globalt IT-företag och jobbar mot många kunder. Supportorganisationen i Malmö klassificerar ett ärende som komplext när X antal timmar har tidrapporterats. Genom att implementera ett webbaserat tidrapporteringssystem har vi identifierat de mest tidskrävande ärendena, och utfört djupstudier på dessa. Tillsammans med intervjuer av supportpersonal på företaget har vi... (More)
I de avancerade mjukvarusystem som utvecklas idag krävs det en hel del processer och arbetsmetodik för att säkerställa att produkten håller en bra kvalité. Svårigheten uppstår i att organisationer oftast är tvungna att hantera väldigt många ändringar som kommer från kunder och dessa kan vara av varierande komplexitet, dvs. kräva olika mycket resurser att åtgärda. CGI är ett globalt IT-företag och jobbar mot många kunder. Supportorganisationen i Malmö klassificerar ett ärende som komplext när X antal timmar har tidrapporterats. Genom att implementera ett webbaserat tidrapporteringssystem har vi identifierat de mest tidskrävande ärendena, och utfört djupstudier på dessa. Tillsammans med intervjuer av supportpersonal på företaget har vi identifierat potentiella faktorer som kan förklara varför komplexa ärenden har blivit större och mer tidskrävande
än övriga incidenter. Resultatet av intervjuerna överlappade någorlunda med djupstudien vid karaktärisering av komplexa ärenden, 11 av 24 faktorer visade sig vara gemensamma. Att siffran inte blev högre kan bero på att komplexa ärenden inte är så vanliga inom företaget, vilket baseras på resultatet av mätningar från tidrapporteringssystemet och intervjuer med supportpersonal. Några av faktorerna vi har identifierat är:

• Felet går inte att återskapa.
• Arbetet påverkade gammal funktionalitet negativt.
• Allt är anpassat efter en felaktig lösning, som gör att korrekt logik leder till fel på oväntade ställen i koden.
• En ändring i en modul leder till att andra moduler måste modifieras.
• Ändring av kod som redan gått i produktion och fått oförutsedda konsekvenser.

Vi har skapat ett beslutsstöd, i formav de komplexitetsfaktorer som tagits fram,
som kan användas av företag som har förvaltningsarbeten för att tidigt i arbetet
identifiera ärenden som kan vara tidskrävande, och på så vis omfördela tid och
resurser på ett gynnsamt sätt. Om ett ärende påvisar flera av de faktorer som
presenterats kan det indikera på att ärendet kommer att bli tidskrävande. Med
tidrapporteringssystemet har vi möjliggjort för företaget att ha större insikt i
hur mycket tid (och därmed resurser) som läggs ner på varje ärende. I och med
att man får en bättre översikt över arbetet kan tidrapporteringssystemet även
bidra till att förbättra företagets ärendehanteringskostnader. Vårt resultat kan
användas som en bas för vidare forskning, och kan kompletteras med empiriska
studier som undersöker huruvida dessa faktorer även kan identifieras i
andra supportorganisationer. (Less)
Abstract
In the advanced software systems that are developed today there is need for
a lot of processes and proper methods to ensure that the developed product
maintains a good quality. The difficulty arises in that the organizations often
have to deal with many changes arriving from customers and these can be of
varying complexity, i.e. require different amount of resources to address. CGI
is a global company and has a large clientele. The support organization in Malmö
classifies an incident as being complex when X number of hours have been
reported. By implementing a web-based time reporting system, we have identified
the most time-consuming incidents, and conducted in-depth studies on
these. Furthermore we have interviewed the support... (More)
In the advanced software systems that are developed today there is need for
a lot of processes and proper methods to ensure that the developed product
maintains a good quality. The difficulty arises in that the organizations often
have to deal with many changes arriving from customers and these can be of
varying complexity, i.e. require different amount of resources to address. CGI
is a global company and has a large clientele. The support organization in Malmö
classifies an incident as being complex when X number of hours have been
reported. By implementing a web-based time reporting system, we have identified
the most time-consuming incidents, and conducted in-depth studies on
these. Furthermore we have interviewed the support staff of the company and
used the result of the interviews and our in-depth studies to identify potential
factors that could explain why complex incidents become larger and more
time-consuming than other incidents. The result of the interviews overlapped
somewhat with the in-depth study in the characterization of complex incidents, 11
of the 24 factors were found to be common. The low overlap may be due to
the rarity of complex incidents within the company, which was derived from the
results of measurements of the time reporting system and interviews with the
support staff. The following are a few examples we have identified:

• The error can not be reproduced.
• The work has had adverse effects on pre-existing functionality.
• A modification in one module is dependent on changes in other modules.
• Changing code that has already gone into production, and has demonstrated
unforeseen consequences.
• Everything is adapted to a faulty solution, which results in the correct
logic leading to errors in unexpected places in the code.

We have produced a set of complexity factors which can be used by companies
that handle product maintenance, in order to identify incidents that can be
time consuming at the very early stages of the maintenance work, and thus
reallocate time and resources more efficiently. If an incident demonstrates
several of the factors presented, it may indicate that the matter will be
time consuming. The time reporting system has made it possible for the company
to have greater insight into how much time (and thereby resources) that
are spent on each incident. This in turn helps in improving the company’s maintenance
costs. Our results can be used as a basis for further research, and can
be supplemented by empirical studies investigating whether these factors can
also be identified in other support organizations. (Less)
Please use this url to cite or link to this publication:
author
Cicek, Mehmet Fatih LU and Afghani Khorasgani, Soheil LU
supervisor
organization
alternative title
En fallstudie på underhåll av ett affärssystem
course
EDA920 20151
year
type
H3 - Professional qualifications (4 Years - )
subject
keywords
mjukvaruutveckling, ändringshantering, komplexitet, incident
publication/series
LU-CS-EX 2015-36
report number
LU-CS-EX 2015-36
ISSN
1650-2884
language
Swedish
id
7852960
date added to LUP
2015-09-03 08:07:24
date last changed
2015-09-03 08:07:24
@misc{7852960,
  abstract     = {In the advanced software systems that are developed today there is need for
a lot of processes and proper methods to ensure that the developed product
maintains a good quality. The difficulty arises in that the organizations often
have to deal with many changes arriving from customers and these can be of
varying complexity, i.e. require different amount of resources to address. CGI
is a global company and has a large clientele. The support organization in Malmö
classifies an incident as being complex when X number of hours have been
reported. By implementing a web-based time reporting system, we have identified
the most time-consuming incidents, and conducted in-depth studies on
these. Furthermore we have interviewed the support staff of the company and
used the result of the interviews and our in-depth studies to identify potential
factors that could explain why complex incidents become larger and more
time-consuming than other incidents. The result of the interviews overlapped
somewhat with the in-depth study in the characterization of complex incidents, 11
of the 24 factors were found to be common. The low overlap may be due to
the rarity of complex incidents within the company, which was derived from the
results of measurements of the time reporting system and interviews with the
support staff. The following are a few examples we have identified:

• The error can not be reproduced.
• The work has had adverse effects on pre-existing functionality.
• A modification in one module is dependent on changes in other modules.
• Changing code that has already gone into production, and has demonstrated
unforeseen consequences.
• Everything is adapted to a faulty solution, which results in the correct
logic leading to errors in unexpected places in the code.

We have produced a set of complexity factors which can be used by companies
that handle product maintenance, in order to identify incidents that can be
time consuming at the very early stages of the maintenance work, and thus
reallocate time and resources more efficiently. If an incident demonstrates
several of the factors presented, it may indicate that the matter will be
time consuming. The time reporting system has made it possible for the company
to have greater insight into how much time (and thereby resources) that
are spent on each incident. This in turn helps in improving the company’s maintenance
costs. Our results can be used as a basis for further research, and can
be supplemented by empirical studies investigating whether these factors can
also be identified in other support organizations.},
  author       = {Cicek, Mehmet Fatih and Afghani Khorasgani, Soheil},
  issn         = {1650-2884},
  keyword      = {mjukvaruutveckling,ändringshantering,komplexitet,incident},
  language     = {swe},
  note         = {Student Paper},
  series       = {LU-CS-EX 2015-36},
  title        = {Vad karaktäriserar komplexa ärenden i mjukvaruprojekt?},
  year         = {2015},
}