-
Notifications
You must be signed in to change notification settings - Fork 1
Sequence Diagrams
Hasan Kerem Şeker edited this page Apr 27, 2024
·
26 revisions
sequenceDiagram
Registered User->>+ UserController: get(username)
Activate Registered User
UserController->>+ Database: get the user with given username from database
alt user fetched successfully
Database-->>UserController: Registered User Data
UserController -->> Registered User: Registered User Object
else
Database-->>-UserController: failure
UserController-->>-Registered User: failure
end
Registered User ->>+ Database: blockUser(Registered User Object)
alt block action is saved to database
Database-->>Registered User: success
else
Database-->>-Registered User: failure
end
Deactivate Registered User
sequenceDiagram
participant RegisteredUser
participant SearchEngine
participant WikiData
participant ContentController
participant Database
Activate RegisteredUser
RegisteredUser ->> SearchEngine : search keyword, createFilter()
Activate SearchEngine
SearchEngine ->> WikiData : query(keyword)
Activate WikiData
WikiData -->> SearchEngine : return List<WikiData_Entity>
Deactivate WikiData
SearchEngine ->> RegisteredUser : ask for WikiData_Entity selection
RegisteredUser -->> SearchEngine : selected WikiData_Entity
SearchEngine ->> SearchEngine : updateSearchHistory(WikiData_Entity)
SearchEngine ->> WikiData : get_keywords(WikiData_Entity)
Activate WikiData
WikiData ->> SearchEngine : return new_keyword_list<keyword>
Deactivate WikiData
SearchEngine ->> ContentController : find(new_keyword_list)
Activate ContentController
ContentController->> Database: get matching content
Activate Database
Database -->> ContentController : return List<Post>
Deactivate Database
ContentController -->> SearchEngine : return List<Post>
Deactivate ContentController
SearchEngine ->> SearchEngine : weight(post_list, weights)
SearchEngine ->> RegisteredUser : filter(post_list, filter)
Deactivate SearchEngine
Deactivate RegisteredUser
sequenceDiagram
Registered User->>+Post: bookmarkPost(user)
Activate Registered User
Post->>+ Database: save bookmark action into database
alt saving is successful
Database-->>Post: success
Post-->>Registered User: success
else
Database-->>-Post: failure
Post-->>-Registered User: failure
end
Deactivate Registered User
sequenceDiagram
actor Registered User as Registered User
Registered User->>+Content: addComment(string)
Content->>+ Database: save comment into database
alt saving is successful
Database-->>Content: success
Content-->>Registered User: success
else
Database-->>-Content: failure
Content-->>-Registered User: failure
end
sequenceDiagram
Registered User->>+Post: likePost(user)
Activate Registered User
Post->>+ Database: save like action into database
alt saving is successful
Database-->>Post: success
Post-->>Registered User: success
else
Database-->>-Post: failure
Post-->>-Registered User: failure
end
Deactivate Registered User
sequenceDiagram
Registered User->>+ UserController: get(username)
Activate Registered User
UserController->>+ Database: get the user with given username from database
alt user fetched successfully
Database-->>UserController: Registered User Data
UserController -->> Registered User: Registered User Object
else
Database-->>-UserController: failure
UserController-->>-Registered User: failure
end
Registered User ->>+ Database: followUser(Registered User Object)
alt following action is saved to database
Database-->>Registered User: success
else
Database-->>-Registered User: failure
end
Deactivate Registered User
sequenceDiagram
Registered User->>+ContentController: create(text: String, author: RegisteredUser, title: String, image: Image)
Activate Registered User
ContentController->>+ Database: save create action into database
alt saving is successful
Database-->>ContentController: success
ContentController-->>Registered User: success
else
Database-->>-ContentController: failure
ContentController-->>-Registered User: failure
end
Deactivate Registered User
Turquiz App
DONE
- Lab Report #1
- Lab Report #2
- Lab Report #3
- Lab Report #4
- Lab Report #5
- Lab Report #6
- Lab Report #7
- Lab Report for Lab 9
- Lab Meeting #1
- Meeting #1
- Lab Meeting #2
- Meeting #2
- Project Plan Meeting
- Frontend Meeting #1
- Lab Meeting #3
- Meeting #3
- Meeting #4
- Lab Meeting #4
- Meeting #5
- Meeting #6
- Meeting #7
- Meeting #8
- User Scenario 1 - Explore and Register
- User Scenario 2 - Search for a Quiz & Create a Quiz
- User Scenario 3 - Take & Review a Quiz
- User Scenario 4 - Search Forum & Bookmark & Upvote & Answer
- User Scenario 5 - User Badges
- User Scenario Template
- User Stories