Today we are introducing a preview of a new feature in Acunote - issue tracking. The functionality is not yet complete, but we making it available as an alpha release to get your impressions and suggestions as early as possible.
What is Issue Tracking in Acunote?
An issue in a bugtracker is a piece of work that needs to be resolved. Bug trackers let you capture all the artifacts related to this work, track and manage state transitions, query and analyze all past and future work. As an advanced project management tool, Acunote could do much of this already. It just lacked functionality to support issuetracker view onto the data that was already in the system.
Project management is about planning and tracking work. Within this world-view, it makes sense to treat sprints/iterations/project plans as a top-level object, and view individual units of work (tasks) within this context. Issue tracking views individual units of work (bugs/issues/tasks) as top-level objects, and lets you work with them with no regard for scheduling. Rather than relying on predetermined iterations for lists of issues, issue tracker lets you dynamically query for relevant subsets of issues.
No matter how you track it, the work that needs to be done does not change. You want to be able to keep track of everything associated with this work, as the issue tracker lets you, and you want to be able to schedule this work, as project management software lets you. Acunote now supports both approaches, with a no-compromises implementation on which we insist.
Much of the hard work was already done for multi-sprint tasks which made tasks into first class entities, and added explicit task numbers. Issue tracking now lets you treat these first class tasks as issues, query them, and create issues without having to assign them to sprints. The datamodel lets us keep the system remains DRY, with one task/issue for each unit of work. In addition task/issue details view has been enhanced, and supports all the operations previously only possible from the task list view in a sprint.
The system is notable for what it lacks -- restrictions and fuss. You can schedule an issue to one sprint, to multiple sprints or to no sprints at all. Each sprint can have it's own hierarchy, and you can evolve the hierarchies in agile fashion without losing past data. You can create issues/tasks from the project management side (nothing has changed there), and they will now also be accessible through issue tracking interface. You can create issues/tasks from the Issue page, and later assign them to sprints. You can update tasks/issue from sprint, issue list, and task/issue details page with a consistent interface.
A small note on terms. We use words "task" and "issue" interchangeably, e.g. "task 1234" means the same thing as "issue 1234", because they are the same thing. We tend to prefer "task" in the context of project management, and "issue" in the context of issue tracking.
What Functionality is New?
- new Issues tab
- issues list with pagination, in-place editing and keyboard shortcuts
- issues filtering with a custom search language
- task details page enhancements
- soft-deletion of issues
We added Issues tab which shows all tasks in Acunote as issues and provides the usual bugtracker-like management interface for them.
Creation and modification is the same good old in-place creation and modification you know from the task list. There's an interface to tag/untag issues, and a new interface to assign selected issues to sprints.
You can filter issues using a powerful search/filtering language. For example, to search for unresolved issues created by user Joe and owned by user Kate which have word "screenshot" somewhere in description you'd search for:
screenshot status: "Not Started" OR status: "In Progress" creator: Joe owner: Kate
If you ever used advanced search features of Google Search or Gmail you'll notice the similarity. It's essentially the same language extended with Acunote-specific operators. We added a search and filtering language help section describing this in detail. You'll find a link to the help section near the search box on Issues page.
As mentioned above, issue details view has been enhanced, and supports in-place issue editing, tag operations, sprint assignment operations previously only possible from the task list view in a sprint. This was a common enhancement request, and we are happy to deliver.
Future work
While immediately useful, the issue tracking functionality is still in "alpha." We advise not to rely on it for everyday use just yet. We kindly ask you to give it a try and tell us what you think. User feedback is essential to us, so we are making this available as early as possible to get it. We are continuing to extend issue tracking, and will be deploying new functionality as it becomes available.