APCSP Final App

Diary of my progress:

Tuesday, May 15: Today I made a questionnaire and asked students for responses during class. It took me about 40 minutes to create the questionnaire, 20 minutes to ask people for responses, and an additional 20 minutes to go through the responses and come up with ideas. That brought me to the end of class.

Thursday, May 17: I realised that I was supposed to have an adult client and gather feedback through questionnaires, so whatever I did last class was wasted. This class I contacted my client, created the questionnaire and sent it out to peers and teachers.

Questionnaire Link: https://docs.google.com/forms/d/1TgJpt6yQMyLvMI1sL5NPOtzrTZNXvRSdOVIlsJDRtVU/edit

Monday, May 21: This class I looked at the responses I received and I wrote down all the functions of the app as well as what the GUI needed and created an abstract flowchart of my app. I took some time downloading music for the app. I also began working on the code. Marcus helped me with coding the sound part by sending me the link to a video showing how to play sound. I was able to code up to the user being able to select the folder where the music is.

Client’s needs:

– Music app to help user sleep

– Tips for falling asleep

– Meditation part of the app

GUI needs:

– Menu to select Music, Sleeping Tips or Meditation

– Sleeping tips needs to be colorful

– Music needs to give the name of the song

– Meditation part needs to be just sound

Flowchart: *Note: I decided to not implement the stoppage of music after 30 minutes as I realised that it was quite pointless seeing that the user can pause the music themselves.

Thursday, May 24: Today I realised that the mp3 files that I had downloaded didn’t work in PyCharm, and I found out that only wav files worked because Marcus informed me, so I had to spend some time converting all of those files into wav files in order for them to play. By the end of class I was only able to play a song, but I had no GUI, or any other functionality.

Friday, May 25: I spent about 5-6 hours coding today. I was able to finish creating the GUI, sleeping tips, and add more functionality to the music player. I was able to add pause and play buttons as well as give the user the title of the song. I spent about 3 hours of that time trying to figure out how to play music one after another. I still need to add some colour to the GUI and style it a bit. As of now, the user still needs to select a folder to play the music, so I want to code the app so that the music automatically starts playing without the user having to select the folder.

Saturday, May 26: Today I finished adding the sleep meditation functionality, so that the audio plays as soon as the button is clicked. After that I went back to my music player to figure out how to get the music to play automatically, which I did figure out. I added colour to the GUI and styled some text. I finished my app and made the video. I also filmed and edited the video interview with client.

Testing Documentation:

Tester’s name Procedure tested Outcome Fixed?
Karan Goel menu() Shows buttons and welcome message No need
Sudhir Goel (Dad) musicchoose() Changes to the music menu, allows user to select folder with music, then plays song.

Removed the choosing of folders to make it automatic by deleting askdirectory(), and instead setting the directory of the music to the path of the folder.

Fixed on May 26

Karan Goel sleepingtips() Prints a sleeping tip and will generate another one if “Another Tip” button is pressed. No need
Sudhir Goel (Dad) pause() Music pauses temporarily No need
Sudhir Goel (Dad) play() Music continues playing from the same location that it was paused No need
Karan Goel sleepmeditation() Allows user to select the folder for sleep meditation and plays track

Removed the choosing of folders to make it automatic and sleeping meditation audio plays.

Fixed on May 26

Karan Goel backtomenu() Goes back to the menu. GUI from sleeping tips is visible.

Added deletemenu() to the function

Fixed May 26

Sudhir Goel (Dad) backtothemenu() Goes back to the menu but GUI is visible and music is still playing

Added deletemenu() to function and added pygame.mixer.music.stop() to stop the music.

Fixed May 26

Karan Goel deletemenu() Blank labels  successfully cover buttons and labels from menu No need

App Video: 


Client Interview: 

Code: https://docs.google.com/document/d/1RoV4QcIC7v3RsaTlmgjDrc17FLWG6rTnrSav8j7VZXk/edit?usp=sharing

Leave a Reply

Your email address will not be published. Required fields are marked *