Hệ thống quản lý đăng ký học phần trực tuyến

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHỆ KHOA CÔNG NGHỆ THÔNG TIN a & b LUẬN VĂN TỐT NGHIỆP Đề tài: QUẢN LÝ HỆ THỐNG ĐĂNG KÝ HỌC PHẦN TRỰC TUYẾN CHO TRƯỜNG ĐẠI HỌC GVHD: VŨ THANH HIỀN SVTH: NGUYỄN TRỌNG TUẤN MSSV: 10102205 TP. Hồ Chí Minh Năm 2006 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN GIÁO VIÊN HƯỚNG DẪN NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN GIÁO VIÊN PHẢN BIỆN LỜI CẢM ƠN Em xin gửi lời cảm ơn chân thành đến quý Thầy Cô trường Đai Học Dân Lập Kỹ Thuật Công Nghệ nói

doc61 trang | Chia sẻ: huyen82 | Lượt xem: 2302 | Lượt tải: 1download
Tóm tắt tài liệu Hệ thống quản lý đăng ký học phần trực tuyến, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
chung và khoa Công Nghệ Thông Tin nói riêng, quý thầy cô đã truyền đạt cho chúng em nhiều kiến thức qúy báu trong suốt bốn năm học vừa qua. Đặc biệt, em xin gửi lời cảm ơn đến thầy Vũ Thanh Hiền - thầy hướng dẫn luận văn của em - thầy đã tận tình hướng dẫn, chỉ bảo và giúp đỡ em từ lúc bắt đầu cho đến khi hoàn thành luận văn tốt nghiệp này. Mục lục Hình 1: Trang Home 39 Hình 2: Trang ListNews 40 Hình 3: Trang ThongBao 40 Hình 4: Trang Login 41 Hình 5: Trang NewDetail 41 Hình 6: Trang InitRegister 42 Hình 7: Trang RegisterCourse 42 Hình 8: Trang ListClassRegister 43 Hình 9: Trang ConditionSubject 43 Hình 10: Trang ViewMark 44 Hình 11: Trang GeneralCurriculumnDetails 45 Hình 12: Trang InitCourse 45 Hình 13: Trang ListCourse 46 Hình 14: Trang OpenCourse 47 Hình 15: Trang CourseDetail 48 Hình 16: ListStudentRegister 48 Hình 17: Trang GeneralCurriculumnView 49 Hình 18: Trang GeneralCurriculumnEdit 49 Hình 19: Trang GeneralCurriculumnAddSubject 50 Hình 20: Trang SpecialityCurriculumnView 50 Hình 21: Trang SpecialityCurriculumnEdit 51 Hình 22: Trang SpecialityCurriculumnAddSubject 51 CHƯƠNG 1: GIỚI THIỆU CHUNG Giới thiệu chung Ngày nay, cùng với sự phát triển của hệ thống máy tính thì hệ thống mạng Internet đang phát triển như vũ bão. Con người có thể liên lạc, trao đổi thông tin với nhau qua hệ thống này. Điều này khiến cho con người có thể dễ dàng đến gần với Internet hơn, trong đó có một bộ phận không nhỏ luôn tiếp xúc với Internet là sinh viên. Sinh viên thông qua trang web của nhà trường chỉ để nắm bắt được các hoạt động trong nhà trường, như là: xem tin tức, thời sự, xem chương trình giảng dạy, xem thời khoá biểu, xem điểm, v.v....mà chưa có một chức năng nào trên web để hỗ trợ đăng ký học phần. Công việc đăng ký học phần là một công việc thường xuyên đối với sinh viên và với cán bộ giáo vụ của khoa của một trường đại học. Tuy nhiên đây là một công việc rất phức tạp và tốn rất nhiều thời gian và công sức của cán bộ giáo vụ mỗi khi vào đầu một học kỳ. Để mở được một lớp học phần trong học kỳ, cán bộ giáo vụ phải trải qua rất nhiều giai đoạn, như là: xem chương trình đào tạo, viết thư mời cho giảng viên để mời tham gia giảng dạy học phần, phải thống kê các số lượng sinh viên của các khoá học để từ đó có thể mở được các lớp học phần với số lượng sinh viên thích hợp và số lượng lớp cần mở, thông báo các lớp phần dự định mở trong học kỳ, phát phiếu đăng ký học phần,nhận phiếu đăng ký học phần của sinh viên,kiểm tra việc đăng ký của sinh viên có hợp lệ hay không,thống kê tình hình đăng ký v.v… Còn đối với sinh viên thì việc đăng ký học phần cũng gặp rất nhiều khó khăn, như là phải tìm hiểu kỹ về các lớp dự định mở để có thể đăng ký, không biết lớp đó đã đủ số lượng đăng ký chưa, đăng ký lớp đó có hợp lệ hay không. Nói chung là tốn rất nhiều thời gian cho cả cán bộ giáo vụ và sinh viên. Xuất phát từ nhu cầu đó, việc phát triển 1 hệ thống hỗ trợ đăng ký học phần trực tuyến là rất cần thiết. Hệ thống phải có khả năng hỗ trợ cho cán bộ giáo vụ của khoa trong việc quản lý đăng ký học phần, làm đơn giản hoá việc mở lớp học phần, thống kê tình hình đăng ký của sinh viên. Mặt khác sinh viên có thể thông qua hệ thống này để đăng ký học phần một cách nhanh chóng và hiệu quả, tránh được những đăng ký không hợp lệ hay xảy ra. Giới thiệu đề tài Quản lý hệ thống đăng ký học phần trực tuyến ra đời từ nhu cầu thực tế của công việc đăng ký học phần, đồng thời ứng dụng công nghệ mới với mục đích làm cho chương trình có thể thực thi nhanh, ổn định,giao diện thân thiện và dễ sử dụng và đáp ứng được nhu cầu quản lý đăng ký học phần. Hệ thống đăng ký học phần trực tuyến hỗ trợ đầy đủ các chức năng chính cho công việc đăng ký học phần, như là: Quản lý chương trình đào tạo, bao gồm 2 giai đoạn: đại cương và chuyên ngành, cho phép cán bộ giáo vụ thêm, xoá, cập nhật học phần. Quản lý các lớp học phần: cho phép cán bộ giáo vụ mở lớp học phần thích hợp dựa vào chương trình đào tạo, xoá hoặc cập nhật các lớp học phần trong một học kỳ của năm học, thống kê được tình hình đăng ký của các lớp học phần. Đăng ký học phần: cho phép sinh viên thông qua trang web để đăng ký học phần. Ngoài ra, hệ thống còn hỗ trợ một số chức năng khác, như là: Quản lý thông báo: giúp cho cán bộ giáo vụ có thể đăng các thông báo cần thiết của khoa mình, hoặc xoá các thông báo đã hết thời hạn đăng. Cho phép sinh viên xem chương trình đào tạo của trường, xem điểm của một học kỳ và các phần trợ giúp khác. Các công cụ sử dụng Database: Microsoft SQL Server 2000 Ngôn ngữ lập trình: Microsoft Visual Studio .NET C#. Kiểu Web: ASP.NET Thiết kế các sơ đồ: UML CHƯƠNG 2: CÁC KIẾN THỨC LIÊN QUAN Giới thiệu .NET Framework Bộ .NET Framework là một môi trường dùng dễ quản lý việc phát triển và thực thi ứng dụng. Framework quản lý các vấn đề thực thi của chương trình như: cấp phát bộ nhớ cho việc lưu trữ dữ liệu và các câu lệnh, gán hoặc phục hồi quyền cho phép tương tác với chương trình, khởi tạo và quản lý việc thực thi ứng dụng và quản lý việc cấp phát lại bộ nhớ cho tài nguyên đã lâu không sử dụng đến. Bộ .NET Framework bao gồm 2 thành phần chính: Common Language Runtime và thư viện lớp của của bộ .NET Framework. Common Language Runtime (CLR): là môi trường quản lý việc thực thi code. Nó cung cấp các dịch vụ như: biên dịch code, cấp phát bộ nhớ, quản lý phân luồng và bộ thu gom rác. Thông qua Common Type System (CTS) nó bảo đảm rằng các đoạn code được thực thi trong môi trường an toàn bằng cách buộc các đoạn code phải truy cập vào phần bảo mật. Thư viện lớp của bộ .NET Framework cung cấp tập hợp các kiểu được thiết kế để tích hợp với Common Language Runtime. Các kiểu dữ liệu do bộ .NET Framework cung cấp đều là hướng đối tượng và cho phép tích hợp các ứng dụng từ bộ .NET Framework Ngôn ngữ lập trình và bộ .NET Framework Bộ .NET Framework được thiết kế cho khả năng tương thích đa ngôn ngữ, điều này có nghĩa là các component của .NET có thể tương tác với nhau mà không quan tâm chúng được viết bằng ngôn ngữ lập trình nào. Vì thế, 1 ứng dụng được viết bằng Visual Basic .NET có thể tham chiếu đến 1 tập tin thư viện dll viết bằng ngôn ngữ Visual C# hoặc bất kỳ ngôn ngữ .NET nào. Khả năng này làm mở rộng tính kế thừa trong hướng đối tượng. Ví dụ: 1 lớp trong Visual Basic .NET có thể kế thừa 1 lớp trong Visual C# và ngược lại. Tính tương thích đa ngôn ngữ lập trình như vậy là do Common Language Runtime. Khi một ứng dụng .NET được biên dịch, nó sẽ chuyển đổi từ ngôn ngữ lập trình .NET nào sang dạng Microsoft Intermediate Language (MSIL hay IL). Ngôn ngữ cấp thấp này được thiết kế để mà CRL có thể đọc và hiểu được. Bởi vì các phần mang tính thực thi và dll của .NET tồn tại dưới dạng IL, nên chúng có thể vận hành 1 cách tự do. Common Language Specification (CLS) định ra những tiêu chuẩn tối thiểu mà trình biên dịch ngôn ngữ .NET phải đảm bảo rằng bất cứ mã nguồn nào được biên dịch từ trình biên dịch .NET có thể vận hành với .NET Framework được. Common Language Runtime Thư viện hỗ trợ BCL Xử lý tiểu trình Kiểm tra dữ liệu Trình bảo mật Quản lý COM Quản lý lỗi ngoại lệ Bộ gỡ lỗi Trình biên dịch tức thời ngôn ngữ IL Quản lý đoạn code Bộ thu gom rác Trình nạp các lớp vào để xử lý CLS bảo đảm cho sự tương thích giữa các component của .NET, do các ứng dụng .NET được chuyển sang IL trước khi thực thi, nên các loại dữ liệu cơ bản được biểu diễn lại thành loại dữ liệu của .NET. Vì thế cả 2 kiểu dữ liệu Integer trong VB.NET và Int trong VC# đều được biểu diễn lại trong IL là System.Int32. Bởi vì cả 2 ngôn ngữ đều dùng chung 1 kiểu dữ liệu hệ thống có thể chuyển đổi cho nhau, nên nó có thể truyền dữ liệu giữa các component và tránh mất thời gian cho việc chuyển đổi hay các lỗi phát sinh khó phát hiện được. Visual Studio .NET đưa ra các ngôn ngữ lập trình như Visual Basic .NET, C#, Visual C++ và ngôn ngữ script là JScript. Ta cũng có thể viết code xử lý cho bộ .NET Framework bằng các ngôn ngữ lập trình khác. Có rất nhiều trình biên dịch của các công ty như Fortran .NET, Cobol .NET, Perl .NET v.v... và các ngôn ngữ lập trình này chia sẻ tính tương thích đa ngôn ngữ và thừa kế. Do đó ta có thể viết code cho bộ .NET Framework bằng ngôn ngữ nào theo ta chọn và nó sẽ có thể tương tác với code được viết cho bộ .NET Framework bằng bất cứ ngôn ngữ nào. Kiến trúc ứng dụng .NET Assembly là tập hợp code, tài nguyên và metadata mô tả ứng dụng. Assembly Manifest chứa thông tin nằm trong Assembly. Assembly Manifest: Định danh thông tin, như là tên và số phiên bản của Assembly. Danh sách các kiểu do Assembly đưa ra. Danh sách các Assembly yêu cầu khác phục vụ cho Assembly của ứng dụng. Danh sách các câu lệnh bảo mật truy cập code cho Assembly. Phần này bao gồm danh sách các quyền do Assembly yêu cầu và các quyền bị Assembly từ chối. 1 Assembly có 1 hay nhiều Assembly Manifest và nó chứa tất cả các thông tin mô tả cho Assembly.Assembly Manifest có thể được lưu trong 1 tập tin riêng hoặc có thể được lưu vào 1 trong các module của Assembly. 1 Assembly cũng có thể chứa 1 hay nhiều module, module chứa code tạo ứng dụng hay thư viện và metadata mô tả đoạn code đó. Khi biên dịch 1 dự án sang Assembly, đoạn code sẽ được chuyển từ ngôn ngữ cấp cao sang IL. Bởi vì tất cả code xử lý đầu tiên phải được chuyển sang code IL để các ứng dụng được viết bằng các ngôn ngữ khác có thể dễ dàng tương tác. Thực thi và biên dịch ứng dụng .NET Khi biên dịch ứng dụng .NET, nó được biên dịch sang mã nhị phân, một hay nhiều Assembly bao gồm các tập tin thực thi và dll dưới dạng dưới dạng IL, có ít nhất là một trong các Assembly sẽ chứa 1 tập tin có thể thực thi được làm điểm khởi tạo cho ứng dụng. Khi thực thi chương trình, Assembly đầu tiên được nạp vào bộ nhớ. Lúc này, CLR sẽ dò xét trong Assembly Manifest và phân tích các yêu cầu để chạy ứng dụng. Nó dò xét các quyền bảo mật do Assembly yêu cầu và so sánh chúng với chính sách bảo mật của hệ thống. Nếu không thoả mãn thì ứng dụng sẽ không chạy. Nếu thoả mãn CLR sẽ thực thi đoạn code. Nó sẽ tạo ra 1 tiến trình để ứng dụng chạy và bắt đầu thực thi ứng dụng. Khi khởi động xong, phần code nào cần thực thi sẽ được nạp vào bộ nhớ và biên dịch sang mã máy nhị phân từ IL bằng trình biên dịch Just-In-Time (JIT) của CLR. Khi được biên dịch xong, mã lệnh được biên dịch lưu vào bộ nhớ, vì thế mỗi phần của đoạn code được biên dịch chỉ 1 lần trong suốt quá trình thực thi ứng dụng. Bất cứ khi nào chương trình thực thi 1 nhánh của đoạn code mà chưa được thực thi, trình biên dịch JIT sẽ biên dịch nó trước khi thực hiện và lưu vào bộ nhớ dạng mã nhị phân. Theo cách này, sự trình diễn ứng dụng sẽ đạt được tối ưu bởi vì chỉ 1 phần của chương trình nào cần thực thi mới được biên dịch. Tìm hiểu ASP.NET Giới thiệu ASP.NET Mặc dù ASP.NET có tên giống như 1 công nghệ phát triển ứng dụng web trước đây của Microsoft là ASP nhưng chúng hoàn toàn khác nhau. Microsoft đã xây dựng lại hoàn toàn trong ASP.NET dựa trên cơ sở của CLR thuộc nền .NET. Người lập trình có thể viết code ASP.NET bằng cách sử dụng nhiều ngôn ngữ lập trình khác nhau mà được hỗ trợ bởi nền .NET. ASP.NET thực thi nhanh hơn so với các trang web được viết bằng script trước đây bởi vì toàn bộ trang web được biên dịch thành 1 hoặc vài tập tin dll dựa trên web server. ASP.NET cố gắng làm đơn giản hoá cho người phát triển chương trình chuyển đổi ứng dụng desktop thành các ứng dụng web bằng cách nó cho phép các nhà lập trình viên xây dựng trang web từ các control tương tự như các control trong ứng dụng window. ASP.NET khuyến khích các nhà lập trình viên phát triển ứng dụng web bằng mô hình event-driven GUI, và nó có khả năng kết hợp các công nghệ phát triển web trước đây như là Javascript vào bên trong các component, nghĩa là 1 control trên ASP.NET vừa có sự kiện của client và server. ASP.NET sử dụng .NET Framework như là một cơ sở hạ tầng, .NET Framework yêu cầu quản lý môi trường runtime - bằng cách cung cấp các máy ảo ( virtual machine) với JIT và các lớp thư viện. Các điểm thuận lợi của ASP.NET Code được biên dịch chỉ 1 lần kể từ lần thay đổi nội dung cuối cùng nên khả năng thực thi nhanh hơn. Có chế độ điều khiển lỗi: bắt lỗi và xử lý lỗi ASP.NET mang lại sự thuận lợi cho các nhà phát triển ứng dụng web vì nó hỗ trợ hơn 20 ngôn ngữ như: C#, VisualBasic.NET, Visual C.NET, Visual J#, Perl.NET v.v.... và tất cả các thư viện phần mềm của .Net Framework. Hỗ trợ nhiều control và các lớp thư viện cho phép ứng dụng ứng dụng web 1 cách nhanh chóng. Nó có khả năng lưu trữ vào bộ nhớ cache toàn bộ trang web hoặc chỉ 1 phần, điều này làm cải tiến hiệu suất thực thi của trang web. Các ứng dụng web được viết bằng ASP.NET chạy nhanh, hiệu quả cao, dễ quản lý, mở rộng, mềm dẻo nhưng trên hết tất cả là rất dễ hiểu và dễ code. Độ bảo mật cao bởi vì hỗ trợ chế độ bảo mật ở mức Windows và ứng dụng. Tương tác Client - Server Các ứng dụng ASP.NET là 1 sự pha trộn giữa đoạn mã - ngôn ngữ đánh dấu về phía client với xử lý về phía server. Khi 1 trang web ASP.NET được tải về phía trình duyệt của người dùng, các mã được thêm vào bao gồm cả các mã của phiên bản ASP trước đó. Điều này làm cho các chức năng trong thẻ form sẽ được nhiều hơn, bao gồm các sự kiện về phía client và server, sự xác nhận các tính hợp lệ, và khả năng lưu giữ giá trị. Server sẽ xác định loại trình duyệt của người dùng, và gửi các ngôn ngữ đánh dấu tương ứng đối với trình duyệt đó. Một vài sự tương tác của client sẽ được thực hiện trong trình duyệt trong khi đó một số thông tin yêu cầu sẽ được gửi cho server xử lý và trang bị thay đổi sẽ được trả về. Xử lý trên Server Khi server nhận được 1 request, nó sẽ tìm đến trang đưa ra request bằng cách sử dụng thông tin đường dẫn được chỉ định, và các hệ thống liên quan sẽ xử lý trên trang đó. Nhưng đối với ASP cổ điển, không có nhiều việc xử lý này mặc dù chắc chắn bộ nhớ cache đã thực hiện xử lý này. Server sẽ xử lý trang ASP.NET bằng cách sử dụng các tập tin dll riêng biệt, đặc biệt cho ASP.NET. Khác với những phiên bản trước của ASP, ASP.NET là một tập hợp rất lớn các đối tượng để thực hiện các chức năng xử lý như là các HTTP request, cơ sở dữ liệu, hệ thống tập tin và định hình cho response. Khi một response kết thúc, nó sẽ được đưa ra cho trình duyệt của người dùng, thông thường là các thẻ HTML và trình duyệt sẽ hiển thị nội dung lên màn hình. Biên dịch và phân phối đến trang ASP.NET IIS sẽ so khớp đường dẫn URL trong request dựa vào tập tin vật lý trên đĩa bằng cách biên dịch đường dẫn ảo vào trong đường dẫn quan hệ với thư mục gốc của Web (wwwroot). Trong khi tập tin được tìm thấy, phần mở rộng của tập tin (.aspx) được so khớp với danh sách các định dạng kiểu tập tin để gửi cho khách hoặc việc xử lý. Nếu đây là lần đầu trang được mở kể từ khi có sự thay đổi, mã ASP được biên dịch thành assembly bằng cách dùng CRL biên dịch thành MSIL và sau đó thành các mã nhị phân cho việc thực thi trang web. Mã nhị phân này là một lớp dll của NET và được lưu trữ trong một vị trí tạm thời. Lần kế mà trang được yêu cầu, server sẽ kiểm tra xem mã có bị thay đổi không? Nếu không, thì giai đoạn biên dịch được bỏ qua và các mã của lớp được biên dịch lúc trước sẽ được thực thi. Trái lại, lớp sẽ bị xoá và được biên dịch là từ đoạn mã mới. Đoạn mã sau khi biên dịch được thực thi và các giá trị gửi đi được thông dịch, như là các giá trị trong thẻ form hoặc trong URL. Nếu các nhà phát triển sử dụng Web Form thì sau đó server có thể nhận ra phần mềm nào mà người dùng sử dụng và những trang được trả về cho người dùng sẽ được biến đổi theo những yêu cầu về phía người dùng, ví dụ: trả về các đoạn mã theo trình duyệt của Netscape hoặc đoạn mã cho thiết bị di động ( Wireless Markup Language [WML] ). Các kết quả sẽ được trả về cho trình duyệt của người dùng. Các thành viên trong thẻ Form được chuyển đổi thành ngôn ngữ script và các ngôn ngữ đánh dấu về phía client như HTML và Javascript cho trình duyệt web hoặc WML và WMLScript cho thiết bị di động. Các mô hình truy cập dữ liệu Giới thiệu Các mô hình truy cập dữ liệu liên quan đến quá trình phát triển của máy tính, từ cục bộ cho đến phân bố. Khi số lượng người dùng và dữ liệu tăng lên, các mô hình truy cập dữ liệu phát triển từ 1 người sử dụng trên 1 ứng dụng thành nhiều người sử dụng trên mạng Internet. Sự phát triển mới nhất của mô hình hiện này là XML Web Service. Định nghĩa cấu trúc n-tier Trong mô hình truy cập dữ liệu, 1 tier là một mức cục bộ hoặc là một lớp chứa các thành phần cục bộ của một ứng dụng. Các tier có thể nằm trên một hoặc nhiều máy hay nằm trên các tier vật lý. Số lượng tier phản ánh số lượng các dịch vụ được chia thành các mức nhỏ, nhưng không phải là số lượng máy tính. Các mức này bao gồm: Client tier: được gọi là mức trình diễn hoặc lớp dịch cho người sử dụng, lớp này chứa giao diện người dùng. Business logic tier: chịu trách nhiệm tương tác với tài nguyên dữ liệu, còn gọi là “middle” tier, nó thường được hiện thực trong hầu hết các lớp 1 cách vật lý, ví dụ như là store procedure trong CSDL, các class trong ứng dụng Server hoặc các đoạn code trong ứng dụng client. Data Service tier: chứa dữ liệu mà business logic dùng trong ứng dụng. Interoperability tier: cho phép tương tác giữa các ứng dụng trên các hệ điều hành khác nhau hoặc các loại dữ liệu khác nhau. Ưu điểm của việc sử dụng nhiều tier là khả năng mở rộng của ứng dụng. Mỗi 1 tier được thêm vào cho phép ta thêm vào nhiều người dùng hơn và tách riêng ra các mức của ứng dụng. Việc tách riêng các mức như vậy cho phép thực hiện thay đổi chỉ tại 1 vùng nào đó trong ứng dụng mà không làm thay đổi toàn bộ các tier khác. Ví dụ như trong ứng dụng 1 tier, bất cứ 1 sự thay đổi nào đều yêu cầu toàn bộ ứng dụng phải được biên dịch lại và phân bố lại từ đầu. Bảng so sánh giữa các mô hình truy cập dữ liệu Mô hình Mô tả Ưu điểm Khuyết điểm 1 tier Monolithic Mô hình này đặc trưng cho 1 người sử dụng và tất cả các lớp đều nằm trên 1 máy tính đơn Do mọi thứ đều nằm tại 1 nơi nên việc truy xuất rất dễ dàng Cập nhật chương trình yêu cầu phải chỉnh sửa mã nguồn, biên dịch lại và phân bố cho từng người sử dụng, điều này làm giảm khả năng mở rộng ứng dụng 2 tier Client/Server Lớp user và lớp business logic nằm trên 1 tier, các dịch vụ dữ liệu nằm trên 1 máy tính khác. Mô hình này đặc trưng cho 2 hay nhiều máy tính Cung cấp 1 vài chức năng tách biệt Khó mở rộng vì client đang là “fat client” do vừa chứa lớp trình diễn và business logic. Việc bảo trì và phân bố phần mềm sẽ gặp khó khăn 3 tier Mỗi 1 dịch vụ nằm trong 1 lớp riêng biệt. Business logic trở thành 1 lớp mới gọi là “middle” tier Các lớp client bây giờ là “thin client” do chỉ chứa client logic hoặc lớp trình diễn Việc quản lý sẽ phức tạp hơn, sự bảo mật không được linh hoạt và mở rộng như mô hình n-tier N-tier CSDL phân bố ở mức mô hình xí nghiệp cho phép nhiều client truy cập vào 1 ứng dụng server đơn. Các tier mới được thêm vào nếu nhu cầu về tier mới là cần thiết Cho phép các ứng dụng khác nhau trên các hệ điều hành khác nhau tương tác với người dùng và dữ liệu Các lời gọi thủ tục từ xa (RPC) không thể vượt qua firewall N-tier với giao diện Web Các dịch vụ được phân bố giữa Internet và Intranet Không mất chi phí cài đặt trên client, quá trình cập nhật chỉ xảy ra trên Web hay ứng dụng máy Server. Do sử dụng giao thức HTTP nên có thể vượt qua firewall Lưu ý: khi số tier tăng thì độ phức tạp và khả năng mở rộng của mô hình truy cập dữ liệu tăng theo. CHƯƠNG 3: NHIỆM VỤ Phân tích nhiệm vụ Tìm hiểu công nghệ .NET của Microsoft từ đó thấy được các lợi ích khi phát triển ứng dụng trên nền này. Tìm hiểu web ASP.NET, từ đó thấy được các ưu điểm khi phát triển ứng dụng web với ASP.NET so với các loại web khác. Tìm hiểu các nghiệp vụ cơ bản của việc quản lý lớp học phần và đăng ký học phần tại các trường đại học, từ đó đưa ra được các chức năng cơ bản của hệ thống như là: Quản lý chương trình đào tạo của nhà trường Quản lý các lớp học phần. Quản lý đăng ký học phần. Quản lý các thông báo. Xem chương trình đào tạo, xem điểm Thiết kế một cơ sở dữ liệu cho hệ thống đăng ký học phần trực tuyến. Xây dựng trang web mang tính chất demo thực hiện các chức năng cơ bản trên. Giải thích phương án lựa chọn Tại sao hệ thống quản lý đăng ký học phần trực tuyến được viết bằng Web ASP.NET trên ngôn ngữ của C#, cơ sở dữ liệu quản lý SQL Server 2000 Nền .NET Framework, là môi trường nền cho các dịch vụ Web (Web Service). Web Service cho phép các ứng dụng trao đổi và chia sẻ dữ liệu trên Internet mà không cần biết đang ở hệ điều hành nào và ngôn ngữ nào Sử dụng Web ASP.NET: như đã phân tích trên ta thấy việc phát triển Web với ASP.NET có rất nhiều thuận lợi, như là: hỗ trợ đa ngôn ngữ, code được biên dịch chỉ một lần kể từ lần thay đổi sau cùng nên hiệu quả thực thi trang web, có thể chạy trình nhiều trình duyệt khác nhau, rất dễ code bởi vì hỗ trợ hơn 5000 lớp phục vụ cho việc truy xuất tài nguyên, dễ mở rộng ứng dụng. Đặc biệt nhất là nó có thể giao tiếp với các dịch vụ web khác nhờ hỗ trợ mô hình web với XML. Ngôn ngữ C#: là ngôn ngữ rất quen thuộc đối với các lập trình viên, bởi vì nó có cấu trúc gần giống như ngôn ngữ C, C++. Đây là ngôn ngữ hướng đối tượng mà trên nền .NET mọi thứ đều là đối tượng. Vì vậy việc phát triển các ứng dụng với ngôn ngữ C# là rất dễ dàng và nhanh chóng. Lưu trữ dữ liệu trên SQL Server: Khả năng lưu trữ lớn Hỗ trợ sao lưu dữ liệu tránh dữ liệu bị mất Hỗ trợ các giao tác ( transaction) Hỗ trợ các thủ tục giúp cho hiệu suất thực thi của trang Web trên mỗi khi có nhiều người dùng cùng sử dụng hệ thống. Hệ thống bảo mật tương đối ổn định. CHƯƠNG 4: PHÂN TÍCH - THIẾT KẾ - HIỆN THỰC - KẾT QUẢ Sơ đồ use case Phân tích các use case Nghiệp vụ: “Đăng nhập” Tên use case “Đăng nhập” Mã use case: USC1 Mô tả: cho phép người dùng đăng nhập vào hệ thống đăng ký môn học trực tuyến. Dòng chảy sự kiện ( dòng logic chung): người dùng chọn chức năng “Đăng nhập” trên phần menu của trang web. Dòng hành động chính: người dùng nhập “Tên đăng nhập” và “Mật khẩu” và “Quyền đăng nhập”. Sau đó hệ thống sẽ kiểm tra “Tên đăng nhập” và “Mật khẩu” và cho phép người dùng đăng nhập vào hệ thống hay không ? Dòng hành động thay thế: Người dùng nhập sai “Tên đăng nhập” và “Mật khẩu”, hệ thống sẽ thông báo lỗi đăng nhập. Khi đó người dùng có thể: Đăng nhập lại: trở về dòng hành động chính Huỷ bỏ: use case “Đăng nhập” sẽ kết thúc. Hệ thống không tìm thấy CSDL hoặc vì một lý do nào đó thì use case “Lỗi” sẽ được kích hoạt. Điều kiện thoát: người dùng không tiếp tục đăng nhập hoặc chọn các chức năng khác của hệ thống ( mà các chức năng không yêu cầu phải đăng nhập trước khi thực hiện) Các yêu cầu đặc biệt: không có Điều kiện trước đó: không có Điều kiện sau đó: người dùng có thể thực hiện được các chức năng khác mà hệ thống phải yêu cầu đăng nhập trước khi thực hiện. Nghiệp vụ: "Quản lý lớp học phần" Tên use case: “Quản lý lớp học phần” Mã use case: USC2 Mô tả: use case này cho phép bộ phận giáo vụ của khoa mở 1 lớp học phần mới, cập nhật, hoặc xoá một lớp học phần trong một học kỳ của một năm học. Dòng hành động chính: use case này bắt đầu sau khi người dùng đăng nhập thành công vào hệ thống. Sau đó, người dùng tiếp tục chọn khoa, năm học, học kỳ để xử lý Sau đó, hệ thống sẽ liệt kê danh sách các lớp học phần được mở trong năm học, học kỳ và khoa mà người dùng vừa chọn. Khi đó người dùng có thể chọn 1 trong các chức năng sau: mở 1 lớp học phần, cập nhật lớp học phần, xoá lớp học phần, xem thông tin chi tiết đăng ký của một lớp học phần. Sau khi cán bộ chọn 1 trong các chức năng trên thì 1 trong các luồng phụ sau được thực hiện: Mở 1 lớp học phần: Hệ thống yêu cầu người dùng nhập vào thông tin của một lớp học phần sẽ được mở trong học kỳ của năm học hiện hành. Người dùng chọn chức năng “Lưu”. Khi đó hệ thống sẽ lưu lớp học phần này vào trong CSDL.. Người dùng có thể tiếp tục mở 1 lớp học phần khác hoặc kết thúc luồng phụ này. Điều kiện thoát: người dùng chọn chức năng kết thúc luồng phụ hoặc sau khi chọn chức năng lưu Cập nhật lớp học phần Người dùng chọn 1 lớp học phần cần thay đổi thông tin chi tiết. Hệ thống sẽ xác định mã lớp học phần và hiển thị thông tin chi tiết của lớp học phần đó. Người dùng có thể thay đổi bất kỳ thông tin nào của lớp học phần. Người dùng chọn chức năng “Cập nhật”. Hệ thống sẽ cập nhật lại những thông tin đã thay đổi về lớp học phần đó. Sau đó, người dùng có thể tiếp tục thay đổi thông tin của lớp học phần đó hoặc kết thúc luồng phụ này và trở lại luồng chính. Điếu kiện thoát: người dùng chọn chức năng kết thúc luồng này. Xoá lớp học phần Người dùng chọn các lớp học phần cần xoá, sau đó chọn chức năng “Xoá” Hệ thống sẽ: Xác định mã lớp học phần của các lớp được chọn Xoá đăng ký của sinh viên có trong lớp học phần được chọn để xoá Xoá thông tin của các lớp học phần được chọn để xoá. Cập nhật lại danh sách các lớp học phần có trong năm học của học kỳ hiện tại. Điều kiện thoát: sau khi thực hiện xong chức năng xoá. Xem thông tin chi tiết đăng ký Người dùng chọn vào cột số lượng sinh viên đăng ký của một lớp học phần Hệ thống sẽ xác định mã của lớp học phần đó và liệt kê danh sách sinh viên đã đăng ký lớp học phần đó. Người dùng có thể trở về luồng chính hoặc xoá đăng ký của sinh viên….. Điều kiện thoát: người dùng chọn chức năng kết thúc luồng phụ. Các sự kiện khác: Chưa có lớp học phần Khi luồng chính được bắt đầu, nếu chưa có 1 lớp học phần nào được mở thì hệ thống sẽ thông báo cho người dùng. Không tìm thấy mã lớp học phần Sau khi chọn một lớp học phần, hệ thống không tìm thấy mã lớp học phần thì use case lỗi sẽ được thực hiện. Không nhập đầy đủ thông tin của 1 lớp học phần Nếu trong luồng phụ “Mở 1 lớp học phần” người dùng chưa nhập đầy đủ thông tin thì hệ thống sẽ nhắc nhở các thông tin cần phải được nhập. Đã tồn tại mã lớp học phần Nếu trong luồng phụ “Mở 1 lớp học phần” người dùng nhập mã lớp học phần đã tồn tại trong CSDL thì hệ thống sẽ nhắc nhở người dùng nhập 1 mã lớp khác. Điều kiện trước đó: người dùng phải đăng nhập vào hệ thống (với quyền đăng nhập là giáo vụ). Điều kiện sau đó: nếu use case thành công thì lớp học phần sẽ được mở, cập nhật hoặc xoá. Ngược lại, trạng thái của hệ thống không thay đổi. Nghiệp vụ “Đăng ký lớp học phần” Tên use case: Đăng ký lớp học phần Mã use case: USC3 Mô tả: use case này cho phép sinh viên đăng ký các lớp học phần được mở trong 1 học kỳ của một năm học. Sinh viên được phép đăng ký, huỷ đăng ký các lớp học phần nếu thoả mãn một số điều kiện cho phép. Dòng chảy sự kiện: sinh viên chọn “Đăng ký học phần” trên menu của trang web. Dòng sự kiện chính: Use case này bắt đầu khi người dùng đăng nhập thành công vào hệ thống. Hệ thống sẽ xác định mã người dùng, từ đó biết được mã số sinh viên, rồi hệ thống sẽ hiển thị thông tin của sinh viên, bắt đầu một phiên làm việc. Người dùng chọn chức năng “Tiếp tục đăng ký”. Hệ thống sẽ liệt kê danh sách các lớp học phần được mở trong học kỳ. Sinh viên chỉ được phép đăng ký các lớp học phần khi thoả mãn các điều kiện sau: Lớp học phần còn thời hạn đăng ký. (ĐK1) Đã đậu các học phần điều kiện của lớp học phần đó. (ĐK2) Số lượng đăng ký nhỏ hơn sĩ số dự kiến. (ĐK3) Số tín chỉ tối thiểu < = Tổng số tín chỉ đăng ký < = Số tín chỉ tối đa. (ĐK4) Sinh viên chọn chức năng “Đăng ký”. Hệ thống sẽ xác định: Tổng số tín chỉ đăng ký = số tín chỉ đã đăng ký + số tín chỉ đã chọn. Nếu thoả mãn (ĐK4) thì hệ thống sẽ liệt kê danh sách các lớp học phần mà sinh viên đã đăng ký trong học kỳ của năm học. Ngược lại hệ thống sẽ thông báo lỗi, sinh viên phải chọn lại các lớp học phần. Sinh viên có thể: Tiếp tục đăng ký: chọn các lớp học phần trong danh sách liệt kê Kết thúc đăng ký: hệ thống sẽ chấm dứt phiên làm việc. Xoá đăng ký: Sinh viên chọn các lớp học phần cần xoá, chọn chức năng xoá. Hệ thống sẽ tính lại số tín chỉ đăng ký sau khi xoá. Nếu thoả mãn ĐK4 thì hệ thống sẽ: Xoá các lớp học phần vừa chọn. Cập nhật lại danh sách các lớp học phần đăng ký của sinh viên. Tính số tín chỉ đăng ký. Điều kiện thoát: sinh viên chọn chức năng “Kết thúc đăng ký”. Các sự kiện khác Sinh viên đăng ký không lệ vì không thoả mãn các điều kiện đăng ký, khi đó hệ thống sẽ hiển thị thông báo, sinh viên phải đăng ký lại. Điều kiện trước đó: sinh viên phải đăng nhập vào hệ thống (với quyền đăng nhập là sinh viên). Điều kiện sau đó: nếu use case thành công, việc đăng ký của sinh viên sẽ được ghi nhận lại. Nghiệp vụ “Xem điểm” Tên use case: Xem điểm Mã use case: USC4 Mô tả: use case này cho phép sinh viên xem bảng điểm của mình trong học kỳ trước đó. Dòng chảy sự kiện: sinh viên chọn chức năng “Xem điểm” trên menu của trang Web. Dòng sự kiện chính: Sinh viên nhập mã số sinh viên, chọn năm học và học kỳ. Hệ thống sẽ truy xuất và hiển thị bảng điểm. Sinh có thể tiếp tục xem điểm hoặc kết thúc luồng chính này bằng cách thực hiện một chức năng khác của hệ thống. Điều kiện thoát: sau khi bảng điểm được hiển thị. Các sự kiện khác: Không có điểm trong học kỳ của năm học vừa chọn hoặc không tìm thấy mã số sinh viên: hệ thống sẽ hiển thị một thông báo. Khi đó sinh viên có thể nhập lại thông tin hoặc kết thúc use case này. Điều kiện trước đó: không có. Điều kiện sau đó: nếu use case thành công thì bảng điểm của sinh viên trong học kỳ vừa chọn sẽ được hiển thị, ngược lại thì trạng thái của hệ thống không thay đổi. Nghiệp vụ “Xem chương trình đào tạo” Tên use case: Xem chương trình đào tạo Mã use case: USC5 Mô tả: use case này cho phép sinh viên xem chương trình đào tạo của khoá học và khoá mà mình đang học, bao gồm 2 giai đoạn: đại cương và chuyên ngành. Dòng chảy sự kiện: sinh viên chọn chức năng “Xem chương trình đào tạo” từ menu của trang web. Dòng sự kiện chính: Nếu sinh viên chọn xem chương trình đào tạo giai đoạn đại cương thì hệ thống sẽ yêu cầu sinh viên nhập thông tin về chương trình như: bậc học, khoá học, khoa và học kỳ ( giai đoạn đại cương thông thường là 3 học kỳ đầu hoặc có thể hơn tuỳ theo ngành nghề đào tạo) Nếu sinh viên chọn xem chương trình đào tạo giai đoạn chuyên ngành hệ thống sẽ yêu cầu sinh viên nhập thôn._.

Các file đính kèm theo tài liệu này:

  • docBaoCao.doc