Объектно-ориентированные технологии проектирования прикладных программных систем


Определение зависимостей - часть 2


Зависимость "ATM'ы взаимодействуют с центральным компьютером во время проводки" раскладывается на "ATM'ы взаимодействуют с центральным компьютером" и "Проводка начинается с ATM";
  • производные зависимости: зависимость "Консорциум распределяет ATM'ы" является следствием зависимостей "Консорциум владеет центральным компьютером" и "ATM'ы взаимодействуют с центральным компьютером".

    Удалив избыточные зависимости, получим следующий список зависимостей:
    Банк владеет компьютером банка
    Компьютер банка поддерживает счета
    Банк владеет кассовыми терминалами
    Кассовый терминал взаимодействует с компьютером банка
    Кассир вводит проводку
    Проводка относится к счету
    ATM'ы взаимодействуют с центральным компьютером
    Проводка начинается с ATM
    Центральный компьютер взаимодействует с компьютером банка
    Консорциум состоит из банков
    Консорциум владеет центральным компьютером
    Клиенты имеют карточки
    Карточка обеспечивает доступ к счету
    В банке служат кассиры

    Уточним семантику оставшихся зависимостей следующим образом:

    • переименуем неверно названные зависимости, чтобы смысл их стал более понятен; так зависимость Компьютер_банка поддерживает счета удобнее заменить зависимостью Банк держит счета.
    • имена ролей можно не использовать, так как они ясны из имен классов, участвующих в зависимости, как например, для зависимости ATM'ы взаимодействуют с центральным компьютером;
    • неучтенные зависимости: Проводка начинается с кассового_терминала, Клиенты имеют счета, Проводка регистрируется карточкой следует добавить в модель.

    После уточнения зависимостей можно составить исходную версию объектной диаграммы. Для рассматриваемой задачи она будет иметь вид, представленный на рисунке 2.37.

    Рис. 2.37. Первая версия объектной диаграммы для банковской сети

    | |

    Comments:

    Copyright ©




    Начало  Назад  Вперед



    Книжный магазин