Meeting Minutes - Om-Sevak/ClubHub GitHub Wiki

React Renegades Meeting Minutes

Project: ClubHUB


April 8, 2024, 4:30pm-6:00pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Meshvi, Om

TL; DR – Reviewed work needed completed for Sprint 4, including final deliverables. Came up with TODO and prioritized certain things.

  • Went over all 5 final deliverables, highlighting their progress
  • Created TODO and assigned work to people:
    • Security Testing/Commenting (Meshvi)
    • Load Testing/Docker Fix (Itay)
    • Fix Major Bugs/Side tasks (Om)
    • Event/Posts Unit Tests (Eyal)
    • Document, signficant refactoring (Simon)
  • Everyone will refactor and comment everywhere
  • First thing in individual list is the priority
  • Final Release Plan will be worked on tomorrow prior to due date given everything should be done by then
  • Went over Github projects tasks to elaborate on TODO and incase anyone needed filler work
  • Decided against concurrency validation that is apparent on the front-end. Too much work for a very specific edge case.
  • Last meeting!

April 1, 2024, 4:30pm-5:45pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Meshvi, Om

TL; DR – Reviewed work needed for Sprint 4, including final deliverables. Came up with convention for header commets on files and API endpoints

  • Went over all 5 final deliverables, highlighting their progress (done, not started or in progress)
  • Decided that the Project Release Doc will be completed closer to the due date of Sprint 4
  • Came up with convention for File headers. This will be found on Project Convention Doc on the wiki
  • Came up with convention for API endpoints. This will be found on Project Convention Doc on the wiki
  • Reviewed Github Project and aimed to have some things completed for Friday: namely back/cancel button consistency, bug fixes, routing changes, background changes
  • Developers are expected to begin adding comments to pages they are familiar with
  • For the Back/Cancel button changes, need to make it consistent across pages and needs to be added to Edit Club, Create Club, Edit Post
  • The reason for adding this, is for requests that are invalid due to concurrency can be cancelled (save button will be greyed out and user will be forced back on bad concurrency request)
  • Load testing and Security scanning will be done by end of sprint 4 (likely over the weekend)
  • Will have a meeting on Friday to finalize Sprint 4. Most developement should be near completion by Friday (Load Testing, Security Scanning, Release Doc are not considered development)

March 27, 2024, 4:30pm-10:00pm CT (Scheduled Meeting – MS Teams)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Iterated over presentation slides, practices presentation, bug fixes

  • Went over presentation slides, adding and removing stuff as a group
  • Did an intial practice which ended up being quite long. We cut down a few parts, namely the remarks section, the elvator pitch and removed a development question
  • Spent a lot of time on the remarks section, difficult to fine the "right words"
  • Another practice was done, with a much better time. Slides need a bit more refining, but that will be done tomorrow before the presentation
  • Worked on some bugs that needed to be worked on. Namely the events page wasn't formatted correctly, and long club names interacted poorly on all cards (clubs, posts, events)
  • Looked at various solutions for the name clipping problem. Will require more work in the future

March 25, 2024, 4:30pm-6:00pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Reviewed need for variable naming structure, planned the presentation for Thursday

  • Simon suggested a variable naming convention. Most code already followed this convention, but "writing it stone" would add clarity. Other group members vetoed the suggestion, citing that it would likely be more work than needed
  • Final presentation is scheduled for Thursday of this week. Meshvi takes the lead on design the presentation as well as being lead presenter
  • Discussed titles for each group member (spent way too much time on this)
    • Meshvi: MERN Maestro, worked on club page and acceptance testing, presentations
    • Itay: DD (Docker Dude), worked on Docker, integration testing, clubs/posts/interests api
    • Eyal: Full Stack Ninja, worked on Events, front and back-end, club page
    • Simon: CSS Wizard, worked on homepage, back end for interests, header, session stuff
    • Om: Azure Astronaut, worked on Azure, image uploading, auth and find a club
  • For the demo we need to review:
    • Home Page
    • Club Page
    • Logging in/registration
    • Find a club
    • Create club
    • Posts
    • Clubs/Events
    • Admin vs. guest vs. user on club page
  • Planned a need for live data: this would involve clearing the database, then every person will add 10 clubs, and 10 events and 10 posts across those 10 clubs
  • Reviewed the developement discussion section. Decided to explore the following questions:
    • Design Iteration? (Meshvi)
    • What went right? (Meshvi)
    • What was challenging? (Simon)
    • What would we do if we started over? (Eyal)
    • What took the most time? (Om)
    • What took the least amount of time? (Itay)
  • We will add info to communal presentation document which will act as a semi script
  • Will meed on Wednesday, by then data should be added and slides created. Meshvi will record the demo after that meeting
  • Simon will create a formatting document
  • Drugs are bad

