openup: doc restructure - template alignment + design sequences (non-PSP)
Align the OpenUP markdown set to the blank templates (process-data repo, templates/openup/) per BUILD-CHECKLIST 7. Scenario step text unchanged; the EA model needs no change (brief descriptions already live in the model's UC/actor notes). - vision.md: positioning tables, stakeholder summary, user environment, needs-and-features table (R1/R2), other product requirements - use-case-model.md: per-UC specification sections (brief description, actor descriptions, named alternative/exception subsections with numbered steps, post-conditions, special requirements) - supplementary-specifications.md: category tables with priority and use-case columns + reverse coverage matrix; IDs unchanged - test/quality-check-procedure.md: migrated from Joplin (single content home); stale open items marked resolved (WI-1/WI-2) - analysis-design/sequences/: 12 PlantUML design sequences (lifelines = analysis classes, messages = design elements; per the PlantUML layout style guide) + PNG renders; embedded in Architecture Notebook 9.3 - Joplin consolidated: project content notes deleted (all live in docs/game + docs/openup); Joplin keeps the status note only
This commit is contained in:
parent
93bb034752
commit
193562cbc4
30 changed files with 1200 additions and 124 deletions
28
docs/openup/analysis-design/sequences/uc-05-train-stat.puml
Normal file
28
docs/openup/analysis-design/sequences/uc-05-train-stat.puml
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
@startuml uc-05-train-stat
|
||||
autonumber
|
||||
title UC-05 Train Stat (design sequence)
|
||||
actor Player
|
||||
participant "GymBoundary\n«/api/characters/{id}/gym»" as boundary <<boundary>>
|
||||
participant "TrainingService\nsb-core::services::train_stat" as control <<control>>
|
||||
participant "ResourceRegenerator\napply_regen" as regen <<entity>>
|
||||
participant "TrainingGrounds\nTRAINING_GROUNDS + training_cost" as entity <<entity>>
|
||||
|
||||
== Train ==
|
||||
Player -> boundary : POST stat name
|
||||
boundary -> regen : apply_regen(character)
|
||||
regen --> boundary : character (regenerated)
|
||||
boundary -> control : train_stat(character, stat)
|
||||
control -> entity : cost = training_cost (x1.3 per 10 points)
|
||||
alt not enough energy
|
||||
control --> boundary : 422 (DomainError)
|
||||
else not enough gold
|
||||
control --> boundary : 422 (DomainError)
|
||||
else unknown stat
|
||||
control --> boundary : 400 (DomainError)
|
||||
else ok
|
||||
control -> entity : stat +1 (energy -1, gold -cost)
|
||||
control -> entity : constitution: recompute max HP (clamp current)
|
||||
control --> boundary : {success, message, character}
|
||||
boundary --> Player : {success, message, character}
|
||||
end
|
||||
@enduml
|
||||
Loading…
Add table
Add a link
Reference in a new issue