{"id":{"repo_id":"chapman","oai_identifier":"oai:digitalcommons.chapman.edu:cads_dissertations-1025"},"canonical_url":"https://search.dev.ndltd.org/etd/chapman/oai:digitalcommons.chapman.edu:cads_dissertations-1025","repository":{"repo_id":"chapman","name":"Chapman University","base_url":"https://digitalcommons.chapman.edu/do/oai/"},"display":{"title":"Exploring Behaviors of Software Developers and Their Code Through Computational and Statistical Methods","abstract":"<p>As Artificial Intelligence (AI) increasingly penetrates all aspects of society, many obstacles emerge. This thesis identifies and discusses the issues facing Computer Vision and significant deficiencies in the Software Development Life-cycle that need to be resolved to facilitate the evolution toward true artificial intelligence. We explicitly review the concepts behind Convolutional Neural Network (CNN) models, the benchmark for computer vision. Chapter 2 highlights the mechanisms that have popularized CNNs while also specifying significant gaps that could garner the model inadequate for future use in safety-critical systems. We put forward two main limitations. Namely, CNNs do not use lack of information as information, something that humans intuitively do. Further, the process of training puts CNNs at a disadvantage over the human brain and experience. While CNNs are trained by directly introducing entire concepts, people acquire knowledge incrementally. Because we learn the basics before the details, we are able to analyze imagery more expeditiously and successfully.</p> <p>Another obstacle limiting the progression of Artificial Intelligence is the factors that decrease the efficiency of programmers and their code. Chapters 3 and 4 explore some of these aspects. The analysis of computer code as a field of study has recently been getting more attention. However, most of this research focuses on the code as the artifact. This dissertation takes a different position by centering on the effects of computer programmers' behaviors on their code.</p> <p>We explore the practicality of current in-code documentation practices by assessing whether erroneous computer comments can mislead programmers. Our experimental model relies on asking participants to describe the functionality of code fragments which, unbeknownst to them, have misleading comments. We find that expert programmers are more prone to rely on these erroneous explanations and further visualize the phenomenon by using an eye-tracker. Finally, we present heatmaps that show experts concentrated more time and attention on the documentation than the code.</p> <p>In the next chapter, we conduct a large-scale analysis of the circumstances determining how long a bug will be present in a project. This study looks at 63,923 simple, one-statement fixes of bugs in open-source Java projects. We conclude that bugs fixed by the same programmer that introduced them are resolved 1.71 times faster. We also challenge Linus' law which states, \" given enough eyeballs, all bugs are shallow.\" Our analysis finds that projects with more contributors have significantly longer-lived bugs, indicating that the mere number of people working on a project is not sufficient protection against bugs.</p>","abstract_html":"&lt;p&gt;As Artificial Intelligence (AI) increasingly penetrates all aspects of society, many obstacles emerge. This thesis identifies and discusses the issues facing Computer Vision and significant deficiencies in the Software Development Life-cycle that need to be resolved to facilitate the evolution toward true artificial intelligence. We explicitly review the concepts behind Convolutional Neural Network (CNN) models, the benchmark for computer vision. Chapter 2 highlights the mechanisms that have popularized CNNs while also specifying significant gaps that could garner the model inadequate for future use in safety-critical systems. We put forward two main limitations. Namely, CNNs do not use lack of information as information, something that humans intuitively do. Further, the process of training puts CNNs at a disadvantage over the human brain and experience. While CNNs are trained by directly introducing entire concepts, people acquire knowledge incrementally. Because we learn the basics before the details, we are able to analyze imagery more expeditiously and successfully.&lt;/p&gt; &lt;p&gt;Another obstacle limiting the progression of Artificial Intelligence is the factors that decrease the efficiency of programmers and their code. Chapters 3 and 4 explore some of these aspects. The analysis of computer code as a field of study has recently been getting more attention. However, most of this research focuses on the code as the artifact. This dissertation takes a different position by centering on the effects of computer programmers&#x27; behaviors on their code.&lt;/p&gt; &lt;p&gt;We explore the practicality of current in-code documentation practices by assessing whether erroneous computer comments can mislead programmers. Our experimental model relies on asking participants to describe the functionality of code fragments which, unbeknownst to them, have misleading comments. We find that expert programmers are more prone to rely on these erroneous explanations and further visualize the phenomenon by using an eye-tracker. Finally, we present heatmaps that show experts concentrated more time and attention on the documentation than the code.&lt;/p&gt; &lt;p&gt;In the next chapter, we conduct a large-scale analysis of the circumstances determining how long a bug will be present in a project. This study looks at 63,923 simple, one-statement fixes of bugs in open-source Java projects. We conclude that bugs fixed by the same programmer that introduced them are resolved 1.71 times faster. We also challenge Linus&#x27; law which states, &quot; given enough eyeballs, all bugs are shallow.&quot; Our analysis finds that projects with more contributors have significantly longer-lived bugs, indicating that the mere number of people working on a project is not sufficient protection against bugs.&lt;/p&gt;","abstract_has_math":false,"creators":["Eiroa Lledo, Elia"],"institution":null,"degree_name":"Doctor of Philosophy (PhD)","degree_level":"Dissertation","degree_discipline":"Computational and Data Sciences","degree_department":null,"school":null,"contributors":["Erik Linstead","Elizabeth Stevens","Tom Springer"],"advisors":[],"committee_chairs":[],"committee_members":[],"year":2021,"date_issued":"2021-08-01T07:00:00Z","date_published":"2021-08-01T07:00:00Z","updated_at":"2026-07-24T01:38:24Z","subjects":["Computer Vision","Convolutional Neural Network","Software Bug Resolution Times","Code Comments","Software Development Practices","Software Documentation","Data Science"],"languages":[],"rights":[],"rights_urls":[],"identifier_entries":[]},"links":{"outbound_url":"https://digitalcommons.chapman.edu/cads_dissertations/25","outbound_label":"Repository record","outbound_source":"dc:identifier"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor","label":"Contributor","values":["Erik Linstead","Elizabeth Stevens","Tom Springer"]},{"key":"dc:creator","label":"Author","values":["Eiroa Lledo, Elia"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.available","label":"Dc Date Available","values":["2023-08-30T07:00:00Z"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Computational and Data Sciences"]},{"key":"thesis:degree_level","label":"Degree Level","values":["Dissertation"]},{"key":"thesis:degree_name","label":"Degree Name","values":["Doctor of Philosophy (PhD)"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Computer Vision","Convolutional Neural Network","Software Bug Resolution Times","Code Comments","Software Development Practices","Software Documentation","Data Science"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier","label":"Identifier","values":["https://digitalcommons.chapman.edu/cads_dissertations/25"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description.abstract","label":"Abstract","values":["<p>As Artificial Intelligence (AI) increasingly penetrates all aspects of society, many obstacles emerge. This thesis identifies and discusses the issues facing Computer Vision and significant deficiencies in the Software Development Life-cycle that need to be resolved to facilitate the evolution toward true artificial intelligence. We explicitly review the concepts behind Convolutional Neural Network (CNN) models, the benchmark for computer vision. Chapter 2 highlights the mechanisms that have popularized CNNs while also specifying significant gaps that could garner the model inadequate for future use in safety-critical systems. We put forward two main limitations. Namely, CNNs do not use lack of information as information, something that humans intuitively do. Further, the process of training puts CNNs at a disadvantage over the human brain and experience. While CNNs are trained by directly introducing entire concepts, people acquire knowledge incrementally. Because we learn the basics before the details, we are able to analyze imagery more expeditiously and successfully.</p> <p>Another obstacle limiting the progression of Artificial Intelligence is the factors that decrease the efficiency of programmers and their code. Chapters 3 and 4 explore some of these aspects. The analysis of computer code as a field of study has recently been getting more attention. However, most of this research focuses on the code as the artifact. This dissertation takes a different position by centering on the effects of computer programmers' behaviors on their code.</p> <p>We explore the practicality of current in-code documentation practices by assessing whether erroneous computer comments can mislead programmers. Our experimental model relies on asking participants to describe the functionality of code fragments which, unbeknownst to them, have misleading comments. We find that expert programmers are more prone to rely on these erroneous explanations and further visualize the phenomenon by using an eye-tracker. Finally, we present heatmaps that show experts concentrated more time and attention on the documentation than the code.</p> <p>In the next chapter, we conduct a large-scale analysis of the circumstances determining how long a bug will be present in a project. This study looks at 63,923 simple, one-statement fixes of bugs in open-source Java projects. We conclude that bugs fixed by the same programmer that introduced them are resolved 1.71 times faster. We also challenge Linus' law which states, \" given enough eyeballs, all bugs are shallow.\" Our analysis finds that projects with more contributors have significantly longer-lived bugs, indicating that the mere number of people working on a project is not sufficient protection against bugs.</p>"]},{"key":"dc:source","label":"Dc Source","values":["E. Eiroa Lledo, \"Exploring behaviors of software developers and their code through computational and statistical methods,\" Ph.D. dissertation, Chapman University, Orange, CA, 2021. <a href=\"https://doi.org/10.36837/chapman.000313\">https://doi.org/10.36837/chapman.000313</a>"]},{"key":"dc:title","label":"Title","values":["Exploring Behaviors of Software Developers and Their Code Through Computational and Statistical Methods"]}]}],"canonical_facts":{"dc:contributor":["Erik Linstead","Elizabeth Stevens","Tom Springer"],"dc:creator":["Eiroa Lledo, Elia"],"dc:date.available":["2023-08-30T07:00:00Z"],"dc:description.abstract":["<p>As Artificial Intelligence (AI) increasingly penetrates all aspects of society, many obstacles emerge. This thesis identifies and discusses the issues facing Computer Vision and significant deficiencies in the Software Development Life-cycle that need to be resolved to facilitate the evolution toward true artificial intelligence. We explicitly review the concepts behind Convolutional Neural Network (CNN) models, the benchmark for computer vision. Chapter 2 highlights the mechanisms that have popularized CNNs while also specifying significant gaps that could garner the model inadequate for future use in safety-critical systems. We put forward two main limitations. Namely, CNNs do not use lack of information as information, something that humans intuitively do. Further, the process of training puts CNNs at a disadvantage over the human brain and experience. While CNNs are trained by directly introducing entire concepts, people acquire knowledge incrementally. Because we learn the basics before the details, we are able to analyze imagery more expeditiously and successfully.</p> <p>Another obstacle limiting the progression of Artificial Intelligence is the factors that decrease the efficiency of programmers and their code. Chapters 3 and 4 explore some of these aspects. The analysis of computer code as a field of study has recently been getting more attention. However, most of this research focuses on the code as the artifact. This dissertation takes a different position by centering on the effects of computer programmers' behaviors on their code.</p> <p>We explore the practicality of current in-code documentation practices by assessing whether erroneous computer comments can mislead programmers. Our experimental model relies on asking participants to describe the functionality of code fragments which, unbeknownst to them, have misleading comments. We find that expert programmers are more prone to rely on these erroneous explanations and further visualize the phenomenon by using an eye-tracker. Finally, we present heatmaps that show experts concentrated more time and attention on the documentation than the code.</p> <p>In the next chapter, we conduct a large-scale analysis of the circumstances determining how long a bug will be present in a project. This study looks at 63,923 simple, one-statement fixes of bugs in open-source Java projects. We conclude that bugs fixed by the same programmer that introduced them are resolved 1.71 times faster. We also challenge Linus' law which states, \" given enough eyeballs, all bugs are shallow.\" Our analysis finds that projects with more contributors have significantly longer-lived bugs, indicating that the mere number of people working on a project is not sufficient protection against bugs.</p>"],"dc:identifier":["https://digitalcommons.chapman.edu/cads_dissertations/25"],"dc:source":["E. Eiroa Lledo, \"Exploring behaviors of software developers and their code through computational and statistical methods,\" Ph.D. dissertation, Chapman University, Orange, CA, 2021. <a href=\"https://doi.org/10.36837/chapman.000313\">https://doi.org/10.36837/chapman.000313</a>"],"dc:subject":["Computer Vision","Convolutional Neural Network","Software Bug Resolution Times","Code Comments","Software Development Practices","Software Documentation","Data Science"],"dc:title":["Exploring Behaviors of Software Developers and Their Code Through Computational and Statistical Methods"],"thesis:degree_discipline":["Computational and Data Sciences"],"thesis:degree_level":["Dissertation"],"thesis:degree_name":["Doctor of Philosophy (PhD)"]},"updated_at":"2026-07-24T01:38:24Z"}