March 18, 2024, 4:30pm-5:30pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Itay

TL; DR – Planned Sprint 4. review needs for the sprint as well as bugs that have been found. Reviewed needs for concurrency feature

  • Planned 6 things to do for Sprint 4: Fix Bugs (everyone), Concurrency for editing (Simon), Load testing (Itay), Security Scanning (not assigned), Refactoring (everyone), presentation (probably Meshvi)
  • For concurrency, it only really matters for the club edit pages. We plan to implement some sort of timeout feature where you select the edit and the server locks the edit and waits for a specific period of time
  • Another idea is to pass a hashed timestamp to the user, which is then returned to the server upon edit request. Using optimal locking, we only edit records that the timestamp match to
  • Established need for coding conventions: Naming for API, CSS naming conventions, Page vs. Components, Function Naming, Comments, Header comment on all .js/.jsx files, API endpoint header comment as well as file structure naming convention
  • Reviewed some refactoring ideas
  • Reviewed some bugs that need to be resolved, namely related to z-index, toasts, docker and padding. Some new features may need to be implemented for ease of design
  • Simon suggested posters be opened in a new tab instead of current one, allowing user to not lose current navigational progress

March 11, 2024, 4:30pm-6:00pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Debugging, worked on Git, design changes for posters and planned TODO for the remaining of the Sprint as well as planned Acceptance tests

  • Debugging some formatting of card components
  • Debugged problematic URL in Azure
  • Helped Meshvi with problems in divergent branches. Done by scapping and replacing stale branches. Changes saved locally in stack and commits cherry picked
  • Reviewed work needed for dynamic screen management
  • Came up with new design for posts: A poster button now exits on the posts and will link to a poster image. Om came up with this excellent design decision
  • Came up with a TODO list for tomorrows sprint 3 due date:
    • Simon will continue work on Homepage and Unit tests
    • Om will work on bugs, the editig icon and Find a Club page and Clubs pages
    • Meshvi will work on Club page and Acceptance testing
    • Itay will work on Posts and integration tests
    • Eyal will work on Events and Club Page
  • Acceptance tests will be sorted by core feature, then user story. Will use pictures and manually be done on doc

March 6, 2024, 4:30pm-6:00pm CT (Scheduled Meeting – Discord)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Poished presentation, practiced presentation, reviewed image uploading

  • Reviewed presentation created by Meshvi
  • Edited slides to be more concise and have more visuals
  • Added some visual queues to some slides
  • Did a practice run through of the slides, resulting in a time of 13:45 (MM:SS)
  • Cut back on a few slides that were either redundant or not applicable to a technical seminar
  • Meshvi may edit the slides further before our presentation tomorrow
  • Discussed evaluation of the presentations
  • Reviewed some of the content in other groups presentations yesterday
  • Reviewed a PR by Om to add image uploading to the app
    • Simon provided some feedback on logging, and had some questions on implementation design, but ultimately approved the PR
  • Eyal went over the confirmation/cancel toast with Om, and they thought of some ways to modify it to just be an aknowledgement toast
  • Went over some of the new work added to the GitHub project, namely dev tasks related to TA feedback from our meeting with them

