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).
- 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
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
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
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
▼
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