@startuml Institutional participant TD as TD participant SW as SW participant UI as UI actor USER as US 'Possible actions and interaction tuypes ' 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.] == Start Up/ POST == group Institutional Settings Request SW --> TD: ... TD --> SW: ... end group Advanced Institutional Settings Request SW --> TD: ... TD --> SW: ... end == Institutional Settings Screen (Normal) == US -> UI: TCH: Press Settings from menu bar US -> UI: TCH: Press Institutional Settings UI -> SW: ACT: Request Institutional Settings group Institutional Settings Request SW --> TD: ... TD --> SW: ... end alt Accepted SW -> UI: ACT: Display all institutional settings UI -> US: ACT: Display readonly settings else #Pink Rejected SW -> UI: ACT: Display rejection reason UI -> US: ACT: Notify User end == Institutional Settings Screen (Service) == US -> UI: TCH: Press Settings from menu bar US -> UI: ACT: Log In as Service US -> UI: TCH: Press Institutional Settings UI -> SW: ACT: Request Institutional Settings group Institutional Settings Request SW --> TD: ... TD --> SW: ... end alt Accepted SW -> UI: ACT: Display all Institutional settings UI -> US: ACT: Display editable settings US -> UI: TCH: Edit any setting displayed (min,mex,def) US -> UI: TCH: Confirm Button UI -> SW: ACT: Request Adjust Institutional Settings group Adjust Institutional Settings Request SW --> TD: ... TD --> SW: ... end alt Accepted SW -> UI: ACT: Display all institutional settings UI -> US: ACT: Notify User successful adjustment else #Pink Rejected SW -> UI: ACT: Display rejection reason for each parameter UI -> US: ACT: Notify User end else #Pink Rejected SW -> UI: ACT: Display rejection reason UI -> US: ACT: Notify User end == Advanced Institutional Settings Screen == US -> UI: TCH: Press Settings from menu bar US -> UI: ACT: Log In as Service US -> UI: TCH: Press Advanced Institutional Settings group Advanced Institutional Settings Request SW --> TD: ... TD --> SW: ... end alt Accepted SW -> UI: ACT: Display all Advanced Institutional settings UI -> US: ACT: Display editable settings US -> UI: TCH: Edit any setting displayed (min,mex,def) US -> UI: TCH: Confirm Button UI -> SW: ACT: Request Adjust Advanced Institutional Settings group Adjust Advanced Institutional Settings Request SW --> TD: ... TD --> SW: ... end alt Accepted SW -> UI: ACT: Display all advanced institutional settings UI -> US: ACT: Notify User successful adjustment else #Pink Rejected SW -> UI: ACT: Display rejection reason for each parameter UI -> US: ACT: Notify User end else #Pink Rejected SW -> UI: ACT: Display rejection reason UI -> US: ACT: Notify User end == Institutional Settings Request == SW -> TD: MSG: [xXX: #0] Request: Institutional Records TD -> SW: MSG: [xXX: #60] (U32) mAccepted \ \n (U32) mReason \ \n (U32) mBloodFlowMin \ \n (U32) mBloodFlowMax \ \n (U32) mBloodFlowDef \ \n (U32) mDialysateFlowMin \ \n (U32) mDialysateFlowMax \ \n (U32) mDialysateFlowDef \ \n (U32) mTreatmentDurationMin \ \n (U32) mTreatmentDurationMax \ \n (U32) mTreatmentDurationDef \ \n (F32) mHepBolusVolumeMin \ \n (F32) mHepBolusVolumeMax \ \n (F32) mHepBolusVolumeDef \ \n (F32) mHepDispRateMin \ \n (F32) mHepDispRateMax \ \n (F32) mHepDispRateDef \ \n (U32) mHepStopTimeMin \ \n (U32) mHepStopTimeMax \ \n (F32) mDialysateTempMin \ \n (F32) mDialysateTempMax \ \n (F32) mDialysateTempDef \ \n (F32) mPotassiumMin \ \n (F32) mPotassiumMax \ \n (F32) mCalciumMin \ \n (F32) mCalciumMax \ \n (U32) mDialysateBicarbonateMin \ \n (U32) mDialysateBicarbonateMax TD -> SW: \n (U32) mDialysateBicarbonateDef \ \n (U32) mDialysateSodiumMin \ \n (U32) mDialysateSodiumMax \ \n (U32) mDialysateSodiumDef \ \n (U32) mFluidBolusVolumeMin \ \n (U32) mFluidBolusVolumeMax \ \n (U32) mFluidBolusVolumeDef \ \n (U32) mArterialWindowMin \ \n (U32) mArterialWindowMax \ \n (U32) mArterialWindowDef \ \n (U32) mVenousWindowMin \ \n (U32) mVenousWindowMax \ \n (U32) mVenousWindowDef \ \n (U32) mVenousAsymmetricMin \ \n (U32) mVenousAsymmetricMax \ \n (U32) mVenousAsymmetricDef \ \n (U32) mTMPWindowMin \ \n (U32) mTMPWindowMax \ \n (U32) mTMPWindowDef \ \n (F32) mUltrafiltrationVolumeMin \ \n (F32) mUltrafiltrationVolumeMax \ \n (F32) mUltrafiltrationVolumeDef \ \n (U32) mVitalsIntervalDef \ \n (U32) mRinsebackVolumeMin \ \n (U32) mRinsebackVolumeMax \ \n (U32) mRinsebackVolumeDef \ \n (U32) mRinsebackFlowRateMin \ \n (U32) mRinsebackFlowRateMax TD -> SW: \n (U32) mRinsebackFlowRateDef \ \n (F32) mSubstitutionVolumeMin \ \n (F32) mSubstitutionVolumeMax \ \n (F32) mSubstitutionVolumeDef == Institutional Settings Adjustment == SW -> TD: MSG: [xXX: #58] Adjust Request \n (U32) mBloodFlowMin \ \n (U32) mBloodFlowMax \ \n (U32) mBloodFlowDef \ \n (U32) mDialysateFlowMin \ \n (U32) mDialysateFlowMax \ \n (U32) mDialysateFlowDef \ \n (U32) mTreatmentDurationMin \ \n (U32) mTreatmentDurationMax \ \n (U32) mTreatmentDurationDef \ \n (F32) mHepBolusVolumeMin \ \n (F32) mHepBolusVolumeMax \ \n (F32) mHepBolusVolumeDef \ \n (F32) mHepDispRateMin \ \n (F32) mHepDispRateMax \ \n (F32) mHepDispRateDef \ \n (U32) mHepStopTimeMin \ \n (U32) mHepStopTimeMax \ \n (F32) mDialysateTempMin \ \n (F32) mDialysateTempMax \ \n (F32) mDialysateTempDef \ \n (F32) mPotassiumMin \ \n (F32) mPotassiumMax \ \n (F32) mCalciumMin \ \n (F32) mCalciumMax \ \n (U32) mDialysateBicarbonateMin \ \n (U32) mDialysateBicarbonateMax SW -> TD: \n (U32) mDialysateBicarbonateDef \ \n (U32) mDialysateSodiumMin \ \n (U32) mDialysateSodiumMax \ \n (U32) mDialysateSodiumDef \ \n (U32) mFluidBolusVolumeMin \ \n (U32) mFluidBolusVolumeMax \ \n (U32) mFluidBolusVolumeDef \ \n (U32) mArterialWindowMin \ \n (U32) mArterialWindowMax \ \n (U32) mArterialWindowDef \ \n (U32) mVenousWindowMin \ \n (U32) mVenousWindowMax \ \n (U32) mVenousWindowDef \ \n (U32) mVenousAsymmetricMin \ \n (U32) mVenousAsymmetricMax \ \n (U32) mVenousAsymmetricDef \ \n (U32) mTMPWindowMin \ \n (U32) mTMPWindowMax \ \n (U32) mTMPWindowDef \ \n (F32) mUltrafiltrationVolumeMin \ \n (F32) mUltrafiltrationVolumeMax \ \n (F32) mUltrafiltrationVolumeDef \ \n (U32) mVitalsIntervalDef \ \n (U32) mRinsebackVolumeMin \ \n (U32) mRinsebackVolumeMax \ \n (U32) mRinsebackVolumeDef \ \n (U32) mRinsebackFlowRateMin \ \n (U32) mRinsebackFlowRateMax SW -> TD: \n (U32) mRinsebackFlowRateDef \ \n (F32) mSubstitutionVolumeMin \ \n (F32) mSubstitutionVolumeMax \ \n (F32) mSubstitutionVolumeDef TD -> SW: MSG: [xXX: #59] Rejection Reasons : \n(U32) mAccepted \ \n (U32) mBloodFlowRateMinRejectionReason \ \n (U32) mBloodFlowRateMaxRejectionReason \ \n (U32) mBloodFlowRateDefRejectionReason \ \n (U32) mDialysateFlowRateMinRejectionReason \ \n (U32) mDialysateFlowRateMaxRejectionReason \ \n (U32) mDialysateFlowRateDefRejectionReason \ \n (U32) mTreatmentDurationMinRejectionReason \ \n (U32) mTreatmentDurationMaxRejectionReason \ \n (U32) mTreatmentDurationDefRejectionReason \ \n (U32) mHeparinBolusVolumeMinRejectionReason \ \n (U32) mHeparinBolusVolumeMaxRejectionReason \ \n (U32) mHeparinBolusVolumeDefRejectionReason \ \n (U32) mHeparinDispensingRateMinRejectionReason \ \n (U32) mHeparinDispensingRateMaxRejectionReason \ \n (U32) mHeparinDispensingRateDefRejectionReason \ \n (U32) mHeparinStopTimeMinRejectionReason \ \n (U32) mHeparinStopTimeMaxRejectionReason \ \n (U32) mDialysateTempMinRejectionReason TD -> SW: \n (U32) mDialysateTempMaxRejectionReason \ \n (U32) mDialysateTempDefRejectionReason \ \n (U32) mAcidConcentratePotassiumMinRejectionReason \ \n (U32) mAcidConcentratePotassiumMaxRejectionReason \ \n (U32) mAcidConcentrateCalciumMinRejectionReason \ \n (U32) mAcidConcentrateCalciumMaxRejectionReason \ \n (U32) mBicarbFinalDialysateCompositionMinRejectionReason \ \n (U32) mBicarbFinalDialysateCompositionMaxRejectionReason \ \n (U32) mBicarbFinalDialysateCompositionDefRejectionReason \ \n (U32) mSodiumFinalDialysateCompositionMinRejectionReason \ \n (U32) mSodiumFinalDialysateCompositionMaxRejectionReason \ \n (U32) mSodiumFinalDialysateCompositionDefRejectionReason \ \n (U32) mFluidBolusVolumeMinRejectionReason \ \n (U32) mFluidBolusVolumeMaxRejectionReason \ \n (U32) mFluidBolusVolumeDefRejectionReason TD -> SW: \n (U32) mArterialPressureLimitWindowMinRejectionReason \ \n (U32) mArterialPressureLimitWindowMaxRejectionReason \ \n (U32) mArterialPressureLimitWindowDefRejectionReason \ \n (U32) mVenousPressureLimitWindowMinRejectionReason \ \n (U32) mVenousPressureLimitWindowMaxRejectionReason \ \n (U32) mVenousPressureLimitWindowDefRejectionReason \ \n (U32) mVenousPressureLimitAsymtrcMinRejectionReason \ \n (U32) mVenousPressureLimitAsymtrcMaxRejectionReason \ \n (U32) mVenousPressureLimitAsymtrcDefRejectionReason \ \n (U32) mTrancembrncPressureLimitWindowMinRejectionReason \ \n (U32) mTrancembrncPressureLimitWindowMaxRejectionReason \ \n (U32) mTrancembrncPressureLimitWindowDefRejectionReason \ \n (U32) mUltrafiltrationVolumeMinRejectionReason \ \n (U32) mUltrafiltrationVolumeMaxRejectionReason \ \n (U32) mUltrafiltrationVolumeDefRejectionReason TD -> SW: \n (U32) mVitalsIntervalDefRejectionReason \ \n (U32) mRinsebackVolumeMinRejectionReason \ \n (U32) mRinsebackVolumeMaxRejectionReason \ \n (U32) mRinsebackVolumeDefRejectionReason \ \n (U32) mRinsebackFlowRateMinRejectionReason \ \n (U32) mRinsebackFlowRateMaxRejectionReason \ \n (U32) mRinsebackFlowRateDefRejectionReason \ \n (U32) mSubstitutionVolumeMinRejectionReason \ \n (U32) mSubstitutionVolumeMaxRejectionReason \ \n (U32) mSubstitutionVolumeDefRejectionReason == Advanced Institutional Settings Request == SW -> TD: MSG: [xXX: #0] Request: Advanced Institutional Records TD -> SW: MSG: [xXX: #24] (U32) mAccepted \ \n (U32) mReason \ \n (U32) mMinRORejectionRatioAlarmMin \ \n (U32) mMinRORejectionRatioAlarmMax \ \n (U32) mMinRORejectionRatioAlarmDef \ \n (U32) mDisinfectionFrequencyMin \ \n (U32) mDisinfectionFrequencyMax \ \n (U32) mDisinfectionFrequencyDef \ \n (U32) mDisinfectionParametersCycleTimeMin \ \n (U32) mDisinfectionParametersCycleTimeMax \ \n (U32) mDisinfectionParametersCycleTimeDef \ \n (U32) mMaxBloodPumpStopTimeMin \ \n (U32) mMaxBloodPumpStopTimeMax \ \n (U32) mMaxBloodPumpStopTimeDef \ \n (U32) mInletWaterCondLowThresholdMin \ \n (U32) mInletWaterCondLowThresholdMax \ \n (U32) mInletWaterCondLowThresholdDef \ \n (U32) mInletWaterCondHighThresholdMin \ \n (U32) mInletWaterCondHighThresholdMax \ \n (U32) mInletWaterCondHighThresholdDef \ \n (U32) mChlorineWaterSampleCheckMin \ \n (U32) mChlorineWaterSampleCheckMax \ \n (U32) mChlorineWaterSampleCheckDef \ \n (U32) mWaterSampleTestResultRequiredDef == Advanced Institutional Settings Adjustment == SW -> TD: MSG: [xXX: #22] Request: Adjust Advanced Institutional Records \ \n (U32) mMinRORejectionRatioAlarmMin \ \n (U32) mMinRORejectionRatioAlarmMax \ \n (U32) mMinRORejectionRatioAlarmDef \ \n (U32) mDisinfectionFrequencyMin \ \n (U32) mDisinfectionFrequencyMax \ \n (U32) mDisinfectionFrequencyDef \ \n (U32) mDisinfectionParametersCycleTimeMin \ \n (U32) mDisinfectionParametersCycleTimeMax \ \n (U32) mDisinfectionParametersCycleTimeDef \ \n (U32) mMaxBloodPumpStopTimeMin \ \n (U32) mMaxBloodPumpStopTimeMax \ \n (U32) mMaxBloodPumpStopTimeDef \ \n (U32) mInletWaterCondLowThresholdMin \ \n (U32) mInletWaterCondLowThresholdMax \ \n (U32) mInletWaterCondLowThresholdDef \ \n (U32) mInletWaterCondHighThresholdMin \ \n (U32) mInletWaterCondHighThresholdMax \ \n (U32) mInletWaterCondHighThresholdDef \ \n (U32) mChlorineWaterSampleCheckMin \ \n (U32) mChlorineWaterSampleCheckMax \ \n (U32) mChlorineWaterSampleCheckDef \ \n (U32) mWaterSampleTestResultRequiredDef TD -> SW: MSG: [xXX: #23] Rejection Reasons : \n(U32) mAccepted \ \n (U32) mMinRORejectionRatioAlarmMaxRejectionReason \ \n (U32) mMinRORejectionRatioAlarmMinRejectionReason \ \n (U32) mMinRORejectionRatioAlarmDefRejectionReason \ \n (U32) mDisinfectionFrequencyMinRejectionReason \ \n (U32) mDisinfectionFrequencyMaxRejectionReason \ \n (U32) mDisinfectionFrequencyDefRejectionReason \ \n (U32) mDisinfectionParametersCycleTimeMinRejectionReason \ \n (U32) mDisinfectionParametersCycleTimeMaxRejectionReason \ \n (U32) mDisinfectionParametersCycleTimeDefRejectionReason \ \n (U32) mMaxBloodPumpStopTimeMinRejectionReason \ \n (U32) mMaxBloodPumpStopTimeMaxRejectionReason \ \n (U32) mMaxBloodPumpStopTimeDefRejectionReason TD -> SW: \n (U32) mInletWaterCondLowThresholdMinRejectionReason \ \n (U32) mInletWaterCondLowThresholdMaxRejectionReason \ \n (U32) mInletWaterCondLowThresholdDefRejectionReason \ \n (U32) mInletWaterCondHighThresholdMinRejectionReason \ \n (U32) mInletWaterCondHighThresholdMaxRejectionReason \ \n (U32) mInletWaterCondHighThresholdDefRejectionReason \ \n (U32) mChlorineWaterSampleCheckMinRejectionReason \ \n (U32) mChlorineWaterSampleCheckMaxRejectionReason \ \n (U32) mChlorineWaterSampleCheckDefRejectionReason \ \n (U32) mWaterSampleTestResultRequiredDefRejectionReason @enduml