epfl-SDP/android

View on GitHub
wiki/Sprint-6.md

Summary

Maintainability
Test Coverage
# Sprint 6
## Summary
This sprint was overwhelming and more challenging than expected for all of us, but it was nice to take on the challenge to test our capabilities as a group. 

The majority of our user stories were implemented in this sprint and the work and effort that everyone has put into their tasks is definitely one to be proud of. It was therefore great to have a significant increase in our feature additions during this sprint.

The team that was working on the tournament had to have several additional meetings to coordinate and distribute the work amongst them and did a great job doing so.

One potential improvement we could have made is to have a slightly better workload distribution and eliminate further low-priority tasks to make more room for the tournament’s ones.

## Lars Barmettler
This two-week I committed a bit more time on the SDP project than usual. The extra work that was been given from the TA’s made us to prioritize some tasks. Thus, I was required to finish some tasks as fast as possible to help the development of the tournament. Since it took some review cycles until my task has been merged, I worked parallel on multiple branches until eventually everything got merged. The work in the team was very good and we needed to interact a bit more than usually to lift the extra work. Especially on Thursday evening a smaller group worked a bit longer to get the tournament into a presentable state.

## Matthieu Burguburu
This sprint was quite packed, in part due to the "destabilization task" which took a lot more time than first anticipated. My tasks were divided between the two weeks of the sprint. During the first week, I had to completely finish the Puzzle feature which was barely started from the previous sprint. I managed to get everything done by the first weekend, but reviews were really slow due to everyone having little time to do them. I thus started my tasks for the second week even though my PRs were not yet reviewed. During the second week, I had to implement the State for some parts of the Tournament feature, notably the "Create new tournament dialog". Once I was done with this, we had to work in peer coding sessions to implement the last part of the tournament screens state since it was not really dividable between several people without generating many merge conflicts.

All in all, despite the increased workload I would say this sprint went really well and we were able to ship a big amount of features while keeping the code quality we are used to.

## Chau Ying Kot
This week is the destabilisation week, and we split the team into 2 groups, one group implement the destabilisation task and the other one carry on with the “old” features. I was in the second group and my task was to carry on with the speech recogniser and the goal is to be able to play the blindfold chess at the end of the sprint. 

It wasn’t an easy task and I encounter some problems. Some that I can't resolve because it’s related to the recogniser itself, some that I can't resolve myself and need other people help. 

I pass some few time with Alexandre and Matthieu to refactor some code that we need in our features. In parallel, I work on my feature and tried to split my tasks into the smallest tasks possible and make sure that I can smoothly and quickly connect my code with the refactoring that we are working on.



Despite the problem encounter, I’m happy with my workflow. I was able to work fast once the problems are resolved. 



The only bad thing in this sprint is the quality of the speech recogniser, which is worse than what I expected. I did some research to improve it, but the solutions aren’t really satisfying and will take too much time to be implemented in time.

## Fouad Mahmoud (Scrum Master)
I wanted to have an eventful scrum master experience and I was definitely not underwhelmed. Besides the destabilisation sprint’s tasks that had my team and I fully rearrange our previous sprint plan by eliminating the non-visual and low priority tasks to make room for the destabilisation ones, I had to facilitate the communication amongst members of the group and make sure each member had a clear understanding of their assigned tasks to not perform those of others by accident which was a minor previous problem. I also managed to lead to agreements amongst members of the group by highlighting the sprint’s end goal. 

Besides my scrum master tasks, my sprint tasks turned out to be a little heavier than expected. I had to work a few extra hours to finish them. Being in the sixth sprint and knowing each group member’s capabilities and areas of strength made it easier to reassign some members some tasks that were too long or difficult to be finished by others and have everyone focus on their strong areas.

Overall, I enjoyed being scrum master for this sprint, but a few things I would do differently in the future if I could would be to further recommend assigning more group members on the destabilisation tasks to have them finished quicker, while still keeping others working on our most important initial features, allowing me to also have my pull requests merged faster.

## Alexandre Piveteau
My tasks for this sprint consisted in integrating the speech recognizer with our app architecture (and make it testable), designing the UI for the tournaments feature, as well as implementing it and binding it to the application state.

During the first week, I finished integrating the speech recognizer, helped fix some issues with AR and its integration with Compose, refactored some of our viewmodels and designed all the Figma mockups for the tournaments feature. I also started implementing the UI of the contest feature, and finished this task at the beginning of the second week. Afterwards, I did some additional refactorings, added support for transactions to our Firestore test infrastructure, and helped some teammates with some of their tasks. Finally, alongside with Matthieu, Lars and Fouad, I implemented the stateful logic for the tournaments feature.

Overall, the sprint turned out to be slightly more demanding than we first thought, but we were able to finish a lot of nice features which work well with each other.

## Mohamed Badr Taddist
The sprint went well in general. The scrum master did a good job coordinating between members. Demo feature part of the speech recognizer for my part was not implemented in a way that was testable. So for the sake of saving time it has been refactored by Alexandre and then carried by Chau for this sprint. My time estimates were good for two of the tasks. The third was off as it is still in production.