home | pre-prints | papers | lab


 Tim Menzies

Prof (full). Ph.D. Computer Science.
SE, AI, data mining, prog. languages.

  tim@menzies.us | bio  



"Less, but better"

I find simple solutions to seemingly hard problems (see examples).

So what can I simplify for you?

For Students

I seek talented grad students for AI+SE. Is that you?

For Industry

Ask me how to innovate. On time. On budget. Case studies:

My Funding

Over $9M. From many sources, e.g.:


  • Publications:
    • H-index: 46 (July'17).
    • Papers: 63 journal + 107 conference + 82 other
  • Government work:
    • NASA software research chair: 2002-2004
    • NSF panelist: 11 times (2003-2016)
  • Journal work:
    • assoc. ed.: TSE, TOSEM, JSS, EMSE, IST, ASEJ, IEEE Software, SQJ, Big Data Research, IET Software
  • Conference work:
    • co-general chair: ICMSE'16; coPC chair: SSBSE'17,NEIR'15,ASE'12
    • program committees: ICSE, FSE, ASE, MSR, SSBSE, PROMISE,...
  • Research students:
    • Ph.D.: 9 current. 7 past. Masters (by thesis): 29
    • Current graduate students (at the RAISE lab: real-world AI for SE):

Wei Fu Rahul Krishna Vivek Nair George Mathew Zhe Yu Di (Jack) Chen Amritanshu Agrawal Jianfeng Chen Guilherme Ferreira Andrew Hill Andrew Hill

My prior graduates:

Scott Chen David Owen Ashutosh Nandeshwar Ekrem Kocaguneli Abdel Salem Sayyad Fayola Peters Joe Krall Greg Gay

I challenge my students as follows:

  • Researchers usually seek solutions that are more intricate and complex;
  • Yet empirically & theoretically the world we can know is very simple;
  • So can you do "it" better, with less?

Here is a sample of their results (and for more, see Google Scholar):

Software defect prediction


Intelligent defect predictors can stop developers wasting time while they are fixing bad smells.


A simple feature and instance selectors let software projects share privatized data, without missing important patterns.


Very simple social metrics can generate near-optimal predictors for software quality.


Static code defect predictors have inherent limitations. But these limits can fixed via a new learner, very simple learner, that better understand the business goals.


Surprisingly effective defect predictors can be built from simple static code attributes.

Search-based SE


Very simple optimizers can out perform overly complex deep learners.


Very simple optimizers can dramatically improve the performance of data miners learning software quality predictors.


Active learners can simplify and reduce the cost of search-based SE by orders of magnitude.


Search-based SE methods can easily and readily and critically assess long held SE truisms.

Transfer learning


Even when project data collects data using different labels, we can still transfer lessons learned between them.


Ultra-simple transfer learning methods (called "bellwethers") enable effective transfer of lessons learned.


How to transfer lessons learned from past projects? Easy! Clustering tools enable transferring lessons learned between software projects.


A simple nearest neighbor relevancy filtering resulted in one of the first general results in software analytics: defect predictor learned from Turkish toasters could be successfully applied to NASA flight software (and vice versa).

Requirements engineering


Seemingly complex, conflicting models can be tamed and controlled via some simple stochastic probing.


Contrast set learners can explain enormous decision trees (6000 node) learned from complex requirements models just 6 rules.


Contrast set learners find simple controllers in requirements models.

Effort estimation


The effort to build complex software can be estimated by very simple equations.


Active learners can easily estimate large software projects after just a few samples.

Other applications


Text miners can succinctly summarize thousands of technical papers about SE.


Data miners can greatly simplify and reduce the effort involved in data collection for community health studies.


Simple contrast-set learners out-perform state-of-the-art optimizers for spacecraft control;


The lesson of decades of expert systems research is that, for specific domains, human expertise can be readily captured in just a few rules.


BTW: for the origins of the "Less, but better" mantra, see Dieter Rams' 10 principles for good design.