Kiến trúc WCF

Một phần của tài liệu Kiến thức hướng dịch vụ và ứng dụng phát triển phần mềm chứng khoán (Trang 46)

Hình dưới đây mô tả các lớp chú yếu trong kiến trúc của WCF

A p p lic atio n C o n tra c ts __ í rị.-4 * r ì • v - ạ x . . ■ • , . ¿ é 1 1...1... ... _____ ... ...i ( Service R u n tim e M essa g in g v , n;4 'Mề. ị p lề è m ỉ ỹ ệ - A W Ệ 2... - . . . - i l ! !Ë ---- _--- fT--?—■---- —' ' ■ • ■ ■ỉấấềiêắầ1<‘. ' Ề V— __________—__,________> - ...-¿ ¿ ¿ L_______■■ --- l i . ,

\ Activdtion and Hosting

v-*.: ; “ * .1 f Hi ... -mi, n rrtrw.1t... „ 1 LMÍII[rmi. Héi: ỵ>ẩ' 23Hình 3.2: Kiến trúc cùa WCF 3.2.1. Hợp đòng (Contracts)

Khái niệm contract trong WCF cũng giống như các họp đồng mà ta ký trong đời sống thật. Một họp đồng có thể chứa các thông tin như kiểu công việc ta sẽ làm, và những thông tin mà ta muốn đưa ra cho các bên khác. WCF contract cũng chứa các thông tin tương tự như vậy. Thông thường có các loại contract sau:

- Services Contract

Các hợp đồng dịch vụ mô tả toán từ mà dịch vụ có thể cung cấp. Ví dụ, dịch vụ đã được cung cấp để biết thời tiết của thành phố dựa trên mã vùng. Chúng ta gọi dịch vụ này như hợp đồng dịch vụ. Nó sẽ được tạo sử dụng thuộc tính “Service” và “Operational Contract”.

- Data Contract

Nó mô tả các kiểu dừ liệu tùy chỉnh đã được lộ ra tới client. Điều này xác định các kiểu dừ liệu được truyền đến và đi từ dịch vụ. Các kiểu dữ liệu như int, string đã được xác định bởi client bởi vì nó đã được đề cập đến trong tài liệu ngôn ngừ định nghĩa lược đồ XML, nhưng tùy chỉnh được tạo ra lóp hoặc kiểu dừ liệu không thế được xác định bởi các client, ví dụ như kiểu dữ liệu cho nhân viên. Bằng cách sử dụng

DataContract, chúng ta có thể làm cho khách hàng nhận thức được rằng chúng ta đang sư dụng kiểu dừ liệu nhân viên cho việc trả lại hoặc băng qua tham số tới phương thức.

- Message Contract

WCF tương tác với với mồi phần khác bàng sự trao đối các thông điệp SOAP. Bèn trong WCF, cẩu trúc và thiết kế thông điệp SOAP đã được tham chiếu như “message contract”. Một “message contract” có thể được bao gồm các định nghĩa cho một hoặc nhiều hơn các tiêu đề và thân SOAP.

- Policy and Bindings

Chỉ rõ các điều kiện yêu cầu để truyền thông với một dịch vụ,..., yêu cầu bao mật đế truyền thông với dịch vụ, giao thức và mã hóa đã được sử dụng cho sự liên kết.

3.3.2. Dịch vụ Runtime (Service Runtime)

Nó chứa đựng các hành vi xuất hiện trong thời gian chạy của dịch vụ. - Throttling behavior: Điều khiến số lượng thông điệp được xử lý. - E r r o r behavior: Chỉ rõ những gì xảy ra khi xuất hiện lồi trong dịch vụ.

- M etadata behavior: Hành xử như thế nào và liệu siêu dừ liệu là sằn dùng ra bèn ngoài dịch vụ chưa.

- Instance behavior: Chỉ rõ bao nhiêu thể hiện của dịch vụ phái được tạo trong khi chạy.

- Transaction behavior: Cho phép khôi phục lại của các toán tử giao tác nếu một lỗi xuất hiện.

- Message inspection: Kiểm tra thông điệp đem lại cho dịch vụ khả năng kiếm tra tất cả hay một số phần của thông điệp.

- Dispatch behavior: Kiểm soát cách thức thông điệp được xử lý bởi cơ sở hạ tầng WCF.

- Concurrency behavior: Hành xử này giúp cho việc điều khiển sổ lượng luồng có thể truy nhập tới một thực thể của dịch vụ.

- P aram eter filtering: Bộ lọc thông điệp.

3.2.3. Thông điệp (Message)

Tầng thông điệp bao gồm các kênh. Kênh A là một thành phần xử lý một thông điệp theo một cách nào đó, ví dụ sự xác thực một thông điệp. Một sự thiết lập các kênh cũng được biết như một chồng các kênh. Các kênh là sự trừu tượng cốt lõi cho việc gửi các thông điệp và nhận các thông điệp từ một điểm cuối. Có hai loại kênh là

- Các kênh truyền vận: Nắm giữ việc gửi và nhận các thông điệp từ mạng. Các giao thức như HTTP, TCP, MSMQ.

- Các kênh giao thức: Cài đặt SOAP dựa trên giao thức bằng sự xử lý và có thể chinh sửa thông điệp. Ví dụ, WS-Security và WS-Reliability.

3.2.4. Kích hoạt và Chửa (Activation and Hosting )

Các dịch vụ có thể được chứa và được thực thi, bởi vậy nó sẽ sẵn dùng đế tất cá mọi người truy cập từ client. WCF có thể host theo các cách sau:

50

- WCF có thê host trong Internet information Service (IIS). (adsbygoogle = window.adsbygoogle || []).push({});

- Dịch vụ kích hoạt Windows Activation Service (WAS) cua window là một cơ chế kích hoạt mới với I IS 7.0. Ngoài ra đế truyền thông dựa trên HTTP, WCF cũng có thê sử dụng WAS đề cung cấp sự kích hoạt thông điệp cơ bản trên các giao thức khác nhu TCP.

- Tự host (Self hosting)

Dịch vụ WCF có thể được host như ứng dụng console, winform hoặc ứng dụng WPF (Windows Presentation Foundation) với giao diện đồ họa.

- Dịch vụ của window (Windows Service)

WCF có the cũng được host như một window service, để nó là dưới sự kiêm soát của sự quán l ý điều khiển dịch vụ.

CH Ư Ơ N G 4 - N G H IỆ P v ụ PHẦN MỀM

Chương này trình bày về các quy trình nghiệp vụ dành cho giao dịch chứng khoán nhu’ quy trình đặt lệnh môi giới, quy trình sửa và hủy lệnh môi giới đê từ đó cỏ thờ trién khai các quv trình này vào ứng dụng phần mềm.

4.1 Quy trình nhập lệnh môi giói

4.1.1 Mô tả khái quát

- Ọuy trình này cho phép thực hiện nhập và duyệt lệnh giao dịch chứng khoán (buo gồm cả lệnh mua và lệnh bán). Khách hàng có thể đặt lệnh qua nhiều hinh thức khác nhau như đặt lệnh trực tiếp tại công ty chứng khoán, qua Fax, email hay điện thoại. - C á c lệnh đó sẽ được nhân viên môi giới nhập vào phần mềm giao dịch (StockPro). Hệ thống sẽ tự động kiểm tra số dư tiền đối với lệnh mua, số dư chứng khoán đối với lệnh bán. Trong trường hợp lệnh mua không đủ tiền, hệ thống sẽ đưa ra cảnh báo thiếu tiền. Trong trường hợp lệnh bán không đủ số dư chứng khoán, StockPro sẽ đưa ra cánh báo cho nhân viên môi giới biết, StockPro chỉ cho phép thực hiện lệnh bán thiếu chứng khoán đổi với tài khoản khách hàng có chứng khoán cầm cố. Nếu lệnh bán chứng khoán cầm cố được khớp, kết thúc giao dịch, kế toán sẽ phải giải tỏa chứng khoán cầm cố để treo chứng khoán bán ngày T.

- Sau khi nhập lệnh vào hệ thống thành công, nhân viên môi giới ghi số hiệu lệnh, giò nhập lệnh vào phiếu lệnh và chuyển cho Cán bộ duyệt lệnh

- Sau khi lệnh được duyệt, lệnh giao dịch sẽ được truyền vào hai sàn, thông thường, lệnh sẽ được truyền trực tiếp nhưng nếu vì một lý do nào đó, đường truyền gặp sự cố thì nhân viên giao dịch cần phải truyền lệnh vào sau qua điện thoại đế đảm bảo tính kịp thời. Khi lệnh đã ở trên sàn và được nhân viên giao dịch tại sàn nhập liệu vào hệ thống của trung tâm, chương trình có một chức năng cho phép kiểm soát tính đúng đán của dừ liệu nhập trên sàn so với dừ liệu tại Công ty chứng khoán (chi áp dụng trong trường hợp truyền lệnh trực tiếp). Việc đối chiếu kết quả khớp lệnh sã được hệ thống thực hiện một cách tự động và sau đó gửi kết quả khớp lệnh cho khách hàng qua SMS.

52 Q uy trình n h ậ p d u y ệ t lện h Môi g iớ i K hách H àng P hò ng Giao D ịch Đắt đầu

Yèu cầu đặt lệnh cùa KH

.... -T- - -■

1 Phiếu lệnh

9 1 Gửi thòng tin kết quà khớp lệnh tới KH

qua SMS

Quy trinh hủy sửa lệnh

2 G D V kiểm tra tính hợp lệ cùa thông tin trên phiếu lệnh

Kết Thúc

Không

GD ?

9.2 Thông báo kết quả khớp lệnh giải tỏa CK cầm cổ đối

VỠI lệnh bán CK càm cổ

. Đổi chiếu kết quả giao dịch ! của sờ-trung tàm GDCK —J --- không Cò có 6.2 Đ ọc lệnh vào sàn Hùy, Sửa lệnh? I

Sửa lỗi sau giao dịch

7. Đại diện sàn nhập lệnh vào hệ thống của TTGD

TH xày ra sự cố

<6.1 Truyèn lệnh vào san (adsbygoogle = window.adsbygoogle || []).push({});

TH thống thướng

Hợp lệ

Không hợp lệ

Kết \ Thúc

3. Giao dịch viên nhập lệnh của Hợp lệ - > khách hàng vào hệ thống

StockPro

4. StockPro Tự động vấn tin số dư tiền gửi cùa KH tại NH, và số dư chứng khoán đổi với lệnh bán

5. Kiểm soát duyệt lệnh

Khỏng dù

4.1 Thông báo khảch hàng thiếu tiề n/ chứng khoán

Hình 4.1: Sơ đồ quy trình nhập lệnh môi giới

4.1.3 Các bước thực hiện

Bưóc Mô tả Chi tiểt

1 Khách hàng đặt lệnh

Khách hàng có thê đặt lệnh qua điện thoại, đên trực tiêp sàn giao dịch tại công ty CK để viết phiếu lệnh hoặc Fax lệnh

2 Kiêm tra Kiêm tra tính chính xác, tính hợp lệ trên phiêu lệnh. Nêu phiếu lệnh không hợp lệ, nhân viên môi giới phái húy phiếu lệnh, và yêu cầu KH viết lại phiêu lệnh khác

3 Nhập lệnh vào

hệ thống

Nhập lệnh mua/bán của khách hàng vào hệ thông StockPro qua màn hình nhập lệnh

Iìuóc Mô tả Chi tiêt

StockPro

4 Tự động kiêm tra số dư tiền và chứng khoán

Tự động kiêm tra sô dư tiên đôi với lệnh mua và sô dư chứng khoán đối với lệnh bán

4.1 Thiêu tiên, thiếu CK

StockPro sẽ đưa ra cảnh báo, nhân viên môi giới căn cứ vào thông tin thiếu tiền, thiếu CK => thông báo cho khách hàng biết.

4.2 Cho phép thực hiện lệnh thiếu tiền, thiếu CK

Đôi với việc không đủ tiên trong mua chứng khoán, nêu cho phép thực hiện tiếp thì cập nhật thông tin bảo lãnh còn nếu không cho phép thì kết thúc luôn quy trình ở đây. Đối với việc bán thiếu CK, nếu khách hàng có CK cầm cố thì tiếp tục thực hiện lệnh, nếu không thì kết thúc quy trình nhập lệnh

5 Kiêm soát

duyệt lệnh tại công ty

Kiêm soát viên kiêm tra phiêu lệnh gôc với dừ liệu đà nhập trên hệ thống StockPro (adsbygoogle = window.adsbygoogle || []).push({});

Nếu lệnh không có sai sót, duyệt lệnh trên hệ thống, ký nháy vào vị trí trưởng phòng môi giới và chuyển phiếu lệnh cho nhân viên chuyển lệnh vào TTGDCK.

Nếu phát hiện có sai sót trong khâu nhập lệnh thì chuyến lại cho nhân viên nhập lệnh để sửa lỗi.

6.1 Truyên lệnh vào sàn

Hệ thông hô trợ chức năng truyên lệnh một cách tự động vào sàn giao dịch sau khi lệnh được duyệt

6.2 Đọc lệnh vào sàn

Trong trường hợp vì một lý do nào đó, đường truyên dữ liệu vào hai sàn giao dịch có vấn đề, nhân viên môi giới cần phải tiến hành đọc lệnh qua điện thoại vào sàn giao dịch

7 Nhập lệnh vào hệ thống của TTGD

Đại diện giao dịch tiên hành nhập lệnh vào hệ thông giao dịch ngay khi nhận được lệnh từ công ty. Khi lệnh đà được nhập vào hệ thống của TTGD, nếu khách hàng có yêu cầu sửa giá, hoặc hủy lệnh => quy trình hủy sứa lệnh đã vào sàn

8 Đôi chiêu Deal tự động

Hệ thông có một chương trình cho phép kiêm tra đôi chiếu lệnh nhập tại công ty với kết quả lệnh do TTGD trá về. Liên tục so khớp các lệnh có trong sổ lệnh tại công ty với các lệnh có trong sổ lệnh tại TTGD. Kết thúc giao dịch, phòng môi giới tiến hành xử lý các lệnh lồi => quy trình sửa lỗi giao dịch

54

Bước Mô tả Chi tiet

quả khớp lệnh SMS 9.2 Thông báo kêt

quá khớp lệnh

In ra báo cáo kêt quả khớp lệnh gửi khách hàng

Bang 4.1: Mô tả chi tiết các bước của quy trình nhập lệnh

4. 2 Quy trình hủy lệnh

4.2.1 Mô tả khái quát

- Nghiệp vụ này phát sinh khi khách hàng có yêu cầu hủy lệnh đã đặt, hoặc khi phát hiện có sự sai lệch giữa phiếu lệnh gốc của khách hàng với lệnh nhập vào hệ thống. - Nhân viên môi giới có thế gọi điện thông báo cho đại diện sàn để hủy lệnh.

- Chi có thể thực hiện yêu cầu hủy lệnh đối với những lệnh chưa khớp hoặc phần chưa được khớp cùa lệnh đặt. 4.2.2 S ơ đồ nghiệp vụ Q u y trỉn h hủy lệnh Bát đầu Két thúc f

1. Phiéu lộnh huy ^ duyột chưa? Chưa duyệt ► 2 Hủy lộnh tại công ty Đã duyệt

3 Thông báo cho đại diộn sàn

Lộnh đâ nhập n 4 2 Nhập lệnh hùy vào hệ thống vào sàn ? p nhận lệnh cúa TTGD

Hình 4.2: Sơ đồ quy trình hủy lệnh môi giới

4.2.3 Mô tả chi tiết các bước

Bưóc Mô tả Chi tiết

1 Khách hàng viêt

--- ,--- r———— Khách hàng có thê hủy lệnh qua điện thoại, đèn trực

4 1 Xác nhận lệnh hùy trong StockPro. đổng thời bỏ qua không (adsbygoogle = window.adsbygoogle || []).push({});

nhâp lệnh đỏ vào hé thổng của * Chư« nhàp

Bước Mô tả Chi tiết

phiêu lệnh hủy tiêp sàn giao dịch tại công ty CK đê viêt phiêu lệnh hoặc Fax lệnh

2 Hủy lệnh tại công ty

Kiêm tra xem lệnh cũ tương ứng đã được duyệt chưa? Nếu chưa, kiếm soát viên có thế hủy lệnh neay tại công ty. Lệnh hủy sẽ có trạng thái X và StockPro sẽ lưu lại thông tin của việc hủy lệnh.

3 Thông báo cho đại diện sàn

Trong trường hợp lệnh đã được duyệt và được truyên vào sàn, nhân viên môi giới phải gọi điện vào sàn đế thông báo cho đại diện sàn biết về yêu cầu huy lệnh của khách hàng.

4.2 Nhập lệnh hủy vào hệ thống của TTGD

Nêu lệnh đặt của khách hàng đã được nhập vào hệ thống của TT, đại diện sàn sẽ nhập lệnh hủy tương ứng vào hệ thống. Lệnh đặt của khách hàng sẽ được cập nhật về trạng thái c.

4.1 Bỏ qua, ko nhập lệnh đặt vào hệ thống

Nêu lệnh đặt của khách hàng chưa được nhập vào hệ thống của TTGD, đại diện sàn sẽ nhấn nút huy lệnh trong StockPro, và bỏ qua không nhập lệnh đặt đó vào hệ thống của TTGD nữa.

Lệnh đặt của khách hàng sẽ được cập nhật thành trạng thái D

f

Bảng 4.2: Mô tả chi tiêt các bước của quy trình hủy lệnh

4.3 Quy trình sửa lệnh

4.3.1 Mô tả khái quát

- Nghiệp vụ phát sinh khi khách hàng có yêu cầu sửa giá của lệnh đặt, hoặc khi nhân viên giao dịch phát hiện có sự sai lệch về giá của lệnh gốc với giá của lệnh nhập vào hệ thống.

- Chỉ có thể thực hiện việc sửa giá đối với những lệnh chưa khớp hoặc phần chưa được khớp của lệnh đặt

56

4.3.2 S ơ đồ nghiệp vụ

Q u y trin h sửa lệnh

Bắt đầu

1 Phiéu lệnh sửa giá - . . . . , o. . r,

3 3 Nhập lệnh mới vào StockPro Két thúc +

A A

Lệnh của sàn HO/ urif>r - r r 77 . . . . . . HOSE 2 --- ị Quy trinh hũy lệnh

HNX

▼ (adsbygoogle = window.adsbygoogle || []).push({});

4 Cập nhật giá đặt cho lệnh Lệnh đâ nhập n 5 1 Nhập lệnh sửa giá váo hẻ muốn sửa giá * vào sàn ? n ạp Ịhống nhân lệnh cua TTGD

Chưa 5.2 Hủy lệnh cũ trong StockPro. nhập lệnh mới vào hệ thòng của

TTGD

Hình 4.3: Sơ đồ nghiệp vụ quy trình sửa lệnh môi giới

4.3.3 Các bước thực hiện

lỉước Mô tả Chi tiết

1 Khách hàng viêt phiếu lệnh sửa giá

Khách hàng có thê sửa lệnh qua điện thoại, đên trực tiếp sàn giao dịch tại công ty CK để viết phiếu lệnh hoặc Fax lệnh

2 Hủy lệnh cũ Đôi với những lệnh đặt trên sàn HSX => Hủy lênh cũ => Ọuy trình hủy lệnh

3 Nhập lệnh mới Sau khi hủy lệnh cũ => Nhân viên môi giới nhập

Một phần của tài liệu Kiến thức hướng dịch vụ và ứng dụng phát triển phần mềm chứng khoán (Trang 46)