March 4, 2024, 4:30pm-6:00pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Intial draft of presentation, back-end handling of interests for user, reviewed TA feedback

  • Meshvi showed points for google doc for presentation, everyone will cover their topic, and for each topic we do how, what, why
  • Assigned people to specific presentation topics:
    • Meshvi, Eyal (MERN stack)
    • Om (Images + azure)
    • Simon (Session management)
    • Itay (Docker)
  • Discussed how interests will be stored in the back-end. Two main arguments were related to wether we should have tables and relationships related to interests in the back-end or store them as attributes for clubs/users
  • Decided via vote to have a relationship (including tables and objectId references) for storing interests
  • Decided on a minimum required number of interests for users and clubs to be 5
  • Discussed feedback from the TA meeting on March 3rd:
    • Registration: We need to show modal/toast on success, acknowledge, redirect to login
    • Successfuly login: Show name in top right corner, change icon to typical signout, similar to Amazon
    • We elect not to have profile editing due to time constraints
    • Header should be modified to pass in prop (logged in status)
    • Logout: Ask user with dialog box for logout and display succes message and redirect to homepage
  • We will meet Wednesday, March 6th to polish presentation and finish our intial document draft of the presentation by March 5th at 11:59pm
  • Eyal discussed implementation of popups
  • Simon discussed implemnetation of card components for clubs,events and posts
  • Meshvi discussed the format of club page, namely the inclusion of the cards

March 1, 2024, 4:30pm-6:00pm CT (Scheduled Meeting – Discord)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Backlog refinement from Sprint 2, assign work for Sprint 3, plan for tech seminar

  • Reviewed changes needed for CSS styling across multiple pages, such as color gradient and layout styling
  • Removed club management from Sprint 3, citing time and abiltiy concerns
  • Discussed the upcoming presentation on the 7th. Outlined potential topics as MERN, Mongo, Session, Images and Azure with approx 2 minutes per topic
  • Reviewed page design for Homepage, Events/Clubs page and Find a Club
  • Iterated on designs for pages needed in Sprint 3
  • Reviewed needs for API for Sprint 3 features
  • Modified Simon's orginal API designs after iteration as a group
  • Worked on what our AC will look like for Sprint 3
  • Assigned work based on features for Sprint 3. Assigned work can be found in our discord channel

February 26, 2024, 4:30pm-6:00pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Itay, Om

TL; DR – Reviewed continued work done for core features in sprint 2, assigned continued work to specific individuals, pair programming and planned release for Sprint 2

  • Each attending member went over what they had completed since last meeting
    • Om reviewed his work on image uploading, and how it will work for deployement
    • Eyal reviewed work on event creation and manegement
    • Itay reviewed work on admin related functions
    • Simon reviewed work on session management and header/search
  • Discussed the use of blob storage for image upload, and back-end vs. front-end image upload benefits and cons
  • Disucssed a need for a mass reformatting of CSS-project wide. Created an issue for next sprint
  • Briefly reviewed work needed for text deliverables
  • Assigned work to each attending member, see github club project (also meetings notes stored on discord)
  • Looked at code for testing endpoints that contained session info. Debugged code to get it working to allow for testing of all back-end methods
  • Planned what features will be commited and when, as well as what release will look like when due (who will be submitting what and when will servers be up)

February 23, 2024, 4:30pm-5:00pm CT (Scheduled – Discord)

Attendance: Simon, Eyal, Itay, Meshvi

TL; DR – Reviewed continued work done for core features in sprint 2, assigned continued work to specific individuals

  • Discussed Meshvi's work on sequence diagrams
  • Meshvi showed work on club page
  • Itay and Eyal showed off work completed on Events and Club Page work
  • Discussed implementation of event page and how events will be shown on club page
  • Simon discussed challenges with session authentication
  • Planned commit schedule, as lots of tasks are currently overlapping

February 19, 2024, 4:30pm-6:30pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Reviewed continued work needed for core features in sprint 2, assigned work to specific individuals and refined back-log as needed

  • Discussed reformating of user-interaction structure: a user will land on the homepage as a guest automatically, and have the option to sign in (bringing them to the login screen) in the top header
  • Discussed last weeks meeting, as due date was extended so much was extendable to this week
  • Reviewed general front-end structure for club pages and events
  • Refined back log, removing uneeded or completed tasks
  • Assigned specific app features to certain individuals, as outlined in the general meetings notes on discord
  • Explored the use of Azure for our deployement system. Om toured the interfaces and added all members as contributers
  • Azure system has Static Web App (front-end) and Web App (back-end) under the ClubHUB resource group
  • Reviewed testing requirements for back end
  • Planned CI and app review meeting with TA on March 3rd
  • Will have more meetings as Sprint 2 due date approachs
  • Note: Group members will be out of province for the next week (Meshvi and Om) and will have limited technical ability during that time

