Sprint 3 served as a continuation and deepening of the progress made in Sprint 2, with a clearer focus on finalizing core system transitions and significantly improving communication within our team. While Sprint 2 did not meet all of our productivity goals, it provided valuable insight into our workflow and highlighted areas for improvement. Those lessons helped us enter Sprint 3 better prepared, with more defined objectives and a more collaborative mindset.
In this sprint, we concentrated on three primary technical tasks. First, we transitioned the identification system from WSUID to UUID, which is a major improvement in terms of data consistency and security. Second, we continued modifying the backend endpoints to verify user authorization based on roles by utilizing access tokens. Third, we enhanced the RabbitMQ messaging system by adding a message block that includes the operation date, operation type, and guest object information. This change improves both tracking and reporting for system activities, which is essential for reporting purposes.
Work was divided evenly among team members, continuing our strength in distributing tasks effectively based on each person’s strengths and areas of focus. Sean and Hiercine worked closely together on refining backend logic, ensuring that endpoints were properly validating access tokens and enforcing functionality restrictions based on user roles. Lynn and Winston concentrated on updating every relevant system component to remove WSUID references and replace them with UUIDs, improving data security and system reliability. I focused on extending the RabbitMQ functionality, implementing the logic needed to include operation data in each message, which adds valuable structure to the reports
One of our ongoing strengths, which became even more evident during this sprint, was our collaboration. Despite having distinct tasks, we consistently looked for ways to assist one another. Whether it was through peer code reviews, giving advice, or helping debug issues, we embraced a team-oriented mindset. This aligns with the “Rubbing Elbows” pattern as working in close proximity and staying connected to one another’s progress. This type of collaboration helped us move faster, avoid duplicated effort, and maintain a shared understanding of the system as a whole.
However, we did face some obstacles. Certain tasks took longer than expected due to knowledge gaps, particularly as we learned to implement unfamiliar technologies. Additionally, our progress was partially blocked by dependencies on another team. We had to wait for them to finish implementing their check-role functionality, which was necessary for Sean and Hiercine’s role validation work and for me to complete the RabbitMQ enhancements. This highlighted the importance of coordination in multi-team environments.
Despite these delays, we remained in a strong position to complete the project successfully. If anything, Sprint 3 revealed the importance of proactive communication both within our own team and with external stakeholders like our professor or other teams. Increasing updates internally and with the professor might have reduced these blocks.
Overall, Sprint 3 reflected meaningful progress not just in terms of deliverables but also in our development as a team. We grew more confident, more skilled, and more collaborative, all of which are essential traits we’ll carry with us into our future work in the tech industry.
From the blog CS@Worcester – Giovanni Casiano – Software Development by Giovanni Casiano and used with permission of the author. All other rights reserved by the author.