Tiny issue tracker Unreleased Smoke TestDate: 15 Feb 2018Author: Alexey S
Report Value: 100 %
Screenshot IScreenshot IIScreenshot III
Tiny Issue Tracker - Project Planning Done Smart Unreleased ReportDevices
Google Pixel XL 2, Android 8.1.0; Samsung Galaxy Note 4, Android 6.0.1
This app supposes to help project managers and teams to plan and organise their tasks. In my case, this is one of the apps where I can consider myself as a target audience. I do some project management at work and for my side projects as well.
My expectations are - to try a minimalistic ticket tracker, focused on the project planning.
Usually, I am doing it in the end but this time I had to start with Monkey stress testing. My first impression of this app regarding its quality was quite good. It is stable and I didn't notice any issues during the first view.
I started with the simple script
adb shell monkey -p eu.kamilsvoboda.tinyissuetracker -v --pct-syskeys 0 1000
Stress test results
- 10 runs with 1000 touches - PASS
- 10 runs with 3000 touches - PASS
The app has a lot of UI transactions and these results are very good in this case. I wanted to do a little bit more stress testing so I enabled Screen orientation change and started changing a screen orientation during the 3000 touches run.
In the and I got 2 unique crashes. Both of them a low priority and they might be related to bugs in different Android libs.
02-14 22:41:46.726 29466 29466 E AndroidRuntime: FATAL EXCEPTION: main 02-14 22:41:46.726 29466 29466 E AndroidRuntime: Process: eu.kamilsvoboda.tinyissuetracker, PID: 29466 02-14 22:41:46.726 29466 29466 E AndroidRuntime: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState 02-14 22:41:46.726 29466 29466 E AndroidRuntime: at android.support.v4.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:2044)
02-14 22:46:30.906 12056 12056 E AndroidRuntime: FATAL EXCEPTION: main 02-14 22:46:30.906 12056 12056 E AndroidRuntime: Process: eu.kamilsvoboda.tinyissuetracker, PID: 12056 02-14 22:46:30.906 12056 12056 E AndroidRuntime: java.lang.ClassCastException: android.widget.HeaderViewListAdapter cannot be cast to android.support.v7.view.menu.MenuAdapter 02-14 22:46:30.906 12056 12056 E AndroidRuntime: at android.support.v7.widget.MenuPopupWindow$MenuDropDownListView.onKeyDown(MenuPopupWindow.java:174)
Those crashes usually randomly happen on some devices with a very low frequency.
After that, I tried to find a use case for myself in this app. I really liked a couple of its features.
- Possibility to send a task to the Google keep.
- Offline access.
Besides that, I listed some requirements that I have to the project tracker. Some of them might be out of scope for this project but it worth mentioning.
- Access from the web. I work on mobile and on the laptop and I like to be able to sync my stuff between them.
- Easy status changes. After actual "planning", there is also a "working" stage which takes more time than planing itself. During this "working" part I would like to move tickets between "TODO - In Progress - Done" very quickly.
One of the ideas which come to my mind is if I can use this app for actual planning which I do offline sometimes in Google Keep or Evernote. In this case, I will need a possibility to easily sync task with my Trello board which I use for my side projects. But this is only my personal case which is a bit specific.
- [Low] Ads background has a different (white) colour from the app background (grey). This colour difference is visible when internet is off.
- [Medium UX] The Save task button is located behind the keyboard at the bottom. The user has to hide the keyboard before saving the project each time. It will be better to replace calendar icon with the save icon button. Calendar sharing is rarer action than saving and it can decrease an amount of user clicks from 2 (back + save) to 1 (save).
- [Out of scope] I was missing "In progress" tab instead of ideas tab. My understanding was that this app is focused on "Planning" mostly but I am not sure what is the full scope of this app and if "in progress" status is even necessary here. My confusion probably came from the app name - I was expecting to see a task tracking tool. As I mentioned earlier, if the scope is limited to the project planning, I would expect to have an integration with a task/bug tracking software. Otherwise, I would pay more attention on ticket statuses b/c status management will become the second most important activity after ticket creation / browsing.
- [Low] There is a drop-down icon displayed on the round icon near the task name on the tasks list view (Screenshot). This drop-down icon is not clickable and it duplicates a drop-down icon on the right.
- [Low] Loading animation (3 dots) overlays empty screen text descriptions sometimes. It would be better to place one of them above the other.
- [Low] There is a message on the login screen that account will be maintained by Google. It is not very clear what does it mean because it requires an email and password. If it is a reference to the Firebase, maybe it will be better to say Google Firebase explicitly. In this case adding a possibility to login with Google account would be a very good improvement.
- [Low] The user will see the same login form screen in case if he will try to switch account and login with the same account.
- [High] Instead of "Switch Account" I would like to have a possibility to log out. This is the case when I don't want to give someone an access to my tasks (to be able to give a phone to the kid for example).
- [Low] Coming back to the task management - task statuses are not exposed to project / task lists. I would like to have a possibility to have a quick overview of the task statuses in the list. (There is also a chance that I just missed this option but in this case it is hidden very well, I would also say that statuses should be exposed by default).
- [Out of scope] I would prefer to be able to change ticket status with only one click, currently it requires 4 starting from the tasks list.
- [Occurred once] App crashed after I tried to log in on the new device with an account which was created on the different device. I didn't try to reproduce it.
What did I test?
- App drawer menus
- Projects creation + text field limits
- Task creating + text field limits
- Task dropdowns
- Account creation
- Account login
- Premium features purchasing + unlocking
- Default view setting
- Documentation viewer and Markdown editor
- Screen orientation change
- No internet connection work
- Calendar event creation
All those things worked fine for me. This app is definitely worth trying. I like how it's done in general and the app idea is also good. If you never worked with planning tools or bug trackers before, this your chance to start.