February 12, 2024, 4:30pm-6:30pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Reviewed work needed for login feature, discussed CI for front end, discussed testing, outlined work for upcoming week and questions for proff

  • Om reviewed how to connect front-end to back-end for creating endpoints and such
  • He also reviewed work needed and completed for the login page
  • Decided we need a very simple login page for front-end it will be polished in Sprint 3 and is used for simple account adding. Back end will have validation
  • Looked at Sequence Diagram, assigned that work to Meshvi
  • Planned out some unit tests for core features login and club page
  • Looked at and planned example testing document
  • Discussed encryption for front-end. Will use supplied library to handle encryption
  • Will store admin to clubs as many to many
  • Reviewed architecture diagram and required mongoDb translation. Table for Club Posts not included but will be similar to Club Events
  • Om considered creating all of the models now
  • Heavy discussion on need for session management. Will likely use ExpressJS session management to handle admin vs. user vs. guest requests. Need to associate session with user on back end
  • Within ClubMemberships table, the roles column will be moved from User table to there, to enforce many to many relationship described above
  • Examined how to test MongoDB. Already have integration test, need to develop framework for mock
  • Discussed what was needed for front end CI
  • Established that session handling will be done last in Sprint 2 if we have time
  • Testing plan will bre created lastly in the sprint
  • Scheduled meeting with TA on Sunday Feb 18 @ 3pm.

