---
title: "Start/end date of newly created tasks"
canonical: "https://support.appfire.com/space/DLP/2212007053/Start%2Fend%20date%20of%20newly%20created%20tasks"
format: markdown
---
> Macro (aura-html)

The article below refers to a task being added to a single "Own scope" Box.

For example:

- The main Program-type Box has its "own" scope (tasks are added to the scope definition of the Box)
- The project Box can be further divided (for example, into Program Increments and Iterations)
- If Program Increments and Iterations are set up to function as "sub-scope" Boxes = their scope is based on the main Box.

In the example below, a task can be in the OMEGA Box (own scope) + Program Increment 1 (sub-scope Box) + Iteration 2 (sub-scope Box).

![Box tree with a Box highlighted and having sub-Boxes](media://2bf736c7-acdb-4190-92d5-3d4cffcf9bde)

## Start/end date not specified

Check [the Task Dates page](https://appfire.atlassian.net/wiki/spaces/DLP/pages/315262798) to learn more about tasks without start/end dates.

## Start/end date overwritten

Based on scheduling rules, the App can make changes to:

- task duration
- task placement on the timeline

### Priority of scheduling rules

> ℹ️ The scheduling mode of a task is the strictest scheduling rule, but it relies on parent-child relationships within the task tree.
> ℹ️ 
> ℹ️ **Understanding the automatic rules that impact WBS is necessary to comprehend scheduling outcomes**.

<u>General priority of scheduling rules:</u>

1. Scheduling mode
2. Dependencies
3. Task period alignment

<u>In reality, when you create a new task:</u>

1. **WBS** is determined by:
  1. **Structure builders**
    1. structure builders can be based on **dependencies**
  2. **Manual task placement** (adding a task in a particular spot in the task structure)
2. **Task period alignment** applies
  1. rules of the "own scope" Box
  2. rules of the "sub-scope" Box** → auto-assignment** (sync with a selected field)
3. **Scheduling mode** rules apply (based on WBS)
  1. auto top-down > auto bottom-up
4. **Dependencies** apply
  1. Strong dependencies dictate the placement of start/end dates
  2. Scheduling mode rules are prioritized. Dependency will still exist, but the outcome will be limited by scheduling mode

A newly created task changes based on other tasks but can also force existing tasks to change. The impact is presented in the following table:

| **New task ** | **Impacted by** | **Impacts** |
| --- | --- | --- |
| dependencies | a task can be a target of a dependency (it is affected by the source task) | a task can be a source of a dependency (it affects other tasks) |
| scheduling mode | "auto top-down" parent impacts:<br>- "auto top-down" children
- "auto bottom-up" children | all tasks impact an "auto bottom-up" parent |

### Task creation (field values) - scheduling mechanisms involved in task period calculation

When adding a task, the fields you fill in determine what scheduling mechanisms apply and how they will position a task.

Depending on:

- the setup of a Box
- task fields filled in

| **Mechanisms dependent on task field values** | **Result** | **Applicability** |
| --- | --- | --- |
| Structure Builders | **Automatic WBS structure** is based on Box Configuration > Tasks > **Task structure**.<br>Structure builder rules can be manually broken. This means that when you create a new task, it is placed according to Structure Builders, but afterward, you can move it.<br>**If structure builders don't apply, tasks will be created exactly where you have manually specified.** | **Applies only if structure builders are active AND task is affected by them.**<br><u>Box</u>:  
Structure builders can be deactivated for a given Box<br><u>Task:</u>   
A task may remain unaffected if existing rules can't be applied to it (for example, "epic link" is used as one of the structure builders, but an epic link hasn't been defined for a task.)<br>** ** |
| sub-Box auto-assignment<br>(relevant to scheduling only if combined with Task period alignment) | Sub-Boxes (such as Iterations and Program Increments) can be synced with a selected field. This means tasks can be automatically assigned to sub-boxes based on a field value.<br>This can change the task period if **task period alignment rules** are active for a given Box (main Program-type Box, Iteration, Program increment, etc.) | **Relevant only if combined with Task period alignment rules. Otherwise, it has no impact on task scheduling. **<br><u>Box</u>:<br>Auto-assignment rules can be created only when "sub-scope" sub-boxes exist<br><u>Task</u>:<br>A task may remain unaffected if existing rules can't be applied to it (for example, the "sprint" field is used to sync tasks with Iteration sub-boxes, but it hasn't been filled in for a given task). |
| Task period alignment | While task period alignment isn't directly related to any field, depending on the scope definition rules:<br>- adding a field value can automatically assign a task to a sub-box
- which will make task period alignment rules of that Box apply to a task | **Applies if task period alignment is active. **<br>Task period alignment rules are set up per Box (Box Configuration > Tasks > Scheduling). Check the settings of your main Program-type Box and its sub-Boxes.<br>You can "set assignment on lower levels" directly from the main Program-type Box. |
| Dependencies | During task creation, you can add dependencies. Scheduling rules resulting from those dependencies apply to a newly created task.<br>Keep in mind that links between tasks can function as:<br>- **strong dependencies**
- soft dependencies (no scheduling impact)
- **structure builders**<br>Adding a link can move the task within the WBS structure and the task on the timeline. | **This applies only if task links have been added.** |
| **Independent from task fields** |  |  |
| Scheduling mode | Scheduling mode of newly created tasks is based on **Box Configuration > Tasks > Scheduling** settings. | **Always applies.**<br><u>Box:</u>   
Scheduling mode of newly created task is always based on Box settings.<br><u>Task:</u>   
A task must always be in one of four available scheduling modes. |

