Dialogue improves software development

Improvements in software development can benefit both companies and users. ELLIIT researchers in Lund and Karlskrona are working closely with companies, giving not only industrial benefit but also the opportunity to carry out software research at a high international level.

Our modern society depends critically on many software systems – who can forget the anxiety associated with the millennium bug? Software must be robust and of high quality for a well-functioning society, and it must be maintained, improved and refined as knowledge increases and society develops.

Research is being conducted within ELLIIT into the management, development, maintenance and improvement of various software systems in very close collaboration with software developers in companies.

“Our research collaboration started in telecommunications, but now software is all-pervasive, in cars and other vehicles, and as special products, such as at Spotify. One of my doctoral students is working with the public transport operator Skånetrafiken. If there’s something wrong with the software the effects are immediate, with queues forming at the stations”, says Per Runeson, professor of software engineering in the Department of Computer Science, Lund University.

What the ELLIIT researchers at Lund University and Blekinge Institute of Technology contribute are improved working methods and flow in the processes. They work with a model for continuous improvement, with concepts taken from manufacturing industry.

“It’s often related to internal processes for the way in which software is developed and maintained. There are no standard procedures that companies use: everyone has their own. The companies bring their problems or challenges and we identify the critical elements in these. We then propose solutions in a close dialogue with the company’s developers, using a well-proven process”, says Per Runeson.

Claes Wohlin, professor in the Department of Software Engineering at Blekinge Institute of Technology, confirms that everything depends on unceasing dialogue.

“We work with large and complex software systems, and we usually improve only a small part of the process, taking small steps that fit into the whole picture. We also try to identify areas in which long-term improvement is needed. The work of our doctoral students requires a long-term perspective, and companies don’t always work in this way. So we need to deliver partial solutions”, he points out.

Working so closely with the software development departments in companies depends on solid and longterm relationships, not only with the managers who can allocate resources but also with the committed employees who are working in the project under study.

“We regard these as ‘champions’, and they must also understand that we’re in a long-term relationship. It’s about skills development and ensuring that the required skills are available in the long term”, says Claes Wohlin.

A typical research project can study flows in a process. Ericsson, an important collaboration partner, may identify needs in the market, such as a function where it’s important to be first on the market. The process is conducted through several steps, from design and development, to testing and deployment. By studying each step individually, the researchers gain an impression of where the development gets stuck or slows down, and can suggest how to shorten time to market.

“We study the process and identify bottlenecks. Here, we use good old-fashioned queueing theory to get the flow going. It may be that it’s necessary to reallocate personnel or other resources”, says Claes Wohlin.

They also introduce ideas of how changes in the processes create value, for both the user and the company. Ericsson has, for example, introduced a tool to study value stream mapping (VSM) into its normal global development process, as a consequence of the collaboration within ELLIIT.

“It’s all about giving priority to development that gives the largest value to both the user and the company, in a slightly longer term. Visualising values and encouraging the companies to use value-based thinking in software development are two important parts of our operations”, says Per Runeson.

The researchers at Blekinge Institute of Technology in Karlskrona are currently working with around 30 companies, both large and small.

“It’s often large companies such as Ericsson, Sony and Axis, but we are happy to undertake projects with smaller companies that have similar challenges. By collaborating with us, the companies also collaborate with each other”, says Claes Wohlin.

Research Group

Research

Senior lecturer and docent Nauman bin Ali, Professor Claes Wohlin, Professor Jürgen Börstler and Professor Kai Petersen, Department of Software Engineering, Blekinge Institute of Technology. Professor Per Runeson and Senior lecturer Emelie Engström, Software Engineering, Department of Computer Science, Lund University. At the beginning of 2021, three doctoral students and two postdocs were also working in the field.