February 05, 2024, 4:30pm-6:30pm CT (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Reviewed work needed for sprint 2, discussed CI implementation details, contemplated changing database, outlined work for upcoming week and questions for proff

  • Went over CI details as requested in course project outline and in slides
  • Looked at different ways to do CI, including GitHub actions
  • Discussed how Docker will play into CD and development process
  • Discussed inital testing plan, i.e where unit tests and regression tests will go
  • Need to ask proff on requirements for front-end testing for Sprint 2
  • Looked at example projects both online and from class provided sources on CI pipelines
  • Decided that we need some type of boilerplate to create a CI pipeline before we actually start coding properly
  • While looking at examples of CI, we found that most apps similar to ours use MongoDB
  • Need to ask proff if we can change our DB to MongoDB, because it is likely going to be a little easier and hosting is more straightforward; can use mongo atlas
  • Explored backend structure of past projects, including the positioning of middleware in the stack, and the relationship between routes and a controller
  • Decided that as developement progresses, we add tests as needed, per deliverarble
  • By next meeting we should have a working CI pipeline as well as finished the login core feature, to be mostly polished

January 29, 2024, 4:30pm-6:30pm (Weekly Meeting – MS Teams)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Reviewed work assigned during last meeting, explored github projects logistics, finalized details for presentation and discussed preparing for development

  • Went over work assigned in last meeting, posted on discord in a text section
    • Om completed architecture diagram but choose not to work on database diagram, so we instead focus on a front-end centric approach
    • Eyal polished the proposal well, and added more details to user stories
    • Simon created a rough roadmap of future sprints, formated github project with order and ease of access labels and organizational traits. Based of off priority decided last meeting
    • Itay moved the Core Features and User stories to the GitHub Project, and added nearly 50+ developer tasks to breakdown further
    • Meshvi worked on presentation, based on proposal
  • Provided more detail on how GitHub project is organized, (see ClubHUB GitHub Project Breakdown in wiki)
  • Expressed a need to have a further task breakdown within the project proposal, likely near the roadmap
  • Meshvi asked what else should be included in the project.
  • Decided to include architecture diagram, to be presented by Om, as well as roadmap, to be explained by Simon during presentation
  • Meshvi also expressed a desire to include design diagrams. 4-7 design diagrams will be included in the presentation and will touch on different user stories
  • Also decided that if we need more content, include a tour of the git repo (wiki, project etc)
  • Expressed a desire to have a Wiki homepage, that will likely be similar to the project proposal
  • Om presented the architecture diagram to the group and explained the need for middleware
  • Om will also setup boilerplate ReactJS app in repo
  • Decided main presenters will be Simon, Meshvi and Om
  • Also decided that product design will be iterated on over the sprint, so we favour functionality over aesthetic until final week
  • Assigned some tasks to group members about final presentation and github
  • Development will begin later in the week

January 26, 2024, 3:45pm-5:00pm CT (Scheduled – MS Teams)

Attendance: Simon, Eyal, Itay, Om

TL; DR – Customer Elicitation meeting with TA, finalized plans for future sprints, finalized plan and distrusted workload for the rest of Sprint 1

  • Went over project proposal with TA, outlined different sections and asked for feedback. None was provided.
  • Asked about the use of the architecture diagram, he said we must include it.
  • Asked about AC and Estimates, said they need to be included.
  • Mentioned that available times are Tr:1p-4p, Sa/Su: 11a-11p for future TA meetings. At least one meeting per sprint required but can have more as needed.
  • TA left and had a group meeting.
  • Created basic TODO list, as found on discord channel.
  • Prioritized features as per discord channel.
  • Took a look at example projects provided.
  • Assigned group members to TODO list for rest of sprint.
  • Explored different roadmap formats as well as defined the roadmap schedule for upcoming sprints.
  • Examined Database architecture diagrams for ideas on how to create our DB.
  • Explored how to collect images in a DB, decided to worry about that in a future feature.
  • Looked at example GitHub Project, decided to expand on that idea so that we have clear issue tracking system for dev tasks.
  • Briefly talked about PR management and code freezes. Choose to have 2 required PR approvals and 24-hour code freeze before release dates.
  • Contrasted back-end systems, chose to use NodeJS/ExpressJS and continue with MySQL DB. No need for AWS/Azure as CD pipeline deploys directly to Docker.
  • Explored MS Teams usage, will have weekly Monday meeting @ 3pm-5pm
  • Next meeting goal will be reviewing the project presentation, final deliverables and if any work still needs to be completed.
  • Future meetings on MS Teams will be recorded

January 25, 2024, 6:00pm-7:30pm CT (Scheduled – Discord)

Attendance: Simon, Eyal, Itay, Meshvi, Om

TL; DR – Meeting related to the finishing of the Project Proposal document, logistics for future sprints, goals for the customer elicitation meeting and schedule for the remaining sprint.

  • Previous conversations on discord outline core features for our app: ClubHUB
  • Outline core features and had discussion on amalgamating certain features together into one. Originally had 7, but combined login/account features into one heavy core feature.
  • Provided more detail on core features with a little blurb for each.
  • Decided to outline some slightly more detail for tech stack.
  • Began brainstorming on vision statement. Group members provided feedback on past projects about vision statements.
  • Iterated over the vision statement, applying some details to the Overview instead.
  • Outlined key objectives and discussed possible success criteria.
  • Began writing user stories, little discussion as to content, though we anticipate feedback during customer elicitation phase.
  • Discovered a possible need for a block diagram and a need for issue breakdown. Considered emailing the proff on inconsistency between rubric and assignment document. Instead, we will choose to talk to TA in our meeting on January 26th.
  • Looked at examples of similar implementations across the web, including UMSU’s club finder, looked at things that worked, did not work and what is similar with our expectations.
  • Finished up main content of project proposal, pending polishing and addition of more user stories.
  • Discussed logistics of the project, including our decision to use GitHub issue/projects to manage development.
  • Meshvi elected to work on the presentation on January 30th. May need consultation with other members.
  • Scheduled meeting with group members after customer elicitation meeting. Meshvi not attending.
  • Scheduled weekly meetings with group members on Mondays at 3pm for the rest of the sprint, with the anticipation that unscheduled meetings will occur as needed.
  • Next meeting’s goal is to schedule TODOs needed for the rest of sprint one.