Title: Towards a computer understanding of program design