Part II of Cycle: Maintenance of Mobile Applications
This is the second part of the cycle about maintenance of mobile applications. In this publication, I’m going to focus on a few simple tricks available to every developer, i.e. it’s going to be about ideas, strong will and what is worth considering in the developer console in Google Play. Previous article.
I wanted to show that I really care. After all, it’s my application. So, how to do it? I started talking with, not only my friends playing this game - as their and my ideas provided the basis for the first version of the application, but also with other players. Where? At forums, in the social media, at stores during tournaments. Be creative while considering others opinion[/caption] I asked the same questions in various locations; how they hold tournaments, how an application that is helpful in a tournament should look like, and finally, what they think about my application. The feedback and advice allowed me to prepare a new plan, the so-called Mythical Version 2.0 of the application. The questions I asked allowed to both prepare a new backlog, which is still being supplemented and filled in, and to slowly beat the drum for my application :) I eagerly share such a mind-map with the app users, their opinion influences sorting out of priorities for the tasks.
Maintain and develop
It’s very important to update your app. It seems to me that it’s even more important than just launching your “child” on the market. Why? This tells the world that you are a good parent and take care of your kid’s development ;). In the beginning, during the first updates, my approach was more like: “I’ll make a few larger functionalities, and then release a new version of the app.” Updating an Android application is always something that may cause problems with time. I mean fragmentation - the users may have installed various versions of our app on their phones. There are at least few reasons for such a situation. The most common one is that auto-updating is not enabled. A less frequent reason is adding a new functionality by the developer, which is connected with using a new permit in the manifest. In my case, it was vibration of the device. In this case, the user must manually accept the update, since the user was asked to use something that the app has not required before.
Another reason may be the fact that the application was installed from an unknown source, for example it was sent by e-mail. Therefore, it’s worth thinking in advance about how the application (and its update) will be affected by the functionalities that we’re planning to add. Perhaps, some of them may be shifted to everyone's benefit. In the end, it’s better to reduce the number of permits with time (when a particular functionality is not needed any more) than add them in subsequent updates. Major updates are risky; therefore, they are released less frequently. What does it mean? If one of the new functionalities does not work properly, you need to return to the older version of the app resigning from the other improvements of the new version. They make smaller problems with the fragmentation. The users like when something’s going on with “their app” – the more often the better (at least this is what app downloads charts show in Google Play). Players are willing to open the program more often to see the new update. The application is more often downloaded a few days after the update :)
Please also note that Google Play itself is subject to continuous evolution and development. Please let me cite one of the more interesting stories that I was involved in. After updating to the new version, the app was blocked in the market. I found a new message in my e-mail box: “Notification from Google Play about...”. It turned out that one of the persons verifying the application considered that it breached the rights of the MTG brand. Therefore, if I wanted to see the app once more in the market, I had to improve the description of my application. Since then, I’ve received a message of this type several times. It is often sent some time after you update the description or an element. It seems to me that due to such an accumulation of apps in the Google Play store, verification of app’s update description is carried out once in a while. The transition to more frequent updates of both the app and the website in Google Play allowed me to increase the audience and number of active users - from 100 new users a month, the chart jumped by 150%, while the number of active users rose to 700 according to fabric.
A new target group
Personas are really important in creating an application. The new target group does not significantly differ from the previous one, these are still people addicted to “games played without electricity”. In this case, it does not matter what they play provided that they organize a tournament. The organizers of board game tournaments (owners of smaller stores or organizers of new product promotions), often use a piece of paper or a tablet as an aid to conducting a tournament. In such a case, the tournaments consist of games between 8 and 32 people, so there is a good chance of “misrepresentation” or the so-called human error. A typical player is a male aged between 16 and 35, which means that he has quite a broad knowledge of new technologies. Tournaments in different games are held every day of the week, which makes the app used every day, with a greater intensity at weekends.
Opinions are most important thing when creating roadmap.
Your approach to feedback
The market shows many approaches of app owners to user comments, the most common include:
- No response to feedback (the so-called ignoring mode)
- Thanks for a positive comment and ignoring the needs of the user (the so-called 1-3 stars)
- A generic response to every comment
- Asking for more information in case of an error
- Individual approach to every comment - thanks, asking about details
I do not recommend the first two approaches. At best, it indicates that we are not thinking about our audience at all. At worst, it indicates that we’ve left our app at the mercy of “time”. No response to user’s problem brings user’s negative opinion of the application. Such feelings and opinions result in a reduced number of app downloads. As far as the other three approaches are concerned, I leave them to your own consideration. I, on my part, apply a proactive approach if possible, which does not always bring good results. Thanks to communication with the app users, we can change their attitude to the product, in this case, make them change the app rating given earlier.
The customer is always right
Regular updates resulted in an increased number of downloads and comments, which started to be more diversified. Some examples of comments in Google Play:
- “This looks good on the surface but when I used it for an 8 man draft it matched up two players in two consecutive rounds. All on the last round which screwed up our draft pairings and results.”
- “Crashed constantly I have a Samsung s5neo and this app wouldn't stay running for more than 30 minutes. It crashed every single time I used it.”
- “Easy to start a draft, cool app”
- “I love this app. Its small, it's simple and it's free. Great for my casual drafting adventures. I would like to see if down the track it would be possible to save results for a league from week to week, or perhaps share them or export via email, as I'm sure my draft buddies would like to be able to look at their results as well as me.”
The way to address the first problem needs more than just writing a larger number of unit tests. It requires a closer look at the problem of matching competitors during a round once again to avoid pairing them with each other for more than once. I solved this issue by modifying the algorithm for selecting competitors and added a new functionality. Previously, the tournament organizer could have chosen any number of rounds before the game, but if there are as many as rounds as the players, then it is certain two players will be are paired once again. Therefore, I added a new pairing mode for players, the so-called Swiss system pairing. In this mode, the user enters the players and the number of rounds is chosen on this basis. It eliminates the repeated pairing.
The second problem belongs to my favorite category: “It works for me”. In the app development phase, I used crashlytics to distribute the app (and inform me about the errors). In the production phase, I resigned from it - I decided that the developer console is enough - after all, they had an appropriate section ;) Until recently, the developer console has informed about problems in the app, but only if the users have consented to send a report. Therefore, I had incomplete information - which means that I lived in a state of blissful ignorance. I added crashlytics to the program again. It allowed me to collect fuller information, as it turned out that the app doesn’t always work properly and I had a new job for long evenings :)
Google Play is developing by the day, an interesting functionality has been introduced recently. The user no longer needs to give consent for sending a report each time something is wrong with the app. Currently, such information is sent in the background. Even so, it seems to me that the tool dedicated to collecting errors is better. The last information is what I like. It does not only bring a praise for the developer, but also a new functionality. The vision of the user allows to look more broadly at user’s needs, and when the arguments prevail, to implement a new solution in the next release. Users’ comments are very important because they present users’ individual point of view. They tell how the players use the app or they tell about users’ “vision”. I must admit that I made a mistake (not just once) when I was communicating with the users. What was the mistake? It seems to me that I scared them off with my proactive approach (I was ahead of the game), or simply intimidated them. I answered every comment, I tried to get to the bottom of the matter in the comments from users - especially if it could bring “something” to the application. I treated them as co-owners of the application, but it seems to me that my approach deterred most of them. Only few of the users have shown me their vision and ideas, which they would like me to introduce/add to the application.
Take a breath
It is always good to have distance to the comments. It is unfortunate, but a user would sooner write a negative comment than a positive one. A very large percentage of ratings with four or five stars does not have any comments. Sometimes it happens that a user will simply give 1 star not commenting it. It’s obvious that at the beginning every rating will have a considerable impact on the popularity of the application. With time, however, the average rating of the application will clarify at a certain “stable” level - please remember the Gaussian curve.
Apart from comments in Google Play, it’s worth asking for feedback otherwise, for example: I started by creating a survey with questions concerning the application. In my case, it was not a bullseye, because the response was in fact very scarce. Why did this happen? The survey was not placed directly in the application, but in the product description at the store. Further, the application I offer is entirely free and therefore I cannot offer the users the premium account for a limited time or any other motivating function (a carrot) - I just rely on the willingness and goodwill of the users. In one of the updates, I added an “Idea box” option in the app. It seemed to me that the idea is similar to the previous approach - filling in the survey. It turned out, however, that the idea took hold - the users are writing about their doubts or ideas by e-mail. But what exactly? Why I have not won, as I should have won, about problems with UI or about completely new functionalities. In the case of e-mail communication, the users, aka end-customers, do not feel “hounded” by additional questions, on the contrary, they perceive this type of communication differently - more favorably.
What comes next?
In this second part I gathered a few tips, which in my opinion will be useful to any developer. This information is not entirely new - these are things that all of us have in mind, but sometimes forget about them. In the next part of the article I’m going to write about a subject that is quite hard for me - marketing and promotion of mobile apps.