3.1. Giải pháp
3.1.3. Mô hình triển khai phần mềm
Kiến trúc của ứng dụng sẽ được triển khai theo mô hình 3- lớp (3-tiers) như sau:
Hình 3.2: Mô hình xây dựng phần mềm 3 lớp.
Trong đó:
Tầng thể hiện (Presentation): trực tiếp giao tiếp với người dùng cuối . Tầng nghiệp vụ (Business): Xử lý dữ liệu tuân theo các quy tắc nghiệp
vụ.
Tầng truy nhập dữ liệu (Data access): trực tiếp truy xuất, cập nhật cơ sở dữ liệu.
Cụ thể, nhiệm vụ của mỗi tầng trong mô hình 3-tier được xác định như sau: Tầng thể hiện cung cấp giao diện trực tiếp của chương trình đối với
người sử dụng. Các giao diện này có thể là giao diện nhập dữ liệu mới, cập nhật dữ liệu đã có, đưa vào các điều kiện tra cứu và thể hiện kết quả tra cứu … Trên môi trường đồ hoạ, tuỳ theo chức năng cần có và yêu cầu của người dùng cuối, có thể sử dụng hai loại giao diện: “Windows truyền thống” hoặc “dạng Web”.
Tầng nghiệp vụ sử dụng các phép xử lý dữ liệu theo các luật nghiệp vụ đã được quy định. Các luật nghiệp vụ có thể là các quy tắc tính toán, các chính sách nghiệp vụ hay pháp lý. Các công việc xử lý dữ liệu sẽ được chia thành các module đảm nhiệm các nhiệm vụ chuyên biệt, tạo
thành các dịch vụ dùng chung. Tầng thể hiện sẽ sử dụng các dịch vụ do tầng nghiệp vụ tạo ra.
Tầng truy nhập dữ liệu đảm nhiệm mọi nhiệm vụ liên quan đến việc trích xuất dữ liệu hoặc ghi số liệu vào trong các cơ sở dữ liệu hoặc được quản trị bởi một hệ quản trị cơ sở dữ liệu nào đó. Tầng nghiệp vụ hoàn toàn không cần biết về nơi thực sự lưu giữ các dữ liệu cũng như cách thức giao tiếp với hệ quản trị cơ sở dữ liệu. Các dịch vụ tầng truy nhập dữ liệu cũng được xây dựng trong các module mã chương trình riêng biệt. Khi có sự thay đổi về dạng dữ liệu hay thậm chí cả hệ quản trị cơ sở dữ liệu, chỉ cần sửa lại các Module truy nhập dữ liệu này, mọi thành phần khác của hệ phần mềm không bị động chạm đến. Với kiến trúc 3-tiers có thể xây dựng các hệ thống phần mềm có độ ổn định cao và mềm dẻo. Thông thường, yêu cầu đối với công việc tại từng tầng rất khác nhau, chẳng hạn nếu ở tầng truy nhập dữ liệu cần có một bộ máy xử lý, tổng hợp số liệu có hiệu quả với tốc độ cao thì tầng thể hiện cần cung cấp cho người sử dụng những giao diện thân thiện, tiện lợi và có hình thức đẹp. Sự độc lập tương đối giữa các tầng cho phép lựa chọn những sản phẩm, công nghệ tốt nhất cho từng tầng và tổ chức chương trình có tính Module hoá cao. Nó cũng cho phép tích hợp dễ dàng phần mềm đang phát triển với các hệ thống sẵn có.
Sự phân chia chức năng giữa 3 tầng của mô hình này chỉ là sự phân chia lôgic, không có nghĩa phải dùng các máy tính khác nhau cho từng tầng. Tuỳ theo quy mô và chức năng của hệ thống, chẳng hạn có thể sử dụng một máy tính thực hiện chức năng của nhiều hơn 1 tầng hoặc nhiều máy tính dùng cho 1 tầng.
Các đặc trưng của hệ thống khi sử dụng kiến trúc 3-tier Client/Server
Đặc tính Mô tả
Khả năng mở rộng Có thể mở rộng các chức năng của hệ thống thông qua việc bổ sung các Module mới tại Business Lôgic mà không phải xây dựng lại toàn bộ ứng dụng
Lưu lượng thông tin trên mạng ít hơn nhiều
Không cần chuyển tải toàn bộ những thông tin phải xử lý giữa client và server
so với kiến trúc 2-tier
Quản trị hệ thống Các ứng dụng có thể được quản trị một cách tập trung tại server
Khả năng sử dụng lại ứng dụng
Các ứng dụng có thể được sử dụng lại thay vì phải phát triển mới khi có nhu cầu thay đổi hoặc bổ sung chức năng
Dễ phát triển Có thể sử dụng các công cụ tiêu chuẩn như các ngôn ngữ lập trình 4GL để xây dựng các phần mềm client Tích hợp với các hệ
thống có sẵn
Dễ dàng xây dựng các cầu nối với các hệ thống khác do hệ thống được xây dựng theo Module và được tổ chức tốt
Hỗ trợ nhiều loại cơ sở dữ liệu
Với việc tách riêng phần Data Access, có thể sử dụng nhiều cơ sở dữ liệu khác nhau
Nhiều khả năng lựa chọn đường truyền thông
Thông qua việc sử dụng các Module giao tiếp chuẩn, có thể thực hiện nhiều kiểu trao đổi thông tin khác nhau.