3 Tài khoản Hồ sơ người dùng được tạo trong hệ thống quản lý cựu sinh viên, bao gồm thông tin cá nhân như tên, email, số điện thoại, năm tốt nghiệp, ngành học, v.v... Hệ thống phải có
Trang 1TRƯỜNG ĐẠI HỌC PHENIKA KHOA CÔNG NGHỆ THÔNG TIN
Báo Cáo Dự Án Học Phần Phân Tích Và Thiết Kế Phần Mềm
Đề tài: Xây dựng ứng dụng quản lý cựu sinh viên
Hà Nội, tháng … năm 2024
Trang 2Mục lục
1 Yêu cầu (Requirements) 2
1.1 Đặt vấn đề (Problem statement) 2
1.1.1 Mô tả vấn đề 2
1.1.2 Giải pháp 2
1.2 Thuật ngữ (Glossary) 2
1.3 Thông số kỹ thuật bổ sung 3
1.3.1 Bảo mật (Security) 3
1.3.2 Hiệu năng (Performance) 4
1.3.3 Tính sẵn sàng (Availability) 4
1.3.4 Khả năng mở rộng (Scalability) 4
1.3.5 Khả năng phục hồi sau sự cố (Recoverability) 4
1.3.6 Khả năng tương thích (Compatibility) 5
1.3.7 Tính dễ bảo trì (Maintainability) 5
1.3.8 Khả năng sử dụng (Usability) 5
1.4 Mô hình hóa chức năng 5
1.4.1 Các yêu cầu chức năng 5
1.4.2 Sơ đồ Use-case 7
1.5 Đặc tả các Use-case 8
2 Phân tích trường hợp sử dụng (Use-case analysis) 17
2.1 Phân tích kiến trúc hệ thống 17
2.1.1 Kiến trúc mức cao của hệ thống 17
2.1.2 Các đối tượng trừu tượng chính của hệ thống (Key abstractions) 17
2.2 Thực thi trường hợp sử dụng (Use-case relizations) 17
2.2.1 Các biểu đồ tuần tự (Sequence diagrams) 18
2.2.2 Góc nhìn của các lớp trong hệ thống (Views of participating classes) 18
3 Thiết kế (Use-case design) 18
3.1 Xác định các thành phần thiết kế (Identify design elements) 18
3.1.1 Xác định các lớp (Identify classes) 18
3.1.2 Xác định các hệ thống con và giao diện (Identify subsystems and interfaces) 18
3.1.3 Xác định các gói (Identify packages) 18
3.2 Thiết kế trường hợp sử dụng (Use-case design) 18
3.2.1 Thiết kế các biểu đồ tuần tự (Design sequence diagrams) 18
3.2.2 Thiết kế biểu đồ lớp (Class diagrams) 18
3.3 Thiết kế cơ sở dữ liệu (Database design) 19
3.3.1 Lược đồ cơ sở dữ liệu 19
3.3.2 Chi tiết các bảng 19
4 Cài đặt 19
4.1 Lựa chọn công nghệ 19
4.2 Cấu trúc mã nguồn 19
5 Kết luận 19
Tài liệu tham khảo 20
Trang 31 Yêu cầu (Requirements)
1.1 Đặt vấn đề (Problem statement)
1.1.1 Mô tả vấn đề
Cơ sở dữ liệu về cựu sinh viên đóng vai trò vô cùng quan trọng đối với mọi cơ sở giáodục Thông tin chi tiết về cựu sinh viên không chỉ giúp nhà trường duy trì liên lạc với cácthế hệ sinh viên cũ mà còn hỗ trợ nhiều mục đích khác như xác minh thông tin, nghiêncứu xu hướng, và đánh giá hiệu quả của chương trình đào tạo Những dữ liệu này chophép nhà trường so sánh kiến thức và kỹ năng thực tế của cựu sinh viên với yêu cầu củathị trường lao động, từ đó rút ra những bài học quý giá để điều chỉnh và nâng cao chấtlượng đào tạo Tuy nhiên, việc quản lý cựu sinh viên bằng các phương pháp truyền thốngthường gặp nhiều khó khăn Dữ liệu không được cập nhật kịp thời, dễ bị phân tán, vàthiếu một cái nhìn tổng quan về cộng đồng cựu sinh viên Điều này dẫn đến sự mất kếtnối và hạn chế khả năng hỗ trợ của nhà trường đối với cựu sinh viên
1.1.2 Giải pháp
Để khắc phục những hạn chế trên, việc phát triển ứng dụng quản lý cựu sinh viên làgiải pháp hiệu quả và cần thiết Ứng dụng này tự động hóa quy trình quản lý, cho phépcựu sinh viên chủ động cập nhật thông tin cá nhân như nghề nghiệp, địa chỉ, và các hoạtđộng xã hội Họ có thể dễ dàng tham gia vào các sự kiện và hoạt động của hội cựu sinhviên, cũng như kết nối với những người đồng môn và nhà trường Bên cạnh đó, ứng dụngcung cấp cho nhà trường một công cụ quản lý mạnh mẽ, giúp họ theo dõi được sự pháttriển của cựu sinh viên, hỗ trợ tốt hơn trong các chương trình hướng nghiệp và hợp tác
Hệ thống này không chỉ giúp nâng cao khả năng quản lý mà còn là cầu nối để nhà trường
và cựu sinh viên cùng nhau phát triển
1.2 Thuật ngữ (Glossary)
1 Cựu sinh viên Sinh viên đã hoàn thành chương trình học
và tốt nghiệp tại cơ sở giáo dục
kiểm tra, xác thực thông tin tài khoản và phê duyệt các yêu cầu đăng ký từ cựu sinh viên
3 Tài khoản Hồ sơ người dùng được tạo trong hệ thống
quản lý cựu sinh viên, bao gồm thông tin
cá nhân như tên, email, số điện thoại, năm tốt nghiệp, ngành học, v.v
Trang 44 Đăng nhập Quá trình cựu sinh viên sử dụng tên đăng
nhập và mật khẩu để truy cập vào hệ thống quản lý
5 Thay đổi mật khẩu Quá trình cựu sinh viên thay đổi mật khẩu
sau khi đăng nhập và truy cập vào hệ thống
6 Chỉnh sửa thông tin Khả năng cho phép cựu sinh viên cập nhật
thông tin cá nhân như số điện thoại, địa chỉ,công việc trong tài khoản của mình
7 Xác thực tài khoản Quy trình admin kiểm tra và phê duyệt
thông tin đăng ký của cựu sinh viên để đảmbảo tính chính xác và hợp lệ trước khi kích hoạt tài khoản
8 Xác thực thông tin chỉnh
sửa
Quy trình admin xác thực những thay đổi
mà cựu sinh viên đã cập nhật trong tài khoản để đảm bảo tính đúng đắn và cập nhật vào hệ thống
9 Sự kiện cựu sinh viên Các hoạt động do hội cựu sinh viên hoặc
nhà trường tổ chức nhằm duy trì liên lạc, giao lưu giữa cựu sinh viên và nhà trường
10 Cập nhật thông tin việc
làm Quá trình cựu sinh viên hoặc admin hệ thống cập nhật thông tin việc làm, vị trí
công việc và doanh nghiệp của cựu sinh viên
1.3 Thông số kỹ thuật bổ sung
Trang 5 Hệ thống phải có khả năng xử lý đồng thời nhiều yêu cầu từ cựu sinh viên, nhất làkhi có các sự kiện lớn hoặc khi nhiều người cùng truy cập để đăng ký hoặc cậpnhật thông tin.
Tốc độ phản hồi của hệ thống phải nhanh, với thời gian phản hồi tối đa không quá
2 giây cho mỗi tác vụ (ví dụ: đăng nhập, xem thông tin cá nhân, chỉnh sửa thôngtin)
Cần thiết lập hệ thống cơ sở dữ liệu có khả năng mở rộng để lưu trữ thông tin hàngchục nghìn cựu sinh viên mà không làm giảm hiệu năng
1.3.5 Khả năng phục hồi sau sự cố (Recoverability)
Hệ thống phải có cơ chế sao lưu và phục hồi dữ liệu để đảm bảo dữ liệu không bịmất trong trường hợp sự cố hệ thống
Thời gian phục hồi sau sự cố không quá 1 giờ để đảm bảo người dùng có thể truycập lại hệ thống trong thời gian ngắn nhất
1.3.6 Khả năng tương thích (Compatibility)
Hệ thống phải tương thích với nhiều trình duyệt và thiết bị khác nhau (ví dụ: máytính để bàn, điện thoại di động, máy tính bảng)
Cần đảm bảo giao diện người dùng (UI) có thể điều chỉnh linh hoạt theo kíchthước màn hình khác nhau và hoạt động mượt mà trên các hệ điều hành phổ biếnnhư Windows, macOS, iOS, Android
Trang 6 Giao diện người dùng phải dễ sử dụng, trực quan và thân thiện, giúp cựu sinh viên
có thể nhanh chóng đăng ký tài khoản và cập nhật thông tin mà không cần hướngdẫn phức tạp
Cần có chức năng trợ giúp hoặc hướng dẫn sử dụng tích hợp trực tiếp trên giaodiện hệ thống
1.4 Mô hình hóa chức năng
1.4.1 Các yêu cầu chức năng
1.4.1.1Yêu cầu chức năng 1: Quản lý cựu sinh viên
Mô tả: Hệ thống cho phép thêm mới, xóa, và cập nhật thông tin của cựu sinh viên.Đồng thời, lưu trữ lịch sử thay đổi thông tin của từng cựu sinh viên
1.4.1.2Yêu cầu chức năng 2: Quản lý thông tin việc làm
Mô tả: Ghi nhận và cập nhật thông tin việc làm của cựu sinh viên, tạo báo cáo vềtình trạng nghề nghiệp và khả năng kết nối với doanh nghiệp
Ví dụ:
o Ghi nhận các thông tin về vị trí làm việc hiện tại, công ty, ngành nghề của cựusinh viên
Trang 7o Tạo báo cáo tổng quan về tỷ lệ có việc làm, lĩnh vực hoạt động, và sự thăngtiến trong công việc của cựu sinh viên theo thời gian.
o Cho phép nhà trường liên hệ với các doanh nghiệp cựu sinh viên đang làmviệc để mở rộng cơ hội hợp tác
1.4.1.3Yêu cầu chức năng 3: Quản lý sự kiện
Mô tả: Theo dõi và quản lý các sự kiện dành cho cựu sinh viên, tạo và gửi lời mờitham gia sự kiện
1.4.1.4Yêu cầu chức năng 4: Quản lý admin và phân quyền
Mô tả: Quản lý các tài khoản người dùng và phân quyền truy cập cho từng vai trò,đặc biệt là quyền truy cập của từng khoa, phòng ban trong trường
1.4.1.5Yêu cầu chức năng 5: Bảo mật thông tin
Mô tả: Đảm bảo tính bảo mật và an toàn của dữ liệu cựu sinh viên bằng cách sửdụng các biện pháp bảo mật tiên tiến
Trang 8o Hỗ trợ sao lưu và khôi phục dữ liệu tự động để bảo đảm tính liên tục và antoàn trong quản lý thông tin.
1.4.2 Sơ đồ Use-case
Mô tả cơ bản về hệ thống quản lý sinh viên tốt nghiệp:
Mục đích: Hệ thống này được thiết kế để quản lý thông tin về sinh viên đã tốt nghiệp, theo dõi việc làm của họ, và cung cấp các thống kê liên quan đến việc làm của sinh viên.Các nhân tố (Actors):
Hệ thống: Là đối tượng thụ động, thực hiện các chức năng theo yêu cầu của các nhân tố khác
Quản lý: Người có quyền truy cập và điều khiển toàn bộ hệ thống, bao gồm việc nhập liệu, cập nhật dữ liệu, và tạo báo cáo
Quản lý sự kiện sinh viên: Người chịu trách nhiệm quản lý các sự kiện liên quan đến sinh viên tốt nghiệp
Các use case chính:
1 Quản lý người dùng:
o UC 1.1: Quản lý người dùng: Quản lý thêm, sửa, xóa thông tin người dùng trong hệ thống
Trang 92 Quản lý sinh viên tốt nghiệp:
o UC 1.2.1: Nhập DS sinh viên đã tốt nghiệp: Nhập danh sách sinh viên tốt nghiệp vào hệ thống
o UC 1.2.2: Thống kê sinh viên tốt nghiệp toàn trường: Thống kê tổng số sinhviên tốt nghiệp của toàn trường
o UC 1.2.3: Thống kê sinh viên tốt nghiệp từng khoa: Thống kê số lượng sinhviên tốt nghiệp của từng khoa
o UC 1.2.4: Thống kê sinh viên tốt nghiệp từng khóa: Thống kê số lượng sinhviên tốt nghiệp của từng khóa
3 Quản lý việc làm của sinh viên:
o UC 1.3.1: Cập nhật thông tin việc làm của SV: Cập nhật thông tin về công việc hiện tại của sinh viên
o UC 1.3.2: Cập nhật thông tin việc làm của SV theo từng cấp độ: Cập nhật thông tin về các công việc mà sinh viên đã làm qua các giai đoạn khác nhau
o UC 1.3.3: Thống kê việc làm của SV: Thống kê tổng quan về việc làm của sinh viên
o UC 1.3.4: Thống kê việc làm của SV cấp độ trường, khoa: Thống kê việc làm của sinh viên theo cấp độ trường và khoa
Luồng thông tin:
Hệ thống sẽ cung cấp các báo cáo chi tiết về tình hình việc làm của sinh viên, số lượng sinh viên tốt nghiệp theo các tiêu chí khác nhau, và thông tin về các sự kiện Các báo cáo này sẽ giúp ban quản lý nhà trường, các khoa, và các đơn vị liên quan
có cái nhìn tổng quan về tình hình của sinh viên tốt nghiệp, từ đó đưa ra các quyết định phù hợp.
Trang 101.5 Đặc tả các Use-case
Nhóm Use Case 1: Quản lý người dùng
UC1.1 a Quản lý Tài Khoản người dùng (admin) :
o Mô tả ngắn gọn: Chức năng này cho phép quản trị viên thêm, sửa, xóa vàxem thông tin của các tài khoản người dùng trong hệ thống
o Tác nhân thực hiện: Quản trị viên
o Luồng sự kiện chính:
1 Quản trị viên truy cập vào module quản lý người dùng
2 Hệ thống hiển thị danh sách các người dùng hiện có
3 Quản trị viên chọn hành động (thêm, sửa, xóa) và thực hiện
4 Hệ thống cập nhật thông tin người dùng vào cơ sở dữ liệu
o Tiền điều kiện: Quản trị viên đã đăng nhập vào hệ thống
o Hậu điều kiện: Thông tin người dùng được cập nhật thành công
UC1.1 b Quản lý Tài Khoản người dùng (Của người dùng):
o Mô tả ngắn gọn: Chức năng này cho phép người dùng thêm, sửa, xóa vàxem thông tin của tài khoản người dùng trong hệ thống
o Tác nhân thực hiện: Người Dùng (Cựu Sinh Viên)
o Luồng sự kiện chính:
1 Sinh viên truy cập vào Ứng dụng bằng tài khoản được cấp
2 Hệ thống hiển thị thông tin tài khoản của Sinh Viên
3 Sinh viên chọn hành động (thêm, sửa, xóa thông tin ) và thực hiện
4 Hệ thống cập nhật thông tin người dung
o Tiền điều kiện: Sinh Viên đã đăng nhập vào hệ thống
o Hậu điều kiện: Thông tin người dùng được cập nhật thành công
UC1.1c Quản lý Tài Khoản người dùng (Cấp trường):
Trang 11o Mô tả ngắn gọn: Chức năng này cho phép Cán bộ thêm, sửa, xóa và xemthông tin của các tài khoản người dùng đã học tại trường có trong hệ thống.
o Tác nhân thực hiện: Cán bộ (Cấp trường)
o Luồng sự kiện chính:
1 Cán bộ truy cập vào module quản ly theo tài khoản được cung cấp
2 Hệ thống hiển thị danh sách các người dùng hiện có
3 Cán bộ chọn hành động (thêm, sửa, xóa) và thực hiện
4 Hệ thống cập nhật thông tin người dùng vào cơ sở dữ liệu
o Tiền điều kiện: Cán bộ đã đăng nhập được vào hệ thống
o Hậu điều kiện: Thông tin người dùng được cập nhật thành công
UC1.1d Quản lý Tài Khoản người dùng (Cấp Khoa):
o Mô tả ngắn gọn: Chức năng này cho phép Cán bộ thêm, sửa, xóa và xemthông tin của các tài khoản người dùng đã học tại trường và nằm trong khoa
có trong hệ thống
o Tác nhân thực hiện: Cán bộ (Cấp Khoa)
o Luồng sự kiện chính:
1 Cán bộ truy cập vào module quản ly theo tài khoản được cung cấp
2 Hệ thống hiển thị danh sách các người dùng hiện có
3 Cán bộ chọn hành động (thêm, sửa, xóa) và thực hiện
4 Hệ thống cập nhật thông tin người dùng vào cơ sở dữ liệu
o Tiền điều kiện: Cán bộ đã đăng nhập được vào hệ thống
o Hậu điều kiện: Thông tin người dùng được cập nhật thành công
Nhóm Use Case 2: Quản lý sinh viên tốt nghiệp
UC1.2.1 Nhập danh sách sinh viên đã tốt nghiệp:
Trang 12o Mô tả ngắn gọn: Chức năng này cho phép nhập thông tin của các sinh viênmới tốt nghiệp vào hệ thống, bao gồm thông tin cá nhân, ngành học, nămtốt nghiệp, v.v.
o Tác nhân thực hiện: Quản trị viên
o Luồng sự kiện chính:
1 Quản trị viên chọn chức năng nhập danh sách sinh viên
2 Hệ thống hiển thị form nhập liệu
3 Quản trị viên điền thông tin sinh viên và nhấn nút lưu
4 Hệ thống lưu thông tin vào cơ sở dữ liệu
o Tiền điều kiện: Quản trị viên đã đăng nhập vào hệ thống
o Hậu điều kiện: Thông tin sinh viên được lưu trữ thành công
UC1.2.2 Thống kê sinh viên tốt nghiệp toàn trường:
o Mô tả ngắn gọn: Chức năng này cho phép thống kê tổng số sinh viên tốtnghiệp của toàn trường
o Tác nhân thực hiện: Quản trị viên, người dùng có quyền truy cập
o Luồng sự kiện chính:
1 Người dùng chọn chức năng thống kê
2 Hệ thống hiển thị kết quả thống kê tổng số sinh viên tốt nghiệp
o Tiền điều kiện: Hệ thống đã có dữ liệu về sinh viên tốt nghiệp
o Hậu điều kiện: Kết quả thống kê được hiển thị
UC1.2.3 Thống kê sinh viên tốt nghiệp từng khoa:
o Mô tả ngắn gọn: Chức năng này cho phép thống kê số lượng sinh viên tốtnghiệp theo từng khoa
o Tác nhân thực hiện: Quản trị viên, người dùng có quyền truy cập
o Luồng sự kiện chính: Tương tự như UC1.2.2, nhưng thay vì thống kê toàntrường, hệ thống sẽ cho phép chọn khoa để thống kê
UC1.2.4 Thống kê sinh viên tốt nghiệp từng khóa:
Trang 13o Mô tả ngắn gọn: Chức năng này cho phép thống kê số lượng sinh viên tốtnghiệp theo từng khóa.
o Tác nhân thực hiện: Quản trị viên, người dùng có quyền truy cập
o Luồng sự kiện chính: Tương tự như UC1.2.2, nhưng thay vì thống kê toàntrường, hệ thống sẽ cho phép chọn khóa để thống kê
Nhóm Use Case 3: Quản lý việc làm của sinh viên
UC1.3.1 Cập nhật thông tin việc làm của sinh viên:
o Mô tả ngắn gọn: Chức năng này cho phép cập nhật thông tin việc làm củasinh viên sau khi tốt nghiệp
o Tác nhân thực hiện: Quản trị viên, sinh viên
o Luồng sự kiện chính:
1 Người dùng chọn sinh viên cần cập nhật
2 Hệ thống hiển thị form cập nhật thông tin việc làm
3 Người dùng điền thông tin và nhấn lưu
4 Hệ thống cập nhật thông tin vào cơ sở dữ liệu
UC1.3.2 Cập nhật thông tin việc làm của sinh viên theo từng cấp độ:
o Mô tả ngắn gọn: Chức năng này cho phép cập nhật thông tin việc làm củasinh viên theo từng cấp độ (ví dụ: cấp trường, cấp khoa)
o Tác nhân thực hiện: Quản trị viên
o Luồng sự kiện chính: Tương tự như UC1.3.1, nhưng hệ thống sẽ giới hạnphạm vi cập nhật theo từng cấp độ
UC1.3.3 Thống kê việc làm của sinh viên:
o Mô tả ngắn gọn: Chức năng này cho phép thống kê tổng quan về việc làmcủa sinh viên
o Tác nhân thực hiện: Quản trị viên, người dùng có quyền truy cập
o Luồng sự kiện chính: Tương tự như các use case thống kê khác
UC1.3.4 Thống kê việc làm của sinh viên cấp độ trường, khoa: