Building  Large-Scale Web Applications with Angular
上QQ阅读APP看书,第一时间看更新

Personal Trainer requirements

Based on the notion of managing workouts and exercises, these are some of the requirements that our Personal Trainer app should fulfill:

  • The ability to list all available workouts.
  • The ability to create and edit a workout. While creating and editing a workout, it should have:
    • The ability to add workout attributes including name, title, description, and rest duration
    • The ability to add/remove multiple exercises for workouts
    • The ability to order exercises in the workout
    • The ability to save workout data
  • The ability to list all available exercises.
  • The ability to create and edit an exercise. While creating and editing an exercise, it should have:
    • The ability to add exercise attributes such as name, title, description, and procedure
    • The ability to add pictures for the exercise
    • The ability to add related videos for the exercise
    • The ability to add audio clues for the exercise

All the requirements seem to be self-explanatory, so let's start with the design of the application. As customary, we first need to think about the model that can support these requirements.