Donhu cầu thực tế, các bộ môn thuộc các khoa tại trường Đại học Công NghệThông Tin và Truyền Thông mỗi năm cần quản lý rất nhiều đề tài thực tập, việcquản lý đề tài thực tập của sinh viê
Trang 1ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌCCHUYÊN NGÀNH CÔNG NGHỆ THÔNG TIN
Trang 2Thái Nguyên, 06 - 2012
LỜI CAM ĐOAN
Em xin cam đoan những kết quả trong đồ án là sự nghiên cứu của em,không sao chép của ai Nội dung đồ án hoàn thành do em thực hiện dưới sựhướng dẫn tận tình của ThS Bùi Anh Tú và tham khảo, sử dụng tài liệu, thôngtin từ một số nguồn khác được trích dẫn trong phần tài liệu tham khảo Nếu có gìgiả dối em xin hoàn toàn chịu trách nhiệm
Em xin chịu trách nhiệm với nội dung đồ án trước Hội đồng phản biện
Sinh viênNguyễn Trọng Thể – Lớp CNPMK6BĐại học CNTT&TT – Đại học Thái Nguyên
Trang 3LỜI CẢM ƠN
Trước hết, em xin gửi lời cảm ơn chân thành đến thầy giáo ThS Bùi Anh
Tú, người đã trực tiếp hướng dẫn, bảo ban em trong suốt thời gian thực hiện đồ
án Được làm việc với thầy em tiếp thu được rất nhiều kiến thức mới và cách làmviệc thực tế Em cũng xin được gửi lời cảm ơn thầy giáo ThS Tô Hữu Nguyên
đã tạo điều kiện thuận lợi nhất giúp em khảo sát hệ thống và thu thập tài liệu liênquan trong đồ án
Em xin được gửi lời cảm ơn đến tập thể các thầy cô Trường Đại họccông nghệ thông tin và Truyền thông – Đại học Thái Nguyên nói chung cũng nhưcác thầy cô trong Bộ môn Công nghệ phần mềm nói riêng đã tận tình chỉ dạy cho
em tiếp thu được những kiến thức quan trọng để em có được nền tảng bước vàocuộc sống mới
Cuối cùng, em xin được gửi lời cảm ơn chân thành đến gia đình cũngnhư bạn bè đã luôn ủng hộ, động viên em để em có thể có điều kiện tốt nhất đểhọc tập
Em xin chân thành cảm ơn!
Trang 4MỤC LỤC
LỜI CAM ĐOAN 2
LỜI CẢM ƠN 3
MỤC LỤC 4
MỞ ĐẦU 7
DANH MỤC CÁC HÌNH 8
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 10
1.1 Tổng quan về UML (Unifield Modeling Language) 10
1.1.1 Khái niệm UML 10
1.1.2 Các thành phần của ngôn ngữ UML 10
1.2 Tổng quan về ASP.NET và mô hình 3 lớp 18
CHƯƠNG 2: KHẢO SÁT, PHÂN TÍCH, THIẾT KẾ HỆ THỐNG 22
2.1 Mô tả bài toán 22
2.2 Khảo sát hệ thống 24
2.3 Các tác nhân hệ thống 27
2.4 Mô tả các Use Case hệ thống 28
2.4.1 Cán bộ quản lý thực tập khoa 28
2.4.1.1 Đăng nhập 29
2.4.1.1 Xem danh sách sinh viên đăng ký 30
2.4.1.2 Phân công sinh viên về bộ môn 30
2.4.1.3 Nhập liệu từ Excel 31
2.4.1.4 Quản lý đợt thực tập 33
2.4.1.5 Quản lý thời gian thực tập 34
2.4.1.6 Quản lý tỉnh 35
2.4.1.7 Quản lý hệ đào tạo 36
2.4.1.8 Quản lý khóa đào tạo 37
2.4.1.9 Quản lý lớp 38
2.4.1.10 Quản lý bộ môn 39
2.4.1.11 Quản lý sinh viên 40
2.4.1.12 Quản lý người dùng 42
2.4.1.13 Thống kê 44
2.4.2 Cán bộ quản lý thực tập bộ môn 46
2.4.2.1 Đăng nhập 46
Trang 52.4.2.2 Phân công giảng viên hướng dẫn 47
2.4.2.3 Đề xuất hội đồng bảo vệ 48
2.4.2.4 Phân công giảng viên phản biện 49
2.4.2.5 Quản lý đề tài thực tập 50
2.4.2.6 Quản lý giảng viên 51
2.4.2.7 Quản lý nơi thực tập tốt nghiệp 53
2.4.2.8 Thanh toán thực tập 55
2.4.2.9 Thống kê 56
2.4.3 Giảng viên 57
2.4.3.1 Đăng nhập 57
2.4.3.2 Cập nhật đề tài thực tập 57
2.4.3.3 Nhận xét thực tập 58
2.4.3.4 Chấm điểm sinh viên 59
2.4.3.5 Cập nhật thông tin cá nhân 60
2.4.3.6 Quản lý trình độ ngoại ngữ 61
2.4.3.7 Quản lý bài báo khoa học 62
2.4.3.8 Quản lý quá trình công tác 63
2.4.3.9 Quản lý quá trình đào tạo 64
2.4.3.10 Quản lý đề tài khoa học 65
2.4.3.11 Thống kê 66
2.4.4 Sinh viên 66
2.4.4.1 Đăng nhập 67
2.4.4.2 Đăng ký giảng viên hướng dẫn 67
2.4.4.3 Đăng ký đề tài thực tập 68
2.4.4.4 Đăng ký cơ sở thực tập 69
2.4.4.5 Xem thông tin giảng viên 70
2.4.4.6 Thống kê 70
2.4.5 Biểu đồ lớp thực thể 71
2.4.6 Biểu đồ Diagram 71
2.4.7 Mô hình triển khai hệ thống 72
2.4.8 Một số bảng tiêu biểu trong cơ sở dữ liệu 73
CHƯƠNG 3: XÂY DỰNG DEMO PHẦN MỀM QUẢN LÝ ĐỀ TÀI THỰC TẬP 77
CHƯƠNG 4: KẾT LUẬN 81
4.1 Kết quả đạt được 81
Trang 64.2 Đánh giá kết quả 81 4.3 Kết luận 81 TÀI LIỆU THAM KHẢO 83
Trang 7MỞ ĐẦU
Với việc phát triển như vũ bão của công nghệ thông tin, các lĩnh vựctrong cuộc sống ngày càng được tin học hóa cả về chiều sâu và chiều rộng Donhu cầu thực tế, các bộ môn thuộc các khoa tại trường Đại học Công NghệThông Tin và Truyền Thông mỗi năm cần quản lý rất nhiều đề tài thực tập, việcquản lý đề tài thực tập của sinh viên, phân công giảng viên hướng dẫn, thống kêbáo cáo trước đây và bây giờ đều quản lý thủ công Nhằm hỗ trợ công tác quản lý
đề tài thực tập được tốt hơn và phục vụ việc áp dụng tin học hóa vào công tácquản lý việc xây dựng phần mềm hỗ trợ là rất cần thiết Với mục tiêu xây dựng
phần mềm Quản lý đề tài thực tập áp dụng quản lý đề tài thực tập cho văn
phòng khoa công nghệ thông tin và các bộ môn, em đã ứng dụng những kiến thứcđược học tập trên trường bao gồm: phân tích thiết kế hệ thống theo phương pháphướng đối tượng UML, lập trình phần mềm theo mô hình 3 lớp của công nghệASP.NET của Microsoft cùng với khả năng tự tìm hiểu công nghệ Ajaxtoolkit,Devexpress nhằm nâng cao hiểu quả trang web
Do kinh nghiệm tự nghiên cứu cũng như vốn kiến thức còn hạn chế nênviệc hoàn thành đề tài chắc chắn vẫn còn nhiều thiếu sót Em rất mong nhận được
sự giúp đỡ và đóng góp ý kiến của hội đồng và của các thầy cô giáo và các bạn
để đề tài em được hoàn thiện hơn
Thái Nguyên, ngày 08 tháng 06 năm 2012
Sinh viên thực hiệnNguyễn Trọng Thể – Lớp CNPMK6BĐại học CNTT&TT – Đại học Thái Nguyên
Trang 8DANH MỤC CÁC HÌNH
Hình 1.1 - Các View trong UML 11
Hình 2.1: Phiếu kết quả thực tập 24
Hình 2.2: Danh sách dự kiến phân công phản biện 24
Hình 2.3: Đề cương đề tài thực tập 24
Hình 2.4: Danh sách giảng viên hướng dẫn 25
Hình 2.5: Phiếu thực tập cơ sở 25
Hình 2.6: Phiếu tổng hợp thanh toán HD thực tập 25
Hình 2.7:Phiếu phân công hội đồng bảo vệ 26
Hình 2.8: Phiếu kết quả thực tập 26
Hình 2.9: Phiếu nhận xét kết quả thực tập 26
Hình 2.10: Phiếu phân công giảng viên hướng dẫn 27
Hình 2.11: Phiếu sinh viên nộp đề tài 27
Hình 2.12: Phiếu danh sách sinh viên 27
DANH MỤC CÁC BẢNG Bảng 2.1 - Bảng đề tài 73
Bảng 2.2 - Bảng sinh viên 74
Bảng 2.3 - Bảng thời gian thực tập 74
Bảng 2.4 - Bảng tổng hợp thanh toán 75
DANH MỤC CÁC BIỂU ĐỒ Biểu đồ 2.1: Biểu đồ các UC của tác nhân cán bộ quản lý thực tập khoa 28
Biểu đồ 2.2: Biểu đồ trình tự UC đăng nhập 30
Biểu đồ 2.3:Biểu đồ trình tự UC xem danh sách sinh viên đăng ký 30
Biều đồ 2.4: Biểu đồ trình tự UC phân công sinh viên cho bộ môn 31
Biểu đồ 2.5: Biểu đồ cộng tác UC phân công sinh viên cho bộ môn 32
Biểu đồ 2.6: Biểu đồ trình tự UC nhập liệu Excel 33
Biểu đồ 2.7: Biểu đồ cộng tác UC nhập liệu Excel 33
Biểu đồ 2.8: Biểu đồ trình tự thêm mới người dùng 44
Biểu đồ 2.12: Biểu đồ cộng tác UC thống kê cán bộ quản lý thực tập khoa 46
Biểu đồ 2.13: Biểu đồ các UC của cán bộ quản lý thực tập bộ môn 47
Trang 9Biểu đồ 2.14: Biểu đồ trình tự UC phân công giảng viên hướng dẫn 48
Biểu đồ 2.15: Biểu đồcộng tác UC phân công giảng viên hướng dẫn 48
Biểu đồ 2.16: Biểu đồ trình tự UC đề xuất hội đồng bảo vệ 49
Biểu đồ 2.17: Biểu đồ trình tự UC đề xuất hội đồng bảo vệ 49
Biểu đồ 2.18: Biểu đồ trình tự UC phân công giáo viên phản biện 50
Biểu đồ 2.19: Biểu đồ cộng tác UC phân công giáo viên phản biện 50
Biểu đồ 2.20: Biểu đồ trình tự thêm mới sinh viên 41
Biểu đồ 2.21: Biểu đồ trình tự sửa sinh viên 42
Biểu đồ 2.22: Biểu đồ trình tự xóa sinh viên 43
Biểu đồ 2.23: Biểu đồ trình tự thêm mới giảng viên 52
Biểu đồ 2.24: Biểu đồ trình tự sửa giảng viên 53
Biểu đồ 2.25: Biểu đồ trình tự xóa giảng viên 54
Biểu đồ 2.26: Biểu đồ trình tự UC thanh toán thực tập 56
Biểu đồ 2.27: Biểu đồ cộng tác UC thanh toán thực tập 56
Biểu đồ 2.28: Biểu đồ trình tự UC thống kê của cán bộ quản lý thực tập bộ môn .57
Biểu đồ 2.29: Biểu đồ các UC của tác nhân giảng viên 58
Biểu đồ 2.30: Biểu đồ trình tự UC nhận xét thực tập 59
Biểu đồ 2.30: Biểu đồ cộng tác UC nhận xét thực tập 59
Biểu đồ 2.31: Biểu đồ trình tự UC chấm điểm sinh viên 60
Biểu đồ 2.32: Biểu đồ trình tự UC đăng ký giảng viên hướng dẫn 69
Biểu đồ 2.32: Biểu đồ cộng tác UC đăng ký giảng viên hướng dẫn 69
Biểu đồ 2.33: Biểu đồ trình tự UC đăng ký giảng viên hướng dẫn 70
Biểu đồ 2.34: Biểu đồ cộng tác UC đăng ký giảng viên hướng dẫn 70
Biểu đồ 2.35:Biểu đồ trình tự UC xem thông tin giảng viên 71
Trang 10CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1 Tổng quan về UML (Unifield Modeling Language)
1.1.1 Khái niệm UML
UML là một ngôn ngữ mô hình hoá thống nhất có phần chính bao gồmnhững ký hiệu hình học, được các phương pháp hướng đối tượng sử dụng để thểhiện và miêu tả các thiết kế của một hệ thống Nó là một ngôn ngữ để đặc tả, trựcquan hoá, xây dựng và làm tài liệu cho nhiều khía cạnh khác nhau của một hệthống có tính chất phần mềm cao UML có thể được sử dụng làm công cụ giaotiếp giữa người dùng, nhà phân tích, nhà thiết kế và nhà phát triển phần mềm
Mục đích của việc xây dựng UML:
cần mô hình hoá
có nhiều ràng buộc khác nhau
dễ giao tiếp và dễ hiểu Mặc dù vậy, thường thì đây là chuyện bất khả thi Mộtbản vẽ không thể nắm bắt tất cả các thông tin cần thiết để miêu tả một hệ thống.Một hệ thống cần phải được miêu tả với một loạt các khía cạnh khác nhau: Vềmặt chức năng (cấu trúc tĩnh của nó cũng như các tương tác động), về mặt phi
Trang 11chức năng (yêu cầu về thời gian, về độ đáng tin cậy, về quá trình thực thi, v.v vàv.v.) cũng như về khía cạnh tổ chức (tổ chức làm việc, ánh xạ nó vào các codemodule, ) Vì vậy một hệ thống thường được miêu tả trong một loạt các khungnhìn khác nhau, mỗi khung nhìn sẽ thể hiện một bức ảnh ánh xạ của toàn bộ hệthống và chỉ ra một khía cạnh riêng của hệ thống.
Hình 1.1 - Các View trong UML
Mỗi một khung nhìn được miêu tả trong một loạt các biểu đồ, chứa đựngcác thông tin nêu bật khía cạnh đặc biệt đó của hệ thống Trong thực tế khi phântích và thiết kế rất dễ xảy ra sự trùng lặp thông tin, cho nên một biểu đồ trên thực
tế có thể là thành phần của nhiều khung nhìn khác nhau Khi nhìn hệ thống từnhiều khung nhìn khác nhau, tại một thời điểm có thể người ta chỉ tập trung vàomột khía cạnh của hệ thống Một biểu đồ trong một khung nhìn cụ thể nào đó cầnphải đủ độ đơn giản để tạo điều kiện giao tiếp dễ dàng, để dính liền với các biểu
đồ khác cũng như các khung nhìn khác, làm sao cho bức tranh toàn cảnh của hệthống được miêu tả bằng sự kết hợp tất cả các thông tin từ tất cả các khung nhìn.Một biểu đồ chứa các kí hiệu hình học mô tả các phần tử mô hình của hệ thống.UML có tất cả các khung nhìn sau:
- Khung nhìn Use case (use case view) : đây là khung nhìn chỉ ra khíacạnh chức năng của một hệ thống, nhìn từ khung tác nhân bên ngoài
Trang 12- Khung nhìn logic (logical view): chỉ ra chức năng sẽ được thiết kế bêntrong hệ thống như thế nào, qua các khái niệm về cấu trúc tĩnh cũng như ứng xửđộng của hệ thống.
- Khung nhìn thành phần (component view): chỉ ra khía cạnh tổ chức củacác thành phần code
- Khung nhìn song song (concurrency view): chỉ ra sự tồn tại song song/trùng hợp trong hệ thống, khung đến vấn đề giao tiếp và đồng bộ hóa trong hệthống
- Khung nhìn triển khai (deployment view): chỉ ra khía cạnh triển khai hệthống vào các kiến trúc vật lý (các máy tính hay trang thiết bị được coi là trạmcông tác)
Khi bạn chọn công cụ để vẽ biểu đồ, hãy chọn công cụ nào tạo điều kiện
dễ dàng chuyển từ khung nhìn này sang khung nhìn khác Ngoài ra, cho mục đíchquan sát một chức năng sẽ được thiết kế như thế nào, công cụ này cũng phải tạođiều kiện dễ dàng cho bạn chuyển sang khung nhìn Use case (để xem chức năngnày được miêu tả như thế nào từ phía tác nhân), hoặc chuyển sang khung nhìntriển khai (để xem chức năng này sẽ được phân bố ra sao trong cấu trúc vật lý -Nói một cách khác là nó có thể nằm trong máy tính nào)
Ngoài các khung nhìn kể trên, ngành công nghiệp phần mềm còn sử dụng
cả các khung nhìn khác, ví dụ khung nhìn tĩnh-động, khung nhìn logic-vật lý, quytrình nghiệp vụ (workflow) và các khung nhìn khác UML không yêu cầu chúng
ta phải sử dụng các khung nhìn này, nhưng đây cũng chính là những khung nhìn
mà các nhà thiết kế của UML đã nghĩ tới, nên có khả năng nhiều công cụ sẽ dựatrên các khung nhìn đó
- Khung nhìn Use case (Use case View):
Khung nhìn Use case miêu tả chức năng của hệ thống sẽ phải cung cấp
do được tác nhân từ bên ngoài mong đợi Tác nhân là thực thể tương tác với hệ
Trang 13thống; đó có thể là một người sử dụng hoặc là một hệ thống khác Khung nhìnUse case là khung nhìn dành cho khách hàng, nhà thiết kế, nhà phát triển vàngười thử nghiệm; nó được miêu tả qua các biểu đồ Use case (use case diagram)
và thỉnh thoảng cũng bao gồm cả các biểu đồ hoạt động (activity diagram) Cách
sử dụng hệ thống nhìn chung sẽ được miêu tả qua một loạt các Use case trongkhung nhìn Use case, nơi mỗi một Use case là một lời miêu tả mang tính đặc thùcho một tính năng của hệ thống (có nghĩa là một chức năng được mong đợi)
Khung nhìn Use case mang tính trung tâm, bởi nó đặt ra nội dung thúcđẩy sự phát triển các khung nhìn khác Mục tiêu chung của hệ thống là cung cấpcác chức năng miêu tả trong khung nhìn này – cùng với một vài các thuộc tínhmang tính phi chức năng khác – vì thế khung nhìn này có ảnh hưởng đến tất cảcác khung nhìn khác Khung nhìn này cũng được sử dụng để thẩm tra (verify) hệthống qua việc thử nghiệm xem khung nhìn Use case có đúng với mong đợi củakhách hàng (Hỏi: "Đây có phải là thứ bạn muốn") cũng như có đúng với hệ thốngvừa được hoàn thành (Hỏi: "Hệ thống có hoạt động như đã đặc tả?”)
- Khung nhìn logic (Logical View):
Khung nhìn logic miêu tả phương thức mà các chức năng của hệ thống sẽđược cung cấp Chủ yếu nó được sử dụng cho các nhà thiết kế và nhà phát triển.Ngược lại với khung nhìn Use case, khung nhìn logic nhìn vào phía bên trongcủa hệ thống Nó miêu tả kể cả cấu trúc tĩnh (lớp, đối tượng, và quan hệ) cũngnhư sự tương tác động sẽ xảy ra khi các đối tượng gửi thông điệp cho nhau đểcung cấp chức năng đã định sẵn Khung nhìn logic định nghĩa các thuộc tính nhưtrường tồn (persistency) hoặc song song (concurrency), cũng như các giao diệncũng như cấu trúc nội tại của các lớp
Cấu trúc tĩnh được miêu tả bằng các biểu đồ lớp (class diagram) và biểu
đồ đối tượng (object diagram) Quá trình mô hình hóa động được miêu tả trongcác biểu đồ trạng thái (state diagram), biểu đồ trình tự (sequence diagram), biểu
đồ tương tác (collaboration diagram) và biểu đồ hoạt động (activity diagram)
Trang 14- Khung nhìn thành phần (Component View):
Là một lời miêu tả của việc thực thi các modul cũng như sự phụ thuộcgiữa chúng với nhau Nó thường được sử dụng cho nhà phát triển và thường baogồm nhiều biểu đồ thành phần Thành phần ở đây là các modul lệnh thuộc nhiềuloại khác nhau, sẽ được chỉ ra trong biểu đồ cùng với cấu trúc cũng như sự phụthuộc của chúng Các thông tin bổ sung về các thành phần, ví dụ như vị trí của tàinguyên (trách nhiệm đối với một thành phần), hoặc các thông tin quản trị khác,
ví dụ như một bản báo cáo về tiến trình của công việc cũng có thể được bổ sungvào đây
- Khung nhìn song song (Concurrency View):
Khung nhìn song song nhắm tới sự chia hệ thống thành các qui trình(process) và các bộ xử lý (processor) Khía cạnh này, vốn là một thuộc tính phichức năng của hệ thống, cho phép chúng ta sử dụng một cách hữu hiệu các nguồntài nguyên, thực thi song song, cũng như xử lý các sự kiện không đồng bộ từ môitrường Bên cạnh việc chia hệ thống thành các tiểu trình có thể được thực thisong song, khung nhìn này cũng phải quan tâm đến vấn đề giao tiếp và đồng bộhóa các tiểu trình đó
Khung nhìn song song giành cho nhà phát triển và người tích hợp hệthống, nó bao gồm các biểu đồ động (trạng thái, trình tự, tương tác và hoạt động)cùng các biểu đồ thực thi (biểu đồ thành phần và biểu đồ triển khai)
- Khung nhìn triển khai (Deployment View):
Cuối cùng, khung nhìn triển khai chỉ cho chúng ta sơ đồ triển khai vềmặt vật lý của hệ thống, ví dụ như các máy tính cũng như các máy móc và sự liênkết giữa chúng với nhau Khung nhìn triển khai giành cho các nhà phát triển,người tích hợp cũng như người thử nghiệm hệ thống và được thể hiện bằng cácbiểu đồ triển khai Khung nhìn này cũng bao gồm sự ánh xạ các thành phần của
Trang 15hệ thống vào cấu trúc vật lý; ví dụ như chương trình nào hay đối tượng nào sẽđược thực thi trên máy tính nào.
b Biểu đồ (diagram)
Biểu đồ là các hình vẽ bao gồm các ký hiệu phần tử mô hình hóa đượcsắp xếp để minh họa một thành phần cụ thể hay một khía cạnh cụ thể của hệthống Một mô hình hệ thống thường có nhiều loại biểu đồ, mỗi loại có nhiềubiểu đồ khác nhau Một biểu đồ là một thành phần của một khung nhìn cụ thể; vàkhi được vẽ ra, nó thường thường cũng được xếp vào một khung nhìn Mặt khác,một số loại biểu đồ có thể là thành phần của nhiều khung nhìn khác nhau, tùythuộc vào nội dung của biểu đồ
- Biểu đồ Use case (Use Case Diagram):
Một biểu đồ Use case chỉ ra một số lượng các tác nhân ngoại cảnh vàmối liên kết của chúng đối với Use case mà hệ thống cung cấp Một Use case làmột lời miêu tả của một chức năng mà hệ thống cung cấp Lời miêu tả Use casethường là một văn bản tài liệu, nhưng kèm theo đó cũng có thể là một biểu đồhoạt động Các Use case được miêu tả duy nhất theo khung nhìn từ ngoài vào củacác tác nhân (hành vi của hệ thống theo như sự mong đợi của người sử dụng),không miêu tả chức năng được cung cấp sẽ hoạt động nội bộ bên trong hệ thống
ra sao Các Use case định nghĩa các yêu cầu về mặt chức năng đối với hệ thống
- Biểu đồ lớp (Class Diagram):
Một biểu đồ lớp chỉ ra cấu trúc tĩnh của các lớp trong hệ thống Các lớp
là đại diện cho các “vật” được xử lý trong hệ thống Các lớp có thể quan hệ vớinhau trong nhiều dạng thức: liên kết (associated - được nối kết với nhau), phụthuộc (dependent - một lớp này phụ thuộc vào lớp khác), chuyên biệt hóa(specialized - một lớp này là một kết quả chuyên biệt hóa của lớp khác), hayđóng gói ( packaged - hợp với nhau thành một đơn vị) Tất cả các mối quan hệ đóđều được thể hiện trong biểu đồ lớp, đi kèm với cấu trúc bên trong của các lớp
Trang 16theo khái niệm thuộc tính (attribute) và thủ tục (operation) Biểu đồ được coi làbiểu đồ tĩnh theo phương diện cấu trúc được miêu tả ở đây có hiệu lực tại bất kỳthời điểm nào trong toàn bộ vòng đời hệ thống.
Một hệ thống thường sẽ có một loạt các biểu đồ lớp – chẳng phải bao giờtất cả các biểu đồ lớp này cũng được nhập vào một biểu đồ lớp tổng thể duy nhất– và một lớp có thể tham gia vào nhiều biểu đồ lớp
- Biểu đồ đối tượng (Object Diagram):
Một biểu đồ đối tượng là một phiên bản của biểu đồ lớp và thường cũng
sử dụng các ký hiệu như biểu đồ lớp Sự khác biệt giữa hai loại biểu đồ này nằm
ở chỗ biểu đồ đối tượng chỉ ra một loạt các đối tượng thực thể của lớp, thay vìcác lớp Một biểu đồ đối tượng vì vậy là một ví dụ của biểu đồ lớp, chỉ ra mộtbức tranh thực tế có thể xảy ra khi hệ thống thực thi: bức tranh mà hệ thống cóthể có tại một thời điểm nào đó Biểu đồ đối tượng sử dụng chung các ký hiệucủa biểu đồ lớp, chỉ trừ hai ngoại lệ: đối tượng được viết với tên được gạch dưới
và tất cả các thực thể trong một mối quan hệ đều được chỉ ra
Biểu đồ đối tượng không quan trọng bằng biểu đồ lớp, chúng có thể được
sử dụng để ví dụ hóa một biểu đồ lớp phức tạp, chỉ ra với những thực thể cụ thể
và những mối quan hệ như thế thì bức tranh toàn cảnh sẽ ra sao Một biểu đồ đốitượng thường thường được sử dụng làm một thành phần của một biểu đồ cộngtác (collaboration), chỉ ra lối ứng xử động giữa một loạt các đối tượng
- Biểu đồ trạng thái (State Diagram):
Một biểu đồ trạng thái thường là một sự bổ sung cho lời miêu tả một lớp
Nó chỉ ra tất cả các trạng thái mà đối tượng của lớp này có thể có, và những sựkiện (event) nào sẽ gây ra sự thay đổi trạng thái Một sự kiện có thể xảy ra khimột đối tượng tự gửi thông điệp đến cho nó - ví dụ như để thông báo rằng mộtkhoảng thời gian được xác định đã qua đi – hay là một số điều kiện nào đó đã
được thỏa mãn Một sự thay đổi trạng thái được gọi là một sự chuyển đổi trạng
Trang 17thái (State Transition) Một chuyển đổi trạng thái cũng có thể có một hành động
liên quan, xác định điều gì phải được thực hiện khi sự chuyển đổi trạng thái nàydiễn ra
Biểu đồ trạng thái không được vẽ cho tất cả các lớp, mà chỉ riêng chonhững lớp có một số lượng các trạng thái được định nghĩa rõ ràng và hành vi củalớp bị ảnh hưởng và thay đổi qua các trạng thái khác nhau Biểu đồ trạng tháicũng có thể được vẽ cho hệ thống tổng thể
- Biểu đồ trình tự (Sequence Diagram):
Một biểu đồ trình tự chỉ ra một cộng tác động giữa một loạt các đốitượng Khía cạnh quan trọng của biểu đồ này là chỉ ra trình tự các thông điệp(message) được gửi giữa các đối tượng Nó cũng chỉ ra trình tự tương tác giữacác đối tượng, điều sẽ xảy ra tại một thời điểm cụ thể nào đó trong trình tự thựcthi của hệ thống Các biểu đồ trình tự chứa một loạt các đối tượng được biểu diễnbằng các đường thẳng đứng Trục thời gian có khung từ trên xuống dưới trongbiểu đồ, và biểu đồ chỉ ra sự trao đổi thông điệp giữa các đối tượng khi thời giantrôi qua Các thông điệp được biểu diễn bằng các đường gạch ngang gắn liền vớimũi tên (biểu thị thông điệp) nối liền giữa những đường thẳng đứng thể hiện đốitượng Trục thời gian cùng những lời nhận xét khác thường sẽ được đưa vàophần lề của biểu đồ
- Biểu đồ cộng tác (Collaboration Diagram):
Một biểu đồ cộng tác chỉ ra một sự cộng tác động, cũng giống như mộtbiểu đồ trình tự Thường người ta sẽ chọn hoặc dùng biểu đồ trình tự hoặc dùngbiểu đồ cộng tác Bên cạnh việc thể hiện sự trao đổi thông điệp (được gọi là
tương tác), biểu đồ cộng tác chỉ ra các đối tượng và quan hệ của chúng (nhiều khi
được gọi là ngữ cảnh) Việc nên sử dụng biểu đồ trình tự hay biểu đồ cộng tácthường sẽ được quyết định theo nguyên tắc chung sau: Nếu thời gian hay trình tự
là yếu tố quan trọng nhất cần phải nhấn mạnh thì hãy chọn biểu đồ cộng tác
Trang 181.2 Tổng quan về ASP.NET và mô hình 3 lớp
Trong phát triển ứng dụng, để dễ quản lý các thành phần của hệ thống,cũng như không bị ảnh hưởng bởi các thay đổi, người ta hay nhóm các thànhphần có cùng chức năng lại với nhau và phân chia trách nhiệm cho từng nhóm đểcông việc không bị chồng chéo và ảnh hưởng lẫn nhau Ví dụ trong một công ty
có từng phòng ban, mỗi phòng ban sẽ chịu trách nhiệm một công việc cụ thể nào
đó, phòng này không được can thiệp vào công việc nội bộ của phòng kia nhưPhòng tài chính thì chỉ phát lương, còn chuyện lấy tiền đâu phát cho các anhphòng Marketing thì các anh không cần biết Trong phát triển phần mềm, người
ta cũng áp dụng cách phân chia chức năng này Bạn sẽ nghe nói đến thuật ngữkiến trúc đa tầng/nhiều lớp, mỗi lớp sẽ thực hiện một chức năng nào đó, trong đó
mô hình 3 lớp là phổ biến nhất 3 lớp này là gì? Là Presentation, Business Logic,
và Data Access Các lớp này sẽ giao tiếp với nhau thông qua các dịchvụ(services) mà mỗi lớp cung cấp để tạo nên ứng dụng, lớp này cũng không cầnbiết bên trong lớp kia làm gì mà chỉ cần biết lớp kia cung cấp dịch vụ gì cho
Mô hình 3 lớp mà Microsoft đề nghị dùng cho các hệ thống phát triển trênnền NET như sau:
Trang 19Hình 1.8- Mô hình 3 lớp
Presentation Layer
Lớp này làm nhiệm vụ giao tiếp với người dùng cuối để thu thập dữ liệu
và hiển thị kết quả/dữ liệu thông qua các thành phần trong giao diện người sửdụng Lớp này sẽ sử dụng các dịch vụ do lớp Business Logic cung cấp.Trong NET thì bạn có thể dùng Windows Forms, ASP.NET hay Mobile Forms
để hiện thực lớp này.Trong lớp này có 2 thành phần chính là User InterfaceComponents và User Interface Process Components:
UI Components là những phần tử chịu trách nhiệm thu thập và hiển thịthông tin cho người dùng cuối Trong ASP.NET thì những thành phần này có thể
là các TextBox, các Button, DataGrid…
UI Process Components: là thành phần chịu trách nhiệm quản lý các quitrình chuyển đổi giữa các UI Components Ví dụ chịu trách nhiệm quản lý cácmàn hình nhập dữ liệu trong một loạt các thao tác định trước như các bước trongmột Wizard…
Lưu ý : lớp này không nên sử dụng trực tiếp các dịch vụ của lớp DataAccess mà nên sử dụng thông qua các dịch vụ của lớp Business Logic vì khi bạn
Trang 20sử dụng trực tiếp như vậy, bạn có thể bỏ qua các ràng buộc, các logic nghiệp vụ
Business Logic Layer
Lớp này thực hiện các nghiệp vụ chính của hệ thống, sử dụng các dịch
vụ do lớp Data Access cung cấp, và cung cấp các dịch vụ cho lớp Presentation.Lớp này cũng có thể sử dụng các dịch vụ của các nhà cung cấp thứ 3 (3rd parties)
để thực hiện công việc của mình(ví dụ như sử dụng dịch vụ của các cổng thanhtóan trực tuyến như VeriSign, Paypal…).Trong lớp này có các thành phần chính
là Business Components, Business Entities và Service Interface
Service Interface là giao diện lập trình mà lớp này cung cấp cho lớpPresentation sử dụng Lớp Presentation chỉ cần biết các dịch vụ thông qua giaodiện này mà không cần phải quan tâm đến bên trong lớp này được hiện thực nhưthế nào
Business Entities là những thực thể mô tả những đối tượng thông tin mà
hệ thống xử lý Trong ứng dụng chúng ta các đối tượng này là các chuyênmục(Category) và bản tin(News) Các business entities này cũng được dùng đểtrao đổi thông tin giữa lớp Presentation và lớp Data Access
Business Components là những thành phần chính thực hiện các dịch vụ
mà Service Interface cung cấp, chịu trách nhiệm kiểm tra các ràng buộclogic(constraints), các qui tắc nghiệp vụ(business rules), sử dụng các dịch vụ bênngoài khác để thực hiện các yêu cầu của ứng dụng
Trong ứng dụng của chúng ta, lớp này sẽ chứa các thành phần làCategoryService và NewsService làm nhiệm vụ cung cấp các dịch vụ quản lýchuyên mục và các bản tin (thêm, xóa, sửa, xem chi tiết, lấy danh sách…)
Data Access Layer
Lớp này thực hiện các nghiệp vụ liên quan đến lưu trữ và truy xuất dữliệu của ứng dụng Thường lớp này sẽ sử dụng các dịch vụ của các hệ quản trị cơ
sở dữ liệu như SQL Server, Oracle,… để thực hiện nhiệm vụ của mình Tronglớp này có các thành phần chính là Data Access Logic, Data Sources, ServiveAgents)
Trang 21Data Access Logic components (DALC) là thành phần chính chịu tráchnhiệm lưu trữ vào và truy xuất dữ liệu từ các nguồn dữ liệu – Data Sources nhưRDMBS, XML, File systems… Trong NET Các DALC này thường được hiệnthực bằng cách sử dụng thư viện ADO.NET để giao tiếp với các hệ cơ sở dữ liệuhoặc sử dụng các O/R Mapping Frameworks để thực hiện việc ánh xạ các đốitượng trong bộ nhớ thành dữ liệu lưu trữ trong CSDL Chúng ta sẽ tìm hiểu cácthư viện O/R Mapping này trong một bài viết khác.
Service Agents là những thành phần trợ giúp việc truy xuất các dịch vụbên ngòai một cách dễ dàng và đơn giản như truy xuất các dịch vụ nội tại
Trang 22CHƯƠNG 2: KHẢO SÁT, PHÂN TÍCH, THIẾT KẾ HỆ THỐNG
2.1 Mô tả bài toán
Mỗi đợt thực tập, phòng đào tạo sẽ lập danh sách sinh viên thực tập gửi vănphòng khoa Văn phòng khoa sẽ gửi thông tin về đợt thực tập cho giáo viên chủnhiệm lớp Giáo viên chủ nhiệm lớp có trách nhiệm thông báo đến sinh viênthuộc lớp mình chủ nhiệm Sinh viên cần đăng ký giảng viên theo thời hạn đề racủa văn phòng khoa Khi hết hạn đăng ký giảng viên hướng dẫn, Cán bộ quản lýthực tập khoa sẽ thống kê và phân công sinh viên về các bộ môn theo chỉ tiêu đãđược đề ra Các bộ quản lý bộ môn sẽ phân công giảng viên hướng dẫn theo đơnđăng ký của sinh viên và theo số lượng sinh viên đối với từng giảng viên Sinhviên sau đó sẽ liên hệ với giảng viên được phân công nhận đề tài thực tập và làm
đề cương đề tài thực tập nộp lại cho bộ môn Bộ môn và văn phòng khoa sẽ xétduyệt đề tài thực tập của sinh viên Sinh viên nhận đề tài và thực hiện đề tài theotiến độ đã đăng ký Trong quá trình thực hiện đề tài, sinh viên cần báo cáo tiến độthực hiện theo định kỳ với giáo viên hướng dẫn và bộ môn Sinh viên sẽ nộp lạibáo cáo đề tài thực tập cho về bộ môn theo thời hạn đã định trước của đợt thựctập Kết thúc thực tập, cán bộ văn phòng khoa, cán bộ quản lý bộ môn, giảngviên và sinh viên cần thống kê các thông tin về đợt thực tập
Cán bộ quản lý thực tập khoa cần: nhận đăng ký giảng viên từ sinh viên,phân công số lượng sinh viên về các bộ môn, quản lý tỉnh, hệ đào tạo, khóa đàotạo, lớp thực tập và sinh viên thực tập, quản lý đợt thực tập và thời gian thựctập… Cán bộ văn phòng khoa cũng cần thống kê điểm thực tập của sinh viên Hệthống cần hỗ trợ cán bộ văn phòng khoa nhập liệu từ hệ thống bên ngoài, cụ thể
là nhập liệu từ Excel
Cán bộ quản lý thực tập bộ môn cần phân công giảng viên hướng dẫn, quản
lý thanh toán thực tập, phân công hội đồng bảo vệ, phân công giáo viên phảnbiện, quản lý đề tài thực tập và điểm thực tập của sinh viên Cán bộ quản lý thựctập bộ môn cần quản lý các thông tin về sinh viên, giảng viên, cơ sở thực tập củasinh viên Cuối mỗi đợt thực tập, Cán bộ quản lý thực tập bộ môn cần thống kêdanh sách sinh viên thực tập theo lớp, theo đợt thực tập, theo khóa học, theo giáo
Trang 23viên hướng dẫn, danh sách sinh viên nộp đề cương thực tập, danh sách sinh viênđang thực tập, danh sách sinh viên được/ không được bảo vệ đề tài, danh sáchsinh viên bảo vệ lần 2, danh sách sinh viên thực tập lại, danh sách giáo viênhướng dẫn, lập sổ theo dõi thực tập, tổng hợp thanh toán khối lượng hướng dẫnthực tập cho từng giảng viên.
Giáo viên hướng dẫn cần lập phiếu nhận xét kết quả thực tập cho bộ môntrong đó nhận xét sinh viên có đủ điều kiện báo cáo thực tập hay không Giáoviên hướng dẫn cần quản lý thông tin cá nhân như: trình độ ngoại ngữ, các bàibáo khoa học, quá trình đào tạo, quá trình công tác, và các đề tài nghiên cứu khoahọc cấp trường, cấp bộ… Giảng viên cần chấm điểm cho sinh viên tại từng đợtthực tập Tại thời điểm thực tập, giáo viên hướng dẫn cần thống kê các thông tin:danh sách sinh viên đang hướng dẫn, hướng dẫn những hệ nào, trong khoa hayngoài khoa, danh sách lớp hướng dẫn, danh sách đề tài hướng dẫn Cuối học kỳ,cuối năm học giáo viên hướng dẫn cần biết các thông tin: Danh sách hệ hướngdẫn, hướng dẫn bao nhiêu sinh viên, trong khoa hay ngoài khoa, danh sách đề tàihướng dẫn, danh sách lớp hướng dẫn
Sinh viên cần đăng ký giảng viên hướng dẫn, đề tài thực tập, cơ sở thựctập, báo cáo tiến độ thực tập Sinh viên cần thống kê điểm thực tập và đề tài thựctập hiện tại mình đang làm Được phép xem thông tin công khai về giảng viên Với mỗi đợt thực tập, giảng viên có thể không cho sinh viên bảo vệ đề tàinếu trong quá trình làm đề tài sinh viên không liên lạc với giảng viên hoặc khôngbáo cáo tiến độ thực hiện, chất lượng đề tài không tốt Những sinh viên đượcgiảng viên nhận xét không được bảo vệ sẽ phải thực tập lại Khi báo cáo đề tài,những đề tài dưới 5 điểm sẽ phải báo cáo lại Trong trường hợp, sinh viên đã báocáo lại nhưng không qua phải thực tập lại Quy trình thực tập lần 2 cũng giốngquy trình thực tập lần 1
Trang 25Hình 2.4: Danh sách giảng viên hướng dẫn
Hình 2.5: Phiếu thực tập cơ sở
Hình 2.6: Phiếu tổng hợp thanh toán HD thực tập
Trang 26Hình 2.7:Phiếu phân công hội đồng bảo vệ
Hình 2.8: Phiếu kết quả thực tập
Hình 2.9: Phiếu nhận xét kết quả thực tập
Trang 27Hình 2.10: Phiếu phân công giảng viên hướng dẫn
Hình 2.11: Phiếu sinh viên nộp đề tài
Hình 2.12: Phiếu danh sách sinh viên
2.3 Các tác nhân hệ thống
Cán bộ văn phòng khoa có các chức năng: Đăng nhập, Quản lý tỉnh, Quản lý
hệ đào tạo, Quản lý khóa đào tạo, Quản lý lớp, Quản lý bộ môn, Quản lý ngườidùng, Nhập liệu từ excel, Xem danh sách sinh viên đăng ký giảng viên, Phân
Trang 28công sinh viên về bộ môn, Quản lý đợt thực tập, Quản lý thời gian thực tập,Thống kê
Cán bộ quản lý thực tập bộ môn có các chức năng: Đăng nhập, Phân cônggiảng viên hướng dẫn, Phân công giảng viên phản biện, Phân công hội đồng bảo
vệ, Quản lý sinh viên, Quản lý đề tài thực tập, Quản lý điểm thực tập, Quản lý cơ
sở thực tập, Quản lý giảng viên, Quản lý người dùng, Thống kê, Thanh toán thựctập
Giảng viên có các chức năng: Đăng nhập, Nhận xét thực tập, Chấm điểm sinhviên, Quản lý thông tin cá nhân, Quản lý trình độ ngoại ngữ, Quản lý bài báokhoa học, Quản lý quá trình đào tạo, Quản lý quá trình công tác, Quản lý đề tàinghiên cứu khoa học, Thống kê
Sinh viên có các chức năng: Đăng nhập, Đăng ký giảng viên hướng dẫn,Đăng ký đề tài thực tập, Đăng ký cơ sở thực tập, Báo cáo tiến độ, Thống kê, Xemthông tin giảng viên
2.4 Mô tả các Use Case hệ thống
2.4.1 Cán bộ quản lý thực tập khoa
Biểu đồ 2.1: Biểu đồ các UC của tác nhân cán bộ quản lý thực tập khoa
Trang 292.4.1.1Đăng nhập
Mục đích: uc “Đăng nhập” cho phép Cán bộ quản lý thực tập khoa đăng nhập vào hệ thống
Luồng sự kiện chính:
khẩu, chọn kiểu người dùng
Kết quả: uc thực hiện xong cho phép Cán bộ quản lý thực tập khoa đăng nhập vào hệ thống
Biểu đồ trình tự:
Biểu đồ 2.2: Biểu đồ trình tự UC đăng nhập
Trang 302.4.1.1 Xem danh sách sinh viên đăng ký
Mục đích: UC giúp Cán bộ quản lý thực tập khoa xem danh sách sinh viên đăng
ký giảng viên hướng dẫn
Biểu đồ 2.3:Biểu đồ trình tự UC xem danh sách sinh viên đăng ký
2.4.1.2 Phân công sinh viên về bộ môn
Mục đích: UC giúp Cán bộ quản lý thực tập khoa phân công sinh viên về các bộ môn
Luồng sự kiện chính
môn
cả sinh viên đã đăng ký giảng viên hướng dẫn cũng như sinh viên chưađăng ký giảng viên hướng dẫn
luồng sự kiện phụ
Trang 31sinh viên đã đăng ký giảng viên hướng dẫn ở bộ môn đó.
Luồng sự kiện phụ: Cán bộ quản lý văn phòng khoa, không nhập số lượng sinh viên cho từng bộ môn
viên về các bộ môn tương ứng
Kết quả: tất cả các sinh viên được phân công về các bộ môn thuộc khoa
Trang 32 Hệ thống yêu cầu cán bộ chọn lớp muốn nhập sinh viên
sách sinh viên vào hệ thống Yêu cầu cán bộ xác nhận lại
Trang 33Mục đích: UC giúp Cán bộ quản lý thực tập khoa quản lý đợt thực tập như thêm, sửa, xóa đợt thực tập.
Luồng sự kiện chính
có thực hiện luồng sự kiện phụ A1
kiện phụ A2) hoặc xóa thông tin đợt thực tập (thực hiện luồng sự kiện A3)
Luồng sự kiện A1: Thêm mới đợt thực tập
thực tập và lưu lại thông tin đợt thực tập
Nếu tồn tại, hệ thống sẽ cảnh báo cán bộ quản lý văn phòng khoa Nếuchưa tồn tại, hệ thống sẽ lưu lại thông tin đợt thực tập
Luồng sự kiện A2: Sửa thông tin đợt thực tập
hệ thống
Luồng sự kiện A3: Xóa thông tin đợt thực tập
Trang 34Kết quả: hệ thống cho phép Cán bộ quản lý thực tập khoa thêm mới, sửa, xóa đợtthực tập
2.4.1.5 Quản lý thời gian thực tập
Mục đích: UC giúp Cán bộ quản lý thực tập khoa quản lý thời gian thực tập như thêm, sửa, xóa thời gian thực tập
Luồng sự kiện chính
Nếu chưa có thực hiện luồng sự kiện phụ A1
sự kiện phụ A2) hoặc xóa thông tin thời gian thực tập (thực hiện luồng sựkiện A3)
Luồng sự kiện A1: Thêm mới thời gian thực tập
tuần thực tập và lưu lại thông tin thời gian thực tập
phù hợp, hệ thống sẽ cảnh báo cán bộ quản lý văn phòng khoa Nếu phùhợp, hệ thống sẽ lưu lại thông tin thời gian thực tập
Luồng sự kiện A2: Sửa thông tin thời gian thực tập
tập
Trang 35 Cán bộ quản lý thực tập khoa chọn chức năng xóa thông tin thời gian thựctập
hiện luồng sự kiện phụ A1
Luồng sự kiện A1: Thêm mới tỉnh
tin tỉnh
tại, hệ thống sẽ cảnh báo cán bộ quản lý văn phòng khoa Nếu chưa tồntại, hệ thống sẽ lưu lại thông tin tỉnh
Luồng sự kiện A2: Xóa thông tin tỉnh
Trang 36 Hệ thống xóa thông tin liên quan đến tỉnh được chọn
Kết quả: hệ thống cho phép Cán bộ quản lý thực tập khoa thêm mới, xóa tỉnh
2.4.1.7 Quản lý hệ đào tạo
Mục đích: UC giúp Cán bộ quản lý thực tập khoa quản lý hệ đào tạo như thêm, sửa, xóa hệ đào tạo
Luồng sự kiện chính
có thực hiện luồng sự kiện phụ A1
phụ A2) hoặc xóa thông tin hệ đào tạo (thực hiện luồng sự kiện A3)
Luồng sự kiện A1: Thêm mới hệ đào tạo
và lưu lại thông tin hệ đào tạo
tồn tại, hệ thống sẽ cảnh báo cán bộ quản lý văn phòng khoa Nếu chưatồn tại, hệ thống sẽ lưu lại thông tin hệ đào tạo
Luồng sự kiện A2: Sửa thông tin hệ đào tạo
hệ thống
Luồng sự kiện A3: Xóa thông tin hệ đào tạo
Trang 37 Hệ thống hiển thị thông báo xác nhận xóa thông tin hệ đào tạo
Kết quả: hệ thống cho phép Cán bộ quản lý thực tập khoa thêm mới, sửa, xóa hệ đào tạo
2.4.1.8 Quản lý khóa đào tạo
Mục đích: UC giúp Cán bộ quản lý thực tập khoa quản lý khóa đào tạo như thêm,sửa, xóa khóa đào tạo
Luồng sự kiện chính
chưa có thực hiện luồng sự kiện phụ A1
kiện phụ A2) hoặc xóa thông tin khóa đào tạo (thực hiện luồng sự kiệnA3)
Luồng sự kiện A1: Thêm mới khóa đào tạo
đào tạo và lưu lại thông tin khóa đào tạo
Nếu tồn tại, hệ thống sẽ cảnh báo cán bộ quản lý văn phòng khoa Nếuchưa tồn tại, hệ thống sẽ lưu lại thông tin khóa đào tạo
Luồng sự kiện A2: Sửa thông tin khóa đào tạo
hệ thống
Trang 38 Hệ thống lưu lại các thay đổi của cán bộ quản lý văn phòng khoa
Luồng sự kiện A3: Xóa thông tin khóa đào tạo
hiện luồng sự kiện phụ A1
Luồng sự kiện A1: Thêm mới lớp
đào tạo, nhập tên lớp và lưu lại thông tin lớp
tại, hệ thống sẽ cảnh báo cán bộ quản lý văn phòng khoa Nếu chưa tồntại, hệ thống sẽ lưu lại thông tin lớp
Luồng sự kiện A2: Xóa thông tin lớp
Trang 39 Cán bộ quản lý thực tập khoa xác nhận muốn xóa thông tin lớp
thực hiện luồng sự kiện phụ A1
A2)
Luồng sự kiện A1: Thêm mới bộ môn
lưu lại thông tin bộ môn
tồn tại, hệ thống sẽ cảnh báo cán bộ quản lý văn phòng khoa Nếu chưatồn tại, hệ thống sẽ lưu lại thông tin bộ môn
Luồng sự kiện A2: Xóa thông tin bộ môn
Kết quả: hệ thống cho phép Cán bộ quản lý thực tập khoa thêm mới, sửa, xóa bộ môn
Trang 402.4.1.11 Quản lý sinh viên
Mục đích: UC giúp Cán bộ quản lý thực tập bộ môn quản lý đề tài thực tập của sinh viên như thêm, sửa, xóa sinh viên
Luồng sự kiện chính
thực hiện luồng sự kiện phụ A1
phụ A2) hoặc xóa thông tin sinh viên (thực hiện luồng sự kiện A3)
Luồng sự kiện A1: Thêm mới sinh viên
viên, ngày sinh, địa chỉ và lưu lại thông tin sinh viên
tồn tại, hệ thống sẽ cảnh báo cán bộ quản lý bộ môn Nếu chưa tồn tại, hệthống sẽ lưu lại thông tin sinh viên
Biểu đồ 2.20: Biểu đồ trình tự thêm mới sinh viên