MỤC LỤC
MỤC LỤC 1
LỜI NÓI ĐẦU 2
LỜI CẢM ƠN 4
DANH MỤC CÁC BẢNG, SƠ ĐỒ, HÌNH 5
CHƯƠNG I: TỔNG QUAN VỀ ĐỀ TÀI 6
1.1. GIỚI THIỆU VỂ TRƯỜNG ĐẠI HỌC HÙNG VƯƠNG 6
1.2. GIỚI THIỆU VỀ TRUNG TÂM TT - TL-TV: 6
1.2.1 Cơ sở vật chất và tiềm năng 7
1.2.2. Vốn tài liệu 8
1.2.3. Công cụ nghiệp vụ 8
1.2.4. Các dịch vụ 9
1.2.5. Dịch vụ Thư viện 9
1.3. GIỚI THIỆU VỀ PHÒNG ĐỌC ĐIỆN TỬ 10
1.3.1. Giới thiệu chung 10
1.3.2. Cơ sở vật chất 10
1.3.3. Quy trình quản lý tại phòng đọc điện tử. 11
1.4. ĐIỀU KIỆN CẦN VÀ ĐỦ ĐỂ THỰC HIỆN ĐỀ TÀI 11
1.4.1. Lý do chọn đề tài 11
1.4.2. Phạm vi đề tài 11
1.4.3. Phương pháp nghiên cứu và hướng giải quyết 12
1.4.4. Tính thiết thực của đề tài. 13
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 14
2.1. TÌM HIỂU MỘT SỐ CHƯƠNG TRÌNH QUẢN LÝ PHÒNG MÁY: 14
2.1.5. Chương trình quản lý phòng đọc điện tử bao gồm những gì? 15
2.1.5.1. Các yêu cầu cần 15
2.1.5.3. Các yêu cầu mở rộng 16
2.2. LỰA CHỌN NGÔN NGỮ LẬP TRÌNH, CÁC KỸ THUẬT CÓ LIÊN QUAN 16
2.2.1. Giới thiệu ngôn ngữ lập trình BASIC 16
2.2.2. Kỹ thuật lập trình ứng dụng Client - Server 17
2.3. CÁC YÊU CẦU CẦN CHO PHẦN MỀM PHÍA MÁY TRẠM CLIENT 20
2.3.1. Yêu cầu cần: 20
2.3.2. Yêu cầu mở rộng: 20
CHƯƠNG III. PHÂN TÍCH THIẾT KẾ HỆ THỐNG 21
3.1. XÁC ĐỊNH ACTOR VÀ USE CASA PHÍA CLIENT 21
3.2. MÔ HÌNH USE CASE PHÍA CLIENT 21
3.3. ĐẶT TẢ USE CASE PHÍA CLIENT 22
CHƯƠNG IV. XÂY DỰNG CHƯƠNG TRÌNH CHO MÁY TRẠM CLIENT 24
4.1. QUY TRÌNH HOẠT ĐỘNG GIỮA SERVER VÀ CLIENT 24
4.2. XÂY DỰNG FORM CHƯƠNG TRÌNH 25
4.2.1. Xây dựng form main 25
4.2.2. Xây dựng form đăng nhập 33
4.2.3. Xây dựng form trạng thái sử dụng 35
4.2.4. Xây dựng form đổi mật khẩu truy cập 38
CHƯƠNG V. KẾT LUẬN, HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 41
DANH MỤC TÀI LIỆU THAM KHẢO 43
43 trang |
Chia sẻ: netpro | Lượt xem: 2022 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đồ án Chương trình quản lý phòng đọc điện tử tại trung tâm TT-TL-TV trường Đại học Hùng Vương, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
mạng thông tin của nhà trường.
1.2.4. Các dịch vụ
- Dịch vụ tìm kiếm thông tin, tài liệu
- Truy cập Internet / LAN miễn phí
- Cung cấp thông tin theo yêu cầu và theo chủ đề
- Dịch vụ thư điện tử
- Phục vụ tự học ngoại ngữ
- Hỏi đáp thông tin
1.2.5. Dịch vụ Thư viện
- Phục vụ tra tìm, đọc tham khảo các loại tài liệu: CDROM, sách tra cứu, từ điển, báo tạp chí, luân án, luận văn..
- Phục vụ mượn về nhà các loại tài liệu: sách tham khảo, giáo trình
- Tập huấn, chỉ dẫn tra cứu…
- Dịch vụ Photocopy, in ấn tài liệu…
1.3. GIỚI THIỆU VỀ PHÒNG ĐỌC ĐIỆN TỬ
1.3.1. Giới thiệu chung
Phòng đọc điện tử trung tâm Trung tâm TT-TL-TV trường Đại học Hùng vương được thành lập tháng 4/2008 và đưa vào sử dụng từ tháng 5/2008.
Nhiệm vụ chính của Phòng đọc điện tử là giúp cán bộ, giảng viên, sinh viên tra tìm tài liệu điện tử phục vụ việc giảng dạy, học tập cũng như công tác nghiên cứu khoa học.
Ngoài ra Phòng đọc điện tử còn có nhiệm vụ là biên soạn, quản lý, xây dựng quy trình khai thác và sử dụng các tài liệu điện tử phục vụ cho công tác đào tạo của nhà trường.
1.3.2. Cơ sở vật chất
Cơ sở vật chất:
+ 96 máy tính cấu hình tốc độ cao
+ 01 máy chủ server
+ 01 máy quản lý
+ Hệ thống mạng LAN và Internet tốc độ cao ADSL.
Tài liệu, học liệu:
+ 02 bộ tài liệu học liệu về chuyên ngành chăn nuôi, trồng trọt được mua của nước ngoài.
Thuận lợi:
+ Toàn bộ hệ thống máy tính được trang bị đồng bộ, hệ thống 96 máy tính tốc độ cao, 1 máy chủ server cài phần mềm quản lý thư viện Ilib, tất cả máy tính đều được kết nối mạng LAN và Internet ADSL tốc độ cao.
+ Được đào tạo, chuyển giao công nghệ, hướng dẫn sử dụng một cách cụ thể bài bản.
+ Hệ thống cán bộ có năng lực, được đào tạo chuyên ngành CNTT.
Khó khăn:
+ Chưa có phần mềm chuyên dụng phục vụ công tác quản lý phòng đọc một cách tự động.
+ Trung tâm TT-TL-TV mới đi vào hoạt động, trang bị nhiều thiết bị hiện đại nên việc học tập chuyển giao công nghệ, vận hành chưa đạt được hiệu quả cao nhất.
+ Về nhân lực: Số lượng cán bộ ít và hầu hết đều mới ra trường kinh nhiệm thực tế chưa nhiều nên vẫn còn nhiều khó khăn bất cập.
1.3.3. Quy trình quản lý tại phòng đọc điện tử.
Công tác quản lý tại Phòng đọc điện tử hiện nay vẫn được tiến hành hoàn toàn bằng phương pháp thủ công.
* Quy trình quản lý và sử dụng Phòng đọc điện tử như sau:
- Bạn đọc đến phòng đọc điện tử phải:
+ Xuất trình thẻ thư viện
+ Chờ cho tới khi cán bộ quản lý xử lý đến trường hợp của mình.
- Cán bộ quản lý có nhiệm vụ:
+ Thu thẻ thư viện của bạn đọc
+ Nhập thông tin bạn đọc vào sổ quản lý. (gồm: họ tên, lớp, số thẻ sinh viên)
+ Sắp xếp bạn đọc vào vị trí máy tính chưa sử dụng.
+ Trả thẻ thư viện cho bạn đọc và đánh dấu máy tính tại vị trí đó đang không được sử dụng.
Do công tác phục vụ thủ công nên hiện tại Phòng đọc điện tử còn gặp nhiều khó khăn như: mất công, hao tốn nguồn nhân lực nhưng không đạtt hiệu quả như mong muốn.
Trung bình hàng ngày phòng đọc điện tử phục vụ gần 200 lượt bạn đọc tới tìm kiếm thông tin trên mạng Internet và Intranet của nhà trường.
1.4. ĐIỀU KIỆN CẦN VÀ ĐỦ ĐỂ THỰC HIỆN ĐỀ TÀI
1.4.1. Lý do chọn đề tài
Hiện nay, công tác quản lý tại phòng đọc điện tử vẫn đang áp dụng bằng phương pháp quản lý thủ công.
Mặt khác trung tâm TT-TL-TV mới tiếp nhận và bắt đầu đưa vào sử dụng phần mềm Ilib 3.6. Tuy nhiên việc áp dụng phần mền quản lý Ilib 3.6 vào quản lý bạn đọc tại phòng đọc điện tử thì chưa được tận dụng một cách triệt để.
Do vậy, cần phải xây dựng riêng một phần mềm quản lý đề phù hợp với tình hình và yêu cầu quản lý tại phòng đọc điện tử.
1.4.2. Phạm vi đề tài
Phạm vi của đề tài là xây dựng phần mềm quản lý phòng đọc điện tử phía máy trạm client có những tính năng phù hợp với hệ thống của cả nhóm nghiên cứu và phù hợp với nhu cầu thực tế đề ra.
Chương trình xây dựng phía máy trạm có tính năng cơ bản như sau:
- Kết nối: thực hiện kết nối máy trạm client với Server để vào trạng thái chờ
- Đăng nhập hệ thống: thực hiện đăng nhập vào Server dưới hình thức bạn đọc.
1.4.3. Phương pháp nghiên cứu và hướng giải quyết
Xuất phát từ yêu cầu thực tiễn và sau thời gian 2 tháng thực tập tốt nghiệp tại Trung tâm Thông tin – Tư liệu – Thư viện trường Đại học Hùng Vương và để có thể xây dựng phần mềm thành công, phù hợp với nội dung quản lý tại phòng đọc nhóm nghiên cứu đã sử dụng các phương pháp điều tra, tìm hiểu, nghiên cứu sau:
Bước 1: Tìm hiểu và nắm được quy trình hoạt động của phòng đọc điện tử. Xây dựng, thu thập hệ thống chức năng xác định Actor – Use case phía client.
Bước 2: Khảo sát thực tế
- Lập phiếu điều tra công tác quản lý bạn đọc điện tử đối với cán bộ quản lý. Thu thập các mẫu biểu dùng trong công tác quản lý.
- Phỏng vấn, lấy ý kiến của bạn đọc về cách quản lý phòng đọc điện tử, các nguyện vọng về chương trình quản lý được xây dựng.
- Tìm hiểu một số phần mềm có chức năng quản lý tương tự như quản lý phòng net, phòng học… đã có trên thị trường.
- Phân tích các yêu cầu của bài toán sao cho phù hợp với thực tế quản lý tại phòng đọc, xây dựng hệ thống chức năng, yêu cầu của phần mềm. Lấy ý kiến nhận xét của cán bộ quản lý trực tiếp để hoàn thiện bản phân tích thiết kế.
- Nghiên cứu và lựa chọn ngôn ngữ lập trình phú hợp với năng lực nghiên cứu của nhóm, tiến hành xây dựng phần mềm.
- Hoàn thiện và ứng dụng thử nghiệm. Lấy ý kiến nhận xét phản hồi.
Bước 3: Xây dựng hệ thống CSDL, phân tích và thiết kế hệ thống, lập biểu đồ phân cấp chức năng, biểu đồ luồng dữ liệu
Bước 4: Xây dựng Code, giao diện cho phần Client
Bước 5: Kết nối hệ thống phía Server với hệ thống phía Client. Sửa lỗi và tinh chỉnh các chức năng.
Bước 6: Cài đặt và chạy thử nghiệm tại phòng đọc điện tử. Lấy ý kiến nhận xét của cán bộ quản lý và ý kiến của bạn đọc.
1.4.4. Tính thiết thực của đề tài.
Đây là đề tài mang tính thực tế cao, xây dựng thành công phần mềm sẽ làm tăng hiệu quả trong công tác quản lý bạn đọc điện tử nói riêng và bạn đọc tại thư viện nói chung. Từng bước tin học hoá quá trình quản lý tại trung tâm TT-TL-TV trường Đại học Hùng Vương.
Đối với cán bộ quản lý, phần mềm sau khi hoàn thiện sẽ hỗ trợ đắc lực trong công tác quản lý bạn đọc điện tử, làm giảm nhân lực, công sức, tiền bạc...
Đối với bạn đọc, phần mềm sẽ giúp cho việc bạn đọc không phải tốn nhiều thời gian trong quá trình kiểm tra thông tin trước khi sử dụng. Các bạn đọc đều có số thời gian sử dụng miễn phí như nhau, đảm bảo sự công bằng khi sử dụng phòng đọc điện tử tại trung tâm.
Với nhóm nghiên cứu, kết quả nghiên cứu đề tài bước đầu sẽ giúp cho nhóm nghiên cứu làm quen với công tác nghiên cứu khoa học, làm quen với việc ứng dụng những kiến thức đã học để giải quyết các bài toán thực tế, tạo tiền đề cho quá trình công tác sau này.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1. TÌM HIỂU MỘT SỐ CHƯƠNG TRÌNH QUẢN LÝ PHÒNG MÁY:
Nhóm nghiên cứu đã tìm hiểu một số chương trình quản lý phòng máy, phòng học, phòng net đang được sử dụng tại Việt Nam hiện nay như:
2.1.1. Cyber Station Manager: là phần mềm quản lý khách hàng, thời gian sử dụng máy trạm, điều khiển máy trạm do Công ty trách nhiệm hữu hạn Đan Thanh viết.
Các chức năng chính:: + Quản lý thông tin các máy trạm
+ Quản lý thông tin hội viên
+ Quản lý hoá đơn
Ưu điểm : Phần mềm quản lý chi tiết việc phân loại khách hàng gồm : hội viên, khách vãng lai và người quản trị cả Server và Client. Các cách tính cước cho người dùng phong phú: trả tiền trước, trả tiền sau, cộng dồn tiền cước các máy(cho phép đổi máy sử dụng khi đang sử dụng máy nào đó). Cộng thêm thời gian sử dụng miễn phí cho khách. Thêm phí tự động cho khách khi khách có yêu cầu.
Khuyết điểm: Cài đặt phức tạp (do dùng MySQL). Sử dụng Tiếng Việt không dấu. Các chức năng quản lý máy trạm đơn giản. Các chức năng điều khiển từ xa còn ít.
2.1.2. Internet Café Software: Do công ty PA Việt Nam 65 đường Sư Vạn Hạnh nối dài Q.10 Tp. Hồ Chí Minh viết.
Tính năng chính: - Quản lý thông tin máy trạm.
Ưu điểm : Giao diện đơn giản, dễ dùng. Có thể chuyển đổi máy cho khách hàng. Màn hình screen che khá hiệu quả .
Khuyết điểm: Các chức năng không đầy đủ (Chương trình chỉ có phần tính cước, in báo biểu). Phải đổi tên máy ngay khi bắt đầu sử dụng bên phía Server. Máy phải khởi động lại.
2.1.3. ISystem 3.0: Do công ty TBNet 111 Lý Thường Kiệt Tp Thái Bình – tỉnh Thái Bình.
Hệ phần mềm chuyên nghiệp cho máy dịch vụ game – Internet, gồm hai phần :
ISystem hỗ trợ quản trị mạng từ bất cứ máy nào trong mạng nội bộ, hỗ trợ lọc web đen, biên tập danh bạ web, phân vùng khởi động, hỗ trợ kết nối Internet và ADSL.
INetman hỗ trợ quản lý đồng thời nhiều loại dịch vụ (game, Internet…) và quản lý bán hàng.
Ưu điểm : Giao diện đơn giản, dễ dùng. Có thể chuyển đổi máy cho khách hàng.
Khuyết điểm: Mặc dù có một số chức năng quản trị máy từ xa, nhưng vẫn còn rất ít (chỉ có tắt máy, nhắn tin từ máy chủ). Phải đổi tên máy ngay khi bắt đầu sử dụng bên phía Server. Máy phải khởi động lại.
2.1.4. EasyCafe: Do công ty Tinasoft tại Thổ Nhĩ Kỳ viết
Các chức năng chính: + Quản lý thông tin các máy trạm
+ Quản lý thông tin các hội viên
+ Điều khiển từ xa các máy trạm
Ưu điểm: Có gần như đầy đủ tất cả các chức năng quản lý cần thiết và mở rộng. Hỗ trợ đa ngôn ngữ. Có thể xem đây phần mềm điển hình về việc quản lý các máy trạm ở phòng cho thuê dịch vụ Internet.
Khuyết điểm: Vì phải quản lý chi tiết mọi thứ nên giao diện phức tạp, khó dùng. Không hỗ trợ tiếng Việt mặc dù là phần mềm đa ngôn ngữ.
==> Nhận thấy các chương trình quản lý cơ bản đều có các tính năng như sau:
+ Đều có tính năng quản lý máy chạm thông qua việc đăng từ máy chạm hoặc sự cho phép từ máy chủ.
+ Có khả năng tính tiền cước cho người sử dụng
+ Có tính năng bảo mật và kiểm duyệt nội dung web, kiểm soát hệ thống máy khách, quan sát màn hình máy khách, đọc nội dung người dùng gõ…
+ Có tính năng nhắn tin di động, chat nội bộ giữa các máy khách với nhau…
2.1.5. Chương trình quản lý phòng đọc điện tử bao gồm những gì?
Trong quá trình khảo sát, tìm hiểu các chương trình quản lý phòng máy đang sử dụng tại Việt Nam, nhóm nghiên cứu chúng em nhận thấy các chương trình quản lý hiện có đều không đáp ứng triệt để được các yêu cầu chức năng trong quy trình quản lý phòng đọc điện tử.
Tổng hợp kết quả nghiên cứu, khảo sát nhóm nghiên cứu nhận thấy các yêu cầu cần có và tạm phân loại ra như sau: các yêu cầu cần, các yêu cầu đủ, và các yêu cầu mở rộng.
2.1.5.1. Các yêu cầu cần
Chương trình quản lý phòng đọc điện tử phải có khả năng quản lý quá trình đăng nhập của bạn đọc. Sau khi khởi động máy tính client (Máy chạm), phần mềm quản lý tại máy chạm sẽ tự động dò tìm máy chủ, kết nối với máy chủ và chuyển về màn hình trạng thái chờ. Bạn đọc muốn sử dụng được máy tính thì phải đăng nhập đúng use và password cung cấp.
Chương trình phải có chức năng quản lý hệ thống máy tính, quản lý những máy tính nào đang được sử dụng, những máy nào đang trong chế đồ chờ sử dụng, quản lý kết nối giữa máy chủ và máy chạm .
Có chức năng quản lý thời gian truy cập của bạn đọc, cố định thời gian miễn phí theo quy định của phòng đọc điện tử hoặc cho phép sử dụng thêm thời gian khi được phép.
Có CSDL để lưu trữ, quản lý bạn đọc tại phòng đọc điện tử, nhập dự liệu bạn đọc, sao lưu, cập nhập dữ liệu bạn đọc theo danh sách bạn đọc đăng ký làm thẻ thư viện
Có các thông kê báo cáo số lượng bạn đọc theo yêu cầu.
2.1.5.2. Yêu cầu đủ
- Chương trình phải phù hợp với thực tế quản lý
- Sử dụng dễ dàng cho cả cán bộ quản lý cũng như bạn đọc điện tử
2.1.5.3. Các yêu cầu mở rộng
Ngoài các dạng yêu cầu trên, các yêu cầu mở rộng mà chương trình có là: điều khiển máy tính từ xa, quản lý các chương trình trên máy chạm, quán lý bàn phím trên máy chạm …
Mặt khác các yêu cầu cần phải có trong quản lý phòng đọc điện tử đó là tự động quản lý thời gian truy cập của người dùng, quản lý tài liệu số thì các phần mềm hiện có đều thực hiện chưa triệt để.
2.2. LỰA CHỌN NGÔN NGỮ LẬP TRÌNH, CÁC KỸ THUẬT CÓ LIÊN QUAN
2.2.1. Giới thiệu ngôn ngữ lập trình BASIC
Ngôn ngữ BASIC (Beginner's All Purpose Symbolic Instruction Code) đã có từ năm 1964. BASIC rất dễ học và dễ dùng. Trong vòng 15 năm đầu, có rất nhiều chuyên gia Tin Học và công ty tạo các chương trình thông dịch (Interpreters) và biên dịch (Compilers) cho ngôn ngữnày làm BASIC trở nên rất phổ dụng.
Năm 1975, Microsoft tung ra thị trường sản phẩm đầu tay Microsoft BASIC và tiếp đó Quick BASIC (còn gọi là QBASIC) thành công rực rỡ. Quick BASIC phát triển trong nền Windows nhưng vẫn khó khăn khi tạo giao diện kiểu Windows. Sau đó nhiều năm, Microsoft bắt đầu tung ra một sản phẩm mới cho phép chúng ta kết hợp ngôn ngữ dễ học BASIC và môi trường phát triển lập trình với giao diện bằng hình ảnh (Graphic User Interface - GUI) trong Windows. Đó là Visual Basic Version 1.0 vào năm 1991.
Visual Basic giúp chúng ta có thể tự vẽ cho mình giao diện cần thiết trong ứng dụng (application) một cách dễ dàng và như vậy, tập trung nổ lực giải đáp các vấn đề cần giải quyết trong doanh nghiệp hay kỹ thuật.
Ngoài ra, còn nhiều công ty phụ phát triển thêm các thủ tục, hàm (modules), công cụ (tools, controls) hay ứng dụng (application) phụ giúp dưới hình thức VBX cộng thêm vào giao diện chính nên VB càng lúc càng thêm phong phú.
Phiên bản 6.0 cung ứng một phương pháp giúp chúng ta có thể thiết kế các ứng dụng (application) liên quan đến cơ sở dữ liệu (Database) trực tiếp tác động (interact) đến người dùng qua DAO (Data Access Object). Ứng dụng này thưòng gọi là ứng dụng trực diện (front-end application). Ngoài ra cung cấp phương pháp mới nối với cơ sở dữ liệu (Database) qua sự kết hợp của ADO (Active Data Object). ADO còn giúp các chuyên gia phát triển mạng nối với cơsở dữ liệu (Database) khi dùng Active Server Pages (ASP).
Visual Basic là một ngôn ngữ lập trình trực quan và thường được sử dụng hiện nay và là một ngôn ngữ lập trình xây dựng trên cơ sở của một phương pháp lập trình hiện đại.
2.2.2. Kỹ thuật lập trình ứng dụng Client - Server
Trước tới giờ, chúng ta lập trình với mục đích là tạo ra được một ứng dụng. Nhưng ứng dụng đó chỉ hoạt động độc lập 1 mình riêng lẻ. Mục tiêu lập trình mạng sẽ đưa ra những ứng dụng dạng Client – Server. Tức là sẽ có 2 loại ứng dụng chính đó là Client và Server.
Quy trình hoạt động của ứng dụng Server – Client như sau:
- Server có nhiệm vụ của là lắng nghe, chờ đợi kết nối từ Client trên địa chỉ IP của mình với PORT được quy định sẵn. Khi client gởi dữ liệu tới Server thì nó phải giải quyết một công việc là nhận dữ liệu đó -> xử lý -> trả kết quả lại cho Client.
- Client là ứng dụng được phục vụ, nó chỉ gởi truy vấn và chờ đợi kết quả từ Server.
Trong mô hình TCP/IP có 2 giao thức là TCP và UDP và 2 giao thức này sẽ quyết định cách thức hoạt động của Client - Server như thế nào?
Hoạt động của Client – Server trong giao thức TCP (SOCK_STREAM)
Hình 2. Hoạt động của Client – Server trong giao thức TCP
Hoạt động của Client – Server trong giao thức UDP (SOCK_DGRAM)
Hình 3. Hoạt động của Client – Server trong giao thức UDP
2.3. CÁC YÊU CẦU CẦN CHO PHẦN MỀM PHÍA MÁY TRẠM CLIENT
2.3.1. Yêu cầu cần:
- Không cho phép bạn đọc tự động đăng nhập hệ thống khi chưa có sự đồng ý của người quản lý. Nếu muốn đăng nhập bắt buộc bạn đọc phải có Username và Password (bạn đọc tự đăng kí và được sự đồng ý của cán bộ quản lý)
- Không cho phép bạn đọc tự ý thoát khỏi chương trình hệ thống khi đang chạy.
- Máy chủ Server phải được khởi động trước khi bạn đọc đăng nhập vào hệ thống.
2.3.2. Yêu cầu mở rộng:
- Bạn đọc có thể tự đổi mật khẩu
- Gửi thông báo xin trợ giúp tới người quản lý khi gặp sự cố
CHƯƠNG III. PHÂN TÍCH THIẾT KẾ HỆ THỐNG
3.1. XÁC ĐỊNH ACTOR VÀ USE CASE PHÍA CLIENT
a. Actor (người sử dụng)
Người sử dụng chương trình tại máy trạm client là bạn đọc điện tử. Bạn đọc chỉ có quyền truy cập và sử dụng máy trạm khi có sự đồng ý của cán bộ quản lý cho phép bạn đọc được đăng nhập vào hệ thống.
b. Use case (các trạng thái sử dụng)
+ Khởi động máy trạm: Bạn đọc khởi động máy trạm và chờ cho tới khi máy trạm kết nối được với máy quản lý.Chương trình sẽ kiểm tra thông tin kết nối và gửi thông điệp tới Server nếu máy chủ Server chấp nhập thì màn hình chờ tại máy trạm được bật lên.
+ Đăng nhập hệ thống: Sau khi kết nối được với Server màn hình máy chạm Client sẽ yêu cầu bạn đọc nhập thông tin bao gồm Username và Password (bạn đọc phải tự đăng ký và được sự đồng ý của người quản lý). Máy chạm client gửi thông điệp tới máy chủ server. Sau khi máy chủ server kiểm tra thông tin là chính xác thì màn hình chờ tắt, chương trình chính tại máy trạm client sẽ bật lên để tính giờ.
3.2. MÔ HÌNH USE CASE PHÍA CLIENT
Trạng thái chờ
Kết nôi máy chủ
Hình 4. Mô hình Use case Screen
Đăng xuất
Đăng nhập
Hình 5. Mô hình Use case Client
3.3. ĐẶT TẢ USE CASE PHÍA CLIENT
3.3.1. Kết nối: thực hiện kết nối với Server để vào trạng thái chờ.
Mô tả: Máy khách thực hiện kết nối với Server để vào trạng thái chờ.
Dòng sự kiện:
Dòng sự kiện chính:
+ Use case bắt đầu khi máy khách bắt đầu chạy chương trình.
+ Chương trình kiểm tra thông tin kết nối và gởi thông điệp đến Server.
+ Nếu nhận được hồi đáp chấp nhận thì chương trình sẽ thực hiện kết nối với Server và màn hình chờ bật lên( Use Case thành công).
Dòng sự kiện khác:
+ Nếu các thông tin kết nối không có ( như thông tin về tên máy, địa chỉ IP SERVER, port ) thì sẽ nhập thông báo yêu cầu nhập thông tin lại.
+ Nếu tên máy trùng với một tên máy đã kết nối trước vào Server( do hồi đáp không chấp nhận của Server) thì cũng sẽ nhập thông báo yêu cầu nhập thông tin lại.
+ Nếu kết nối không thành công thì sẽ báo lỗi.
Điều kiện tiên quyết:
+ Server phải khởi động trước khi máy khách muốn kết nối vào màn hình chờ.
Hậu điều kiện:
+ Máy khách đang ở trạng thái down chuyển sang trạng thái chờ.
Điểm mở rộng:
+ Không có.
3.3.2. Đăng nhập hệ thống: thực hiện đăng nhập vào Server dưới hình thức bạn đọc.
Mô tả: Máy khách thực hiện đăng nhập vào Server dưới hình thức Member.
Dòng sự kiện:
Dòng sự kiện chính:
+ Use case bắt đầu khi khách hàng bắt đầu đăng nhập vào Server để sử dụng máy.
+ Khách hàng nhập thông tin bao gồm Username và Password.
+ Chương trình gởi thông điệp đến Server.
+ Nếu nhận được hồi đáp chấp nhận thì màn hình chờ tắt, chương trình chính Client sẽ bật lên để tính giờ và khi đó khách hàng có thể sử dụng được máy này.
Dòng sự kiện khác:
+ Nếu nhận được hồi đáp từ chối thì màn hình screen vẫn không bị tắt. Điều kiện tiên quyết:
+ Server phải khởi động trước.
+ Máy khách đang ở trạng thái chờ.
Hậu điều kiện:
+ Máy khách đang ở trạng thái chờ chuyển sang trạng thái sử dụng.
Điểm mở rộng:
+ Không có.
CHƯƠNG IV. XÂY DỰNG CHƯƠNG TRÌNH CHO MÁY TRẠM CLIENT
4.1. QUY TRÌNH HOẠT ĐỘNG GIỮA SERVER VÀ CLIENT
Bước 1: Khởi động chương trình tại máy chủ server và máy chạm client
Bước 2: Người sử dụng đăng nhập từ máy chạm thông qua user và pass đã được cấp. Máy chủ nhận thông tin ttừ máy chạm và kiểm tra user, mật khẩu.
Bước 3: Nếu máy chạm đăng nhập đúng user và pass, máy chủ cho phép một client được sử dụng, gửi tín hiệu được phép sử dụng (chuỗi: “duocsu dung”), Ghi giờ bắt đầu sử dụng vào bộ nhớ, Ghi thời gian SD (=0 nếu không rõ thời gian kết thúc)
Bước 4: Trong quá trình sử dụng, máy chủ kiểm tra, giải quyết được các sự cố về kết nối như mất điện ở server hoặc client, đứt dây mạng trong khi kết nối, client bi treo, hết thời gian sử dụng…
Các mã quy định giao tiếp giữa client - server
000 - xin kết nối (gửi từ Client)
001 - cho sử dụng tu menu
Out - dừng sử dụng
100 - xin được sửdụng tiếp (khi server tắt, client vẫn đang sử dụng)
101 - gửi thông báo từ hệ thống
110 - gửi thôngbáo dạng chat
111 - thông tin kiểm tra kết nối (do server gửi)
Use - cho user login su dung
Tat - tat may
Sai pass - mat khau khong dung
Username khong co - ten dang nhap khong co
Het thoi gian - het thoi gian mien phi
Ten - kiem tra yeu cau ket noi, send lai trang thai dang su dung (use)
Tat - tắt máy chạm
Res - khởi động lại máy chạm
4.2. XÂY DỰNG FORM CHƯƠNG TRÌNH
4.2.1. Xây dựng form main
Giao diện:
Hình 6. Giao diện Form main của máy trạm
Mã code:
Dim counting As Long
Dim IpServer As String
Dim PortNumber As Integer
Dim dangSD As Boolean
Private Sub Form_Load()
'Khong cho chuong trinh nap nhieu lan
If App.PrevInstance Then
ActivatePrevInstance
End If
IpServer = "172.16.11.28"
PortNumber = 1009
'Thoat khoi Taskmanager
App.TaskVisible = False
dangSD = False
imgAnh.Picture = LoadPicture(App.Path & "\nen.jpg")
Timer2.Enabled = True
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If UnloadMode = 0 Or UnloadMode = 1 Then
TCP1.Close
Exit Sub
End If
Cancel = True
End Sub
Private Sub imgAnh_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
myAlwaysOnTop False, frmMain
frmDangnhap.Show
Timer2.Enabled = False
myAlwaysOnTop True, frmDangnhap
End If
End Sub
Private Sub TCP1_Close()
tmrConnect_Again.Enabled = True
Exit Sub
End Sub
Private Sub Timer1_Timer()
Timer1.Enabled = False
End Sub
Private Sub Timer2_Timer()
myAlwaysOnTop True, frmMain
End Sub
Private Sub TCP1_DataArrival(ByVal bytesTotal As Long)
Dim vta As String
Dim thongbao As New frmThongBao
Dim nTenMay, nUser, nThoiGian, nten, nlop As Integer
Dim TenMay, ThoiGian, UserName, ten, lop As String
If TCP1.State 7 Then
Exit Sub
End If
TCP1.GetData vta, vbString
If Mid(vta, 1, 3) = "use" Or Mid(vta, 1, 3) = "001" Then
'lay tenmay,user,thoigiansd
nTenMay = 0
nUser = 0
nThoiGian = 0
nten = 0
nlop = 0
For i = 5 To Len(vta)
If (Mid(vta, i, 1) = "|") And (nTenMay = 0) Then
nTenMay = i - 5
ElseIf (Mid(vta, i, 1) = "|") And (nTenMay 0) And (nUser = 0) Then
nUser = i - 6 - nTenMay
ElseIf (Mid(vta, i, 1) = "|") And (nTenMay 0) And (nUser 0) And (nThoiGian = 0) Then
nThoiGian = i - 7 - nTenMay - nUser
ElseIf (Mid(vta, i, 1) = "|") And (nTenMay 0) And (nUser 0) And (nThoiGian 0) And (nten = 0) Then
nten = i - 8 - nTenMay - nUser - nThoiGian
Exit For
End If
Next
nlop = Len(vta) - 8 - nTenMay - nUser - nThoiGian - nten
TenMay = Mid(vta, 5, nTenMay)
UserName = Mid(vta, 6 + nTenMay, nUser)
ThoiGian = Mid(vta, 7 + nTenMay + nUser, nThoiGian)
ten = Mid(vta, 8 + nTenMay + nUser + nThoiGian, nten)
lop = Mid(vta, 9 + nTenMay + nUser + nThoiGian + nten, nlop)
frmtrangthaisd.lblSoPhutDuocSD.Caption = ThoiGian
frmtrangthaisd.lbluser.Caption = UserName
frmtrangthaisd.lblusername = TenMay
frmtrangthaisd.lblusername = ten
frmtrangthaisd.lbllop = lop
MsgBox UserName
End If
Select Case Mid(vta, 1, 3)
Case "101" 'Nhan thong bao cua he thong"
Dim doan1, doan2 As Integer
Select Case Mid(vta, 5, Len(vta))
Case "sai pass"
'Mat khau khong dung. Hay nhap lai
lblThongBao.Caption = UnicodeChar(";4D;1EAD;74;A0;6B;68;1EA9;75;A0;6B;68;F4;6E;67;A0;111;FA;6E;67;2E;A0;48;E3;79;A0;6E;68;1EAD;70;A0;6C;1EA1;69;2E")
lblThongBao.Visible = True
Case "username khong co"
' "Ten dang nhap khong co. Hay lien he voi can bo truc
lblThongBao.Caption = UnicodeChar(";54;EA;6E;A0;111;103;6E;67;A0;6E;68;1EAD;70;A0;6B;68;F4;6E;67;A0;63;F3;A0;74;72;6F;6E;67;A0;43;53;44;4C;2E;A0;48;E3;79;A0;6C;69;EA;6E;A0;68;1EC7;A0;76;1EDB;69;A0;63;E1;6E;A0;62;1ED9;A0;74;72;1EF1;63;2E")
lblThongBao.Visible = True
Case "het thoi gian"
'Het thoi gian mien phi, Hay lien he voi can bo truc
lblThongBao.Caption = UnicodeChar(";48;1EBF;74;A0;74;68;1EDD;69;A0;67;69;61;6E;A0;6D;69;1EC5;6E;A0;70;68;ED;2E;A0;48;E3;79;A0;6C;69;EA;6E;A0;68;1EC7;A0;76;1EDB;69;A0;43;E1;6E;A0;62;1ED9;A0;74;72;1EF1;63")
lblThongBao.Visible = True
End Select
Exit Sub
Case "110" 'Nhan thong bao dang chat
ServerThongBao = Mid(vta, 5, Len(vta) - 4)
thongbao.Show
Exit Sub
Case "out"
If Mid(vta, 5, Len(vta) - 4) = TCP1.LocalHostName Then
frmMain.Show
Timer2.Enabled = True
Unload frmtrangthaisd
frmtrangthaisd.lblgiobd.Caption = ""
frmtrangthaisd.Timer2.Enabled = False
frmtrangthaisd.lbltime.Caption = time
LockAlt True
dangSD = False
End If
Case "use", "001" 'su dung bang username"
If TenMay = TCP1.LocalHostName Then
'Label2.Caption = "duoc su dung"
frmMain.Hide
Timer2.Enabled = False
Unload frmDangnhap
frmtrangthaisd.Show
ThoiGianDaSD = 0
ThoiGianduocSD = Val(ThoiGian)
LockAlt False
frmtrangthaisd.lblgiobd.Caption = time
frmtrangthaisd.Timer2.Enabled = True
frmtrangthaisd.lbltime.Caption = time
dangSD = True
Exit Sub
End If
Case "ten" 'kiem tra yeu cau ket noi
'send lai cho server ten may va trang thai su dung theo cu phap
'ten: trong do thay ten bang ma so trang thai
'chi send lai trang thai dang su dung (use)
If dangSD = True Then 'may dang su dung
TCP1.SendData "100|" & TCP1.LocalHostName & "|" & UserName & "|" & str(ThoiGianDaSD) & _
"|" & str(ThoiGianduocSD) & "|"
Exit Sub
Else
TCP1.SendData "000|" & TCP1.LocalHostName & "|0|0|0|"
End If
'myAlwaysOnTop True, frmMain
Exit Sub
Case "tat"
If Mid(vta, 5, Len(vta) - 4) = TC