1
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
VŨ NAM CƯỜNG
NGHIÊN CỨU PHÁT TRIỂN KHUNG PHẦN MỀM HỆ
THỐNG TÍCH HỢP CÁC PHẦN MỀM TẠI BƯU CỤC
GIAO DỊCH TẠI TỔNG CÔNG TY BƯU CHÍNH VIỆT
NAM – VNPOST
CHUYÊN NGÀNH: TRUYỀN DỮ LIỆU VÀ MẠNG MÁY TÍNH
MÃ SỐ: 60.48.15
TÓM TĂT LUẬN VĂN THẠC SĨ
Người hướng dẫn khoa học:
T
S.
H
Ồ KHÁNH LÂM
HÀ NỘI - 2011
2
MỞ ĐẦU
Cùng với sự phát triển ngày càng mạnh mẽ của công nghệ thông tin,
ngày nay công nghệ thông tin đã ảnh có ảnh hưởng sâu rộng đến mọi
hoạt động của mọi lĩnh vực khác nhau. Tổng công ty Bưu chính là một
trong những đơn vị ứng dụng công nghệ thông tin trong hoạt động khai
thác dịch vụ từ rất sớm. Việc ứng dụng công nghệ thông tin đã làm nâng
cao chất lượng dịch vụ Bưu chính (nhanh hơn, chính xác hơn) và đồng
thời giảm được chi phí khai thác dịch vụ.
Trong những năm gần đây, Tổng công ty Bưu chính Việt Nam (VNPost)
đã đẩy mạnh ứng dụng công nghệ thông tin hỗ trợ khai thác các dịch vụ
Bưu chính. Đến nay, VNPost đã triển khai thành công có hiệu quả một
số các phần mềm có thể kể đến các phần mềm như: Phần mềm hỗ trợ
khai thác dịch vụ chuyển tiền – CT2003, phần mềm khai thác chuyển
phát nhanh – EMS, phần mềm khai thác dịch vụ Bưu kiện – BK2007 và
gần đây nhất là phần mềm hỗ trợ công tác điều chuyển luồng tiền –
CFM. Với những phần mềm được triển khai đã mang lại lợi ích lớn
trong việc khai thác dịch vụ của Tổng công ty. Tuy nhiên, có những lý
do như: các phần mềm được phát triển còn có những điểm chưa thống
nhất về môi trường phần cứng hoạt động, chính vì vấn đề này đã dẫn
đến bất cập là:
Tại bưu cục giao dịch tồn tại nhiều máy tính trong một không gian chật
hẹp, bên cạnh đó việc phải chạy nhiều chương trình trong quá trình khai
thác cũng gây ra những khó khăn cho cán bộ giao dịch viên.
Về hiện mặt xu hướng ứng dụng công nghệ thông tin tại các nước phát
triển như: Mỹ, Hàn Quốc, Nhật Bản thì xu hướng sử dụng chung một hệ
3
thống phần mềm duy nhất để khai thác nhiều loại dịch vụ là phổ biến, và
đây là xu hướng tất yếu của việc phát triển công nghệ thông tin trong
lĩnh vực Bưu chính
Trong phạm vi luận văn này, tác giả đưa ra một hướng giải quyết nhằm
tích hợp các ứng dụng phần mềm riêng lẻ tại các điểm bưu cục giao
dịch.
Nội dung của luận văn dự kiến sẽ được chia thành 3 chương với những
nội dung cụ thể sau:
Chương 1: Khảo sát hiện trạng ứng dụng phần mềm tại bưu cục
giao dịch hiện nay.
o Phần này nghiên cứu về các phần mềm đang triển khai
tại hệ thống bưu cục của Tổng công ty bưu chính
o Tìm hiểu xu hướng ứng dụng phần mềm tại bưu cục
giao dịch
o Kết luận:
Chương 2: Phân tích lựa chọn công nghệ.
o Xác định yêu cầu khi xây dựng hệ thống phần mềm
khung tích hợp tại bưu cục giao dịch.
o Lựa chọn giải pháp công nghệ và công cụ xây dựng hệ
thống.
o Giải pháp kỹ thuật chi tiết
o Kết luận:
Chương 3: Thiết kế tổng thể hệ thống khung phần mềm tại bưu
cục giao dịch.
o Thiết kế logic hệ thống
o Đặc tả các chức năng chi tiết hệ thống
o Thiết kế lớp đối tượng
o Hướng khuyến nghị, định hướng phát triển
4
Chương 1
KHẢO SÁT HIỆN TRẠNG, XU HƯỚNG ỨNG
DỤNG PHẦN MỀM TẠI BƯU CỤC GIAO DỊCH
HIỆN NAY.
Nội dung chương 1 đề cấp đến các phần mềm ứng dụng đang được triển
khai, và xu hướng ứng dụng công nghệ thông tin tại Bưu cục giao dịch
trênt thế giới và trong nước.
1.1. Hiện trạng ứng dụng phần mềm tại bưu cục giao dịch
Với mục tiêu đồng bộ các khâu khai thác dịch vụ trong Tổng công ty
Bưu chính bao gồm các điểm bưu cục 3, các điểm bưu cục huyện, bưu
điện tỉnh/TP và Tổng công ty. Trong những năm qua, Tổng công ty Bưu
chinh Việt Nam đã thống nhất được quy trình khai thác nghiệp vụ tại
các điểm trên mạng lưới, qua đó đã tạo điều kiện cho việc triển khai
thống nhất các hệ thống công nghệ thông tin cho các dịch vụ, vì đặc thù
dịch vụ của Tổng công ty Bưu chính Việt Nam là triển khai trên diện
rộng, thường là toàn quốc, bản chất dịch vụ của Bưu chính Việt Nam
phần lớn đều có thể quy ra là việc truyền tải thông tin từ điểm đến điểm
do đó việc ứng dụng công nghệ thông tin trong việc khai thác là hoàn
toàn đúng đắn.
Tổng công ty Bưu chính Việt Nam đã triển khai và thống nhất được khá
nhiều hệ thống phần mềm trên toàn bộ mạng lưới, các phần mềm này đã
phần nào đã hỗ trợ tốt quy trình khai thác nghiệp vụ tại các đơn vị khai
thác. Những phần mềm triển khai cho Tổng công ty Bưu chinh Việt
Nam hiện nay thường được phát triển để phục vụ một dịch vụ nào đó
mà Tổng công ty Bưu chinh cung cấp, ví dụ: hệ thống phần mềm
5
CT2003: để phục vụ khai thác nghiệp vụ Chuyển tiền; phần mềm
EMS2007 để khai thác dịch vụ chuyển phát nhanh, Những phần mềm
này thường rất phức tạp do quy trình cung cấp dịch vụ của Tổng công ty
Bưu chính còn mang nặng hình thức thủ công trước đây. Ngoài ra để
triển khai một hệ thống phần mềm cho Tổng công ty Bưu chính thường
tốn rất nhiều nhân lực và tiền bạc do phải triển khai đồng loạt trên toàn
bộ 63 tỉnh/TP, vì vậy việc thay thế một hệ thống phần mềm cũ bằng hệ
thống phần mềm mới là việc làm rất khó khăn và tốn kém.
Hiện nay, Tổng công ty Bưu chính đã và đang triển khai được một số hệ
thống phần mềm như sau:
- Hệ thống phần mềm chuyển tiền – CT2003
- Hệ thống phần mềm quản lý luồng tiền – CFM
- Hệ thống PayPost Counter
- Hệ thống EMS
- Hệ thống BPBK2007
- Hệ thống Epost
2.1 Xu hướng ứng dụng phần mềm tại bưu cục giao dịch
2.1.1. Tình hình ứng dụng CNTT tại bưu chính một số nước trên
thế giới
Xu thế phát triển bưu chính điện tử trên thế giới
Được sự ủng hộ về mọi mặt của Liên minh bưu chính quốc tế (UPU)
thông qua chiến lược và các chương trình hành động đề ra trong các kỳ
đại hội, cùng với sự quan tâm đặc biệt của Chính phủ và đặc biệt là công
chúng, trong thời gian qua, bưu chính thế giới đã tập trung phát triển
6
mạnh việc ứng dụng công nghệ thông tin vào khai thác dịch vụ Bưu
chính nhằm hướng đến phát triển bưu chính điện tử. Vì vậy mà việc ứng
dụng Công nghệ thông tin đã được đẩy mạnh và ứng dụng vào hầu hết
các dịch vụ Bưu chính bao gồm cả những dịch vụ Bưu chính truyền
thống và các dịch vụ mới. Có thể kể đến những dịch vụ có ứng dụng
Công nghệ thông tin như: Dịch vụ chuyển tiền bưu chính, dịch vụ
chuyển phát, Ngoài ra các dịch vụ mới hướng đến ứng dụng Công
nghệ thông tin vào khai thác như: Dịch vụ hậu cần bưu chính dựa trên
hợp đồng thỏa thuận giữa doanh nghiệp kinh doanh thương mại điện tử
với doanh nghiệp bưu chính; Dịch vụ trung gian thanh toán tiền tệ là
một loại dịch vụ có tính sáng tạo mới, chủ yếu là phục vụ cho các khách
hàng không muốn cung cấp dữ liệu thẻ tín dụng của mình qua mạng
Internet; Dịch vụ hộp thư điện tử bưu chính thông qua hệ thống chuyển
phát thư tín điện tử đã chuyển phát các loại giấy tờ như các loại phiếu,
giấy báo nợ, thư quảng cáo.v.v tới khách hàng; Dịch vụ bưu gửi lai
ghép (Email to Letter); Dịch vụ bán lẻ hàng hóa trực tuyến cung cấp các
sản phẩm đặc trưng bưu chính như tem chơi, bưu thiếp điện tử; tem
chơi, bưu thiếp điện tử cá thể hóa, vật phẩm bưu chính. Dựa vào hạ tầng
cơ sở sẵn có, Bưu chính đã cung cấp các dịch vụ này một cách thuận lợi,
đem lại hiểu quả không chỉ cho chính doanh nghiệp mà còn cho toàn xã
hội.
Về xu hướng công nghệ, cổng giao dịch điện tử tích hợp dịch vụ được
nhiều doanh nghiệp Bưu chính các nước lựa chọn và thiết lập bởi khả
năng tích hợp kinh doanh trực tuyến các sản phẩm với các doanh nghiệp
khác.
7
2.1.2. Tình hình ứng dụng CNTT tại Bưu chính Việt Nam
Về định hướng phát triển:
Quyết định của Thủ tướng chính phủ về việc phê duyệt Quy hoạch phát
triển Bưu chính Việt Nam đến năm 2010 số 236/2005/QĐ-TTg, ngày
26/9/2005, trong điều 2, định hướng và giải pháp chủ yếu nhằm thực
hiện quy hoạch được duyệt đã chỉ rõ: “Với sự hội tụ bưu chính kết hợp
với các lĩnh vực tài chính để tạo thành tài chính bưu điện; kết hợp với
công nghệ thông tin để phục vụ bưu chính điện tử; kết hợp với viễn
thông để hoà vào mạng lưới cung cấp dịch vụ, sản phẩm viễn thông”.
Quy hoạch cũng nêu: “Nâng cao chất lượng các dịch vụ bưu chính hiện
có và phát triển các dịch vụ bưu chính mới bao gồm các dịch vụ trọn gói
hàng hoá (chia chọn, đóng gói, sắp xếp), dịch vụ kho bãi, dịch vụ quản
lý chu trình cung cấp hàng hoá, dịch vụ mua bán hàng hóa qua bưu
chính tạo ra kênh phân phối và thanh toán hàng hoá phù hợp với nhu
cầu phát triển thương mại của đất nước và góp phần thúc đẩy phát triển
thương mại điện tử”, và “lập hóa đơn và thanh toán điện tử, dịch vụ tra
cứu thông tin, e-mail an toàn…”.
Báo cáo tổng kết 2005 của Tổng công ty bưu chính viễn thông Việt
Nam (Nay là Tập đoàn Bưu chính Viễn thông), phần định hướng giai
đoạn 2006 – 2010 có nêu: “Về các dịch vụ: Phát triển thêm các dịch vụ
mới đáp ứng nhu cầu của khách hàng như dịch vụ Direct Mail, thương
mại điện tử, ” Trước đó, năm 2003, Kế hoạch tổng thể ứng dụng công
nghệ thông tin trong bưu chính - ITMP giai đoạn 2001 – 2010 đã ra đời,
thể hiện bước ngoặt lớn trong bưu chính về định hướng và kế hoạch.
8
Với định hướng rõ ràng về chủ trương và có kế hoạch cụ thể, Tổng công
ty Bưu chính Việt Nam đã phần nào ứng dụng thành công có hiệu quả
các ứng dụng công nghệ thông tin vào việc khai thác dịch vụ.
Hiện nay tại Bưu cục giao dịch – Tổng công ty Bưu chính Việt Nam, có
khá nhiều hệ thống phần mềm được cài đặt để hỗ trợ khai thác dịch vụ
tại đây, những phần mềm này đã mang lại lợi ích không nhỏ trong khai
thác dịch vụ như: giảm chi phí khai thác dịch vụ hay nâng cao chất
lượng dịch vụ như rút ngắn thời gian cung cấp dịch vụ. Ví dụ đối với
dịch vụ Chuyển tiền, trước đây chưa ứng dụng hệ thống phần mềm thì
việc chuyển tiền từ người gửi đến người nhận có khi mất cả tuần tuy
nhiên thời gian nhận gửi tiền đã được rút ngắn xuống chỉ còn một ngày
hoặc thậm chí vài giờ đã đến tay người nhận.
Như vậy việc ứng dụng ứng dụng công nghệ thông tin trong khai thác
dịch vụ của mình là hướng đi đúng đắn của VNPost do các dịch vụ của
Tổng công ty Bưu chính thường là dịch vụ cung cấp trên phạm vị rộng
thường là toàn quốc. Tuy nhiên những phần mềm hiện đang triển khai
còn tồn tại những điểm chưa thống nhất về môi trường phần cứng, phần
mềm hoạt động như: hệ điều hành hay thậm chí các tham số môi trường
trong hệ điều hành như định dạng ngày tháng, có phần mềm thì yêu cầu
định dạng dd/MM/yyyy, có phần mềm lại yêu cầu phải theo định dạng
dd/MM/yyyy. Với yêu cầu như vậy dẫn đến mỗi phần mềm triển khai
lại phải cài đặt trên một bộ máy tính khác nhau, dẫn đến việc tồn tại
nhiều máy tính tại một điểm bưu cục giao dịch.
Diện tích sử dụng tại một điểm bưu cục giao dịch thường không quá lớn
và cố định, do đó mỗi lần triển khai thêm một hệ thống phần mềm lại
phát sinh thêm một bộ máy tính làm diện tích sử dụng ngày càng chật
9
chội. Bất cập này có thể khắc phục bằng cách đưa thêm yêu cầu về môi
trường triển khai vào thành một yêu cầu khi đặt hàng phát triển phần
mềm. Tuy nhiên giả sử các hệ thống phần mềm có thể cài đặt trên một
hệ thống máy tính thì bất cập chưa phải đã hết, do giao dịch viên phải
chuyển qua lại các phần mềm trong quá trình khai thác là một trong
những bất cập không nhỏ đấy là chưa kể đến việc lãng phí tài nguyên hệ
thống khi phải duy trì nhiều hệ thống phần mềm cùng chạy một lúc như:
bộ nhớ máy tính cần phải lớn do đó phải trang bị máy tính có bộ nhớ lớn
gây lãng phí không cần thiết.
Ngoài bất cập trên việc không thể cài đặt nhiều phần mềm trên một hệ
thống máy tính còn ảnh hưởng đến cách tổ chức sản xuất tại bưu cục
giao dịch. Cách tổ chức sản xuất mới hướng đến khả năng phục vụ đa
dịch vụ trên một quầy giao dịch điều này khắc phục được nhược điểm tổ
chức khai thác như hiện nay là mỗi quầy chỉ phục vụ một dịch vụ nào
đó, cách tổ chức này tỏ ra không hiệu quả do cách chuyên môn hóa như
vậy sẽ gây ra lượng phân bố khách hàng trên các quầy không đều nhau
phụ thuộc vào lượng khách của từng dịch vụ. Điều này dẫn đến có
những quầy quá đông khách phục vụ không kịp còn có những quầy thì
không có khách hàng.
Hiện nay, Tổng công ty Bưu chính Việt Nam đang nỗ lực phát triển mới
nhiều dịch vụ mới trong các mảng dịch vụ tiềm năng như: dịch vụ tài
chính bưu chính, bán lẻ, Ngoài ra xu hướng liên doanh, liên kết với
các hãng Bưu chính nước ngoài như DHL, WestenUnion để khai thác
thị trường bưu chính trong nước cũng được quan tâm đẩy mạnh. Đây là
hướng đi đúng đắn giúp mang lại doanh thu cao cho Bưu chính Việt
Nam. Dịch vụ mới triển khai hoặc liên doanh liên kết với các hãng khác
10
đều đòi hỏi phải khai thác trên hạ tầng Công nghệ thông tin, các phần
mềm mới tiếp tục được phát triển, bên cạnh đó còn có những phần mềm
do đối tác cung cấp để khai thác dịch vụ, do đó xu hướng đầu phần mềm
sử dụng tại bưu cục giao dịch tăng nên nhanh chóng trong một vài năm
gần đây.
Chương 2
PHÂN TÍCH VÀ LỰA CHỌN CÔNG NGHỆ
Chương 2 tập trung vào phân tích hiện trạng, bất cập ứng dụng
phần mềm tại Bưu cục giao dịch để có được yêu cầu về xây dựng
hệ thống phần mềm khung. Đưa ra lựa chọn về giải pháp công
nghệ, các giải pháp kỹ thuật xây dựng hệ thống phần mềm.
2.1 Xác định yêu cầu khi xây dựng hệ thống phần mềm khung tích
hợp tại bưu cục giao dịch
Như đã đề cập trên đây, hiện nay tại Bưu cục giao dịch – Tổng công ty
Bưu chính Việt Nam, có khá nhiều hệ thống phần mềm được cài đặt để
hỗ trợ khai thác dịch vụ tại đây, các phần mềm này đã mang lại lợi ích
không nhỏ trong khai thác dịch vụ như: giảm chi phí khai thác dịch vụ
hay nâng cao chất lượng dịch vụ như rút ngắn thời gian cung cấp dịch
vụ. Tuy n hiên điều này lại gây ra một số bất cập cho việc khai thác dịch
vụ tại bưu cục giao dịch như:
- Tồn tại quá nhiều phần mềm đơn lẻ, mỗi phần mềm chỉ khai
thác được một dịch vụ duy nhất.
11
- Kèm theo đó là việc yêu cầu trang thiết bị phần cứng đi kèm
dẫn đến lãng phí không cần thiết. ảnh hưởng đến vấn đề diện
tích khai thác dịch vụ tại các điểm bưu cục giao dịch.
- Ngoài bất cập trên việc không thể cài đặt nhiều phần mềm trên
một hệ thống máy tính còn ảnh hưởng đến cách tổ chức sản xuất
tại bưu cục giao dịch. Cách tổ chức sản xuất mới hướng đến khả
năng phục vụ đa dịch vụ trên một quầy giao dịch điều này khắc
phục được nhược điểm tổ chức khai thác như hiện nay là mỗi
quầy chỉ phục vụ một dịch vụ nào đó, cách tổ chức này tỏ ra
không hiệu quả do cách chuyên môn hóa như vậy sẽ gây ra
lượng phân bố khách hàng trên các quầy không đều nhau phụ
thuộc vào lượng khách của từng dịch vụ. Điều này dẫn đến có
những quầy quá đông khách phục vụ không kịp còn có những
quầy thì không có khách hàng.
Với những bất cập như trên một phần do các phần mềm không thể cài
đặt chung trên một hệ thống máy tính đã đặt ra yêu cầu cần thống nhất
các phần mềm đang khai thác tại bưu cục giao dịch hiện tại thành một
hệ thống phần mềm duy nhất đáp ứng được những yêu cầu như sau:
- Cài đặt chung trên bất kỳ một máy tính nào tại bưu cục giao
dịch;
- Phần mềm đó phải hỗ trợ được đa dịch vụ tại bưu cục giao
dịch;
- Sử dụng chung một giao diện người dùng duy nhất;
- Tối ưu về tài nguyên phần cứng sử dụng;
12
Trên đây là một số yêu cầu ràng buộc đối với yêu cầu tích hợp các hệ
thống phần mềm tại bưu cục giao dịch.
2.2 Lựa chọn giải pháp công nghệ và công cụ xây dựng hệ thống
2.2.1. Hiện trạng kỹ thuật
Qua khảo sát cụ thể, tác giả luận văn nhận thấy đặc điểm chung của
những phần mềm đang triển khai tại bưu cục giao dịch hiện nay có
những đặc điểm chung là:
- Các phần mềm ứng dụng rất đa dạng và có xu hướng tăng
nhanh theo số lượng dịch vụ của Tổng công ty Bưu chính.
- Mỗi dịch vụ đều áp dụng một chương trình hỗ trợ khai thác dịch
vụ được phát triển riêng.
- Nền tảng công nghệ của các ứng dụng đang triển khai hầu như
đều sử dụng công nghệ .Net của Microsoft, sử dụng nền
Database SQL Server, giao diện người dùng đầu cuối sử dụng
cả winform và webform.
- Các ứng dụng hiện đang triển khai đang được khai thác một
cách ổn định, tài nguyên cơ sở hạ tầng đáp ứng được yêu cầu
của các phần mềm.
- Người dùng tại các điểm bưu cục giao dịch luôn phải chuyển
qua lại giữa nhiều hệ thống phần mềm khác nhau, đôi khi gây
nhầm lẫn và bất tiện trong khai thác dịch vụ.
- Có quá nhiều thiết bị đầu cuối tại các điểm giao dịch như: máy
tính, máy in, thiết bị mạng, Điều này dẫn đến việc đầu tư quá
lớn thiết bị và chưa sử dụng hết.
13
2.2.2. Lựa chọn công nghệ
Qua khảo sát tác giả nhận thấy, các phần mềm đang sử dụng của Tổng
công ty Bưu chính đều được phát triển dựa trên nền tảng công nghệ của
Microsoft, cụ thể các ứng dụng đại đa số đều được phát triển trên nền
tảng công nghệ .Net, cá biệt có một số phần mềm được phát triển sớm
nên còn sử dụng công nghệ cũ như Foxpro hay Visual Studio 6. Hệ quản
trị cơ sở dữ liệu sử dụng SQL Server. Như vậy để thuận lợi cho quá
trình tích hợp sau này, đòi hỏi hệ thống khung nền nên phát triển trên
cùng nền tảng công nghệ và phải là công nghệ mới nhất hiện nay để
đảm bảo tính mới và cũng nhằm mục tiêu tích hợp thuận lợi sau này.
Với những lý do trên, công nghệ lựa chọn để phát triển hệ thống phần
mềm khung – Framework nhóm chủ trì tác giả đã lựa chọn là:
- Công nghệ phát triển hệ thống phần mềm khung sử dụng .Net,
trong đó ngôn ngữ lập trình sử dụng là Vb.net và C#.
- Hệ quản trị cơ sở dữ liệu sử dụng hệ quản trị Microsoft SQL
2005 Server.
- Ngoài ra còn sử dung các công cụ hỗ trợ phát triển phần mềm
khác như Rational Rose, Erwin, Microsoft office,
Như vậy với mục tiêu tích hợp các phần mềm đang chạy trên mạng lưới
hiện tại của Tổng công ty Bưu chính Việt Nam thì việc lựa chọn công
nghệ trên đây là tối ưu và thuận lợi nhất.
14
2.3 Giải pháp kỹ thuật chi tiết
2.3.1. Các kỹ thuật giải quyết
Để đáp ứng yêu cầu bài toán là xây dựng giải pháp cho ứng dụng với đa
dịch vụ, với khả năng khai báo menu động thông qua việc gọi các chức
năng được đóng gói trong các thư viện độc lập - unmanaged dll
(dynamic link library). Để giải quyết được vấn đề đó cần phải thực hiện
được việc gọi các hàm, và phương thức trong các thư viện độc lập từ
ứng dụng. Việc gọi các hàm, và phương thức trong các unmanaged dll
có thể được thực hiện qua 2 cách sau:
Khai báo hàm và phương thức trong ứng dụng với tên và số biến, kiểu
biến giống trong thư viện độc lập, rồi việc sử dụng hàm và phương thức
đó giống như việc sử dụng hàm, phương thức trong ứng dụng.
Khai báo đối tượng Assembly, nạp động từ tên thư viện được khai báo
và quản lý (database). Xây dựng 1 thực thể của đối tượng trong thư viện
độc lập (với tên không gian tên được khai báo và quản lý tương ứng với
từng thư viện). Từ thực thể đó có thể gọi các hàm và phương thức được
xây dựng trong nó.
Nhưng với yêu cầu về xây dựng hệ thống khung sao cho tối đa việc độc
lập với các ứng dụng cần tích hợp, một ứng dụng tổng thể mà không
thay đổi khi có phát sinh dịch vụ mới, thì cách thực hiện thứ nhất là
không hợp lý, vì với cách đó, để sử dụng được hàm và phương thức
trong thư viện thì ta cần khai báo trong ứng dụng gọi nghĩa là ta phải
thay đổi mã nguồn của hệ thống hiện có như vậy sẽ vi phạm yêu cầu
không làm thay đổi các ứng dụng hiện đang sử dụng. Vậy chúng ta sẽ sử
dụng cách thứ 2 để giải quyết cho yêu cầu bài toán.
15
Với vấn đề về việc gọi thế nào các hàm, phương thức qua các thư viện
cho phù hợp với từng loại và kiểu của lời gọi và kết quả của từng lời gọi
- Lời gọi của 1 hàm, phương thức trong 1 lớp mà kế thừa từ lớp
giao diện (tương ứng với việc mở giao diện nào của chức năng
nào trong mỗi ứng dụng riêng biệt), thì cần khởi tạo 1 đối tượng
thực thể của giao diện đó.
- Lời gọi của 1 hàm hoặc phương thức trong 1 lớp mà hàm hay
phương thức đó được khai báo là kiểu tĩnh (static) thì không cần
khởi tạo 1 biến thực thể của đối tượng.
Một ứng dụng trung tâm và duy nhất được triển khai mà ở đó quản lý và
tiến hành khai báo, và gọi các ứng dụng riêng biệt khác. Do mỗi ứng
dụng riêng biệt có một nghiệp vụ riêng và cấu hình kiểu kết nối riêng.
Các tham số kết nối đã được khai báo và quản lý chung trong ứng dụng
tổng thể duy nhất. Việc khởi tạo kết nối sẽ được gọi từ ứng dụng chung
qua hàm, phương thức trong thư viện của ứng dụng riêng biệt. 1 lý do là
việc gọi hàm qua thư viện không nhận biết và phân biệt được các khai
báo các tham số tùy chọn - Optional parameters, nghĩa là nếu trong hàm
mà khai báo 5 biến (2 biến optional) thì lời gọi qua thư viện độc lập bắt
buộc phải truyền 5 biến cho hàm. Do đó trong giới hạn các ứng dụng
hiện thời, cần giới hạn xác định số lượng biến truyền, loại biến và thứ tự
của nó.
Mỗi ứng dụng riêng biệt cần xây dựng hàm khởi tạo kết nối của riêng nó
theo đúng chuẩn của hệ thống phần mềm khung đề ra. Trong phạm vi
luận văn này, tôi xây dựng thử nghiệm hàm đó theo định dạng như sau:
16
Connection (ip, UserName, Password, DataBase, UserDataBase,
PassDataBase).
Trong đó:
- Ip: là tham số chỉ ra địa chỉ IP của máy chủ cơ sở dữ liệu hệ
thống.
- UserName: tài khoản đăng nhập vào chương trình.
- Password: mật khẩu đăng nhập vào chương trình.
- DataBase: tên cơ sở dữ liệu
- UserDataBase: tài khoản đăng nhập vào cơ sở dữ liệu.
- PassDataBase: mật khẩu đăng nhập vào cơ sở dữ liệu.
Ví dụ gọi hàm kết nối đến chương trình CT2003 với tài khoản đăng
nhập là Admin, password: 123456 ta gọi hàm như sau:
Connection (‘172.0.0.1’, ‘Admin’, ‘123456’, ‘CT2003_DB’, ‘sa’, ‘sa’).
Các thông số này sẽ được lưu trên cơ sở dữ liệu của hệ phần mềm khung
dưới dạng các tham số hệ thống, do đó khi cần có sự thay đổi như về
thông số kết nối đến các hệ thống thành phần như: tên cơ sở dữ liệu hay
tài khoản đăng nhập… chỉ cần cấu hình lại trên hệ thống chung mà
không cần thao tác đến từng dịch vụ.
2.3.2. Xây dựng giải pháp quản lý khai báo động chức năng hệ
thống - plugin
Việc xây dựng menu cho hệ thống chung: Với bài toán đề ra, đa dịch vụ
được dùng chung trong 1 hệ thống duy nhất, menu gốc sẽ được triển
khai dưới dạng danh sách các dịch vụ ví dụ như: CT2003, BPBK,
EMS, mỗi dịch vụ sẽ là 1 mục. Đối với tham số hệ thống có thể tổ
chức chung trong một chức năng để quản trị và khai báo cấu hình hệ
thống cho từng phần mềm.
17
Với mô hình như trên, việc khởi tạo các kết nối tới Database của
từng dịch vụ riêng lẻ sẽ được thực hiện khi nào? Việc khởi tạo kết
nối cũng có thể có 2 cách khi kết nối:
1. Khởi tạo kết nối mỗi lần khi mỗi chức năng của dịch vụ
riêng lẻ được gọi.
2. Khởi tạo kết nối chung của mỗi dịch vụ riêng lẻ khi dịch vụ
riêng lẻ đó được chọn để thao tác.
Với cách thứ nhất, mỗi lần sử dụng một chức năng hệ thống sẽ phải
khởi tạo kết nối đến cơ sở dữ liệu hệ thống tương ứng, cách này có
nhược điểm là chậm và phải thực hiện nhiều lần.
Với ứng dụng khung xây dựng thử nghiệm trong luận văn này, chúng tôi
sử dụng cách thứ 2 để khởi tạo kết nối. Việc sử dụng cách kết nối nào
tùy thuộc vào yêu cầu xây dựng và đáp ứng thực tế của hệ thống. Do
việc gọi kết nối sẽ là mất nhiều thời gian và nhất là lại gọi qua các thư
viện độc lập nên việc khởi tạo sẽ bị chậm, để đảm bảo và tăng tính trình
diễn của ứng dụng, mỗi kết nối sẽ chỉ được khởi tạo 1 lần đầu tiên, nếu
đã có kết nối rồi thì các lần sau sẽ không khởi tạo kết nối nữa, quá trình
kết nối này sẽ được duy trì và ngừng kết nối khi ứng dụng khung ngừng
hoạt động. Trường hợp trước đó kết nối đã được mở tuy nhiên trong quá
trình sử dụng bị đóng chương trình sẽ tự động khởi tạo lại kết nối.
2.3.3. Giải pháp công nghệ thực thi trên các ứng dụng được khai
báo động - Plugin
Để thực thi các chức năng trên ứng dụng độc lập đã được khai báo động
- plugin vào hệ thống, sử dụng công nghệ thực thi mã nguồn động
(dynamic code), nghĩa là mã nguồn sẽ được biên dịch và thực thi khi
18
chạy ứng dụng runtime. Đây là đặc tính kỹ thuật tiên tiến được hỗ trợ
bởi những chương trình viết trên nền tảng .Net của Microsoft, cơ chế
thực thi của nó như sau:
Khái niệm về Application Domain: hiểu đơn giản nó là nơi chứa trong
một tiến trình mà có thể phân biệt tập các lệnh khác nhau. Mã nguồn và
dữ liệu trong Application domain trong 1 tiến trình riêng lẻ sẽ được bảo
vệ không được truy xuất từ một Application domain khác, tuy nhiên nó
vẫn có thể truy cập qua đoạn mã lệnh đặc biệt. Application Domain là
mức cao nhất của .Net runtime mà chứa dữ liệu và mã lệnh ứng dụng.
Khi 1 ứng dụng được thực thi, .Net sẽ load các assembly được tham
chiếu vào Application domain của nó.
Có 2 loại thực thi mã nguồn động
- Đoạn mã nguồn sẽ được tải vào ngữ cảnh (context) hiện thời và
được thực thi như trong ngữ cảnh của ứng dụng trung tâm
Plugin.
- Đoạn mã nguồn sẽ được thực thi trên ngữ cảnh riêng của ứng
dụng được plugin.
Đoạn mã lệnh thực thi sẽ bắt đầu bằng việc tạo ra các đối tượng Objects
cần thiết trong quá trình biên dịch, sau đó nó dùng 1 đối tượng để thêm
vào các Assembly cần được tham chiếu trong quá trình biên dịch.
Chú ý là tất cả các tham chiếu cần phải được thêm vào nếu không quá
trình biên dịch sẽ gây ra lỗi.
Quá trình thực thi sử dụng các lớp System.CodeDom.Compiler,
Microsoft.CSharp và Microsoft.VisualBasic để biên dịch assembly ra
đĩa hoặc bộ nhớ. Lớp Reflection để truy xuất vào đối tượng và bộ nhớ
của nó mỗi khi biên dịch đối tượng.
19
2.4. Giải pháp kỹ thuật đối với các hệ thống khác
Giải pháp kỹ thuật trên đưa ra để tích hợp các chức năng hệ thống vào
phần mềm khung. Tuy vậy để làm được việc này thì đòi hỏi hệ thống
phần mềm phải được phát triển trên nền tảng công nghệ của Microsoft
và phải có sự phối hợp của đơn vị phát triển sản phẩm đó. Trong thực tế
hiện nay, các sản phẩm phần mềm đang vận hành trên mạng lưới có tồn
tại một số hệ thống phần mềm sử dụng công nghệ cũ như FoxDos để
phát triển hay một số hệ thống phần mềm của đối tác nước ngoài và
thậm chí phần mềm chạy trên nền tảng web. Để tích hợp những hệ
thống loại này, tác giả đề xuất giải pháp tích hợp như sau:
Đối với những hệ thống phần mềm sử dụng công nghệ cũ hoặc phần
mềm của đối tác nước ngoài: trường hợp này tác giả đề xuất tích hợp hệ
thống theo nguyên tắc shortcut, tức là chúng ta sẽ tạo ra các giao diện
gọi chương trình đó từ hệ thống phần mềm khung theo kiểu shortcut.
Đối với hệ thống phần mềm chạy trên nền tảng web, tác giả sẽ định
hướng phát triển module có chức năng như một trình duyệt web để thực
hiện duyệt các website đó.
Kết luận
Với giải pháp kỹ thuật như trên, tác giả nhận thấy có thể tích hợp được
hầu hết các phần mềm đang chạy tại bưu cục giao dịch hiện nay bằng
hai cách thức chủ yếu là:
- Tích hợp “chặt”: tích hợp đến từng chức năng hệ thống, áp dụng
đối với một số hệ thống phần mềm được phát triển trên công
nghệ mới đồng nhất của Microsoft, các chức năng của những hệ
thống này sẽ được khai báo tích hợp vào hệ thống phần mềm và
20
cho phép gọi trực tiếp đến từng chức năng của hệ thống thành
phần từ hệ thống phần mềm khung.
- Tích hợp “lỏng”: tích hợp theo kiểu shortcut đến các ứng dụng
đó, áp dụng đối với hệ thống phần mềm phát triển trên nền tảng công
nghệ cũ hoặc những hệ thống phần mềm của đối tác nước ngoài mà
Tổng công ty Bưu chính Việt Nam không quản trị được. Với những hệ
thống này, việc tích hợp được thực hiện theo kiểu shortcut tức là tại
chương trình hệ thống khung khai báo tính năng gọi đến chương trình
tương ứng để thực hiện chạy.
Chương 3
THIẾT KẾ TỔNG THỂ HỆ THỐNG KHUNG
PHẦN MỀM TÍCH HỢP TẠI BƯU CỤC GIAO
DỊCH
Chương 3 bao gồm 2 nội dung chính : Nội dung 1 đi sâu vào thiết
kế hệ thống ở các khung nhìn logic, thiết kế các lớp đối tượng,
đặc tả chi tiết các chức năng hệ thống. Nội dung 2 đưa ra các kết
quả đánh giá & khuyến nghị của chương trình sau khi được đưa
vào triển khai thử nghiệm tại một số bưu cục giao dịch.
3.1. Thiết kế logic hệ thống
Với những yêu cầu về nghiệp vụ và kỹ thuật như trên, tác giả đã nghiên
cứu hiện trạng các phần mềm đang sử dụng tại bưu cục giao dịch, hiện
nay tại bưu cục giao dịch đang sử dụng các phần mềm bao gồm:
21
- Phần mềm CT2003PO: phần mềm hỗ trợ khai thác dịch vụ
Chuyển tiền;
- Phần mềm BK2007PO: phần mềm hỗ trợ khai thác dịch vụ Bưu
kiện;
- Phần mềm EMS Enterprise: phần mềm hỗ trợ khai thác dịch vụ
Bưu kiện;
- Phần mềm CFM Client: phần mềm hỗ trợ nghiệp vụ điều
chuyển luồng tiền;
- Phần mềm Western Union: hỗ trợ chi trả cho dịch vụ chuyển
tiền quốc tế.
- …
Để tích hợp các phần mềm trên, tác giả xây dựng một hệ thống phần
mềm khung (Framework) cho phép linh động khai báo thêm mới phần
mềm cần tích hợp và các chức năng chương trình, các chức năng khai
báo sẽ được triệu gọi từ các thành phần của hệ thống phần mềm cũ bao
gồm các file dạng .DLL, .XML, …
Hệ thống được thiết kế gồm thành phần chính là thành phần khung hệ
thống – Application Framework, trong đó thành phần khung được cấu
thành bởi các thành phần:
- Applications Management – quản trị dịch vụ: Thành phần này
cho phép khai báo thêm các ứng dụng cần tích hợp vào hệ thống
khung ví dụ như: phần mềm CT2003PO, BK2007PO, CFM
Client, …
22
Hình 1. Kiến trúc thiết kế hệ thống
- Functions Management – quản trị chức năng: thành phần này
cho phép khai báo các chức năng của hệ thống và quản lý các
chức năng đó, ngoài ra chức năng còn khai báo các tham chiếu
cần thiết để phục vụ cho chức năng hoạt động. Việc khai báo
này hoàn toàn dựa trên các thư viện đã được đóng gói trước vì
vậy không làm ảnh hưởng đến các phần mềm đang hoạt động.
- Config Management – quản lý cấu hình: thành phần cho phép
quản lý và khai báo các biến môi trường để phục vụ trong suốt
thời gian hoạt động của hệ thống, chức năng này cho phép quản
lý được mọi tham số của các hệ thống được tích hợp.
- Users Management – quản lý người dùng: thành phần này cho
phép quản lý toàn bộ tài khoản đăng nhập hệ thống của các hệ
thống được tích hợp.
23
- System Utilities – Tiện ích hệ thống: một số thành phần tiện ích
khác.
Với mục tiêu không làm ảnh hưởng đến các hệ thống hiện có bao
gồm cả cơ sở dữ liệu hệ thống vì vậy hệ thống tích hợp POI được
thiết kế có một cơ sở dữ liệu độc lập, cơ sở dữ liệu này sẽ lưu trữ
các dữ liệu hệ thống do các thành phần trong thành phần khung hệ thống
sử dụng (Applications Management, Functions Management, Config
Management, Users Management, System Utilities) trong đó có dữ liệu
về tài khoản đăng nhập hệ thống.
Hình 2. Kiến trúc thiết kế cơ sở dữ liệu
Giải pháp quản lý tài khoản và đăng nhập hệ thống được thiết kế tương
tự như giải pháp Single Sign On của hệ thống Portal được mô tả tóm tắt
như sau:
Bước 1: Khi người dùng đăng nhập hệ thống bằng phần mềm POI, tại
đây tài khoản người dùng sẽ được kiểm tra trong cơ sở dữ liệu hệ thống
POI xem có quyền đăng nhập hay không, nếu có thì hệ thống phần mềm
24
khung (framework) sẽ trả lại tập quyền trong đó có danh sách phần mềm
thành phần mà người đó có quyền sử dụng.
Bước 2: Sau khi qua bước 1, người dùng chọn vào một phần mềm thành
phần nào đó, hệ thống sẽ tự động kiểm tra quyền người dùng trong cơ sở
dữ liệu hệ thống thành phần để trả về tập các chức năng mà người đó có
quyền sử dụng.
Hình 3. Mô hình kiểm tra quyền đăng nhập hệ thống
Mô hình triển khai hệ thống.
25
Hình 4. Mô hình triển khai hệ thống
Mô hình triển khai phần mềm triển khai hỗ trợ khai thác các nghiệp vụ
của Tổng công ty Bưu chính được chia làm hai lớp đó là:
- Lớp các hệ thống phần mềm dữ liệu phân tán: đây là lớp các
phần mềm triển khai phân tán tức là mỗi điểm triển khai như
bưu cục, trung tâm tỉnh/TP, Tổng công ty đều có tổ chức lưu trữ
cơ sở dữ liệu riêng, các hệ thống phân tán được truyền đồng bộ