Usecase Xem, thêm, xóa, sửa nguồn lực Name Xem, thêm, xóa, sửa nguồn lực Description Usecase này mô tả chức năng xem và cập nhật thông tin về nguồn lực của đơn vị Goal Các cơ sở sử dụng
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA HỆ THỐNG THÔNG TIN
BÁO CÁO ĐỒ ÁN HỆ THỐNG THÔNG TIN
XÂY DỰNG WEBSITE CHÀO
MÙA HÈ XANH VỚI FRAMEWORK WEB2PY
Giảng viên hướng dẫn : ThS NGUYỄN ĐÌNH LOAN PHƯƠNG
ThS VŨ MINH SANG
Sinh viên thực hiện: NGUYỄN VŨ PHONG 08520282
NGUYỄN DƯƠNG ÁI DIỆU 09520481 NGUYỄN HỒ DUY TRI 09520690 NGUYỄN HỒ DUY TRÍ 09520692
Lớp : HTTT04
Khóa : 2009 - 2014
TP Hồ Chí Minh, 26 tháng 6 năm 2013
Trang 2ii
MỞ ĐẦU
Khi những trang sách khép lại phía giảng đường, mùa hè vẫy chào, bao lượt sinh viên vác ba lô trên vai hành quân về những miền xa của tổ quốc Nơi
đó gọi họ bằng cái tên trìu mến yêu thương: Những chiến sĩ tình nguyện mùa
hè xanh Những chuyến đi cứ trải dài ra mãi, vì những mảnh đất họ đi qua sẽ trở thành mái nhà, thành những quê hương Dù không sinh ra, không nuôi họ lớn, nhưng ở đó họ đã trưởng thành, biết yêu thương và biết mở rộng lòng mình đón nhận những yêu thương
Từ những ý nghĩa lớn lao và thiết thực mà mình mang lại, năm 2013, Chiến dịch tình nguyện Mùa hè xanh đã thực sự trưởng thành, vững bước vào tuổi 20 với một bản lĩnh, sự tự tin, một sức sống, một dáng vóc mới
Do đó, nhóm đã chọn đề tài “Xây dựng website Chào Mùa Hè Xanh với Framework Web2Py” để trau dồi lại những kiến thức, kỹ năng mình đã học, tìm hiểu những công nghệ, kỹ thuật mới như Python, Web2py, HTML5, CSS3, Jquery, PageSpeed… qua đó, một phần đưa tin học vào giải quyết vấn đề quản
lý đang còn nhiều phức tạp và với mong muốn góp phần nhỏ công sức mình quảng bá hình ảnh đẹp của những “chiến sĩ Mùa hè xanh” đến với mọi người Bên cạnh đó, còn là nhịp cầu dành cho các chiến sĩ gắn kết nhau hơn, cùng chia sẻ những câu chuyện, những tình cảm, cảm xúc trong suốt mùa chiến dịch Là nơi để gửi những tin nhắn yêu thương, những lời động viên từ “tiền tuyến” đến “hậu phương” xa cách, để cùng nhau tiếp lửa, chung tay cho những công việc ý nghĩa, góp sức xây dựng cộng đồng từ thành phố cho đến thôn quê
Trang 3iii
LỜI CẢM ƠN
Để hoàn thành được đề tài này nhóm chúng tôi chân thành cảm ơn Quý Th ầy/Cô trong khoa H ệ Thống Thông Tin trường Đại Học Công Nghệ Thông Tin đã nhiệt tình chỉ dẫn
và giúp đỡ, trong đó nhóm xin gởi lời cảm ơn sâu sắc đến cô Nguyễn Đình Loan Phương và thầy Vũ Minh Sang giáo viên hướng dẫn nhóm thực hiện đề tài này, thầy cô đã nhiệt tình hướng dẫn cho chúng tôi các bước để thực hiện đề tài, giúp nhóm gi ải quyết nhiều khó khăn và n ảy ra nhiều ý tưởng mới Bên c ạnh đó, chúng tôi c ũng nhận được sự giúp đỡ nhiệt tình của các anh chị khóa trên và các b ạn trong trường Một lần nữa nhóm gởi lời cảm ơn đến tất cả mọi người!
Trang 4iv
NHẬN XÉT
Trang 5
v
MỤC LỤC
MỞ ĐẦU ii
LỜI CẢM ƠN iii
NHẬN XÉT iv
MỤC LỤC v
DANH MỤC HÌNH ẢNH x
DANH MỤC BẢNG xiii
Chương 1: TỔNG QUAN ĐỀ TÀI 1
1.1 TÊN ĐỀ TÀI 1
1.2 THỰC TRẠNG VẤN ĐỀ 1
1.3 GIẢI PHÁP GIẢI QUYẾT VẤN ĐỀ 1
1.4 PHẠM VI NGHIÊN CỨU 2
1.5 YÊU CẦU CHỨC NĂNG – PHI CHỨC NĂNG 2
1.5.1 Yêu cầu chức năng 2
1.5.2 Yêu cầu phi chức năng 2
Chương 2: CƠ SỞ LÝ THUYẾT 3
2.1 PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG UML 3
2.1.1 Giới thiệu về UML 3
2.1.2 Các bước phân tích thiết kế hướng đối tượng 3
2.1.3 Giới thiệu công cụ RATIONAL ROSE 4
2.2 NGÔN NGỮ LẬP TRÌNH PYTHON 4
2.2.1 Giới thiệu về Python 4
2.2.2 Sơ lược về đặc điểm 5
2.2.3 web2py Framework 8
2.3 HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL 8
2.4 KỸ THUẬT TĂNG TỐC WEBSITE 9
Chương 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 2
3.1 PHÂN TÍCH NGHIỆP VỤ 2
3.2 THIẾT KẾ USECASE DIAGRAM 2
3.2.1 Usecase diagram tổng quan của hệ thống 2
3.2.2 Usecase Quản lí tài khoản 3
3.2.3 Usecase Quản lí thông tin đơn vị trực thuộc 4
3.2.4 Usecase Quản lí mặt trận 4
3.2.5 Usecase Quản lí chương trình 5
3.2.6 Usecase Quản lí dự án 5
3.2.7 Usecase Quản lí sidebar và Banner 6
3.3 ĐẶC TẢ USECASE 7
Trang 6vi
3.3.1 Đăng nhập và Đăng xuất 7
3.3.2 Quản lí thông tin cá nhân 8
3.3.3 Xem tin tức – sự kiện 8
3.3.4 Gửi đề xuất – kiến nghị 8
3.3.5 Quản lí thông tin đơn vị trực thuộc 9
3.3.6 Đăng tin tức – sự kiện 10
3.3.7 Báo cáo tình hình hoạt động hàng tuần 11
3.3.8 Quản lý báo cáo hoạt động 11
3.3.9 Quản lí dự án 12
3.3.10 Quản lí chương trình 14
3.3.11 Quản lí mặt trận 15
3.3.12 Quản lí tin tức sự kiện 17
3.3.13 Quản lí tài khoản 17
3.3.14 Quản lí danh sách các đơn vị 19
3.3.15 Quản lí Sidebar và Banner 19
3.3.15 Xem thống kê chiến sĩ 21
3.4 QUY TẮC NGHIỆP VỤ 21
3.5 PHÂN QUYỀN NGƯỜI DÙNG 21
3.5.1 Sơ đồ mô tả chung 21
3.5.2 Mô tả từng thành phần 22
3.6 PHÂN TÍCH YÊU CẦU LƯU TRỮ 23
3.6.1 Lưu trữ thông tin mhx_chiensy: Thông tin chiến sĩ 23
3.6.2 Lưu trữ thông tin mhx_banchihuy: Thông tin ban chỉ huy 24 3.6.3 Lưu trữ thông tin mhx_bch_ct: Thông tin ban chỉ huy chương trình 24
3.6.4 Lưu trữ thông tin mhx_bch_da: Thông tin ban chỉ huy dự án 24 3.6.5 Lưu trữ thông tin mhx_bch_donvi: Thông tin ban chỉ huy đơn vị 24 3.6.6 Lưu trữ thông tin mhx_bch_mattran: Thông tin ban chỉ huy mặt trận 24 3.6.7 Lưu trữ thông tin mhx_chucvu: Thông tin chức vụ 25
3.6.8 Lưu trữ thông tin mhx_chuongtrinh: Thông tin chương trình 25 3.6.9 Lưu trữ thông tin mhx_ct_mt: Thông tin chương trình của mặt trận 25 3.6.10 Lưu trữ thông tin mhx_ctmt_nc: Thông tin nhu cầu chương trình của mặt trận 25
Trang 7vii
3.6.11 Lưu trữ thông tin mhx_dh_ctmtnc: Thông tin đội hình đáp
ứng nhu cầu chương trình của mặt trận 25
3.6.12 Lưu trữ thông tin mhx_dh_hmnc: Thông tin đội hình đáp ứng nhu cầu của hạng mục 26
3.6.13 Lưu trữ thông tin mhx_doihinh: Thông tin đội hình 26
3.6.14 Lưu trữ thông tin mhx_donvi: Thông tin đơn vị 26
3.6.15 Lưu trữ thông tin mhx_duan: Thông tin dự án 26
3.6.16 Lưu trữ thông tin mhx_hangmuc: Thông tin hạng mục 26
3.6.17 Lưu trữ thông tin mhx_hm_nc: Thông tin nhu cầu của hạng mục 27 3.6.18 Lưu trữ thông tin mhx_loaidonvi: Thông tin loại đơn vị 27
3.6.19 Lưu trữ thông tin mhx_mattran: Thông tin mặt trận 27
3.6.20 Lưu trữ thông tin mhx_nguonluc: Thông tin nguồn lực 27
3.6.21 Lưu trữ thông tin mhx_nhucau 27
3.6.22 Lưu trữ thông tin mhx_nl_dv: Thông tin nguồn lực của đơn vị 28 3.6.23 Lưu trữ thông tin mhx_nldv_ctmtnc: Thông tin nguồn lực đáp ứng nhu cầu chương trình của mặt trận 28
3.6.24 Lưu trữ thông tin mhx_nldv_hmnc: Thông tin nguồn lực đáp ứng nhu cầu của hạng mục 28
3.6.25 Lưu trữ thông tin mhx_photogallery: Thông tin hình ảnh 28 3.6.26 Lưu trữ thông tin mhx_post: Thông tin tin tức - sự kiện 28
3.6.27 Lưu trữ thông tin mhx_quyen: Thông tin quyền 29
3.6.28 Lưu trữ thông tin mhx_role: Thông tin phân quyền 29
3.6.29 Lưu trữ thông tin mhx_slideshow: Thông tin banner 29
3.6.30 Lưu trữ thông tin mhx_sponsor: Thông tin tài trợ - hỗ trợ 30 3.6.31 Lưu trữ thông tin mhx_user: Thông tin tài khoản 30
3.6.32 Lưu trữ thông tin mhx_video: Thông tin video 30
3.6.33 Lưu trữ thông tin mhx_baocaonhanh: Thông tin báo cáo nhanh 30 3.6.34 Lưu trữ thông tin mhx_loaivanban: Thông tin loại văn bản 31 3.6.35 Lưu trữ thông tin mhx_bcn_lvb: Thông tin các loại văn bản gửi kèm báo cáo 31
3.7 BIỂU ĐỒ LỚP TỔNG QUÁT CỦA HỆ THỐNG(CLASS DIAGRAM) 31
3.8 BIỂU ĐỒ TRẠNG THÁI(STATECHART DAGRAM) 32 3.8.1 Trạng thái đang Online và Offline của người dùng khi vào website 32
Trang 8viii
3.8.2 Trạng thái đang được đăng và không được đăng của tin tức
- sự kiện/ tài trợ - hỗ trợ/ hình ảnh/ banner 32
3.9 BIỂU ĐỒ TUẦN TỰ(SEQUENCE DIAGRAM) VÀ BIỂU ĐỒ CỘNG TÁC(COLLABORATION DIAGRAM) 33
3.9.1 Đăng nhập và Đăng xuất 33
3.9.2 Quản lý thông tin cá nhân 36
3.9.3 Xem tin tức – sự kiện 37
3.9.4 Gửi liên hệ 38
3.9.5 Quản lý thông tin đơn vị trực thuộc 39
3.9.6 Đăng tin tức – sự kiện 47
3.9.7 Báo cáo tình hình hoạt động hàng tuần 48
3.9.8 Quản lý báo cáo tình hình hoạt động hàng tuần 49
3.9.9 Quản lý dự án 51
3.9.10 Quản lý chương trình 55
3.9.11 Quản lý mặt trận 59
3.9.12 Quản lý tin tức sự kiện 63
3.9.13 Quản lý tài khoản 65
3.9.14 Quản lý danh sách các đơn vị 67
3.9.15 Quản lý sidebar và banner 69
3.9.16 Xem thống kê chiến sĩ 76
3.10 BIỂU ĐỒ HOẠT ĐỘNG(ACTIVITY DIAGRAM) 77
3.10.1 Đăng nhập và Đăng xuất 77
3.10.2 Quản lý thông tin cá nhân 78
3.10.3 Xem tin tức – sự kiện 78
3.10.4 Gửi liên hệ 79
3.10.5 Quản lý thông tin đơn vị trực thuộc 79
3.10.6 Đăng tin tức – sự kiện 83
3.10.7 Báo cáo tình hình hoạt động hàng tuần 83
3.10.8 Quản lý báo cáo tình hình hoạt động hàng tuần 84
3.10.9 Quản lý dự án 85
3.10.10 Quản lý chương trình 87
3.10.11 Quản lý mặt trận 89
3.10.12 Quản lý tin tức sự kiện 91
3.10.13 Quản lý tài khoản 92
3.10.14 Quản lý danh sách các đơn vị 93
3.10.15 Quản lý sidebar và banner 94
3.10.16 Xem thống kê chiến sĩ 95
Trang 9ix
3.11 THIẾT KẾ GIAO DIỆN CHƯƠNG TRÌNH 95
3.11.1 Sơ đồ website tổng quan 95
3.11.2 Module Default 96
3.11.3 Module Manager 102
Chương 4: XÂY DỰNG ỨNG DỤNG 135
4.1 CÀI ĐẶT 135
4.2 XỬ LÝ 135
4.2.1 Yêu cầu cài đặt 135
4.2.2 Framework 135
4.2.3 Kết nối database 135
4.2.4 Khởi động website 135
4.2.5 Đăng nhập vào website 135
Chương 5: KẾT LUẬN 136
5.1 KẾT LUẬN 136
5.2 Ý NGHĨA CỦA ĐỀ TÀI 136
DANH MỤC TÀI LIỆU THAM KHẢO 137
Trang 10x
DANH MỤC HÌNH ẢNH
Hình II 1 Các bước phát triển hệ thống hướng đối tượng 3
Hình III 1 Usecase tổng quan của hệ thống 3
Hình III 2 Usecase Quản lí tài khoản 4
Hình III 3 Usecase Quản lí thông tin đơn vị 4
Hình III 4 Usecase Quản lí mặt trận 5
Hình III 5 Usecase Quản lí chương trình 5
Hình III 6 Usecase Quản lí dự án 6
Hình III 7 Usecase Quản lí Sidebar và Banner 7
Hình III 8 Sơ đồ phân cấp quản lý của chiến dịch 21
Hình III 9 Biểu đồ lớp tổng quát của hệ thống 32
Hình III 10 Biểu đồ trạng thái đăng nhập 32
Hình III 11 Biểu đồ trạng thái đăng đăng của tin tức - sự kiện/ tài trợ - hỗ trợ/ hình ảnh/ banner 33
Hình III 12 Biểu đồ tuần tự (Sequence Diagram): Đăng nhập 34
Hình III 13 Biểu đồ cộng tác(Collaboration Diagram): Đăng nhập 35
Hình III 14 Biểu đồ tuần tự (Sequence Diagram): Đăng xuất 35
Hình III 15 Biểu đồ cộng tác(Collaboration Diagram): Đăng xuất 36
Hình III 16 Biểu đồ tuần tự (Sequence Diagram): Quản lý thông tin cá nhân 36
Hình III 17 Biểu đồ cộng tác(Collaboration Diagram): Quản lý thông tin cá nhân 37
Hình III 18 Biểu đồ tuần tự (Sequence Diagram): Xem tin tức – sự kiện 37
Hình III 19 Biểu đồ cộng tác(Collaboration Diagram): Xem tin tức – sự kiện 38
Hình III 20 Biểu đồ tuần tự (Sequence Diagram): Gửi liên hệ 38
Hình III 21 Biểu đồ cộng tác(Collaboration Diagram): Gửi liên hệ 39
Hình III 22 Biểu đồ tuần tự (Sequence Diagram): Quản lý nguồn lực 40
Hình III 23 Biểu đồ cộng tác(Collaboration Diagram): Quản lý nguồn lực 41
Hình III 24 Biểu đồ tuần tự (Sequence Diagram): Quản lý đội hình 42
Hình III 25 Biểu đồ cộng tác(Collaboration Diagram): Quản lý đội hình 43
Hình III 26 Biểu đồ tuần tự (Sequence Diagram): Quản lý chiến sĩ 44
Hình III 27 Biểu đồ cộng tác(Collaboration Diagram): Quản lý chiến sĩ 45
Hình III 28 Biểu đồ tuần tự (Sequence Diagram): Quản lý Ban chỉ huy đơn vị 46
Hình III 29 Biểu đồ cộng tác(Collaboration Diagram): Quản lý Ban chỉ huy đơn vị 47
Hình III 30 Biểu đồ tuần tự (Sequence Diagram): Đăng tin tức – sự kiện 47
Hình III 31 Biểu đồ cộng tác(Collaboration Diagram): Đăng tin tức – sự kiện 48
Hình III 32 Biểu đồ tuần tự (Sequence Diagram): Báo cáo tình hình hoạt động hàng tuần 48
Hình III 33 Biểu đồ cộng tác(Collaboration Diagram): Báo cáo tình hình hoạt động hàng tuần 49
Trang 11xi Hình III 34 Biểu đồ tuần tự (Sequence Diagram): Quản lý báo cáo tình hình
hoạt động hàng tuần 50
Hình III 35 Biểu đồ cộng tác(Collaboration Diagram): Quản lý báo cáo tình hình hoạt động hàng tuần 51
Hình III 36 Biểu đồ tuần tự (Sequence Diagram): Quản lý nội dung dự án 52
Hình III 37 Biểu đồ cộng tác(Collaboration Diagram): Quản lý nội dung dự án 53
Hình III 38 Biểu đồ tuần tự (Sequence Diagram): Quản lý ban chỉ huy dự án 54
Hình III 39 Biểu đồ cộng tác(Collaboration Diagram): Quản lý ban chỉ huy dự án 55
Hình III 40 Biểu đồ tuần tự (Sequence Diagram): Quản lý nội dung chương trình 56
Hình III 41 Biểu đồ cộng tác(Collaboration Diagram): Quản lý nội dung chương trình 57
Hình III 42 Biểu đồ tuần tự (Sequence Diagram): Quản lý ban chỉ huy chương trình 58
Hình III 43 Biểu đồ cộng tác(Collaboration Diagram): Quản lý ban chỉ huy 58
Hình III 44 Biểu đồ tuần tự (Sequence Diagram): Quản lý nội dung mặt trận 60
Hình III 45 Biểu đồ cộng tác(Collaboration Diagram): Quản lý nội dung mặt trận 61
Hình III 46 Biểu đồ tuần tự (Sequence Diagram): Quản lý ban chỉ huy mặt trận 62
Hình III 47 Biểu đồ cộng tác(Collaboration Diagram): Quản lý ban chỉ huy mặt trận 63
Hình III 48 Biểu đồ tuần tự (Sequence Diagram): Quản lý tin tức sự kiện 64
Hình III 49 Biểu đồ cộng tác(Collaboration Diagram): Quản lý tin tức sự kiện 65
Hình III 50 Biểu đồ tuần tự (Sequence Diagram): Quản lý tài khoản 66
Hình III 51 Biểu đồ cộng tác(Collaboration Diagram): Quản lý tài khoản 67
Hình III 52 Biểu đồ tuần tự (Sequence Diagram): Quản lý danh sách các đơn vị 68
Hình III 53 Biểu đồ cộng tác(Collaboration Diagram): Quản lý danh sách các đơn vị 69
Hình III 54 Biểu đồ tuần tự (Sequence Diagram): Quản lý video 69
Hình III 55 Biểu đồ cộng tác(Collaboration Diagram): Quản lý video 70
Hình III 56 Biểu đồ tuần tự (Sequence Diagram): Quản lý hình ảnh 71
Hình III 57 Biểu đồ cộng tác(Collaboration Diagram): Quản lý hình ảnh 72
Hình III 58 Biểu đồ tuần tự (Sequence Diagram): Quản lý tài trợ - hỗ trợ 73
Hình III 59 Biểu đồ cộng tác(Collaboration Diagram): Quản lý tài trợ - hỗ trợ 74
Hình III 60 Biểu đồ tuần tự (Sequence Diagram): Quản lý banner 75
Hình III 61 Biểu đồ cộng tác(Collaboration Diagram): Quản lý banner 76
Hình III 62 Biểu đồ cộng tác(Collaboration Diagram): Xem thống kê chiến sĩ 77
Trang 12xii
Hình III 63 Biểu đồ hoạt động(Activity Diagram): Đăng nhập 78
Hình III 64 Biểu đồ hoạt động(Activity Diagram): Đăng xuất 78
Hình III 65 Biểu đồ hoạt động(Activity Diagram): Quản lý thông tin cá nhân 78
Hình III 66 Biểu đồ hoạt động(Activity Diagram): Xem tin tức – sự kiện 79
Hình III 67 Biểu đồ hoạt động(Activity Diagram): Gửi liên hệ 79
Hình III 68 Biểu đồ hoạt động(Activity Diagram): Quản lý nguồn lực 80
Hình III 69 Biểu đồ hoạt động(Activity Diagram): Quản lý đội hình 81
Hình III 70 Biểu đồ hoạt động(Activity Diagram): Quản lý chiến sĩ 82
Hình III 71 Biểu đồ hoạt động(Activity Diagram): Quản lý Ban chỉ huy Đơn vị 83
Hình III 72 Biểu đồ hoạt động(Activity Diagram): Đăng tin tức – sự kiện 83
Hình III 73 Biểu đồ hoạt động(Activity Diagram): báo cáo tình hình hoạt động hàng tuần 84
Hình III 74 Biểu đồ hoạt động(Activity Diagram): quản lý báo cáo tình hình hoạt động hàng tuần 85
Hình III 75 Biểu đồ hoạt động(Activity Diagram): Quản lý nội dung dự án 86 Hình III 76 Biểu đồ hoạt động(Activity Diagram): Quản lý ban chỉ huy dự án 87
Hình III 77 Biểu đồ hoạt động(Activity Diagram): Quản lý nội dung chương trình 88
Hình III 78 Biểu đồ hoạt động(Activity Diagram): Quản lý ban chỉ huy chương trình 89
Hình III 79 Biểu đồ hoạt động(Activity Diagram): Quản lý nội dung mặt trận 90
Hình III 80 Biểu đồ hoạt động(Activity Diagram): Quản lý ban chỉ huy mặt trận 91
Hình III 81 Biểu đồ hoạt động(Activity Diagram): Quản lý tin tức sự kiện 92 Hình III 82 Biểu đồ hoạt động(Activity Diagram): Quản lý tài khoản 93
Hình III 83 Biểu đồ hoạt động(Activity Diagram): Quản lý danh sách các đơn vị 94
Hình III 84 Biểu đồ hoạt động(Activity Diagram): Quản lý sidebar và banner 95
Hình III 85 Biểu đồ hoạt động(Activity Diagram): Xem thống kê chiến sĩ 95
Hình III 86 Cấu trúc giao diện module Default 96
Hình III 87 Cấu trúc giao diện module Manager 102
Trang 13xiii
DANH MỤC BẢNG
Bảng III 1 Usecase Đăng nhập và Đăng xuất 7
Bảng III 2 Usecase Quản lí thông tin cá nhân 8
Bảng III 3 Usecase Xem tin tức – sự kiện 8
Bảng III 4 Usecase Gửi đề xuất – kiến nghị 8
Bảng III 5 Usecase Xem, thêm, xóa, sửa nguồn lực 9
Bảng III 6 Usecase Xem, thêm, xóa sửa đội hình 9
Bảng III 7 Usecase Xem, thêm, xóa sửa danh sách chiến sĩ 10
Bảng III 8 Usecase Xem, thêm, xóa sửa ban chỉ huy đơn vị 10
Bảng III 9 Usecase Đăng tin tức – sự kiện 10
Bảng III 10 Usecase Báo cáo tình hình hoạt động hàng tuần 11
Bảng III 11 Usecase Quản lý Báo cáo tình hình hoạt động hàng tuần 11
Bảng III 12 Usecase Xem, thêm, xóa, sửa thông tin dự án 12
Bảng III 13 Usecase Xem, thêm, xóa, sửa hạng mục của dự án 12
Bảng III 14 Usecase Xem, thêm, xóa, sửa đăng ký hạng mục 12
Bảng III 15 Usecase Xem, thêm, xóa, sửa nhu cầu dự án 13
Bảng III 16 Usecase Xem, them, xóa, sửa Ban chỉ huy của dự án 13
Bảng III 17 Usecase Xem, thêm, xóa, sửa nội dung thông tin chương trình 14 Bảng III 18 Usecase Xem, thêm, xóa, sửa nhu cầu của chương trình 14
Bảng III 19 Usecase Xem danh sách mặt trận theo chương trình 14
Bảng III 20 Usecase Xem, thêm, xóa, sửa Ban chỉ huy Chương trình 15
Bảng III 21 Usecase Xem, thêm, xóa, sửa mặt trận 15
Bảng III 22 Usecase Xem, thêm, xóa, sửa chương trình của mặt trận 16
Bảng III 23 Usecase Xem, thêm, xóa, sửa nhu cầu chương trình mặt trận 16
Bảng III 24 Usecase Xem, thêm, xóa, sửa mặt trận tham gia 17
Bảng III 25 Usecase Thêm, xóa, sửa tin tức sự kiện 17
Bảng III 26 Usecase Thêm, xóa, sửa danh sách tài khoản 17
Bảng III 27 Usecase Phân quyền 18
Bảng III 28 Usecase Thành lập ban chỉ huy 18
Bảng III 29 Usecase Quản lí danh sách các đơn vị 19
Bảng III 30 Usecase Thêm, xóa video clip 19
Bảng III 31 Usecase Thêm, xóa, sửa hình ảnh 20
Bảng III 32 Usecase Thêm, xóa, sửa slide nhà tài trợ 20
Bảng III 33 Usecase Thêm, xóa, sửa banner 20
Bảng III 34 Usecase Xem thống kê chiến sĩ 21
Bảng III 35 Lưu trữ thông tin chiến sĩ 23
Bảng III 36 Lưu trữ thông tin ban chỉ huy 24
Bảng III 37 Lưu trữ thông tin ban chỉ huy chương trình 24
Bảng III 38 Lưu trữ thông tin ban chỉ huy dự án 24
Bảng III 39 Lưu trữ thông tin ban chỉ huy đơn vị 24
Bảng III 40 Lưu trữ thông tin ban chỉ huy mặt trận 24
Bảng III 41 Lưu trữ thông tin chức vụ 25
Bảng III 42 Lưu trữ thông tin chương trình 25
Bảng III 43 Lưu trữ thông tin chương trình của mặt trận 25
Bảng III 44 Lưu trữ thông tin nhu cầu chương trình của mặt trận 25
Trang 14xiv Bảng III 45 Lưu trữ thông tin đội hình đáp ứng nhu cầu chương trình của mặt
trận 25
Bảng III 46 Lưu trữ thông tin đội hình đáp ứng nhu cầu của hạng mục 26
Bảng III 47 Lưu trữ thông tin đội hình 26
Bảng III 48 Lưu trữ thông tin đơn vị 26
Bảng III 49 Lưu trữ thông tin dự án 26
Bảng III 50 Lưu trữ thông tin hạng mục 27
Bảng III 51 Lưu trữ thông tin nhu cầu hạng mục 27
Bảng III 52 Lưu trữ thông tin loại đơn vị 27
Bảng III 53 Lưu trữ thông tin mặt trận 27
Bảng III 54 Lưu trữ thông tin nguồn lực 27
Bảng III 55 Lưu trữ thông tin nhu cầu 27
Bảng III 56 Lưu trữ thông tin nguồn lực của đơn vị 28
Bảng III 57 Lưu trữ thông tin nguồn lực đáp ứng nhu cầu chương trình của mặt trận 28
Bảng III 58 Lưu trữ thông tin nguồn lực đáp ứng nhu cầu của hạng mục 28
Bảng III 59 Lưu trữ thông tin hình ảnh 28
Bảng III 60 Lưu trữ thông tin tin tức – sự kiện 28
Bảng III 61 Lưu trữ thông tin quyền 29
Bảng III 62 Lưu trữ thông tin phân quyền 29
Bảng III 63 Lưu trữ thông tin banner 29
Bảng III 64 Lưu trữ thông tin tài trợ - hỗ trợ 30
Bảng III 65 Lưu trữ thông tin tài khoản 30
Bảng III 66 Lưu trữ thông tin video 30
Bảng III 67 Lưu trữ thông tin báo cáo nhanh 30
Bảng III 68 Lưu trữ thông tin loại văn bản 31
Bảng III 69 Lưu trữ thông tin các loại văn bản gửi kèm báo cáo 31
Trang 15Việc đăng ký chiến dịch tình nguyện vẫn do các đơn vị cơ sở như: trường, quận huyện tổ chức Các chiến sĩ phải qua quá trình tuyển chọn để đảm bảo chất lượng trên nguyên tắc tình nguyện, kỷ luật, bố trí vào đúng đội hình, nội dung công việc phù hợp với nguyện vọng, sở trường của chiến sĩ Sau đó danh sách chiến sĩ được tuyển chọn sẽ được gửi đến ban chỉ huy chiến dịch cấp Thành để tiện trong việc quản lý và phân bố lực lượng
Về vấn đề đăng ký nội dung công việc thì các đơn vị cơ sở tự chủ động trao đổi và thống nhất nội dung phối hợp trong chiến dịch Mùa hè xanh
Bên cạnh đó, thông tin tuyên truyền phổ biến của Ban chỉ huy cấp Thành đến chiến sĩ thường phải qua Ban chỉ huy cấp cơ sở do vậy vấn đề thông tin thường rất chậm
1.3 GIẢI PHÁP GIẢI QUYẾT VẤN ĐỀ
Cũng chính vì những vấn đề trên và hưởng ứng chào mừng 20 năm Chiến dịch mùa hè xanh Ban chấp hành Hội Sinh Viên Việt Nam thành phố Hồ Chí
Minh lên ý tưởng xây dựng website “Chào mùa hè xanh” nhằm tạo cầu nối giữa
ban chỉ huy chiến dịch với chiến sĩ, giữa các ban, các bộ phận chỉ huy trong chiến dịch Đây sẽ là kênh thông tin chính và xuyên suốt các chiến dịch Mùa hè xanh sau này
Dựa trên ý tưởng của Hội sinh viên, chúng tôi xây dựng lên website “Chào mùa hè xanh” Nó sẽ là cổng thông tin liên lạc chính, bên cạnh đó nó cũng là nơi
để ban chỉ huy dễ dàng quản lý chiến dịch Website sẽ đảm bảo một số tính năng sau:
Các chiến sĩ có thể nắm bắt các thông tin về chiến dịch cũng như gửi ý kiến đóng góp về cho ban chỉ huy
Trang 162 Ban chỉ huy có thể dễ dàng phổ biến thông tin đến chiến sĩ, theo dõi các hoạt động trong chiến dịch
Bên cạnh đó các ban và bộ phận chỉ huy có thể dễ dàng trong công tác quản
lý chiến sĩ và quản lý và phân bố các mặt trận khu vực
1.4 PHẠM VI NGHIÊN CỨU
Đề tài được thực hiện dựa nhu cầu của Hội Sinh Viên Việt Nam thành phố
Hồ Chí Minh với mong muốn xây dựng một hệ thống quản lý cho chiến dịch Mùa
hè xanh Nội dung nghiên cứu gồm những chủ đề sau:
- Tìm hiểu và và thu thập thông tin về cách thức tổ chức và thông tin quản lý của Chiến dịch Mùa hè xanh
- Sử dụng hệ quản trị cơ sở dữ liệu MySQL để quản lý dữ liệu của website
- Xây dựng và phát triển website trên nền tảng ngôn ngữ Python với Web2py Framework
1.5 YÊU CẦU CHỨC NĂNG – PHI CHỨC NĂNG
1.5.1 Yêu cầu chức năng
Với những vấn đề trên cũng như những ý tưởng đặt ra của đề tài thì chúng tôi
có một số mô tả chức năng như sau:
- Phân quyền quản lý website, tùy theo từng cấp bậc và bộ phận sẽ có những phạm vi sử dụng website khác nhau
- Cho phép các tình nguyện viên có nguyện vọng tham gia chiến dịch được đăng ký tham gia các mặt trận chiến dịch
- Những ban có trách nhiệm thuộc các trường, quận huyện và các nhóm tình nguyện có thể thao tác trên các dữ liệu về đăng ký chiến sĩ, các dữ liệu về bài viết tin tức của trường, quận huyện hoặc tổ chức đó
- Ban chỉ huy cấp cơ sở có quyền đăng ký nhiệm vụ và mặt trận thực hiện trên website Ban chỉ huy cấp Thành sẽ dựa vào danh sách đăng ký và số lượng chiến sĩ để phân bố cho phù hợp
Các bài viết về chiến dịch cũng như những thông tin về chiến dịch luôn được cập nhật trên website
1.5.2 Yêu cầu phi chức năng
- Giao diện thân thiện với người dùng, dễ sử dụng
- Tương thích với nhiều trình duyệt như: Chrome, Firefox, IE…
- Tốc độ xử lý ổn định
Trang 173
Chương 2: CƠ SỞ LÝ THUYẾT
2.1 PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG UML
2.1.1 Giới thiệu về UML
UML (Unified Modelling Language) là ngôn ngữ mô hình hoá tổng quát được xây dựng để đặc tả, phát triển và viết tài liệu cho các khía cạnh trong phát triển phần mềm hướng đối tượng UML giúp người phát triển hiểu rõ và ra quyết định liên quan đến phần mềm cần xây dựng UML bao gồm một tập các khái niệm, các ký hiệu, các biểu đồ và hướng dẫn
2.1.2 Các bước phân tích thiết kế hướng đối tượng
Các bước phân tích thiết kế hướng đối tượng được xây dựng dựa trên các biểu đồ trong ngôn ngữ mô hình hóa thống nhất UML như hình vẽ:
Hình II 1 Các bước phát triển hệ thống hướng đối tượng
2.1.2.1 Pha phân tích
Xây dựng biểu đồ usecase: Dựa trên tập yêu cầu ban đầu, người phân tích tiến hành xác định các tác nhân, usecase và các quan hệ giữa các usecase để mô tả lại các chức năng của hệ thống Một thành phần quan trọng của biểu đồ usecase
là các kịch bản mô tả hoạt động của hệ thống trong mỗi usecase cụ thể
Xây dựng biểu đồ lớp: Xác định tên các lớp, các thuộc tính của lớp, một số phương thức và mối quan hệ cơ bản trong sơ đồ lớp
Xây dựng biểu đồ trạng thái: Mô tả các trạng thái và chuyển tiếp trạng thái trong hoạt động của một đối tượng thuộc một lớp nào đó
2.1.2.2 Pha thiết kế
Trang 184 Xây dựng biểu đồ tương tác(gồm biểu đồ cộng tác và biểu đồ tuần tự): mô tả chi tiết hoạt động của các usecase dựa trên các scenario đã có và các lớp đã xác định trong pha phân tích
Xây dựng biểu đồ lớp chi tiết: tiếp tục hoàn thành biểu đồ lớp bao gồm bổ sung các lớp còn thiếu, dựa trên biểu đồ trạng thái để bổ sung các thuộc tính, dựa trên bểu đồ tương tác để xác định các phương thức và mối quan hệ giữa các lớp Xây dựng biểu đồ hoạt động: mô tả hoạt động của các phương thức phức tạp trong mỗi lớp hoặc các hoạt động của hệ thống có sự liên quan của nhiều lớp Biểu đồ hoạt động là cơ sở để cài đặt phương thức trong các lớp
Xây dựng biểu đồ thành phần: xác định các gói, các thành phần và tổ chức phần mềm theo các thành phần đó
Xây dựng biểu đồ triển khai hệ thống: xác định các thành phần và các thiết
bị cần thiết để triển khai hệ thống, các giao thức và dịch vụ hỗ trợ
2.1.3 Giới thiệu công cụ RATIONAL ROSE
Rational Rose là một bộ công cụ được sử dụng cho phát triển các hệ phần mềm hướng đối tượng theo ngôn ngữ mô hình hóa UML Với chức năng của một
bộ công cụ trực quan, Rational Rose cho phép chúng ta tạo, quan sát, sửa đổi và quản lý các biểu đồ Tập ký hiệu mà Rational Rose cung cấp thống nhất với các
ký hiệu trong UML Ngoài ra, Rational Rose còn cung cấp chức năng hỗ trợ quản
lý dự án phát triển phần mềm, cung cấp các thư viện để hỗ trợ sinh khung mã cho
hệ thống theo một ngôn ngữ lập trình nào đó
2.2 NGÔN NGỮ LẬP TRÌNH PYTHON
2.2.1 Giới thiệu về Python
Python là một ngôn ngữ lập trình hướng đối tượng rất thông dụng dùng để
viết các tiện ích hệ thống và các đoạn mã trên Internet Nó cũng được sử dụng như ngôn ngữ kết dính đóng vai trò tích hợp C và C++ Được tạo ra bởi Guido van Rossum tại Amsterdamnăm 1990 Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự động; do vậy nó gần giống như Perl, Ruby, Scheme, Smalltalk, và Tcl Python được phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý Python bản 2.4.3 được phát hành vào 29 tháng 3, 2006 Bản tiếp theo là Python 2.5 release candidate 2
Gần đây nhất, đầu tháng 8/2006 Microsoft đã cho ra mắt bản phân phối thử nghiệm IronPython 1.0, vừa tích hợp tốt với Net Framework, vừa hoàn toàn kế thừa ngôn ngữ Python IronPython còn tận dụng CLI ( nền tảng ngôn ngữ chung )
để đạt hiệu năng cao, chạy nhanh hơn 1.5 lần so với Python nền C thông thường dựa trên thang đo benchmark
Python là ngôn ngữ có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập trình Cấu trúc của Python còn cho phép người sử dụng viết mã lệnh với số lần gõ phím tối thiểu
Trang 195 Ban đầu, Python được phát triển để chạy trên nền Unix Nhưng rồi theo thời gian, nó đã “bành trướng” sang mọi hệ điều hành từ DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix Mặc dù sự phát triển của Python có sự đóng góp của rất nhiều cá nhân, nhưng Guido van Rossum hiện nay vẫn là tác giả chủ yếu của Python Ông giữ vai trò chủ chốt trong việc quyết định hướng phát triển của Python
2.2.2 Sơ lược về đặc điểm
Python được thiết kế để trở thành một ngôn ngữ dễ học, mã nguồn dễ đọc,
bố cục trực quan, dễ hiểu, thể hiện qua các điểm sau:
a Từ khoá:
Python tăng cường sử dụng từ khóa tiếng Anh, hạn chế các kí hiệu và cấu trúc cú pháp so với các ngôn ngữ khác Python là một ngôn ngữ phân biệt kiểu chữ Như C/C++, các từ khóa của Python đều ở dạng chữ thường Dưới đây là
hệ thống từ khóa chuẩn:
and del from not while
as elif global or with
assert else if pass yield
break except import print
class exec in raise
continue finally is return
def for lambda try
b Khối lệnh:
Python, có một cách rất đặc biệt để tạo khối lệnh, đó là thụt các câu lệnh trong khối vào sâu hơn (về bên phải) so với các câu lệnh của khối lệnh cha chứa nó.Ví dụ giả sử có đoạn mã sau trong C/C++:
Trang 20C và sử dụng nó như là một mở rộng hoặc một ngôn ngữ dòng lệnh phụ trợ cho ứng dụng đó
d Trình thông dịch
Python là một ngôn ngữ lập trình dạng thông dịch Ưu điểm của thông dịch
là giúp ta tiết kiệm thời gian phát triển ứng dụng vì không cần phải thực hiện biên dịch và liên kết Trình thông dịch có thể được sử dụng để chạy file script, hoặc cũng có thể được sử dụng một cách tương tác Ở chế độ tương tác, trình thông dịch Python tương tự shell của các hệ điều hành họ Unix, tại đó, ta có thể nhập vào một biểu thức tại một thời điểm rồi enter, và kết quả thực thi sẽ được hiển thị ngay lập tức Đặc điểm này rất hữu ích cho người mới học, giúp họ nghiên cứu tính năng của ngôn ngữ; hoặc để các lập trình viên chạy thử mã trong suốt quá trình phát triển phần mềm Ngoài ra, nó cũng có thể được sử dụng như là một máy tính
e Lệnh và cấu trúc điều khiển:
Mỗi câu lệnh trong Python nằm trên một dòng mã nguồn Ta không cần phải kết thúc câu lệnh bằng bất kì kí tự gì Cũng như các ngôn ngữ khác, Python cũng có các cấu trúc điều khiển Chúng bao gồm:
Cấu trúc rẽ nhánh: cấu trúc if (có thể sử dụng thêm elif hoặc else), dùng để
thực thi có điều kiện một khối mã cụ thể
Python cũng có từ khóa class dùng để khai báo lớp (sử dụng trong lập trình
hướng đối tượng) và lệnh def dùng để định nghĩa hàm
f Hệ thống kiểu dữ liệu:
Trang 217
Python sử dụng hệ thống kiểu duck typing, còn gọi là latent typing (hàm
nghĩa: ngầm) Có nghĩa là, Python không kiểm tra các ràng buộc về kiểu dữ liệu tại thời điểm dịch, mà là tại thời điểm thực thi Khi thực thi, nếu một thao tác trên một đối tượng bị thất bại, thì có nghĩa là, đối tượng đó không sử dụng một kiểu thích hợp Python cũng là một ngôn ngữ định kiểu mạnh Nó cấm mọi thao tác không hợp lệ, ví dụ cộng một con số vào chuỗi Sử dụng Python, ta không cần phải khai báo biến Biến được xem là đã khai báo nếu nó được gán một giá trị lần đầu tiên Căn cứ vào mỗi lần gán, Python sẽ tự động xác định kiểu dữ liệu của biến Python có một số kiểu dữ liệu thông dụng sau:
int, long: số nguyên
float: số thực
complex: số phức
list: chuỗi có thể thay đổi
tuple: chuỗi không thể thay đổi
str: chuỗi kí tự không thể thay đổi
dict: từ điển
set: một tập không xếp theo thứ tự, ở đó, mỗi phần tử chỉ xuất hiện một lần
Ngoài ra, Python còn có nhiều kiểu dữ liệu khác
g Module ( khối chương trình )
Python cho phép chia chương trình thành modules để có thể sử dụng lại trong các chương trình khác Nó cũng có sẵn một tập hợp các modules chuẩn
mà ta có thể sử dụng lại trong chương trình của ta Các thư viện này cung cấp nhiều thứ, như file I/O, các lời gọi hệ thống, sockets,…
Trang 228
để tuỳ biến và mở rộng các ứng dụng lớn hơn Được tích hợp sẵn nhiều công cụ
và có một thư viện chuẩn phong phú, Python cho phép người dùng dễ dàng tạo
ra các dịch vụ Web, sử dụng các thành phần COM hay CORBA ( ) Nó hỗ trợ các định dạng email, dữ liệu Internet, HTML, XML và các ngôn ngữ đánh dấu khác Python cũng ứng dụng tất cả các giao thức Internet thông dụng như HTTP, FTP,… Python cung cấp giao tiếp đến hầu hết cơ sở dữ liệu, có khả năng
xử lí văn bản, tài liệu hiệu quả, và có thể làm việc tốt với các công nghệ Web khác Python cũng đặc biệt hiệu quả cho lập trình tính toán khoa học qua các công cụ Python Imaging Library, VTK, MayaVi 3D Visualization Toolkits, Numeric Python, ScientificPython,… Python cũng có thể được sử dụng để phát triển các ứng dụng Desktop Người dùng có thể dùng wxPython, PyQt, PyGtk
để phát triển các ứng dụng giao diện đồ họa (GUI) chất lượng cao Python có thể hỗ trợ các GUI frameworks khác như MFC, Carbon, Delphi, X11, Motif, và
Tk Python cũng có sẵn một unit testing framework để tạo ra các các bộ test (test suites)
i Multiple paradigms (đa biến hóa)
Python là một ngôn ngữ đa biến hóa (multiple paradigms) Có nghĩa là, thay
vì ép buộc mọi người phải sử dụng duy nhất một phương pháp lập trình, Python lại cho phép sử dụng nhiều phương pháp lập trình khác nhau: hướng đối tượng,
có cấu trúc, chức năng, hoặc chỉ hướng đến một khía cạnh Python kiểu kiểu động và sử dụng bộ thu gom rác để quản lí bộ nhớ Một đặc điểm quan trọng nữa của Python là giải pháp tên động, kết nối tên biến và tên phương thức lại với nhau trong suốt thực thi của chương trình
2.2.3 web2py Framework
Web2py là một web framework mã nguồn mở miễn phí hỗ trợ mạnh bảo mật kết nối cơ sở dữ liệu cho ứng dụng web, nó được viết trên nền tảng ngôn ngữ lập trình Python Web2py là một framework hoàn chỉnh chứa tất cả các thành phần cần để xây dựng đầy đủ các phương thức của ứng dựng web
Web2py được thiết kế dưới mô hình MVC giúp cho người lập trình dễ dàng trong các việc thiết kế, hiện thực và kiểm tra Web2py được xây dựng để bảo mật
vì nó sẽ tự động giải quyết nhiều vấn đề có thể dẫn tới lỗ hỏng bảo mật như: nó sẽ kiểm soát tất cả đầu vào để tránh khỏi các vấn đề lỗi đầu ra, đổi tên các tập tin tải lên(để chặn tấn công thư mục) web2py kiểm soát các vấn đề an ninh giúp người lập trình không mặc phải các vấn đề về lỗ hổng
2.3 HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL
MySQL là một phần mềm quản trị CSDL dạng server-based (gần tương
Trang 239 đương với SQL Server của Microsoft) MySQL quản lý dữ liệu thông qua các CSDL, mỗi CSDL có thể có nhiều bảng quan hệ chứa dữ liệu
MySQL có cơ chế phân quyền người sử dụng riêng, mỗi người dùng có thể được quản lý một hoặc nhiều CSDL khác nhau, mỗi người dùng có một tên truy cập (user name) và mật khẩu tương ứng để truy xuất đến CSDL
Khi ta truy vấn tới CSDL MySQL, ta phải cung cấp tên truy cập và mật khẩu của tài khoản có quyền sử dụng CSDL đó Nếu không, chúng ta sẽ không làm được gì cả giống như quyền chứng thực người dùng trong SQL Server vậy
Năm 2010 Google đã xác nhận tốc độ load của website sẽ là một tiêu chí đánh giá thứ hạng trên bộ máy tìm kiếm Google Theo đó, một website có tốc độ load nhanh sẽ được ưu tiên hơn so với những trang có tốc độ load chậm Chúng nên nhớ rằng 80%-90% thời gian trình duyệt hiển thị ra một trang web mà bạn đang xem là để tải các thành phần trong trang như: hình ảnh (images,) các dữ liệu
để định dạng tài liệu HTML (stylesheet - CSS), các đoạn script, flash, Đây chính là những điểm chính quan trọng mà chúng cần quan tâm để tăng tốc website của mình bên cạnh việc chúng ta dành thời gian cho công việc khó khăn hơn rất nhiều là thiết kế lại hệ thống Sau đây là các lưu ý mà chúng ta cần làm để tăng tốc một trang web
Minimize HTTP Requests
Use a Content Delivery Network
Avoid empty src or href
Add an Expires or a Cache-Control
Header
Gzip Components
Put StyleSheets at the Top
Put Scripts at the Bottom
Make AJAX Cacheable
Flush the Buffer Early
Use GET for AJAX Requests
Trang 24 Split Components Across Domains
Minimize the Number of iframes
No 404s
Reduce Cookie Size
Use Cookie-Free Domains for
Components
Minimize DOM Access
Develop Smart Event Handlers
Choose <link> over @import
Avoid Filters
Optimize Images
Optimize CSS Sprites
Do Not Scale Images in HTML
Make favicon.ico Small and Cacheable
Keep Components under 25K
Pack Components into a Multipart Document
Avoid Empty Image src
Trang 25Kế hoạch hoạt động của Ban chỉ huy cấp Thành sẽ xác định rõ thời gian, thành phần tham dự chiến dịch, mục đích nội dung của chiến dịch; vạch rõ các chương trình trọng điểm, các dự án sẽ thực hiện trong chiến dịch
Các đơn vị của là các trường đại học, cao đẳng, các công ty tổ chức tình nguyện, các quận huyện Các đơn vị này sẽ nhận được thông báo chỉ đạo từ ban chỉ huy sớm nhất Các đơn vị sẽ thành lập ban chỉ huy cấp cơ sở, khảo sát mặt trận và lập kế hoạch hoạt động Kế hoạch hoạt động, danh sách các mặt trận, nội dung của từng mặt trận… tất cả các danh sách và báo cáo trên các đơn vị phải gửi về Ban chỉ huy cấp Thành để ban chỉ huy kiểm soát và duyệt qua
Khi kế hoạch của cơ sở được duyệt, các cơ sở bắt đầu giai đoạn tuyển chiến sĩ Các tình nguyện viên sẽ đăng kí tham gia các đội hình mà họ mong muốn Đến khi hết hạn đăng ký, các đơn vị tổ chức các hoạt động tuyển chọn chiến sĩ để đảm bảo chất lượng trên nguyên tắc tình nguyện, kỷ luật, bố trí vào đúng đội hình, nội dung công việc phù hợp với nguyện vọng, sở trường của chiến sĩ Danh sách chiến sĩ được các đơn vị gửi lên ban chỉ huy cấp Thành Bắt đầu chiến dịch ban chỉ huy cấp cơ sở nhận chỉ đạo và nhiệm vụ từ cấp trên rồi phổ biến phân công cho chiến sĩ Các chiến sĩ đã được tuyển chọn phải trải qua một đợt tập huấn để có chuẩn bị hành trang tham gia vào chiến dịch Hằng tuần các đơn vị sẽ báo cáo tình hình hoạt động trong tuần cho ban chỉ huy cấp trên
3.2 THIẾT KẾ USECASE DIAGRAM
3.2.1 Usecase diagram tổng quan của hệ thống
Trang 263
Hình III 1 Usecase tổng quan của hệ thống
3.2.2 Usecase Quản lí tài khoản
Admin
Quan li tai khoan
Quan li danh sach don vi Xem thong ke chien si
Quan li sidebar&banner
Admin 1
Xem tin tuc - su kien
Gui de xuat kien nghi
Dang nhap & Dang xuat Quan li thong tin ca nhan
User
Quan li chuong trinh Quan li du an
Quan li mat tran
Bao cao tinh hình hoat dong hang tuan
Dang tin tuc su kien
Quan li thong tin don vi truc
Trang 274
Hình III 2 Usecase Quản lí tài khoản
3.2.3 Usecase Quản lí thông tin đơn vị trực thuộc
Hình III 3 Usecase Quản lí thông tin đơn vị
Xem, them, xoa, sua nguon luc
Xem, them, xoa, sua doi hinh
Xem, them, xoa, sua danh sach
chien si Mod
Xem, them, xoa, sua Ban chi
huy Don vi
Trang 285
Hình III 4 Usecase Quản lí mặt trận
3.2.5 Usecase Quản lí chương trình
Hình III 5 Usecase Quản lí chương trình
3.2.6 Usecase Quản lí dự án
Admin 1
xem, them, xoa, sua chuong trinh cua mat tran
xem, them, xoa, sua nhu cau chuong trinh mat tran
xem, them, xoa, sua mat tran
tham gia Admin 2
Admin Admin 1 xem, them, xoa, sua noi dung
thong tin chuong trinh
xem thong danh sach mat tran theo chuong trinh
Xem, them, xoa sua nhu cau cua chuong trinh Admin 2
xem, them, xoa sua Ban chi huy
chuong trinh
Trang 296
Hình III 6 Usecase Quản lí dự án
3.2.7 Usecase Quản lí sidebar và Banner
Xem, them, xoa, sua ban chi
huy
Trang 30Bảng III 1 Usecase Đăng nhập và Đăng xuất
Description Usecase này mô tả chức năng đăng nhập và đăng xuất
khỏ website Goal
- Actor đăng nhập vào hệ thống để có thể thực hiện một số chức năng quản lí trong quyền của mình
- Actor đăng xuất để thoát khỏi quyền hệ thống của mình
Pre- Conditions N/A
Post - Conditions N/A
Them, xoa video clip
Them, xoa, sua slide hinh anh
Them, xoa, sua slide nha tai tro Admin 1
Them, xoa, sua banner
Trang 31Description Usecase này mô tả chức năng xem, thay đổi nội dung
thông tin cá nhân của chiến sĩ
Goal
- Actor có thể xem các thông tin cá nhân của mình
- Nếu thông tin không đúng hoặc thiếu Actor có thể thay đổi nội dung
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
ảnh và bài viết được post lên website
Pre- Conditions N/A
Post - Conditions N/A
Trang 329 kiến ghị đến ban chỉ huy cấp trên Goal Ban chỉ huy có thể nhận được những phản hồi và góp ý
xây dựng từ chiến sĩ
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
3.3.4.2 Relationships
Actor: User
Include: Đăng nhập
Extend: N/A
3.3.5 Quản lí thông tin đơn vị trực thuộc
3.3.5.1 Xem, thêm, xóa, sửa nguồn lực
3.3.5.1.1 Use-Case Description Bảng III 5 Usecase Xem, thêm, xóa, sửa nguồn lực Name Xem, thêm, xóa, sửa nguồn lực
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về nguồn lực của đơn vị Goal Các cơ sở sử dụng chức năng này để xem và quản lí
thêm, xóa, sửa nguồn lực của đơn vị
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về các đội hình của đơn vị Goal Các cơ sở sử dụng chức năng này để xem và quản lí
thêm, xóa, sửa đội hình của đơn vị
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
3.3.5.2.2 Relationships
Actor: Admin, Mod
Trang 33Description Usecase này mô tả chức năng xem và cập nhật thông
tin về danh sách chiến sĩ của đơn vị Goal Các cơ sở sử dụng chức năng này để xem và quản lí
thêm, xóa, sửa danh sách chiến sĩ của đơn vị
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Name Xem, thêm, xóa sửa ban chỉ huy đơn vị
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về ban chỉ huy đơn vị Goal Các cơ sở sử dụng chức năng này để xem và quản lí
thêm, xóa, sửa ban chỉ huy đơn vị
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Trang 3411 Goal Người dùng chọn chức năng này để đăng các tin tức sự
kiện về chiến dịch
Pre- Conditions Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Bảng III 10 Usecase Báo cáo tình hình hoạt động hàng tuần
Name Báo cáo tình hình hoạt động hàng tuần
Description Usecase này mô tả chức năng báo cáo tình hình hoạt
động hàng tuần Goal Hàng tuần đơn vị chọn chức năng này để gửi báo cáo
tình hình hoạt động của đơn vị lên cấp trên
Pre- Conditions Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Hàng tuần các bộ phẩn quản chọn chức năng này để xem và kiểm soát báo cáo tình hình hoạt động của các đơn vị gửi lên
Pre- Conditions Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
3.3.8.2 Relationships
Actor: Admin, Admin 1, Admin 2
Trang 35Description Usecase này mô tả chức năng xem và cập nhật thông
tin về các dự án Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa danh sách các dự án
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Name Xem, thêm, xóa, sửa hạng mục của dự án
Description Usecase này mô tả chức năng xem và cập nhật thông
tin danh sách các hạng mục của dự án Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa danh sách các hạng mục của dự án
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Name Xem, thêm, xóa, sửa đăng ký hạng mục
Trang 3613 Description Usecase này mô tả chức năng xem và cập nhật thông
tin về đăng ký hạng mục Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin về đăng ký hạng mục
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Bảng III 15 Usecase Xem, thêm, xóa, sửa nhu cầu dự án
Name Xem, thêm, xóa, sửa nhu cầu dự án
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về nhu cầu của dự án Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin về nhu cầu của dự án
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Name Xem, them, xóa, sửa Ban chỉ huy của dự án
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về ban chỉ huy của dự án Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin về ban chỉ huy của dự án
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Trang 3714 3.3.9.5.2 Relationships
Actor: Admin, Admin 1, Admin 2
Description Usecase này mô tả chức năng xem và cập nhật thông
tin các chương trình của chiến dịch Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin các chương trình của chiến dịch
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về nhu cầu của chương trình Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin về nhu cầu của chương trình
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Trang 3815 Name Xem danh sách mặt trận theo chương trình
Description Usecase này mô tả chức năng xem danh sách mặt trận
theo chương trình Goal Actor sử dụng chức năng này để xem danh sách mặt
trận theo chương trình
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về Ban chỉ huy Chương trình Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin về Ban chỉ huy Chương trình
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về các mặt trận Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin về các mặt trận
Trang 3916 Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Name Xem, thêm, xóa, sửa chương trình của mặt trận
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về các chương trình mặt trận đăng ký Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin về các chương trình mặt trận đăng ký
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về nhu cầu chương trình của mặt trận Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin về nhu cầu chương trình của mặt trận
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
Trang 4017 3.3.11.4.1 Use-Case Description Bảng III 24 Usecase Xem, thêm, xóa, sửa mặt trận tham gia
Name Xem, thêm, xóa, sửa đáp ứng mặt trận tham gia
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về mặt trận tham gia Goal Actor sử dụng chức năng này để xem và quản lí thêm,
xóa, sửa thông tin về mặt trận tham gia
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
3.3.11.4.2 Relationships
Actor: Admin, Admin 1, Admin 2
Include: Đăng nhập
Extend: N/A
3.3.12 Quản lí tin tức sự kiện
3.3.12.1 Thêm, xóa, sửa tin tức sự kiện
3.3.12.1.1 Use-Case Description Bảng III 25 Usecase Thêm, xóa, sửa tin tức sự kiện Name Thêm, xóa, sửa tin tức sự kiện
Description Usecase này mô tả chức năng xem và cập nhật thông
tin về danh sách tin tức sự kiện Goal Các bộ phận quản lí thông tin sử dụng chức năng này
để quản lý tin tức sự kiện từ các cấp khác gửi lên
Pre- Conditions - Actor đăng nhập vào ứng dụng thành công
Post - Conditions N/A
3.3.12.1.2 Relationships
Actor: Admin, Admin 1, Admin 2, Mod
Include: Đăng nhập
Extend: N/A
3.3.13 Quản lí tài khoản
3.3.13.1 Thêm, xóa, sửa danh sách tài khoản
3.3.13.1.1 Use-Case Description Bảng III 26 Usecase Thêm, xóa, sửa danh sách tài khoản
Name Thêm, xóa, sửa danh sách tài khoản