Gentlemenís Set for a Mobile Project
In the development process and in providing support to any project, you have to deal with the same global tasks:
- Ensure an acceptable quality of the product
- Maintain a high pace of development
- Ensure operability of applications on most mobile devices
- Analyze and log user actions in applications
To solve these tasks, there are relevant processes and procedures, but an important role is played by the tools that can help you solve problems. Consider the following ones.
Ensure an acceptable quality of product:
This task can be solved by:
- Implementing the Continuous Integration procedure;
- Bug tracking with crash catchers;
- Instant response to changes Ė distributing applications to testers and users.
- Always ďfreshĒ builds Ė the projectís current state;
- In case of integration and unit tests Ė understanding what was ďneutralizedĒ, when, and by whom; without tiresome rebuilds in the journey from commit to commit in the version control.
I think itís better to use a cloud-based CI solution integrated with your version control system. Thus you can save a lot of time on its iteration. Most version control providers offer out-of-the-box solutions and bundles.
Crash Catchers and Build Distributors
In the world of mobile app development you can find a huge number of tools to catch errors and bugs in mobile applications and report them to the developers. Neither testers nor users will have to waste time to log and reproduce a bug Ė a bug report will be generated and sent out automatically. Crash catching is not a rare function; you can find such functionality in both analytics collection libraries and in more complex services described below.
Maintain a high pace of development
It is very important to ensure that the team is completely involved in the development process. All people who work on an application release should get access to its latest version. For that, you can use various services to distribute private builds Ė just integrate one of them into your project:
Ensure operability of applications on most mobile devices
The market offers a huge amount of mobile phones for many countries in the world, which may use different Android versions. And sometimes it is necessary to test an application on different devices: with larger or smaller screens, new or old OS version, etc. To do that, you donít need to buy a lot of mobile devices Ė you can use some of the following services:
Analyze and log user actions in applications
Sometimes, the crash catcher will not be able to find an error in an application, then you can use analytic services to log the userís actions through your own subsystem Ė the history of the userís actions or events in the application, and send it to a server. This approach can save a lot of time for debugging and troubleshooting.
I can say that I have seen all the above-mentioned approaches applied only in a few projects. And they were projects with the highest pace of development and level of quality. Let innovations into your project, and you will have much more time to improve the product, not to maintain its life cycle.