Accept MIL-003 and add the Play a Game use case
Create the use case chain for the game loop task: Use Case Diagram UCD-001, User Stories US-001 (two stories), Use Case UC-001 and System Sequence Diagram SSD-001, all Proposed. Link them from MIL-003. Review MIL-003 (RC-006, Go) and accept it. Add the new artifacts to the Traceability Matrix and register UCD, US, UC and SSD in the artifact registry. Refs #13
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
# System Sequence Diagram: Play a Game
|
||||
|
||||
## Metadata
|
||||
| Key | Value |
|
||||
| --- | --- |
|
||||
| ID | SSD-001 |
|
||||
| CrossReference | [UC-001] |
|
||||
|
||||
## Version History
|
||||
| Date | Status | Author | Reviewer | Change | Commit |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-10-04 | Proposed | Jens Tirsvad Nielsen | S01 | Initial version | pending |
|
||||
|
||||
---
|
||||
|
||||
## Source Use Case
|
||||
|
||||
[UC-001] Play a Game, main success scenario. The alternative flows (invalid answer, tie, no account left) are out of scope for this diagram.
|
||||
|
||||
## Diagram
|
||||
|
||||
```plantuml
|
||||
@startuml
|
||||
actor Player
|
||||
participant ":System" as System
|
||||
Player -> System : startGame()
|
||||
System --> Player : accounts A and B
|
||||
loop while the guess is right
|
||||
Player -> System : makeGuess(choice)
|
||||
System --> Player : right, score, new accounts A and B
|
||||
end
|
||||
Player -> System : makeGuess(choice)
|
||||
System --> Player : wrong, final score
|
||||
@enduml
|
||||
```
|
||||
|
||||
## System Operations Table
|
||||
|
||||
| Step | Message (verb phrase) | Parameters | Return | Use case step |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| 1 | startGame | none | accounts A and B | 1, 2 |
|
||||
| 2 | makeGuess | choice (A or B) | right, new score, new accounts A and B | 3, 4, 5, 6 |
|
||||
| 3 | makeGuess | choice (A or B) | wrong, final score | 3, 7 |
|
||||
|
||||
Steps 2 and 3 are the same operation; the loop shows the right-guess outcome repeating, and the last call shows the wrong-guess outcome.
|
||||
|
||||
## Lifecycle Notes
|
||||
|
||||
A game starts with `startGame` and ends when `makeGuess` returns wrong; the System keeps the score and the current accounts in between.
|
||||
|
||||
---
|
||||
|
||||
[UC-001]: ./uc.md
|
||||
Reference in New Issue
Block a user