Hệ thống sẽ tạo thêm tài khoản sau mỗi lần đăng kí của Sinh Viên không phân biệt ngành nào chỉ cần các Sinh Viên có nhu cầu sắp xếp thời khóa biểu dự kiến... Phạm vi phần mềm.- Hỗ trợ xâ
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
BÀI BÁO CÁO
Môn học: Nhập môn công nghệ phần mềm
Đề tài: Xây dựng ứng dụng đăng kí môn học
Nhóm: 19 Tên các thành viên:
Lê Ngọc Anh – B15DCCN040
Đỗ Đức Thắng – B15DCCN500 Nguyễn Văn Kiên – B15DCCN291
Lê Xuân Lộc – B15DCCN313
Hà Nội,tháng 5 năm 2018
Trang 2MỤC LỤC
Phần 1: Xác định yêu cầu 3
1 Mục đích phần mềm 3
2 Phạm vi phần mềm 3
3 Use-case của Users 4
4 Đặc tả các usecase sử dụng: 5
4.1 Đăng nhập hệ thống 5
4.2 Đăng kí tài khoản 6
4.3 Tạo thời khóa biểu 7
4.4 Sửa thời khóa biểu 8
4.5 Xem thời khóa biểu 8
Phần 2: Phân tích 10
1 Mô hình hóa chức năng 10
2 Mô hình hóa các lớp 13
2.1: Trích lớp thực thể 13
2.2 Trích lớp điều khiển 14
2.3 Trích lớp biên 14
2.4 Thẻ CRC 15
3.Mô hình hóa hoạt động 16
4 Scenario cuối pha phân tích 17
Phần 3: Thiết kế cơ sở dữ liệu 19
Phần 4: Cài đặt 20
Phần 5: Kiểm thử và bảo trì 21
5.1 Test case 21
5.1.1 Test case chức năng tạo thời khóa biểu 21
5.1.2 Test case chức năng sửa thời khóa biểu 22
5.1.3 Test case chức năng xem thời khóa biểu 25
5.2 Bảo trì 25
Tổng kết và đánh giá 26
Trang 3+ Số tín chỉ đăng ký có nằm trong khoảng tín chỉ tối đa và tín chỉ
+ Các môn tự chọn có thể không nằm trong khung chương trình của ngành
+ Các sinh viên có thể đăng kí học vượt và học lại
- Các môn được cung cấp cho sinh viên là các môn mà nhà trường dự kiến đào tạo nằm trong khung chương trình của các ngành
- Hệ thống phải cung cấp cho Sinh viên một danh sách các học phần cùng với các
thông tin liên quan (nội dung, thời lượng, thời điểm bắt đầu, người dạy ) để người học
có thể xem và lựa chọn tùy theo nhu cầu
- Khi Sinh viên có yêu cầu đăng kí một lớp học, hệ thống phải kiểm tra xem lớp học
đó có bị trùng lịch học với các lớp học đã đăng kí khác không
- Sau khi kiểm tra thông tin đăng kí của Sinh viên, hệ thống sẽ gửi thông tin phản hồi
tới họ để xác nhận việc đăng kí thành công hay không Thông tin phản hồi phải nhanhchóng và chính xác
Hệ thống hỗ trợ việc hiển thị lịch học cho từng Sinh viên.
Hệ thống sẽ tạo thêm tài khoản sau mỗi lần đăng kí của Sinh Viên không
phân biệt ngành nào chỉ cần các Sinh Viên có nhu cầu sắp xếp thời khóa
biểu dự kiến
Trang 42 Phạm vi phần mềm.
- Hỗ trợ xây dựng thời khóa biểu ảo cho các sinh viên
- Đối tượng sử dụng: Không chỉ sinh viên đang học tại nhà trường nhưng dữ liệu chỉ phục vụ sinh viên của trường
Trang 53 Use-case của Users
* Dựa trên việc xác định yêu cầu của phần mềm và việc phân tích để tìm ra các tác nhân, ta xác định được các use-case như sau:
- Đăng nhập hệ thống
- Đăng kí tài khoản
- Tạo thời khóa biểu
- Sửa thời khóa biểu
- Xem thời khóa biểu
Hình 1.1 Sơ đồ Use-Case
Trang 6- Bắt đầu khi tác nhân muốn đăng nhập vào hệ thống.
- Hệ thống yêu cầu tác nhân nhập tài khoản và mật khẩu đăng nhập
- Tác nhân nhập tài khoản và mật khẩu đăng nhập của mình -Hệ thống kiểmtra thông tin tài khoản và mật khẩu của user +Nếu không hợp lệ thì thực hiện luồng A1
+Nếu không tồn tại thì thực hiện luồng A2
- Hệ thống ghi lại quá trình đăng nhập
* Các luồng rẽ nhánh.
- Luồng A1: Nhập sai tài khoản/mật khẩu đăng nhập
+ Hệ thống hiển thị một thông báo lỗi
+ Người sử dụng có thể chọn hoặc là đăng nhập lại hoặc là huỷ bỏ đăng nhập, khi đó ca sử dụng kết thúc
- Luồng A2: Không tồn tại tài khoản trong hệ thống
+ Hệ thống thông báo lỗi
+ Người sử dụng có thể chọn đăng kí 1 tài khoản mới hoặc là huỷ bỏ đăngnhập
c Tiền điều kiện
- Đã có tài khoản trong hệ thống d Hậu điều kiện
Trang 7- Nếu việc đăng nhập thành công, người sử dụng sẽ đăng nhập được vào hệ thống.
4.2 Đăng kí tài khoản
- Tác nhân nhập tài khoản và mật khẩu đăng nhập của mình muốn đăng kí
- Hệ thống kiểm tra thông tin tài khoản và mật khẩu của tác nhân đăng kí.+ Nếu thông tin chưa tồn tại thực hiện luồng B1
+ Nếu thông tin tồn tại thực hiện luồng B2
- Hệ thống ghi lại thông tin tài khoản đã đăng kí thành công
* Các luồng rẽ nhánh.
- Luồng B1: Thông tin tài khoản đã tồn tại
+ Hệ thống thông báo lỗi
+ Hệ thống Yêu cầu tác nhân nhập thông tin tài khoản khác để đăng kí
- Luồng B2: Thông tin tài khoản chưa tồn tại
+ Hệ thống hiện thông báo hợp lệ
+ Hệ thống lưu thông tin tài khoản đã đăng kí hợp lệ và cấp quyền cho tàikhoản này được đăng nhập vào hệ thống,khi đó ca sử dụng kết thúc
Trang 8c Tiền điều kiện
- Không
d Hậu điều kiện.
- Nếu việc đăng kí thành công, người sử dụng sẽ có tài khoản để đăng nhập vào hệ thống
4.3 Tạo thời khóa biểu
- Hệ thống hiển thị các lớp học sẽ tổ chức cho môn học đó
- Sinh viên chọn một lớp học và xác nhận Nếu Sinh viên chọn Huỷ
(không đăng kí nữa), ca sử dụng bắt đầu lại
- Hệ thống sẽ kết nối Sinh viên với lớp học đó
* Luồng sự kiện rẽ nhánh
- Luồng C1: Môn học mà Sinh viên đăng kí không thoả mãn các điều kiện tiên quyết
+ Hệ thống hiển thị thông báo lỗi
+ Sinh viên có thể lựa chọn một môn học khác và đăng kí lại hoặc là thoát khỏi ca sử dụng này
c Tiền điều kiện
Trang 9-Tác nhân đã đăng nhập thành công vào hệ thống.
d Hậu điều kiện
Nếu ca sử dụng được thực hiện thành công thì danh sách các
môn học mà Sinh viên đã đăng kí sẽ được tạo ra Sinh viên có thể
thay đổi hoặc xóa những môn học đã đăng kí, trong trường hợp khác
hệ thống ở trong trạng thái không thay đổi
4.4 Sửa thời khóa biểu
a Mô tả tóm tắt
- Mục đích: Mô tả cách một người sử dụng sửa thời khóa biểu của mình
- Tác nhân: User.
b Các luồng sự kiện *Luồng sự kiện chính.
- Ca sử dụng này bắt đầu khi tác nhân muốn sửa lịch học của mình đã tạo trong hệ thống
- Hệ thống hiển thị danh sách các lớp học mà Sinh viên đã đăng kí theo học
- Sinh viên lựa chọn một lớp học và xác nhận sửa Nếu sinh viên chọn Huỷ(không sửa nữa), ca sử dụng bắt đầu lại
- Hệ thống cập nhật lại kết nối giữa Sinh viên và lớp học đó
c Tiền điều kiện
- Tác nhân đã đăng nhập thành công vào hệ thống
- Đã tạo thời khóa biểu trong hệ thống
d Hậu điều kiện.
Nếu việc sửa thời khóa biểu thành công, thời khóa biểu sau khi
sửa sẽ được cập nhật vào trong hệ thống
4.5 Xem thời khóa biểu
a Mô tả tóm tắt:
- Mục đích: Mô tả cách một người sử dụng xem thời khóa biểu
- Tác nhân: User.
Trang 10b Các luồng sự kiện.
* Luồng sự kiện chính.
- Ca sử dụng này bắt đầu khi tác nhân muốn xem thời khóa biểu đã tạo thành công trong hệ thống
- Hệ thống hiển thị danh sách các lớp học mà Sinh viên đã đăng kí theo học
- Sinh viên lựa chọn một lớp học
- Hệ thống sẽ hiển thị lịch của lớp học đó gồm các thông tin sau: tên mônhọc, mã môn học, mã số lớp học, các ngày lên lớp trong tuần, thời gian, địa điểm
c Tiền điều kiện
- Đã tạo lịch học thành công trong hệ thống d Hậu điều kiện
Trang 11Phần 2: Phân tích
1 Mô hình hóa chức năng
Hình 2.1 :Mô hình chức năng tạo thời khóa biểu
Trang 12Hình 2.2: Mô hình chức năng sửa thời khóa biểu
Trang 13Hình 2.3: Mô hình chức năng xem thời khóa biểu
Trang 142 Mô hình hóa các lớp 2.1: Trích lớp thực thể
Hình 2.4: Lớp thực thể Users
Hình 2.5:Lớp thực thể lớp
Trang 15- Giao diện trang chủ: homePageFrm
- Giao diện tạo TKB: makeScheduleFrm
- Giao diện sửa TKB đã tạo: editScheduleFrm
- Giao diện xem TKB đã tạo: showScheduleFrm
Các dialog và cửa sổ con đều là thành phần của các form
Trang 162.4 Thẻ CRC
Hình 2.6: Thẻ CRC
Trang 173.Mô hình hóa hoạt động
* Sơ đồ statechart:
Hình 2.7: Sơ đồ statechart
Trang 184 Scenario cuối pha phân tích
* Đăng ký môn học:
- Tạo mới thời hóa biểu:
Hình 2.8: Biểu đồ trình tự kịch bản tạo mới thời khóa biểu
Trang 19- Sửa thời khóa biểu:
Hình 2.9: Biểu đồ trình tự kịch bản sửa thời khóa
-biểu -Xem thời khóa -biểu đã tạo:
Hình 2.10: Biểu đồ trình tự kịch bản xem thời khóa biểu
Trang 20Phần 3: Thiết kế cơ sở dữ liệu
Hình 3.1: Lược đồ cơ sở dữ liệu.
Trang 21Phần 4: Cài đặt
Hình 4.1: Giao diện đăng nhập và đăng kí tài khoản
Hình 4.2: Giao diện các chức năng của ứng dụng
Trang 22Phần 5: Kiểm thử và bảo trì
5.1 Test case
- Nội dung:
+ Test case chức năng tạo thời khóa biểu
+ Test case chức năng sửa thời khóa biểu
+ Test case chức năng xem thời khóa biểu
5.1.1 Test case chức năng tạo thời khóa biểu
- Ban đầu:
- Các thao tác:
1: Sinh viên chọn chức năng tạo thời
khóa biểu
Giao diện hiện ra cửa sổ chọn thờiikhóa biểu với các danh sách mônhọc và giáo viên giảng dậy
Trang 232: Sinh viên chọn môn học cần đăng
kí, tiếp theo chọn giáo viên muốn đăng kí
cho tới khi đủ nguyện vọng cần thiết
3: Sinh viên nhấn nút lưu để lưu lich
Hiển thị thông báo thành công
5.1.2 Test case chức năng sửa thời khóa biểu
- Ban đầu
Trang 24- Các thao tác
Bước
1: Sinh viên chọn vào chức năng
sửa thời khóa biểu
2: Sinh viên chọn một một hoặc các
môn học muốn chỉnh xửa để xóa khỏi cơ
sở dữ liệu đã lưu trước đó.
3: Sinh viên làm lại thao tác đăng kí
lại môn học cần chuyển đăng kí.
Kết quả mong đợi
Giao diện cửa sổ sửa thời khó biểuhiện ra với danh sách các môn đã lưutrong cơ sở dữ liệu
Các nút chỉnh xửa thời khóa biểu Mônhọc được xóa khỏi cơ sở dữ liệu đã ghi
và không còn hiển thị trên thời khóa biểu
Hiển thị thao tác thành công
Trang 25+ Kết quả
5.1.3 Test case chức năng xem thời khóa biểu
Trang 26Bước Kết quả mong muốn
1: Sinh viên chọn chứa năng xem
thời khóa biểu.
Kết quả:
1: Hiển thị ra cửa sổ thời khóa biểu
của sinh viên đã đăng kí và được lưutrong cơ sở dữ liệu
2: Trong trường hợp cơ sở dữ liệu
chưa có thông tin hiển thị thông báothời khóa biểu chưa được tạo
5.2 Bảo trì
- Quá trinh bảo trì được thực hiện hàng tháng : liên tục sửa lỗi và loại bỏ thông tin không có giá trị
Trang 27Tổng kết và đánh giá
Qua quá trình thực hiện đề tài chúng ta đã nắm rõ các quy trình và yêu cầu để thiết
kế một phần mềm trong thực tế.Vận dụng các kiến thức đã học vào thiết kế một ứng dụng thiết thực
-Phần mềm đã đáp ứng được mục đích mong muốn
- Giao diện trực quan, dễ sử dụng nhưng chưa được bắt mắt -Các chức năng đơn giản, dễ làm quen