CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI 1.1 Lý do chọn đề tài Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử, công nghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh phục hết đỉnh cao này đến đỉnh cao khác. Mạng Internet là một trong những sản phẩm có giá trị hết sức lớn lao và ngày càng trở thành một công cụ không thể thiếu, là nền tảng chính cho sự truyền tải, trao đổi thông tin trên toàn cầu. Trong hệ thống giáo d ục, việc quản lý những thông tin của giảng viên, sinh viên trong các trường đại học đa phần vẫn còn thực hiện thủ công trên giấy và khó có thể nhất quán về việc quản lý gây nên hiện tượng thất thoát dữ liệu hoặc dữ liệu bị sai lệch. Chính vì nguyên do đó, việc “Xây dựng Website quản lý công tác của giáo viên chủ nhiệm” là thực sự cần thiết trong xã hội 4.0 hi ện nay.
Nhằm nâng cao khả năng quản lý dữ liệu, sự chuyên nghiệp trong môi trường giáo dục nên hệ thống quản lý công tác giáo là cần thiết phải có 1.2 Mục tiêu của đề tài - Phân tích được bài toán quản lý hệ thống quản lý công tác giáo viên chủ nhiệm. - Tìm hiểu cơ sở lý thuyết của quản lý cơ sở dữ liệu Microsoft SQL Server 2012 và ngôn ngữ C# ASP. - Phân tích và thiết kế CSDL, các biểu đồ use case và biểu đồ tuần tự. - Xây dựng Website quản lý công tác giáo viên chủ nhiệm.3 Giới hạn và phạm vi của đề tài Đề tài bước đầu được xây dựng để áp d ụng cho việc quản lý hệ thống công tác giáo viên chủ nhiệm và sau đó có thể phát tri ển thêm và ứng dụng cho trường học trong thực tế.
10 0 0 Tieu luan Xây dựng Website quản lý công tác giáo viên chủ nhiệm Đề tài xây dựng sử dụng công nghệ dựa trên ngôn ngữ C# và phát triển trên nền tảng MVC Framework, Entity Framework và công cụ lập trình Visual Studio 2017 và SQL Server 2012.4 Nội dung thực hiện Nội dung thực hiện/ nghiên cứu cụ thể của đề tài: - Hiểu được cách sử dụng cơ bản của ngôn ngữ C# ASP.NET, trong đó có các đối tượng, biến, hàm, phương thức, thuộc tính… - Tìm hiểu cách sử dụng MVC Framework, Entity Framework trong thiết kế và lập trình website bằng ngôn ngữ C# ASP. - Tìm hiểu cách sử dụng phần mềm Visual Studio 2017 và SQL Server để thiết kế giao diện và xây dựng các chức năng website quản lý bằng ngôn ngữ C#. - Biết cách sử dụng hệ quản trị CSDL bằng Microsoft SQL Server 2014. - Khảo sát và phân tích yêu cầu quy trình quản lý.
- Thiết kế và đặc tả hệ thống. - Xây dựng cơ sở dữ liệu. - Lập trình các module của hệ thống. - Kiểm thử hệ thống.
- Triển khai thực nghiệp hệ thống trên mạng Internet.5 Phương pháp tiếp cận - Nghiên cứu quy trình quản lý công tác giáo viên chủ nhiệm cho trường học và mạng internet, nghiên cứu ngôn ngữ C# ASP.NET, MVC Framework, Entity Framework và mô hình Model - View – Controller. - Sử dụng các phương pháp nghiên cứu: o Phương pháp đọc tài liệu. o Phương pháp phân tích mẫu, thực nghiệm 11 0 0 Tieu luan Xây dựng Website quản lý công tác giáo viên chủ nhiệm CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2. Tổng quan về ngôn ngữ 2.NET MVC là gì? Đầu năm 2002, Microsoft giới thiệu một kỹ thuật lập trình Web khá mới mẻ với tên gọi ban đầu là ASP+, tên chính thức sau này là ASP.Net, không những không cần đòi hỏi bạn phải biết các tag HTML, thiết kế web, mà nó còn chăm sóc mạnh lập trình hướng đối tượng trong quá trình xây dựng và phát triển ứng dụng Web.Net là kỹ thuật lập trình và phát triển ứng dụng web ở phía Server (Server-side) dựa trên nền tảng của Microsoft.
Hầu hết, những người mới đến với lập trình web đều bắt đầu tìm hi ểu những kỹ thuật ở phía Client (Client-side) như: HTML, Java Script, CSS (Cascading Style Sheets). Khi Web browser yêu cầu một trang web (trang web sử dụng kỹ thuật client-side), Web server tìm trang web mà Client yêu cầu, sau đó gởi về cho Client. Client nhận kết quả trả về từ Server và hiển thị lên màn hình.Net sử dụng kỹ thuật lập trình ở phía server thì hoàn toàn khác, mã lệnh ở phía server (ví d ụ: mã lệnh trong trang ASP) sẽ được biên dịch và thi hành tại Web Server. Sau khi được Server đọc, biên dịch và thi hành, kết quả tự động được chuyển sang HTML/JavaScript/CSS và trả về cho Client.
Tất cả các xử lý lệnh ASP.Net đều được thực hiện tại Server và do đó, gọi là kỹ thuật lập trình ở phía server. Mô hình lập trình MVC trong ASP.NET Mẫu kiến trúc Model – View – Controller được sử dụng nhằm chi ứng dụng thành ba thành phần chính: model, view và controller. Nền tảng ASP.NET MVC giúp cho chúng ta có thể tạo được các ứng dụng web áp dụng mô hình MVC thay vì tạo ứng d ụng theo mẫu ASP.NET Web Forsm. Nền tảng ASP.NET MVC có đặc điểm nổi bật là nhẹ (lighweigt), dễ kiểm thử phần giao di ện (so với ứng dụng Web Forms), tích hợp các tính năng có sẵn của ASP.
Nền tảng ASP.NET MVC 12 0 0 Tieu luan Xây dựng Website quản lý công tác giáo viên chủ nhiệm được định nghĩa trong namespace System.Mvc và là một phần của name space System. MVC là một mẫu thi ết kế (design pattern) chuẩn mà nhiều lập trình viên đã quen thuộc. Một số loại ứng d ụng web sẽ thích hợp với kiến trúc MVC. Một số khác vẫn thích hợp với ASP.NET Web Forms và cơ chế postbacks.
Đôi khi có những ứng dụng kết hợp cả hai kiến trúc trên. Nền tảng MVC bao gồm các thành phần dưới đây: Hình 2. 1: Mô hình quan hệ MVC Models: Các đối tượng Models là một phần của ứng dụng, các đối tượng này thiết lập logic của phần dữ liệu của ứng dụng. Thông thường, các đối tượng model lấy và lưu trạng thái của model trong CSDL.
Ví dụ như, một đối tượng Product (sản phẩm) sẽ lấy dữ liệu từ CSDL, thao tác trên dữ liệu và sẽ cập nhật dữ liệu tr ở lại vào bảng Products ở SQL Server. Trong các ứng d ụng nhỏ, model thường là chỉ là một khái ni ệm nhằm phân biệt hơn là được cài đặt thực thụ, ví dụ, nếu ứng dụng chỉ đọc dữ liệu từ CSDL và gởi chúng đến view, ứng dụng khong cần phải có tầng model và các lớp liên quan. 13 0 0 Tieu luan Xây dựng Website quản lý công tác giáo viên chủ nhiệm Trong trường hợp này, dữ liệu được lấy như là một đối tượng model (hơn là tầng model Views: Views là các thành phần dùng để hiển thị giao diện người dùng (UI). Thông thường, view được tạo dựa vào thông tin dữ liệu model.
Ví dụ như, view dùng để cập nhật bảng Products sẽ hiển thị các hộp văn bản, drop-down list, và các check box dựa trên trạng thái hiện tại của một đối tượng Product. Controllers: Controller là các thành phần dùng để quản lý tương tác người dùng, làm việc với model và chọn view để hiển thị giao diện người dùng. Trong một ứng dụng MVC, view chỉ được dùng để hiển thị thông tin, controller chịu trách nhiệm quản lý và đáp trả nội dung người dùng nhập và tương tác với người dùng. Ví dụ, controller sẽ quản lý các dữ liệu người dùng gởi lên (query-string values) và gởi các giá trị đó đến model, model sẽ lấy dữ liệu từ CSDL nhờ vào các giá trị này.
Mẫu MVC giúp bạn tạo được các ứng dụng mà chúng phân tách rạch ròi các khía cạnh của ứng dụng (logic về nhập li ệu, logic xử lý tác vụ và logic về giao diện). Mẫu MVC chỉ ra mỗi loại logic kể trên nên được thiếp lập ở đâu trên ứng dụng. Logic giao diện (UI logic) thuộc về views. Logic nhập liệu (input logic) thuộc về controller.
Và logic tác vụ (Business logic – là logic xử lý thông tin, mục đích chính của ứng dụng) thuộc về model. Sự phân chia này giúp bạn gi ảm bớt được sự phức tạp của ứng dụng và chỉ tập trung vào mỗi khía cạnh cần được cài đặt ở mỗi thời điểm. Ví dụ như bạn chỉ cần tập trung vào giao diện (views) mà không phải quan tâm đến logic xử lý thông tin của ứng dụng. Để quản lý sự phức tạp của ứng dụng, mẫu MVC giúp cho chúng ta có thể kiểm thử ứng dụng dễ dàng hơn hẳn so với khi áp dụng mẫu Web Forms.
Ví dụ, trong m ột ứng dụng ASP.NET Web Forms, m ột lớp thường được sử dụng để hiển thị thông tin xu ất ra cho người dùng và đồng thời xử lý thông tin người dùng nhập. Việc xây dựng các bộ test tự động cho ứng dụng Web Forms là r ất phức tạp, bởi để kiểm thử mỗi trang web, b ạn phải khởi t ạo đối tượng trang, khởi tạo tất cả các control được sử dụng trong trang và các lớp phụ thuộc trong ứng dụng. Và bởi vì có quá nhiều lớp cần được khởi tạo để chạy được trang, thật khó để có thể viết các test 14 0 0 Tieu luan Xây dựng Website quản lý công tác giáo viên chủ nhiệm chỉ tập trung vào một khía cạnh nào đó của ứng dụng. Và vì thế, kiểm thử đối với các ứng dụng dứa trên nền tảng Web Forms sẽ khó khăn hơn nhiều so với khi áp dụng trên ứng dụng MVC.
Hơn thế nữa, việc kiểm thử trên nền tảng Web Forms yêu cầu phải sử dụng đến web server. Nền tảng MVC phân tách các thành phần và sử dụng các interface (khái niệm giao diện trong l ập trình hướng đối tượng), và nhờ đó có thể kiểm thử các thành phần riêng biệt trong tình trạng phân lập với các yếu tố còn lại của ứng dụng. Sự phân tách rạch ròi ba thành phần của ứng dụng MVC còn giúp cho vi ệc lập trình diễn ra song song. Ví dụ như một lập trình viên làm việc với view, lập trình viên thứ hai lo cài đặt logic của controller và lập trình viên thứ ba có thể tập trung vào logic tác vụ của model tại cùng một thời điểm.
Bạn cần phải xem xét kỹ càng việc áp dụng mô hình ASP.NET MVC hay mô hình ASP.NET Web Forms khi xây d ựng một ứng dụng. Mô hình MVC không phải là mô hình thay thế cho Web Forms, bạn có thể dùng một trong hai mô hình. Trước khi quyết định sử dụng MVC hay Web Forms cho một web site cụ thể, bạn cần phải phân tích lợi ích khi chọn một trong hai hướng.