Chương 1 Tổng quan 1.1 Giới thiệu về hệ thống quản lý yêu cầu khách hàng của Bưu điện Hà Nội Bưu điện Hà Nội là một bưu điện lớn với nhiều điểm giao dịch được triển khai khắp thành phố. Trung tâm giao dịch khách hàng của Bưu điện Hà Nội nằm tại 75 Đinh Tiên Hoàng. Trong vài năm trở lại đây, cùng với sự phát triển của xã hội và sự nâng cao của mức sống người dân, số lượng khách hàng sử dụng các dịch vụ viễn thông ngày càng nhiều. Để đáp ứng cho các nhu cầu ngày càng đa dạng của khách hàng, ngành Bưu chính Viễn thông cũng không ngừng gia tăng các loại hình dịch vụ viễn thông để cung cấp cho khách hàng.
Bên cạnh đó, cạnh tranh trên thị trường đòi hỏi việc nâng cao chất lượng dịch vụ, chất lượng phục vụ khách hàng. Các thông tin đưa tới khách hàng phải chính xác và nhanh nhất cũng như việc đáp ứng các yêu cầu của khách hàng phải nhanh nhất và chính xác. Trong bối cảnh đó, việc tiếp nhận, xử lý, thực hiện các yêu cầu dịch vụ từ khách hàng trở thành một công việc phức tạp, đòi hỏi nhiều nhân lực và vật lực của ngành Bưu chính Viễn thông. Nhu cầu về một hệ thống chương trình hỗ trợ quản lý các yêu cầu khách hàng trên máy tính trở nên rõ ràng và cấp thiết.
Kể từ năm 2000 cho tới nay, việc quản lý yêu cầu khách hàng tại Bưu điện Hà Nội đã được hỗ trợ thực hiện nhờ chương trình Quản lý yêu cầu khách hàng. Chương trình hiện đang sử dụng này được viết bằng Foxpro, chạy trên hệ điều hành DOS.2 Các hạn chế của hệ thống chương trình hiện tại Hệ thống quản lý yêu cầu hiện tại của Bưu điện Hà Nội được xây dựng trên phiên bản Foxpro trên hệ điều hành DOS. Foxpro for DOS được xây dựng để phát triển các ứng dụng 1 lớp. Vì vậy, các nhược điểm mà một ứng dụng xây dựng dựa trên Foxpro bao gồm: Huỳnh Đức Nghĩa – cao học ĐTVT 2002 Luận văn tốt nghiệp Trang 11 a) Năng lực xử lý Là một trong những hệ cơ sở dữ liệu ở mức sơ khai, Foxpro không hỗ trợ các tính năng xử lý tương tranh, giao tác (transaction), các ràng buộc dữ liệu (constraints)… Nếu cần đến những tính năng này, người viết chương trình phải thực hiện ở mức ứng dụng.
Quá trình này thường rất phức tạp và đòi hỏi nhiều công sức của người phát triển chương trình. b) Khả năng mở rộng trong môi trường mạng Foxpro for DOS được phát triển khi môi trường mạng chưa phải là phổ biến. Một ứng dụng Foxpro for DOS thường chỉ nằm trên cùng một máy với file chứa dữ liệu (*.dbf), thực hiện toàn bộ các chức năng nhập dữ liệu, xử lý dữ liệu, xử lý giao tác. Trong môi trường mạng LAN, một cơ sở dữ liệu Foxpro cho nhiều người dùng chỉ có thể thực hiện được bằng cách chia sẻ tài nguyên ở mức hệ điều hành, cụ thể là chia sẻ quyền truy cập file dữ liệu (*.
Khi này việc xử lý tương tranh phụ thuộc hoàn toàn vào ứng dụng. Điều này khiến cho việc thực hiện các hệ thống phân tán với cơ sở dữ liệu tập trung quy mô lớn là hầu như không thể thực hiện được. Vì vậy, giải pháp chia sẻ tài nguyên file dữ liệu chỉ có thể được coi như là một giải pháp tình thế cho bài toán cơ sở dữ liệu tập trung. c) Bảo mật Dữ liệu Foxpro được lưu trong file dbf.
File này hoàn toàn có thể được truy cập, sửa bằng một trình đọc text đơn giản. Dữ liệu thậm chí không được bảo vệ bởi mật khẩu khi truy cập trực tiếp như vậy. Khả năng truy cập vào dữ liệu một cách dễ dàng mà không phải thông qua lớp ứng dụng như vậy là một tiềm năng cho các cuộc tấn công vào ứng dụng. Với những hạn chế như vậy, hệ thống Quản lý yêu cầu khách hàng hiện tại của Bưu điện Hà Nội đang gặp nhiều khó khăn trong việc đáp ứng số lượng các yêu cầu dịch vụ ngày càng tăng về số lượng và phong phú về loại hình.
Nhu cầu cho một hệ thống mới thỏa mãn được các yêu cầu về tốc độ, khả năng mở rộng, độ chính xác và an toàn dữ liệu đang được đặt ra một cách cấp bách. Huỳnh Đức Nghĩa – cao học ĐTVT 2002 Luận văn tốt nghiệp Trang 12 1.3 Phạm vi của đồ án Đồ án này sẽ tập trung vào các vấn đề sau − Nghiên cứu mô hình ứng dụng phân tán để áp dụng cho bài toán Quản lý yêu cầu khách hàng. + Nghiên cứu về các kiến trúc ứng dụng. So sánh giữa các mô hình ứng dụng truyền thống và mô hình ứng dụng phân tán.
Đưa ra các lý do lựa chọn mô hình ứng dụng phân tán. + Nghiên cứu lựa chọn các giải pháp công nghệ để triển khai mô hình ứng dụng phân tán. + Dựa trên giải pháp công nghệ đã lựa chọn, đi sâu nghiên cứu, phân tích để đưa ra mô hình cụ thể áp dụng cho bài toán Quản lý yêu cầu khách hàng. − Thực hiện phân tích thiết kế hệ thống Quản lý yêu cầu khách hàng dựa trên các nghiên cứu về giải pháp đã thực hiện.
− Phát triển hệ thống. Phần lập trình phát triển hệ thống không được trình bày trong đồ án. Thay vào đó, các giao diện người sử dụng chính của hệ thống sau khi phát triển được trình bày trong Phụ lục 2 Các giao diện của chương trình.4 Phương pháp nghiên cứu Phương pháp nghiên cứu được sử dụng xuyên suốt trong quá trình phân tích thiết kế hệ thống Quản lý yêu cầu khách hàng là phương pháp phân tích có cấu trúc (structured analysis). Đây là phương pháp được sử dụng rất phổ biến trong các dự án Công nghệ Thông tin.
Huỳnh Đức Nghĩa – cao học ĐTVT 2002 Luận văn tốt nghiệp Trang 13 Chương 2 Nghiên cứu giải pháp cho bài toán Quản lý yêu cầu khách hàng 2.1 Kiến trúc ứng dụng 2.1 Các kiến trúc ứng dụng truyền thống và ưu nhược điểm 2.1 Kiến trúc 1 lớp (1-tier) Kiến trúc này gắn với giai đoạn đầu khi máy tính ra đời. Trong giai đoạn này, mỗi máy tính chỉ là một thiết bị có khả năng tính toán độc lập, không được nối với nhau. Vì vậy, các ứng dụng sử dụng kiến trúc 1 lớp là các ứng dụng có quy mô nhỏ, chạy trên các máy tính độc lập. Một ví dụ cho loại ứng dụng này là các chương trình xử lý văn bản, các chương trình có sử dụng cơ sở dữ liệu quy mô nhỏ sử dụng foxpro, access.
1 Máy tính Files Giao diện Xử lý người sử dụng Hình 2.1 : Mô hình 1 lớp – toàn bộ chương trình chạy trên 1 máy tính Khi các máy tính bắt đầu được kết nối với nhau, để tận dụng được các ưu thế của môi trường mạng, một giải pháp tình thế cho các ứng dụng với kiến trúc 1 lớp là chia sẻ tài nguyên cơ sở dữ liệu. Tuy nhiên, việc chia sẻ tài nguyên này thuần túy là sự chia sẻ ở mức hệ điều hành – cụ thể là chia sẻ file. Hệ thống Quản lý yêu cầu khách hàng hiện tại của Bưu điện Hà Nội thuộc nhóm các ứng dụng này. Trong mô hình File server này, máy chủ chỉ đóng vai trò là nơi lưu trữ chương trình, lưu trữ dữ liệu.
Thực chất việc xử lý dữ liệu đều do các máy trạm đảm Huỳnh Đức Nghĩa – cao học ĐTVT 2002 Luận văn tốt nghiệp Trang 14 nhận. Các vấn đề như xử lý tương tranh, bảo mật… chỉ được thực hiện ở máy trạm. Do vậy kiến trúc này có rất nhiều hạn chế về năng lực xử lý, an toàn dữ liệu, giá thành nâng cấp phần cứng, khả năng mở rộng hệ thống… Các nhược điểm của kiến trúc này khiến cho việc phát triển những hệ thống lớn, phức tạp là không thể thực hiện được. Trong kiến trúc này, toàn bộ logic của chương trình chỉ được chạy ở máy trạm, bao gồm việc truy cập dữ liệu, xử lý yêu cầu, hiển thị kết quả.
Máy chủ chỉ là nơi lưu dữ liệu thuần túy. Kiến trúc này được gọi là kiến trúc 1 lớp (1-tier).2 Kiến trúc 2 lớp (2-tier) Tiếp sau mô hình File server, người ta thường phát triển các ứng dụng mạng theo mô hình Client/Server. Trong mô hình này, khi có yêu cầu thực hiện công việc, client sẽ gửi yêu cầu tới server. Chương trình server sẽ thực hiện yêu cầu.
Khi có kết quả, server sẽ gửi lại cho client. Trong một số ứng dụng, một chương trình ứng dụng khi thì đóng vai trò client, khi thì đóng vai trò server tuỳ theo ngữ cảnh cụ thể thường được coi là các client/server kiểu Peer-to-Peer. Trong mô hình Client/Server, giao diện client trong các hệ thống này thường là giao diện GUI Application, và một số giao diện đã được cung cấp dưới dạng Web browser với điểm mạnh là tích hợp ngôn ngữ script. Mô hình client/server thực chất đồng thời xử lý tác nghiệp (business process) và hiển thị thông tin (data presentation).
Các ứng dụng sử dụng các hệ cơ sở dữ liệu tập trung cũng được xếp vào loại này. Khác biệt giữa trường hợp chia sẻ file của kiến trúc 1 lớp và cấu trúc này nằm ở tính chất chủ động của máy chủ. Một cơ sở dữ liệu tiên tiến không chỉ là một tập các file chứa dữ liệu, mà còn bao gồm các tiến trình xử lý phức tạp chạy trên máy chủ để thực hiện các vấn đề xử lý tương tranh, kiểm tra ràng buộc dữ liệu, xử lý dữ liệu… Ví dụ của các hệ thống ứng dụng kiểu này là một chương trình chạy trên máy trạm kết nối tới cơ sở dữ liệu Oracle. Huỳnh Đức Nghĩa – cao học ĐTVT 2002 Luận văn tốt nghiệp Trang 15 Mô hình này đã giải quyết được nhiều điểm hạn chế của mô hình File server.
Một phần khối lượng xử lý đã được chuyển cho máy chủ thực hiện. Tuy vậy, khối lượng công việc xử lý này thường chỉ ở mức tương đối nhỏ và chủ yếu thực hiện các công việc xử lý có tính kỹ thuật chứ không phải là nghiệp vụ, chẳng hạn xử lý tương tranh trong các hệ cơ sở dữ liệu. Điều này khiến cho mô hình 2 lớp, mặc dù đã giải quyết được nhiều vấn đề của mô hình 1 lớp, vẫn chưa phải là giải pháp thích hợp cho các hệ thống lớn, đòi hỏi khả năng tích hợp, mở rộng cao. Máy trạm 1 Máy chủ Máy trạm 2 Xử lý giao diện + Xử Xử lý kỹ lý nghiệp vụ thuật chung Hình 2.2 : Mô hình 2 lớp Trên Hình 2.2 biểu diễn cấu trúc của mô hình 2 lớp.