Content
View differences
Updated by Parimal Satyal almost 2 years ago
**As a** project manager
**I want to** add scheduling constraints
**So that** I better control the scheduling in my project.
#### Acceptance criteria **Acceptance criteria**
##### **Scheduling modes:**
* A work package now has three can have to different scheduling modes:
* Manual Manually scheduled (default)
* Start Automatically scheduled
* If the user selects _Automatically scheduled_ the user can select between two scheduling constraints:
1. As early as soon as possible (default)
* Start no 2. Not earlier than
* The default mode When the scheduling constraint _Not earlier than_ is Manual, including for new work packages. activated there is a date picker that allows to select the `Constraint date`.
##### Gantt view: <figure class="image op-uc-figure"><div class="op-uc-figure--content"><img class="op-uc-image" src="/api/v3/attachments/113671/content"></div><figcaption class="op-uc-figure--description">Default constraint type: As soon as possible</figcaption></figure>
* In Gantt view: When moving a automatically scheduled work package forward the constraint is changed from _As soon `_as early as possible_ possible_` to _Start no `_not earlier than._ than_`_._ The constraint date is set to the new start date of the moved work package.
<figure class="image op-uc-figure"><div class="op-uc-figure--content"><img class="op-uc-image" src="/api/v3/attachments/113673/content"></div><figcaption class="op-uc-figure--description">Constraint Type: Start no earlier than</figcaption></figure>
* When changing the the constraint type from _Not earlier than_ to _As soon as possible,_ possible_ the _constraint date_ is deleted.
* In the work packages module and the Gantt module there are two new work package columns:
* Scheduling mode `Constraint type`
* Constraint date
##### **Date picker:**
* The date picker will be Primerised.
* _Changes to the info/warning banner are described in a separate section below._
* There is now an _UnderlineNav_ bar at the top:
* With three options:
* Dates (the standard date picker)
* Predecessors
* Successors
* _The Predecessor and Successor tabs are described in a separate section below._
* The "Working days only" check box is shorted to "Working days".
* There is a new dropdown with label "Scheduling mode" with the three options.
* **Manual scheduling:**
* Additional fields:
* None
* Date selection:
* The dates are freely selectable, without restrictions.
* Relations don't affect the start and finish dates.
* A manually scheduled work package can push and pull successors.
* **Start as soon as possible:**
* Additional fields:
* None.
* Date selection:
* The _Start date_ and _Finish date_ fields are read-only
* Duration remains editable
* The mini calendar goes into read-only mode
* **Start not earlier than:**
* Additional fields:
* Constraint date:
* This will be in a different colour.
* The constraint date will be marked in the same colour in the date picker, with top, left and bottom borders (but no right border, to suggest that the constraint is only on one side)
* Date selection:
* In most cases, start date will be the same as the constraint date.
* Changing the _start date_ will change the _constraint date_ to that same same date, regardless of if the new start date is before or after the current constraint date.
* If there is a predecessor, it can move a work package into the future (past the constraint date) but never earlier than the constraint date.
* If constraint date is _before_ current start date, it can be changed independently without affecting the start date.
* If constraint date is _after_ the current start date, the start date will be changed to the constraint
##### **Date picker banners:**
* **Manual scheduling:**
* Colour: Warning.
* Text:
* **Manually scheduled. Relations will not affect dates.**
Change scheduling mode for automatic scheduling.
* Action: Show relations
* **Start as soon as possible:**
* Case 1: The work package does not have a predecessor, the start date is the same as the project start date.
* Colour: Info
* Text:
* \*\*Dates are automatically set by the project start date.\*\*
You can modify this in your project timeline.
* Action: Project timeline
* Case 2: The work package has a predecessor.
* Colour: Info
* Text:
* \*\*Start date is set by a predecessor.\*\*
Changes to a predecessor may move this work package.
* Action: Show relations
* **Start not earlier than**
* Case 1: The start date is not the same as the constraint date because a predecessor has pushed it tgo the future.
* Colour: Info
* Text:
* \*\*Start date is set by a predecessor.\*\*
Changes to a predecessor may move this work package.
* Action: Show relations
* Case 2: The start date is the same as the constraint date.
* Colour: Info
* Text:
* \*\*Start date is limited by a constraint date.\*\*
Predecessors can only move this work package after this date.
* Action: Show relations
##### **Date picker: Predecessor and Successor tabs**
* _To be defined_
#### Out of scope
* The ability to change the default schedule mode.
* At an admin or a project level
* Other scheduling modes such as "Must start on" or "Start not later than"
* Editable lag in relations.
* This will have been addresssed by the time we work on this feature: ###22360
#### Visuals
_**Note:** Please check_ [_Figma_](https://www.figma.com/design/amVGcHqRQyR8x4EsqV9H99/Date-picker?node-id=971-8743) _for the most recent mockups._
<img class="image_resized op-uc-image op-uc-image_inline" style="width:529px;" src="/api/v3/attachments/173535/content"> <img class="image_resized op-uc-image op-uc-image_inline" style="width:528px;" src="/api/v3/attachments/173536/content"> <img class="image_resized op-uc-image op-uc-image_inline" style="width:528px;" src="/api/v3/attachments/173537/content"> `Constraint date`
**I want to** add scheduling constraints
**So that** I better control the scheduling in my project.
#### Acceptance criteria
##### **Scheduling modes:**
* A work package now has three
* Manual
* Start
* If the user selects _Automatically scheduled_ the user can select between two scheduling constraints:
1. As early
* Start no
* The default mode
##### Gantt view:
*
<figure class="image op-uc-figure"><div class="op-uc-figure--content"><img class="op-uc-image" src="/api/v3/attachments/113673/content"></div><figcaption class="op-uc-figure--description">Constraint Type: Start no earlier than</figcaption></figure>
* In the work packages module and the Gantt module there are two new work package columns:
* Scheduling mode
* Constraint date
##### **Date picker:**
* The date picker will be Primerised.
* _Changes to the info/warning banner are described in a separate section below._
* There is now an _UnderlineNav_ bar at the top:
* With three options:
* Dates (the standard date picker)
* Predecessors
* Successors
* _The Predecessor and Successor tabs are described in a separate section below._
* The "Working days only" check box is shorted to "Working days".
* There is a new dropdown with label "Scheduling mode" with the three options.
* **Manual scheduling:**
* Additional fields:
* None
* Date selection:
* The dates are freely selectable, without restrictions.
* Relations don't affect the start and finish dates.
* A manually scheduled work package can push and pull successors.
* **Start as soon as possible:**
* Additional fields:
* None.
* Date selection:
* The _Start date_ and _Finish date_ fields are read-only
* Duration remains editable
* The mini calendar goes into read-only mode
* **Start not earlier than:**
* Additional fields:
* Constraint date:
* This will be in a different colour.
* The constraint date will be marked in the same colour in the date picker, with top, left and bottom borders (but no right border, to suggest that the constraint is only on one side)
* Date selection:
* In most cases, start date will be the same as the constraint date.
* Changing the _start date_ will change the _constraint date_ to that same same date, regardless of if the new start date is before or after the current constraint date.
* If there is a predecessor, it can move a work package into the future (past the constraint date) but never earlier than the constraint date.
* If constraint date is _before_ current start date, it can be changed independently without affecting the start date.
* If constraint date is _after_ the current start date, the start date will be changed to the constraint
##### **Date picker banners:**
* **Manual scheduling:**
* Colour: Warning.
* Text:
* **Manually scheduled. Relations will not affect dates.**
Change scheduling mode for automatic scheduling.
* Action: Show relations
* **Start as soon as possible:**
* Case 1: The work package does not have a predecessor, the start date is the same as the project start date.
* Colour: Info
* Text:
* \*\*Dates are automatically set by the project start date.\*\*
You can modify this in your project timeline.
* Action: Project timeline
* Case 2: The work package has a predecessor.
* Colour: Info
* Text:
* \*\*Start date is set by a predecessor.\*\*
Changes to a predecessor may move this work package.
* Action: Show relations
* **Start not earlier than**
* Case 1: The start date is not the same as the constraint date because a predecessor has pushed it tgo the future.
* Colour: Info
* Text:
* \*\*Start date is set by a predecessor.\*\*
Changes to a predecessor may move this work package.
* Action: Show relations
* Case 2: The start date is the same as the constraint date.
* Colour: Info
* Text:
* \*\*Start date is limited by a constraint date.\*\*
Predecessors can only move this work package after this date.
* Action: Show relations
##### **Date picker: Predecessor and Successor tabs**
* _To be defined_
#### Out of scope
* The ability to change the default schedule mode.
* At an admin or a project level
* Other scheduling modes such as "Must start on" or "Start not later than"
* Editable lag in relations.
* This will have been addresssed by the time we work on this feature: ###22360
#### Visuals
_**Note:** Please check_ [_Figma_](https://www.figma.com/design/amVGcHqRQyR8x4EsqV9H99/Date-picker?node-id=971-8743) _for the most recent mockups._
<img class="image_resized op-uc-image op-uc-image_inline" style="width:529px;" src="/api/v3/attachments/173535/content"> <img class="image_resized op-uc-image op-uc-image_inline" style="width:528px;" src="/api/v3/attachments/173536/content"> <img class="image_resized op-uc-image op-uc-image_inline" style="width:528px;" src="/api/v3/attachments/173537/content">