[Discussion] What is a parent task? Is it a real task, is it a container?

How-to's and other software related queries

Moderator: abstr

Djo
MVP
MVP
Posts: 772
Joined: Mon Sep 09, 2019 3:02 pm

[Discussion] What is a parent task? Is it a real task, is it a container?

Post by Djo » Sat May 27, 2023 4:43 pm

@Ryan Personally I found interesting the topic you've raised about the implicit dependencies on subtasks in a hierarchical structure.
Ryan wrote:I have always wondered about the implications of the hierarchical structure in TDL. What is the meaning of a parent task and its children?

Does it mean that the parent task is the final destination, the goal, the end of a series of stepping stones of its child tasks?

If so then there would be an assumption that the parent task is automatically DEPENDENT on the child tasks for you cannot reach the final destination without completing the steps along the way. It is as if you set a dependency automatically so that the parent is automatically assumed not able to be completed until its children are completed first.

I assume this is the logical basic assumption about the “proper” way to structure your hierarchical branches. But I would certainly love to get some guidance on this. I know that this is not strictly enforced because it is possible, for example, to set a parent task complete even without setting the children complete. (but there is a useful dialog which asks if you want to set the children complete and I think and that is a recognition that this description of the structure is acknowledged)

The parent task in a hierarchical structure has always been for me a subject for questioning too. It is a task? is it a container? Is it in between?

If it's a task, how do you split the work between a parent and its subtasks?

What is your definition of a parent task?

I'd be interested in hearing how some of you consider / work with parent tasks.

184
Posts: 21
Joined: Sun May 21, 2023 6:43 pm

Re: What is a parent task? Is it a real task, is it a container? (general discussion)

Post by 184 » Sun May 28, 2023 4:05 am

It can be both. I have a parent task for the month of June. "June" is not a task, and it is not something I can complete. But it is a useful organisational tool for grouping together independent tasks that I need to complete during that time period.

It can also obviously be a task in and of itself. Not that I do something quite as silly as this, but for the sake of example, imagine a parent task called "Make a sandwich", with subtasks like "Place bread on the plate", "place meat on the bread", and "place cheese on the meat". "Make a sandwich" is a task that can be completed. It's also not strictly necessary to complete the subtasks. If I finish making the sandwich and eat it, and then realise after the fact that I forgot to put cheese on it, for my purposes I would still consider the task complete despite not completing that subtask. I would certainly not go make another sandwich in order to consider it complete.

Whether the parent task should be automatically completed when its subtasks are completed is a matter of discretion. Perhaps I don't consider the task of "Make a sandwich" complete until I've finished the implicit purpose of making a sandwich, eating it. If you wanted, you could also explicitly define every last step in a task, so you'd just make a subtask for "Eat a sandwich", but this might be cumbersome if the task has many trivial steps and you only want to make subtasks for the major steps.

In short, there is no need to think of parent tasks rigidly. They can be whatever you need them to be based on individual use cases.

Ryan
MVP
MVP
Posts: 760
Joined: Mon Aug 03, 2020 2:47 am

Re: What is a parent task? Is it a real task, is it a container? (general discussion)

Post by Ryan » Sun May 28, 2023 7:34 pm

Thanks Djo and also 184 for your comments on this.

Yes, I think it is an interesting topic that goes to the basic concepts of task management. It's something about hierarchy I have sort of wrestled in my mind for many years even before I discovered TDL. I am still thinking about what additional comments I might want to make about it that I have not already made. I feel like there is something additional but can't quite put my finger on it yet.

I think you made some great points 184, but I am still curious as to whether or not there should be a way to either have a separate object to be used as a container only, OR.... maybe an attribute that can transform a task into a "container only" parent. The reason I suspect it might make a difference is because when an item is a parent task it implies certain behavior that may not be consistent or optimal for a container. But I have to get more clarity in my mind about the specifics as it relates to TDL in order to be able to articulate it.

One point, which I had already made in another thread is that with a TDL parent task, there is an implicit dependency on its subtasks' completion. But not so with a parent container. So any behavior built into a task that occurs when it is in the position of parent may not be desirable behavior if the parent is intended to be a container instead of a task. For example, if a parent is set to "Completed" when all of its subtasks are completed, what would that mean if the parent task is intended to be a container instead. "Completed" really would not have a meaning and MIGHT cause a problem if, for example, you archived all completed tasks. You would be archiving a container that maybe you still want to keep in your active file because containers can be reused. Maybe not a stellar example, but I think it illustrates what I am getting at.

So my gut feeling is that there needs to be some kind of distinction between a container and a task. Not necessarily a separate object, but maybe an attribute of a task that changes its behavior.

And my gut also tells me that the parent tasks should not have the folder icon unless they have this attribute set that transforms them into a container. A parent task can be assigned some kind of icon automatically, but I don't think a folder is the right one because there is more to the task hierarchy than just containerism.

But I could be wrong. 😁

ispyridis
MVP
MVP
Posts: 100
Joined: Fri Apr 07, 2023 7:05 pm

Re: What is a parent task? Is it a real task, is it a container? (general discussion)

