@startuml Treatment Parameters Adjustment participant TD as TD participant SW as SW participant UI as UI actor USER as US 'Possible actions and interaction types ' TD -> SW: MSG: Message ' SW -> TD: MSG: Message ' SW -> UI: CMD: command ' UI -> SW: ACT: Action ' US -> UI: User actions are: ' ENT: User enters a value or string ' TCH: User touches a button (RadioButton, CheckBox, ...) ' SET: User sets/slides a slider ' SCL: User scrolls a flipable area ' 'Messages conventions: '[x \n ,] '[x \n ,# certain amount of parameters according to the content] '[x \n ,X The rest of the parameters do not matter.] == Pressure Limit Windows Adjustment == US -> UI: TCH: Pressure Limit Windows Adjustment Button UI -> US: ACT: Open Pressure Limit Windows Adjustment Screen US -> UI: SET: Change Pressure Limit Windows US -> UI: TCH: Confirm Button UI -> SW: ACT: User Confirm Pressure Limit Windows Adjustment SW -> TD: MSG: [x78: Req arterial_mmHg, venous_mmHg, venousAsymmetric_mmHg, tmp_mmHg]\nPressure Limit Windows Change Request alt accepted TD -> SW: MSG: [x79: Rsp 1, X, arterial_mmHg, venous_mmHg, venousAsymmetric_mmHg, tmp_mmHg]\nPressure Limit Windows Change Response SW -> UI: CMD: Accepted Pressure Limit Windows Change UI -> US: ACT: Close Pressure Limit Windows Adjustment Screen else rejected TD -> SW: MSG: [x79: Rsp 0, rejectedReason, X]\nPressure Limit Windows Change Response SW -> UI: CMD: Rejected Pressure Limit Windows Change UI -> US: ACT: Display Rejection Reason end == Fluid Bolus Volume Adjustment == US -> UI: TCH: Fluid Bolus Volume Adjustment Button UI -> US: ACT: Open Fluid Bolus Volume Adjustment Screen US -> UI: SET: Change Fluid Bolus Volume US -> UI: TCH: Confirm Button UI -> SW: ACT: User Confirm Fluid Bolus Volume Adjustment SW -> TD: MSG: [x80: Req bolusVolume_mL]\nFluid Bolus Volume Change Request alt accepted TD -> SW: MSG: [x81: Rsp 1, X, bolusVolume]\nFluid Bolus Volume Change Response SW -> UI: CMD: Accepted Fluid Bolus Volume Change UI -> US: ACT: Close Fluid Bolus Volume Adjustment Screen else rejected TD -> SW: MSG: [x81: Rsp 0, rejectedReason, X]\nFluid Bolus Volume Change Response SW -> UI: CMD: Rejected Fluid Bolus Volume Change UI -> US: ACT: Display Rejection Reason end == Treatment Duration Adjustment == US -> UI: TCH: Treatment Duration Adjustment Button UI -> US: ACT: Open Treatment Duration Adjustment Screen US -> UI: SET: Change Treatment Duration US -> UI: TCH: Continue Button SW -> TD: MSG: [x83: Req duration_min]\nTreatment Duration to Validate Request alt accepted TD -> SW: MSG: [x42: Rsp 1, X, duration_min, ufVolumeGoal_mL, ufRate_L_hr]\nTreatment Duration to Validate Response SW -> UI: CMD: Treatment Duration Validate Response Triggered UI -> US: ACT: Open Treatment Duration Adjustment Confirm Screen US -> UI: TCH: Confirm Button UI -> SW: ACT: User Confirm Treatment Duration Adjustment SW -> TD: MSG: [x66: Req volumeMl]\nTreatment Duration Adjustment Confirm Request alt accepted TD -> SW: MSG: [x67: Rsp 1, X, duration_min, ufVolumeGoal_mL, ufRate_L_hr]\nTreatment Duration to Validate Response SW -> UI: CMD: Treatment Duration Validate Response Triggered UI -> US: ACT: Close Adjust Ultrafiltration Confirm else rejected TD -> SW: MSG: [x67: Rsp 0, rejectedReason, X]\nUltrafiltration User Confirm Settings Change Request SW -> UI: CMD: Confirmed Ultrafiltration Settings UI -> US: ACT: Display Rejection Reason end else rejected TD -> SW: MSG: [x42: Rsp 0, rejectionReason, X]\nTreatment Duration to Validate Response SW -> UI: CMD: Treatment Duration Validate Response Triggered UI -> US: ACT: Display Rejection Reason end == Treatment Set Points Adjustment == US -> UI: TCH: Treatment Set Points Adjustment Button UI -> US: ACT: Open Treatment Set Points Adjustment Screen US -> UI: SET: Change Treatment Set Points US -> UI: TCH: Confirm Button UI -> SW: ACT: User Confirm Treatment Set Points Adjustment SW -> TD: MSG: [x80: Req bloodFlowRate_mL_min, dialysateFlowRate_mL_min,\ndialysateTemperature_deg_C, acidConcentrate, bicarbConcentrate]\nPressure Limit Windows Change Request alt accepted TD -> SW: MSG: [x81: Rsp 1, X, bloodFlowRate_mL_min, dialysateFlowRate_mL_min,\ndialysateTemperature_deg_C, acidConcentrate, bicarbConcentrate]\nTreatment Set Points Change Response SW -> UI: CMD: Accepted Treatment Set Points Change UI -> US: ACT: Close Treatment Set Points Adjustment Screen else rejected TD -> SW: MSG: [x81: Rsp 0, rejectedReason, X]\nTreatment Set Points Change Response SW -> UI: CMD: Rejected Treatment Set Points Change UI -> US: ACT: Display Rejection Reason end == Quick Treatment Set Point - Blood Flow Rate == US -> UI: TCH: Blood Flow Rate Increment or Decrement Button UI -> SW: ACT: User Blood Flow Rate Adjustment SW -> TD: MSG: [x95: Req bloodFlowRate_mL_min]\nBlood Flow Rate Change Request alt accepted TD -> SW: MSG: [x96: Rsp 1, X, bloodFlowRate_mL_min]\nBlood Flow Rate Change Response SW -> UI: CMD: Accepted Blood Flow Rate Change else rejected TD -> SW: MSG: [x96: Rsp 0, rejectedReason, X]\nBlood Flow Rate Change Response SW -> UI: CMD: Rejected Blood Flow Rate Change UI -> US: ACT: Display Rejection Reason end == Quick Treatment Set Point - Dialysate Flow Rate == US -> UI: TCH: Dialysate Flow Rate Increment or Decrement Button UI -> SW: ACT: User Dialysate Flow Rate Adjustment SW -> TD: MSG: [x97: Req dialysateFlowRate_mL_min]\nDialysate Flow Rate Change Request alt accepted TD -> SW: MSG: [x98: Rsp 1, X, dialysateFlowRate_mL_min]\nDialysate Flow Rate Change Response SW -> UI: CMD: Accepted Dialysate Flow Rate Change else rejected TD -> SW: MSG: [x98: Rsp 0, rejectedReason, X]\nDialysate Flow Rate Change Response SW -> UI: CMD: Rejected Dialysate Flow Rate Change UI -> US: ACT: Display Rejection Reason end == Quick Treatment Set Point - Dialysate Temperature == US -> UI: TCH: Dialysate Temperature Increment or Decrement Button UI -> SW: ACT: User Dialysate Temperature Adjustment SW -> TD: MSG: [x97: Req dialysateTemperature_deg_C]\nDialysate Temperature Change Request alt accepted TD -> SW: MSG: [x98: Rsp 1, X, dialysateTemperature_deg_C]\nDialysate Temperature Change Response SW -> UI: CMD: Accepted Dialysate Temperature Change else rejected TD -> SW: MSG: [x98: Rsp 0, rejectedReason, X]\nDialysate Temperature Change Response SW -> UI: CMD: Rejected Dialysate Temperature Change UI -> US: ACT: Display Rejection Reason end @enduml