Hệ thống tính cớc Internet của VIETEL đã tồn tại hơn một năm, việc phân tích hệ thống để thực hiện công việc tin học hoá đã đợc tiến hành khá tỉ mỉ và chi tiết do đó công việc mà cơ quan thực tập giao đó là phân tích và thiết kế để bổ xung một modul mới vào hệ thống do vậy việc phân tích ở đây là phân tích ở mức hẹp chỉ phục vụ cho việc thiết kế modul bổ sung vào hệ thống mà thôi.
Sơ đồ DFD ngữ cảnh (context ) đợc thể hiện qua sơ đồ sau:
Nộp tiền Thông báo
Yêu cầu Báo cáo
Yêu cầu Dữ liệu
Hồ sơ khách hàng Hồ sơ quản lý cớc
Sơ đồ DFD Context(level 0)
Từ sơ đồ này phân rã ra thành các mức khác nhau và có các công đoạn khác nhau. Sau đây là phân rã từ sơ đồ DFD context(level 0) sang sơ đồ DFD level 1.
Nộp tiền
Yêu cầu báo
Có cáo
Trờng ĐHKTQD - Khoa Tin học kinh tế 36
Khách hàng Lãnh đạo Lãnh đạo Khách hàng Modul kế toán nợ Bộ phận kế toán Bộ phận kế toán Khách hàng Kế toán Khách hàng Lãnh đạo 1.0 Cập nhật
tiền cước 3.0Xem xét Thông báo 4.0 Lập báo cáo 2.0 Xử lý d.liệu cước
D.mục khách hàng D.liệu cớc
Yêu cầu Hoá đơn nợ
Gửi đến
Báo cáo
2. Thiết kế dữ liệu.
Dữ liệu của modul trong chơng trình đợc cung cấp bởi hệ thống tính c- ớc phí Internet đã tồn tại. Và dữ liệu đợc cung cấp để từ đó có thể phân tích và thiết kế modul là các bảng của từng tháng, mỗi tháng đợc cung cấp một bảng.
Bảng có dạng nh sau:
User-Name Text 50
Duration Number Double
Sum-Account Number Duoble
Cap Number Duoble
Trong quá trình phân tích và thiết kế modul từ bảng dữ liệu gốc này không thể đáp ứng nhu cầu thiết kế do đó,xây dựng bảng mới để có thể phát triển Query phục vụ cho việc thiết kế. Trong bảng dữ liệu gốc cha xác định tr- ờng khoá chính và mỗi một User-Name có hai bản ghi, một bản ghi ứng với tiền cớc mà User-Name đó dùng khi trờng Cap có giá trị 1 còn bản ghi còn lại ứng với thuế VAT mà User-Name đó phải trả với trờng Cap có giá trị 0. Do vậy để thuận tiện cho việc phân tích cần phải tạo một bảng mới là hoàn toàn cần thiết. Bảng mới này sẽ lấy nguồn từ một Query đợc xây dựng từ bảng dữ liệu cũ.
Query đợc thiết kế bằng lệnh sau:
SELECT [thang8].[User-Name], [thang8].Duration, [thang8].[Sum- Account], [thang8].[Sum-Account]*1.1 AS Tongtra
FROM thang8
WHERE ((([thang8].Cap)=1)); Với bảng dữ liệu cũ (thang8) nh sau:
Với dữ liệu của công ty đã giao nh vậy và qua quá trình phân tích dữ liệu ta có mối quan hệ nh sau: