Overly Fast Software Development Creates Technical Debt
In fast software development, companies may take shortcuts and utilize quick solutions that make further development of the software more difficult. These speed-driven shortcuts are called technical debt, which must be paid back during further development. A group led by Professor of Software Engineering Kari Smolander from the Lappeenranta University of Technology (LUT) analyzes the birth process of technical debt and gives recommendations to companies on how to decrease it.
"We analyze technical debt and develop methods and operating practices to manage it. Our goal is to also introduce a product management aspect especially into product ecosystems," says Smolander.
Growing competition in the software market has forced companies to consider whether to publish incomplete software quickly or better quality software later. A company may have to decide which quality features are important and what kind of shortcuts must be chosen during the software development process.
"Technical debt is not always a result of bad coding", Smolander remarks. "It may also include conscious and intentional decisions motivated by a tight schedule. The aim may be to capture market shares on a short term."
In the long term, however, technical debt inevitably complicates a company's operation.
"It leads to increased complexity, weakened ability to change, expensive upkeep and technical problems. These in turn lead to poor customer satisfaction and additional work."
Project management may also create debt
Professor Kari Smolander explains what is the technical debt.
Software development has its own contradicting pressures. A software development team wants to create quality software, while those responsible for project management are more interested in costs and schedules.
"Technical debt is about decisions related not just to technology, but also to management and business."
According to Smolander, existing literature concentrates mainly on code-level strategies and practices for reducing and preventing technical debt in the program code. The literature does not take into account the effect of project management on technical debt during the entire lifespan of software development. This viewpoint is now strongly present in the studies of Smolander's group.
Smolander and his group have collaborated with several N4S partners, such as Visma Solutions, Reaktor and Nokia. Smolander says it's hard to assess how much an individual company has been able to improve quality and simultaneously save working hours after an analysis and suggestions for improvement. More essential than measurement is learning a new work culture.
"The effects are not straightforward and based purely on costs or quality, but a complex, reflexive process where the organization learns and changes form. Learning is perhaps the most significant effect. It opens up opportunities for new operating practices and new business. A typical way to evaluate effects in the industry is the use of "maturity models", where the organization advances from one maturity level to the next. The aim is not this maturity as such, however, but profitable and meaningful business."
Visma Solutions pays attention to technical debt in its product development
Visma Solutions, a producer of corporate software, is interested in the way a product can be turned into a continuously developed product. The service architecture must also be able to become agile.
"The crucial thing is customer experience; having customers notice fewer flaws in the product and having them receive better products," says Product Line Manager Kari Ryynänen.
Visma Solutions offers companies many software solutions that are used to manage projects from sales to billing. They are compatible with the most common financial management software, but allow the integration of other products or customized applications through an open programming interface. These could include customized work hour forms and work shift systems. Applications can be used over a network.
Visma Solutions is constantly developing its production lines (Severa, Netvisor, Maventa and Navita). The management of technical debt is now taken into account in this development work.
"The good practices suggested by LUT researchers have been made part of "normal" software design. They are also being implemented in other Visma units."
Ryynänen says that at Visma, technical debt has been made visible.
"Because the debt is visible, we may easily decide when to pay it back. So far, we don't have a model to assess its business value. We are interested in technical debt also on an architectural level."
“It isn't easy to create a culture of experimentation in a large organization”
Innovative business models through experimentation
The Lappeenranta University of Technology research group has studied many new innovative business models that are based on experimentation. Many start-up companies test their business models in cycles, collecting experiences of what works and what doesn't. The interesting question is whether a start-up culture could also be useful in the operation of large companies.
"In the N4S program, many large companies are going through internal start-ups. We are interested in finding out whether business model innovations based on these experiences could also work in large companies," says researcher Tommi Rissanen.
Experience-based and experimental business models have rarely been created in large organizations. According to professor Liisa-Maija Sainio, this is because large companies have been tweaked to operate so efficiently that it isn't possible to get sidetracked from processes.
"The abilities, structures, processes and values of a large organization have been optimized to support current business models to make them operate as efficiently as possible and with optimal costs. This is a natural model for efficiency, but sometimes an impediment for renewal. For this reason, it isn't easy to create a culture of experimentation in a large organization. Organizations are increasingly aware of this problem, and one way or another, make these experiments independently of the parent organization. These include things like internal spin-offs, which allow these experiments to be carried out more freely."
Sainio believes that this research approach is beneficial to those IT companies who are looking for new approaches to their own practices.
"We do research using workshop and group interview techniques whose aim is to give companies views of the ways in which they currently see business models and seek change through experimentation. Discussions provide companies opportunities for inspiration already during the data collection itself. On the other hand, good practices can be highlighted in small and large organizations through comparative case study results, and these ideas can then be distributed to the entire DIGILE business community."