I work on a team that consists of several different groups - researchers, analysts, database analysts, and developer (me). We load data for our project several times a year, following a consistent (and long) process that involves many handoffs from one group to the next.

We currently use JIRA to track our process development - i.e., improvements, bugs, change requests, etc. - though we don't really use an Agile methodology (since I'm the only developer, I would say we use a 'nothing' methodology, but Waterfall is probably closer than anything).

We would like to begin using JIRA to track our progress through the process itself. So for example, we might have the following steps:

Pull data from database (DB Analyst)

Create initial data product (Developer)

Run analysis (Analyst)

Check data product (Researcher)

Check analysis (Researcher)

Package analysis results for deliver (Developer)

Upload analysis results to database (DB Analyst)

These happen more or less sequentially, one leading to the next, and typically need the same steps every time period.

My current plan is to create a single task, effectively a Story (though I don't think it's properly a Story, if I understand Stories properly). Then, create Subtasks to that Story/Task for each of the above tasks. I'm not sure if the tasks should start out assigned to their eventual do-ers, or if they should start out assigned to the project owner (we don't really have a PM, but that would be the PM in an ideal setup) and get assigned out when they're ready to be worked. I'm also considering setting them up where each subtask is a "blocker" to the next subtask, though it doesn't look like that's necessarily a good idea based on the UI; it still shows as Open, though at least it has links in the related section to the blocker/blocks tasks.

Is there a 'best practice' way to do this? Is this not really doable in JIRA? It does sound like Kanban might be closer to what we're doing here, but honestly I don't think I could get a major shift like that accomplished in a meaningful way. Is this something I'd need to get a JIRA add-on to make more doable? (I think we use mostly stock Jira, with some custom templates but not a whole lot.)

3 Answers
3

Assign the task in advance and make them watchers on the previous task

My current plan is to create a single Story. Then, create Subtasks to
that Story for each of the above tasks.

This is the best approach under the circumstances. If you were following Agile/Scrum you should chop up the large story into smaller stories that can be completed in a sprint. But, in your case that is not a requirement.

I'm not sure if the tasks should start out assigned to their eventual
do-ers, or if they should start out assigned to the project owner and
get assigned out when they're ready to be worked.

I will assign them in advance, so that they can plan their time and be ready when it gets to them. In addition, I will make them a watcher on the task just ahead of them. For example, I will make the Analyst a watcher on the "Create initial data product" Developer task. This way they will get notification when the previous task status changes to "In Progress", "In Verification"... etc. Also they will be notified about comments in the previous task.

I'm also considering setting them up where each subtask is a "blocker"
to the next subtask, it still shows as Open, though at least it has
links in the related section to the blocker/blocks tasks.

Yes, you can add a link and select the previous task and make it "is blocked by".

The best way to handle flows like this in JIRA is to use a Kanban board with a separate column for each stage of the process. Each column would have different responsible groups of people who might be responsible for that stage of the process, and for handing it off to the next person, or group of people who might perform a task. The person, upon completing their piece of the process would drag the item into the next column at least, and if they already know who will be responsible for it in the next column they can assign the task to them, or not, depending on the team's working agreements. You can also have the overall story assigned to a single person who is responsible for shepherding the story through the process and have the subtasks assigned to different contributors if you like. But one big thing the Kanban board does for you is that it provides a terrific visual for work in progress. You can sit down to a team meeting, all view the chanson board, and know within a few seconds if there is a bottleneck, because if there is one, one of the columns will be full of stories, and the one after it will have significantly fewer. Make sense?

My current plan is to create a single task, effectively a Story (though I don't think it's properly a Story, if I understand Stories properly).

Story != User Story. You can use a Story issuetype, or create your own. Don't get caught up in these minor semantics.

Then, create Subtasks to that Story/Task for each of the above tasks.

ONLY do this if each of the steps also goes through a sub-workflow involving more than just performing said task OR if the tasks can be completed out of order. Example: If each step such as "Pull Data from Database", also requires a verification/QA step, then sub-tasks will be what you are looking for.

If you are just looking for knowing if that person has done the task or not, have each of those tasks be a different step in your workflow. It will be less to manage and much easier to see the overall progress.

I'm not sure if the tasks should start out assigned to their eventual do-ers, or if they should start out assigned to the project owner.

Pretty minor point. If you have subtasks, assign them out ahead of time so people are aware of what's coming their way. If you have 1 story that goes through steps, you don't have to worry about this as whoever pulls/pushes the story will have to worry about it.

Is this not really doable in JIRA?

If I understand you correctly, this is very much doable in JIRA. Scrum boards and kanban boards do not define your process. You can still do scrum and run sprints on a JIRA Kanban board; it's all in how you set it up (I do that btw).