I have a common code repository used for 5 different projects. As a result we have 2 standalone web applications, plus one web application that integrates other external applications.
All the web applications are standalone but share either services (API, DB, functions...) or even frontend components and libraries.
There is one team developing and managing all of them.
The problem arise because the 3 applications are fundend by 3 different business unit. Each unit want also to know the cost of develop new features and the cost of operation of the existing applications.
Some people in the team have a mostly fixed assignement to one project, but other don't, like dev for testing automation, QA, integrations, infrastructures.
Assigning tasks to different budgets is also not easy: now for example application one, the oldest, must have a mandatory security migration to a role based authentication, which possibly will not impact the 2 others more modern application.
I would assign it as an "operation" budget only for application 1, hoping that it will not impact the others application.
I don't know how to split common tasks and the time of common people. The only way I see, is to communicate transparentely the decisions taken on every single activity that we do...and probably agree to split the common costs fairly with the respective product owners..
It's quite an overhead though, I wonder wether it's a common problem and how it's solved