## Position in WBS

**Task position in the tree structure affects what scheduling rules apply.**

**Position in the tree is vital, as it determines what task is in the role of a 'parent' and 'child.' Tree relationships determine how the scheduling mode rules are executed.**

Task place in WBS is affected by:

- structure builders
- where the task was manually created

> ℹ️ A task can be moved after it was created, but:
> ℹ️ 
> ℹ️ - the rules resulting from the initial placement have already been applied (various task periods have been adjusted accordingly)
> ℹ️ - Moving a task will trigger period recalculation to validate rules resulting from the new position (the task period will be changed if needed). Still, changes to other tasks won't necessarily be automatically reverted.
> ℹ️ 
> ℹ️ Therefore, creating a task in the correct place in the WBS is crucial.

<details>
<summary>Moving a task</summary>

A task can be moved using the Indent/outdent/move up/ move down button OR using the drag-and-drop method.

![Boxes view with an indented task highlighted and the move options marked](media://cd600e49-e3f9-4387-b1cb-6661a5c57625)

![Drag and drop method of moving tasks](media://cae66bc9-09b2-493f-aee5-f07c76c41ea8)
</details>

> Macro (anchor)



### Structure Builders

<u>Example:</u>

"Epic link" is listed as a structure builder:

![Box settings, Tasks, Task structure - list of task types](media://f711519c-c093-49d9-8486-b8053c6b6a5c)

The task is created directly in Jira. "Epic link" field has been filled in:

![epic-link-jira.png](media://17e1cb3c-e5e5-43ee-91d1-fca0e34d440c)

The task is nested according to the structure builder settings of a Box:

![A list of tasks with one task with indentation](media://3590ce97-97cc-420e-acf9-f192324e8ff2)

**Even when you try to create a task in a particular spot in the structure, it will be moved according to existing structure builders: **

![Task list, adding a task](media://1030218e-e712-4bd1-ba41-b609f20d1d70)

![Epic link filled in in a Jira ticket](media://0ecdcce1-1e28-45b9-98e4-c7930b530e08)

![Task list, an indented task is highlighted](media://5f335c57-bb1c-45ab-acf9-11ac3078edee)

**Changing an existing task can result in a task being moved based on structure builders:**

![Task list, task being moved from the structure](media://0d0b0c82-4355-4bd3-bc28-3c85376f9047)

![jira-task-edit-epic.png](media://f17efdb0-8e87-419d-b364-948cb5e2842d)

![Task list, one of the tasks is highlighted](media://0ec723dd-4c67-4081-a3c2-abca5ca368f6)

> ℹ️ Structure builder rules can be manually broken. This means that when you create a new task, it is placed according to Structure Builders, but afterward, you can move it manually within the structure.

> Macro (anchor)



### Inline task creation

Two key things to keep in mind:

- Between what tasks are you adding a task
- Is the structure expanded

<u>Between same-level tasks</u>

When you create a task between the same level tasks (collapsed structure = two tasks on the same level), you will create a same-level task:

![Task being created between tasks of the same level](media://9601b409-3fb6-4518-a8a8-a4d37177d8e4)

Task added:

![Task list, task is added between tasks of the same level](media://c40f7bc2-2a5d-4699-b0e1-8ff463702ae1)

<u>Between different level tasks</u>

The "add task" inline button can be positioned between different level tasks when the task structure is expanded. The resulting task is always created at the more indented level (nested lower in the structure):

![Task list, adding task between tasks of different levels](media://5e60bfa8-9a28-422c-bcc7-f0c166de8702)

Task added:

![task-added-between-tasks-of-different-level.png](media://b6cb62ae-b858-4124-a48d-2bbd66857992)

Additional example:

![Task list, adding a task](media://597ea4ed-8d7f-409d-8748-a8f1bbf6dffe)

![adding-task-example-result.png](media://863ebee2-9411-400c-94ec-122d2321d508)

### **Add task button**

Click on a task to select it (it is highlighted in blue). A same-level task will be created when you use the "Add task" button, regardless of whether the tree is expanded.

> ❌ When no task is selected, the App creates a new task under the last task that has been selected even if nothing is selected at the moment! Always remember to select a parent task when using this task creation method.

![Task list, adding task by a button](media://8501fbb7-56c2-4aa4-af6a-45da88ff234b)

Resulting task:

![Task list, a task added to the list](media://4ad3af2c-ea1c-450f-83e9-052ea0076bb5)

### Directly in Jira

When you create a task directly in Jira, it is positioned at the least indented level possible and placed at the bottom of the list.

Task position in WBS depends on the structure builder settings of a Box. 

![Create Issue window in Jira](media://86fa263f-3e6d-4cfa-b4f1-41f3f0c75b77)

![Task list, a task added to the list](media://73be3f41-7f92-4c89-9aba-dffd441140f1)

## Scheduling mechanisms

In the sections below, you can find description of function of each scheduling rule.

### **Scheduling mode**

Tasks can be in one of four modes:

- **Locked** = task duration can't be changed (task unaffected by other scheduling rules; task limits period of children)
- **Manual** = task duration has to be changed manually (task unaffected by other scheduling rules)
- **Auto top-down** = task has to fit within the period of its parent
- **Auto bottom-up** = task period changes the period of its parent.

**What is the scheduling mode of newly created tasks?**

Box settings determine the scheduling mode of newly created tasks.

![General Settings, Scheduling, Auto bottom-up mode chosen](media://b9d5d2dd-9e47-49b5-9eca-11fa1b52a380)

> ✅ The "auto top-down" tasks have priority over "auto bottom-up" tasks.

| - **parent affects child**
- **parent is affected by child** | **child** |
| --- | --- |
| **locked** | **manual** | **auto top-down** | **auto bottom-up** |
| **parent ** | locked | N/A | N/A | **AFFECTS** | **AFFECTS** |
| manual | N/A | N/A | N/A | N/A |
| auto top-down | N/A | N/A | **AFFECTS** | **AFFECTS** |
| auto bottom-up | **AFFECTED BY** | **AFFECTED BY** | **AFFECTED BY** | **AFFECTED BY** |
| Summary:<br>- **"auto bottom-up" parent** = affected by period of any child task
- **"locked" parent** = restricts period of "auto top-down" and "auto bottom-up" tasks
- **"auto top-down" parent** = restricts period of "auto top-down" tasks and "auto bottom-up" tasks |

#### "Auto top-down" parent task

An "auto top-down" parent task forces a child to fit within its period. 

<u>Affected tasks:</u>

- other "auto top-down" tasks
- "auto bottom-up" tasks.

During task creation:

| **Situation** | **Outcome** |
| --- | --- |
| New task **fits** within the parent task period | no changes made to the period of the new task |
| New task **partially fits** within the parent task period | task duration shortened - days outside of the parent task period are 'cut off' |
| New task has **no overlap** with the parent task period | task duration = 1d<br>task placed on a timeline closer to the start/end dates specified during task creation |

#### "Locked" parent task

A "locked" parent task forces a child to fit within its period. 

<u>Affected tasks:</u>

- "auto top-down" tasks
- "auto bottom-up" tasks.

During task creation:

| **Situation** | **Outcome** |
| --- | --- |
| New task **fits** within the parent task period | no changes made to the period of the new task |
| New task **partially fits** within the parent task period | task duration shortened - days outside of the parent task period are 'cut off' |
| New task has **no overlap** with the parent task period | task duration = 1d<br>task placed on a timeline closer to the start/end dates specified during task creation |

#### "Auto bottom-up" parent task

An "auto bottom-up" parent task is affected by the period of any child (regardless of their scheduling mode).

### Dependencies

Strong dependencies move a task on a timeline.

Without the involvement of another mechanism, dependencies don't alter the task period.

Dependencies have a lower scheduling priority than scheduling mode.

The source of a dependency remains in its original position - the target of a dependency is moved.

| **Dependency** | **Result** |
| --- | --- |
| End to start | ![Two tasks connected with end-to-start dependency](media://774849db-7fa5-4bdb-abb8-1c2f85c3a592) |
| End to end | ![two tasks connected with end-to-end dependency](media://b58a3528-38ac-4cc8-a125-1cb925a36b20) |
| Start to end | ![Two task connected with start-to-end dependency](media://2f188400-50d5-4e10-a3f0-b8dd5bcf8518) |
| Start to start | ![Two tasks connected with start-to-start dependency](media://c9610e34-5ec8-42cb-a144-872633d17f99) |

### Task period alignment

Task period alignment settings of a Box regulate the relationship between a task and the Box it's in. 

| **Task period alignment** | **Results** |
| --- | --- |
| no alignment | task period = unaffected |
| precise alignment | Task period = Box period |
| smart adjustment | Task's time frame aligns with the start and/or end date of a Box. Task's length remains unchanged (whenever possible) |

Task period alignment won't be realized if it conflicts with parent task period mode requirements. 

### Conflicts

Starting state to which scheduling mechanisms are applied:

| **start/end date unspecified during task creation** | **start/end date specified during task creation** |
| --- | --- |
| New task:<br>- duration = 1d
- start/end date = creation date | New task:<br>- duration = based on start/end date
- start/end date = as specified during creation |

#### Scheduling mode vs. dependency

Order of execution:

1. Scheduling mode is executed:
  1. auto top-down parent = child adjusted to fit
  2. auto bottom-up parent = parent changed based on the child.
2. Dependencies are executed:
  1. task moved according to a dependency
  2. if the "auto bottom-up" parent period has been changed during the scheduling mode execution, it won't be further changed (for example, if the parent has been lengthened to encompass the new child, it won't 'shrink' back down, even if it would be possible after dependency moved the task).

#### Scheduling mode vs. task period alignment

Order of execution:

1. Task period alignment is executed.
2. Scheduling mode is executed - it overwrites the previous changes if necessary.

#### Dependency vs. task period alignment

Order of execution:

1. The task period alignment is executed.
2. The task is moved according to the dependency.

This means that based on task period alignment, a task can be shortened/extended and then moved on a timeline. Since dependencies themself don't modify the task period, task duration will be determined by task period alignment, but the position will be based on strong dependencies.

#### Dependency vs. task period alignment vs. scheduling mode

Order of execution:

1. Task period alignment is executed.
2. Scheduling mode is executed.
3. Dependency is executed.