Content
Work Package with multiple parents or progress / status copied across a "duplicate" or "depends on" relationship
Added by David Jedynak over 7 years ago
Background: I’ve got an incredible complex and highly distributed sets of projects (or work package epics) to manage over the next bunch of years. There are many ways to slice this, but it’s really best to do a top-down view, even though some of the things that need to get done will be useful for and will be required by many of the projects or epics across the entire portfolio. It’s important that the teams, at any level of the various projects, are able to easily discover what’s happening in another project so as to be able to leverage it, or use it wholesale, and absolutely not start duplicating work. That would be bad for so many reasons - schedule, cost, interoperability, etc.
Here’s the challenge:
If I have Project A and Project B, and somewhere far down the hierarchy of Project A and Project B is a shared work item Foo, is there a way to make it so that Foo’s status and progress % rolls up and is visible in both the Project A and Project B hierarchy automatically?
The Project A teams and the Project B teams can both see that Foo needs to get done eventually, and then someone comes along and does Foo. How do both teams automatically see Foo’s done status or Progress % roll up into the overall status of both Project A and Project B?
I’ve tried doing a multiple parent relationship - that doesn’t seem to be possible.
I’ve tried doing a separate task (also called Foo) in the other hierarchy from where Foo is, and then saying that the one depends on the other - that doesn’t seem to work - if I mark the first one 50, I would have expected to see the second one get set to 50.
Am I missing something? Is there some sort of construct where some sort of work item can have multiple parents, or that two tasks can have linked status even though they are not parent / child?
Replies (15)
bump? This seems like an easy answer - yes or no. I’m trying to make a decision now on how to structure this 20-30 year project.
Hi
did you find a solution for your need?
I need to share tasks among projects as well because
- we have projects involving upgrades of multiple application
- and we configure spécific projects mapping applications where we need to gather task per applications.
I tried the “dupplicate relation” but it does not match the need for the changes made on one side does not reflect on the other side.
thx
Hi David, hi Xavier,
we just implemented a feature called “Relations Columns” in 7.2 which might be very helpful. This allows you show m:n-Relations within the work packages table.
https://www.openproject.org/help/work-packages/work-package-relations/
Let’s have a quick chat about this. I am always interested in user feedback in this area.
Best
Niels
Thx for the link.
As the ‘dupplicate’ relation does not make a change visible on both tasks i tried the ‘in relation with’ way.
I then hopped to see within the work package hierarchy of project A the tasks of prject B that are relation.
But it does not work that way.
I did not subscribe to the enterprise edition because we are currently testing the application so i can’t check if the new relation columns fullfill my need but i doubt it.
As i understand it is only informative. We still need to modify tasks in both projects wich is not efficient.
As a read somewhere in another ticket this feature is available in redmine and very usefull because projects are gathering upgrades of applications, but every application upgrades need to be centralised in a dedicated segment.
Hi Xavier,
in my opinion a duplicate relationship should only show the user the way to the data master. So the status of the duplicated work package should be “Rejected” because there is already on work package that is the data master.
A lot of users want a sync feature because they can not give users access to the original work package. So maybe we should rather focus on the permissions. So maybe it would be easier in this case to share work packages with users, projects or groups. What do you think?
Best
Niels
I dont’t share your point of view.
My devs take part in projects and they do have access to project hierarchies.
In the same time they are responsible for application releases where they can manage tickets related to projects or stand alone tickets because of instant correction need.
As the project leader i cannot:
ask them to deal twice with tickets that reflect the same need in 2 different places
OR
loose time clicking on every tasks in relation with my project to understand the status of the project. I need to see it in my workpackage hierarchy would the ticket be managed directly within the hierachy or in the hierarchy of another project.
Do you know if there is something in the future 8 release of open project that will match in a way or another my need
Hi Xavier,
still not sure if I fully understand your requirements. Do you have some kind of illustration showing your project strucutre? Is everybody allowed to see everything?
Best
Niels
My original request was not addressed. Glad to see the discussion on it here.
The need I think is pretty clear - here’s an example of a company building many buildings in many locations, all with different teams and each location is pretty much individually managed, but they all work for one business entity and are expected to share resources and activities, best practices, purchasing power of various building blocks, etc.. There are many common activities. Let’s take the example of the electrical system.
Each building is a project.
Each building project has a sub-project of implementing the electrical system.
Within that sub-project, one of the tasks is “choose electrical output supplier and get them on the Approved Vendor List”
Now, if each building has that task “choose outlet supplier and get on them AVL”, then there would have to be some completely independent process and oversight that ensures everyone is in sync on that, and that task is updated for everyone.
But if that task is allowed to be a child to multiple projects, then which ever team gets to that task first will show progress on it and complete it and all the other project teams will automatically see that task is in work or completed.
Here’s an agile view of this: That task is in everyone’s backlog. Someone will need to do it first because it starts to block something they need. Everyone else should be able to see it come out of their backlog when this occurs, even if they are not thinking about it at the time.
My specific use has to do with incredibly complex project management around technology maturation across a vast number of systems and capabilities that will involve world wide teams who are all working fairly independently. There’s almost no way to manage that with a side channel. In that case, a task may actually be an entire project (e.g. “invent and qualify new material for use as a seal in this range of harsh environments”) - that seal could be used by thousands or tens of thousands of applications, each themselves highly complex. Making sure that they all have the visibility and direct hierarchy to that one shared subproject / task is critical.
I know you may ask “but what if a project needs something not quite the same?” In that case, they would have to either fork it, or define their new subproject or task in a way that is differentiated, e.g. “choose self-closing child-proof outlet and get vendor on AVL”
Does this make sense?
To clarify a bit more, to Xavier’s comments, I think we’re looking for this sort of relationship (I’ve taken the “duplicate” description and edited):
Identical – This option indicates that the work package A is identical to work package B, in other words, they both address the same task even though they are part of different projects. This can be useful if you have the same work package that needs to be a part of a closed and public projects at the same time. The connection in this case is automatic, the changes you make in work package A or B are automatically shown in the other, as they are actually the same object in the database.
Hi David,
thanks for your explanations. Does this illustration reflects your requirements?
What about sharing the one task with other users, groups or projects?
Best
Niels
Yes, pretty much, except it still looks like there is an explicit sharing going on that requires one project to be the master. Or is it the case that all the shares can have the same rights as you show above? BTW, I like the “watchers” item - that’s a good way for a project to keep track of a task while not explicitly including it in their project, as it could present them with an alternative path forward with a change of architecture in their own project.
I know what I am asking is a bit goofy, and can tend to break hierarchies and databases, but that’s sort of the nature of the beast I am trying to push forward. It’s astronomically complicated, and there are going to be probably upwards of a hundred thousand “projects” or more over the course of this endeavor. We very specifically are doing this to try to avoid any costly duplicate and divergent work and investment.
Hi is there any progress on this?
We also need a child to have multiple parents
Bump.
Would also like to have multiple parents or duplicate that sync both.
+1 we have tasks that once a project is completed a few tasks remain as ongoing. I would like those tasks to show up as tasks in a different master project holding all ongoing maintenance tasks.