Better software analytics via “DUO”: data mining algorithms using/used-by optimizers

Research output: Contribution to journalArticlepeer-review


Colleges, School and Institutes

External organisations

  • University of Adelaide
  • North Carolina State University


This paper claims that a new field of empirical software engineering research and practice is emerging: data mining using/used-by optimizers for empirical studies, or DUO. For example, data miners can generate models that are explored by optimizers. Also, optimizers can advise how to best adjust the control parameters of a data miner. This combined approach acts like an agent leaning over the shoulder of an analyst that advises “ask this question next” or “ignore that problem, it is not relevant to your goals”. Further, those agents can help us build “better” predictive models, where “better” can be either greater predictive accuracy or faster modeling time (which, in turn, enables the exploration of a wider range of options). We also caution that the era of papers that just use data miners is coming to an end. Results obtained from an unoptimized data miner can be quickly refuted, just by applying an optimizer to produce a different (and better performing) model. Our conclusion, hence, is that for software analytics it is possible, useful and necessary to combine data mining and optimization using DUO.


Original languageEnglish
Pages (from-to)2099–2136
Number of pages38
JournalEmpirical Software Engineering
Issue number3
Early online date22 Apr 2020
Publication statusPublished - May 2020


  • Software analytics, Data mining, Optimization, Evolutionary algorithms