Make software efforts visible

Goran Madzar

17/01/2017

Weeks and months pass, and the software just keeps getting unfinished. Are you familiar with this problem? Then perhaps this article can help. Statements like "we're at about 80 percent completion" or "we need another one or two months" should be treated with caution and are usually completely unfounded.

Why is it so difficult to determine software costs?

The relationship between software developers and project managers isn't always easy. Software developers have their own language and often express themselves in a way that's difficult for the project manager to understand. This can lead to the project manager being unable to understand what the software developer is doing. They hope the software developer will do their job and complete the software by a deadline. However, this assumption doesn't usually hold true. The problem is that software developers themselves lack the methods to conduct estimations. Especially with software, forgotten work packages can cause effort to explode.

How do you get qualified statements about the costs?

A software specification is required as the basis for a qualified statement. This specification must contain the requirements for the software system. A software architecture is created based on this specification. The software system usually consists of software running on a processor. The software system is then hierarchically broken down into software items and finally into software units. The software unit represents the smallest unit that cannot be further subdivided from an architectural perspective. The units are therefore the individual building blocks of the software. The software architecture can then be used to determine effort and plan tasks.

Your contact person:

Dipl.-Ing. Goran Madzar, Partner, Senior Systems Engineer 
E-mail: madzar@medtech-ingenieur.de
Phone:  +49 9131 691 240
 

Do you need support with the development of your medical device? We're happy to help! MEDtech Ingenieur GmbH offers hardware development, software development, systems engineering, mechanical development, and consulting services from a single source. Contact us.

make contact

For each piece of software, specific activities must be performed. These activities are based on the software development plan and the software security class. It's best to present the activities in a table. This allows you to measure progress. If you want to omit individual activities for certain units (e.g., unit tests), you can, of course, indicate this in the table. Based on this table, you can also estimate the effort required for the remaining work. Don't forget the additional tasks that arise (software system tests, integration, bug fixing, etc.). However, the table initially provides an important contribution to effort estimates.

ID Title Software Safety Class Architecture approved Detailed Design Implemented Code Review Unit test Integrated Unit finished
1 SW Unit 1 Safety Class B done open open open open open open
2 SW Unit 2 Safety Class B done open open open open open open
3 SW Unit N Safety Class B Review open open open open open open

Conclusion

When estimating software effort, it's recommended to have a table with all software units and their planned activities. This will give you a good overview of the status of your software development.


Written by Goran Madzar

A passionate MEDtech engineer! My team and I provide engineering services to medical technology manufacturers to help them develop and market their products! Feel free to contact me via LinkedIn or email. I look forward to meeting you.


More articles

  • 09/09/2025
  • General, Software

In previous blog posts, I have introduced two essential components of a simple and universally applicable software architecture: events with dispatchers, listeners, and data pools. These already allow for many simple use cases ...

Read more
  • 12/11/2024
  • General, Software, Testing, Tools

In safety-critical software projects, software quality is paramount. Especially for Class C software, which must be certified according to strict standards such as IEC 62304 (medical technology), it is essential that ...

Read more
  • 08/08/2024
  • General, Electrical Stimulation, Software, Testing

Nowadays, apps in the healthcare sector are very important. Apps that can read and process data from medical sensors are particularly useful. Flutter is an open-source framework from Google that is excellent for ...

Read more
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

Strictly Necessary Cookies

Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.