Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ, việc ứng dụng các nền tảng trực tuyến trên máy tính và thiết bị di động để tối ưu hóa quy trình làm việc đã trở thành xu hướng tất yếu. Thực tế cho thấy, nhiều cuộc thi nhiếp ảnh và triển lãm nghệ thuật được tổ chức nhằm quảng bá hình ảnh thiên nhiên, bản sắc văn hóa và con người của các địa phương đến công chúng trong nước và quốc tế. Tuy nhiên, sự bùng phát phức tạp của đại dịch Covid-19 trong giai đoạn thực hiện đề tài đã làm gián đoạn các hoạt động tập trung đông người, khiến nhiều sự kiện không thể diễn ra theo hình thức trực tiếp (offline).
Điển hình tại tỉnh Sơn La, cuộc thi ảnh "Vẻ đẹp của thành phố Sơn La" được triển khai nhằm tuyển chọn 200 tác phẩm xuất sắc nhất để tham gia sự kiện "Triển lãm tranh". Trong điều kiện phòng chống dịch bệnh, quy trình truyền thống bộc lộ nhiều bất cập: thí sinh gửi ảnh trực tiếp hoặc qua bưu điện tốn kém thời gian; hội đồng ban giám khảo phải tập trung trực tiếp để chấm điểm, tổng hợp kết quả và xếp hạng thủ công, dẫn đến tình trạng quá tải và chậm trễ khi số lượng tác phẩm dự thi gửi về quá lớn. Xuất phát từ yêu cầu thực tiễn đó, tác giả Khuất Văn Đức (sinh viên lớp D17HTTT3, Khoa Công nghệ Thông tin 1, Học viện Công nghệ Bưu chính Viễn thông) dưới sự hướng dẫn của TS. Nguyễn Quang Hưng đã thực hiện đồ án tốt nghiệp: "Phần mềm thu nhận và chấm điểm ảnh".
Mục tiêu nghiên cứu và nhiệm vụ của đề tài được xác định cụ thể như sau:
- Xây dựng phần mềm hỗ trợ thí sinh (Candidates) và Ban tổ chức tự động hóa quy trình tiếp nhận bài dự thi nhanh chóng, khắc phục triệt để hạn chế của thao tác thủ công và đảm bảo an toàn sức khỏe trong bối cảnh dịch bệnh.
- Cung cấp nền tảng trực tuyến cho phép thí sinh đăng ký tài khoản và nộp tác phẩm trực tiếp lên hệ thống; phần mềm tự động thu nhận, phân loại thông tin tác giả, tác phẩm để chuyển tiếp tới hội đồng giám khảo.
- Thiết lập hệ thống phân quyền nghiệp vụ: cấp tài khoản cho thành viên Ban giám khảo (TVTHĐBGK) để chấm điểm độc lập trực tuyến; cấp tài khoản cho thành viên Ban tổ chức (TVTHĐBTC) theo dõi tổng điểm, lựa chọn 200 tác phẩm tiêu biểu tham gia triển lãm và tự động gửi thư điện tử (email) thông báo kết quả đến thí sinh.
Đối tượng nghiên cứu của đồ án là quy trình quản lý, thu nhận bài thi và chấm điểm ảnh nghệ thuật trực tuyến. Phạm vi nghiên cứu về mặt nghiệp vụ tập trung vào quy trình tổ chức cuộc thi ảnh nghệ thuật tại tỉnh Sơn La (cuộc thi "Vẻ đẹp của thành phố Sơn La"), áp dụng cho 4 nhóm đối tượng: Quản trị viên (Admin), Ban tổ chức (TVTHĐBTC), Ban giám khảo (TVTHĐBGK) và Thí sinh (Candidates). Thời gian thực hiện và hoàn thành đồ án tốt nghiệp vào năm 2022.
Cơ sở lý thuyết và phương pháp phát triển hệ thống
Khung lý thuyết của đồ án dựa trên các khái niệm nền tảng về kỹ thuật phần mềm và hệ thống thông tin. Phần mềm được định nghĩa là tập hợp các tập tin có mối liên hệ chặt chẽ với nhau (bao gồm mã nguồn, dữ liệu, thư viện và tài liệu hướng dẫn) nhằm thực hiện các chức năng cụ thể trên thiết bị điện tử. Mô hình hoạt động tổng quát của phần mềm tuân thủ chu trình 5 pha:
- Nhập dữ liệu vào
- Xử lý dữ liệu
- Đưa thông tin ra
- Lưu trữ các nguồn dữ liệu
- Kiểm tra hoạt động của phần mềm
Phương pháp nghiên cứu và phát triển hệ thống được tác giả áp dụng bao gồm:
- Phương pháp phân tích và mô hình hóa hướng đối tượng: Sử dụng ngôn ngữ mô hình hóa thống nhất UML (Unified Modeling Language) để đặc tả, hình dung và xây dựng hệ thống. Tác giả sử dụng biểu đồ ca sử dụng (Use Case Diagram), kịch bản ca sử dụng (Use Case Scenario), biểu đồ tuần tự (Sequence Diagram) và biểu đồ lớp (Class Diagram).
- Kỹ thuật trích xuất danh từ: Phân tích các kịch bản sử dụng để chọn lọc các thực thể và mối quan hệ giữa chúng, loại bỏ các khái niệm trùng lặp hoặc thuộc tính để thiết lập biểu đồ lớp phân tích và thiết kế.
- Phương pháp thiết kế kiến trúc phân tầng kết hợp mẫu DAO (Data Access Object): Tách biệt logic truy xuất dữ liệu với nghiệp vụ hệ thống thông qua các giao diện (interface) và lớp hiện thực (implementation).
Nguồn dữ liệu của đề tài bắt nguồn từ các quy định thể lệ, yêu cầu vận hành thực tế của cuộc thi ảnh "Vẻ đẹp của thành phố Sơn La", cùng hệ thống dữ liệu số về thí sinh, hồ sơ bài thi ảnh và điểm đánh giá được lưu trữ tập trung trên hệ quản trị cơ sở dữ liệu MySQL.
Thiết kế và triển khai hệ thống
Hệ thống được xây dựng dưới dạng ứng dụng web đa người dùng, tích hợp các công nghệ phần mềm tiêu chuẩn trong phát triển web mã nguồn mở:
| Thành phần |
Công nghệ / Môi trường triển khai |
Vai trò trong hệ thống |
| Ngôn ngữ lập trình |
PHP |
Xử lý logic phía máy chủ (backend) |
| Framework |
Laravel |
Khung làm việc hỗ trợ kiến trúc MVC, bảo mật và định tuyến |
| Cơ sở dữ liệu |
MySQL Server |
Lưu trữ quan hệ: tài khoản, tác phẩm, điểm số, triển lãm |
| Giao thức thông báo |
Mail Server (SMTP) |
Tự động gửi email chúc mừng và thông báo kết quả |
| Kiến trúc truy xuất |
DAO Pattern (Interface & Impl) |
Chuẩn hóa tầng tương tác dữ liệu cho từng thực thể |
Hệ thống thiết kế tầng truy xuất dữ liệu dựa trên mô hình DAO, thể hiện qua các cặp lớp giao diện và cài đặt cụ thể:
UserDAO và UserDAOImpl: Xử lý thông tin người dùng và tài khoản.
ImageArtDAO và ImageArtDAOImpl: Xử lý việc tiếp nhận, truy vấn và cập nhật tác phẩm ảnh.
ScoreArtDAO và ScoreArtDAOImpl (trong văn bản có đoạn ghi ScoreArtArtDAOImpl): Thực hiện lưu vết điểm và tính toán điểm số của giám khảo.
ExhibitionDAO và ExhibitionDAOImpl: Quản trị danh sách 200 tác phẩm được chọn triển lãm.
Biểu đồ lớp phân tích xác định các thực thể trung tâm cùng các thuộc tính nghiệp vụ gồm:
Account (id, email, password)
User (id, Address, Fullname, Phone, Account)
Candidates, Admins, Judges, OrgzationComitees (kế thừa hoặc liên kết từ User)
ImageArt (id, Candidates, nameImageArt, title, content, created_at)
Score (id, Judges, ImageArt, score)
Exhibition (id, ImageArt, sumScore, sendMail)
Time (id, timeStart, timeEnd)
AmountImageArt (id, number)
Giao diện hệ thống được cài đặt hoàn chỉnh cho 4 phân hệ người dùng:
- Phân hệ Thí sinh: Xem tác phẩm mới, tác phẩm nhiều lượt xem nhất, tác phẩm chiến thắng qua các năm; đăng ký, đăng nhập, đổi mật khẩu, cập nhật hồ sơ cá nhân và gửi bài dự thi kèm ảnh.
- Phân hệ Ban giám khảo: Bảng điều khiển thống kê biểu đồ lượng ảnh theo tháng, xem danh sách thí sinh, kiểm tra số lượng ảnh nộp, chấm điểm tác phẩm (thang điểm 1–5), sửa điểm, thống kê tổng điểm và lọc thí sinh theo trạng thái nộp đủ/thiếu ảnh.
- Phân hệ Ban tổ chức: Quản lý thí sinh, xem tổng điểm tác phẩm, lựa chọn ảnh tham gia triển lãm, xóa ảnh khỏi danh sách triển lãm, xuất dữ liệu báo cáo (hỗ trợ các định dạng CSV, EXCEL, PDF, PRINT) và gửi email thông báo kết quả.
- Phân hệ Quản trị viên (Admin): Quản lý tài khoản Admin, tạo/sửa/xóa thành viên Ban giám khảo (TVTHĐBGK) và Ban tổ chức (TVTHĐBTC); cấu hình thời gian diễn ra cuộc thi và số lượng tác phẩm tối đa mỗi thí sinh được gửi (mặc định là 3 tác phẩm).
Nội dung chính theo từng chương
Chương I: Tìm hiểu yêu cầu về phần mềm
Chương I tập trung làm rõ khái niệm phần mềm, nguyên lý vận hành của hệ thống thông tin và khảo sát nhu cầu thực tế của các nhóm đối tượng trong công tác tổ chức thi ảnh nghệ thuật trực tuyến. Tác giả phân tích yêu cầu từ phía tổ chức (hỗ trợ ra quyết định, giảm chi phí văn phòng, nâng cao hiệu quả quản lý tác nghiệp) và người dùng (tiện lợi, chính xác, dễ bảo trì, dễ thao tác).
Trên cơ sở đó, tác giả xác định các yêu cầu chức năng cốt lõi (đăng ký/đăng nhập, gửi/nhận ảnh, tra cứu thông tin, chấm điểm, chọn ảnh triển lãm, gửi email tự động, thiết lập thời gian cuộc thi) và hệ thống hóa các yêu cầu phi chức năng phục vụ vận hành:
| Nhóm yêu cầu |
Nội dung mô tả theo văn bản |
Ví dụ minh chứng trong hệ thống |
| Thao tác |
Môi trường kỹ thuật và vật lý mà phần mềm hoạt động |
Máy chủ cập nhật dữ liệu tự động; phần mềm hoạt động trên các hệ điều hành |
| Hiệu năng |
Tốc độ xử lý, tính sẵn sàng và độ tin cậy của phần mềm |
Tương tác phụ thuộc tốc độ mạng; hệ thống sẵn sàng phục vụ 24/7; CSDL cập nhật theo thời gian thực |
| Bảo mật |
Phân quyền truy cập các chức năng của từng nhóm người dùng |
Quản lý có quyền thêm/sửa/xóa; thí sinh chỉ xem thông tin và nộp tác phẩm dự thi |
Chương II: Phân tích phần mềm
Chương II tiến hành phân tích chi tiết hệ thống hướng đối tượng. Tác giả xác định và mô tả 4 tác nhân (Actors) chính:
| STT |
Tên tác nhân |
Mô tả vai trò và quyền hạn theo văn bản |
| 1 |
Quản trị phần mềm (Admin) |
Quản lý toàn bộ hệ thống: quản lý tài khoản admin, giám khảo, ban tổ chức; thiết lập thời gian diễn ra cuộc thi và cấu hình số lượng tác phẩm tối đa thí sinh được gửi |
| 2 |
Ban Tổ Chức (TVTHĐBTC) |
Quản lý thông tin thí sinh, tác phẩm; duyệt chọn tác phẩm vào vòng triển lãm; xuất dữ liệu báo cáo và gửi email thông báo kết quả |
| 3 |
Ban Giám Khảo (TVTHĐBGK) |
Đăng nhập tài khoản chuyên môn; xem danh sách thí sinh và tác phẩm dự thi; thực hiện chấm điểm và sửa điểm theo thang điểm quy định |
| 4 |
Thí sinh (Candidates) |
Khách vãng lai xem thông tin cuộc thi; đăng ký tài khoản để gửi tối đa 3 tác phẩm dự thi; quản lý thông tin cá nhân và mật khẩu |
Tác giả xây dựng bảng thuật ngữ chuyên ngành (Candidate, Admin, Account, Image Art, Score, Judges, Organizing Committee, Exhibition) nhằm chuẩn hóa dữ liệu mô hình. Toàn bộ các ca sử dụng (Use Case) được phân loại theo từng tác nhân và đặc tả chi tiết qua hệ thống kịch bản (Scenario) bao gồm: tên usecase, tác nhân chính, tiền điều kiện, đảm bảo tối thiểu, đảm bảo thành công, sự kiện kích hoạt, chuỗi sự kiện chính và các luồng ngoại lệ. Cuối chương, tác giả áp dụng phương pháp trích danh từ từ kịch bản để xây dựng biểu đồ lớp phân tích.
Chương III: Thiết kế phần mềm
Chương III hiện thực hóa các kết quả phân tích thành các mô hình thiết kế kỹ thuật:
- Thiết kế mô hình tuần tự (Sequence Diagram): Xây dựng biểu đồ tuần tự cho toàn bộ các ca sử dụng của ứng dụng thí sinh (đăng ký, đăng nhập, đổi mật khẩu, tìm kiếm theo từ khóa, gửi tác phẩm), ứng dụng Ban giám khảo (chấm điểm, sửa điểm, xem điểm, thống kê điểm, lọc thí sinh nộp đủ/thiếu ảnh) và ứng dụng Ban tổ chức (chọn ảnh triển lãm, xóa ảnh triển lãm, xuất dữ liệu, gửi email).
- Thiết kế lớp và phương thức: Gán thuộc tính, kiểu dữ liệu và định nghĩa phương thức cụ thể cho các lớp thực thể (
Account, Admin, Ban giám khảo, Score) và các lớp tầng dữ liệu (UserDAO, ImageArtDAO, ScoreArtDAO, ExhibitionDAO cùng các lớp hiện thực tương ứng).
- Thiết kế cơ sở dữ liệu: Xây dựng lược đồ cơ sở dữ liệu quan hệ trên MySQL, chuẩn hóa các trường thông tin đảm bảo tính toàn vẹn dữ liệu khi nhiều người dùng tương tác đồng thời.
Chương IV: Cài đặt phần mềm
Chương IV trình bày quá trình cài đặt hệ thống trên môi trường máy chủ web sử dụng ngôn ngữ PHP kết hợp Laravel framework và cơ sở dữ liệu MySQL. Chương này minh chứng kết quả triển khai thông qua các giao diện chức năng thực tế:
- Giao diện phía thí sinh: Trang chủ hiển thị ảnh mới, ảnh xem nhiều nhất, ảnh chiến thắng qua các năm; form đăng ký, đăng nhập, đổi mật khẩu và giao diện gửi bài dự thi gồm 2 form (thông tin thí sinh và thông tin bài thi: tiêu đề, ảnh tải lên, nội dung mô tả).
- Giao diện Ban giám khảo: Trang chủ tích hợp biểu đồ thống kê lượng ảnh thu nhận theo tháng; danh sách thí sinh kèm số lượng ảnh đã nộp; giao diện xem chi tiết tác phẩm để chấm điểm (thang điểm 1 đến 5), sửa điểm và bảng tổng hợp xếp hạng điểm số.
- Giao diện Ban tổ chức: Danh sách tổng hợp điểm của thí sinh; giao diện duyệt chọn hoặc xóa ảnh tham gia triển lãm; phân hệ xuất dữ liệu hỗ trợ 4 định dạng xuất (CSV, EXCEL, PDF, PRINT); màn hình thực thi gửi mail tự động đến thí sinh trúng tuyển.
- Giao diện Quản trị viên (Admin): Danh sách và form thao tác thêm, sửa, xóa tài khoản Admin, thành viên Ban tổ chức và thành viên Ban giám khảo; bảng điều khiển cấu hình thời gian thi và số lượng ảnh nộp tối đa.
Kết quả và đóng góp
Đồ án đã hoàn thành các mục tiêu đề ra với những kết quả cụ thể được ghi nhận trong văn bản:
- Xây dựng hoàn chỉnh phần mềm web thu nhận và chấm điểm ảnh trực tuyến, giải quyết triệt để quy trình thủ công phức tạp trong công tác tổ chức thi ảnh.
- Hiện thực hóa đầy đủ các luồng nghiệp vụ cho 4 nhóm đối tượng: hỗ trợ thí sinh nộp bài trực tuyến (giới hạn tối đa 3 tác phẩm); cung cấp công cụ chấm điểm trực quan cho Ban giám khảo theo thang điểm số nguyên từ 1 đến 5; hỗ trợ Ban tổ chức duyệt chọn chính xác 200 tác phẩm xuất sắc nhất vào vòng triển lãm.
- Tích hợp thành công các tiện ích quản trị chuyên sâu: cơ chế tự động gửi email thông báo trúng tuyển đến thí sinh; chức năng kết xuất dữ liệu báo cáo đa định dạng (CSV, Excel, PDF, Print); bảng thống kê tiến độ nộp bài (phân loại thí sinh nộp đủ 3 tác phẩm hoặc nộp thiếu).
- Đóng góp thực tiễn của đề tài là cung cấp giải pháp chuyển đổi số kịp thời, hỗ trợ tỉnh Sơn La tổ chức thành công cuộc thi "Vẻ đẹp của thành phố Sơn La" trong điều kiện dịch Covid-19 diễn biến phức tạp, vừa đảm bảo an toàn y tế, vừa tiết kiệm thời gian và kinh phí vận hành.
Hạn chế và hướng nghiên cứu tiếp
Căn cứ vào phạm vi và nội dung trình bày trong đồ án, tác giả ghi nhận một số điểm hạn chế và định hướng phát triển:
- Hạn chế: Hệ thống được thiết kế và thử nghiệm tập trung theo nghiệp vụ đặc thù của cuộc thi "Vẻ đẹp của thành phố Sơn La" với quy mô tuyển chọn cố định 200 tác phẩm; hiệu năng vận hành và thời gian phản hồi của hệ thống vẫn phụ thuộc vào chất lượng đường truyền mạng của người dùng cuối.
- Hướng nghiên cứu tiếp: Nâng cấp khả năng tùy biến linh hoạt cho phép phần mềm thích ứng với nhiều loại hình và quy mô cuộc thi nghệ thuật khác nhau; nghiên cứu tối ưu hóa cơ sở dữ liệu và cân bằng tải để phục vụ lượng truy cập lớn hơn trong thời gian thực khi số lượng bài dự thi tăng đột biến.
Giá trị tham khảo
Đồ án là tài liệu tham khảo phù hợp cho sinh viên các ngành Công nghệ thông tin, Hệ thống thông tin và Kỹ thuật phần mềm:
- Tài liệu tham khảo quy trình phân tích thiết kế: Cung cấp tài liệu mẫu mực về việc áp dụng ngôn ngữ UML vào bài toán quản lý thực tế, đặc biệt là hệ thống kịch bản ca sử dụng (Use Case Scenario) chi tiết với đầy đủ các luồng chính và luồng ngoại lệ.
- Tham khảo kiến trúc phần mềm: Cung cấp mô hình áp dụng mẫu DAO (Data Access Object) kết hợp kiến trúc MVC trên nền tảng framework PHP Laravel và CSDL MySQL, hỗ trợ sinh viên đang thực hiện các đồ án xây dựng ứng dụng web quản lý thi cử, bình chọn hoặc triển lãm số.
Câu hỏi thường gặp
1. Cuộc thi ảnh thực tế được áp dụng thử nghiệm trong đồ án là cuộc thi nào và mục tiêu lựa chọn bao nhiêu tác phẩm?
Phần mềm được xây dựng để phục vụ cuộc thi ảnh "Vẻ đẹp của thành phố Sơn La" tổ chức tại tỉnh Sơn La, nhằm chấm điểm và chọn ra đúng 200 tác phẩm xuất sắc nhất tham gia sự kiện "Triển lãm tranh".
2. Quy định về số lượng tác phẩm tối đa một thí sinh được phép nộp về phần mềm là bao nhiêu?
Người quản trị (Admin) có quyền cấu hình số lượng tác phẩm tối đa một thí sinh có thể gửi về phần mềm; theo kịch bản và thể lệ thiết lập mặc định trong đồ án, mỗi thí sinh được gửi tối đa 3 tác phẩm dự thi.
3. Ban giám khảo chấm điểm tác phẩm theo thang điểm nào và có được phép chỉnh sửa điểm không?
Thành viên hội đồng ban giám khảo (TVTHĐBGK) thực hiện chấm điểm từng tác phẩm ảnh theo thang điểm từ 1 đến 5; hệ thống cung cấp ca sử dụng và giao diện riêng cho phép giám khảo sửa lại điểm đã chấm khi cần thiết.
4. Ban tổ chức có thể xuất dữ liệu các tác phẩm tham gia triển lãm dưới những định dạng nào?
Trên giao diện xuất dữ liệu triển lãm, phần mềm cung cấp thanh menu cho phép thành viên Ban tổ chức (TVTHĐBTC) xuất dữ liệu danh sách tác phẩm và thí sinh dưới 4 hình thức: CSV, EXCEL, PDF và PRINT (in trực tiếp).
5. Hệ thống sử dụng kiến trúc và công nghệ nền tảng nào để xây dựng phần mềm?
Hệ thống được phát triển trên nền tảng ngôn ngữ lập trình PHP kết hợp Laravel framework, cơ sở dữ liệu quan hệ MySQL, và áp dụng mẫu thiết kế Data Access Object (DAO) với các cặp lớp interface/implementation để quản lý truy xuất dữ liệu.
Kết luận
Đồ án tốt nghiệp "Phần mềm thu nhận và chấm điểm ảnh" của sinh viên Khuất Văn Đức đã giải quyết trọn vẹn bài toán tự động hóa quy trình tiếp nhận, đánh giá và quản lý tác phẩm ảnh nghệ thuật trong bối cảnh giãn cách do dịch Covid-19. Bằng việc áp dụng phương pháp phân tích thiết kế hướng đối tượng qua UML và hiện thực hóa trên nền tảng PHP Laravel kết hợp MySQL, tác giả đã xây dựng thành công một hệ thống thông tin hoàn chỉnh với đầy đủ các phân hệ chức năng cho Thí sinh, Giám khảo, Ban tổ chức và Quản trị viên. Đồ án đáp ứng tốt các yêu cầu nghiệp vụ thực tế của cuộc thi ảnh tại tỉnh Sơn La, đồng thời là tài liệu tham khảo có giá trị về kỹ thuật mô hình hóa và phát triển ứng dụng web hướng nghiệp vụ.