Our client is a large European logistics company that delivers small to medium-sized parcels. They’re currently present in 23 European countries and process over 5 million parcels every day.
Our client came to us almost 5 years ago to develop two native customer-facing applications for Android and iOS. Their main focus was on parcel tracking and management.
Along with mobile development, we also worked on our client’s website and made both web and mobile platforms complete each other. After the website and both mobile applications were released, we shifted our focus to maintaining the platform.
Our maintenance and support activities included:
- bug fixing
- updating third-party libraries
- OS updates
- XCode and Android Studio updates
- adapting for new app market rules and regulations
- adding new features
- regular code refactoring
- testing of new features and updates
- maintain the stability and high performance of mobile apps
- gather and address the user feedback
- update all vital parts of the code including libraries
- make sure our changes don’t affect the rest of the code
- implement new minor features by our client’s request
- keep the mobile applications relevant to the users by doing regular minor redesigns
Maintenance process and results
The maintenance of such a large project took our team 140 hours per month. The backend was handled by our client’s in-house team, so our web, Android and iOS developers took care of the client apps.
We fixed any upcoming issues by addressing feedback from our users — each time our team saw a review from a user with an issue, we immediately created a ticket for our developers and QA specialists.
Our specialists also monitored data in Crashlytics for both Android and iOS apps to locate issues and fix them as soon as possible.
The product owner also took part in the maintenance process: we synchronized daily and had constant communication with the stakeholders in order to prioritize our maintenance activities.
We took proactive steps in maintenance and planned regular updates of libraries, as well as performed code refactoring for separate modules. This would ensure the system’s high performance and maintainability in the future.
Along with the technical maintenance activities, we also performed minor redesigns of the UI of both mobile applications and a website, so our client could offer a unified experience across all platforms.
Apart from a regular scope of maintenance activities, we also managed to include the development activities like:
- setting up notifications
- adding Facebook to the social login
- removing features that lost their value for business
As developers fixed issues and integrated new features into the applications, our QA team performed testing that included:
- smoke testing
- high-level testing
- functional testing
- regression testing
The maintenance and support team for this project comprised:
- A native iOS developer
- A native Android developer
- A project manager
- A quality assurance specialist
Main maintenance activities of the project
There’s no perfect code, and issues may appear with changes in third-party integrations or with new devices. We gather feedback and do regular testing to quickly identify and fix anything that comes up
Library and OS updates
Libraries and operating systems change regularly, and these changes need to be reflected in our client’s product as well
We refactor separate parts of our client’s logistics platform to make the code maintainable and easy to work with in the future.
Each change we make to our client’s product is accompanied by a series of tests to ensure the integrity and quality of the code.