-
Notifications
You must be signed in to change notification settings - Fork 1
Fitness App Class Diagram
Can edited this page Oct 15, 2024
·
1 revision
classDiagram
class User {
+int ID
+string email
+string username
+string password
}
class UserProfile {
+string profilePicture
+string bio
+list createdPosts
+list bookmarkedPosts
+list createdExercisePrograms
+list bookmarkedExercisePrograms
+list createdDietPrograms
+list bookmarkedDietPrograms
+bool isSupermember
}
class Post {
+int ID
+string title
+string content
+string pictureURL
+datetime timestamp
}
class ExerciseProgram {
+int ID
+string name
+list exercises
+datetime timestamp
+float averageRating
}
class DietProgram {
+int ID
+string name
+list meals
+datetime timestamp
+float averageRating
}
class Comment {
+int ID
+string content
+datetime timestamp
}
class Like {
+int ID
}
class Bookmark {
+int ID
+datetime bookmarkedOn
}
class PostFeed {
-- Aggregates posts
}
class Message {
+int ID
+string content
+datetime timestamp
}
class WorkoutDB {
+list exerciseList
}
class MealDB {
+list mealList
}
class Leaderboard {
+list topRatedExercisePrograms
+list topRatedDietPrograms
}
class Rating {
+int ratingValue
}
%% Positioning relationships
User --> UserProfile : has
User --> Post : creates
User --> ExerciseProgram : creates
User --> DietProgram : creates
User --> Comment : writes
User --> Like : gives
User --> Bookmark : bookmarks
User --> Message : sends
User --> User : follows
Bookmark --> Post : refers_to
Bookmark --> ExerciseProgram : refers_to
Bookmark --> DietProgram : refers_to
Post --> Comment : includes
Post --> Like : receives
Comment --> Like : receives
ExerciseProgram --> Post : can_be_posted_as
DietProgram --> Post : can_be_posted_as
ExerciseProgram --> Rating : receives
DietProgram --> Rating : receives
WorkoutDB --> ExerciseProgram : contains
MealDB --> DietProgram : contains
Supermember --> WorkoutDB : can_add_to
Supermember --> MealDB : can_add_to
Leaderboard --> ExerciseProgram : ranks
Leaderboard --> DietProgram : ranks
- Berat Yılmaz
- Bilge Kaan Güneyli
- Murat Can Kocakulak
- Zeynep Buse Aydın
- Nurullah Uçan
- Ceyhun Sonyürek
- Ahmet Batuhan Canlı
- Talha Ordukaya
- Miraç Öztürk
- Scenario 1: Logging in and Seeing Posts
- Scenario 2: Posting an Exercise Program
- Scenario 3: Posting a Diet Program
- Scenario 4: Rating Another User's Programs
- Scenario 5: Chatting with Another User
- Lab9 Meeting Notes
- Lab8 Meeting Notes
- General Meeting Notes #3
- Lab7 Meeting Notes
- Lab6 Meeting Notes
- Lab5 Meeting Notes
- General Meeting Notes #2
- Lab4 Meeting Notes
- General Meeting Notes #1
- Lab3 Meeting Notes
- Lab2 Meeting Notes
- Lab1 Meeting Notes
- Frontend Meeting Notes #1