Logo CitForum CITForum на CD Форумы Газета Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

10.03.2010

Google
WWW CITForum.ru

2.5.6. Динамическая модель банковской сети

В качестве примера применения рассмотренных принципов построения динамической модели построим динамическую модель банковской сети. Начнем с составления и изучения сценариев.


	ATM просит клиента вставить карточку

		клиент вставляет карточку

	ATM принимает карточку и читает ее номер

	ATM просит ввести пароль

		клиент вводит "1234."

	ATM передает номер и пароль в консорциум, 

		консорциум проверяет номер и пароль, 

		определяет код банка - "39" и сообщает ATM, что запрос принят

	ATM просит клиента (с помощью меню на экране) выбрать вид проводки 

		(снятие, вклад, перевод, запрос)

		клиент выбирает снятие

	ATM спрашивает клиента какова требуемая сумма

		клиент вводит $100

	ATM убеждается, что введенная сумма в пределах лимита и 

		просит консорциум выполнить проводку, 

		консорциум передает запрос в банк, 

		банк выполняет проводку и возвращает новое значение баланса счета

	ATM выдает сумму и просит клиента взять ее

		клиент берет деньги

	ATM спрашивает не нужно ли клиенту чего еще

		клиент вводит нет

	ATM печатает счет, выдает карточку и просит клиента взять их

		клиент берет счет и карточку

	ATM просит (другого) клиента ввести карточку

Рис. 2.53. Нормальный сценарий для банковской сети

На рисунке 2.53 представлен нормальный сценарий обслуживания клиента в банковской сети; один из возможных сценариев, содержащих исключительные ситуации, показан на рисунке 2.54.


	ATM просит клиента вставить карточку

		клиент вставляет карточку

	ATM принимает карточку и читает ее номер

	ATM просит ввести пароль

		клиент вводит "9999."

	ATM передает номер и пароль в консорциум; 

		консорциум, проконсультировавшись с соответствующим банком, 

	отвергает запрос

	ATM сообщает, что пароль введен неверно

		клиент вводит "1234."

	ATM передает номер и пароль в консорциум, 

		консорциум проверяет номер и пароль, 

		определяет код банка - "39" и сообщает ATM, что запрос принят

	ATM просит выбрать вид проводки

		клиент выбирает снятие

	ATM спрашивает какова требуемая сумма

		клиент (раздумав брать деньги) набирает отмену

	ATM выдает карточку и просит клиента взять ее

		клиент берет карточку

	ATM просит (другого) клиента вставить карточку

Рис. 2.54. Сценарий для банковской сети, содержащий исключительные ситуации

Для каждого сценария можно составить соответствующую трассу событий (рисунок 2.55). Для этого выделяем в сценарии имена событий (событиями являются все сигналы, вводы данных, решения, прерывания, переходы и действия, выполняемые клиентом или внешними устройствами), указывая для каждого события объект, порождающий это событие (активный объект).

Имея трассы событий, можно построить диаграммы состояний объектов проектируемой системы. Банковская сеть есть агрегация определенного числа параллельно и независимо работающих объектов четырех классов: консорциум, банк, ATM (банкомат) и клиент; поэтому состояние банковской сети определяется как кортеж состояний составляющих ее объектов: 1 объекта класса консорциум, b объектов класса банк, a объектов класса ATM (банкомат) и c объектов класса клиент (a, b, c - количество ATM, банков и клиентов сети соответственно). Классификация объектов, используемая при объектно-ориентированном подходе, позволяет вместо a+b+1 диаграмм состояний построить всего три (диаграммы состояний клиентов строить не нужно, так как их текущее состояние ясно и так).

Рис. 2.55. Трасса событий в банковской сети

Рис. 2.56. Привязка событий к объектам банковской сети

Построение диаграмм состояний начинается с привязки событий к объектам банковской сети (см. рисунок 2.56), являющимся источниками этих событий. Сначала рассматриваются нормальные события, потом исключительные события. Построение диаграммы состояний объекта (класса) может считаться законченным, когда диаграмма охватывает все рассматриваемые сценарии. Диаграммы состояний объектов классов ATM (банкомат), консорциум и банк представлены на рисунках 2.57, 2.58 и 2.59 соответственно.

Рис. 2.57. Диаграмма состояний объектов класса ATM (банкомат)

Рис. 2.58. Диаграмма состояний объектов класса консорциум

Рис. 2.59. Диаграмма состояний объектов класса банк

Назад | Содержание | Вперед

Подписка на новости CITForum.ru

Новые публикации:

17 февраля

  • MapReduce и параллельные СУБД: друзья или враги?

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

  • Системологический подход к декомпозиции в объектно-ориентированном анализе и проектировании программного обеспечения

    Газета:

  • Эволюция Wine

    3 февраля

  • Дом на песке

  • Реальное переосмысление "формальных методов"

  • Интервью с Найджелом Пендзом

    Газета:

  • iPad. Первый взгляд на долгожданный планшет от Apple

  • Я не верю в iPad

    20 января

  • SQL/MapReduce: практический подход к поддержке самоописываемых, полиморфных и параллелизуемых функций, определяемых пользователями

  • Данные на лету: как технология потокового SQL помогает преодолеть кризис

    Обзоры журнала Computer:

    2 декабря

  • Сергей Кузнецов. Год эпохи перемен в технологии баз данных

    18 ноября

  • Генерация тестовых программ для подсистемы управления памятью микропроцессора

  • Сравнительный анализ современных технологий разработки тестов для моделей аппаратного обеспечения

    11 ноября

  • Генерация оптимизированных для ручного выполнения сценариев тестирования приложений с графическим интерфейсом пользователя

  • Применение технологии UniTESK для функционального тестирования инфаструктурного ПО Грид

    28 октября

  • Remoting с сервером на Unmanaged C++ или Вторая жизнь старых приложений

  • Методы обеспечения переносимости ПО

  • Организация сложных тестовых наборов

    22 октября

    Обзоры журнала Computer:

    14 октября

  • МОГучие способности: новые приемы анализа больших данных

  • Учимся регулярно выражаться

    8 октября

  • Записки исследователя NTFS

  • Создание кросс-платформенных графических интерфейсов на wxPerl

    Все публикации >>>


  • IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

    Информация для рекламодателей PR-акции, размещение рекламы — тел. +7 495 6608306, ICQ 232284597 Пресс-релизы — pr@citforum.ru
    Послать комментарий
    Информация для авторов

    Редакция раздаёт котят!

    Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
    Copyright © 1997-2000 CIT, © 2001-2009 CIT Forum
    Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...