Achtergrond

Making sense of source code

Jurgen Vinju is a full professor of automated software analysis at Eindhoven University of Technology and the leader of the software analysis and transformation group at Centrum Wiskunde & Informatica, the Dutch national research institute for mathematics and computer science.

Reading time: 5 minutes

The specialists who create, maintain and extend software are having trouble managing its exponentially increasing complexity, especially after the initial development phase. Context-specific analysis can help, TUE professor Jurgen Vinju argues.

Most of today’s innovation takes place in software, and the prominence of software’s role increases every day. Its impact is profound in technology, but it is also strongly felt in our society and our personal environments. Sometimes we can see it directly; most of the time it plays its part more discreetly, hidden in the background. In recent decades, software has become an omnipresent, pervasive and dominant force in our daily lives, and this development is still far from its end.

The sheer volume of software is growing rapidly, due to both strong demand for new applications and extensions to existing systems. At the same time its complexity has been increasing exponentially. Software’s complexity naturally grows much faster than its volume. This is mainly due to a lack of time to reconsider the software’s internal design to accommodate evolving requirements or remove deprecated functionality. Other factors add even more dimensions of complexity to our code bases. These include the distributed character of today’s software systems, and the freedom and expressive power of modern programming languages and tooling.

This article is exclusively available to premium members of Bits&Chips. Already a premium member? Please log in. Not yet a premium member? Become one for just €20 for the first year and enjoy all the benefits.

Login

Related content