Софтуерна архитектура на ForexTrader – клиент-сървър приложение за извършване на търговия с forex-и



страница5/5
Дата14.02.2017
Размер0.52 Mb.
#14916
1   2   3   4   5

Връзки на News модул

  • Inner Relationships

  • Outer Relationships

    • News -> MDP - News модулът използва MDP за получаването на новините, получени от сървъра.

        • News -> News manager- News модулът използва News manager за прочитането, преместването, маркирането и изтриването на новините, получени от сървъра.

      • News -> GUI – News модулът използва функциите на GUI за изчертаване на графичния интерфейс, свързан с новините и статистиките, получавани от сървъра.

  • Връзки на Communicator модул

    • Inner relationships

      • Message Gateway <- > MPP – двата подмодула си комуникират при получаването/изпрашането на съобщение от/към сървъра. При изпращането на съобщение към сървъра модулът генериращ заявката за комуникация с клиента го предава към МРР, който от своя страна генерира съобщението, съгласно използвания протокол, и го предава на Message Gateway подмодулът за изпращането му към клиента. В случай на получаване на съобщение от сървъра Message Gateway-ът получава съобщенето, валидира формата му и го подава на МРР, който го разпакетира и установява кой модул следва да го обработи.

    • Outer Relationships

      • Communicator -> MDP – при получаване на съобщение от сървъра, което следва да се обработи от MDP, Communicator-ът генерира съответната команда и я изпраща към него.

        • MPP -> Rates of exchange manager - MPP изпраща команда до Rates of exchange Manager-а при получено съобщение от сървъра, съдържащо нови валутни курсове.

        • MPP -> Account manager - MPP изпраща команда до Account Manager-а при получено съобщение от сървъра, свързано с промяна на данните за сметката на клиента при брокера.

        • MPP <-> Positions manager - MPP изпраща команда до Positions Manager-а при получено съобщение от сървъра, свързано с промяна на позициите на клиента. При получаване на завка от потребителя за промяна на позициите му – създаване на нови, промяна или изтриване на вече съществуващи, Positions Manager-ът генерира команда към MPP, който да състави съобщение към сървъра със съответната заявка и да го пусне към Message Gateway-ът за изпращане.

      • Communicator -> Security & Authorization – Communicator-ът използва Security & Authorization модула за установяване на защитена връзка със сървъра и за автентикация на потребителя.

        • Message Gateway -> Security & Authorization - Message Gateway-ът използва услугите на Security & Authorization модула за установяване на защитена сесия със сървъра и автентикация на потребителя.

      • Communicator <-> Configuration – Communicator-ът изпраща команда за получаване на комуникационните параметри за връзка със сървъра при установяване на нова сесия с него.

        • Message Gateway -> Communication Configuration - Message Gateway –ът изпраща команда за получаване на комуникационните параметри за връзка със сървъра при установяване на нова сесия с него.

  • Връзки на GUI модул

    • Inner Relationships

    • Outer Relationships

      • GUI <-> Analysis – GUI модулът и Analysis си комуникират за изчертаването на графичния интерфейс за анализаторите и за обработка на заявките получени от потрбетиля чрез GUI.

      • GUI <-> Graphics – GUI модулът и Graphics си комуникират за изчертаването на графичния интерфейс на създадените от потребителя графики и за обработка на заявките получени от потрбетиля чрез GUI.

      • GUI <-> Inquiries Processor – GUI модулът и Inquiries Processor си комуникират за изчертаването на графичния интерфейс за генерираните от системата справки и за обработка на заявките получени от потрбетиля чрез GUI.

      • GUI <-> MDP – GUI модулът и MDP си комуникират за изчертаването на графичния интерфейс за представянето на данни за сметките, позициите на клиетна, за валутните курсове и пр., както и за обработка на заявките получени от потрбетиля чрез GUI.

      • GUI <-> Configuration – GUI модулът и Configuration си комуникират за изчертаването на графичния интерфейс за настройки на конфигурацията на клиентския терминал и за обработка на заявките получени от потрбетиля чрез GUI.

      • GUI <-> News – GUI модулът и News си комуникират за изчертаването на графичния интерфейс на новините и статистиките и за обработка на заявките получени от потрбетиля чрез GUI.



  1. Слоеве на архитектурата (Layered structure)




    1. Server Layers


Фиг.3 Слоеве на архитектурата на ForexTrader сървъра


Един от основните фактори на системата и в частност на сървъра е възможността за лесно модифициране и подмяна на различни модули. За тази цел е избран многослойноят архитектурен стил, който предлага ясно семантично обособяване между отделните нива, подредена архитектура и връзки между модулите.

Моделът включва три нива - слой за комуникация, слой за обработка на данни и слой за съхранение на данни.



  1. Нивото за комуникация съдържа всички модули нужни за приемането и предаването на съобщения от и към клиентския терминал и Back Office системата, както и за транслирането на съобщения в подходящ вид за предаване по мрежата.

  2. Нивото за обработка на данни служи за изпълнение на команди подадени от клиентския терминал върху текущите данни получени от Back Office системата, както и за обработката на новодошли. При генериране на подходящ отговор той се изпраща към комуникационния слой за изпращане по мрежата. Данните за обработка се записват и прочитат от слоя за съхранение на данни след получаването и първоначалната им обработка от сървъра.

  3. Нивото за съхранение на данни отговаря за достъпа и запазването на данни от слоя за обработка на данни, както и за прочитане и записване на конфигурационните файлове на сървъра.



    1. Client Terminal Layers



Фиг.4 Слоеве на архитектурата на ForexTrader клиентския терминал


Архитектурният стил използван при клиента е отново многослойният, което дорпинася за лесното модифициране и подмяна на нива от имплментацията на приложението. Клиентският терминал трябва да има висока надеждност и продуктивност, за това разпределянето на модулите му в отделни слоеве спомага за предвидимостта на системата и ясното разграничаване на отговорностите в нея. Слоевете използвани в приложението са общо ниво за комуникация, ниво за обработка на данни и ниво за съхранение на данни.

  1. Общото ниво за комуникация (MultiCom) обединява в себе си мрежово-комуникационно ниво със сървъра и графичен интерфейс за комуникация с потребителя. Двете поднива имат структурни различия, но логически са идентични - служат за комуникация. Всяко подниво от MultiCom е в пряка връзка със слоя за обработка на данни, но не и помежду си, по този начин промяна в модулите касаещи графичното представяне няма да засегне модулите касаещи мрежовата комуникация и обратното.

  2. Нивото за обработка на данни отговаря за получаването и обработката на данни от общия комуникационен слой, както и за записването и извличането на данни от нивото за съхранение.

  3. Нивото за съхранение на данни отговаря за достъпа и запазването на данни от слоя за обработка на данни, както и за прочитане и записване на конфигурационните файлове на клиента.




Сподели с приятели:
1   2   3   4   5




©obuch.info 2024
отнасят до администрацията

    Начална страница