Mirabito CS Pt.2 - Dogukan Atakur; Emre Demir; Mert Vural; Samet Genc;
Week 1 02/14/2025
Attendance: Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL, Samet GENC
Summary:
This week, we focused on implementing middleware for error handling and request-response logging to enhance API robustness. We refined API integration between Conexxus and RLM, ensuring alignment with openapi.json specifications. Additionally, we structured the JSON-to-XML translator for seamless data conversion and prepared responses for the senior meeting, covering Conexxus-RLM differences and the translator's implementation strategy.
Accomplishments:
- Created middleware for global exception handling and request-response logging.
- `FluentValidator` integration in applicatoin layer.
- Proposed an implementation plan for the `JsonToXmlTranslator` to handle Conexxus JSON to RLM XML conversions.
- Implemented schema validation and transformation logic in the translator engine.
- Designed and documented the component diagram for the translator engine.
- Initiated `TranslatorEngineTests.cs` for unit testing.
To-Do:
- Create a SQL database for further testing and data persistence
- Set scope/plan to complete implementation of Json-to-XML translator
Week 2 02/19/2025
Attendance: Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL, Samet GENC
Summary:
This week, we focused on constructing the scope document for a JSON-XML translator that will reside at the presentation layer of our .NET API as dedicated middleware. This translator is designed to bridge our legacy XML system with the new domain objects seamlessly. In parallel, we conducted detailed research on recommendation systems, exploring best practices and evaluating various algorithms and approaches for the training phase.
Accomplishments:
- Conducted in-depth research on recommendation systems, covering collaborative filtering, content-based approaches, and sequential modeling.
- Documented key insights and potential pipeline structures for the recommendation engine.
- Prepared initial presentation materials detailing integration and recommendation engine strategies.
To-Do:
- Refine the integration details between the legacy XML system and new domain objects.
- Develop an initial prototype for the JSON-XML translator for provided RLM message (auth method).
- Begin proof-of-concept implementation for the selected recommendation algorithms.
- Create a MSSQL database for further testing and data persistence
- Schedule a review meeting to discuss recommendation research findings and next steps on translator middleware and persistence layer setup.
Week 3 02/26/2025
Attendance: Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL, Samet GENC
Summary:
This week, we received a small sample dataset from Denis’s email and used it to explore potential loyalty-related patterns (e.g., coffee often paired with breakfast sandwiches). Based on these insights, we continued consolidating our findings on recommendation systems and began mapping out the integration into our existing .NET solution. We divided tasks among team members to streamline development and reorganized the codebase to accommodate upcoming recommendation modules (collaborative filtering, content-based filtering, and contextual sequence learning).
Accomplishments:
- Analyzed the provided sample dataset to identify key fields (SKU, price, LoyaltyCardIdentifier) and observed purchase patterns.
- Finalized research on three main recommendation algorithms: collaborative filtering, content-based filtering, and contextual sequence modeling.
- Assigned specific responsibilities to each team member.
To-Do:
- Validate the data pipeline flow, ensuring each recommendation approach has proper access to the transaction data.
- Develop proof-of-concept implementations for each recommendation approach.
- Schedule a mid-sprint review to demo the partial recommendation functionality and gather feedback.
Week 4 03/05/2025
Attendance: Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL, Samet GENC
Summary:
This week, we put a lot of work on recommendation engine proof-of-concept work by working on our data pipeline and feature engineering. We calculated RFM metrics and derived composite ratings from one month of transaction data, which were used to train a collaborative filtering model (using LightFM). We also implemented cosine similarity–based functions to identify similar users and generate product recommendations. In parallel, we initiated association rule mining and transitioned from Apriori to FP-Growth for efficiency on our sparse data, finding out promising multi-item combinations. These combined approaches lay the base/groundwork for a hybrid recommendation system that leverages both personalized CF signals and basket-level association rules.
Accomplishments:
- Created a new repository for Recommendation Engine under the MirabitoDevs Conexxus-Loyalty-Dev2024 in Bitbucket
- Cleaned and aggregated transaction data; computed RFM metrics and composite ratings.
- Developed functions for identifying similar users (using cosine similarity) and recommending products.
- Generated and evaluated association rules (support, confidence, lift) to capture key product combinations.
- Documented how CF and rule mining can be blended into a hybrid candidate generation pipeline for robust recommendations.
To-Do:
- Optimize and tune model hyperparameters based on offline evaluation (precision@K, recall@K) and search on more meaningful evaluation ways for our domain/context.
- Continue developing more proof-of-concept implementations for different training approaches.
- Update documentation and schedule a review meeting to align on next steps.