Professional Documents
Culture Documents
ĐỒ ÁN MÔN HỌC
Nhóm 13S xin cam đoan những điều được trình bày trong đây là một sản
phẩm tự nghiên cứu, không phải là một sản phẩm đã có sẵn trước. Nếu có sự sao
chép kết quả nghiên cứu, nhóm xin hoàn toàn chịu trách nhiệm.
3
GVCN: Huỳnh Anh Tuấn
Contents
A. PHẦN GIỚI THIỆU...................................................................................................5
I. THÔNG TIN VỀ ĐỀ TÀI............................................................................................5
1. Thông tin chung..................................................................................................5
2. Tóm tắt về lý do thực hiện đề tài........................................................................5
3. Mục tiêu, phạm vi đề tài.....................................................................................5
II. CÁCH THỨC THỰC HIỆN......................................................................................5
1. Phương pháp - Mô hình – Tiến trình thực hiện..................................................5
2. Công cụ thực hiện...............................................................................................6
III. KẾ HOẠCH THỰC HIỆN........................................................................................6
B. KHẢO SÁT VÀ PHÂN TÍCH.................................................................................7
I. NGHIÊN CỨU SƠ BỘ [BƯỚC 1]..............................................................................7
1. Giới thiệu tổng quan về tổ chức (cơ quan, doanh nghiệp) sẽ sử dụng ứng dụng7
2. Hiện trạng............................................................................................................9
3. Nhu cầu ứng dụng công nghệ thông tin............................................................15
3.1. Các yêu cầu chức năng cần có của ứng dụng (theo ý kiến của tổ chức)....16
3.2. Các yêu cầu phi chức năng (mà tổ chức mong muốn)...............................17
II. NHẬN ĐỊNH VÀ ĐẶC TẢ CÁC ACTOR, USE CASE [BƯỚC 2].......................17
1. Xác định các tác nhân (Actor) và vẽ biểu đồ khung cảnh................................17
2. Xác định usecase...............................................................................................19
III. MÔ HÌNH HÓA LĨNH VỰC ỨNG DỤNG [Bước 3]............................................52
1. Xác định các Entity Class.................................................................................52
2. Xác định mối liên kết (Association) giữa các class thực thể............................52
3. Vẽ Entity Class Diatram (biểu đồ lớp thực thể) cho ứng dụng.........................52
IV. PHÂN TÍCH THEO TỪNG USE CASE [Bước 4, 7, 5, 6]....................................52
1. Use Case 1 <nêu tên cụ thể>...................................................................52
1.1. Xác định các đối tượng /lớp tham gia use case .........................................52
1.2. Vẽ Sequence Diagram và Activity Diagram của use case ........................53
1.3. Vẽ State Machine Diagram .......................................................................53
2. Use Case 2 <nêu tên cụ thể>.............................................................................53
C. THIẾT KẾ...............................................................................................................53
I. LÀM NGUYÊN MẪU GIAO DIỆN NGƯỜI DÙNG..............................................53
II. THIẾT KẾ HỆ THỐNG...........................................................................................61
4
GVCN: Huỳnh Anh Tuấn
5
GVCN: Huỳnh Anh Tuấn
6
GVCN: Huỳnh Anh Tuấn
7
GVCN: Huỳnh Anh Tuấn
8
GVCN: Huỳnh Anh Tuấn
thành tốt nhiệm vụ được giao, luôn có tinh thần phối hợp chặt
chẽ, đoàn kết.
o Học sinh: có nề nếp học tập, được sự quan tâm của cha mẹ.
o Về nhân viên văn phòng: gồm các viên chức làm công tác y tế,
kế toán, thủ quỹ, tổng phụ trách, thư viện, thiết bị đều có tinh
thần trách nhiệm trong công việc, giúp Hiệu trưởng thực hiện
nhiệm vụ của bộ phận mà mình phụ trách như: quản lý tài
chính tài sản trong nhà trường; chăm sóc sức khỏe học sinh;
hướng dẫn học sinh tham gia các hoạt động ngoại khóa …
Nhân viên tổ văn phòng được tập huấn bồi dưỡng chuyên môn
nghiệp vụ về lĩnh vực công tác mà mình phụ trách đáp ứng yêu
cầu công việc được phân công
9
GVCN: Huỳnh Anh Tuấn
2. Hiện trạng
a) Tổ chức - nhân sự của tổ chức
Phòng ban/tổ Số nhân sự Chức năng/nhiệm vụ
Ban giám hiệu 3 - Xây dựng, tổ chức bộ máy nhà trường
- Thực hiện các quyết định của hội
đồng trường
- Xây dựng kế hoạch và tổ chức thực
hiện nhiệm vụ năm học
- Quản lý giáo viên, nhân viên, thực
hiện khen thưởng, kỷ luật, quản lý hồ
sơ tuyển dụng của giáo viên, nhân
viên…
- Quản lý học sinh và các hoạt động của
học sinh do nhà trường tổ chức, xét
duyệt kết quả đánh giá, xếp loại học
sinh, ký xác nhận học bạ, khen thưởng
kỷ luật học sinh theo quy định
- Quản lý tài chính, tài sản của nhà
trường
Tổ văn phòng 6 - Đảm trách các công việc hành chính
của trường
- Tham mưu, giúp việc cho Ban Giám
hiệu; phục vụ công tác dạy và học trong
nhà trường
Tổ chuyên môn 45 - Chủ động xây dựng kế hoạch dạy học
và giáo dục theo chương trình môn học,
hoạt động giáo dục thuộc chuyên môn
phụ trách theo tuần, tháng, học kỳ, năm
học
- Phối hợp với các tổ chuyên môn khác
xây dựng kế hoạch giáo dục của nhà
trường
b) Mô tả các quy trình nghiệp vụ, quy tắc, quy định của tổ chức có liên
quan trực tiếp đến ứng dụng
- Quy trình nhập thông tin giáo viên và học sinh:
10
GVCN: Huỳnh Anh Tuấn
+ Sau khi nộp hồ sơ/phỏng vấn thành công, nhân viên phòng thông tin và dữ
liệu sẽ tiến hành nhập liệu thông tin của học sinh/giáo viên, bao gồm các thông tin
trong sơ yếu lý lịch, gồm:
Giáo viên: mã giáo viên, họ tên, giới tính, ngày sinh, địa chỉ, số điện
thoại, căn cước công dân, môn dạy và các lớp dạy (có thể trống nếu chưa có thông
tin).
Học sinh: mã học sinh, họ tên, giới tính, ngày sinh, địa chỉ, số điện
thoại, căn cước công dân, lớp học (có thể trống nếu chưa được xếp); và các thông
tin của phụ huynh (mã phụ huynh).
+ Vào mỗi học kì, các giáo viên sẽ được phân công và thông báo về các lớp
dạy dựa trên môn dạy. Các học sinh cũng sẽ được phân vào lớp dựa trên năm học.
- Quy trình nghiệp vụ cập nhật điểm:
+Mẫu sổ liên lạc dạng giấy:
11
GVCN: Huỳnh Anh Tuấn
+ Mỗi học kì, giáo viên được cấp một sổ điểm gồm: lớp, môn học, tên giáo
viên. Ứng với mỗi lớp có nhiều học sinh, mỗi học sinh có: số thứ tự, mã học sinh,
tên học sinh và điểm học sinh gồm tối đa 4 cột điểm đánh giá thường xuyên, 1 cột
điểm giữa kì, 1 cột điểm cuối kì.
+ Mỗi học sinh sau một học kì sẽ được phát sổ liên lạc, mỗi sổ liên lạc gồm
các thông tin: học kì, năm học, mã học sinh, tên học sinh, lớp học và danh sách các
môn học, mỗi môn học gồm số thứ tự, tên môn học, 4 cột điểm đánh giá thường
xuyên, 1 cột điểm giữa kì, 1 cột điểm cuối kì và điểm trung bình môn học. Quá trình
học tập của học sinh trong một học kì cũng được thể hiện trên sổ liên lạc, có các
trường thông tin gồm: điểm trung bình các môn, thứ hạng trong lớp, số ngày vắng,
học lực, hạnh kiểm, danh hiệu.
+ Cuối mỗi học kì, giáo viên nộp sổ điểm lại cho nhân viên phòng thông tin
và dữ liệu, nhân viên sẽ tiến hành nhập điểm lên máy tính và xuất kết quả theo mẫu
sổ liên lạc kể trên.
- Quy định chung về điểm:
+ Điểm số phải được đánh giá trung thực, khách quan theo năng lực của từng
học sinh.
+ Điểm trung bình các môn trong học kì chỉ được tính sau khi đã nhập đủ tất
cả các cột cần thiết, tối đa có 4 cột điểm đánh giá thường xuyên (gồm điểm miệng
và điểm kiểm tra 15 phút), 1 cột điểm giữa kì, 1 cột điểm cuối kì. Trong đó điểm
đánh giá thường xuyên có thể nhập từ 2 đến 4 cột và tính điểm trung bình dựa trên
số cột nhập vào.
+ Điểm tổng kết năm học của một học sinh chỉ được tính sau khi đã nhập
điểm của cả 2 học kì.
+ Các cột điểm có ký hiệu riêng:
Các cột điểm thường xuyên: TX1, TX2, TX3, TX4.
Cột điểm giữa kì: GK.
Cột điểm cuối kì: CK.
+ Cột điểm dẫn xuất (được suy ra) không cần nhập, nhưng vẫn có ký hiệu
riêng, cụ thể là cột điểm trung bình môn: TBM.
+ Các cột điểm thường xuyên có hệ số là 1, giữa kì có hệ số 2 và cuối kì có
hệ số 3.
+ Các môn học đánh giá theo các cột điểm số được làm tròn đến chữ số thập
phân thứ nhất, riêng môn thể dục tính theo điểm Đ (đạt) hoặc CĐ (chưa đạt).
+ Trường hợp các học sinh có nhiều điểm hơn 4 cột điểm đánh giá thường
xuyên kể trên, giáo viên có thể linh động chỉnh sửa các cột điểm sao cho phù hợp.
- Quy định về cách tính điểm:
+ Điểm trung bình môn được tính theo công thức:
12
GVCN: Huỳnh Anh Tuấn
13
GVCN: Huỳnh Anh Tuấn
+ Học kì I bắt đầu vào ngày 05/09, học kì II bắt đầu vào ngày 15/01 hằng
năm.
c) Hiện trạng tin học
- Hiện tại, nhà trường quản lý điểm thủ công bằng sổ điểm được phát
cho mỗi giáo viên ở đầu học kì.
- Về cơ sở vật chất, nhà trường đã có đầy đủ các thiết bị, máy móc như
các máy tính, máy in… và các kết nối mạng có dây lẫn không dây tốc độ cao
với nhiều điểm truy cập.
- Về trình độ tin học, tất cả giáo viên đều sử dụng thành thạo các thiết
bị công nghệ như điện thoại, máy tính cũng như các công cụ, ứng dụng chạy
trên các nền tảng này, các giáo viên cũng có các chứng chỉ tin học văn phòng
cơ bản, có khả năng tự học cách sử dụng công nghệ mới nhất.
3. Nhu cầu ứng dụng công nghệ thông tin
- Sổ liên lac điện tử được biết đến là phương tiện trao đổi thông tin
không thể thiếu giữa nhà trường và phụ huynh ở các trường. Sổ liên lạc điện
tử đang dần thay thế những cuốn sổ liên lạc thủ công trước kia bởi tính tiện
dụng, hiện đại.
- Về nguyên lý, sản phẩm sổ liên lạc điện tử giúp kết nối, tăng cường
giao tiếp giữa các phòng ban, là cầu nối gắn kết mối liên hệ giữa: nhà trường -
giáo viên - phụ huynh và học sinh.
- Lợi ích của sổ liên lạc điện tử:
+ Quản lý thông tin học sinh: Bao gồm: quản lý hồ sơ, quá trình học tập
giúp giảm tải giấy tờ, thủ tục không cần thiết.
+ Quản lý thông tin giáo viên: Thông tin hồ sơ giáo viên, lịch dạy hàng
ngày.
+ Quản lý lớp học: Điểm danh học sinh lúc đến và lúc về theo từng
ngày.
+ Tính bảo mật cao: Bảo mật tuyệt đối thông tin của học sinh, chỉ phụ
huynh mới xem được.
Đối với nhà trường:
+ Cập nhật nhanh chóng tình trạng học sinh: điểm danh, đón trả, nhận
xét các em…
+ Gửi thông báo tức thì theo nhóm đối tượng tùy chỉnh
+ Quản lý chặt chẽ thông tin lớp học, thống kê báo cáo chính xác
+ Nhanh chóng nắm bắt phản hồi từ phụ huynh và giáo viên.
14
GVCN: Huỳnh Anh Tuấn
15
GVCN: Huỳnh Anh Tuấn
16
GVCN: Huỳnh Anh Tuấn
17
GVCN: Huỳnh Anh Tuấn
b) Biểu đồ usecase
c) Đặc tả các use case theo dạng kịch bản [đặc tả bằng lời]
Usecase1
Tên use case Đăng nhập
Tác nhân chính Người dùng (Giáo viên, phụ huynh, admin)
Tác nhân phụ Không có
Mức 1
Người chịu trách Giáo viên, phụ huynh, quản trị viên hệ thống
nhiệm
Điều kiện tiên quyết - Tài khoản người dùng đã được tạo sẵn
- Tài khoản người dùng đã được phân quyền (vai trò)
- Người dùng đã khởi động ứng dụng nhưng chưa đăng
nhập vào hệ thống
Điều kiện tối thiểu Nếu đăng nhập thất bại: hiện thông báo đăng nhập không
(kết quả không thành thành công, xóa trắng các trường thông tin và đưa người
công) dùng trở lại trang đăng nhập
Đảm bảo thành công Nếu đăng nhập thành công: chuyển người dùng đến
trang chủ
Kích hoạt Người dùng khởi động phần mềm
Luồng sự kiện chính
1. Người dùng vào trang đăng nhập
2. Người dùng nhập tài khoản mật khẩu
18
GVCN: Huỳnh Anh Tuấn
19
GVCN: Huỳnh Anh Tuấn
Usecase2
Tên use case Tra cứu học sinh
Tác nhân chính Giáo viên, admin
Tác nhân phụ Không có
Mức 1
Người chịu trách Giáo viên, admin
nhiệm
Điều kiện tiên quyết - Người dùng khởi động chương trình và đã đăng nhập
- Người dùng là admin hoặc giáo viên
Điều kiện tối thiểu Hiển thị thông báo lỗi và xóa trắng trường thông tin
(kết quả không thành
công)
Đảm bảo thành công Hiện lên danh sách các học sinh gần hoặc giống nhất với
kết quả tìm kiếm
Kích hoạt Người dùng nhấn nút “Tra cứu” tại trang chủ
Luồng sự kiện chính
1. Hệ thống hiển thị form tra cứu với 1 combo box về tiêu chí (tên, mã số, lớp…)
và 1 trường thông tin dùng để nhập từ khóa.
2. Người dùng chọn tiêu chí và nhập từ khóa, sau đó nhấn nút tìm kiếm
3. Hệ thống hiển thị danh sách học sinh giống hoặc gần giống với kết quả tra cứu,
người dùng có thể nhấn lên/xuống để xem thông tin
Ngoại lệ
3a. Thiếu thông tin về tiêu chí hoặc từ khóa
3.a.1 Hệ thống hiện thông báo “Yêu cầu bạn nhập đầy đủ thông tin học sinh”
3.a.2 Quay lại bước 2
Quy tắc nghiệp vụ
20
GVCN: Huỳnh Anh Tuấn
21
GVCN: Huỳnh Anh Tuấn
Usecase4
Tên use case Thống kê điểm lớp dạy
Tác nhân chính Giáo viên
Mức 1
Người chịu trách Giáo viên bộ môn
nhiệm
Điều kiện tiên quyết Giáo viên đã đăng nhập vào hệ thống với vai trò là giáo
viên.
Đảm bảo tối thiểu Hệ thống báo lỗi và quay lại bước trước.
Đảm bảo thành công Thống kê điểm số của các học sinh trong lớp
Kích hoạt Giáo viên chọn chức năng thống kê điểm lớp học
Chuỗi sự kiện chính
1. Sau khi chọn chức năng thống kê điểm, sẽ xuất hiện form Lựa chọn tiêu chí
thống kê theo chế độ ‘Select’ dựa theo dữ liệu có sẵn
2. Người dùng sẽ thao tác để chọn tiêu chí thống kê gồm Lớp học, Niên khóa,
Học kì mà mình muốn thống kê
3. Sau khi đã chọn xong các tiêu chí muốn thống kê, ấn vào nút thống kê ở trên
form. Hệ thống sẽ chuyển sang view crystal report
4. Dựa trên tiêu chí hệ thống sẽ xuất ra nội dung thống kê
Ngoại lệ
Quy tắc nghiệp vụ
1. Mặc định, các giá trị của các tiêu chí sẽ được đặt là giá trị đầu tiên
22
GVCN: Huỳnh Anh Tuấn
Usecase5
Tên use case Thống kê điểm toàn khối
Tác nhân chính Admin
Mức 1
Người chịu trách Quản trị viên hệ thống
nhiệm
Điều kiện tiên quyết Admin đã đăng nhập với vai trò Admin
Đảm bảo tối thiểu Hệ thống báo lỗi và quay lại bước trước
Đảm bảo thành công Thống kê điểm số toàn khối của trường học
Kích hoạt Admin chọn chức năng thống kê điểm toàn khối
Chuỗi sự kiện chính
1. Sau khi chọn chức năng thống kê điểm, sẽ xuất hiện form Lựa chọn tiêu chí
thống kê theo chế độ ‘Select’ dựa theo dữ liệu có sẵn
2. Người dùng sẽ thao tác để chọn tiêu chí thống kê gồm Môn học, Khối, Niên
khóa, Học kì mà mình muốn thống kê
3. Sau khi đã chọn xong các tiêu chí muốn thống kê, ấn vào nút thống kê ở trên
form. Hệ thống sẽ chuyển sang view crystal report
4. Dựa trên tiêu chí hệ thống sẽ xuất ra nội dung thống kê
Ngoại lệ
Quy tắc nghiệp vụ
1. Mặc định, các giá trị của các tiêu chí sẽ được đặt là giá trị đầu tiên
23
GVCN: Huỳnh Anh Tuấn
Usecase 6
Tên use case Tìm kiếm tất cả sổ điểm học sinh một lớp
Tác nhân chính Giáo viên
Tác nhân phụ Không có
Mức 2
Người chịu trách Giáo viên bộ môn
nhiệm
Điều kiện tiên quyết - Người dùng đã đăng nhập
- Người dùng là giáo viên
Đảm bảo tối thiểu Hệ thống thông báo lỗi và quay lui lại bước trước
(kết quả không
thành công)
Đảm bảo thành công Hiển thị danh sách học sinh theo các tiêu chí được chọn
Kích hoạt Giáo viên chọn chức năng nhập điểm từ trang chủ
Chuỗi sự kiện chính
1. Hệ thống hiển thị form quản lý sổ điểm với một khung tìm kiếm với các tiêu
chí có 2 ô gồm: lớp và nút tìm kiếm.
2. Giáo viên chọn các tiêu chí và nhấn nút tìm kiếm
3. Hệ thống tìm kiếm và hiển thị danh sách học sinh của 1 lớp lên form theo các
tiêu chí tương ứng, ở bên phải có nút “Cập nhật” dẫn đến form sổ điểm chi tiết
Ngoại lệ
Quy tắc nghiệp vụ
1. Các lớp được hiển thị là các lớp ở trong niên khóa và học kì này, đồng nghĩa
với việc giáo viên không thể thay đổi hay xem điểm các học sinh ở niên khóa, học
kì trước hay thay đổi bất cứ thứ gì
2. Mặc định, các giá trị của tiêu chí sẽ được đặt là giá trị đầu tiên
24
GVCN: Huỳnh Anh Tuấn
25
GVCN: Huỳnh Anh Tuấn
26
GVCN: Huỳnh Anh Tuấn
27
GVCN: Huỳnh Anh Tuấn
28
GVCN: Huỳnh Anh Tuấn
29
GVCN: Huỳnh Anh Tuấn
30
GVCN: Huỳnh Anh Tuấn
Usecase7
Tên use case Tìm kiếm học sinh và phụ huynh
Tác nhân chính Admin
Tác nhân phụ Không có
Mức 3
Người chịu trách Người quản trị hệ thống
nhiệm
Điều kiện tiên quyết - Người dùng đã đăng nhập
- Người dùng là quản trị viên hệ thống
Đảm bảo tối thiểu Hệ thống ngưng tìm kiếm học sinh và quay lại bước trước
(kết quả không
thành công)
Đảm bảo thành công Thông tin của tất cả học sinh xuất hiện dưới dạng dòng dữ
liệu trên form
Kích hoạt Admin chọn “Cập nhật học sinh” từ trang chủ
Chuỗi sự kiện chính
1. Hệ thống hiển thị form cập nhật học sinh, form lúc này được chuyển thành
trạng thái “Xem”, các trường dữ liệu có thể nhập được xóa trắng, các dòng dữ liệu
về học sinh được nạp lên từ cơ sở dữ liệu, người dùng có thể tương tác tới/lùi với
các dòng dữ liệu này. Ngoài ra, form cũng hiển thị danh sách phụ huynh, nhưng
không thể thêm sửa xóa mà chỉ có thể tới lui để xem thông tin
2. Admin tiếp tục thực hiện các chức năng khác của form cập nhật học sinh
Ngoại lệ
31
GVCN: Huỳnh Anh Tuấn
32
GVCN: Huỳnh Anh Tuấn
33
GVCN: Huỳnh Anh Tuấn
34
GVCN: Huỳnh Anh Tuấn
35
GVCN: Huỳnh Anh Tuấn
36
GVCN: Huỳnh Anh Tuấn
37
GVCN: Huỳnh Anh Tuấn
Tên use case Tìm kiếm giáo viên chưa có trong lớp và đã có trong lớp
Tác nhân chính Admin
Tác nhân phụ Không có
Mức 3
Người chịu trách Quản trị viên hệ thống
nhiệm
Điều kiện tiên quyết - Người dùng đã đăng nhập
- Người dùng là quản trị viên
Đảm bảo tối thiểu Hệ thống ngưng tìm kiếm và thông báo thất bại
(kết quả không
thành công)
Đảm bảo thành công Hiển thị danh sách lớp
Kích hoạt Admin chọn “Xếp lớp giáo viên” từ Form cập nhật lớp
Chuỗi sự kiện chính
1. Hệ thống hiển thị 2 danh sách gồm danh sách các giáo viên có trong lớp và
giáo viên chưa có trong lớp
2. Người dùng có thể thao tác với một trong 2 form này để thực hiện use case
tương ứng
Ngoại lệ
38
GVCN: Huỳnh Anh Tuấn
39
GVCN: Huỳnh Anh Tuấn
40
GVCN: Huỳnh Anh Tuấn
Usecase8
Tên use case Thêm tài khoản
Tác nhân chính Admin
Mức 2
Người chịu trách Người quản trị hệ thống
nhiệm
Điều kiện tiên Admin đã đăng nhập với vai trò Admin
quyết
Đảm bảo tối thiểu Hệ thống loại bỏ các thông tin đã thêm và quay lại bước trước
Đảm bảo thành Thông tin tài khoản mới được bổ sung vào cơ sở dữ liệu
công
Kích hoạt Admin chọn chức năng ‘Quản trị hệ thống’ từ menu chính
Chuỗi sự kiện chính
1. Hệ thống hiển thị form Cập nhật thông tin phụ huynh và giáo viên theo chế
độ ‘Xem’. Admin có thể thao tác tới/lui giữa các dòng thông tin tài khoản.
2. Admin nhấn nút “Thêm”, xóa trắng các trường thông tin, lúc này form sẽ
chuyển trạng thái thành “Thêm”.
3. Admin tiến thành nhập thông tin cá nhân và nhấn nút “Lưu”.
4. Hệ thống nhận thông tin vừa nhập sau đó tiến thành lưu vào cơ sở dữ liệu.
5. Hiển thị lưu thành công, chuyển trạng thái của form thành “Xem”.
Ngoại lệ
3.a Một trong những trường thông tin chưa được nhập
3.a.1 Thông báo yêu cầu nhập đầy đủ các trường thông tin
3.a.2 Quay lại bước 3
4.a Hệ thống ghi nhận đã có tên tài khoản người dùng vừa nhập
4.a.1 Thông báo tài khoản vừa nhập không hợp lệ
4.a.2 Quay lại bước 3
4.b Hệ thống ghi nhận trùng căn cước công dân
4.a.1 Thông báo trùng căn cước công dân
4.a.2 Quay lại bước 3
Quy tắc nghiệp vụ
1. Thông tin tài khoản bao gồm: tài khoản, mật khẩu, họ tên, giới tính, ngày sinh,
địa chỉ, số điện thoại, căn cước (nếu là giáo viên thì sẽ thêm mã môn học)
2. Trạng thái “Xem” và “sửa” phụ thuộc vào người dùng đang thao tác với loại tài
khoản nào, nếu đang thao tác với loại giáo viên thì trạng thái sẽ là “Xem giáo
viên” và “Thêm giáo viên”, nếu đang thao tác với phụ huynh thì sẽ là “Xem phụ
41
GVCN: Huỳnh Anh Tuấn
42
GVCN: Huỳnh Anh Tuấn
43
GVCN: Huỳnh Anh Tuấn
44
GVCN: Huỳnh Anh Tuấn
45
GVCN: Huỳnh Anh Tuấn
46
GVCN: Huỳnh Anh Tuấn
2. Xác định mối liên kết (Association) giữa các class thực thể.
3. Vẽ Entity Class Diatram (biểu đồ lớp thực thể) cho ứng dụng
47
GVCN: Huỳnh Anh Tuấn
c) Bổ sung thuộc tính và method cho các class giao diện, điều khiển.
Class FormDangNhap
Thuộc tính Phương thức
ctDangNhap: ControllerDangNhap ShowDangNhap()
txt_tenDangNhap : string. ResetForm()
txt_matKhau : string btnDangnhap_Click()
btnThoat_Click()
ThongBao()
48
GVCN: Huỳnh Anh Tuấn
CLASS FormMain
Thuộc tính Phương thức
ctMain : ControllerMain ShowMain()
HienThiNut()
ChonTraCuuHS()
ChonXemSoDiem()
ChonTKdiemLD()
ChonTKdiemTK()
ChonQLSoDiem()
ChonCapNhatHS()
ChonCapNhatLop()
ChonQuanTriHT()
Class ControllerMain
Thuộc tính Phương thức
ctDangNhap: ControllerDangNhap RunDangNhap()
formMain: FormMain SetNguoiDung()
nguoiDung : Nguoi RunTraCuuHS()
RunXemSoDiem()
RunQLSoDiem()
RunCapNhatHS()
RunCapNhatLop()
RunTKdiemLD()
RunTKdiemTK()
Class ControllerDangNhap
Thuộc tính Phương thức
ctMain : ControllerMain Khoitao()
forDangNhap : FormDangNhap XuLyDangNhap()
t_NguoiDung : T_NguoiDung KetThucDangNhap()
49
GVCN: Huỳnh Anh Tuấn
2: KhoiTao( )
3: NapDuLieu( )
4: NapDuLieu( )
5: ShowDangNhap( )
8: XacThucTK(string, string)
9: ma nguoi [mn]
10: TimNguoi(string)
12: ThongBao(string)
13: KetThucDangNhap( )
14: SetNguoiDung(Nguoi)
15: HienThiNut(str...
16: ShowMain( )
b) Vẽ Activity Diagram:
50
GVCN: Huỳnh Anh Tuấn
Khoi dong
phan mem
51
GVCN: Huỳnh Anh Tuấn
c) Bổ sung thuộc tính và method cho các class giao diện, điều khiển.
Class FormTraCuuHS
Thuộc tính Phương thức
ctTraCuuHS : ControllerTraCuuHS ShowTraCuuHS()
cbTieuChi : ComboBox SetData()
dgvDanhSachHS : DataGridView btnTraCuuHS_Click()
btnThoat_Click()
Thongbao()
52
GVCN: Huỳnh Anh Tuấn
SetDataTC()
Class ControllerTraCuuHS
Thuộc tính Phương thức
formTraCuuHS : FormTraCuuHS Khoitao()
t_Học Sinh : T_Hoc Sinh XuLyDangNhap()
KetThucDangNhap()
Class FormMain
Thuộc tính Phương thức
ctMain: ControllerMain ShowMain()
HienThiNut()
ChonTraCuuHS()
ChonXemSoDiem()
ChonTKdiemLD()
ChonTKdiemTK()
ChonQLSoDiem()
ChonCapNhatHS()
ChonCapNhatLop()
ChonQuanTriHT()
Class ControllerMain
Thuộc tính Phương thức
ctDangNhap: ControllerDangNhap RunDangNhap()
formMain: FormMain SetNguoiDung()
nguoiDung: Nguoi RunTraCuuHS()
RunXemSoDiem()
RunQLSoDiem()
RunCapNhatHS()
RunCapNhatLop()
53
GVCN: Huỳnh Anh Tuấn
RunTKdiemLD()
RunTKdiemTK()
RunQuan TriHT()
HocSinh
(from Entities)
maHS : string
maPH : string
FormTraCuuHS ControllerTraCuuHS T_HocSinh maLop : string
(from Boundaries) (from Control lers) (from Entities)
FormMain ControllerMain
(from QuanLy) (from QuanLy)
ctMain : ControllerMain ctDangNhap : ControllerDangNhap
formMain : FormMain
ShowMain() nguoiDung : Nguoi
HienThiNut()
ChonTraCuuHS() RunDangNhap()
ChonXemSoDiem() SetNguoiDung()
ChonTKdiemLD() RunTraCuuHS()
ChonTKdiemTK() RunXemSoDiem()
ChonQLSoDiem() RunQLSoDiem()
ChonCapNhatHS() RunCapNhatHS()
ChonCapNhatLop() RunCapNhatLop()
ChonQuanTriHT() RunTKdiemLD()
RunTKdiemTK()
RunQuanTriHT()
54
GVCN: Huỳnh Anh Tuấn
2: ShowMain( )
3: ChonTraCuuHS( )
4: RunTraCuuHS( )
5: KhoiTao( )
6: NapDuLieu( )
7: ShowTraCuuHS( )
9: XuLyTraCuu(string, string)
12: SetData(DataTable)
b) Vẽ Activity Diagram:
55
GVCN: Huỳnh Anh Tuấn
56
GVCN: Huỳnh Anh Tuấn
57
GVCN: Huỳnh Anh Tuấn
c) Bổ sung thuộc tính và method cho các class giao diện, điều khiển.
Class FormXemSoDiem
Thuộc tính Phương thức
ShowSoDiem()
58
GVCN: Huỳnh Anh Tuấn
Class ControllerXemSoDiem
Thuộc tính Phương thức
formXemSoDiem: FormXemSoDiem KhoiTao()
formSoDiemHS: FormSoDiemHS XuLyXemSoDiem()
SoDiem: T_SoDiem KetThucXemSoDiem()
phuHuynh : Nguoi
Class FormMain
Thuộc tính Phương thức
ctMain: ControllerMain ShowMain()
Hien ThiNut()
ChonTraCuuHS()
ChonXemSoDiem()
ChonTKdiemLD()
ChonTKdiemTK()
ChonQLSoDiem()
ChonCapNhatHS()
ChonCapNhatLop()
ChonQuanTriHT()
Class ControllerMain
Thuộc tính Phương thức
ctDangNhap: ControllerDangNhap RunDangNhap()
formMain: FormMain SetNguoiDung()
nguoiDung: Nguoi RunTraCuuHS()
RunXemSoDiem()
RunQLSoDiem()
RunCapNhatHS()
RunCapNhatLop()
RunTKdiemLD()
RunTKdiemTK()
59
GVCN: Huỳnh Anh Tuấn
RunQuan TriHT()
2: ShowMain( )
3: ChonXemSoDiem( )
4: RunXemSoDiem( )
5: KhoiTao(Nguoi)
6: GetSoDiemTheoPH(string)
8: XuLyXemSoDiem( )
9: ShowSoDiem(DataTable)
60
GVCN: Huỳnh Anh Tuấn
c) Bổ sung thuộc tính và method cho các class giao diện, điều khiển.
Class FormTKdiemLD
Thuộc tính Phương thức
61
GVCN: Huỳnh Anh Tuấn
ShowThongKe()
Class FormTCTKdiemLD
Thuộc tính Phương thức
ctTKdiemLD: ControllerTKdiemLD SetData()
btnThongKe_Click()
btnThoat_Click()
ThongBao()
ShowTCTK()
Class ControllerTKdiemLD
Thuộc tính Phương thức
formTKDiemLD: FormTKdiemLD Khoi Tao()
formTCTKdiemLD: XuLyThongKe()
FormTCTKdiemLD KetThucThongKe()
t_NienKhoa: T_NienKhoa
t_Hocki: T_Hocki
t_LopHoc: T_LopHoc
Class FormMain
Thuộc tính Phương thức
ctMain: ControllerMain ShowMain()
HienThiNut()
ChonTraCuuHS()
ChonXemSoDiem()
ChonTKdiemLD()
ChonTKdiemTK()
ChonQLSoDiem()
ChonCapNhatHS()
62
GVCN: Huỳnh Anh Tuấn
ChonCapNhatLop()
ChonQuanTriHT()
Class ControllerMain
Thuộc tính Phương thức
ctDangNhap: ControllerDangNhap RunDangNhap()
formMain: FormMain SetNguoiDung()
nguoiDung: Nguoi RunTraCuuHS()
RunXemSoDiem()
RunQLSoDiem()
RunCapNhatHS()
RunCapNhatLop()
RunTKdiemLD()
RunTKdiemTK()
RunQuan TriHT()
63
GVCN: Huỳnh Anh Tuấn
2: ShowMain( )
3: ChonTKdiemLD( )
4: RunTKdiemLD( )
5: KhoiTao( )
6: NapDuLieu( )
7: NapDuLieu( )
8: NapDuLieu( )
9: SetData(DataTable, DataTable, DataTable)
10: ShowTCTK( )
15: ShowThongKe(DataTable)
b) Vẽ Activity Diagram:
- Vẽ Activity Diagram của use case nếu Sequence Diagram chưa mô tả đầy
đủ các luồng xử lý rẽ nhánh.
- Vẽ Activity Diagram cho các method phức tạp của các class trong use
case
4.3. Vẽ State Machine Diagram
Vẽ State Machine Diagram cho các object /class có trạng thái thay đổi
Nếu use case không có Object /Class nào có trạng thái cần mô tả thì bỏ qua
64
GVCN: Huỳnh Anh Tuấn
c) Bổ sung thuộc tính và method cho các class giao diện, điều khiển.
Class FormTKdiemLD
Thuộc tính Phương thức
65
GVCN: Huỳnh Anh Tuấn
ShowThongKe()
Class FormTCTKdiemLD
Thuộc tính Phương thức
ctTKdiemLD: ControllerTKdiemLD SetData()
btnThongKe_Click()
btnThoat_Click()
ThongBao()
ShowTCTK()
Class ControllerTKdiemLD
Thuộc tính Phương thức
formTKDiemLD: FormTKdiemLD Khoi Tao()
formTCTKdiemLD: XuLyThongKe()
FormTCTKdiemLD KetThucThongKe()
t_NienKhoa: T_NienKhoa
t_Hocki: T_Hocki
t_LopHoc: T_LopHoc
Class FormMain
Thuộc tính Phương thức
ctMain: ControllerMain ShowMain()
HienThiNut()
ChonTraCuuHS()
ChonXemSoDiem()
ChonTKdiemLD()
ChonTKdiemTK()
ChonQLSoDiem()
ChonCapNhatHS()
66
GVCN: Huỳnh Anh Tuấn
ChonCapNhatLop()
ChonQuanTriHT()
Class ControllerMain
Thuộc tính Phương thức
ctDangNhap: ControllerDangNhap RunDangNhap()
formMain: FormMain SetNguoiDung()
nguoiDung: Nguoi RunTraCuuHS()
RunXemSoDiem()
RunQLSoDiem()
RunCapNhatHS()
RunCapNhatLop()
RunTKdiemLD()
RunTKdiemTK()
RunQuan TriHT()
67
GVCN: Huỳnh Anh Tuấn
: Admin Actor : FormMain : ControllerMain : FormTKdiemTK : FormTCTKdiemTK : ControllerTKdiemTK : T_SoDiem : T_LopHoc : T_MonHoc : T_HocKi : T_NienKhoa
1: HienThiNut(str...
2: ShowMain( )
3: ChonTKdiemTK( )
4: RunTKdiemTK( )
5: KhoiTao( )
6: GetAllKhoi( )
7: NapDuLieu( )
8: NapDuLieu( )
9: NapDuLieu( )
10: SetData(DataTable, DataTable, DataTable, DataTable)
11: ShowTCTK( )
68
GVCN: Huỳnh Anh Tuấn
69
GVCN: Huỳnh Anh Tuấn
c) Bổ sung thuộc tính và method cho các class giao diện, điều khiển.
Class FormSoDiemCT
Thuộc tính Phương thức
ctQLSoDiem: ControllerQLSoDiem btnThem_Click()
dgvDanhSachDiem : DataGridView btnSua_Click()
cbMaDiem: ComboBox btnXoa_Click()
txt_giaTriDiem: double btnLuu_Click()
btnThoat_Click()
SetData()
ThongBao()
ResetForm()
DoiTrangThai()
ShowSoDiemCT()
GetTrangThai()
SetDataFromGrid()
Class ControllerQLSoDiem
Thuộc tính Phương thức
t_SoDiem: T_SoDiem Khoi Tao()
70
GVCN: Huỳnh Anh Tuấn
Class FormQLSoDiem
Thuộc tính Phương thức
CtQLSoDiem: ControllerQLSoDiem btnTimKiem_Click()
cbkhoi: ComboBox btnCapNhat_Click()
dgvDanhSachHS: DataGridView SetData()
ShowQLSoDiem()
ThongBao()
SetDataHS()
Class FormMain
Thuộc tính Phương thức
ctMain: ControllerMain ShowMain()
HienThiNut()
ChonTraCuuHS()
ChonXemSoDiem()
ChonTKdiemLD()
ChonTKdiemTK()
ChonQLSoDiem()
ChonCapNhatHS()
ChonCapNhatLop()
ChonQuanTriHT()
71
GVCN: Huỳnh Anh Tuấn
Class ControllerMain
Thuộc tính Phương thức
ctDangNhap: ControllerDangNhap RunDangNhap()
formMain: FormMain SetNguoiDung()
nguoiDung: Nguoi RunTraCuuHS()
RunXemSoDiem()
RunQLSoDiem()
RunCapNhatHS()
RunCapNhatLop()
RunTKdiemLD()
RunTKdiemTK()
RunQuanTriHT()
Sửa điểm
72
GVCN: Huỳnh Anh Tuấn
Xóa điểm
73
GVCN: Huỳnh Anh Tuấn
HocSinh
(from Enti ti es)
maHS : string
maPH : string
ControllerQLSoDiem T_HocSinh maLop : string
FormQLSoDiem
(from Control lers) (from Enti ti es)
(from Boundari es)
t_SoDiem : T_SoDiem
ctQLSoDiem : ControllerQLSoDiem formQLSoDiem : FormQLSoDiem NapDuLieu()
cbKhoi : ComboBox nienKhoa : NienKhoa ThemHS()
dgvDanhSachHS : DataGridView giaoVien : Nguoi SuaHS()
hocKi : HocKi T_HocKi XoaHS()
btnTimKiem_Click() t_HocSinh : T_HocSinh TimHS()
btnCapNhat_Click() (from Enti ti es)
t_MonHoc : T_MonHoc GetAllHStheoPH()
SetDataLop() monHoc : MonHoc GetAllHStheoLop()
ShowQLSoDiem() maHS : string NapDuLieu() GetAllHStheoTC()
ThongBao() GetHKhienTai() KiemTraThongTinHS()
SetDataHS() KhoiTao()
XuLyTimKiemSoDiem()
KetThucQLSoDiem()
XuLyThemDiem()
CapNhatDiem() HocKi
(from Enti ti es)
XuLySuaDiem()
XuLyXoaDiem() maHK : int
FormMain XuLyLuuDiem()
T_NienKhoa
(from QuanLy)
ControllerMain T_LopHoc (from Enti ti es)
ctMain : ControllerMain
(from QuanLy) (from Enti ti es)
ShowMain() NapDuLieu()
ctDangNhap : ControllerDangNhap
HienThiNut() GetNKchoSoDiem()
formMain : FormMain NapDuLieu()
ChonTraCuuHS() GetNKhienTai()
nguoiDung : Nguoi GetAllLHtheoGV()
ChonXemSoDiem() GetAllKhoi()
ChonTKdiemLD() RunDangNhap()
ChonTKdiemTK() SetNguoiDung() NienKhoa
ChonQLSoDiem() RunTraCuuHS()
(from Enti ti es)
ChonCapNhatHS() LopHoc maNK : string
RunXemSoDiem() (from Enti ti es)
ChonCapNhatLop() RunQLSoDiem()
ChonQuanTriHT() maLop : string
RunCapNhatHS()
khoi : int
RunCapNhatLop()
RunTKdiemLD()
RunTKdiemTK()
RunQuanTriHT()
KetQuaHocTap
(from Enti ties)
(from Boundaries)
NapDuLieu()
ctQLSoDiem : ControllerQLSoDiem
GetMHtheoGV()
cbKhoi : ComboBox
dgvDanhSachHS : DataGridView
btnTimKiem_Click()
btnCapNhat_Click()
SetDataLop()
ShowQLSoDiem()
ThongBao()
SetDataHS()
74
GVCN: Huỳnh Anh Tuấn
2: CapNhatDiem(string)
3: GetMHtheoGV(string)
6: SetData(DataTable)
7: DoiTrangThai(String)
8: ShowSoDiemCT( )
2: ShowMain( )
3: ChonTraCuuHS( )
4: RunTraCuuHS( )
5: KhoiTao( )
6: NapDuLieu( )
7: ShowTraCuuHS( )
9: XuLyTraCuu(string, string)
12: SetData(DataTable)
Thêm điểm
75
GVCN: Huỳnh Anh Tuấn
2: XuLyThemDiem( )
3: DoiTrangThai(String)
4: ResetForm( )
6: XuLyLuuDiem(string, string)
7: KiemTraRangBuocDiem(string)
9: ThemDiem(KetQuaHocTap)
11: GetSoDiemHS(string)
12: SetData(DataTable)
13: ThongBao(String)
14: DoiTrangThai(String)
Sửa điểm
76
GVCN: Huỳnh Anh Tuấn
2: XuLySuaDiem( )
3: DoiTrangThai(String)
4: SetDataDiem( )
6: XuLyLuuDiem(string, string)
7: KiemTraRangBuocDiem(string)
9: SuaDiem(KetQuaHocTap)
11: GetSoDiemHS(string)
12: SetData(DataTable)
13: ThongBao(String)
14: DoiTrangThai(String)
Xóa điểm
2: XuLyXoaDiem(string)
3: ThongBao(String)
5: XoaDiem(string)
7: GetSoDiemHS(string)
8: SetData(DataTable)
9: ThongBao(String)
b) Vẽ Activity Diagram:
Thêm điểm
77
GVCN: Huỳnh Anh Tuấn
Thong bao
thanh cong
Sửa điểm
78
GVCN: Huỳnh Anh Tuấn
Chon diem va
nhan nut sua
Thong bao
thanh cong
Xóa điểm
79
GVCN: Huỳnh Anh Tuấn
[Cancel]
[OK]
Xoa diem khoi
co so du lieu
Xem
Sua
80
GVCN: Huỳnh Anh Tuấn
81
GVCN: Huỳnh Anh Tuấn
c) Bổ sung thuộc tính và method cho các class giao diện, điều khiển.
Class FormCapNhatHS
Thuộc tính Phương thức
ctCapNhatHS: ControllerCapNhatHS ShowCapNhatHS()
maNguoi: string ResetForm()
hoTen: string btnThem_Click()
gioTinh: int btnSua_Click()
82
GVCN: Huỳnh Anh Tuấn
Class ControllerCapNhatHS
Thuộc tính Phương thức
formCapNhatHS: FormCapNhatHS KhoiTao()
t_Hoc Sinh: T_HocSinh XuLyThemHS()
hocSinh : HocSinh XuLySuaHS()
XuLyXoaHS()
KetThucCapNhatHS()
XuLyLuuHS()
GetData()
KiemTraThongTin()
Class FormXepLopGiaoVien
Thuộc tính Phương thức
ctCapNhatLop: btnxepLopHS_Click()
ControllerCapNhatLop btnxepLopGV_Click()
dgvDSLop: DataGridView btnThoat_Click()
SetDataLop()
SetData()
ShowCapNhatLop()
83
GVCN: Huỳnh Anh Tuấn
Class FormCapNhatLop
Thuộc tính Phương thức
ctCapNhatLop: btnXepLopHS_Click()
ControllerCapNhatLop btnxepLopGV_Click()
dgvDSLop: DataGridView btnThoat_Click()
SetDataLop()
SetData()
ShowCapNhatLop()
Class ControllerCapNhatLop
Thuộc tính Phương thức
formCapNhatLop: FormCapNhatLop Khoi Tao()
t_LopHoc : T_LopHoc KetThucCapNhatLop()
t_GiaoVien_Lophoc: CapNhatLop()
T_GiaoVien_LopHoc XuLyThemGV()
dtGiaoVienChuaCoTrongLop: XuLyXoaGV()
T_GiaoVien
dtGiaoVienDaCoTrongLop:
T_GiaoVien
lopHoc: LopHoc
Class FormMain
Thuộc tính Phương thức
ctMain: ControllerMain ShowMain()
HienThiNut()
ChonTraCuuHS()
ChonXemSoDiem()
ChonTKdiemLD()
ChonTKdiemTK()
ChonQLSoDiem()
ChonCapNhatHS()
84
GVCN: Huỳnh Anh Tuấn
ChonCapNhatLop()
ChonQuanTriHT()
Class ControllerMain
Thuộc tính Phương thức
ctDangNhap: ControllerDangNhap RunDangNhap()
formMain: FormMain SetNguoiDung()
nguoiDung: Nguoi RunTraCuuHS()
RunXemSoDiem()
RunQLSoDiem()
RunCapNhatHS()
RunCapNhatLop()
RunTKdiemLD()
RunTKdiemTK()
RunQuan TriHT()
85
GVCN: Huỳnh Anh Tuấn
86
GVCN: Huỳnh Anh Tuấn
2: ShowMain( )
3: ChonCapNhatHS( )
4: RunCapNhatHS( )
5: KhoiTao( )
6: NapDuLieu( )
7: NapDuLieu( )
8: NapDuLieu( )
9: SetData(DataTable, DataTable)
10: SetDataHS(DataTable)
11: DoiTrangThai(String)
12: ShowCapNhatHS( )
87
GVCN: Huỳnh Anh Tuấn
2: XuLyThemHS( )
3: DoiTrangThai(String)
4: ResetForm( )
6: XuLyLuuHS( )
7: GetDataHS( )
9: GetTrangThai( )
11: KiemTraThongTinHS(HocSinh)
13: TimPH(String)
15: ThemHS(HocSinh)
16: NapDuLieu( )
17: SetDataHS(DataTable)
18: ThongBao(string)
19: DoiTrangThai(String)
88
GVCN: Huỳnh Anh Tuấn
2: XuLySuaHS( )
3: GetGridData( )
5: SetDataFromGrid(DataGridViewRow)
6: DoiTrangThai(String)
8: XuLyLuuHS( )
9: GetDataHS( )
11: GetTrangThai( )
13: KiemTraThongTinHS(HocSinh)
15: TimPH(String)
17: SuaHS(HocSinh)
18: NapDuLieu( )
19: SetDataHS(DataTable)
20: ThongBao(string)
21: DoiTrangThai(String)
89
GVCN: Huỳnh Anh Tuấn
2: XuLyXoaHS( )
3: GetGridData( )
5: ThongBao(string)
7: XoaHS(string)
8: NapDuLieu( )
9: SetDataHS(DataTable)
10: ThongBao(string)
11: DoiTrangThai(String)
2: ShowMain( )
3: ChonCapNhatLop( )
4: RunCapNhatLop( )
5: KhoiTao( )
6: NapDuLieu( )
7: SetData(DataTable)
8: ShowCapNhatLop( )
90
GVCN: Huỳnh Anh Tuấn
3: ThemGVvaoLop(string, string)
4: GetAllGVchuaCoTrongLop(string)
5: GetAllGVdaCoTrongLop(string)
6: SetData(DataTable, DataTable)
2: CapNhatLop(string)
3: GetAllGVchuaCoTrongLop(string)
4: GetAllGVdaCoTrongLop(string)
5: SetData(DataTable, DataTable)
6: DoiTrangThai(string)
7: ShowXepLopGV( )
3: XoaGVkhoiLop(string, string)
4: GetAllGVchuaCoTrongLop(string)
5: GetAllGVdaCoTrongLop(string)
6: SetData(DataTable, DataTable)
b) Vẽ Activity Diagram:
Thêm học sinh
91
GVCN: Huỳnh Anh Tuấn
Thong bao loi Nhap cac thong tin [Nhan nut huy]
hoc sinh va nhan nut
[Nhan nut luu]
[Thieu thong tin hoac trung lap hoc sinh] [Khong bi loi]
[ Phu huynh
[Phu huynh khong ton tai]
co ton tai ]
Them hoc sinh
vao co so du lieu
Thong bao
thanh cong
92
GVCN: Huỳnh Anh Tuấn
[Thieu thong tin hoac trung lap hoc sinh] [Khong bi loi]
Kiem tra phu huynh co
ton tai hay khong
Thong bao
thanh cong
93
GVCN: Huỳnh Anh Tuấn
[Cancel]
[OK]
Thong bao
thanh cong
Xem
Sua
94
GVCN: Huỳnh Anh Tuấn
95
GVCN: Huỳnh Anh Tuấn
c) Bổ sung thuộc tính và method cho các class giao diện, điều khiển.
Class FormQuanTriHT
Thuộc tính Phương thức
ctQuanTriHT: ControllerQuanTriHT SetDataGV()
maNguoi: string SetDataPH()
hoTen: string ResetForm()
gioiTinh : string ThongBao()
ngaySinh : Date btnThem_Click()
diaChi: string btnSua_Click()
soDienThoai: string btnXoa_Click()
soCanCuoc: string btnThoat_Click()
loại : string DoiTrangThai()
namTuyenDung: int SetDataMH()
chuyenNganh : string ShowQuanTriHT()
dgVThongTin DataGridView GetData()
tenTaiKhoan: string SetDataND()
matkhau: string GetTrangThai()
GetDataGrid()
Class ControllerQuanTriHT
96
GVCN: Huỳnh Anh Tuấn
Class FormMain
Thuộc tính Phương thức
ctMain: ControllerMain ShowMain()
HienThiNut()
ChonTraCuuHS()
ChonXemSoDiem()
ChonTKdiemLD()
ChonTKdiemTK()
ChonQLSoDiem()
ChonCapNhatHS()
ChonCapNhatLop()
ChonQuanTriHT()
Class ControllerMain
Thuộc tính Phương thức
ctDangNhap: ControllerDangNhap RunDangNhap()
formMain: FormMain SetNguoiDung()
nguoiDung: Nguoi RunTraCuuHS()
RunXemSoDiem()
RunQLSoDiem()
97
GVCN: Huỳnh Anh Tuấn
RunCapNhatHS()
RunCapNhatLop()
RunTKdiemLD()
RunTKdiemTK()
RunQuan TriHT()
98
GVCN: Huỳnh Anh Tuấn
2: XuLyThem( )
3: GetTrangThai( )
5: DoiTrangThai(string)
6: ResetForm( )
7: Nhap thong tin va
nhan luu
8: XuLyLuu( )
9: GetData( )
10: thong tin tai khoan va
nguoi dung
11: KiemTraHopLe( )
16: ThemGV(GiaoVien)
17: ma nguoi
18: NapDuLieu( )
19: ThemTK(TaiKhoan)
20: NapDuLieu( )
21: ThongBao(string)
22: DoiTrangThai(string)
23: SetDataGV(DataTable)
99
GVCN: Huỳnh Anh Tuấn
2: XuLySua( )
3: GetTrangThai( )
5: DoiTrangThai(string)
6: GetDataGrid( )
8: TimTKtheoMaNguoi(string)
10: SetDataND( )
11: Nhap thong tin va
nhan luu
12: XuLyLuu( )
13: GetData( )
14: thong tin tai khoan va
nguoi dung
15: GetTrangThai( )
17: KiemTraHopLe( )
22: SuaGV(GiaoVien)
23: NapDuLieu( )
24: SuaTK(TaiKhoan)
25: NapDuLieu( )
26: SetDataGV(DataTable)
27: DoiTrangThai(string)
28: ThongBao(string)
100
GVCN: Huỳnh Anh Tuấn
2: XuLyXoa( )
3: GetDataGrid( )
5: ThongBao(string)
7: XoaNguoi(string)
8: NapDuLieu( )
9: SetDataGV(DataTable)
10: NapDuLieu( )
11: ThongBao(string)
: Admin Actor : FormMain : ControllerMain : FormQuanTriHT : ControllerQuanTriHT : T_GiaoVien : T_PhuHuynh : T_MonHoc : T_TaiKhoan
1: HienThiNut(string)
2: ShowMain( )
3: ChonQuanTriHT( )
4: RunQuanTriHT( )
5: KhoiTao( )
6: NapDuLieu( )
7: NapDuLieu( )
8: NapDuLieu( )
9: NapDuLieu( )
10: SetDataGV(DataTable)
11: SetDataPH(DataTable)
12: SetDataMH(DataTable)
13: DoiTrangThai(string)
14: ShowQuanTriHT( )
b) Vẽ Activity Diagram:
Thêm tài khoản
101
GVCN: Huỳnh Anh Tuấn
Chon them
Thong bao
thanh cong
102
GVCN: Huỳnh Anh Tuấn
Thong bao
thanh cong
103
GVCN: Huỳnh Anh Tuấn
[Cancel]
Xac nhan xoa
tai khoan
[OK]
Xoa nguoi ra khoi
bang nguoi
Thong bao
thanh cong
104
GVCN: Huỳnh Anh Tuấn
Them giao
vien
Nhan nut huy hoac Nhan nut them Nhan nut huy hoac sua thanh cong
them thanh cong
Sua giao
Xem giao
vien
vien
Nhan nut sua
Them phu
huynh
105
GVCN: Huỳnh Anh Tuấn
C. THIẾT KẾ
I. LÀM NGUYÊN MẪU GIAO DIỆN NGƯỜI DÙNG
- Usecase đăng nhập
106
GVCN: Huỳnh Anh Tuấn
107
GVCN: Huỳnh Anh Tuấn
108
GVCN: Huỳnh Anh Tuấn
109
GVCN: Huỳnh Anh Tuấn
110
GVCN: Huỳnh Anh Tuấn
111
GVCN: Huỳnh Anh Tuấn
112
GVCN: Huỳnh Anh Tuấn
113
GVCN: Huỳnh Anh Tuấn
<<subsystem>>
HeThong
Boundaries
(from HeThong)
Controllers
QuanLy
(from HeThong)
Entities
(from HeThong)
114
GVCN: Huỳnh Anh Tuấn
<<subsystem>>
ThongKe_BaoCao
Boundaries
(from ThongKe_BaoCao)
Controllers
(from ThongKe_BaoCao)
QuanLy
Entities
(from ThongKe_BaoCao)
- Vẽ Component Diagram
- Vẽ Deployment Diagram
III. THIẾT KẾ CHI TIẾT
1. Thiết kế lưu trữ
Kế thừa biểu đồ lớp thực thể đã có được ở Bước 3 để thiết kế cơ sở dữ liệu:
- Tạo mô hình ER từ biểu đồ class thực thể (gồm các class và liên kết giữa các
class)
- Ánh xạ sơ đồ ER sang mô hình quan hệ; Chuẩn hóa mô hình quan hệ
- Từng quan hệ được mô tả chi tiết theo dạng table
- Tạo script tạo niên khóa hằng năm
USE [msdb]
GO
115
GVCN: Huỳnh Anh Tuấn
END
116
GVCN: Huỳnh Anh Tuấn
+ FormCapNhatHS(partial class)
Phạm vi Kiểu dữ liệu/ kiểu Tên thuộc tính/ Giá trị Mô tả tóm tắt
truy cập trả về phương thức mặc
định/tham
117
GVCN: Huỳnh Anh Tuấn
số
private Label lblTenHocSinh Tên học Label Tên học sinh
sinh
private Label lblGioiTinh Giới tính Label Giới tính
private Label lblDiachi Địa chỉ Label Địa chỉ
private Label lblSoDienThoai Số điện Label Số điện thoại
thoại
private Label lblSoCanCuoc Số căn Label số căn cước
cước
private Label lblNgaySinh Ngày sinh Label Ngày sinh
private Label lblLop Lớp Label lớp
private TextBox tbTenHocSinh Textbox Tên học
sinh
private TextBox tbDiaChi
private TextBox tbSoDienThoai
private TextBox tbSoCanCuoc
private TextBox tbMaPhuHuynh
public FormCapNhatHS Controller Hàm khởi tạo
Cập nhật
học sinh
private CheckBox chbGioiTinh Nam Checkbox Giới tính
private DateTimePicker dtbNgaySinh Datetime ngày sinh
private ComboBox cbLop ComboBox Lớp
private Button btnThem Thêm Button thêm
private Button btnSua Sửa Button Sửa
private Button btnXoa Xóa Button Xóa
private Button btnLuu Lưu Button Lưu
private Button btnThoat Thoát Button Thoát
private DataGridView dgvDanhSachHS Danh sách học sinh
private DataGridView dgvDanhSachPH Danh sách phụ
huynh
public ControllerCapNhat _ctCapNhatHS Thuộc tính
HS ControllerCapNhat
HS
Private TrangThai _tt Hàm khởi tạo
public FormCapNhatHS Controller Hàm khởi tạo
CapNhat
HS
public ShowCapNhatHS Hàn khởi tạo không
chứa tham số
public void SetData DataTabl Hàm khởi tạo chứa
e dslh, tham số
DataTabl
e dsph
118
GVCN: Huỳnh Anh Tuấn
+ FormCapNhatLop
Phạm viKiểu dữ liệu/ kiểu trả Tên thuộc tính/ phương Giá trị mặc định/tham Mô tả
truy cậpvề thức số tóm tắt
private Label lblDanhSachLop Danh sách lớp Label
danh
sách
lớp
private DataGridView dgvDanhSach Danh
sách
lớp
private Button btnThoat Thoát Button
thoát
private Button btnXepLopGiaoVien Xếp lớp giáo viên Button
xếp lớp
giáo
viên
Public FormCapNhatLop:Form Kế
thừa từ
Form
Private ControllerCapNhatLop_capnhatlop Hàm
119
GVCN: Huỳnh Anh Tuấn
khởi
tạo
public FormCapNhatLop ControllerCapNhatLop Hàm
ct khởi
tạo
public void SetData DataTable dt Hàm
khởi
tạo có
tham số
public void ShowCapNhatLop Hàm
khởi
tạo
private void btnThoat_Click Nhấn
nút
thoát
khỏi
form
private void btnXepLopGiaoVien_Click Nhấn
nút xếp
lớp
+ FormQuanTriHT
Phạm vi Kiểu dữ liệu/ kiểu trả Tên thuộc tính/ phươngGiá trị mặc Mô tả tóm tắt
truy cập về thức định/tham
số
private Label lblTaiKhoan Tài khoản Label Tài khoản
private Label lblGioiTinh Giới tính Label Giới tính
private Label lblHoTen Họ tên Label Họ tên
private Label lblMatKhau Mật khẩu Label Mật khẩu
private Label lblDiachi Địa chỉ Label Địa chỉ
private Label lblSoDienThoai Số điện Label Số điện thoại
thoại
private Label lblSoCanCuoc Số căn cướcLabel số căn cước
private Label lblNgaySinh Ngày sinh Label Ngày sinh
private Label lbMonHoc Môn học Label Môn học
private TextBox tbHocTen Textbox Tên học sinh
private TextBox tbTaiKhoan Textbox Tài khoản
private TextBox tbMatKhau Textbox Mật khẩu
private TextBox tbDiaChi Textbox Địa chỉ
private TextBox tbSoDienThoai Textbox Số điện thoại
private TextBox tbSoCanCuoc Textbox Số căn cước
public FormCapNhatHS Controller Hàm khởi tạo
120
GVCN: Huỳnh Anh Tuấn
Cập nhật
học sinh
private CheckBox chbGioiTinh Nam Checkbox Giới tính
private DateTimePicker dtbNgaySinh Datetime ngày sinh
private ComboBox cbMonHoc ComboBox Môn học
private Button btnThem Thêm Button thêm
private Button btnSua Sửa Button Sửa
private Button btnXoa Xóa Button Xóa
private Button btnLuu Lưu Button Lưu
private Button btnThoat Thoát Button Thoát
private Button btnGiaoVien Giáo viên Button giáo viên
private Button btnPhuHuynh Phụ huynh Button phụ huynh
private DataGridView dgvDanhSach Danh sách phụ huynh
hoặc giáo viên
Public Void ResetForm Reset form
Public TrangThai GetTrangThai Hàm khởi tạo ko chứa
tham số
Public DialogResult ThongBao String Thông báo
message
Public Enum TrangThai
Private DataGridViewRow GetDataGrid Hàm khởi tạo
Private ControllerQuanTriHT_ctQuanTriHT
Public Void DoiTrangThai String tt Hàm khởi tạo chứa
tham số
Public Void SetDataMH Datatable dtHảm hởi tạo chứa
tham số
public void ResetForm Xóa trắng form
private void btnThem_Click Nhấn nút thêm
private void btnXoa_Click Nhấn nút xóa
private void btnSua_Click Nhấn nút sửa
private void btnLuu_Click Nhấn nút lưu
private void btnThoat_Click Thoát khỏi form đăng
nhập
private void btnGiaoVien_Click Nhấn nút chọn giáo
viên
private void btnPhuHuynh_Click Nhấn nút chọn phụ
huynh
- Namespace N13S_SLLDT.ThongKe_BaoCao.Boundaries:
+ TrangThai (public enum):
Tên danh mục Mô tả tóm tắt
Them Trạng thái thêm
Sua Trạng thái sửa
121
GVCN: Huỳnh Anh Tuấn
122
GVCN: Huỳnh Anh Tuấn
+ Sau đó thao tác chọn các phần muốn cài đặt, đặt mật khẩu cho tài khoản sa, thêm
tài khoản mặc định.
+ Bổ sung: cài đặt SSMS.
123
GVCN: Huỳnh Anh Tuấn
124
GVCN: Huỳnh Anh Tuấn
125
GVCN: Huỳnh Anh Tuấn
126
GVCN: Huỳnh Anh Tuấn
127
GVCN: Huỳnh Anh Tuấn
128
GVCN: Huỳnh Anh Tuấn
129