Abstract
Fomålet med denne oppgaven er å identifisere problemløsningsmetoder og strategier brukt av informatikk studenter under prosessen av vedlikehold oppgaver på en ukjent applikasjon i Java. Deretter er effektene av utførsel av problemløsningsmetoder og problemløsningsstrategier utforsket.
Å bruke strategier for å løse oppgaver og å løse vanskeligheter som oppstod ved modifisering av et system kan være nyttig fordi kunnskap om dette kan bidra til utvikling av nye modeller, til å støtte opp for vedlikeholdningsprosesser, eller til å forbedre utdanning.
Det ble utførte et kontrollert eksperiment med 34 informatikk studenter som gikk på det tredje året i informatikk. Deltakerne brukte et professjonell Java verktøy til å utføre flere vedlikeholdningsoppgaver på et mediumstort Java applikasjonssystem i en 6 timers lang eksperiment. I denne oppgaven har jeg brukt data fra feedback-collection (tilbakemeldinger av deltakerne gjennom sprettoppvinduer mens de arbeidet med oppgavene) av eksperimentet.
I denne oppgaven var det identifisert tre generelle problemløsningsmetoder for løsning av problemer om oppstod i en vedlikeholdningsprosess. Disse tre metodene var (i) abstraksjon, der deltakerne løste et problem ved hjelp av fjerning av unødvendige detaljer, brakte inn nye krav som involverte identifisering av kritiske aspekter ved miljøet og systemet, mens de overså det som var irrelevant. (ii) Dekomposisjon, var der deltakerne løste et problem ved å dele problemet inn i mindre sub-problemer, for deretter å løse dem individuelt og kombinerte dem til en samlet løsning. Til slutt hadde vi (iii) bygg og fiks, der deltakerne hoppet rett inn i problemet og løste dem med førsteinntrykksløsninger. Forskningen i dette eksperimentet viste at abstraksjon har bedre ytelser til løsing av vanskeligheter med program logikk og struktur, mens dekomposisjon og bygg og fiks yta bedre i løsninger av vanskeligheter med GUI. Det var også identifisert seks problemløsningssteger som grunnprinsipper for problemløsningsstrategier av vedlikeholdningsoppgaver. Disse seks stegene var (1) formulering av problemet, (2) planlegging av løsningen, (3) konstruering av løsningen, (4) oversettelse av løsningen, (5) testing av løsningen og (6) levering av løsningen. Forskningen i eksperimentet viste at strategier med integrasjon av følgende steger, (2) planlegging av løsningen og (5) testing av løsningen, bidro til høyest riktighetsprosent og lavest tidsbruk ved løsning av oppgavene.