I cannot create any sub tasks for a given task/user story in my current Jira version. However, I am struggling to identify whether I am missing any functionality that cannot be achieved by creating an epic and issues assigned to it. Is it a good practice to use sub tasks at all? What would be a good use case?
If I get your problem correctly, your struggle is about how to effectively break down work.
As you explained, you could either work mainly with User Stories and break them own into sub-tasks OR work mainly with Epics and break them down into User Stories.
Would any of them work as a means if we simplify the underling problem to "see the problem and the pieces within" either using US broken down to sub-tasks or Epics broken down to US? Being pragmatic, Yes, both approaches would work. Would each approach have pros and cons? Definitely.
Before going further, let's explore your side-question:
Is it a good practice to use sub-tasks at all? What would be a good use case?
Well, it depends.
Let's first align a few common aspects of a sub-task:
- Are small
- Do not deliver value by itself
- Are oftentimes used as a means to assign "parts" to different people and to break down problems into different activities
The decision on whether sub-tasks are required or not should be taken by the team working on them. I personally avoid using sub-tasks and always suggest the teams I work with to avoid them. I've observed that having sub-tasks create a task oriented mindset and oftentimes lead the team to forget what's the purpose of the work. Not having sub-tasks enforces the need to think what this piece of work needs to deliver value instead of blindly follow a to-do list (and this could be worse... if the list was created by someone else, for instance).
The only exception for my personal rule is when the team is not mature enough and could benefit from this structure. Thus, I believe sub-tasks are a form of training wheels more than anything else.
There's also some extreme cases I've observed (but never worked directly with) where the sub-task work is used for billing reasons (such as the hours logged into a sub-task). Definitely an exception.
Epics, on the other hand, have a much more fuzzy definition. The purest agile concept of it is that an Epic is simply a large user story. Atlassian concept differs a bit, and SAFe differs... well, a lot.
Why does it all matter?
You're defining how your project will be structured. It's implied that you expect your team to grow over time. And if you don't use common concepts, the longer your project grow, the harder will be to change the mindset of the people around and the harder will be for new joiners to grasp your project structure (increasing cognitive load and dilating onboarding times).
Based on the above, you and your team must take the decisions on how you'd like to structure your project.
Stick to market standards
- Use User Stories as you're already doing
- Discuss whether you need sub-tasks or not
- If (really) needed, enable sub-tasks in your Jira instance (you'll need to ask for admin to do it)
Think of Epics as large pieces of functionality, stories as a customer facing breakdown of that epic and subtasks as a technical checklist of things needed to achieve the story.
Have a quick read of this - Stories, epics, and initiatives
Hope that helps.