Post by ispyridis » Sun May 28, 2023 9:16 pm

Hi,
I had these considerations too.
I thought of some workarounds.

1st use only one Parent task call it my list again
Then utilise the next level subtasks as projects and unfold accordingly. This will make the parent task unique and all subtasks will be of equal characteristics. Not sure how useful it can prove.

2nd to keep folders from being archived, deleted hidden or completed. I make a dummy task inside the folder task.

Hope these might help

Djo
MVP
MVP
Posts: 772
Joined: Mon Sep 09, 2019 3:02 pm

Re: What is a parent task? Is it a real task, is it a container? (general discussion)

Post by Djo » Mon May 29, 2023 12:20 pm

Thanks for your comments, guys.

I see 3 ways to consider a parent task (tell if you have a different view):
1) A project folder (generally a Top Level parent task, which contains an entire project)
2) A parent task per se, which describe a piece of project work with subtasks
3) A simple container to organize some contents of the project (eg. 'Contracts', 'Working papers' or 'Notes')

184 wrote:In short, there is no need to think of parent tasks rigidly. They can be whatever you need them to be based on individual use cases.
Well, yes and no. ToDoList is very flexible but all parent tasks are more or less treated (options in Preferences) and displayed (option in the task views to hide/display parent tasks) in the same way by the program. So if you treat parent tasks differently from one another while the program treats them as equivalent the final result may not suit the expectations.

184 wrote:Whether the parent task should be automatically completed when its subtasks are completed is a matter of discretion.
Yes, but given that the option to automatically complete the parent when its subtasks are completed is global. Personally I've not activated it because it doesn't suit 'container' parent tasks, and for another reason too:

I often create (initialize) a parent task (project), without any subtasks, and add (and complete) subtasks in it over time, when I think about it and when it is OK for me to do something about it. So the subtasks are not always created day 1 in my parents, they may be created and completed on the fly depending on the necessities. I have to admit that this shows a serious lack of planning on my part! I think it is one of the reasons why I feel uncomfortable with some of my parent tasks, because I haven't created all the subtasks needed... The ball is in my court here!

Djo
MVP
MVP
Posts: 772
Joined: Mon Sep 09, 2019 3:02 pm

Re: What is a parent task? Is it a real task, is it a container? (general discussion)

Post by Djo » Mon May 29, 2023 12:23 pm

Ryan wrote:I am still thinking about what additional comments I might want to make about it that I have not already made. I feel like there is something additional but can't quite put my finger on it yet.
There is definitely a big topic about parent tasks, that is been on my mind these past few days. I will formulate this soon. (teaser! )

Ryan wrote:So my gut feeling is that there needs to be some kind of distinction between a container and a task. Not necessarily a separate object, but maybe an attribute of a task that changes its behavior.
The important point is probably to list all the current behaviors that don't suit the 'container' type parent task, and Dan will maybe evaluate if there is something that can be done about it...

Ryan wrote:the parent tasks should not have the folder icon unless they have this attribute set that transforms them into a container. A parent task can be assigned some kind of icon automatically, but I don't think a folder is the right one because there is more to the task hierarchy than just containerism.
Personally I find the folder icon for a parent task rather appropriate, but the possibility to assign automatically an icon depending on some attribute values would be great...
Last edited by Djo on Mon May 29, 2023 12:58 pm, edited 1 time in total.

Djo
MVP
MVP
Posts: 772
Joined: Mon Sep 09, 2019 3:02 pm

Re: What is a parent task? Is it a real task, is it a container? (general discussion)

Post by Djo » Mon May 29, 2023 12:34 pm

ispyridis wrote:1st use only one Parent task call it my list again
Then utilise the next level subtasks as projects and unfold accordingly. This will make the parent task unique and all subtasks will be of equal characteristics. Not sure how useful it can prove.
I'm not sure to see any advantage to have a unique top level task. Can you see one?
ispyridis wrote:2nd to keep folders from being archived, deleted hidden or completed. I make a dummy task inside the folder task.
Nice tip!

Ryan
MVP
MVP
Posts: 760
Joined: Mon Aug 03, 2020 2:47 am

Re: What is a parent task? Is it a real task, is it a container? (general discussion)

Post by Ryan » Mon May 29, 2023 2:51 pm

First I want to say thank you to @ispyridis. These are not actually issues that I have, but it sounds like helpful advice for someone who does have these problems.
Djo wrote:
Mon May 29, 2023 12:20 pm
I often create (initialize) a parent task (project), without any subtasks, and add (and complete) subtasks in it over time, when I think about it and when it is OK for me to do something about it. So the subtasks are not always created day 1 in my parents, they may be created and completed on the fly depending on the necessities. I have to admit that this shows a serious lack of planning on my part! I think it is one of the reasons why I feel uncomfortable with some of my parent tasks, because I haven't created all the subtasks needed... The ball is in my court here!
I don't think this is necessarily a shortcoming of your planning.

I find that typically maybe about 20% of all my tasks in a project are unplannable in the beginning because they involve factors that are unknowable at the time a project is planned.

