Program Purpose and Function

  • 1a . Purpose: To set small, attainable goals for users to help them step by step to help them achieve their ultimate goal

Data Abstraction

  • 2a.

    • Provides a database that will include all of the user's inputs goals and has them rate it on a scale from 1 to 10 in terms of difficulty
    • This list will then be ordered to help the user by making suggestions on what specific task they should work on to progress closer to their "big" idea.
  • 2b.

    • Name of the Variable can be "Goals"
    • The data in the list is represented in the program by choosing specific goals for the user based on difficulty, which will then be used to recommend specific exercises for the user.

Managing Complexity

  • 3a.
    • From this list, we can use a sort() function that is given to each exercise (from difficulty) to create a more organized program. Additionally, many other lists can be derived from the original to show a more organized compilation of different goals that the user wants to achieve.
  • 3b.
    • The selected lists should ideally have a lesser amount and increased specificity for each goal that the user has input. For example, using a list named "easy_goals" for milestones that are within a few days of completion can be used later in the program to sort out easy from difficult tasks

Procedural Abstraction

  • 4a.

    • The feature I will be using will be a function that goes along the lines of "sort," which will aid the user in selecting one specific goal if the user is struggling to determine whether they want to progress on A or B.

      An Example of the code is given below:

def sort_goal(x,y):
    if x > y:
        answer = print("Choose goal Y")
    elif y > x:
        answer = print("Choose Goal Y")
    return answer
    
x = 1
y = 2
sort_goal(x,y)
    
Choose Goal Y
  • 4b.
    • The purpose of the program is to allow users to set their own pace rather than conform to others that may be setting unrealistic goal standards for their scenarios.