BetsyRowley / menstrual-tracker

A full-stack application created for University of St. Thomas course SEIS739.
0 stars 1 forks source link

As a User, I want to enter health symptoms daily so that I can see if there are any correlations to hormones, dependent on where I am in my cycle. #7

Closed BetsyRowley closed 4 months ago

BetsyRowley commented 6 months ago

Feature Description

User Case

User Action Action Result
Click 'Add Daily Observation' Modal form opens on screen
Enter Observation values Values Reflected in Modal form
Click 'Submit Observations' Daily Observation added to DB & Modal confirmation shows on screen
Closes Confirmation Modal Modal Confirmation closes, Dashboard displayed

Noun Extraction

Class Name: DailyRecord
Responsibilities Collaborators
Knows (Variables): date, health values, and comments. Can (methods): set & get Date, Health Values and comments User

Narration

User: G'day, Viewer. I'd like to create a Daily Record for today. Viewer: Ok. Please enter a date and the values you want me to record. User: Here's the info. Viewer: Service, here's some new info for a daily entry. Service: Since this date is either past or present, we can proceed. Controller, can you help me create a Daily Record with these values? Controller: No can do. Looks like I already have info for that date. Service: Viewer. It's a no go. Viewer: I can't do that for you, User. That date already has information recorded. User: Oops! My bad. My fat fingers clicked the wrong button. Here's the date I actually wanted. Viewer: Service, see if this date work better. Service: Still good on my end. How about you, Controller? Controller: That one checks out. Nothing recorded yet. Model, request for you to create a Daily Record. Model: You bet, Daily Record has been created and stored. Controller: Thank you! Service, the information has been added successfully. Service: Viewer, please relay a successful creation. Viewer: User, thanks for your information. It has been successfully added to your account. Check out your new entry. Enjoy your day! User: Thanks, Viewer. See you, manana.

BetsyRowley commented 5 months ago

@cklukas16 do you receive a notification?

BetsyRowley commented 5 months ago

@cklukas16 I think you were right that noun extraction would be an easier to route to make sense of what need so I attempted that route for this user story and created a CRC card. I'm going to hold off on the narration until I do a few other user stories and see if you agree on how to proceed. No rush!

If this route works, I'm thinking noun extraction and CRC cards will be complete after for the first few user stories at which point everything will be redundant. Perhaps we create a new issue in the board to track a comprehensive list of the Classes and their respective CRC cards. That way we have them in one location and are aligned on naming conventions. Let me know what you think.

cklukas16 commented 5 months ago

Sorry for the confusion here. I didn't intend to mark this as complete.

I read over the refinement assignment instructions and Professor Dorin's email again. Sounds to me like we don't need independent CRC cards per class. I added a new card to the backlog for creating either CRC cards or deciding on a framework. Once we have done this, we can do a narration using the classes for each user story. Does that sound like an ok plan? Are you ok to wait to watch some of the tutorial video before deciding on a framework vs noun extraction?

BetsyRowley commented 5 months ago

Hey @cklukas16,

Speaking of confusion - I read it differently every time so what you suggested is fine. I was going to work on another user story this morning just to keep things moving on the Kanban so everything's not done in the same day. I'll just do the first couple of steps, then move it to Implementation so I can work on the next one. I won't have a chance to check out the tutorial until late this afternoon but will let you know once I have.

cklukas16 commented 4 months ago

@BetsyRowley Ok. I have the basic form for adding daily entries working. I have not tested extensively, but it worked for a few test runs. I left the formatting and validation checks as-is with the tutorial. I don't love all the "required" red boxes. My to do items:

BetsyRowley commented 4 months ago

@cklukas16 looks great!

Either way, I think it's great! Entirely up to you on how much more you'd like to do.

cklukas16 commented 4 months ago

@BetsyRowley Ok. Good feedback. I'll look at the required fields later this evening. My most recent commit has different options for data entry for the "level" items. There's a drop down option and a slider option. These would help with data validation. I also modified the post endpoint on the backend to send an error message if an entry with the date already exists. I do need to add some sort of user facing message. Still figuring that out.

cklukas16 commented 4 months ago

@BetsyRowley I made some form improvements and merged my branch with main. Hope that was ok. Please let me know if there's anything I should change.