Finding High–Quality Grey Literature for Use As Evidence in Software Engineering Research

Total Page:16

File Type:pdf, Size:1020Kb

Finding High–Quality Grey Literature for Use As Evidence in Software Engineering Research Finding high{quality grey literature for use as evidence in software engineering research A thesis submitted in partial fulfilment of the requirements for the Degree of Doctor of Philosophy in the University of Canterbury by Ashley Williams University of Canterbury 2019 To my Grandad, Norman For encouraging me to push myself; and ensuring that I never miss a family Christmas Abstract Background: Software engineering research often uses practitioners as a source of evidence in their studies. This evidence is usually gathered through empirical methods such as surveys, interviews and ethnographic research. The web has brought with it the emergence of the social programmer. Soft- ware practitioners are publishing their opinions online through blog articles, discussion boards and Q&A sites. Mining these online sources of informa- tion could provide a new source of evidence which complements traditional evidence sources. There are benefits to the adoption of grey literature in software engi- neering research (such as bridging the gap between the state{of{art where research typically operates and the state{of{practice), but also significant challenges. The main challenge is finding grey literature which is of high{ quality to the researcher given the vast volume of grey literature available on the web. The thesis defines the quality of grey literature in terms of its relevance to the research being undertaken and its credibility. The thesis also focuses on a particular type of grey literature that has been written by soft- ware practitioners. A typical example of such grey literature is blog articles, which are specifically used as examples throughout the thesis. Objectives: There are two main objectives to the thesis; to investigate the problems of finding high{quality grey literature, and to make progress in addressing those problems. In working towards these objectives, we inves- tigate our main research question, how can researchers more effectively and efficiently search for and then select the higher{quality blog{like content rel- evant to their research? We divide this question into twelve sub{questions, and more formally define what we mean by `blog{like content.' Method: To achieve the objectives, we first investigate how software en- gineering researchers define and assess quality when working with grey lit- erature; and then work towards a methodology and also a tool{suite which can semi{automate the identification and the quality assessment of relevant grey literature for use as evidence in the researchers study. To investigate how software engineering researchers define and assess quality, we first conduct a literature review of credibility assessment to gather a set of credibility criteria. We then validate those criteria through a sur- vey of software engineering researchers. This gives us an overall model of credibility assessment within software engineering research. We next investigate the empirical challenges of measuring quality and de- velop a methodology which has been adapted from the case survey method- ology and aims to address the problems and challenges identified. Along with the methodology is a suggested tool{suite which is intended to help re- searchers in automating the application of a subset of the credibility model. The tool{suite developed supports the methodology by, for example, au- tomating tasks in order to scale the analysis. The use of the methodology and tool{suite is then demonstrated through three examples. These examples include a partial evaluation of the methodology and tool{suite. Results: Our literature review of credibility assessment identified a set of criteria that have been used in previous research. However, we also found a lack of definitions for both the criteria and, more generally, the term credibil- ity. Credibility assessment is a difficult and subjective task that is particular to each individual. Research has addressed this subjectivity by conducting studies that look at how particular user groups assess credibility e.g. pension- ers, university students, the visually impaired, however none of the studies reviewed software engineering researchers. Informed by the literature review, we conducted a survey which we believe is the first study on the credibility assessment of software engineering researchers. The results of the survey are a more refined set of criteria, but also a set that many (approximately 60%) of the survey participants believed generalise to other types of media (both practitioner{generated and researcher{generated). We found that there are significant challenges in using blog{like content as evidence in research. For example, there are the challenges of identifying the high{quality content from the vast quantity available on the web, and then creating methods of analysis which are scalable to handle that vast quantity. In addressing these challenges, we produce: a set of heuristics which can help in finding higher{quality results when searching using traditional search engines, a validated list of reasoning markers that can aid in assessing the amount of reasoning within a document, a review of the current state of the experience mining domain, and a modifiable classification schema for classifying the source of URLs. With credibility assessment being such a subjective task, there can be no one–size–fits–all method to automating quality assessment. Instead, our methodology is intended to be used as a framework in which the researcher using it can swap out and adapt the criteria that we assess for their own criteria based on the context of the study being undertaken and the personal preference of the researcher. We find from the survey that there are a variety of attitude's towards using grey literature in software engineering research and not all respondents view the use of grey literature as evidence in the way that we do (i.e. as having the same benefits and threats as other traditional methods of evidence gathering). Conclusion: The work presented in this thesis makes significant progress towards answering our research question and the thesis provides a foundation for future research on automated quality assessment and credibility. Adop- tion of the tools and methodology presented in this thesis can help more ef- fectively and efficiently search for and select higher{quality blog{like content, but there is a need for more substantial research on the credibility assessment of software engineering researchers, and a more extensive credibility model to be produced. This can be achieved through replicating the literature review systematically, accepting more studies for analysis, and by conducting a more extensive survey with a greater number, and more representative selection, of survey respondents. With a more robust credibility model, we can have more confidence in the criteria that we choose to include within the methodology and tools, as well as automating the assessment of more criteria. Throughout the re- search, there has been a challenge in aggregating the results after assessing each criterion. Future research should look towards the adoption of machine learning methods to aid with this aggregation. We believe that the criteria and measures used by our tools can serve as features to machine learning classifiers which will be able to more accurately assess quality. However, be- fore such work is to take place, there is a need for annotated data{sets to be developed. Table of Contents List of Tables v List of Figures x I Foundations 1 Chapter 1: Introduction 2 1.1 Context . .2 1.2 Problem statement and motivation...............6 1.3 Definitions.............................6 1.4 Aims of the thesis . .7 1.5 Research questions . .8 1.6 Contributions . 10 1.7 Structure of this thesis . 11 Chapter 2: Background 14 2.1 Introduction . 14 2.2 Definitions . 15 2.3 Evidence in software engineering research and software engi- neering practice . 20 2.4 Systematic reviews in software engineering . 24 2.5 The social programmer and grey literature . 26 2.6 Systematic reviews that incorporate grey literature . 27 2.7 `Blog{like' content as a type of grey literature . 28 2.8 The benefits of looking at blog{like content . 34 2.9 The challenges of looking at blog{like content . 38 2.10 Addressing the research questions................ 40 II Credibility assessment for finding higher{quality grey literature 42 Chapter 3: Creating a candidate list of conceptual credibility criteria for software engineering research 43 3.1 Introduction . 43 3.2 Rationale for the structured review . 45 3.3 Methodology . 46 3.4 Results . 52 3.5 Discussion . 65 Chapter 4: Refining and validating our candidate list of cred- ibility criteria with a survey of researchers 72 4.1 Introduction . 72 4.2 Methodology . 73 4.3 Quantitative results . 80 4.4 Qualitative results . 90 4.5 Discussion . 92 Chapter 5: Developing a model of credibility assessment in software engineering research 97 5.1 Introduction . 97 5.2 Developing the model . 100 5.3 Towards automatic measurement of credibility using the model 104 5.4 Addressing the research questions................ 105 III A methodology for finding high{quality content 107 Chapter 6: Preliminary empirical investigations 108 6.1 Introduction . 108 6.2 Pilot study 1: Identifying practitioners' arguments and evi- dence in blogs . 109 6.3 Pilot study 2: Toward the use of blog articles as a source of evidence . 119 ii 6.4 Summary of lessons learned from both pilot studies . 124 6.5 Addressing the research questions................ 125 Chapter 7: Incorporating the credibility criteria into the case survey methodology 127 7.1 Introduction . 127 7.2 The case survey methodology . 128 7.3 Structure and logic of the credibility criteria . 129 7.4 Our search heuristics . 135 7.5 Post{search measures for credibility assessment criteria . 141 7.6 Tooling . 142 7.7 Addressing the research questions................ 145 Chapter 8: Developing measures for the credibility criteria 146 8.1 Introduction . 146 8.2 Generating a set of validated reasoning markers . 147 8.3 Review of methods for experience mining .
Recommended publications
  • The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) - Joel on Software
    The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) - Joel on Software Joel on Software The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) by Joel Spolsky Wednesday, October 08, 2003 Ever wonder about that mysterious Content-Type tag? You know, the one you're supposed to put in HTML and you never quite know what it should be? Did you ever get an email from your friends in Bulgaria with the subject line "???? ?????? ??? ????"? I've been dismayed to discover just how many software developers aren't really completely up to speed on the mysterious world of character sets, encodings, Unicode, all that stuff. A couple of years ago, a beta tester for FogBUGZ was wondering whether it could handle incoming email in Japanese. Japanese? They have email in Japanese? I had no idea. When I looked closely at the commercial ActiveX control we were using to parse MIME email messages, we discovered it was doing exactly the wrong thing with character sets, so we actually had to write heroic code to undo the wrong conversion it had done and redo it correctly. When I looked into another commercial library, it, too, had a completely broken character code implementation. I corresponded with the http://www.joelonsoftware.com/articles/Unicode.html[5/11/2014 1:30:52 AM] The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) - Joel on Software developer of that package and he sort of thought they "couldn't do anything about it." Like many programmers, he just wished it would all blow over somehow.
    [Show full text]
  • Finding a Growth Business Model at Stackoverflow-Final2
    S TANFORD U NIVERSITY 2 0 1 0 - 2 0 4 - 1 S CHOOL OF E NGINEERING C ASEP UBLISHER Rev. July 20, 2010 CITE AS: M. Sewak et al. “Finding a Growth Business Model at Stack Overflow, Inc.” Stanford CasePublisher 204-2010-1. 18 May 2010. FINDING A GROWTH BUSINESS MODEL AT STACK OVERFLOW, INC. T ABLE OF C ONTENTS Introduction 1. The Founders 1.1. Joel Spolsky 1.2. Jeff Atwood 2. History of Online Q&A Sites 3. History of Stack Overflow 3.1. Metrics 3.2. Market Reaction 4. Revenue Models 5. Overall Market 6. User Growth Models for Stack Overflow 6.1. Hosted Whitelabel 6.2. Network of Experts 6.3. Monolithic Site 7. Recent Financing Activity 8. The Future 9. Discussion Questions 10. Exhibits 11. References Professors Micah Siegel (Stanford University) and Fred Gibbons (Stanford University) guided the de- velopment of this case using the CasePublisher service as the basis for class discussion rather than to il- lustrate either effective or ineffective handling of a business situation. S TANFORD 204-2010-01 Finding Business Model at Stack Overflow Introduction ! Joel Spolsky and Je" Atwood had launched Stack Overflow less than two years ago, and it had already crossed the 175,000 mark in terms of registered users. The creation of an open platform where programming questions were promptly answered was an achievement in itself. However, Spolsky and Atwood faced their next challenge: coming up with a revenue model to monetize the popularity of Stack Overflow. Led by their frustration with other programming related Q&A websites, Spolsky and At- wood had started Stack Overflow to enable users to find answers to programming questions.
    [Show full text]
  • The Joel Test: 12 Steps to Better Code
    AUGUST 9, 2000 by JOEL SPOLSKY The Joel Test: 12 Steps to Better Code TOP 10, ROCK STAR DEVELOPER, NEWS Have you ever heard of SEMA? It’s a fairly esoteric system for measuring how good a so!ware team is. No, wait! Don’t follow that link! It will take you about six years just to understand that stu". So I’ve come up with my own, highly irresponsible, sloppy test to rate the quality of a so!ware team. The great part about it is that it takes about 3 minutes. With all the time you save, you can go to medical school. The Joel Test 1. Do you use source control? 2. Can you make a build in one step? 3. Do you make daily builds? 4. Do you have a bug database? 5. Do you fix bugs before writing new code? 6. Do you have an up-to-date schedule? 6. Do you have an up-to-date schedule? 7. Do you have a spec? 8. Do programmers have quiet working conditions? 9. Do you use the best tools money can buy? 10. Do you have testers? 11. Do new candidates write code during their interview? 12. Do you do hallway usability testing? The neat thing about The Joel Test is that it’s easy to get a quick yes or no to each question. You don’t have to figure out lines-of-code-per-day or average-bugs- per-inflection-point. Give your team 1 point for each “yes” answer. The bummer about The Joel Test is that you really shouldn’t use it to make sure that your nuclear power plant so!ware is safe.
    [Show full text]
  • Joel Spolskys Concise Guide to Finding the Best Technical Talent Pdf, Epub, Ebook
    SMART AND GETS THINGS DONE: JOEL SPOLSKYS CONCISE GUIDE TO FINDING THE BEST TECHNICAL TALENT PDF, EPUB, EBOOK Avram Joel Spolsky | 218 pages | 01 Jun 2007 | aPress | 9781590598382 | English | New York, United States Smart and Gets Things Done: Joel Spolskys Concise Guide to Finding the Best Technical Talent PDF Book The Econ Method Give them financial rewards and punishments to create incentives, aka replaces intrinsic motivation with extrinsic motivation. User Interface Design for Programmers Jun Author has a bright style and made the book quite funny, so I guess it was time well spent. Stack Overflow currently serves 50 million programmers monthly. It makes fascinating reading. The book is written from the position of a "rockstar developer", who created a popular "rockstar company", where only the privileged, talented, and gifted people are allowed to work basically those who can write a compiler on a napkin using Haskell and understand pointers. Jul 16, Simme rated it liked it Recommends it for: People hiring tech talents. I've learnt a lot from this book. To see what your friends thought of this book, please sign up. The only real downside to the book is that, to a large extent, it assumes you make cool stuff, your company strongly supports the software developers, and that you already have at least a few rock stars at your organization. Apr 03, Sarah Carter rated it liked it Shelves: Who convinced whom? Brooks law provides an economic argument against that idea. Joe brings his mix of engineering muscle, business acumen, enthusiasm for challenges, and technical leadership to the helm of every Def Method project.
    [Show full text]
  • Ebook Download Smart and Gets Things Done: Joel Spolskys
    SMART AND GETS THINGS DONE: JOEL SPOLSKYS CONCISE GUIDE TO FINDING THE BEST TECHNICAL TALENT PDF, EPUB, EBOOK Avram Joel Spolsky | 218 pages | 01 Jun 2007 | aPress | 9781590598382 | English | New York, United States Smart and Gets Things Done: Joel Spolskys Concise Guide to Finding the Best Technical Talent PDF Book I had the same problem today, and learned a lot. It seems that you're in Germany. Interesting perspective on what you should look for when hiring for tech. Joel not only understands it, he also bases his company on the idea and provides some rather convincing data and discussions. How to find people who are not on the market: 1. Published May 1st by Apress first published January 1st It's an interesting and important introductory chapter that sets the stage for the rest of the book. American, New Zealand , Israeli, Dual citizenship [1]. The Identity Method Make people identify with the goals you're trying to achieve The Identity Method is a way to create intrinsic motivation. The advice is all fairly solid, the issue being that it's solid for a company that is able to pay well and give top software engineers what they want. Solid short read. His personal website, Joel on Software, has been popular with developers around the world since its inception in and has been translated into over 30 languages. In that time, she has built highly-productive and successful teams to deliver high quality software efficiently, and established delivery processes to achieve growth. He is the author of Joel on Software , a blog on software development, and the creator of the project management software Trello.
    [Show full text]