XÂY DỰNG ỨNG DỤNG QUẢN LÝ SINH VIÊN TRÊN THIẾT BỊ DI ĐỘNG tháng 6 năm 2014 nhóm sinh viên k55 trường đại học công nghệlập trình trên nền tảng java với hệ cơ sở dữ liệu sqlite báo cáo được thực hiện trong vòng hai tháng với sự nỗ lực làm việc của các thành viên trong nhóm.
Trang 1Đ I H C QU C GIA HÀ N I ẠI HỌC QUỐC GIA HÀ NỘI ỌC QUỐC GIA HÀ NỘI ỐC GIA HÀ NỘI ỘI
TR ƯỜNG ĐẠI HỌC CÔNG NGHỆ NG Đ I H C CÔNG NGH ẠI HỌC QUỐC GIA HÀ NỘI ỌC QUỐC GIA HÀ NỘI Ệ
XÂY DỰNG ỨNG DỤNG QUẢN LÝ SINH VIÊN TRÊN
THIẾT BỊ DI ĐỘNG
Cán b h ộ hướng dẫn: ướng dẫn: ng d n: ẫn: ThS Vũ Quang Dũng
Nguy n Cao Long ễn Huy Hùng Phùng Văn Vũ
Ph m Văn Minh ạm Văn Minh Đào Xuân Tuân
Ph ương Mạnh Vũ ng M nh Vũ ạm Văn Minh
HÀ NỘI - 2014
Trang 2Đ I H C QU C GIA HÀ N I ẠI HỌC QUỐC GIA HÀ NỘI ỌC QUỐC GIA HÀ NỘI ỐC GIA HÀ NỘI ỘI
TR ƯỜNG ĐẠI HỌC CÔNG NGHỆ NG Đ I H C CÔNG NGH ẠI HỌC QUỐC GIA HÀ NỘI ỌC QUỐC GIA HÀ NỘI Ệ
XÂY DỰNG ỨNG DỤNG QUẢN LÝ SINH VIÊN TRÊN
THIẾT BỊ DI ĐỘNG
Cán b h ộ hướng dẫn: ướng dẫn: ng d n: ẫn: ThS Vũ Quang Dũng
Nguy n Cao Long ễn Huy Hùng Phùng Văn Vũ
Ph m Văn Minh ạm Văn Minh Đào Xuân Tuân
Ph ương Mạnh Vũ ng M nh Vũ ạm Văn Minh
HÀ NỘI - 2014
Trang 3LỜI CẢM ƠN
Đầu tiên, nhóm chúng tôi xin chân thành gửi lời cảm ơn sâu sắc nhất tới giảngviên ThS.Vũ Quang Dũng đã tận tình hướng dẫn, giúp đỡ trong suốt quá trình tìm hiểu
và hoàn thiện đề tài này
Chúng tôi cũng xin chân thành cảm ơn toàn thể giảng viên và cán bộ trường Đạihọc Công Nghệ - ĐHQGHN đã giảng dạy và tạo điều kiện học tập tốt nhất trongnhững năm qua
Trong quá trình thực hiện, chúng tôi đã cố gắng tìm hiểu và từng bước hoàn thiện
đề tài tuy nhiên do kiến thức và thời gian có hạn nên không thể tránh khỏi những thiếusót nên rất mong quý thầy cô và các bạn thông cảm và đưa ra những đóng góp quýbáu
Xin chân thành cảm ơn !
Trang 4Mục lụ
Danh sách các bảng i
Danh mục hình ảnh ii
1.1 Đối tượng bài toán 1
1.2 Yêu cầu chức năng 1
1.3 Kết quả cần đạt được 1
Chương 2.THIẾT KẾ CHƯƠNG TRÌNH 2
2.1 Đặc tả chức năng và phân tích chương trình 2
Server 2
Client 16
2.2 Phương pháp kết nối dữ liệu 24
Chương 3.THIẾT KẾ CHỨC NĂNG VÀ GIAO DIỆN 25
3.1 Danh sách các chức năng 25
3.3 Sơ đồ DFD 27
3.4 Thiết kế giao diện 31
Chương 4.THỰC NGHIỆM 41
4.1 Công cụ 41
4.2 Giao diện chương trình 42
Chương 5.KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN 51
5.1 Kết quả đạt được 51
5.2 Hướng phát triển 52
TÀI LIỆU THAM KHẢO 52
Trang 5Bảng phân công công việc
1 Nguyễn Cao
Long
10020199 Viết báo cáo phân
tích bài toán Thiết
kế chức năng clientTổng hợp tài liệu
Hoàn thành
2 Nguyễn Huy
Hùng
10020165 Code phần Server Hoàn thành
3 Phạm Văn Minh 10020220 Code phần Client Hoàn thành
4 Đào Xuân Tuân 10020396 Thiết kế chương
trình( usecase và biểu đồsequence)
Hoàn thành
5 Phương Mạnh Vũ 10020440 Thiết kế giao diện,
Viết báo cáo phầnthực nghiệm và kết
luận
Hoàn thành
6 Phùng Văn Vũ 10020439
Thiết kế chức năngserver, sơ đồ DFDLiên kết giữa client
và server
Hoàn thành
Trang 6Danh sách các bảng
Bảng 2.1 Bảng chức năng chính của hệ thống 2
Bảng 2.3 Bảng các chức năng của ứng dụng 16
Bảng 3.1 Các chức năng của client 25
Bảng 3.2 Các chức năng của server 26
Bảng 4.1 Các công cụ sử dụng trong chương trình 41
Danh mục hình ảnh Hình 2.1Biểu đồ usecase của hệ thống 2
Hình 2.2 Biểu đồ use case Đăng Nhập 3
Hình 2.3 Biểu đồ tuần tự Đăng Nhập 4
Hình 2.4 Biểu đồ usecase Quản lý thông tin người dùng 5
Hình 2.5 Biểu đồ tuần tự quản lý người dùng 6
Hình 2.6 Biểu đồ usecase Xem thông tin người dùng 6
Hình 2.7 Biểu đồ tuần tự Xem thông tin người dùng 7
Hình 2.8 Biểu đồ usecase Thêm người dùng 7
Hình 2.9 Biểu đồ tuần tự Thêm người dùng 8
Hình 2.10 Biểu đồ usecase Sửa thông tin người dùng 9
Hình 2.11 Biểu đồ tuần tự Sửa thông tin người dùng 9
Hình 2.12 Biểu đồ usecase Xóa thông tin người dùng 10
Hình 2.13 Biểu đồ tuần tự Xóa thông tin người dùng 10
Hình 2.14 Biểu đồ usecase Quản lý tin tức 11
Hình 2.15 Biểu đồ usecase Xem tin tức 12
Hình 2.16 Biểu đồ tuần tự Xem tin tức 12
Hình 2.17 Biểu đồ usecase Thêm tin tức 13
Hình 2.18 Biểu đồ tuần tự Thêm tin tức 13
Hình 2.19 Biểu đồ usecase Sửa thông tin tin tức 14
Hình 2.20 Biểu đồ tuần tự Sửa thông tin tin tức 14
Hình 2.21 Biểu đồ usecase Xóa tin tức 15
Hình 2.22 Biểu đồ tuần tự xóa tin tức 15
Hình 2.23 Biểu đồ usecase tổng quát client 16
Hình 2.24 Biểu đồ usecase đăng nhập 17
Hình 2.25 Biểu đồ tuần tự usecase đăng nhập 18
Hình 2.26 Biểu đồ usecase ghi chú 19
Hình 2.27 Biểu đồ tuần tự usecase ghi chú 19
Hình 2.28 Biểu đồ usecase Đổi mật khẩu 20
Hình 2.29 Biểu đồ tuần tự usecase Đổi mật khẩu 20
Hình 2.30 Biểu đồ usecase Xem tin tức 21
Hình 2.31 Biểu đồ tuần tự usecase Xem tin tức 21
Hình 2.32 Biểu đồ usecase xem thông tin cá nhân 22
Hình 2.33 Biểu đồ tuần tự xem thông tin cá nhân 22
Hình 2.34 Biểu đồ usecase xem thông tin môn học 23
Trang 7Hình 2.35 Biểu đồ tuần tự xem thông tin môn học 23
Hình 2.36 Sơ đồ kết nối client-server 24
Hình 3.1 Sơ đồ DFD tổng quát của hệ thống 27
Hình 3.2 DFD cho login 28
Hình 3.3 DFD Xem thông tin cá nhân 28
Hình 3.4 DFD sửa thông tin cá nhân 29
Hình 3.5 DFD xem thông tin môn học 29
Hình 3.6 DFD Xem kết quả học tập 30
Hình 3.7 DFD Xem thông tin ngoại khóa 30
Hình 3.8 DFD Xem thông tin khác 31
Hình 3.9 Màn hình chờ 31
Hình 3.10 Màn hình đăng nhập 32
Hình 3.11 Màn hình chính 32
Hình 3.12 Màn hình về các môn học đã đăng ký 33
Hình 3.13 Màn hình nội dung chi tiết về môn học 33
Hình 3.14 Màn hình kết quả học tập 34
Hình 3.15 Màn hình tin tức 34
Hình 3.16 Màn hình chi tiết nội dung tin tức 35
Hình 3.17 Màn hình thông tin chi tiết của một sinh viên 35
Hình 3.18 Màn hình chèn thông tin 36
Hình 3.19 Màn hình chèn tạo tài khoản 36
Hình 3.20Màn hình thêm tin tức về môn học 37
Hình 3.21 Danh sách các môn học và thông tin về môn học 37
Hình 3.22 Danh sách các thông báo 38
Hình 3.23 Danh sách thông tin ngoại khóa 38
Hình 3.24 Danh sách tài liệu tham khảo 39
Hình 3.25 Danh sách sinh viên 39
Hình 3.26 Thông báo về môn học 40
Hình 4.1Màn hình đăng nhập 42
Hình 4.2 Màn hình chính 42
Hình 4.3 Màn hình về các môn học đã đăng ký 43
Hình 4.4 Màn hình nội dung chi tiết về môn học 43
Hình 4.5Màn hình kết quả học tập 44
Hình 4.6 Màn hình tin tức 44
Hình 4.7Màn hình chi tiết nội dung tin tức 45
Hình 4.8 Màn hình thông tin chi tiết của một sinh viên 45
Hình 4.9 Màn hình chèn thông tin 46
Hình 4.10 Màn hình chèn thông tin sinh viên 47
Hình 4.11 Màn hình chèn tiêu đề 47
Hình 4.12 Màn hình danh sách tiêu đề hiện tại 48
Hình 4.13 Màn hình liệt kê thông tin ngoại khóa 48
Hình 4.14 Màn hình liệt kê các thông tin khác 49
Hình 4.15 Màn hình danh mục các tài liệu tham khảo 49
Hình 4.16 Màn hình danh sách sinh viên 49
Hình 4.17Màn hình thông tin danh sách học tập 50
Trang 9Chương 1 PHÂN TÍCH BÀI TOÁN
1.1 Đối tượng bài toán
Đối tượng sử dụng hệ thống:
- Tất cả các sinh viên cao đẳng, đại học…
- Cán bộ đào tạo, giảng dạy
- Những cá nhân quan tâm đến các thông tin, hoạt động của đơn vị đào tạo
1.2 Yêu cầu chức năng
Dự kiến ứng dụng sẽ có hai nhóm chức năng chính đó là chức năng quản lý học tập và chức năng quản lý thông tin
Nhóm chức năng quản lý học tập:
- Chức năng quản lý hồ sơ sinh viên: sinh viên có thể xem và thay đổi thông tin cá nhân của mình
- Chức năng quản lý điểm:
Sinh viên có thể xem kết quả học tập của minh
Giáo viên có thể thay đổi, thêm, xóa điểm của sinh viên
- Chức năng xem thông tin môn học hiện tại
- Chức năng xem thông tin các môn học tham khảo
Nhóm chức năng quản lý thông tin:
- Chức năng quản lý thông tin học tập: các thông về học tập như lịch học, lịchthi, học bổng…
- Chức năng quản lý thông tin ngoại khóa: các thông tin về ngoại khóa như hiến máu, tình nguyện, hội thao…
- Chức năng quản lý thông tin khác: các thông tin khác như các buổi gặp gỡ giữa nhà trường với các đối tác…
Một số chức năng khác:
- Chức năng thống kê dữ liệu
- Chức năng sao lưu và khôi phục
Trang 10Chương 2 THIẾT KẾ CHƯƠNG TRÌNH
2.1 Đặc tả chức năng và phân tích chương trình
Hình 2.1Biểu đồ usecase của hệ thống Bảng 2.1 Bảng chức năng chính của hệ thống
01 Đăng nhập -Admin mở trang hệ admin hệ thống và đăng nhập
bằng tài khoản của mình
-Nếu thành công thì hệ thống qua giao diện quản lý
-Không thành công thì admin phải đăng nhập lại
Trang 11+xóa: xóa người dùng khỏi hệ thống+xem: xem chi tiết thông tin người dùng
03 Quản lý tin tức -Quản lý tin tức
-Chức năng chính+xem: xem chi tiết tin tức+thêm: thêm tin tức vào danh sách tin tức của
hệ thống+sửa: sửa thông tin tin tức+xóa: xóa tin tức ra khỏi hệ thống
Phân tích ca sử dụng
a Xác định các tác nhân hệ thống
- Hệ thống gồm 2 tác nhân : người dùng (chủ yếu là sinh viên) và người quản trị
- Người dùng : là những người sử dụng bình thường, chỉ có quyền xem tin tức và thêm ghi chú cho chính mình
- Người quản trị : là những người có tất cả quyền của người dùng, ngoài ra còn
có thêm quyền sửa, xóa, thêm thông tin về người dùng hay tin tức
b Phân tích các use case
Use case Đăng Nhập
Người quản trị phải đăng nhập vào hệ thống để sử dụng các quyền của mình
Biểu đồ use case
Hình 2.2 Biểu đồ use case Đăng Nhập
Tác nhân: Người quản trị tác động lên use case Đăng Nhập
Biểu đồ tuần tự
Trang 12Hình 2.3 Biểu đồ tuần tự Đăng Nhập
Các luồng sự kiện
Luồng sự kiện chính:
Trên giao diện đăng nhập của người quản lý
+ Hệ thống hiện thị màn hình đăng nhập và yêu cầu nhập tài khoản và mật khẩu.+ Người quản trị nhập tài khoản và mật khẩu vào
+ Hệ thống kiểm tra xem thông tin có hợp lệ không
+ Nếu hợp lệ thì thông báo đăng nhập thành công và người quản trị được phép truy nhập vào hệ thống
+ Nếu không hợp lệ thì thông báo đăng nhập thất bại
+ Kết thúc use case
Luồng sự kiện rẽ nhánh
Luồng 1:
+ Người quản trị không muốn đăng nhập vào hệ thống
+ Người quản trị chọn bỏ qua đăng nhập
+ Use case kết thúc
Luồng 2:
+ Người quản trị đã nhập thông tin tài khoản và mật khẩu
+ Hệ thống kiểm tra thông tin không chính xác
+ Từ chối cho đăng nhập vào hệ thống
+ Kết thúc use case
Trang 13Luồng 3:
+ Hệ thống không kết nối được đến CSDL
+ Kết thúc use case
Use case Quản lý người dùng
Biểu đồ use case
Hình 2.4 Biểu đồ usecase Quản lý thông tin người dùng
Tác nhân: Người quản trị hệ thống có quyền quản lý thông tin người dùng (chủ yếu là sinh viên)
Các usecase liên quan: thêm, sửa, xóa, xem thông tin người dùng
Biểu đồ tuần tự
Trang 14Hình 2.5 Biểu đồ tuần tự quản lý người dùng
Luồng sự kiện
- Trên giao diện, người quản trị truy cập vào quản lý thông tin
- Hệ thống hiển thị các loại thông tin quản lý
- Người quản trị chọn quản lý người dùng
- Hệ thống hiển thị đầy đủ thông tin từ CSDL
- Kết thúc usecase
Usecase Xem thông tin người dùng
Biểu đồ use case
Hình 2.6 Biểu đồ usecase Xem thông tin người dùng
Trang 15Biểu đồ tuần tự
Hình 2.7 Biểu đồ tuần tự Xem thông tin người dùng
Luồng sự kiện chính
- Trên giao diện, người quản trị truy cập vào quản lý người dùng
- Hệ thống hiện thị danh sách các người dùng (hay tài khoản) đã được tạo thành
công với các chức năng
- Người quản trị chọn một người dùng và dùng chức năng Xem
- Hệ thống hiện thị đầy đủ thông tin của người dùng mà người quản trị muốn
Trang 16Biểu đồ tuần tự
Hình 2.9 Biểu đồ tuần tự Thêm người dùng
Luồng sự kiện:
- Trên giao diện người quản lý truy cập vào Quản lý người dùng
- Người quản trị chọn chức năng Thêm người dùng
- Hệ thống hiện thị form cho người quản trị điền thông tin người dùng định thêm vào như tài khoản, mật khẩu, họ tên…
- Người quản trị nhập thông tin vào form rồi lưu lại
- Hệ thống kiểm tra thông tin và gửi về CSDL
- Nếu hợp lệ thì báo thành công và người dùng mới đã được thêm
- Nếu không hợp lệ thì báo thất bại
- Kết thúc usecase
Usecase Sửa thông tin người dùng
Biểu đồ usecase
Trang 17Hình 2.10 Biểu đồ usecase Sửa thông tin người dùng
Biểu đồ tuần tự
Hình 2.11 Biểu đồ tuần tự Sửa thông tin người dùng
Luồng sự kiện:
- Trên giao diện người quản lý truy cập vào quản lý người dùng
- Hệ thống đưa ra danh sách tất cả người dùng đã tạo thành công
- Người quản trị chọn một người dùng (hay tài khoản) cần sửa
- Hệ thống hiển thị form thông tin người dùng đã chọn
- Người quản trị sửa thông tin và lưu
- Hệ thống kiểm tra thông tin người quản trị đã sửa
- Nếu hợp lệ thì báo sửa thành công
Trang 18- Nếu không hợp lệ thì báo sửa thất bại và người dùng vẫn giữ nguyên thông tin cũ
- Trên giao diện người quản trị chọn quản lý người dùng
- Hệ thống đưa ra danh sách các người dùng đã tạo thành công và các chức năng
- Người quản trị chọn một người dùng và chọn chức năng Xóa
- Hệ thống hỏi lại người dùng có đồng ý xóa người dùng vừa nãy chọn hay
Trang 19Biểu đồ usecase
Hình 2.14 Biểu đồ usecase Quản lý tin tức
Tác nhân: Người quản trị hệ thống có quyền quản lý tin tức
Usecase liên quan: thêm, xem, sửa, xóa thông tin của tin tức
Biểu đồ tuần tự
H ình 2.14: Biểu đồ tuần tự quản lý tin tức
Luồng sự kiện:
- Trên giao diện người quản trị chọn quản lý tin tức
- Hệ thống hiển thị các loại tin tức quản lý
- Người quản trị chọn một loại tin tức để quản lý
- Hệ thống đưa thông tin từ CSDL về tin tức đã chọn
Trang 20- Trên giao diện người quản trị chọn quản lý tin tức
- Hệ thống hiện thị danh sách các tin tức đã up thành công
- Người quản trị chọn một tin tức để xem
- Hệ thống đưa thông tin từ CSDL hiển thị đầy đủ tin tức đã chọn
- Kết thúc usecase.
Usecase Thêm tin tức
Biểu đồ usecase
Trang 21Hình 2.17 Biểu đồ usecase Thêm tin tức
Biểu đồ tuần tự
Hình 2.18 Biểu đồ tuần tự Thêm tin tức
Luồng sự kiện chính
- Trên giao diện người quản trị chọn quản lý tin tức
- Người quản trị chọn chức năng Thêm tin tức
- Hệ thống hiển thị form Thêm tin tức
- Người quản trị nhập thông tin và lưu lại
- Hệ thống kiểm tra thông tin của tin tức
- Nếu không có lỗi xảy ra thì báo thêm tin tức thành công, nếu có thì báo không hợp lệ và yêu cầu nhập lại thông tin
- Kết thúc usecase
Usecase Sửa tin tức
Biểu đồ usecase
Trang 22Hình 2.19 Biểu đồ usecase Sửa thông tin tin tức
Biểu đồ tuần tự
Hình 2.20 Biểu đồ tuần tự Sửa thông tin tin tức
Luồng sự kiện
- Trên giao diện người quản trị chọn quản lý tin tức
- Hệ thống hiển thị danh sách tin tức đã up thành công
- Người quản trị chọn tin tức và chọn chức năng sửa thông tin
- Hệ thống hiển thị lại form chi tiết tin tức để sửa thông tin
- Người quản trị sửa thông tin tin tức
- Hệ thống kiểm tra CSDL
- Nếu hợp lệ thì thông báo thành công, không hợp lệ thì thông báo thất bại
Trang 23- Trên giao diện người quản trị chọn quản lý tin tức
- Hệ thống hiện thị toàn bộ danh sách tin tức đã được up thành công
- Người quản trị chọn tin tức cần xóa và chọn chức năng xóa
- Hệ thống hỏi lại có xác nhận xóa hay không
- Nếu tiếp túc thì tin tức sẽ bị xóa khỏi hệ thống và báo xóa thành công
- Nếu chọn hủy thì tin tức vẫn còn trên CSDL
- Kết thúc usecase
Trang 24 Client
Hình 2.23 Biểu đồ usecase tổng quát client Bảng 2.2 Bảng các chức năng của ứng dụng
người dùng(chủ yếu là sinh viên) sửdụng khi cần sử dụng ứng dụng
dùng ghi lại những gì mình muốn vàđược lưu ngay trên ứng dụng
03 Đổi mật khẩu -Là chức năng cho người dùng
đổi mật khẩu để đảm bảo an toàn chotài khoản của riêng mình
04 ViewTinTuc -Cho phép người dùng xem được
tin tức, thông báo của nhà trường, cụ
thể gồm có+Tin học tập+Tin ngoại khóa+Tin khác
05 XemTTCaNhan -Cho phép người dùng xem được
Trang 25chính thông tin cá nhân của mình nhưngày sinh, mssv, họ tên …
06 XemTTMonHoc -Cho phép người dùng xem được
thông tin liên quan đến môn học đangtham gia hay môn học tham khảo
Trang 26Hình 2.25 Biểu đồ tuần tự usecase đăng nhập
Luồng sự kiện chính
- Người dùng nhập “tên đăng nhập” và “mật khẩu” tương ứng 2 ô textbox rồi ấn
chọn nút “đăng nhập” (tên đăng nhập ở đây chính là MSSV của người dùng)
- Hệ thống kiểm tra CSDL
- Nếu hợp lệ thì đăng nhập thành công
- Nếu không hợp lệ thì đăng nhập thất bại
+ Tên đăng nhập hoặc mật khẩu không tồn tại
+ Người dùng đăng nhập lại hoặc thực hiện luồng rẽ nhánh 1
- Luồng rẽ nhánh 3:
+ Thông tin đăng nhập của người dùng gửi không xác thực được đến bên CSDL quản trị
+ Người dùng bắt buộc chọn làm theo rẽ nhánh 1
Tiền điều kiện: Người dùng khởi động đúng ứng dụng
Trang 27Hậu điều kiện: Không
- Người dùng đăng nhập thành công
- Người dùng chọn chức năng ghi chú
- Người dùng nhập thông tin cần ghi chú
- Hệ thống kiểm tra và lưu vào CSDL
- Thông báo ghi chú thành công
- Kết thúc usecase
Trang 28Usecase Đổi mật khẩu
- Người dùng đăng nhập thành công
- Người dùng chọn chức năng đổi mật khẩu
- Hệ thống đưa form đổi mật khẩu cho người dùng
- Người dùng nhập thông tin thay đổi
- Hệ thống kiểm tra thông tin
- Nếu hợp lên thì báo đổi MK thành công
- Nếu thông tin không hợp lệ thì hệ thống báo đổi Mk thất bại
- Kết thúc usecase
Trang 29Usecase Xem tin tức
- Trên giao diện người dùng chọn phần tin tức
- Người dùng chọn tin tức cần xem, ở đây có 3 loại tin tức người dùng có thể
chọn là
+Tin học tập
+Tin ngoại khóa
+Tin tức khác
- Hệ thống lấy thông tin từ CSDL
- Nếu không có lỗi xảy ra, người dùng xem tin tức đúng mình yêu cầu
- Kết thúc usecase
Trang 30Usecase Xem Thông Tin Cá Nhân