Evaluating the Usefulness of IR-Based Fault LocalizationTechniquesAlex Orso
Software debugging is tedious and time consuming. To reduce the manual effort needed for debugging, researchers have proposed a considerable number of techniques to automate the process of fault localization; in particular, techniques based on information retrieval (IR) have drawn increased attention in recent years. Although reportedly effective, these techniques have some potential limitations that may affect their performance. First, their effectiveness is likely to depend heavily on the quality of the bug reports; unfortunately, high-quality bug reports that contain rich information are not always available. Second, these techniques have not been evaluated through studies that involve actual developers, which is less than ideal, as purely analytical evaluations can hardly show the actual usefulness of debugging techniques. The goal of this work is to evaluate the usefulness of IR-based techniques in real-world scenarios. Our investigation shows that bug reports do not always contain rich information, and that low-quality bug reports can considerably affect the effectiveness of these techniques. Our research also shows, through a user study, that high-quality bug reports benefit developers just as much as they benefit IR-based techniques. In fact, the information provided by IR-based techniques when operating on high-quality reports is only helpful to developers in a limited number of cases. And even in these cases, such information only helps developers get to the faulty file quickly, but does not help them in their most time consuming task: understanding and fixing the bug within that file.
Software Testing: A Research Travelogue (2000–2014)Alex Orso
The document discusses the major developments and contributions in the field of software testing research over the past 14 years from 2000 to 2014. It identifies the most significant research contributions as automated test input generation techniques like symbolic execution, search-based testing, and random testing. It also discusses important testing strategies, empirical studies and infrastructure developments, and practical contributions to software testing. Open challenges and opportunities discussed include testing real-world systems, handling oracles, testing non-functional properties, and leveraging cloud and crowd-based approaches.
The document discusses different types of antivirus testing methods and potential ways to exploit weaknesses in those methods. It describes "wildcore" testing using real malware samples and "zoo" testing using large malware collections. It also outlines "retrospective" testing using older signature databases. The document suggests hacks like automatically signing samples, customizing settings, and detecting other antivirus products' false positives to manipulate test results. Feedback from the antivirus industry is mixed, with some condoning common practices while others find them problematic.
Runtime Diagnosis of Stale References in the OSGi Services Platform - Kiev Ga...mfrancis
The document discusses stale references in OSGi applications and introduces the ServiceCoroner diagnostic tool. It defines stale references as references to objects from bundles that have stopped or had their services unregistered. ServiceCoroner uses aspect-oriented programming to detect stale references at runtime with minimal performance impact. The authors tested ServiceCoroner on four large open-source OSGi applications and found stale references present even when component models were used, with stale service ratios ranging from 2.8% to 63%. The presentation concludes with a demonstration of ServiceCoroner's graphical user interfaces.
A Path through the Jungle: Validating a Test Automation System for the FDATechWell
Test automation is difficult to get right. Working under FDA regulation presents its own challenges. Combining the two is a scary proposition because the FDA requires—and will scrutinize—the validation of any test automation used. Despite this, working in a regulated environment only magnifies the value of test automation. Aware that automation is a driver of quality and consistency, the FDA welcomes automated tests as part of an audit submission. The key to success is demonstrating quality in a way that the FDA recognizes. Chris Crapo and David Nelson lay out the road map to validation of a test automation system and highlight the critical thinking, planning, and types of maintenance that form the core of any successful validation strategy. By understanding the focal points of validation, you can set your project up for regulatory success while maintaining a lean, focused execution that drives results, not paperwork.
The document discusses different tools for finding memory leaks in Java applications. It summarizes the types of tools as inspecting the heap and using instrumentation. Inspecting the heap allows seeing relationships between objects but provides no information on how they got there, while instrumentation identifies objects that may cause leaks but does not show relationships and introduces overhead. The document recommends using both categories of tools and provides examples of profiling tools and case studies of memory leaks discovered.
Services - GMAC Annual and Fourth Quarter Earnings finance8
GMAC reported full year net income of $2.1 billion in 2006, down from $2.3 billion in 2005. The residential mortgage market experienced a slowdown due to declining home prices and weakness in nonprime credit. Auto finance results were stable despite one-time costs. Insurance reported record earnings through robust underwriting. ResCap results were negatively impacted by $839 million due to homebuilder equity sales and nonprime mortgage market deterioration.
Evaluating the Usefulness of IR-Based Fault LocalizationTechniquesAlex Orso
Software debugging is tedious and time consuming. To reduce the manual effort needed for debugging, researchers have proposed a considerable number of techniques to automate the process of fault localization; in particular, techniques based on information retrieval (IR) have drawn increased attention in recent years. Although reportedly effective, these techniques have some potential limitations that may affect their performance. First, their effectiveness is likely to depend heavily on the quality of the bug reports; unfortunately, high-quality bug reports that contain rich information are not always available. Second, these techniques have not been evaluated through studies that involve actual developers, which is less than ideal, as purely analytical evaluations can hardly show the actual usefulness of debugging techniques. The goal of this work is to evaluate the usefulness of IR-based techniques in real-world scenarios. Our investigation shows that bug reports do not always contain rich information, and that low-quality bug reports can considerably affect the effectiveness of these techniques. Our research also shows, through a user study, that high-quality bug reports benefit developers just as much as they benefit IR-based techniques. In fact, the information provided by IR-based techniques when operating on high-quality reports is only helpful to developers in a limited number of cases. And even in these cases, such information only helps developers get to the faulty file quickly, but does not help them in their most time consuming task: understanding and fixing the bug within that file.
Software Testing: A Research Travelogue (2000–2014)Alex Orso
The document discusses the major developments and contributions in the field of software testing research over the past 14 years from 2000 to 2014. It identifies the most significant research contributions as automated test input generation techniques like symbolic execution, search-based testing, and random testing. It also discusses important testing strategies, empirical studies and infrastructure developments, and practical contributions to software testing. Open challenges and opportunities discussed include testing real-world systems, handling oracles, testing non-functional properties, and leveraging cloud and crowd-based approaches.
The document discusses different types of antivirus testing methods and potential ways to exploit weaknesses in those methods. It describes "wildcore" testing using real malware samples and "zoo" testing using large malware collections. It also outlines "retrospective" testing using older signature databases. The document suggests hacks like automatically signing samples, customizing settings, and detecting other antivirus products' false positives to manipulate test results. Feedback from the antivirus industry is mixed, with some condoning common practices while others find them problematic.
Runtime Diagnosis of Stale References in the OSGi Services Platform - Kiev Ga...mfrancis
The document discusses stale references in OSGi applications and introduces the ServiceCoroner diagnostic tool. It defines stale references as references to objects from bundles that have stopped or had their services unregistered. ServiceCoroner uses aspect-oriented programming to detect stale references at runtime with minimal performance impact. The authors tested ServiceCoroner on four large open-source OSGi applications and found stale references present even when component models were used, with stale service ratios ranging from 2.8% to 63%. The presentation concludes with a demonstration of ServiceCoroner's graphical user interfaces.
A Path through the Jungle: Validating a Test Automation System for the FDATechWell
Test automation is difficult to get right. Working under FDA regulation presents its own challenges. Combining the two is a scary proposition because the FDA requires—and will scrutinize—the validation of any test automation used. Despite this, working in a regulated environment only magnifies the value of test automation. Aware that automation is a driver of quality and consistency, the FDA welcomes automated tests as part of an audit submission. The key to success is demonstrating quality in a way that the FDA recognizes. Chris Crapo and David Nelson lay out the road map to validation of a test automation system and highlight the critical thinking, planning, and types of maintenance that form the core of any successful validation strategy. By understanding the focal points of validation, you can set your project up for regulatory success while maintaining a lean, focused execution that drives results, not paperwork.
The document discusses different tools for finding memory leaks in Java applications. It summarizes the types of tools as inspecting the heap and using instrumentation. Inspecting the heap allows seeing relationships between objects but provides no information on how they got there, while instrumentation identifies objects that may cause leaks but does not show relationships and introduces overhead. The document recommends using both categories of tools and provides examples of profiling tools and case studies of memory leaks discovered.
Services - GMAC Annual and Fourth Quarter Earnings finance8
GMAC reported full year net income of $2.1 billion in 2006, down from $2.3 billion in 2005. The residential mortgage market experienced a slowdown due to declining home prices and weakness in nonprime credit. Auto finance results were stable despite one-time costs. Insurance reported record earnings through robust underwriting. ResCap results were negatively impacted by $839 million due to homebuilder equity sales and nonprime mortgage market deterioration.
El documento explora las diferencias entre qubits y bits, así como las formas del verbo latino "cogitare" (pensar) en diferentes tiempos verbales como el presente, pasado e imperfecto.
La figura del Trust non ha ancora la visibilità che meriterebbe nel panorama giuridico italiano come in tutti quei sistemi che hanno le loro radici nel Diritto Romano ( il cd. ceppo Romano-germanico ). in Italia non esiste ancora una normativa specifica per l'istituto dei "trust", il quale, perciò, vive nei limiti del riconoscimento conseguente alle norme della convenzione internazionale, ed in base al rinvio, da questa disposto, alle normative straniere.
Quest’ultimo punto apre molteplici ed innovative possibilità, che possono anche superare i limiti della normativa di stampo latino nella tutela del patrimonio.
Khawar Hussain is a mechanical supervisor with over 15 years of experience in maintenance roles for oil and gas companies in the UAE and Qatar. He has a diploma in mechanical engineering and safety certifications. His responsibilities include following safety procedures and specialized maintenance of equipment like heat exchangers, vessels, and conducting hydrotesting. He is proficient in using maintenance tools and software like MS Office.
This document provides the contact information and qualifications summary for Tim Bailey. It lists his nationality as British and provides his contact details. It then lists his extensive qualifications and certifications in non-destructive testing, underwater inspection, and health and safety that date from 1973 to 2015. The next section summarizes his work experience from 2015 to 1980 providing details of the companies and projects he has worked on involving underwater inspection and non-destructive testing.
Este documento presenta el plan de ordenación y manejo de la cuenca del Río Guarinó. Describe la conformación del Consejo de Cuenca, incluyendo sus funciones, actores identificados y el proceso para su conformación. Divide la cuenca en tres secciones - alta, media y baja - y realiza un análisis situacional de cada una, identificando potencialidades, problemas y conflictos. Explica también el proceso de postulación y elección de los miembros del consejo.
1. Microtubules may be involved in psychopathology through their roles in cellular processes and potential for information processing.
2. Dysfunction of microtubule polymerization and depolymerization cycles could underlie mental illnesses like depression through abnormal protein transport and neural activity.
3. Impaired quantum information processing in microtubules has been proposed as a potential mechanism contributing to mental illnesses. More research is needed to validate these microtubule-based models of psychopathology.
An Empirical Study on the Adequacy of Testing in Open Source ProjectsPavneet Singh Kochhar
In this study, we investigate the state-of-the-practice of testing
by measuring code coverage in open-source software projects. We examine over 300 large open-source projects written in Java, to measure the code coverage of their associated test cases.
This document discusses the uses of the verbs "be" and "do" in English. It explains that "be" is used as a main verb and in the present continuous tense as an auxiliary verb. It also explains that "do/does" and "don't/doesn't" are used to form questions and negatives in the simple present tense. Finally, it notes that "do" can also be used as a main verb, as in the example "I'm doing my homework."
Tiga kalimat ringkasan dokumen tersebut adalah:
1. Dokumen tersebut menganalisis hubungan antara pelaksanaan prosedur rantai dingin vaksin dalam pelayanan imunisasi dengan kejadian penyakit yang dapat dicegah imunisasi di Kabupaten Jember tahun 2010.
2. Hasil penelitian menunjukkan tidak ada hubungan yang signifikan antara pelaksanaan prosedur rantai dingin vaksin pada persiapan dan akhir pel
This document provides an overview of the Common Object Request Broker Architecture (CORBA) technology. It defines CORBA as a standard that allows software components written in different languages and running on different machines to communicate and work together. The key components of CORBA include objects, servants, object adapters, and the Object Request Broker (ORB). CORBA uses an Interface Definition Language (IDL) and object-oriented concepts like polymorphism to provide interoperability. It also defines services like transactions, naming, and events that support integration of distributed objects. Popular CORBA products for Java include the Java 2 ORB, VisiBroker for Java, OrbixWeb, and WebSphere.
It Does What You Say, Not What You Mean: Lessons From A Decade of Program RepairClaire Le Goues
In this talk we present lessons learned, good ideas, and thoughts on the future, with an eye toward informing junior researchers about the realities and opportunities of a long-running project. We highlight some notions from the original paper that stood the test of time, some that were not as prescient, and some that became more relevant as industrial practice advanced. We place the work in context, highlighting perceptions from software engineering and evolutionary computing, then and now, of how program repair could possibly work. We discuss the importance of measurable benchmarks and reproducible research in bringing scientists together and advancing the area. We give our thoughts on the role of quality requirements and properties in program repair. From testing to metrics to scalability to human factors to technology transfer, software repair touches many aspects of software engineering, and we hope a behind-the-scenes exploration of some of our struggles and successes may benefit researchers pursuing new projects.
The big data platforms of many organisations are underpinned by a technology that is soon to celebrate its 45th birthday: SQL. This industry stalwart is applied in a multitude of critical points in business data flows; the results that these processes generate may significantly influence business and financial decision making. However, the SQL ecosystem has been overlooked and ignored by more recent innovations in the field of software engineering best practices such as fine grained automated testing and code quality metrics. This exposes organisations to poor application maintainability, high bug rates, and ultimately corporate risk.
We present the work we’ve been doing at Hotels.com to address these issues by bringing some advanced software engineering practices and open source tools to the realm of Apache Hive SQL. We first define the relevance of such approaches and demonstrate how automated testing can be applied to Hive SQL using HiveRunner, a JUnit based testing framework. We next consider how best to structure Hive queries to yield meaningful test scenarios that are maintainable and performant. Finally, we demonstrate how test coverage reports can highlight areas of risk in SQL codebases and weaknesses in the testing process. We do this using Mutant Swarm, an open source mutation testing tool for SQL languages developed by Hotels.com that can deliver insights similar to those produced by Java focused tools such as Jacoco and PIT.
El documento explora las diferencias entre qubits y bits, así como las formas del verbo latino "cogitare" (pensar) en diferentes tiempos verbales como el presente, pasado e imperfecto.
La figura del Trust non ha ancora la visibilità che meriterebbe nel panorama giuridico italiano come in tutti quei sistemi che hanno le loro radici nel Diritto Romano ( il cd. ceppo Romano-germanico ). in Italia non esiste ancora una normativa specifica per l'istituto dei "trust", il quale, perciò, vive nei limiti del riconoscimento conseguente alle norme della convenzione internazionale, ed in base al rinvio, da questa disposto, alle normative straniere.
Quest’ultimo punto apre molteplici ed innovative possibilità, che possono anche superare i limiti della normativa di stampo latino nella tutela del patrimonio.
Khawar Hussain is a mechanical supervisor with over 15 years of experience in maintenance roles for oil and gas companies in the UAE and Qatar. He has a diploma in mechanical engineering and safety certifications. His responsibilities include following safety procedures and specialized maintenance of equipment like heat exchangers, vessels, and conducting hydrotesting. He is proficient in using maintenance tools and software like MS Office.
This document provides the contact information and qualifications summary for Tim Bailey. It lists his nationality as British and provides his contact details. It then lists his extensive qualifications and certifications in non-destructive testing, underwater inspection, and health and safety that date from 1973 to 2015. The next section summarizes his work experience from 2015 to 1980 providing details of the companies and projects he has worked on involving underwater inspection and non-destructive testing.
Este documento presenta el plan de ordenación y manejo de la cuenca del Río Guarinó. Describe la conformación del Consejo de Cuenca, incluyendo sus funciones, actores identificados y el proceso para su conformación. Divide la cuenca en tres secciones - alta, media y baja - y realiza un análisis situacional de cada una, identificando potencialidades, problemas y conflictos. Explica también el proceso de postulación y elección de los miembros del consejo.
1. Microtubules may be involved in psychopathology through their roles in cellular processes and potential for information processing.
2. Dysfunction of microtubule polymerization and depolymerization cycles could underlie mental illnesses like depression through abnormal protein transport and neural activity.
3. Impaired quantum information processing in microtubules has been proposed as a potential mechanism contributing to mental illnesses. More research is needed to validate these microtubule-based models of psychopathology.
An Empirical Study on the Adequacy of Testing in Open Source ProjectsPavneet Singh Kochhar
In this study, we investigate the state-of-the-practice of testing
by measuring code coverage in open-source software projects. We examine over 300 large open-source projects written in Java, to measure the code coverage of their associated test cases.
This document discusses the uses of the verbs "be" and "do" in English. It explains that "be" is used as a main verb and in the present continuous tense as an auxiliary verb. It also explains that "do/does" and "don't/doesn't" are used to form questions and negatives in the simple present tense. Finally, it notes that "do" can also be used as a main verb, as in the example "I'm doing my homework."
Tiga kalimat ringkasan dokumen tersebut adalah:
1. Dokumen tersebut menganalisis hubungan antara pelaksanaan prosedur rantai dingin vaksin dalam pelayanan imunisasi dengan kejadian penyakit yang dapat dicegah imunisasi di Kabupaten Jember tahun 2010.
2. Hasil penelitian menunjukkan tidak ada hubungan yang signifikan antara pelaksanaan prosedur rantai dingin vaksin pada persiapan dan akhir pel
This document provides an overview of the Common Object Request Broker Architecture (CORBA) technology. It defines CORBA as a standard that allows software components written in different languages and running on different machines to communicate and work together. The key components of CORBA include objects, servants, object adapters, and the Object Request Broker (ORB). CORBA uses an Interface Definition Language (IDL) and object-oriented concepts like polymorphism to provide interoperability. It also defines services like transactions, naming, and events that support integration of distributed objects. Popular CORBA products for Java include the Java 2 ORB, VisiBroker for Java, OrbixWeb, and WebSphere.
It Does What You Say, Not What You Mean: Lessons From A Decade of Program RepairClaire Le Goues
In this talk we present lessons learned, good ideas, and thoughts on the future, with an eye toward informing junior researchers about the realities and opportunities of a long-running project. We highlight some notions from the original paper that stood the test of time, some that were not as prescient, and some that became more relevant as industrial practice advanced. We place the work in context, highlighting perceptions from software engineering and evolutionary computing, then and now, of how program repair could possibly work. We discuss the importance of measurable benchmarks and reproducible research in bringing scientists together and advancing the area. We give our thoughts on the role of quality requirements and properties in program repair. From testing to metrics to scalability to human factors to technology transfer, software repair touches many aspects of software engineering, and we hope a behind-the-scenes exploration of some of our struggles and successes may benefit researchers pursuing new projects.
The big data platforms of many organisations are underpinned by a technology that is soon to celebrate its 45th birthday: SQL. This industry stalwart is applied in a multitude of critical points in business data flows; the results that these processes generate may significantly influence business and financial decision making. However, the SQL ecosystem has been overlooked and ignored by more recent innovations in the field of software engineering best practices such as fine grained automated testing and code quality metrics. This exposes organisations to poor application maintainability, high bug rates, and ultimately corporate risk.
We present the work we’ve been doing at Hotels.com to address these issues by bringing some advanced software engineering practices and open source tools to the realm of Apache Hive SQL. We first define the relevance of such approaches and demonstrate how automated testing can be applied to Hive SQL using HiveRunner, a JUnit based testing framework. We next consider how best to structure Hive queries to yield meaningful test scenarios that are maintainable and performant. Finally, we demonstrate how test coverage reports can highlight areas of risk in SQL codebases and weaknesses in the testing process. We do this using Mutant Swarm, an open source mutation testing tool for SQL languages developed by Hotels.com that can deliver insights similar to those produced by Java focused tools such as Jacoco and PIT.
This study investigates the extent to which potential biases
affect the results of a bug localization technique and whether
bug localization researchers need to consider these potential
biases when evaluating their solutions.
CrashLocator: Locating Crashing Faults Based on Crash Stacks (ISSTA 2014)Sung Kim
CrashLocator is a technique that locates crashing faults based solely on crash stack traces, without needing test cases or instrumentation. It approximates failing traces from crash stacks using static analysis techniques like control flow analysis and backward slicing. It then ranks suspicious functions based on characteristics of faulty functions, such as frequency in crash traces and distance from crash point. An evaluation on Mozilla projects found CrashLocator could locate over 50% of faults in the top result and over 63% in the top 5 results, outperforming conventional stack-only methods.
Performance Test Driven Development with Oracle Coherencearagozin
This presentation discusses test driven development with Oracle Coherence. It outlines the philosophy of PTDD and challenges of testing Coherence, including the need for a cluster and sensitivity to network issues. It discusses automating tests using tools like NanoCloud for managing nodes and executing tests remotely. Different types of tests are described like microbenchmarks, performance regression tests, and bottleneck analysis. Common pitfalls of performance testing like fixed users vs fixed request rates are also covered.
A tale of bug prediction in software developmentMartin Pinzger
This document discusses using fine-grained source code changes (SCC) to predict bug-prone files in software projects. It presents research that analyzed SCC data from Eclipse projects to predict bugs. The research found that SCC correlated more strongly with bugs than traditional code churn measures, and SCC-based models better predicted bug-prone files and estimated the number of bugs in files compared to models using code churn.
The document summarizes a PhD thesis defense presentation on cross-platform testing and maintenance of web and mobile applications. The presentation covers three main topics:
1) Identifying inconsistencies across different browsers and platforms using techniques like behavior capture, matching, and inconsistency detection.
2) Finding missing features on one platform by analyzing application behavior across platforms using techniques like feature mapping.
3) Automating the migration of test suites to new platforms by matching application behaviors and retargeting tests despite differences in platforms.
The presentation provides details on tools and techniques developed to address each of these problems, and evaluates them on real-world applications to demonstrate their effectiveness in automating cross-platform testing and maintenance.
Workshop BI/DWH AGILE TESTING SNS Bank EnglishMarcus Drost
The workshop focused on improving testing processes for data intensive environments like business intelligence and data warehousing systems. Participants discussed challenges with the traditional waterfall model and benefits of agile/Scrum approaches. Common problems identified included unstable test data, long test runtimes, lack of automation, and pressure on testers. Potential solutions proposed applying agile practices like continuous integration and regression testing, automating test data generation, deployments, and output validation to make testing more efficient and independent of production systems. The workshop aimed to provide insights into both problems with current testing approaches and actions that could be taken to address them.
There is a problem of finding the correct operating services In a distributed systems with dynamic configuration. Currently, there are designed one and more solutions for the ever-changing storage configuration. It should be mentioned at least Netflix Eureka, Consul, etcd or good old Zookeeper. Spring Cloud project allows to integrate some of these solutions to your project and provides powerful solutions for typical problems. However, on the way to unicorns not the most obvious subtleties of implementation and associated problems of use in real projects wait for a developer.
This talk will review the internal structure SpringCloud, implementation of Client-Side Service Discovery pattern, and specific details of concrete implementations on the example of the official libraries and the author's own library.
Deliver Faster with BDD/TDD - Designing Automated Tests That Don't SuckKevin Brockhoff
Kevin Brockhoff presented on accelerating software delivery through test-driven development (TDD) and behavior-driven development (BDD). TDD and BDD help identify incorrect behavior early, reduce rework, increase code confidence through automated tests, and improve code flexibility and extensibility. Brockhoff discussed key software delivery metrics like deployment frequency and change failure rate. He also covered testing best practices like the testing pyramid, unit testing frameworks, test source layout, and refactoring for testability.
This document describes a methodology for pinpointing the subsystems responsible for performance deviations during load testing of large software systems. The methodology involves: 1) preprocessing performance counter data, 2) crafting performance signatures for each subsystem using principal component analysis, 3) identifying deviations between a baseline and load tests, and 4) pinpointing the subsystems most likely causing deviations based on correlation between signature counters. The methodology is demonstrated through load tests on a Dell DVD store system, accurately pinpointing affected subsystems under different stress conditions.
This document summarizes a study on improving bug localization through considering the quality of bug reports and reformulating bug report queries. The study analyzes 5,500 bug reports from eight projects and finds that existing bug localization techniques perform poorly when bug reports lack useful information or contain excessive stack traces. Preliminary findings suggest context-aware query reformulation may help address these limitations by improving the quality and relevance of the queries used.
Рахманов Александр "Что полезного в разборе дампов для .NET-разработчиков?"Yulia Tsisyk
Сегодня на .NET-конференциях мы все чаще мы слышим про WinDBG, но в тоже время он все еще остается в стороне среди .NET-разработчиков, считается крайне специфичным и даже ненужным инструментом.
В докладе мы попробуем привнести альтернативный взгляд. Покажем как выстроить процесс сбора дампов, их анализа и исправления, встроить его в жизненный цикл разработки вашего приложения, сделав неотъемлемой частью для диагностики как рядовых, так и уникальных случаев. Затем рассмотрим группы основных проблем (deadlocks, out of memory, access violation, logical errors, etc.), которые могут произойти с вашим приложением, и инструменты для их анализа. И, конечно же, разберем примеры каждой из проблем, которые встретились нам на практике в наших продуктах, в коде .NET и WPF:
— Как при помощи флэшки «повесить» WPF-приложение?
— Безопасно ли вызывать DateTime.Now?
и другие жизненные ситуации.
Moscow .Net Meetup #4·14 ноября 2016
Performance Monitoring for Docker Environments - Docker Amsterdam June MeetupStijn Polfliet
Performance monitoring for Docker
Challenges around Docker monitoring - Anomaly detection - CoScale demo
For more info about how to use CoScale Docker monitoring, some reading material here: http://www.coscale.com/blog/how-to-monitor-docker-containers-with-coscale and http://www.coscale.com/blog/how-to-monitor-your-kubernetes-cluster
A summary of CoScale Docker performance monitoring can be found here: http://www.coscale.com/docker-monitoring
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Predictionsjust
The document discusses how bug reports in issue trackers are often misclassified, which can impact bug prediction and analysis of code quality. The authors manually classified over 7,000 bug reports from 5 open source projects, finding that on average 33% were misclassified. This level of misclassification means that bug count models and rankings of files by number of bugs would be incorrect for many files.
An Exploration of Challenges Limiting Pragmatic Software Defect PredictionSAIL_QU
Emad Shihab presented research on predicting high-impact software defects.
The study explored challenges in predicting surprise and breakage defects using traditional metrics like size and pre-release defects. It achieved 2-3x improved precision and high recall by considering additional factors like co-changed files and time.
Specialized models that focused only on high-impact defects like breakages and surprises saved 40-50% effort over general models. Traditional metrics like size and pre-release defects were less important for predicting these defects compared to newer factors.
The research demonstrated that focusing prediction models on high-impact defects provided more actionable results to practitioners compared to traditional defect prediction approaches. This allowed test and validation efforts to be targeted
Similar to Automatic Fine-Grained Issue Report Reclassification (20)
This document summarizes Pavneet Singh Kochhar's study on mining testing questions from Stack Overflow. The study aims to understand common challenges and topics discussed related to software testing. The methodology involves collecting 38,289 questions tagged with "test" from Stack Overflow from 2009-2014. Latent Dirichlet allocation is used to analyze topics and categories of discussion. Results show the most common categories are test frameworks, databases, and client-server. Hot topics over time include these as well. Mobile-related testing questions are increasing. Main challenges discussed include app testing, test frameworks, best practices, and database testing.
GitHub is one of the largest and most popular repository hosting service today, having about 14 million users and more than 54 million repositories as of March 2017. This makes it an excellent platform to find projects that developers are interested in exploring. GitHub showcases its most popular projects by cataloging them manually into categories such as DevOps tools, web application frameworks, and game engines. We propose that such cataloging should not be limited only to popular projects. We explore the possibility of developing such cataloging system by automatically extracting functionality descriptive text segments from readme files of GitHub repositories. These descriptions are then input to LDA-GA, a state-of-the-art topic modeling algorithm, to identify categories. Our preliminary experiments demonstrate that additional meaningful categories which complement existing GitHub categories can be inferred. Moreover, for inferred categories that match GitHub categories, our approach can identify additional projects belonging to them. Our experimental results establish a promising direction in realizing automatic cataloging system for GitHub.
An Exploratory Study of Functionality and Learning Resources of WebAPIs on Pr...Pavneet Singh Kochhar
Web APIs provide various functionalities that can be leveraged by developers in building their applications. ProgrammableWeb, which is the largest and most active web API and mashup collection, provides a record of thousands of web APIs and mashups. However, important properties about these large number of web APIs, such as their functionality and support/resources for learning, have never been studied by the existing research work.
In this study, we perform an exploratory analysis on functionality and learning resources of 9,883 web APIs and 4,315 mashups listed on ProgrammableWeb, and find that: (1) web APIs provide a wide range of functionalities related to business solution, text analysis, data source, etc.; many of them are substitutable; only a minority have been used with other APIs; (2) a majority of web APIs on ProgrammableWeb have provided resources to support developers in learning how to use the APIs.
Developers who add more assertions to code tend to have code with fewer defects. Assertions are added primarily by developers with greater ownership over the code and more experience. Assertions serve several purposes, such as checking for null values, verifying process state, validating initialization, and ensuring resources are properly locked.
Software engineering practitioners often spend significant amount of time and effort to debug. To help practitioners perform this crucial task, hundreds of papers have proposed various fault localization techniques. Fault localization helps practitioners to find the location of a defect given its symptoms (e.g., program failures). These localization techniques have pinpointed the locations of bugs of various systems of diverse sizes, with varying degrees of success, and for various usage scenarios. Unfortunately, it is unclear whether practitioners appreciate this line of research. To fill this gap, we performed an empirical study by surveying 386 practitioners from more than 30 countries across 5 continents about their expectations of research in fault localization. In particular, we investigated a number of factors that impact practitioners’ willingness to adopt a fault localization technique. We then compared what practitioners need and the current state-of-research by performing a literature review of papers on fault localization techniques published in ICSE, FSE, ESEC-FSE, ISSTA, TSE, and TOSEM in the last 5 years (2011-2015). From this comparison, we highlight the directions where researchers need to put effort to develop fault localization techniques that matter to practitioners.
A Large Scale Study of Multiple Programming Languages and Code QualityPavneet Singh Kochhar
Nowadays, most software use multiple programming languages to implement certain functionalities based on the strengths and weaknesses of different languages. Researchers in the past have studied the impact of independent programming languages on software quality, however, there has been little or no research on the impact of multiple languages on the quality of software. Does the use of multiple languages cause more bugs? Are certain languages when used with other languages make software more bug prone? What are the relationships between multi-language usage and various bug categories?
In this study, we perform a large scale empirical investigation to provide some answers to these questions. We gather a large dataset consisting of popular projects from GitHub (628 projects, 85 million SLOC, 134 thousand authors, 3 million commits, in 17 languages) to understand the impact of using multiple languages on software quality. We build multiple regression models to study the effects of using different languages on the number of bug fixing commits while controlling for factors such as project age, project size, team size, and the number of commits. Our results show that in general implementing a project with more languages has a significant effect on project quality, as it increases defect proneness. Moreover, we find specific languages that are statistically significantly more defect prone when they are used in a multi-language setting. These include popular languages like C++, Objective-C, and Java. Furthermore, we note that the use of more languages significantly increases bug proneness across all bug categories. The effect is strongest for memory, concurrency, and algorithm bugs.
Adoption of Software Testing in Open Source Projects - A Preliminary Study on...Pavneet Singh Kochhar
In this study, we explore 50,000 projects and investigate
the correlation between the presence of test cases and various project development characteristics, including the lines of code and the size of development teams.
This document summarizes a study on test automation practices of mobile app developers. The study analyzed over 600 Android apps and surveyed Android and Microsoft developers. It found that only 14% of apps contained test cases, and coverage was low. Developers used tools like JUnit and Visual Studio, but many relied on manual testing. Common challenges included time constraints, compatibility issues, and lack of exposure to tools. The study recommends promoting new, easy to use tools and better documentation to address developers' pain points with testing.
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...Pavneet Singh Kochhar
In this paper, we analyse two large software systems to
measure the relationship of code coverage and its effectiveness in killing real bugs from the software systems.
An Empirical Study of Adoption of Software Testing in Open Source ProjectsPavneet Singh Kochhar
We study more than 20,000 non-trivial software
projects and explore the correlation of test cases with various
project development characteristics including: project size,
development team size, number of bugs, number of bug
reporters, and the programming languages of these projects.
E-commerce Application Development Company.pdfHornet Dynamics
Your business can reach new heights with our assistance as we design solutions that are specifically appropriate for your goals and vision. Our eCommerce application solutions can digitally coordinate all retail operations processes to meet the demands of the marketplace while maintaining business continuity.
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j
Dr. Jesús Barrasa, Head of Solutions Architecture for EMEA, Neo4j
Découvrez les dernières innovations de Neo4j, et notamment les dernières intégrations cloud et les améliorations produits qui font de Neo4j un choix essentiel pour les développeurs qui créent des applications avec des données interconnectées et de l’IA générative.
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j
Dr. Jesús Barrasa, Head of Solutions Architecture for EMEA, Neo4j
Découvrez les dernières innovations de Neo4j, et notamment les dernières intégrations cloud et les améliorations produits qui font de Neo4j un choix essentiel pour les développeurs qui créent des applications avec des données interconnectées et de l’IA générative.
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppGoogle
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-fusion-buddy-review
AI Fusion Buddy Review: Key Features
✅Create Stunning AI App Suite Fully Powered By Google's Latest AI technology, Gemini
✅Use Gemini to Build high-converting Converting Sales Video Scripts, ad copies, Trending Articles, blogs, etc.100% unique!
✅Create Ultra-HD graphics with a single keyword or phrase that commands 10x eyeballs!
✅Fully automated AI articles bulk generation!
✅Auto-post or schedule stunning AI content across all your accounts at once—WordPress, Facebook, LinkedIn, Blogger, and more.
✅With one keyword or URL, generate complete websites, landing pages, and more…
✅Automatically create & sell AI content, graphics, websites, landing pages, & all that gets you paid non-stop 24*7.
✅Pre-built High-Converting 100+ website Templates and 2000+ graphic templates logos, banners, and thumbnail images in Trending Niches.
✅Say goodbye to wasting time logging into multiple Chat GPT & AI Apps once & for all!
✅Save over $5000 per year and kick out dependency on third parties completely!
✅Brand New App: Not available anywhere else!
✅ Beginner-friendly!
✅ZERO upfront cost or any extra expenses
✅Risk-Free: 30-Day Money-Back Guarantee!
✅Commercial License included!
See My Other Reviews Article:
(1) AI Genie Review: https://sumonreview.com/ai-genie-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
#AIFusionBuddyReview,
#AIFusionBuddyFeatures,
#AIFusionBuddyPricing,
#AIFusionBuddyProsandCons,
#AIFusionBuddyTutorial,
#AIFusionBuddyUserExperience
#AIFusionBuddyforBeginners,
#AIFusionBuddyBenefits,
#AIFusionBuddyComparison,
#AIFusionBuddyInstallation,
#AIFusionBuddyRefundPolicy,
#AIFusionBuddyDemo,
#AIFusionBuddyMaintenanceFees,
#AIFusionBuddyNewbieFriendly,
#WhatIsAIFusionBuddy?,
#HowDoesAIFusionBuddyWorks
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...kalichargn70th171
A dynamic process unfolds in the intricate realm of software development, dedicated to crafting and sustaining products that effortlessly address user needs. Amidst vital stages like market analysis and requirement assessments, the heart of software development lies in the meticulous creation and upkeep of source code. Code alterations are inherent, challenging code quality, particularly under stringent deadlines.
Mobile App Development Company In Noida | Drona InfotechDrona Infotech
Looking for a reliable mobile app development company in Noida? Look no further than Drona Infotech. We specialize in creating customized apps for your business needs.
Visit Us For : https://www.dronainfotech.com/mobile-application-development/
Graspan: A Big Data System for Big Code AnalysisAftab Hussain
We built a disk-based parallel graph system, Graspan, that uses a novel edge-pair centric computation model to compute dynamic transitive closures on very large program graphs.
We implement context-sensitive pointer/alias and dataflow analyses on Graspan. An evaluation of these analyses on large codebases such as Linux shows that their Graspan implementations scale to millions of lines of code and are much simpler than their original implementations.
These analyses were used to augment the existing checkers; these augmented checkers found 132 new NULL pointer bugs and 1308 unnecessary NULL tests in Linux 4.4.0-rc5, PostgreSQL 8.3.9, and Apache httpd 2.2.18.
- Accepted in ASPLOS ‘17, Xi’an, China.
- Featured in the tutorial, Systemized Program Analyses: A Big Data Perspective on Static Analysis Scalability, ASPLOS ‘17.
- Invited for presentation at SoCal PLS ‘16.
- Invited for poster presentation at PLDI SRC ‘16.
SOCRadar's Aviation Industry Q1 Incident Report is out now!
The aviation industry has always been a prime target for cybercriminals due to its critical infrastructure and high stakes. In the first quarter of 2024, the sector faced an alarming surge in cybersecurity threats, revealing its vulnerabilities and the relentless sophistication of cyber attackers.
SOCRadar’s Aviation Industry, Quarterly Incident Report, provides an in-depth analysis of these threats, detected and examined through our extensive monitoring of hacker forums, Telegram channels, and dark web platforms.
WhatsApp offers simple, reliable, and private messaging and calling services for free worldwide. With end-to-end encryption, your personal messages and calls are secure, ensuring only you and the recipient can access them. Enjoy voice and video calls to stay connected with loved ones or colleagues. Express yourself using stickers, GIFs, or by sharing moments on Status. WhatsApp Business enables global customer outreach, facilitating sales growth and relationship building through showcasing products and services. Stay connected effortlessly with group chats for planning outings with friends or staying updated on family conversations.
DDS Security Version 1.2 was adopted in 2024. This revision strengthens support for long runnings systems adding new cryptographic algorithms, certificate revocation, and hardness against DoS attacks.
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
1. Automatic Fine-Grained Issue Report
Reclassification
Pavneet Singh Kochhar, Ferdian Thung, David Lo
Singapore Management University
{kochharps.2012, ferdiant.2013, davidlo}@smu.edu.sg
2. 2/24
Misclassification of Issue Reports
BUG
Herzig et al. *
• 40% of issue reports are misclassified.
• 1/3 issue reports are wrongly classified as bugs.
* It’s not a Bug, it’s a Feature: How Misclassification Impacts Bug Prediction,
K. Herzig, S. Just, A. Zeller, ICSE 2013
DOCUMENTATIONIMPROVEMENT
REFACTORING
BACKPORTCLEANUP
DESIGN DEFECT
TASK
TEST
3. Impact of Misclassification
• Well-known projects receive large number of issue reports
• Large number of bug reports can overwhelm the
number of developers.
• Mozilla developer - “Everyday, almost 300 bugs appear
that need triaging.” *
• Manual Process
• Misclassified reports take more time to fix+
* J. Anvik, L. Hiew, and G. C. Murphy, “Coping with an open bug repository,” in ETX, pp. 35–39, 2005
+ X. Xia, D. Lo, M. Wen, E. Shihab, and B. Zhou, “An empirical study of bug report field reassignment,” in
CSMR-WCRE, pp. 174–183, 2014.
3/24
4. Related Work
• Herzig et al. [1] –
• Manually classify over 7000 issue reports.
• 14 different categories
We use the same dataset
We use 13 categories (merge UNKNOWN & OTHERS)
• Antoniol et al. [2] –
• Classify issue reports either as “bug” or “enhancement”
We consider “reclassification” problem
We use 13 different categories
[1] It’s not a Bug, it’s a Feature: How Misclassification Impacts Bug Prediction, K. Herzig, S. Just, A.
Zeller, ICSE 2013
[2] G. Antoniol, K. Ayari, M. D. Penta, F. Khomh, and Y.-G. Gueheneuc, “Is it a bug or an enhancement?
a text-based approach to classify change requests,” in CASCON, pp. 23:304–23:318, 2008.
4/24
5. Our Study
Fine-Grained Issue Report Reclassification
13 Categories*
BUG RFE IMPROVEMENT DOCUMENTATION
TASK BUILD
REFACTORING
DESIGN
DEFECT
TEST CLEANUP
BACKPORT
SPECIFICATION
OTHERS
* It’s not a Bug, it’s a Feature: How Misclassification Impacts Bug Prediction,
K. Herzig, S. Just, A. Zeller, ICSE 2013
5/24
(Adaptive
Maintenance)
(Perfective
Maintenance)
(Deallocating
memory)
(Removing
Duplicate
methods)
7. Pre-Processing
• Text Pre-Processing
• Summary & Description fields
• Stop-word removal
• eg., “is”, “are”, “if”
• Stemming (Reducing to root form)
• eg., “reads” and “reading” -----> “read”
• Use Porter Stemmer*
*http://tartarus.org/martin/PorterStemmer/
7/24
8. Feature Extraction
1. TF-IDF
TF - Term Frequency, IDF- Inverse Document Frequency
2. Reported Category (C1-C13)
Cn=1 where n=1 to 13
8/24
9. Feature Extraction
3. Exception Trace (S)
a) Phrase: “Exception in thread”
b) Regex : [A-Za-z0-9$.]+Exception
eg., java.lang.NullPointerException
c) Regex :
[A-Za-z0-9$.]+[A-Za-z0-9]+([A-Za-z0-9]+(java:[0-9]+)?)
eg., oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:447)
4. Issue Reporter (R1-RM)
where M is total number of reporters
9/24
10. Model Building
• LibSVM (Support Vector Machine)*
• Multi-class classification
• Inputs
• L, Learner (Training Algorithm)
• X, Set of Training Data i.e., Issue Reports
• y, where 𝑦𝑖 ∈ {1, … 𝑘}, Labels i.e., 13 categories
• Output
• A list of classifiers 𝑓 𝑘 for k ∈ {1, … 𝑘},
• Classifiers are applied on unseen data to predict label k
*http://www.csie.ntu.edu.tw/~cjlin/libsvm/
10/24
11. Dataset
Projects Organization Tracker Number of
Issue Reports
HTTPClient Apache JIRA 746
Jackrabbit Apache JIRA 2402
Lucene-Java Apache JIRA 2443
Rhino Mozilla BugZilla 1226
Tomcat5 Apache BugZilla 584
Total = 7401 Issue Reports *
* It’s not a Bug, it’s a Feature: How Misclassification Impacts Bug Prediction,
K. Herzig, S. Just, A. Zeller, ICSE 2013
11/24
14. Research Questions
RQ1: Effectiveness of Our Approach
RQ2: Varying the Amount of Training Data
RQ3: Most Discriminative Features
RQ4: Analysis of Correctly & Wrongly Classified Issue Reports
RQ5: Comparison to Other Classification Algorithms
14/24