Software Engineering Research Trends — 1964 to today

It’s easy to forget that some of the software development technologies, tools and methodologies that we take for granted today haven’t been around for long. On the other hand, some of today’s novelties have actually been in the works for some time.

To visualize things, we ran queries in Google Scholar and looked at the number of research papers which contained specific keywords in the title. Google Scholar is far from perfect, so the numbers must be taken with a grain of salt, but it allows us to go further back in time than by using, say, Google Trends.

The summary chart looks like this:

 

1-master-all-keywords

Software development topics: volume of research papers over time,

That’s too messy.

We can see that the volume of research about the topics of “software engineering”, “software development”, “open source software” and “Software testing” dwarf other topics. But it’s too dense to appreciate the evolution of research for the different keywords.

Here’s another way of visualizing things:

 

timeline-software-development-research-papers

Emergence research papers on various software development topics

Much better.

As you can see, functional programming, which is all the rage these days thanks to languages such as Haskell, has been around for some time. Agile development, which today is practically the developer’s preferred methodology, is a relative newcomer, with research papers emerging only in 2002. The term, ‘devops’ has been around only since 2010.

Surprisingly, code quality is a topic of research since the early 80’s, yet research about code reviews, the single most effective way to achieve high code quality according to this research, only appears in 2003.

Now, just for the pleasure, here’s the detail for each keyword. The scale for the x- and y-axis are the same for all the graphs below, to facilitate comparisons. (You’ll notice that the numbers tend to drop off in 2015 and 2016, and this is due to the fact that it takes time for some of the publications to be referenced.)

Figure 1. Volume of research papers over time about “Software Engineering” (first paper appears in 1964)

 

google-scholar-results-1-software-engineering-trend

Number of software engineering papers over time.

Figure 2. Volume of research papers over time about “Software development” (first paper appears in 1965)

 

google-scholar-results-2-software-development

Number of software development papers over time.

Figure 3. Volume of research papers over time about “Software testing” (first paper appears in 1969)

 

google-scholar-results-3-software-testing

Number of software testing papers over time.

Figure 4. Volume of research papers over time about “Open source software” (first paper appears in 1969)

 

google-scholar-results-4-open-source

Number of open source software papers over time.

Figure 5. Volume of research papers over time about “Object oriented programming” (first paper appears in 1969)

 

google-scholar-results-5-oop

Number of object oriented programming papers over time.

Figure 6. Volume of research papers over time about “Functional programming” (first paper appears in 1966)

 

google-scholar-results-6-functional-prog

Number of functional programming papers over time.

Figure 7. Volume of research papers over time about “Software as a Service” (first paper appears in 2002)

 

google-scholar-results-7-saas

Number of software as a service research papers over time.

Figure 8. Volume of research papers over time about “Agile Development” (first paper appears in 2001)

 

google-scholar-results-8-agile-development

Number of Agile Development research papers over time.

Figure 9. Volume of research papers over time about “Code quality” (first paper appears in 1982)

 

google-scholar-results-9-code-quality

Number of code quality research papers over time.

Figure 10. Volume of research papers over time about “Static Analysis Software” (first paper appears in 1981)

 

google-scholar-results-10-static-analysis-software

Number of Static analysis software research papers over time.

Figure 11. Volume of research papers over time about “Technical debt” (first paper appears in 1999)

 

google-scholar-results-11-technical-debt

Number of technical debt research papers over time.

Figure 12. Volume of research papers over time about “Code review” (first paper appears in 2003)

 

google-scholar-results-12-code-review

Number of code review research papers over time.

Figure 13. Volume of research papers over time about “Code review software” (first paper appears in 2006)

 

google-scholar-results-13-code-review-software

Number of code review software research papers over time.

Figure 14. Volume of research papers over time about “Javascript” (first paper appears in 1996)

 

google-scholar-results-14-javascript

Number of Javascript research papers over time.

Figure 15. Volume of research papers over time about “Asynchronous javascript” (first paper appears in 2006)

 

google-scholar-results-15-asynchronous-javascript

Number of asynchronous javascript research papers over time.

Figure 16. Volume of research papers over time about “Devops” (first paper appears in 2010)

 

google-scholar-results-16-devops

Number of devops research papers over time.

Figure 17. Volume of research papers over time about “Continuous delivery” (first paper appears in 2010)

 

google-scholar-results-17-continuous-delivery

Number of continuous delivery research papers over time.

Figure 18. Volume of research papers over time about “Continuous integration” (first paper appears in 2002)

 

google-scholar-results-18-continuous-integration

Number of continuous integration research papers over time.

Figure 19. Volume of research papers over time about “Continuous deployment” (first paper appears in 2010)

 

google-scholar-results-19-continous-deployment

Number of continuous deployment research papers over time.

That’s all for now! In the next article we’ll drill down into the different topics and look at how the state of knowledge has evolved over time.


p.s. We just published an ebook: “The Ultimate Guide to Code Review” based on a survey of 680+ developers. Enjoy!

About Codacy

Codacy is used by thousands of developers to analyze billions of lines of code every day!

Getting started is easy – and free! Just use your  GitHub, Bitbucket or Google account to sign up.

GET STARTED

Software Development

Related Articles