1 |
Data selection for cross-project defect predictionHosseini, S. (Seyedrebvar) 25 November 2019 (has links)
Abstract
Context: This study contributes to the understanding of the current state of cross-project defect prediction (CPDP) by investigating the topic in themes, with special focus on data approaches and covering search-based training data selection, by proposing data selection methods and investigating their impact. The empirical evidence for this work is collected through a formal systematic literature review method for the review, and from experiments on open source projects.
Objective: We aim to understand and summarize the manner in which various data manipulation approaches are used in CPDP and their potential impacts on performance. Further, we aim at utilizing search-based methods to produce evolving training data sets to filter irrelevant instances from other projects before training.
Method: Through a series of studies following the literature review of current state of CPDP, we propose a search-based method called genetic instance selection (GIS). We validate our initial findings by conducting the next study on a large set of data sets with multiple feature sets. We refine our design decisions using an exploratory study. Finally, we investigate an existing meta-learning approach, provide insights on its design and propose an alternative iterative data selection method.
Results: The literature review reveals lower performances of CPDP in comparison with within project defect prediction (WPDP) models and provides a set of primary studies to be used as the basis for future research. Our proposed data selection methods make the case for search-based approaches considering their higher effectiveness and performance. We identified potential impacting factors on the effectiveness through the exploratory study and proposed methods to create better CPDP models.
Conclusions: The proposal of numerous approaches in the literature over the last decade has led to progress in the area and the acquired knowledge and tools apply to many similar domains and can act as parts of academic curricula as well. Future directions of study can include searching for better validation data, better feature selection techniques, tuning the parameters of the search-based models, tuning hyper-parameters of learners, investigating the effects of multiple sources of optimization (learner, instances and features) and the impact of the class imbalance problem. / Tiivistelmä
Tausta: Tämä tutkimus edistää projektienvälisten virheiden ennustamisen nykytilan ymmärtämistä (CPDP) tutkimalla aihetta teemoissa, keskittyen erityisesti tiedollisiin lähestymistapoihin ja hakuperusteisen harjoitusdatan valintaan esittelemällä datan valintamenetelmiä ja tutkimalla niiden vaikutuksia. Tämän työn empiirinen todistusaineisto on koottu muodollisella systemaattisella kirjallisuuskatsauksella ja avoimen lähdekoodin projekteissa tehdyillä kokeilla.
Tavoite: Pyrimme ymmärtämään ja tiivistämään tavan, jolla erilaisia datan käsittelyn lähestymistapoja käytetään CPDP:ssa sekä niiden potentiaalisia vaikutuksia suorituskykyyn. Lisäksi, tavoitteenamme on hyödyntää hakuperusteisia menetelmiä muodostamaan kehittyviä harjoitusdata-settejä suodattamaan epäolennaisia esiintymiä muista projekteista ennen koulutusta.
Menetelmä: CPDP:n nykytilan kirjallisuuskatsauksen jälkeen tehtyjen tutkimusten avulla ehdotamme hakuperusteista menetelmää, jota kutsutaan geneettisen esiintymän valinnaksi (GIS). Todistamme alustavat havaintomme suorittamalla seuraavan tutkimuksen suurella joukolla datasettejä, joilla on useita ominaisuuksia. Jalostamme suunnittelupäätöksiämme käyttäen tutkivaa tutkimusta. Lopuksi, tutkimme vallitsevaa meta-oppimisen lähestymistapaa ja tarjoamme näkemyksiä sen suunnitteluun ja ehdotamme vaihtoehtoista, toistuvaa datan valintamenetelmää.
Tulokset: Kirjallisuuskatsaus paljastaa CPDP:n heikomman suorituskyvyn verrattuna projektinsisäisten virheiden ennustamisen (WPDP) malleihin ja tarjoaa joukon primaaritutkimuksia, joita voidaan käyttää perustana myöhemmälle tutkimukselle. Ehdottamamme datan valintamenetelmät puoltavat hakuperusteisten menetelmiä niiden paremman tehokkuuden ja suorituskyvyn vuoksi. Tunnistimme potentiaalisia tehokuuteen vaikuttavia tekijöitä tutkivien tutkimusten avulla ja ehdotimme metodeja parempien CPDP mallien luomiseksi.
Johtopäätökset: Viime vuosikymmenten aikana kirjallisuudessa esitellyt lukuisat menetelmät ovat edistäneet alaa ja hankittu tieto ja työkalut soveltuvat monille samanlaisille alueille ja voivat toimia myös osana akateemisia opetussuunnitelmia. Tutkimuksen tulevat linjaukset voivat sisältää validointiin paremmin soveltuvan datan haun, paremmat ominaisuuksien valintatekniikat, hakuperusteisten mallien parametrien hienosäädön, oppijoiden hyper-parametrien hienosäädön, tutkimuksen useiden optimoinnin lähteiden vaikutuksista (oppija, esiintymät, ominaisuudet) ja luokan epätasapaino-ongelman vaikutuksesta.
|
2 |
Requirements fixation: the effect of specification formality on design creativityMohanani, R. P. (Rahul Prem) 29 November 2019 (has links)
Abstract
There is a broad consensus in the software engineering (SE) research community that understanding system desiderata and design creativity is critical for the success of software projects. This has motivated a plethora of research in SE to improve requirements engineering (RE) processes. However, little research has investigated the relationship between the way desiderata are presented (i.e., framed) and creative design performance. This dissertation, therefore, examines the effects of more formal presentations of desiderata on design creativity.
The research was conducted in three phases. The first consisted of summarizing the available literature on cognitive biases in SE to build a comprehensive body of knowledge, understand the current state of research, and identify the relevant literature to position and delineate subsequent investigations involving the framing effect and fixation. This research phase also investigated how creativity is conceptualized (i.e., understood, assessed and improved) in SE by exploring the perceptual differences and similarities between SE researchers and practitioners. In the second phase, two controlled experiments were conducted to investigate the impact of framing desiderata first as requirements (in general) and then as prioritized requirements on design creativity (i.e., the originality and practicality of a design). The third phase involved a protocol study to explore the underlying cognitive mechanisms that may explain why framing desiderata as formal requirements affects creativity. The empirical evidence from the second and third phases was interpreted together to propose a theoretical framework that explains the effect of specification formality on design creativity.
While the results of the experiments show that specification formality is negatively related to design creativity (i.e., desiderata framed as requirements or prioritized requirements result in designs that are less creative), the findings from the protocol study indicate that the negative relationship between specification formality and design creativity is mediated by fixation (i.e., more formal presentation of desiderata induces fixation and hinders critical thinking). Overall, the results of this dissertation suggest that more formal and structured presentations of desiderata cause requirements fixation—the tendency to attribute undue confidence and importance to desiderata presented as formal requirements statements—that affects design creativity, and thus undermines software engineering success. / Tiivistelmä
Ohjelmistotuotannon tutkijoiden keskuudessa on laaja yksimielisyys järjestelmän tarpeiden ja suunnittelun luovuuden ymmärtämisen kriittisyydestä ohjelmistoprojektien menestyksessä. Tämä on motivoinut monia ohjelmistotuotannon vaatimusmäärittelyprosessien parantamiseen liittyviä tutkimuksia. Harvassa on tarkasteltu tarpeiden esitystavan (eli muotoilun) ja luovan suunnittelun lopputuloksen välistä yhteyttä. Tässä väitöskirjassa tarkastellaan tarpeiden muodollisempien esitystapojen vaikutuksia suunnittelun luovuuteen.
Tutkimus oli kolmivaiheinen. Ensin referoitiin ohjelmistotuotannossa kognitiivisiin harhoihin liittyvä kirjallisuus kartoittamaan nykytutkimuksen tila ja merkityksellinen kirjallisuus myöhempien, kehysvaikutuksen ja fiksaation sisältävien tutkimusten sijoittamiseen ja rajaamiseen. Lisäksi tarkasteltiin luovuuden käsitteellistämistä (eli ymmärrettävyyttä, arviointia ja parantamista) tutkimalla katsannollisia eroja ja yhtäläisyyksiä tutkijoiden ja ammattilaisten välillä. Toisessa vaiheessa tehtiin kaksi kontrolloitua koetta tarpeiden muotoilun vaikutuksien tutkimiseksi, ensin vaatimuksina (yleisesti) ja sitten tärkeysjärjestykseen laitettuina vaatimuksina suhteessa suunnittelun luovuuteen (eli omaperäisyyteen ja käytännöllisyyteen). Lopuksi, protokollatutkimuksella selvitettiin taustalla olevia kognitiivisia mekanismeja selittämään syitä muodollisina vaatimuksina esitettyjen tarpeiden vaikutuksista luovuuteen. Toisesta ja kolmannesta vaiheesta saatujen empiiristen aineistojen tulkittiin yhdessä muodostavan teoreettisen viitekehyksen, joka selittää määrittelyn muodollisuuden vaikutusta suunnittelun luovuuteen.
Vaikka kokeiden tulokset osoittavat määrittelyjen muodollisuuden vaikuttavan negatiivisesti suunnittelun luovuuteen (eli tarpeiden muotoilu vaatimuksina tai priorisoituina vaatimuksina vähentää suunnitelmien luovuutta), protokollatutkimuksen tulokset viittaavat fiksaation vaikuttavan negatiiviseen yhteyteen määrittelyjen muodollisuuden ja suunnittelun luovuuden välillä (eli tarpeiden muodollisempi esitystapa aiheuttaa fiksaatiota ja vaikeuttaa kriittistä ajattelua). Kaiken kaikkiaan, väitöskirjan tulokset esittävät muodollisempien ja strukturoidumpien tarpeiden esitystapojen aiheuttavan vaatimusten fiksaatiota, taipumusta pitää luottamusta ja tärkeyttä tarpeiden muodollisten vaatimusten ilmaisun ansioina, joka vaikuttaa suunnittelun luovuuteen heikentäen ohjelmistotuotannon menestymisen mahdollisuutta.
|
3 |
The effects of confirmation bias and time pressure in software testingSalman, I. (Iflaah) 29 November 2019 (has links)
Abstract
Background: Confirmation bias is the tendency to search for evidence that confirms a person’s preconceptions. Confirmation bias among software testers is their tendency to validate the correct functioning of the program rather than testing it to reveal errors. Psychology literature suggests that time pressure may promote confirmation bias because time pressure impedes analytical processing of the task at hand. Time pressure is perceived negatively for its effects in software engineering (SE), therefore, its effect on confirmation bias may exacerbate software quality.
Objective: We aim to examine confirmation bias among software testers. Additionally, we examine the effect of time pressure on confirmation bias and how time pressure affects the testers’ perception of the performance. We also question what other antecedents to confirmation bias exist in software testing and how they lead to it.
Method: We first examined the state of the art research on cognitive biases in SE using systematic mapping. Then, we empirically examined the feasibility of using students in further experiments. An experiment with 42 students (novice professionals) investigated the manifestation of confirmation bias and whether time pressure promotes it. Another experiment with 87 novice professionals examined the perception of the performance of software testers under time pressure. A grounded theory study based on the interview-data of 12 practitioners explored other antecedents to confirmation bias in software testing and how they lead to it.
Results: Time pressure emerged as a major antecedent to confirmation bias in the grounded theory. Testers prefer to validate the correct functioning of the program under time pressure. However, time pressure could not significantly promote confirmation bias among testers. Software testers significantly manifest confirmation bias irrespective of time pressure. The perception of performance is also sustained irrespective of time pressure.
Conclusion: Testers should develop self-awareness of confirmation bias and improve their perception of performance to improve their actual testing. In the industry, automated testing may alleviate confirmation bias due to time pressure by rapidly executing the test suites. / Tiivistelmä
Tausta: Vahvistusharha tarkoittaa taipumusta hakea ennakko-odotuksia vahvistavaa todistusaineistoa. Ohjelmistotestaajien vahvistusharha tarkoittaa taipumusta varmistaa ohjelmiston oikea toiminta mieluummin kuin hakea siitä virheitä. Psykologinen tutkimus esittää, että aikataulupaine voi lisätä vahvistusharhaa heikentämällä työn analyyttista tarkastelua. Aikataulupainetta pidetään ohjelmistotekniikan soveltamiseen kielteisesti vaikuttavana asiana, minkä johdosta sen vaikutus vahvistusharhaan voi heikentää ohjelmiston laatua.
Tavoite: Tarkastelimme ohjelmistotestaajien vahvistusharhaa tutkimalla aikataulupaineen vaikutusta vahvistusharhaan ja testaajien käsitykseen testauksen tehokkuudesta. Lisäksi kysymme, mitkä muut tekijät johtavat ohjelmistotestauksen vahvistusharhaan, ja millä tavoin.
Menetelmä: Ensiksi tarkastelimme ohjelmistotekniikan kognitiivisten harhojen viimeisintä tutkimusta systemaattista kirjallisuuskartoituksella. Sitten tutkimme kokeellisesti, miten yliopisto-opiskelijat soveltuvat käytettäväksi tutkimusjoukkona vahvistusharhan kokeellisessa tutkimuksessa. Kokeellinen tutkimus, johon osallistui 42 opiskelijaa (aloittelevaa ammattilaista), tarkasteli vahvistusharhan lisääntymistä aikataulupaineen vaikutuksesta. Toinen kokeellinen tutkimus, johon osallistui 87 aloittelevaa ammattilaista, tarkasteli ohjelmistotestaajien käsitystä testauksen tehokkuudesta aikataulupaineen alla. Kahdeltatoista ammattilaiselta haastattelemalla kerätystä tutkimusaineistosta tarkasteltiin ankkuroidun teorian menetelmällä muiden mahdollisten tekijöiden vaikutusta vahvistusharhaan.
Tulokset: Ankkuroidussa teoriassa aikataulupaine osoittautui merkittäväksi vahvistusharhan tekijäksi. Ammattimaiset ohjelmistotestaajat haluavat mieluummin validoida ohjelmiston oikean toiminnan aikataulupaineessa. Toisessa kokeellisessa tutkimuksessa aikataulupaine ei kuitenkaan lisännyt merkittävästi testaajien vahvistusharhaa, vaan testaajien vahvistusharha ilmeni merkittävästi aikataulupaineista riippumatta. Myös käsitys työn tehokkuudesta säilyi riippumatta aikataulupaineesta.
Johtopäätös: Ohjelmistotestaajien on syytä kehittää tietoisuuttaan vahvistusharhasta ja parantaa käsitystään työn tehokkuudesta parantaakseen testaustyötä. Teollisuudessa automaattinen testaus voi lieventää aikataulupaineen aiheuttamaa vahvistusharhaa nopeuttamalla testisarjoja.
|
Page generated in 0.0591 seconds