ebook img

Contemporary Empirical Methods in Software Engineering PDF

520 Pages·2020·12.654 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Contemporary Empirical Methods in Software Engineering

Michael Felderer Guilherme Horta Travassos Editors Contemporary Empirical Methods in Software Engineering Contemporary Empirical Methods in Software Engineering Michael Felderer • Guilherme Horta Travassos Editors Contemporary Empirical Methods in Software Engineering Editors MichaelFelderer GuilhermeHortaTravassos DepartmentofComputerScience DepartmentofSystemsEngineeringand UniversityofInnsbruck ComputerScience,COPPE Innsbruck,Austria FederalUniversityofRiodeJaneiro RiodeJaneiro,Brazil ISBN978-3-030-32488-9 ISBN978-3-030-32489-6 (eBook) https://doi.org/10.1007/978-3-030-32489-6 ©SpringerNatureSwitzerlandAG2020 Chapter17islicensedunderthetermsoftheCreativeCommonsAttribution4.0InternationalLicense (http://creativecommons.org/licenses/by/4.0/).Forfurtherdetailsseelicenceinformationinthechapter. Thisworkissubjecttocopyright.AllrightsarereservedbythePublisher,whetherthewholeorpartof thematerialisconcerned,specificallytherightsoftranslation,reprinting,reuseofillustrations,recitation, broadcasting,reproductiononmicrofilmsorinanyotherphysicalway,andtransmissionorinformation storageandretrieval,electronicadaptation,computersoftware,orbysimilarordissimilarmethodology nowknownorhereafterdeveloped. Theuseofgeneraldescriptivenames,registerednames,trademarks,servicemarks,etc.inthispublication doesnotimply,evenintheabsenceofaspecificstatement,thatsuchnamesareexemptfromtherelevant protectivelawsandregulationsandthereforefreeforgeneraluse. Thepublisher,theauthors,andtheeditorsaresafetoassumethattheadviceandinformationinthisbook arebelievedtobetrueandaccurateatthedateofpublication.Neitherthepublishernortheauthorsor theeditorsgiveawarranty,expressedorimplied,withrespecttothematerialcontainedhereinorforany errorsoromissionsthatmayhavebeenmade.Thepublisherremainsneutralwithregardtojurisdictional claimsinpublishedmapsandinstitutionalaffiliations. ThisSpringerimprintispublishedbytheregisteredcompanySpringerNatureSwitzerlandAG. Theregisteredcompanyaddressis:Gewerbestrasse11,6330Cham,Switzerland Foreword Asthe nameofthe fieldsuggests, softwareengineeringisexpectedto bean engi- neeringdiscipline. However,it is notgoverned,to the same extent, by underlying mathematical models as many other engineering disciplines, in particular, those addressingphysicalartifactsasinelectricalengineeringormechanicalengineering. Thus, mathematics is insufficient to conduct research and improve in software engineering, although it is vital for some sub-areas within software engineering. Thereareseveralreasonsforthisinsufficiency. First of all, the software is invisible (Brooks 1987). We can read the code, but we cannot see it in use. We can only observe the effect of the software being executed. Furthermore, software engineering is intrinsically complex since it is, to a considerable extent, dependent on the knowledge and capability of humans developing the software. Moreover, the ability of the individuals to work in a team contributing to the same software system is essential. The development is supportedbydifferentprocesses,methods,techniques,languages,andtools,which, inonewayoranother,areusedbytheorganizationdevelopingthesoftware.Thus, software engineering is an interplay between human knowledge, social networks oftheindividuals,andavailableassetsintheorganizationdevelopingthesoftware (Wohlinetal.2015). To be able to study and improve the way software is engineered, many researchers have embraced and promoted software engineering as an empirical engineering discipline. Empirical studies were conducted early in the discipline, buttheywerequiterare.In1986,anarticledescribingexperimentationinsoftware engineering was published (Basili et al. 1986) outlining software engineering as anexperimentalscience.Theestablishmentofempiricalsoftwareengineeringwas done to a large extent in the 1990s. At the beginning of the twenty-first century, two bookson experimentationin software engineeringwere published(Wohlin et al. 2012;JuristoandMoreno2001).Theformerbookcamein a secondeditionin 2012(Wohlinetal.2012),anditwaspublishedinChinesein2015. In 2004, the concept of evidence-based software engineering was established in software engineering (Kitchenham et al. 2004). The evidence is most often generated from empirical studies, and hence, it was a natural continuation of the v vi Foreword previousworkonempiricalsoftwareengineering.Astheareaofempiricalsoftware engineering became well established, the need for advances in our conduct of empirical studies grew (Shull et al. 2008). Given the applied nature of software engineering, the need to conduct empirical studies in a real-life context was strengthenedbythepublicationofguidelinesforconductingcasestudies(Runeson etal.2012). As a continuationconcerningthe focus on evidence in software engineering,a bookonevidence-basedsoftwareengineeringwaspublishedin2015(Kitchenham et al. 2015). Furthermore, empirical software engineering has gone from being a sub-area of software engineering to be an integral part of software engineering. Nowadays, it is expected that research is evaluated and assessed using empirical methods. Thus, it is, in most cases, insufficient to present an idea or a solution withoutempiricalevidence.Insummary,softwareengineeringhasmovedintotruly beinganengineeringdiscipline. The book Contemporary Empirical Methods in Software Engineering, edited by Prof. Michael Felderer and Prof. Guilherme Horta Travassos, takes the next step by including chapters on essential and timely topics in empirical software engineering. The chapters are written by some of the world’s leading experts on empiricalmethodsinsoftwareengineering.Theeditorshavedoneanexcellentjob ofattractingexpertsinthefieldwhocontributewithessentialtopicsconcerningthe empiricalsoftwareengineeringoftoday. The book follows up on the previous books and articles on empirical and evidence-based software engineering. As the title of the book suggests, the book takes a timely step in including a set of chapters addressing emerging areas in empirical software engineering. It provides an excellent combination of chapters addressing contemporary areas of interest for anyone conducting research in software engineering and in particular for those with a strong focus on empirical software engineering. The book is a highly recommended read for, in particular, Ph.D. students and researchers interested in conducting high-quality software engineering research aspiring to apply empirical research methods for today and thefuture. BlekingeInstituteofTechnology ClaesWohlin Karlskrona,Sweden References BasiliVR,SelbyRW,HutchensDH(1986)Experimentationinsoftwareengineer- ing.IEEETransSoftwEngSE-12(7):733–743 BrooksFPJr(1987)Nosilverbullet–essenceandaccidentsofsoftwareengineer- ing.IEEEComput20(4):10–19 Juristo N, Moreno AM (2001) Basics of software engineering experimentation. Springer,NewYork Foreword vii KitchenhamBA, Dybå T, JørgensenM (2004)Evidence-basedsoftware engineer- ing. In: Proceedings of 26th international conference on software engineering, Edinburgh,pp273–281 KitchenhamBA,BudgenD,BreretonP(2015)Evidence-basedsoftwareengineer- ingandsystematicreviews.ChapmanandHall/CRC,BocaRaton Runeson P, Höst M, Rainer A, Regnell B (2012) Case study research in software engineering–guidelinesandexamples.Wiley,Hoboken ShullF, SingerJ,SjøbergDIK(eds)(2008)Guidetoadvancedempiricalsoftware engineering.Springer,London Wohlin C, Runeson P, Höst M, Regnell B, Ohlsson MC, Wesslén A (2012) Experimentationinsoftwareengineering.Springer,Berlin Wohlin C, Šmite D, Moe NB (2015) A general theory of software engineering: balancinghuman,socialandorganizationalcapitals.JSystSoftw109:229–242 Contents TheEvolutionofEmpiricalMethodsinSoftwareEngineering............. 1 MichaelFeldererandGuilhermeHortaTravassos PartI StudyStrategies GuidelinesforConductingSoftwareEngineeringResearch ................ 27 Klaas-JanStolandBrianFitzgerald GuidelinesforCaseSurveyResearchinSoftwareEngineering ............ 63 KaiPetersen ChallengesinSurveyResearch................................................. 93 StefanWagner,DanielMendez,MichaelFelderer,DanielGraziotin, andMarcosKalinowski TheDesignScienceParadigmasaFrameforEmpiricalSoftware Engineering....................................................................... 127 PerRuneson,EmelieEngström,andMargaret-AnneStorey PartII DataCollection,Production,andAnalysis BiometricMeasurementinSoftwareEngineering ........................... 151 FabianFagerholmandThomasFritz EmpiricalSoftwareEngineeringExperimentationwithHuman Computation...................................................................... 173 MartaSabou,DietmarWinkler,andStefanBiffl DataScienceandEmpiricalSoftwareEngineering .......................... 217 EzequielScott,FredrikMilani,andDietmarPfahl OptimizationinSoftwareEngineering:APragmaticApproach ........... 235 GüntherRuhe ix x Contents TheRoleofSimulation-BasedStudiesinSoftwareEngineering Research........................................................................... 263 BrenoBernardNicolaudeFrançaandNaumanBinAli Bayesian Data Analysis in Empirical SoftwareEngineering: TheCaseofMissingData....................................................... 289 RichardTorkar,RobertFeldt,andCarloA.Furia PartIII KnowledgeAcquisitionandAggregation AutomatingSystematicLiteratureReview.................................... 327 KatiaR.FelizardoandJeffreyC.Carver RapidReviewsinSoftwareEngineering....................................... 357 BrunoCartaxo,GustavoPinto,andSergioSoares BenefittingfromtheGreyLiteratureinSoftwareEngineering Research........................................................................... 385 VahidGarousi,MichaelFelderer,MikaV.Mäntylä,andAustenRainer GuidelinesforManagingThreatstoValidityofSecondaryStudies inSoftwareEngineering......................................................... 415 Apostolos Ampatzoglou, Stamatia Bibi, Paris Avgeriou, andAlexanderChatzigeorgiou ResearchSynthesisinSoftwareEngineering ................................. 443 PauloSérgioMedeirosdosSantosandGuilhermeHortaTravassos PartIV KnowledgeTransfer OpenScienceinSoftwareEngineering ........................................ 477 DanielMendez,DanielGraziotin,StefanWagner,andHeidiSeibold ThirdGenerationIndustrialCo-productioninSoftwareEngineering..... 503 TonyGorschekandKrzysztofWnuk The Evolution of Empirical Methods in Software Engineering MichaelFelderer andGuilhermeHortaTravassos Abstract Empiricalmethodslikeexperimentationhavebecomeapowerfulmeans todrivethefieldofsoftwareengineeringbycreatingscientificevidenceonsoftware development, operation, and maintenance, but also by supporting practitioners in their decision-makingand learning. Today empirical methods are fully applied in softwareengineering.However,theyhavedevelopedinseveraliterationssincethe 1960s. In this chapter we tell the history of empirical software engineering and presenttheevolutionofempiricalmethodsinsoftwareengineeringinfiveiterations, i.e.,(1)mid-1960stomid-1970s,(2)mid-1970stomid-1980s,(3)mid-1980stoend of the 1990s, (4) the 2000s, and (5) the 2010s. We present the five iterations of the developmentof empiricalsoftwareengineeringmainlyfroma methodological perspectiveandadditionallytakekeypapers,venues,andbooks,whicharecovered inchronologicalorderinaseparatesectiononrecommendedfurtherreadings,into account. We complement our presentation of the evolution of empirical software engineering by presenting the current situation and an outlook in Sect.4 and the available books on empirical software engineering. Furthermore, based on the chapterscoveredinthisbookwediscusstrendsoncontemporaryempiricalmethods insoftwareengineeringrelatedtothepluralityofresearchmethods,humanfactors, data collectionand processing,aggregationand synthesisof evidence,and impact ofsoftwareengineeringresearch. GuilhermeHortaTravassosisaCNPqResearcher. M.Felderer((cid:2)) DepartmentofComputerScience,UniversityofInnsbruck,Innsbruck,Austria DepartmentofSoftwareEngineering,BlekingeInstituteofTechnology,Karlskrona,Sweden e-mail:[email protected] G.H.Travassos DepartmentofSystemsEngineeringandComputerScience,COPPE,FederalUniversityofRio deJaneiro,RiodeJaneiro,Brazil e-mail:[email protected] ©SpringerNatureSwitzerlandAG2020 1 M.Felderer,G.H.Travassos(eds.),ContemporaryEmpiricalMethodsinSoftware Engineering,https://doi.org/10.1007/978-3-030-32489-6_1

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.