Hình 3.4: Biểu đồ luồng dữ liệu chức năng “Quản lý phòng kinh doanh”
Với các thao tác và yêu cầu tương tự như quá trình trên, biểu đồ trên được phân rã thành biểu đồ chi tiết hơn nữa. Đó là việc chia chức năng quản lý phòng kinh doanh thành các chức năng con là:
trường bằng rất nhiều phương pháp. Từ các thông tin thu thập được cán bộ phòng kinh doanh tiến hành phân tích, sàng lọc thông tin khách hàng có nhiều khả năng sử dụng phần mềm của công ty nhất cho vào kho khách hàng tiềm năng.
Khảo sát, phân tích và đánh giá: Thông qua chức năng này cán bộ phòng kinh doanh phân tích và tìm được danh sách các khách hàng có khả năng lớn mua sản phẩm của công ty .
Quản lý lịch hẹn khách hàng: Chức năng này quản lý về thông tin các cuộc hẹn với khách hàng.
Đàm phán, ký hợp đồng: Cán bộ kinh doanh thông qua chức năng này tiến hành đàm phán với khách hàng, làm hợp đồng và ký kết hợp đồng với khách hàng. Thanh toán: Chức năng này thực hiện việc thu tiền lần môt của khách hàng.
3.5.2 Biểu đồ phân rã chức năng “Quản lý phòng triển khai”
Qua biểu đồ luồng dữ liệu trên ta thấy chức năng quản lý phòng triển khai được phân rã thành các chức năng sau:
Tiếp nhận khách hàng chính thức: ở đây chức năng này thực hiện tiếp nhận thông tin khách hàng chính thức thông qua phòng kinh doanh và lưu vào kho hồ sơ khách hàng chính thức.
Quản lý lịch triển khai: khi đã có tiếp nhận thông tin của khách hàng chính thức thì cán bộ phòng triển khai tiến hành thu xếp các cuộc hẹn với khách hàng với mục đích là hoàn thành tốt việc triển khai phần mềm cho khách hàng. Thống nhất quy trình kế toán: thông qua chức năng này cán bộ phòng triển
khai khảo sát thực tế khách hàng và thống nhất quy trình kế toán với khách hàng.
Test đặc thù: chức năng này thực hiện công việc test sản phẩm lấy từ phòng lập trình với khách hàng.
Làm tài liệu: cán bộ triển khai viết tài liệu, sách hướng dẫn sử dụng cho khách hàng.
Thanh toán: khách hàng thanh toán tiền còn lại trong hợp đồng cho công ty mà trực tiếp là cán bộ phòng triển khai thông qua chức năng thanh toán.
3.5.3 Biểu đồ phân rã chức năng “Quản lý phòng lập trình”
Hình 3.6: Biểu đồ luồng dữ liệu chức năng “Quản lý phòng lập trình”
Biểu đồ trên thể hiện sự phân rã chức năng quản lý phòng lập trình thành các chức năng con:
Tiếp nhận yêu cầu phần mềm và phân tích: Thông qua chức năng này cán bộ lập trình nắm bắt được các yêu cầu về phần mềm cần xây dựng và tiến hành phân tích nó.
Lập trình: Đây là chức năng mà các cán bộ phòng lập trình cần thực hiện để tạo ra sản phẩm theo đúng yêu cầu cho khách hàng.
3.5.4 Biểu đồ phân rã chức năng “Quản lý phòng bảo hành”
Hình 3.7: Biểu đồ luồng dữ liệu chức năng “Quản phòng bảo hành”
Nhìn vào biểu đồ ta thấy chức năng quản lý phòng bảo hành được phân rã thành các chức năng con sau:
Tiếp nhận hợp đồng bảo hành: Ở đây chức năng này có thể tiếp nhận trực tiếp từ phòng triển khai các khách hàng đang trong thời hạn bảo hành. Hoặc cán bộ
bảo hành cũng có thể tiến hành các giao dịch với khách hàng đã hết hạn bảo hành và có nhu cầu ký tiếp hợp đồng bảo hành. Các giao dịch đó là:
Thu thông báo hết hạn bảo hành tới khách hàng. Khách hàng yêu cầu bảo hành mới.
Bảng báo giá và hợp đồng bảo hành. Thanh toán tiền.
Quản lý lịch hẹn bảo hành: thông qua chức năng này cán bộ phòng bảo hành nắm bắt được thông tin về các cuộc hẹn với khách hàng nhằm mục đích chăm sóc khách hàng chu đáo hơn.
Xử lý lỗi: Trong quá trình sử dụng sản phẩm của công ty nếu phát sinh lỗi khách hàng sẽ yêu cầu cán bộ bảo hành xử lý các lỗi phát sinh đó.
Các biện pháp xử lý lỗi:
Xử lý trực tiếp thông qua tổng đài 1080. Xử lý thông qua chat, email, điện thoại. Cán bộ bảo hành đến tận cơ sở xử lý.
CHƯƠNG 4: PHÂN TÍCH THIẾT KẾ CƠ SỞ DỮ LIỆU 4.1 Giới thiệu về cơ sở dữ liệu
• Các khái niệm cơ bản
Cơ sở dữ liệu: Là một tập hợp các bảng dữ liệu có quan hệ với nhau sao cho cấu trúc của chúng cũng như các mối quan hệ bên trong giữa chúng là tách biệt với chương trình ứng dụng bên ngoài, đồng thời nhiều người dùng khác nhau cũng như nhiều ứng dụng khác nhau có thể cùng khai thác và chia xẻ một cách chọn lọc lúc cần.
Thực thể: Là hình ảnh cụ thể của một đối tượng trong hệ thống thông tin quản lý. Một thực thể xác định tên và các thuộc tính.
Thuộc tính: Là một yếu tố dữ liệu hoặc thông tin của thực thể ấy.
Lược đồ quan hệ: Tập các thuộc tính của một quan hệ. Lược đồ một quan hệ gồm các thuộc tính của thực thể cùng với các mệnh đề ràng buộc.
VD: Lược đồ một quan hệ
R = <x, w> = ( A1:D1,A2:D2, .., An :Dn , M) Trong đó: R là một lược đồ quan hệ
Ai: tên thuộc tính
Di: miền xác định của thuộc tính M: mệnh đề ràng buộc
Nội dung của một lược đồ quan hệ gọi là các bộ. • Khái niệm phụ thuộc dữ liệu và các dạng chuẩn
Một thuộc tính gọi là phụ thuộc vào các thuộc tính khác khi giá trị của thuộc tính này phụ thuộc vào giá trị của thuộc tính kia. Sự phụ thuộc này có thể là gián tiếp hay trực tiếp.
Một quan hệ bao giờ cũng có một nhóm thuộc tính mà giá trị của chúng qui định giá trị của các thuộc tính khác, nhóm thuộc tính đó gọi là khoá.
Với một quan hệ tuỳ vào các phụ thuộc của các thuộc tính vào khoá có trong đó mà ta phân chia các quan hệ đó thành các dạng chuẩn khác nhau. Các dạng chuẩn cơ bản:
* Dạng chuẩn 1 * Dạng chuẩn 2 * Dạng chuẩn 3
Các dữ liệu lưu trữ dưới dạng chuẩn 3 tránh được hiện tượng dư thừa dữ liệu, tạo cho dữ liệu có tính độc lập cao. Các quan hệ nếu chưa ở dạng chuẩn 3 sẽ được phân rã thành các quan hệ nhỏ hơn có dạng chuẩn 3.
• Mục tiêu và tính ưu việt của mô hình quan hệ
Cho một lược đồ quan hệ dễ sử dụng, mô hình đơn giản, người dùng không cần biết cấu trúc vật lý của dữ liệu. Tiện lợi cho người dùng không chuyên tin học.
Tăng cường tính độc lập của dữ liệu, đặc biệt là độc lập vật lý. Cho khả năng có một ngôn ngữ thao tác bậc cao.
Tối ưu việc tìm kiếm dữ liệu trong cơ sở dữ liệu, hệ quản trị tự tìm cách truy nhập.
Cải thiện nâng cao toàn vẹn dữ liệu và bảo mật dữ liệu. Có thể phục vụ cho nhiều chương trình ứng dụng. Cơ sở toán học phong phú, chắc chắn:
* Lý thuyết quan hệ
* Dạng chuẩn có độ bền vững và đầy đủ thông tin
4.2Xác định các thực thể và thuộc tính của thực thể cho hệ thống
• Thực thể
Qua quá trình phân tích các nghiệp vụ của bài toán và phân tích thiết kế hệ thống ta đưa ra các thực thể chính của hệ thống là: Khách hàng. Nhân viên. Hợp đồng. Chi tiết hợp đồng. Biên bản lỗi. Phương pháp xử lý lỗi.
Sản phẩm. Phòng ban. Đối tác. Sự kiện.
Quy mô doanh nghiệp. Người liên hệ.
Lịch hẹn.
• Thuộc tính của một số thực thể chính Khách hàng: - Mã khách hàng - Tên khách hàng - Mã nhóm - Mã loại - Mã tỉnh - Mã huyện - Địa chỉ - Điện thoại - Fax - Email - Mobile - Mã số thuế - Số tài khoản - Tên ngân hàng - Mức ưu tiên - Chức danh thủ trưởng - Họ tên thủ trưởng Nhân viên - Ma_nv - Họ_nv - Ten_nv
- Ngay_sinh - Dien_thoai - SCMND - Chưc_danh - Ngay_vao - Ngay_chinh_thuc - Que_quan Phòng ban - Ma_bp - Ten_bp Biên bản lỗi - Ma_bb - Ma_kh - Ma_nv_bh - Dd_kh - Nhan_xet Hợp đồng - Ma_hd - Loai_hd - Ngay_ky - Ngay_hh - Ngay_tl - Ma_sp1 - Ma_sp2 - CP_NC - CP_BH - DD_KH - DD_SIS - Ma_kh - HT_TT - NV_GT - Ma_nv_kd - Ma_nv_tk - Ma_nv_bh
- Ma_dt Công việc - Ma_CV - Tên_CV - Tên_CV2 - Ma_NV - Ngay_giao - han_hoan_thanh Người liên hệ - Ma_nlh - Ma_kh - Ten_nlh - Ten_nlh2 - Ngay_sinh - Hon_nhan - Dien_thoai - DD - So_fax - Email - Dia_chi
4.3Mối liên kết giữa các thực thể trong hệ thống
Trong phần này chúng tôi đi sâu phân tích mối quan hệ giữa các thực thể chính trong hệ thống.
Xét mối quan hệ giữa thực thể Phòng ban với thực thể Nhân viên: một Phòng ban thì có thể có nhiều nhân viên nhưng một nhân viên thì chỉ thuộc một phòng ban nhất định, do đó quan hệ này là quan hệ một-nhiều.
Xét mối quan hệ giữa Khách hàng, Sản phẩm và Hợp đồng: một khách hàng có thể mua nhiều sản phẩm, một sản phẩm cũng có thể bán cho nhiều khách hàng, do đó quan hệ khách-sản phẩm là quan hệ nhiều-nhiều. Để tách quan hệ này ta có bảng hợp đồng để tách mối quan hệ này.
Quan hệ giữa Khách hàng và Hợp đồng là quan hệ 1-nhiều Nhân viên Phòng ban
Quan hệ giữa Sản phẩm và Hợp đồng là quan hệ 1-nhiều
Quan hệ giữa Hợp đồng và Chi tiết hợp đồng là quan hệ 1- nhiều
Xét mối quan hệ giữa thực thể Khách hàng, Nhân viên: Một khách hàng có thể do nhiều nhân viên chăm sóc, và một nhân viên cũng có thể chăm sóc nhiều khách hàng nên xẩy ra mối quan hệ nhiều- nhiều giữa nhân viên và khách hàng. Để tách mối quan hệ này ta thêm bảng biên bản lỗi.
Quan hệ giữa khách hàng- biên bản lỗi là quan hệ 1- nhiều
Quan hệ giữa nhân viên- biên bản lỗi là quan hệ 1- nhiều
Quan hệ giữa Biên bản lỗi và Phương pháp xử lý lỗi: một biên bản lỗi có thể có nhiều phương pháp xữ lý nên đây là quan hệ 1- nhiều
Hợp đồng Khách hàng Hợp đồng Sản phẩm CT hợp đồng Hợp đồng
Biên bản lỗi Khách hàng
Biên bản lỗi Nhân viên
PP xử lý lỗi Biên bản lỗi
Mối quan hệ giữa Nhân viên và Người liên hệ, Lịch hẹn: Nhân viên có thể hẹn với nhiều người liên hệ và một người liên hệ có thể liên hệ với nhiều nhân viên. Do đó quan hệ giữa nhân viên và người liên hệ là quan hệ nhiều – nhiều. Để tách liên kết này ta xây dựng thêm bảng Lịch hẹn.
Quan hệ giữa nhân viên và lịch hẹn là quan hệ 1- nhiều
Quan hệ giữa người liên hệ và lịch hẹn cũng là quan hệ 1-nhiều
Xét mối quan hệ giữa Nhân viên và Hợp đồng: Một nhân viên có thể có nhiều hợp đồng, nhưng một hợp đồng chỉ có một nhân viên. Nên quan hệ giữa nhân viên và hợp đồng là quan hệ 1-nhiều.
Mối quan hệ giữa Khách hàng tiềm năng và Khách hàng chính thức:
một khách hàng tiềm năng chỉ trở thành một khách hàng chính thức và ngược lại. Nên quan hệ giữa khách hàng tiềm năng và khách hàng chính thức là quan hệ 1-1
Xét mối quan hệ giữa Đối tác và Hợp đồng: một đối tác có thể giới thiệu nhiều hợp đồng cho công ty, nhưng một hợp đồng chỉ duy nhất một đối tác giới thiệu. Nên quan hệ giữa đối tác và hợp đồng là quan hệ 1- nhiều
Lịch hẹn Nhân viên Lịch hẹn Người liên hệ Hợp đồng Nhân viên KH chính thức KH tiềm năng Hợp đồng Đối tác
Ngoài ra trong hệ thống còn có các thực thể khác như: đối tác, đối thủ, loại hình doanh nghiệp, quy mô doanh nghiệp...và mối quan hệ giữa các thực thể này trong hệ thống.
4.6 Mô hình quan hệ của hệ thống
4.6 Chi tiết các bảng dữ liệu
Mục tiêu của giai đoạn này là xây dựng các bảng cơ sở dữ liệu cho hệ thống mà chúng tôi đang xây dựng. Đó sẽ là các đối tượng của hệ thống được đưa vào trong dạng bảng.
Trong phần này, chúng tôi sẽ đưa ra một hệ thống các bảng cơ sở dữ liệu. Để có thể quản lý được thời gian và người lập ra thông tin hay sữa chữa thông tin thì tất cả các bảng trong CSDL đều phải có các trường dữ liệu sau:
DATE0 : Ngày tạo thông tin TIME0 : Thời gian tạo thông tin USER_ID0 : Người tạo thông tin
DATE2 : Ngày sửa thông tin cuối cùng TIME2 : Thời gian sửa thông tin cuối cùng USER_ID2 :Người sửa thông tin cuối cùng
MA_DVCS : Mã đơn vị cơ sở
Status : Thông tin được sử dụng hay không BẢNG DMKHTN (Danh mục khách hàng tiềm năng)
Mục đích: Bảng này lưu tất cả thông tin về khách hàng tiềm năng.
STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải
1 Ma_kh Char 10 Mã khách hàng
2 Ten_kh Nvarchar 50 Tên công ty
3 Ten_kh2 Nvarchar 50 Tên tiếng anh
4 So_dt Char 12 Số điện thoại
5 So_fax Char 12 Số fax
6 Email Nvarchar 50 Địa chỉ Email
7 Website Nvarchar 50 Địa chỉ Website
8 Ma_tinh Char 10 Mã tỉnh
9 Ma_huyen Char 10 Mã huyện
10 Dia_chi Nvarchar 50 Địa chỉ
11 Ma_nv Char 10 Mã nhân viên kinh doanh
13 Ma_dt Char 10 Mã đối tác
Bảng 4.2: Các thuộc tính của bảng DMKHTN BẢNG DMKH (Danh mục khách hàng chính thức)
Mục đích: Lưu các thông tin về khách hàng đã ký hợp đồng với công ty
STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải
1 Ma_kh Char 10 Mã khách hàng (công ty)
2 Ma_so_thue Char 10 Mã số thuế
3 Tai_khoan_NH Char 20 Tài khoản ngân hàng
4 Mo_tai Nvarchar 50 Mở tại
5 Ng_dd Nvarchar 50 Người đại diện
6 Chuc_danh Nvarchar 50 Chức danh
7 Ma_lhdn Char 10 Mã loại hình doanh nghiệp
8 Ma_nganh Char 10 Mã ngành
9 Ma_qm Char 10 Mã qui mô
10 Ma_lhbh Char 10 Mã loại hình bán hàng
11 Ma_sp Char 10 Mã sản phẩm
12 Ma_nv Char 10 Mã nhân viên bảo hành
13 So_bh Char 10 Sổ bảo hành
Bảng 4.3: Các thuộc tính của bảng DMKH BẢNG DMNLH (Danh mục người liên hệ)
Mục đích: Bảng này lưu trữ các thông tin về người liên hệ, người liên hệ ở đây chính là các cán bộ bên phía khách hàng.
STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải
1 Ma_kh Char 10 Mã khách hàng
2 Ma_nlh char 10 Mã người liên hệ
3 Ten_nlh Nvarchar 50 Tên người liên hệ
4 Ngay_sinh datetime 8 Ngày sinh
5 Dien_thoai char 10 Điện thoại
7 So_fax char 10 Số fax
8 Email Nvarchar 50 Địa chỉ Email
9 Dia_chi Nvarchar 50 Địa chỉ
Bảng 4.4: Các thuộc tính của bảng DMNLH BẢNG DMCV (Danh mục công việc)
Mục đích: Bảng công việc lưu trữ các thông tin về công việc được giao của nhân viên, qua đó biết được ngày giao công việc, thời gian phải hoàn thành của từng nhân viên..
STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải
1 Ma_CV Char 10 Mã công việc
2 Tên_CV Nvarchar 50 Tên công việc
3 Tên_CV2 Nvarchar 50 Tên công việc
4 Ma_NV Char 10 Mã nhân viên