How do you reach the finish line fastest when developing robust software? At GPower, reusability is the key concept, but as with so many other things, it must be done thoughtfully.
The public sphere is full of examples of software that is too expensive and delivered late. One could list many examples, but it is probably sufficient to note that cost overruns in the DKK 100 million range are well known in public IT systems (Click here for more information). There are, of course, a number of circumstances that make software development an expensive undertaking, but where can you intervene if you want to make it faster and cheaper?
Reuse
If you look at the development phase itself, there is one thing that can make the project faster and cheaper: reuse. If you are able to reuse code from previous projects, there are significant savings to be gained. Many of the time-consuming tasks involve developing code blocks that are very generic—and not unique to the individual project. If these parts can be developed in advance, the development effort is reduced significantly. In fact, our experience shows that up to 80% of a project’s codebase can be established in advance, so there are substantial gains at stake.
To realize these savings, a highly structured approach to reuse is required. If your approach is the classic “cut and paste,” there are major risks hidden in reuse. It requires in-depth knowledge of the original code so that you are fully aware of the code’s purpose and any limitations it may have.
Modular software
In addition, it is important to encapsulate the code effectively. Because if the code is to be used multiple times, changes will inevitably be made to it. Therefore, all code should be placed in clearly defined modules with clear interfaces, and they should generally be designed according to the SOLID principles. Overall, code should not be seen as “a loose piece of code,” but as a tool. And like any other tool, it is worth spending time doing it properly so that it lasts and can be used in many situations.
When we talk about savings of up to 80%, it is, of course, not limited to the development phase alone. If 80% of the code can be reused, it naturally provides corresponding savings in the testing phase, provided the code is built modularly. The design phase can also be completed significantly faster if you have a good overview of your tools. Not to mention maintenance: everything that happens after development is completed also benefits from reuse, as the building blocks get to run for many more hours, so the code is tested far more thoroughly. And since maintenance is an ongoing task, there are massive savings to be gained in the long term.
Book a no-obligation meeting
Does this sound relevant to your business? Right now, you have the opportunity to book a completely no-obligation meeting with us! Call or write to us: +45 51 90 57 90 or [email protected].