  During the last decades, the problem of malicious and unwanted software
(malware) has surged in numbers and sophistication. Malware plays a key role in
most of today's cyber attacks and has consolidated as a commodity in the
underground economy. In this work, we analyze the evolution of malware from
1975 to date from a software engineering perspective. We analyze the source
code of 456 samples from 428 unique families and obtain measures of their size,
code quality, and estimates of the development costs (effort, time, and number
of people). Our results suggest an exponential increment of nearly one order of
magnitude per decade in aspects such as size and estimated effort, with code
quality metrics similar to those of benign software.We also study the extent to
which code reuse is present in our dataset. We detect a significant number of
code clones across malware families and report which features and
functionalities are more commonly shared. Overall, our results support claims
about the increasing complexity of malware and its production progressively
becoming an industry.
