teammates icon indicating copy to clipboard operation
teammates copied to clipboard

Runtime Refactoring and Improvements for TEAMMATES

Open Mad1232 opened this issue 7 months ago • 4 comments

Proposal: Runtime Refactoring and Improvements for TEAMMATES

Hi everyone!
My team and I are Software Engineering students from Iowa State University working on the TEAMMATES project as part of a class assignment. Our goal is to analyze and improve the runtime architecture of the TEAMMATES system in a meaningful way, focusing on CI/CD improvements, data quality, and observability.

We analyzed some backend workflows in the TEAMMATES system, including their runtime characteristics and potential areas for improvement. Below are some of the observations and proposed improvements for your consideration.


Data Quality

Observation

Feedback submission data sometimes lacks consistency due to incomplete validation checks. For example, certain edge cases (e.g., invalid email formats or duplicate entries) might not be effectively handled during data insertion.

Proposed Improvement

We propose introducing stricter validation logic to ensure data consistency. For example:

  • Add backend checks for valid email formats and realm consistency.
  • Deduplicate entries before inserting them into the database.

Observability

Observation

Currently, there is limited runtime monitoring for key performance metrics, such as query execution times or API response times. This lack of visibility makes it more difficult to identify and resolve runtime bottlenecks.

Proposed Improvement

We propose adding runtime monitoring for key operations by:

  • Integrating a logging framework (e.g., SLF4J or Log4j) to capture runtime metrics.
  • Adding monitoring for database query execution times and surfacing these metrics in logs.

CI/CD Improvements

Observation

In our analysis of the CI pipeline, we noticed that some GitHub Actions workflows take longer than expected due to redundant dependency installations or inefficient caching mechanisms.

Proposed Improvement

We propose optimizing the GitHub Actions workflow by:

  • Implementing better dependency caching to speed up builds.
  • Using matrix builds to parallelize test execution across multiple environments.

Next Steps

  • Community Feedback: We’d love to hear your thoughts on the proposed improvements and whether they align with the current roadmap for TEAMMATES.
  • Implementation Plan: Once we finalize the direction, we will work on implementing these improvements and submit a detailed pull request for review.
  • Testing and Validation: We will test the changes thoroughly and provide benchmarks to highlight the performance gains.

We are excited to contribute to TEAMMATES and look forward to collaborating with the maintainers and the community.
Thank you for considering our proposal!

Best regards,
Team 12
Iowa State University

Mad1232 avatar May 08 '25 21:05 Mad1232

Hi! Feel free to submit any issues related to bugs or improvements. Currently, we are focusing on the v9 migration from Datastore to Google Cloud PostgreSQL (including schema, data, tests, etc.). However, we’re still happy to review any of your PRs.

DhiraPT avatar Jun 05 '25 19:06 DhiraPT

Hi there ! my friend @AbdBoutchichi and I would like to contribute to this issue. If this one is available, we will be happy to work on it and be assign to it.

Day509 avatar Sep 15 '25 09:09 Day509

Hello, has this issue been solved yet? if not I have a solution ready. please assign me this issue kindly!

omarayman23 avatar Oct 21 '25 01:10 omarayman23

Hello, has this issue been solved yet? if not I have a solution ready. please assign me this issue kindly!

Hello, we still working on this issue

Day509 avatar Oct 21 '25 18:10 Day509