Epic Swimlanes MVC
<!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION -->
*This page may contain information related to upcoming products, features and functionality.
It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes.
Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.*
<!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION -->
### Problem to Solve
In an effort to expand our support for popular Kanban practices and use cases, we are adding in the first swimlane functionality for our Issue Boards via Epic Swimlanes.
> As a user of Issue Boards,
>
> I need to be able to group work on my issue board by Epic,
>
> So I can clearly see how a specific Epic's issues are progressing through our workflow
* Project/Group Boards will have a Swimlane option that can be toggled on/off
* Epic swimlanes are displayed automatically (not individually configured)
* Swimlanes logic: Group issues together in a swimlane that are assigned to the same Epic.
### Current Wireframe and Iteration Sequencing
See https://gitlab.com/gitlab-org/gitlab/-/issues/215537
### Interested Customer Notes:
> "*Epic Swimlanes would help us reduce our label usage/noise, on the left of a board, we want to group the issues in workflow columns by the Epic they belong to. Under Milestones I have issues, those issues grouped to Epics on a board. I need the tools to call out an epic swimlane, not with a label.*" [$250k+ CAR account](https://gitlab.lightning.force.com/lightning/r/Account/0016100001HnXVCAA3/view)
> *"Asking for this feature as well. I honestly can't think of any good reasons why swimlanes should not be part of an agile toolkit. This is core functionality in Jira and most other competitors and one of the major difficulties with trying to defend using Gitlab for leadership*" https://gitlab.com/gitlab-org/gitlab/-/issues/7371#note_191128059
> "*Another feature which I sorely miss, which are admittedly difficult to implement, are swimlanes/rows in issue boards. They would provide an entirely new dimension of possibilities.*"
> *All in all, I love using Gitlab, but it also frustrates me greatly, since my main use is for its VCS and planning capabilities, and the latter is in a weird state, which leaves me with no choice but to wait.*" [Hacker News comment](https://news.ycombinator.com/item?id=22396993)
### Internal Use Cases and User Notes
PM building a [Milestone Planning Board](https://gitlab.com/gitlab-org/gitlab/-/issues/7371#note_109749561), where each column is an upcoming Milestone, and they'd like to cut the board horizontally by Epic :
> "*I also upvoted this issue - I started using Epics heavily at GitLab and currently [my Plan Board](https://gitlab.com/groups/gitlab-org/-/boards/1181258?label_name%5B%5D=geo%3A%3Aplanning) contains issues from around 2-3 epics. Epic swimlanes would be a massive improvement and I would really love to see this feature!*" https://gitlab.com/gitlab-org/gitlab/-/issues/7371#note_194746521
PM looking to track how an Epic's issues is progressing across a board :
> "*I found it difficult to take advantage of epics on the planning boards. The power of epics in managing the backlog and the portfolio is to bo able to group issues into larger items. However, the boards do not make it easy to see this relationship. I have to click on each individual item, note the epic and then click on the next one and so fort, which makes it impractical to relate issues belonging to the same epi to each other. What would be helpful is an indication of the epic on the issues card, or the ability to have swimlanes on the boards for each epic, so that I can easily see/identify how my epics are doing on the board*" https://gitlab.com/gitlab-org/gitlab/-/issues/7371#note_285715420
Design for MVC and followup iterations can be found in https://gitlab.com/gitlab-org/gitlab/-/issues/215537
## Iteration schedule
### Iteration 2
- [x] Starts 2020-07-29
Objective: Finish GraphQL queries to allow for read-only swimlane board
* Hold on frontend development (Florie available and her top priority is still to provide feedback on API)
* Backend issues required to fully query all issues in a swimlane board: https://gitlab.com/gitlab-org/gitlab/-/issues/229149, https://gitlab.com/gitlab-org/gitlab/-/issues/229143, https://gitlab.com/gitlab-org/gitlab/-/issues/230903
### Iteration 3
- [x] Starts 2020-08-05
Objective: Read-only epic swimlane board
* Frontend: https://gitlab.com/gitlab-org/gitlab/-/issues/218040
* Backend in preparation for iteration 3: https://gitlab.com/gitlab-org/gitlab/-/issues/229506, https://gitlab.com/gitlab-org/gitlab/-/issues/235699
* I believe at this point we'll be able to turn on the feature flag for a really small (just the people within this channel) group
### Iteration 4
- [x] Starts 2020-08-19
Objective: Ability to use filters on Swimlanes
* Frontend: https://gitlab.com/gitlab-org/gitlab/-/issues/218040
* Backend: https://gitlab.com/gitlab-org/gitlab/-/issues/235699
### Iteration 5
- [x] Starts 2020-08-26
Objective: Ability to reorder lists
- Frontend: [https://gitlab.com/gitlab-org/gitlab/-/issues/218163](https://gitlab.com/gitlab-org/gitlab/-/issues/218163)
- Frontend is in maintainer review. Should be merged in on Wednesday or Thursday.
- Backend in preparation for iteration 6: [https://gitlab.com/gitlab-org/gitlab/-/issues/235699](https://gitlab.com/gitlab-org/gitlab/-/issues/235699)
### Iteration 6
- [x] Starts 2020-09-02
Objective: Ability to put an issue in a different list and allow filtering for read only
- Frontend: [https://gitlab.com/gitlab-org/gitlab/-/issues/229723](https://gitlab.com/gitlab-org/gitlab/-/issues/229723)
- Backend in preparation for iteration 7: [https://gitlab.com/gitlab-org/gitlab/-/issues/241219](https://gitlab.com/gitlab-org/gitlab/-/issues/241219)
### Iteration 7
- [x] Starts 2020-09-09
Objective: Ability to put an issue in a different epic
- Frontend: [https://gitlab.com/gitlab-org/gitlab/-/issues/218164](https://gitlab.com/gitlab-org/gitlab/-/issues/218164)
- Backend in preparation for iteration 8: [https://gitlab.com/gitlab-org/gitlab/-/issues/230403](https://gitlab.com/gitlab-org/gitlab/-/issues/230403), [https://gitlab.com/gitlab-org/gitlab/-/issues/244311](https://gitlab.com/gitlab-org/gitlab/-/issues/244311)
### Iteration 8
- [ ] Starts 2020-09-16
Objective: Pagination
- Frontend: [https://gitlab.com/gitlab-org/gitlab/-/issues/230403](https://gitlab.com/gitlab-org/gitlab/-/issues/230403)
- Backend in preparation for iteration 9: [https://gitlab.com/gitlab-org/gitlab/-/issues/233870](https://gitlab.com/gitlab-org/gitlab/-/issues/233870)
### Iteration 9
- [ ] Starts 2020-09-23
Objective: Configuration of open/close lists
- Frontend: [https://gitlab.com/gitlab-org/gitlab/-/issues/218031](https://gitlab.com/gitlab-org/gitlab/-/issues/218031)
epic