So part of all of my planning is to have a flexible system that can accommodate unanticipated tasks. Hopefully the task manager I use can incorporate this concept to facilitate dealing with changes in the plan along the way.

That also brings up another issue I've always struggled with. What is the difference between a project and a task? Yes I've seen the definitions, but they all seem subjective to me. In the end I wonder if it really matters whether there is a difference or not. So my current definition is that a project is just a task with a lot of subtasks. I see no objective distinction between projects and tasks nor need to make one.

Yet another other issue I struggle with is how to break down tasks into subtasks and parent tasks. As unanticipated subtasks arise during a project I find I often need to completely rearrange the parents and subtasks to make them more manageable. This can be quite tedious since there are so many attributes to consider.

I think the problem is that a lot of these things are subjective and what works best for one person and the way they think may not work best for another. That can make things tricky, especially when there is more than one individual involved in the project. One size does not fit all. It may not be optimal for all.

To make a point with an extreme example, the first task on which all other tasks are dependent is the creation of the universe. Everything else is interconnected with dependency relationships after that. So where do you make the starting point for each branch of tasks and subtasks?

Recently I've been structuring things with close attention to the fact that there is an implied dependency between tasks and subtasks. That may sound elementary, but I sometimes don't think about that factor and think of the parent as a container instead. That causes confusion in structuring. And that's part of the reason that I initiated this topic.

So now I am structuring each level of subtasks so that it complies with the implied dependency relationship all the way up to the root level task. And within each hierarchy I am setting dependencies manually for tasks that depend on tasks in other task hierarchies. That is a nice way of helping define and enforce both the order of execution AND, importantly, the PRIORITY of tasks as well. Prioritization is yet another gigantic and critical element that is very difficult to quantify objectively and subject for another gigantic topic. I am pretty convinced that only the human mind can do a good job of prioritizing since priority depends on a constantly changing set of sometimes intangible factors that cannot possibly be entered into software quickly or broadly enough even if that software was able to process it and calculate the optimal priority level of each task. Maybe this is something AI can tackle someday. I am sure it is already being used this way somewhere.

Djo
MVP
MVP
Posts: 772
Joined: Mon Sep 09, 2019 3:02 pm

Re: What is a parent task? Is it a real task, is it a container? (general discussion)

Post by Djo » Mon May 29, 2023 4:00 pm

Ryan wrote:I don't think this is necessarily a shortcoming of your planning.
It is when I don't do the minimum required to create a practicable subtask structure...

Ryan wrote:What is the difference between a project and a task? Yes I've seen the definitions, but they all seem subjective to me.
Yeah, it's like the difference between a goal/objective and a project...

To me a project involves several steps/tasks to be achieved. That's my definition.

Ryan wrote:another other issue I struggle with is how to break down tasks into subtasks and parent tasks.
Same... I'm not a project manager at all, I'm very new to the subject. Methodologies exist. It requires a certain expertise. For some it's a profession...

I'm trying to repeat the question to myself: 'What structure do I really need to complete this project, and what is superfluous?'. Because you can quickly get bogged down in details. But I almost only create projects for myself, so it remains quite simple.

For very simple projects, where not real scheduling is required, sometimes I even don't create subtasks, but just bullet points in the comments of the unique task of the project, and strike them out when done. Bullet points in comments are again another level of task break down at our disposal.

Ryan wrote:Recently I've been structuring things with close attention to the fact that there is an implied dependency between tasks and subtasks. That may sound elementary, but I sometimes don't think about that factor and think of the parent as a container instead. That causes confusion in structuring.
So it seems you consider parent tasks as milestones, ie. after completing the subtasks the next step is to complete the parent task. Have you consider the other approach where the parent task remains a container (or a 'header' for the section of subtasks), and you add a final subtask to the list which would be the milestone, ie. when it is completed it means that the entire sub-section of tasks is considered terminated, and with an explicit dependency to the next step?

Ryan
MVP
MVP
Posts: 760
Joined: Mon Aug 03, 2020 2:47 am

Re: What is a parent task? Is it a real task, is it a container? (general discussion)

Post by Ryan » Mon May 29, 2023 7:08 pm

Djo wrote:
Mon May 29, 2023 4:00 pm
So it seems you consider parent tasks as milestones, ie. after completing the subtasks the next step is to complete the parent task. Have you consider the other approach where the parent task remains a container (or a 'header' for the section of subtasks), and you add a final subtask to the list which would be the milestone, ie. when it is completed it means that the entire sub-section of tasks is considered terminated, and with an explicit dependency to the next step?
That's an interesting thought and I suppose I have sometimes been doing just that before I gave a lot of thought to this topic. But what would be the advantage of doing it that way?

Yes, I think the milestones concept is accurate for the way I structure now. Once my subtasks are all completed the parent is effectively already done. Setting the parent to 'Completed' is just a way of formally confirming it complete (it's also a nice psychological motivator sometimes giving you that feeling of progress!). And of course the way I am structuring things now it completes a task on which others often depend to allow other disconnected branches of the project hierarchy to be completed.

Post Reply