Self-evaluation
As I developed this project by myself, I was responsible for all the aspects of every stage of the process.
Strenghts
- Delivery of a product: I managed the entire lifecycle of the project, involving setting up the Android environment, implementing the core features, and integrating Firebase for backend services such as user authentication and data storage.
- Complete and workable features: The main features of the product were implemented and reached their scope. This includes event creation, editing and deletion, account creation and Firebase authentication.
- Firebase integration: The process for integrating Firebase for both storage and user authentication was successful, and it greatly simplified the backend requirements.
- CI/CD pipeline implementation: I set up a CI/CD workflow using GitHub Actions, which ensures that the app is automatically built, tested, and released to GitHub.
- Experience: Completing the project by myself, going through all the stages and working on the different levels of the app made me acquire a lot of experience in all of these fields. I had to learn or develope some of my knowledge and it strenghtened my view of the process of creating an app.
Weaknesses
- Limited features: While the app achieved its scope, there are still a lot more features that could be implemented. UI could also be improved.
- Lack of testing: Even though a suite of tests was implemented, the project could benefit from more comprehensive unit and UI testing.
- Limited collaboration: While working alone allowed for complete control over the project and personal time management, it also limited the opportunity for collaboration. Working with others could have introduced more perspectives, increased the speed of the project and improved the app’s overall quality.