Ever since I joined Spritle (1.5 years back) I started managing the projects as well as testing the applications. Here are my thoughts on experiences and lessons I learned while managing and delivering a Mobile apps project from our UK Client.
I participated in the entire lifecycle of the project from requirement gathering through Beta testing.
My Role here is to manage a small team of 2 developers and one tester and to co-ordinate with my client.
We maintained a transparency of what is happening with my team. I believed, this made things easier of updating everything about the project to the client and to complete the scope within the estimated time and budget.
We followed the below-mentioned routine on a daily basis:
1) Regular Standups: As a practice of agility, we, as a team, conducted regular stand-ups and discussed the tasks completed and the task to be done for the day.
Getting closer to the team and knowing their problems in the right time helps a team to take timely decisions.
2) Frequent Calls with the Client: We had a call with our client often whenever we need their inputs. The main thing to be appreciated is the continuous support and the guidance of the clients. They were very much interested in building their app and so whenever we got stuck with our development process, they will be responding instantly(most of the time) and respond to our questionnaires as early as possible. This made us to move along with the project and to meet the requirement of the client in a more friendly manner.
3) Minutes of Meetings: Whatever we speak in a call, we have a practice of writing it up in the form of “Minutes of Meeting” which becomes easier for us to track the CR’s and the tasks pending.
As we all believe, writings are more powerful than verbal communication. Sometimes, it plays as an evidence of tracking the requirement and change requests.
4) Client relationship management: Though all have been heard about customer relationship management, I am here using a different phrase for this blog. Yes, I believe in maintaining a good rapport with our client.
Once we remove the barrier between us and the Client, we are able to move closer to the client. Since our team was in a comfort zone with our client, our work made easier.
Out of all these activities, I personally gained domain knowledge to some extent which is mandatory for a management person or a QA person in whatever project they handle.
1. Project domain knowledge: I was working in the mobile app development and its all about betting against a player for football matches. To be honest, I am not a sport enthusiastic human. At the initial stage, I struggled to understand the features being covered. I started asking some silly questions regarding the game and the rules they follow.For instance, the score the team secured(HOME or the AWAY team) needs to be tracked at the backend and based on the algorithm, the leaderboard needs to be updated. This made me know about the app further and to think on different dimension along with my team. Finally, we delivered a product that matched exactly with the requirements.
2. App deployment management: Since we are building an app for both android and iOS users, I got some ideas of uploading the app in test fairy and test flight where an app can be hosted for Beta testers. Once we invite the users via such tools, we can use the app for internal testing.
3. The real play: The app is all about the football League matches as I already mentioned, we need to track the matches that are being scheduled for the season.
The team fetches the data from the back end and here everything is going to be live. We need to show the result of the live matches being conducted. In that way, we satisfied the client in the app performance.
4. Last minute deployment and its effects: Every time, when we deployed the app and upload the revised version, we faced difficulties in downloading the app. One major problem with us that we all work on the deployment almost at the end of the day which leads to late night works and delay in deployment. This is because, after every release, it worked fine for us but the client was facing difficulties even for downloading the app.Later, we realized, this is because of the UUID being wrongly added. We finally learned that we need to estimate the effort required for every deployment that we do.
Above all, the one we have learned as a team here for this project is the 80/20 Pareto principle. Hope everyone have come across this term as it’s applicable in every instance of life, particularly in management. It’s all about focusing on 80% of our time and energy to achieve 20% of our work that is really important. It insists us not just working smart but working smart on the right things.
To sum-up, I personally felt that I learn some good and mandatory stuff which everyone should follow in their Project management life cycle in order to deliver a quality product at right time.