ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
----------------------*----------------------
LƯƠNG TIẾN CHUNG
HỆ THỐNG DỊCH VỤ WEB HỖ TRỢ CÔNG TÁC
ĐĂNG KÝ VÀ THEO DÕI LỚP HỌC TRONG HỆ
THỐNG ĐÀO TẠO TÍN CHỈ
LUẬN VĂN THẠC SĨ
HÀ NỘI 2013
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
----------------------*----------------------
LƯƠNG TIẾN CHUNG
HỆ THỐNG DỊCH VỤ WEB HỖ TRỢ CÔNG TÁC
ĐĂNG KÝ VÀ THEO DÕI LỚP HỌC TRONG HỆ
THỐNG ĐÀO TẠO TÍN CHỈ
Ngành: CÔNG NGHỆ THÔNG TIN
Chuyên ngành: CÔNG NGHỆ PHẦN MỀM
Mã số: 60 48 10
LUẬN VĂN THẠC SĨ
Người hướng dẫn khoa học
PGS.TS. NGUYỄN VĂN VỴ
HÀ NỘI 2013
iii
MỤC LỤC
LỜI CAM ĐOAN ......................................................................................................................ii
BẢNG CÁC CHỮ VIẾT TẮT ................................................................................................vii
DANH MỤC HÌNH ẢNH ..................................................................................................... viii
DANH MỤC BẢNG BIỂU ....................................................................................................... x
CHƯƠNG I – MÔ TẢ BÀI TOÁN VÀ GIẢI PHÁP................................................................ 2
1.1 Bài toán đăng ký môn học trong đào tạo tín chỉ............................................................... 2
1.2 Các vấn đề còn tồn tại ...................................................................................................... 2
1.3 Giải pháp .......................................................................................................................... 3
CHƯƠNG II - CÔNG NGHỆ, PHƯƠNG PHÁP VÀ CÔNG CỤ THỰC HIỆN ..................... 4
2.1 Công nghệ Web services .................................................................................................. 4
2.1.1 Web services là gì ? ................................................................................................... 4
2.1.2 Đặc điểm của Web services ....................................................................................... 4
2.1.3 Kiến trúc của Web services ....................................................................................... 4
2.1.4 Các thành phần của Web services ............................................................................. 5
2.2 Công cụ Visual Studio và .NET Framework.................................................................. 11
2.2.1 Giới thiệu về công cụ Visual Studio ........................................................................ 11
2.2.2 Môi trường .NET Framework .................................................................................. 11
2.3 SQL Server ..................................................................................................................... 11
2.3.1 Giới thiệu về SQL Server ........................................................................................ 11
2.3.2 Đặc điểm của SQL Server ....................................................................................... 11
CHƯƠNG III – PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG ................................................... 12
3.1 Đặc tả hệ thống ............................................................................................................... 12
3.1.1 Các chức năng nghiệp vụ của hệ thống ................................................................... 12
3.1.2 Các đối tượng nghiệp vụ.......................................................................................... 17
3.1.3 Các tác nhân nghiệp vụ ............................................................................................ 18
3.1.4 Biểu đồ miền lĩnh vực của hệ thống ........................................................................ 19
3.1.5 Các tiến trình nghiệp vụ của hệ thống ..................................................................... 20
3.1.6 Từ điển giải thích ..................................................................................................... 20
3.2 Phát triển mô hình ca sử dụng ........................................................................................ 21
3.2.1 Xác định các ca sử dụng .......................................................................................... 21
3.2.2 Mô hình ca sử dụng mức gộp .................................................................................. 21
3.2.3 Mô hình chi tiết các gói ca sử dụng ......................................................................... 21
iv
3.3 Phân tích ca sử dụng....................................................................................................... 34
3.3.1 Gói ca sử dụng Cập nhật thông tin đào tạo .............................................................. 34
3.3.2 Gói ca sử dụng Lập danh sách lớp tín chỉ ............................................................... 39
3.3.3 Gói ca sử dụng Đăng ký lớp tín chỉ ......................................................................... 46
3.3.4 Gói ca sử dụng Tổ chức dạy và học ........................................................................ 54
3.4 Kiến trúc hệ thống vật lý ................................................................................................ 58
3.4.1 Thiết kế kiến trúc hệ thống vật lý mức tổng quan ................................................... 58
3.4.2 Quy trình hoạt động ................................................................................................. 59
3.4.3 Công cụ phát triển và môi trường phát triển............................................................ 60
3.5 Thiết kế hệ thống đăng ký và theo dõi hoạt động lớp tín chỉ ......................................... 61
3.5.1 Biểu đồ lớp thiết kế của hệ thống ............................................................................ 61
3.5.2 Xác định các gói thiết kế ......................................................................................... 61
3.5.3 Thiết kế cho từng ca sử dụng ................................................................................... 62
CHƯƠNG IV – CÀI ĐẶT VÀ THỬ NGHIỆM HỆ THỐNG ................................................ 71
4.1 Kiến trúc logic hệ thống web services ........................................................................... 71
4.2 Kiến trúc logic hệ thống máy điều phối hoạt động đăng ký .......................................... 72
4.3 Kiến trúc logic hệ thống máy trạm đăng ký ................................................................... 73
4.4 Cài đặt hệ thống.............................................................................................................. 74
4.4.1 Môi trường và công cụ phát triển ............................................................................ 74
4.4.2 Phát triển hệ thống web services ............................................................................. 74
4.5 Kết quả thực hiện ........................................................................................................... 75
KẾT LUẬN .............................................................................................................................. 79
Những kết quả đạt được.................................................................................................... 79
-
Lý thuyết ................................................................................................................... 79
-
Ứng dụng ................................................................................................................... 79
Những hạn chế và tồn tại .................................................................................................. 79
Hướng tiếp tục nghiên cứu ............................................................................................... 79
TÀI LIỆU THAM KHẢO ....................................................................................................... 80
PHỤ LỤC................................................................................................................................. 81
Phụ lục 01: Khảo sát một số hệ thống đăng ký môn học trong đào tạo tín chỉ ở một số
trường đại học hiện nay ........................................................................................................ 81
Phụ lục 02: Phân tích chi tiết một số ca sử dụng khác ......................................................... 85
Phụ lục 03: Thiết kế trang cho một số ca sử dụng khác ..................................................... 112
v
MỞ ĐẦU
Đào tạo tín chỉ là một hình thức đào tạo tiên tiến và được áp dụng rộng rãi trên
thế giới. Ở Việt Nam, từ năm 1995 đã có trường thí điểm áp dụng hình thức đào tạo
này. Năm 2010, Bộ GD&ĐT yêu cầu tất cả các trường Đại học và Cao đẳng trong cả
nước thực hiện áp dụng đào tạo theo hình thức tín chỉ.
Qua thực hiện khảo sát ở một số trường Đại học và Cao đẳng đã áp dụng hình
thức đào tạo theo tín chỉ đã cho thấy việc quản lý và vận hành đào tạo theo hình thức
mới này gặp rất nhiều khó khăn. Từ khó khăn của các cán bộ quản lý đào tạo khi thực
hiện tạo ra các lớp tín chỉ ở đầu mỗi học kỳ, việc tư vấn hỗ trợ cho học viên khi thực
hiện đăng ký cho đến những khó khăn của học viên khi thực hiện đăng ký.
Mặc dù hiện nay đã có một số hệ thống hỗ trợ đăng ký được xây dựng nhưng
các hệ thống này vẫn còn tồn tại những mặt còn hạn chế và chưa đáp ứng được nhu
cầu thực tế trong công tác quản lý của cán bộ quản lý đào tạo cũng như công tác đăng
ký môn học của học viên.
Trước bối cảnh đó, nhu cầu cấp thiết hiện nay đòi hỏi cần phải có một giải pháp
mới khắc phục được các mặt còn hạn chế đồng thời hỗ trợ tốt cho cán bộ đào tạo và
học viên trong quá trình đào tạo.
Đề tài “Hệ thống dịch vụ web hỗ trợ công tác đăng ký và theo dõi lớp học
trong hệ thống đào tạo tín chỉ” tập trung vào nghiên cứu quy trình từ khi tạo ra lớp
tín chỉ cho đến khi tổ chức cho học viên đăng ký xong và đưa vào thực hiện hoạt động
giảng dạy để từ đó xây dựng giải pháp khắc phục những vấn đề hiện nay còn đang tồn
tại. Mặt khác, hệ thống đăng ký môn học là một bài toán nhỏ trong tổng thể một hệ
thống quản lý đào tạo tín chỉ. Do vậy đòi hỏi cũng cần phải xây dựng giải pháp thiết
kế hệ thống sao cho đáp ứng được nhu cầu ghép nối với các hệ thống khác đã có cũng
như là đáp ứng các thay đổi thường xuyên trong hệ thống đào tạo hiện nay.
Qua các yêu cầu thực tiễn và phạm vi đề tài như trên, kết quả đạt được của đề
tài này là giải pháp mới giải quyết các vấn đề đang tồn tại hiện nay trong công tác tạo
lập lớp tín chỉ và tổ chức cho học viên đăng ký môn học. Song song với giải pháp mới
là hệ thống dịch vụ web có thể triển khai trong thực tế hỗ trợ cho công tác tạo lớp học
và tổ chức cho học viên đăng ký môn học.
Về mặt lý thuyết, đề tài này đưa ra được giải pháp phân tải thông qua tổ chức
các hệ thống máy trạm đăng ký nhằm giảm lượng học viên truy cập vào hệ thống
chính để thực hiện đăng ký. Giải pháp ứng dụng dịch vụ web vào xây dựng hệ thống
nền tảng cung cấp dữ liệu cho hệ thống ứng dụng web quản lý ở tầng trên và ứng dụng
vi
web ở máy trạm. Cuối cùng là sử dụng công nghệ hướng đối tượng có sử dụng mẫu
thiết kế nhằm giải quyết vấn đề ghép nối hệ thống với các hệ thống khác độc lập cũng
như là nâng cao tính mềm dẻo, dễ thay đổi khi có yêu cầu thay đổi trong hoạt động
đào tạo. Về phương diện thực tiễn, hệ thống dịch vụ web và ứng dụng web có khả
năng triển khai trong thực tế hỗ trợ tốt cho công tác tạo lập lớp tín chỉ và tổ chức cho
học viên có thể đăng ký lớp học nhanh chóng hơn, giải quyết phần nào các khó khăn
hiện đang tồn tại.
Nội dung chính của luận văn gồm 4 chương:
Chương 1: Thực hiện mô tả về bài toán đăng ký môn học trong đào tào tín chỉ ở
các trường Đại học và Cao đẳng nước ta hiện nay. Từ đó đánh giá các vấn đề còn tồn
tại và đưa ra giải pháp giải quyết bài toán.
Chương 2: Trình bày về một số vấn đề cơ bản về lý thuyết công nghệ dịch vụ
web và nền tảng .NET Framework của Microsoft cũng như là bộ công cụ xây dựng
Visual Studio 2008 Express, SQL Server 2005 Express
Chương 3: Thực hiện phân tích và thiết kế hệ thống hướng đối tượng dựa trên
công nghệ Dịch vụ web và giải pháp tính toán tập trung.
Chương 4: Tiến hành cài đặt chương trình thử nghiệm và giới thiệu cấu trúc,
chức năng cũng như là cách sử dụng khai thác hệ thống web services hỗ trợ công tác
đăng ký và theo dõi tổ chức lớp học trong đào tạo tín chỉ.
Cuối cùng là kết luận và hướng phát triển tiếp theo của đề tài.
vii
BẢNG CÁC CHỮ VIẾT TẮT
Tên viết tắt
Ý nghĩa đầy đủ
API
Application Programming Interface
ASP
Active Server Pages
BRL
Business Roles Layer
CASD
Computer Aided Software Engineering
CSDL
Cơ sở dữ liệu
DAL
Data Access Layer
FTP
File Transfer Protocol
HTML
HyperText Markup Language
HTTP
HyperText Transfer Protocol
IDE
Integrated Development Environment
JMS
Java Message Service
MEP
Message Exchange Patterns
PHP
Hypertext Preprocessor
RDBMS
Relational Database Management System
RPC
Remote procedure call
SGML
Standard Generalized Markup Language
SMTP
Simple Mail Transfer Protocol
SOAP
Simple Object Access Protocol
UDDI
Universal Description Discovery and Integration
UML
Unified Modeling Language
URL
Uniform Resource Locator
W3C
World Wide Web Consortium
WSDL
Web Services Description Language
XML
eXtensible Markup Language
XSD
XML Schema Definition
viii
DANH MỤC HÌNH ẢNH
Hình 2.1: Kiến trúc của web service
4
Hình 2.2: Cấu trúc WSDL
6
Hình 2.3: Cấu trúc message SOAP
9
Hình 3.1: Biểu đồ miền lĩnh vực của hệ thống
19
Hình 3.2 : Biểu đồ hoạt động quy trình tổng quát nghiệp vụ đăng ký môn học
20
Hình 3.3 : Mô hình ca sử dụng mức gộp của hệ thống
21
Hình 3.4 : Mô hình chi tiết gói ca sử dụng cập nhật thông tin đào tạo mức khái quát
22
Hình 3.5 : Mô hình chi tiết gói ca sử dụng lập danh sách lớp tín chỉ mức khái quát
26
Hình 3.6: Mô hình chi tiết gói ca sử dụng đăng ký môn học mức khái quát
28
Hình 3.7: Mô hình chi tiết gói ca sử dụng lập lịch mức khái quát
33
Hình 3.8: Biểu đồ tuần tự ca sử dụng cập nhật hệ đào tạo mức hệ thống
35
Hình 3.9: Biểu đồ lớp phân tích ca sử dụng cập nhật hệ đào tạo
35
Hình 3.10: Biểu đồ tuần tự ca sử dụng cập nhật hệ đào tạo mức khái niệm
36
Hình 3.11: Thiết kế giao diện ca sử dụng cập nhật thông tin hệ đào tạo
37
Hình 3.12: Biểu đồ tuần tự ca sử dụng cập nhật chương trình đào tạo mức hệ thống
37
Hình 3.13: Biểu đồ lớp phân tích ca sử dụng cập nhật chương trình đào tạo
38
Hình 3.14: Biểu đồ tuần tự ca sử dụng cập nhật chương trình đào tạo mức khái niệm
38
Hình 3.15: Thiết kế giao diện ca sử dụng cập nhật chương trình đào tạo
39
Hình 3.16: Biểu đồ tuần tự ca sử dụng lập danh sách lớp tín chỉ dự kiến
39
Hình 3.17: Biểu đồ lớp phân tích ca sử dụng lập danh sách lớp tín chỉ dự kiến
40
Hình 3.18: Biểu đồ tuần tự ca sử dụng lập danh sách lớp tín chỉ dự kiến
41
Hình 3.19: Thiết kế giao diện ca sử dụng lập danh sách lớp tín chỉ dự kiến
41
Hình 2.20: Biểu đồ tuần tự ca sử dụng đăng ký thông tin giảng dạy mức hệ thống
42
Hình 3.21: Biểu đồ lớp phân tích ca sử dụng đăng ký thông tin giảng dạy
42
Hình 3.22: Biểu đồ tuần tự ca sử dụng đăng ký thông tin giảng dạy mức khái niệm
43
Hình 3.23: Thiết kế giao diện ca sử dụng đăng ký thông tin giảng dạy
44
Hình 3.24: Biểu đồ tuần tự ca sử dụng hoàn thiện danh sách lớp tín chỉ mức hệ thống
44
Hình 3.25: Biểu đồ lớp phân tích ca sử dụng hoàn thiện danh sách lớp tín chỉ
45
Hình 3.26: Biểu đồ tuần tự ca sử dụng hoàn thiện danh sách lớp tín chỉ mức khái niệm
45
Hình 3.27: Thiết kế giao diện ca sử dụng hoàn thiện danh sách lớp tín chỉ
46
Hình 3.28: Biểu đồ tuần tự ca sử dụng đăng ký môn học mức hệ thống
47
Hình 3.29: Biểu đồ lớp phân tích ca sử dụng đăng ký môn học
47
Hình 3.30: Biểu đồ tuần tự ca sử dụng đăng ký môn học mức khái niệm
48
Hình 3.31: Thiết kế giao diện ca sử dụng đăng ký môn học
49
Hình 3.32: Biểu đồ tuần tự ca sử dụng kiểm duyệt lớp tín chỉ mức hệ thống
49
ix
Hình 3.33: Biểu đồ lớp phân tích ca sử dụng kiểm duyệt lớp tín chỉ
50
Hình 3.34: Biểu đồ tuần tự ca sử dụng kiểm duyệt lớp tín chỉ mức khái niệm
51
Hình 3.35: Kiểm duyệt lớp tín chỉ sau đăng ký
51
Hình 3.36: Biểu đồ tuần tự ca sử dụng lập danh sách lớp đủ điều kiện mức hệ thống
52
Hình 3.37: Biểu đồ lớp phân tích ca sử dụng lập danh sách lớp tín chỉ đủ điều kiện
52
Hình 3.38: Biểu đồ tuần tự ca sử dụng lập danh sách lớp đủ điều kiện mức khái niệm
53
Hình 3.39: Giao diện ca sử dụng lập danh sách lớp đủ điều kiện tổ chức dạy và học
54
Hình 3.40: Biểu đồ tuần tự ca sử dụng giảng viên xem thời khóa biểu mức hệ thống
54
Hình 3.41: Biểu đồ lớp phân tích ca sử dụng xem thời khóa biểu của giảng viên
55
Hình 3.42: Biểu đồ tuần tự ca sử dụng xem thời khóa biểu của giảng viên
55
Hình 3.43: Thiết kế giao diện ca sử dụng xem thời khóa biểu của giảng viên
56
Hình 3.44: Biểu đồ tuần tự ca sử dụng xem thời khóa biểu của học viên mức hệ thống
56
Hình 3.45: Biểu đồ lớp phân tích ca sử dụng xem thời khóa biểu của giảng viên
57
Hình 3.46: Biểu đồ tuần tự ca sử dụng xem thời khóa biểu của giảng viên
57
Hình 3.47: Thiết kế giao diện ca sử dụng xem thời khóa biểu của học viên
58
Hình 3.48: Kiến trúc hệ thống vật lý của ứng dụng
58
Hình 3.49: Biểu đồ lớp thiết kế của hệ thống
61
Hình 3.50: Sơ đồ thiết kế kiến trúc service HedaotaoSRV
62
Hình 3.51: Biểu đồ lớp thiết kế ca sử dụng cập nhật hệ đào tạo
63
Hình 3.52: Sơ đồ thiết kế kiến trúc service CTDTSRV
64
Hình 3.53: Biểu đồ lớp thiết kế ca sử dụng cập nhật chương trình đào tạo
64
Hình 3.54: Sơ đồ thiết kế kiến trúc service LoptinchiSRV
65
Hình 3.55: Biểu đồ lớp thiết kế ca sử dụng cập nhật thông tin lớp tín chỉ dự kiến
65
Hình 3.56: Sơ đồ thiết kế kiến trúc service LoptinchiSRV
66
Hình 3.57: Biểu đồ lớp thiết kế ca sử dụng đăng ký thông tin giảng dạy
67
Hình 3.58: Sơ đồ thiết kế kiến trúc service HocvienLoptinchiSRV
68
Hình 3.59: Biểu đồ lớp thiết kế ca sử dụng đăng ký lớp tín chỉ
68
Hình 3.60: Sơ đồ thiết kế kiến trúc service LoptinchiSRV
69
Hình 3.61: Biểu đồ lớp thiết kế ca sử dụng kiểm duyệt lớp tín chỉ sau đăng ký
69
Hình 3.62: Sơ đồ thiết kế kiến trúc service LoptinchiSRV
70
Hình 3.63: Biểu đồ lớp thiết kế ca sử dụng lập danh sách lớp tín chỉ đủ điều kiện
70
Hình 4.1: Kiến trúc tổng quan của hệ thống web services
71
Hình 4.2: Kiến trúc tổng quan của máy điều phối hoạt động đăng ký
72
Hình 4.3: Kiến trúc tổng quan của máy trạm đăng ký
73
Hình 4.4: Mã nguồn các tầng trong kiến trúc hệ thống
74
Hình 4.5: Giao diện web services Chuongtrinhdaotao.asmx
75
Hình 4.6: Giao diện chức năng web services Loptinchi.asmx
76
x
Hình 4.7: Giao diện quản lý tạo lớp tín chỉ dự kiến của cán bộ quản lý
76
Hình 4.8: Giao diện chức năng giảng viên đăng ký thông tin giảng dạy
77
Hình 4.9: Giao diện màn hình máy điều phối hoạt động đăng ký
77
Hình 4.10: Giao diện màn hình máy trạm đăng ký môn học của học viên
78
Hình 4.11: Giao diện màn hình cập nhật thông tin đăng ký ở máy trạm về máy chủ
78
DANH MỤC BẢNG BIỂU
Bảng 3.1: Bảng tổng hợp các chức năng nghiệp vụ của hệ thống
17
Bảng 3.2: Các đối tượng nghiệp vụ của hệ thống
17
Bảng 3.3: Các tác nhân nghiệp vụ của hệ thống
18
Bảng 3.4: Từ điển giải thích thuật ngữ và từ viết tắt
20
Bảng 3.5: Các luồng sự kiện chính của ca sử dụng cập nhật thông tin đào tạo
22
Bảng 3.6: Các luồng sự kiện chính của ca sử dụng cập nhật ngành đào tạo
23
Bảng 3.7: Các luồng sự kiện chính của ca sử dụng cập nhật khóa học
24
Bảng 3.8: Các luồng sự kiện chính ca sử dụng cập nhật môn học
24
Bảng 3.9: Các luồng sự kiện chính ca sử dụng cập nhật chương trình đào tạo
25
Bảng 3.10: Các luồng sự kiện chính ca sử dụng cập nhật danh sách học viên
25
Bảng 3.11: Các luồng sự kiện chính ca sử dụng cập nhật danh sách giảng viên
25
Bảng 3.11: Các luồng sự kiện chính ca sử dụng lập danh sách lớp tín chỉ dự kiến
27
Bảng 3.12: Các luồng sự kiện chính ca sử dụng đăng ký thông tin giảng dạy
27
Bảng 3.13: Các luồng sự kiện chính ca sử dụng hoàn thiện danh sách lớp tín chỉ
28
Bảng 3.14: Các luồng sự kiện chính ca sử dụng đăng ký môn học
29
Bảng 3.15: Các luồng sự kiện chính ca sử dụng xác nhận tư vấn học tập
29
Bảng 3.16: Các luồng sự kiện chính ca sử dụng đăng ký môn học
30
Bảng 3.17: Các luồng sự kiện chính ca sử dụng xác nhận đăng ký môn học
30
Bảng 3.18: Các luồng sự kiện chính ca sử dụng kiểm duyệt lớp tín chỉ
31
Bảng 3.19: Các luồng sự kiện chính ca sử dụng lập danh sách lớp tín chỉ đạt yêu cầu
31
Bảng 3.20: Các luồng sự kiện chính ca sử dụng lập phiếu thu cho học viên
32
Bảng 3.21: Các luồng sự kiện chính ca sử dụng lập phiếu thu cho học viên
32
Bảng 3.22: Mô tả chi tiết ca sử dụng lập lịch
33
Bảng 3.23: Mô tả chi tiết ca sử dụng xem lịch giảng dạy
34
Bảng 3.24: Mô tả chi tiết ca sử dụng xem lịch học
34
Bảng 3.25: Các gói thiết kế của hệ thống
62
Bảng 3.26: Các lớp tham gia thực thi ca sử dụng cập nhật hệ đào tạo
62
Bảng 3.27: Các lớp tham gia thực thi ca sử dụng cập nhật khóa học
63
Bảng 3.28: Các lớp tham gia thực thi ca sử dụng lập danh sách lớp dự kiến
65
xi
Bảng 3.29: Các lớp tham gia thực thi ca sử dụng đăng ký thông tin giảng dạy
66
Bảng 3.30: Các lớp tham gia thực thi ca sử dụng đăng ký môn học
67
Bảng 3.31: Các lớp tham gia thực thi ca sử dụng kiểm duyệt lớp tín chỉ
68
Bảng 3.32: Các lớp tham gia thực thi ca sử dụng lập danh sách lớp đủ điều kiện
69
2
CHƯƠNG I – MÔ TẢ BÀI TOÁN VÀ GIẢI PHÁP
1.1 Bài toán đăng ký môn học trong đào tạo tín chỉ
Quy trình đăng ký lớp tín chỉ của học viên và tổ chức cho các lớp tín chỉ thực
hiện công tác dạy và học chỉ là một quy trình rất nhỏ trong tổng thể cả một quy trình
quản lý đào tạo tín chỉ. Tuy nhiên đây lại là một trong những giai đoạn rất quan trọng.
Trước mỗi một học kỳ mới, cán bộ quản lý đào tạo ở mỗi Khoa sẽ thực hiện lên danh
sách các lớp tín chỉ dự kiến cho học kỳ tiếp theo căn cứ theo thông tin về chương trình
đào tạo, khóa học, giảng viên, môn học v.v… Sau khi lên được danh sách các lớp tín
chỉ dự kiến. Cán bộ quản lý sẽ thông báo cho các giảng viên vào đăng ký các thông tin
chi tiết như giờ học, buổi học … Từ các thông tin chi tiết giảng viên đăng ký và danh
sách lớp tín chỉ dự kiến ban đầu. Cán bộ quản lý sẽ lên danh sách lớp tín chỉ dự kiến
chi tiết và đưa vào hệ thống đăng ký lớp tín chỉ. Học viên khi bắt đầu bước vào một kỳ
học mới sẽ thực hiện đăng ký các môn học sẽ phải học. Trước khi thực hiện đăng ký,
học viên sẽ xin ý kiến tư vấn của một giảng viên công tác trong khoa. Căn cứ trên số
môn học mà học viên đã học và số lượng tín chỉ mà học viên tích lũy được mà học
viên được lựa chọn môn học và số lượng tín chỉ nằm trong giới hạn cho phép theo
đúng quy chế đào tạo của Bộ GD & ĐT (quyết định số 43/QĐ-BGD-ĐT 2007)
Nhà trường sẽ tổ chức thành hai đợt đăng ký cách nhau 15 ngày. Mỗi đợt đăng
ký trong 03 ngày. Học viên được cung cấp danh sách môn học mà học viên có thể
đăng ký. Mỗi một môn học sẽ có danh sách các lớp tín chỉ với các giảng viên và
khung giờ khác nhau. Các lớp tín chỉ sẽ có số lượng học viên tối đa và số lượng học
viên tối thiểu để có thể tổ chức lớp. Học viên lựa chọn lớp đăng ký sau đó xác nhận lại
với bộ phận đăng ký để ghi tên vào lớp. Sau khi học viên đăng ký xong, bộ phận đăng
ký sẽ cung cấp cho mỗi một học viên các thông tin: thời khóa biểu, tài liệu học tập
(nếu có)
Sau khi kết thúc quá trình đăng ký và toàn bộ học viên đã có thời khóa biểu.
Thì sau một khoảng thời gian nhà trường sẽ tổ chức thực hiện dạy và học theo thời
khóa biểu đã có. Các cán bộ quản lý và giảng viên sẽ điều hành hoạt động của lớp tín
chỉ diễn ra theo đúng kế hoạch học tập cho đến khi kết thúc môn học và cán bộ quản
lý sẽ xắp xếp lịch thi hết học phần.
1.2 Các vấn đề còn tồn tại
Căn cứ trên việc khảo sát hiện trạng quy trình nghiệp vụ đăng ký môn học
trong đào tạo theo hình thức tín chỉ và căn cứ vào việc khảo sát sơ bộ một số giải pháp
đăng ký đã được áp dụng hiện nay (xem Phụ lục 01). Có thể thấy rằng quy trình đăng
ký môn học của học viên trong đào tạo theo hình thức tín chỉ hiện nay còn tồn tại một
số hạn chế chưa giải quyết được như sau:
3
o Các cán bộ quản lý khi tạo lớp tín chỉ dự kiến còn phải làm thủ công và sử
dụng nhiều công cụ khác nhau hỗ trợ. Hầu hết các công cụ này đều không phải
là công cụ chuyên môn hỗ trợ do vậy mà việc xếp các lớp tín chỉ dự kiến vào
các phòng học khác nhau cho khỏi trùng lặp khiến cho cán bộ quản lý đào tạo
gặp rất nhiều khó khăn.
o Trước đăng ký, học viên cần phải được cán bộ làm công tác tư vấn học tập tư
vấn và việc tư vấn này phải được xác nhận lại. Tuy nhiên, thực tế hiện nay các
trường đang gặp phải vấn đề thiếu nghiêm trọng nguồn cán bộ tư vấn trong khi
số lượng học viên rất đông gây ảnh hưởng lớn đến tiến độ đào tạo.
o Ở thời điểm đăng ký môn học, số lượng học viên đăng ký rất đông gây ra quá
tải dành cho hệ thống đăng ký dẫn đến nhiều vấn đề phát sinh như: không đăng
ký được, đăng ký được nhưng nhầm lớp, không thể đăng ký lớp phù hợp .v.v…
Các vấn đề phát sinh gây khó khăn cho cán bộ quản lý đào tạo quản lý việc
đăng ký cũng như là gây khó khăn công tác tổ chức học tập và qua đó cũng làm
ảnh hưởng đến tiến độ đào tạo của nhà trường.
1.3 Giải pháp
Căn cứ trên các khó khăn và hạn chế còn tồn tại thông qua việc khảo sát hiện
trạng quy trình nghiệp vụ đăng ký môn học trong đào tạo theo hình thức tín chỉ và căn
cứ vào việc khảo sát sơ bộ một số giải pháp đăng ký đã được áp dụng hiện nay. Dưới
đây là một số giải pháp giải quyết một phần các hạn chế còn tồn tại để có một hệ
thống hỗ trợ công tác đăng ký môn học tốt hơn hỗ trợ cho học viên cũng như cán bộ
quản lý đào tạo:
o Xây dựng hệ thống hỗ trợ đăng ký môn học trong đào tạo tín chỉ. Hệ thống này
cung cấp các giải pháp hỗ trợ cho cán bộ quản lý có thể quản lý tra cứu thông
tin cần sử dụng khi tạo lập lớp tín chỉ: bố trí phòng học cho các lớp tín chỉ, tra
cứu thông tin môn cần học trong học kỳ tiếp theo các khóa học .v.v…
o Tự động hóa công tác tư vấn cho học viên bằng cách đưa ra các thông tin cho
từng học viên như: môn đã học, môn đã học và đã đạt, môn đã học và chưa đạt,
môn chưa học, môn cần học trong học kỳ tiếp theo, số lượng tín chỉ có thể
được phép đăng ký, danh sách lớp tín chỉ trong học kỳ tiếp theo .v.v…Cũng
căn cứ trên các thông tin như trên, hệ thống tự động tạo lập các ràng buộc cho
học viên khi đăng ký môn học như: được phép đăng ký môn nào, không được
phép môn nào do chưa đạt điều kiện về môn tiền điều kiện hoặc là một số ràng
buộc khác.
o Hệ thống đăng ký môn học sử dụng giải pháp phân luồng học viên đăng ký để
giải quyết bài toán quá tải cho hệ thống đăng ký bằng việc phân chia các nhóm
học viên đăng ký trong phạm vi chịu tải của hệ thống căn cứ ưu tiên theo thời
điểm học viên đăng nhập vào hệ thống đăng ký, các học viên còn lại được bố
trí sau một khoảng thời gian ngay tiếp sau.
4
CHƯƠNG II - CÔNG NGHỆ, PHƯƠNG PHÁP VÀ CÔNG CỤ
THỰC HIỆN
2.1 Công nghệ Web services
2.1.1 Web services là gì ?
W3C đã định nghĩa web services là một phần mềm được thiết kế để các thiết bị
có thể tương thích với nhau và tương tác với nhau qua mạng. Nó có một giao diện
giao tiếp mô tả định dạng xử lý (WSDL) và một hệ thống khác muốn giao tiếp với
web services phải theo quy cách đã được quy định thông qua SOAP, thường được
truyền tải sử dụng giao thức HTTP và XML kết hợp tuần tự với các kết nối web chuẩn
khác.
2.1.2 Đặc điểm của Web services
o Web service cho phép máy khách và máy chủ tương tác được với nhau mặc dù
chúng hoạt động trong những môi trường khác nhau (ngôn ngữ lập trình khác
nhau, hệ nền khác nhau).
o Web service được thiết kế mở, dựa vào các chuẩn XML và HTTP là nền tảng
k thuật cho web service vì vậy chúng độc lập với ngôn ngữ lập trình và hệ nền
o Web service rất linh động: với DDI và WSDL thì việc mô tả và phát triển
web service có thể được tự động hóa.
o Web service được xây dựng trên nền tảng những công nghệ đã được chấp nhận.
o Web service có dạng module.
o Web service có thể công bố (publish) và gọi thực hiện qua mạng.
2.1.3 Kiến trúc của Web services
Kiến trúc của web service bao gồm các tầng như sau:
Hình 2.1: Kiến trúc của web service
5
Trong đó bao gồm các tầng:
o Tầng vận chuyển với những công nghệ chuẩn là HTTP, SMTP và JMS
o Tầng giao thức tương tác dịch vụ (Service Communication Protocol) với công
nghệ chuẩn là SOAP. SOAP là giao thức nằm giữa tầng vận chuyển và tầng mô
tả thông tin về dịch vụ, SOAP cho phép người dùng triệu gọi một service từ xa
thông qua một message XML.
o Tầng mô tả dịch vụ (Service Description) với công nghệ chuẩn là WSDL và
XML. WSDL là một ngôn ngữ mô tả giao tiếp và thực thi dựa trên XML. Web
service sử dụng ngôn ngữ WSDL để truyền các tham số và các loại dữ liệu cho
các thao tác, các chức năng mà web service cung cấp.
o Tầng dịch vụ (Service): cung cấp các chức năng của service.
o Tầng đăng ký dịch vụ (Service Registry) với công nghệ chuẩn là DDI. UDDI
dùng cho cả người dùng và SOAP server, nó cho phép đăng ký dịch vụ để
người dùng có thể gọi thực hiện service từ xa qua mạng, nói cách khác một
dịch vụ web cần phải được đăng ký để cho phép các máy khách có thể thực
hiện gọi các chức năng.
o Bên cạnh đó để cho các dịch vụ có tính an toàn, toàn vẹn và bảo mật thông tin
trong kiến trúc dịch vụ web chúng ta có thêm các tầng Policy, Security,
Transaction và Management giúp tăng cường tính bảo mật, an toàn và toàn vẹn
thông tin khi sử dụng chức năng của dịch vụ.
2.1.4 Các thành phần của Web services
2.1.4.1 XML– Extensible Markup Language
XML do W3C đề ra và được phát triển từ SGML. XML là một ngôn ngữ mô tả
văn bản với cấu trúc do người sử dụng định nghĩa. Về hình thức XML có ký pháp tựa
như HTML nhưng không tuân theo một đặc tả quy ước như HTML. Người sử dụng
hay các chương trình có thể quy ước định dạng các tag XML để giao tiếp với
nhau.Thông tin cần truyền tải được chứa trong các tag XML, ngoài ra không chứa bất
cứ thông tin nào khác về cách sử dụng hay hiển thị những thông tin đó.
Do dịch vụ web là sự kết hợp của nhiều thành phần khác nhau, do đó dịch vụ
web sử dụng các tính năng và đặc trưng của các thành phần này để giao tiếp với nhau.
Vì vậy XML là một công cụ chính yếu để giải quyết vấn đề này. Từ kết qủa này, các
ứng dụng tích hợp vĩ mô tăng cường sử dụng XML. Nhờ có khả năng tổng hợp này
mà XML đã trở thành kiến trúc nền tảng cho việc xây dựng dịch vụ web.
2.1.4.2. WSDL - Web Services Description Language
WSDL định nghĩa cách mô tả web service theo cú pháp tổng quát XML, bao
gồm các thông tin sau:
Tên service
6
Giao thức và kiểu mã hóa sẽ được sử dụng khi gọi các hàm của dịch vụ
web.
Loại thông tin: những thao tác, những tham số và những kiểu dữ liệu gồm
có giao diện của dịch vụ web, cộng với tên cho giao diện này.
Một WSDL hợp lệ gồm có hai phần:
Phần giao diện mô tả giao diện và giao thức kết nối.
Phần thi hành mô tả thông tin để truy xuất dịch vụ
Cả 2 phần trên sẽ được lưu trong 2 tập tin XML, bao gồm:
Tập tin giao diện service (cho phần 1).
Tập tin thi hành service (cho phần 2).
Hình 2.2:
trúc
a.Tập tin giao diện - Service Interface: WSDL mô tả 5 loại thông tin chính bao gồm:
import, types, message, portType, binding.
a1. Types:
định nghĩa các kiể dữ liệ của thông điệp gửi.
*
a2. Thông điệp (message): mô tả thông điệp được gửi giữa client và server
*
*
Những định nghĩa message được sử dụng bởi phần tử thi hành service. Nhiều
thao tác, có thể tham chiếu tới cùng định nghĩa message.
Thao tác và những message được mô hình riêng rẽ để hỗ trợ tính linh hoạt và
đơn giản hóa việc tái sử dụng lại. Chẳng hạn, hai thao tác với cùng tham số có thể chia
sẻ một định nghĩa thông điệp (message).
7
a3. Kiểu cổng (port type): WSDL mô tả cách gửi và nhận thông điệp.
*
WSDL định nghĩa bốn kiểu thao tác mà một cổng có thể hỗ trợ:
o One-way: cổng nhận một thông điệp, đó là thông điệp nhập.
o Request-response: cổng nhận một thông điệp và gửi một thông điệp
phản hồi
o Solicit-response: cổng gửi một thông điệp và nhận về một thông điệp
o Notification: cổng gửi một thông điệp, đó là thông điệp xuất.
Mỗi kiểu thao tác có cú pháp biến đổi tùy theo: thứ tự của các thông điệp nhập,
xuất và thông điệp lỗi.
a4. Kết hợp (Binding): định nghĩa cách các web services kết hợp với nha
Một kết hợp bao gồm:
o Những giao thức mở rộng cho những giao tác và những thông điệp bao
gồm thông tin RN và mã hóa cho SOAP.
o Mỗi một kết hợp tham chiếu đến một loại cổng một kiểu cổng
(portType) có thể được sử dụng trong nhiều mối kết hợp. Tất cả các thao
tác định nghĩa bên trong kiểu cổng phải nằm trong phạm vi mối kết hợp.
b. Tập tin thi hành - Service Implementation
WSDL mô tả 2 loại thông tin chính bao gồm: dịch vụ (service) và cổng mở của
dịch vụ (port)
b1. Dịch vụ (Service)
Nó sẽ thực hiện những gì đã được định nghĩa trong tập tin giao diện và cách
gọi dịch vụ web theo thủ tục và phương thức nào.
*
*
b2. Port: là m t c ng đ c i n định nghĩa như m t tập hợp của binding và m t địa
ch mạng.
*
*
8
Thuộc tính kết hợp tên là qname tham chiếu tới một mối kết hợp. Một cổng chứa
đựng chính xác một địa chỉ mạng Bất kỳ cổng nào trong phần thi hành phải tương
ứng chính xác với một tham chiếu trong phần giao diện.
2.1.4.3. UDDI – Universal Description, Descovery and Intergration.
Để có thể sử dụng các dịch vụ, trước tiên máy khách phải tìm dịch vụ, ghi nhận
thông tin về cách sử dụng dịch vụ và biết được đối tượng cung cấp dịch vụ. UDDI
định nghĩa một số thành phần cho biết trước các thông tin này để cho phép các máy
khách truy tìm và nhận lại những thông tin yêu cầu sử dụng dịch vụ.
trúc UDDI:
Cấu trúc DDI gồm các thành phần:
i) Trang trắng - White pages: chứa thông tin liên hệ và các định dạng chính yếu của
dịch vụ web, chẳng hạn tên giao dịch, địa chỉ .v.v... Những thông tin này cho
phép các đối tượng khác xác định được dịch vụ
ii) Trang vàng - Yellow pages: chứa thông tin mô tả dịch vụ web theo những chủng
loại khác nhau. Những thông tin này cho phép các đối tượng thấy dịch vụ web
theo từng chủng loại của nó.
iii) Trang xanh - Green pages: chứa thông tin k thuật mô tả các hành vi và các
chức năng của dịch vụ web. Các đối tượng dựa vào đặc điểm của dịch vụ web để
tìm kiếm.
iv) oại dịch vụ - tModel: chứa các thông tin về loại dịch vụ sử dụng.
Những DDI registry hiện có:
o
DDI Business Registry: bộ đăng ký được bảo trì bởi Microsoft, IBM
đặc điểm của bộ đăng ký này là nó phân tán về mặt vật lý.
o IBM Test Registry: bộ đăng ký cho những người phát triển để thử
nghiệm công nghệ và kiểm tra những dịch vụ của họ.
o Private registries IBM ships: bộ đăng ký DDI cá nhân.
2.1.4.4. SOAP - Simple Object Access Protocol
SOAP là một giao thức giao tiếp có cấu trúc như XML và mã hóa thành định
dạng chung cho các ứng dụng trao đổi với nhau. Ý tưởng bắt đầu từ Microsoft và phần
mềm Userland, trải qua nhiều lần thay đổi, hiện tại là phiên bản SOAP 1.2 với nhiều
ưu điểm vuợt trội hơn bản SOAP 1.1. SOAP được xem như là cấu trúc xương sống
của các ứng dụng phân tán xây dựng từ nhiều ngôn ngữ, hệ điều hành khác nhau.
9
2.1.4.5. Đặc trưng SOAP
SOAP có những đặc trưng sau:
SOAP được thiết kế đơn giản và dễ mở rộng
Tất cả các thông điệp SOAP đều được mã hóa sử dụng XML.
SOAP sử dụng giao thức truyền dữ liệu riêng.
Không có garbage collection phân tán và cũng không có cơ chế tham
chiếu. Vì thế SOAP client không giữ bất kỳ một tham chiếu đầy đủ nào
về các đối tượng ở xa.
o SOAP không bị ràng buộc bởi bất kỳ ngôn ngữ lập trình nào hoặc công
nghệ nào.
Vì những đặc trưng này, nó không quan tâm đến công nghệ gì được sử dụng để
thực hiện miễn là người dùng sử dụng các thông điệp theo định dạng XML. Tương tự,
dịch vụ có thể được thực hiện trong bất kỳ ngôn ngữ nào, miễn là nó có thể xử lý được
những thông điệp theo định dạng XML.
o
o
o
o
2.1.4.6. Cấu trúc một message theo dạng SOAP
Cấu trúc một thông điệp theo dạng SOAP được mô tả như hình dưới đây:
Hình 2.3: C
trúc message OAP
Thông điệp theo dạng SOAP là một văn bản XML bình thường bao gồm các
phần tử sau:
o Ph n tử g c - envelop: phần từ bao gói nội dung thông điệp, khai báo
văn bản XML như là một thông điệp SOAP
o Ph n tử đ u trang – header: chứa các thông tin tiêu đề cho trang, phần
tử này không bắt buộc khai báo trong văn bản. Những đầu mục còn có
thể mang những dữ liệu chứng thực, những chữ ký số hóa và thông tin
mã hóa hoặc những cài đặt cho giao tác.
o Ph n tử khai báo n i d ng chính trong thông điệp – body: chứa các
thông tin yêu cầu và phản hồi.
10
o Ph n tử phát sinh lỗi (Fault): cung cấp thông tin lỗi xảy ra trong qúa
trình xử lý thông điệp.
Trong trường hợp đơn giản nhất, phần thân của thông điệp SOAP gồm có:
o Tên của thông điệp
o Một tham khảo tới một thể hiện dịch vụ.
o Một hoặc nhiều tham số mang các giá trị và mang các tham chiếu. Có 3
kiểu thông báo Request messages: với các tham số gọi thực thi một dịch
vụ. Response messages với các tham số trả về, được sử dụng khi đáp
ứng yêu cầu. Fault messages báo tình trạng lỗi.
2.1.4.7. Những kiểu truyền thông
SOAP hỗ trợ hai kiểu truyền thông khác nhau:
o Remote procedure call (RPC): cho phép gọi hàm hoặc thủ tục qua
mạng. Kiểu này được khai thác bởi nhiều dịch vụ web và có nhiều trợ
giúp.
o Document: được biết như kiểu hướng thông điệp; kiểu này cung cấp một
lớp thấp của sự trừu tượng hóa và yêu cầu người lập trình nhiều hơn khi
làm việc.
Các định dạng thông điệp, tham số và lời gọi đến các API thì tương ứng trong
RPC và tài liệu là khác nhau. Nên việc quyết định chọn cái nào tùy thuộc vào thời
gian xây dựng và sự phù hợp của dịch vụ cần xây dựng.
2.1.4.8. Mô hình dữ liệu
Mục đích của mô hình dữ liệu SOAP là cung cấp một sự trừu tượng hóa độc
lập ngôn ngữ cho kiểu ngôn ngữ lập trình chung. Nó gồm có:
o Những kiểu XSD đơn giản như những kiểu dữ liệu cơ bản trong đa số
các ngôn ngữ lập trình như int, string, date, ...
o Những kiểu phức tạp, có 2 loại là struct (cấu trúc) và array (mảng)
Tất cả các phần tử và những định danh có trong mô hình dữ liệu SOAP thì được
định nghĩa bằng namespace (không gian tên) SOAP - ENC.