Я працюю над додатком, модуль якого здійснює наступні фінансові операції послідовно:
Коли користувач вимагає перерахувати певну суму на її банківський рахунок:
- перевірити, чи може відбутися будь-яка транзакція зараз? (транзакція може бути здійснена лише протягом певного періоду часу)
- перевірити, чи користувач просив зняти мінімальну суму
- перевірити, чи є у користувача обліковий запис за замовчуванням
Результат усіх вищезазначених дій повинен бути зафіксований.
Якщо всі вищевказані умови задовольняються, транзакція проводиться. Надалі можуть бути додаткові перевірки.
Яка об'єктно-орієнтована модель дизайну повинна найкраще підходити для вищезазначеного випадку?