Đặt vấn đề Trong những năm gần đây, sự phát triển bùng nổ của công nghệ thông tin đã giúp cho cuộc sống của con người trở nên dễ dàng và thuận tiện hơn. Cụ thể, ứng dụng của cuộc cách mạng công nghệ thông tin 4.0 đã được ứng dụng rộng rãi trong các lĩnh vực đời sống như bệnh viện, trường học, cơ sở, công ty… thậm chí cả quán cà phê. Ứng dụng công nghệ thông tin bằng cách quản lý các hoạt động thu chi. Quy trình đánh giá, xếp loại thi đua khen thưởng là một trong những việc đòi hỏi tính khách quan, công bằng, không nể nang, trù lập hay thiên vị và phải có độ chính xác cao.
Cụ thể hơn là phải căn cứ vào nhiệm vụ, chức trách được giao và những kết quả thực hiện nhiệm vụ, thể hiện thông qua sản phẩm, công việc cụ thể,. Trong khi, việc thực hiện quản lý công tác đánh giá, xếp loại thi đua khen thưởng còn thủ công và tốn rất nhiều thời gian, chi phí tiền bạc để thực hiện thì việc ứng dụng công nghệ thông tin là một vấn đề cấp thiết sẽ giúp tiết kiệm cho chúng ta về mặt chi phí tiền bạc và thời gian, công sức nên em sẽ đề xuất phát triển và thiết kế website quản lý công tác thi đua khen thưởng tại Trường Đại Học An Giang. Lịch sử giải quyết vấn đề Hiện nay, Trường Đại học An Giang đã được công nhận đạt tiêu chuẩn chất lượng giáo dục, điều này cho thấy trường đang từng bước lớn mạnh trên toàn khu vực Đồng bằng sông Cửu Long, đặc biệt là trên toàn quốc. Trường có đội ngũ giảng viên có năng lực, trình độ chuyên môn cao, tâm huyết với nghề đã góp phần nâng cao vị thế của trường trong khu vực.
Mặt khác, nó thúc đẩy cuộc cách mạng công nghệ thông tin 4.0 trong lĩnh vực giáo dục, với những ứng dụng cụ thể trong trường học. Đó là, số hóa nhiều hoạt động, từ thủ công, giấy tờ và thủ tục đến công nghệ, máy tính và trực tuyến. Nếu việc đánh giá mô phỏng và ghi nhận được áp dụng công nghệ thì sẽ tiết kiệm được chi phí cả về thời gian và tiền bạc. Ngoài ra, công nghệ thông tin ngày nay phát triển rất nhanh, lợi ích của Internet là không thể phủ nhận.
Với sự phát triển của một số công nghệ mạng hiện nay, việc sử dụng mạng trở nên dễ dàng và thuận tiện hơn so với công nghệ và phần mềm client/server trên máy tính. Web có thể được sử dụng trên hầu hết mọi thiết bị thông minh, chẳng hạn như điện thoại thông minh, máy tính, máy tính bảng, máy tính để bàn, máy tính xách tay,… Vì vậy, em muốn đề xuất phát 4 triển và thiết kế website quản lý công tác thi đua khen thưởng tại Trường Đại Học An Giang. Phạm vi của đề tài Phạm vi nghiên cứu của đề tài là cá nhân viên chức, tập thể đơn vị toàn Trường Đại học An Giang. Phương pháp nghiên cứu / hướng giải quyết vấn đề Phương pháp nghiên cứu thực nghiệm và nghiên cứu lý thuyết: Phương pháp phân tích và tổng hợp lý thuyết: Bắt đầu từ việc căn cứ vào những quyết định, hướng dẫn, để thực hiện công tác đánh giá thi đua, khen thưởng và xếp loại.
Thu thập các thông tin dữ liệu thực từ các mẫu excel tổng hợp về các quyết định khen thưởng. Phương pháp thực nghiệm: Sau khi tìm hiểu và biết rõ các quy định, thủ tục quy trình để thực hiện công tác đánh giá thi đua, khen thưởng và xếp loại, thì tiến hành xây dựng các sơ đồ chức năng, sơ đồ lớp, sơ đồ quan hệ, cơ sở dữ liệu tương ứng và từ đó chúng ta thiết kế nên giao diện phần mềm. Công cụ hỗ trợ thực hiện: Framework Laravel 9 theo mô hình MVC và kèm theo đó là cơ sở dữ liệu MySQL và Bootstrap 5.3 sử dụng về giao diện cho phần mềm. Cơ sở lý thuyết Để xây dựng được các sơ đồ chức năng, sơ đồ lớp, sơ đồ quan hệ và cơ sở dữ liệu tương ứng với vấn đề này thì em đã tìm hiểu thông qua quy trình công tác đánh giá thi đua, khen thưởng và xếp loại theo hướng dẫn số 1882/HD- ĐHAG và Quyết định 341/QĐ-ĐHQG về Quy định chế độ làm việc của giảng viên và công tác thi đua khen thưởng, đánh giá và xếp loại của trường Đại học An Giang.
Đề tài sẽ được xây dựng từ các công nghệ sau: Xây dựng server thì sử dụng Framework Laravel 9 với mô hình MVC rất thích hợp để sử dụng cho web. Giao diện thì sử dụng Bootstrap 5. Lưu trữ thì sử dụng cơ sở dữ liệu MySQL. Laravel Dưới sự bùng nổ công nghệ 4.0 trong xã hội hiện nay, đã ra đời rất nhiều nền tảng ngôn ngữ lập trình, trong đó ngôn ngữ dành cho nền tảng Web là phổ biến nhất ví dụ như PHP, Java, Ruby on Rails, .NET MVC, Python.
Và để giúp 5 cho việc dễ dàng sử dụng, nghiên cứu và học tập thuận tiện thì các Framework đã từng bước xuất hiện và được phát triển từ các ngôn ngữ trước đó mà ta từng sử dụng. Nếu như chúng ta sử dụng Framework thì sẽ tiết kiệm được rất nhiều chi phí tiền bạc và thời gian, sức khoẻ,. Laravel đứa con tinh thần của Taylor Otwell, một. Khoảng năm 2010 – 2011, khi bắt đầu tiếp xúc với PHP, Taylor Otwell đã chọn CodeIgniter với những tính năng thịnh hành “vượt mặt” cả “anh lớn” Symfony.
Trong suốt thời gian làm việc với CodeIgniter, anh sớm nhận ra những hạn chế nhất định [2]. Nhằm khắc phục những hạn chế này, đồng thời phát huy khả năng xuất sắc về design-pattern của mình, Taylor quyết định tạo ra một Framework mới. Tiêu chí anh đặt ra là đơn giản, dễ hiểu, hỗ trợ developer thực hiện ý tưởng nhanh nhất bằng nhiều tính năng hỗ trợ [2]. Tháng 6/2011, Taylor Otwell đã “trình làng” Lavarel như một giải pháp thay thế cho CodeIgniter.
Với giải pháp này, lập trình viên (developer) đã được hỗ trợ nhiều tính năng mới mẻ với thao tác vô cùng đơn giản. Eloquent ORM mạnh mẽ, xác thực đơn giản, phân trang hiệu quả, …là những tính năng thu hút sự chú ý của đông đảo người dùng của phiên bản đầu tiên này [2]. Laravel là một PHP Framework mã nguồn mở và miễn phí, được phát triển Taylor Otwell và nhằm mục tiêu hỗ trợ phát triển các ứng dụng web theo cấu trúc model – view - controller (MVC). Những tính năng nổi bật của Laravel bao gồm cú pháp dễ hiểu – rõ ràng, một hệ thống đóng gói Modular và quản lý gói phụ thuộc, nhiều cách khác nhau để truy cập vào các cơ sở dữ liệu quan hệ, nhiều tiện ích khác nhau hỗ trợ việc triển khai và bảo trì ứng dụng [3].
Những ưu điểm vượt trội đó đã giúp Laravel nhanh chóng chiếm được chỗ đứng trên thị trường và phát triển mạnh mẽ [1]. Laravel hiện được phát hành theo giấy phép MIT, với source code được lưu trữ tại Gitthub. Tính đến thời điểm hiện tại, Laravel đã phát triển đến phiên bản 9.x với nhiều cải tiến. Vào khoảng tháng 3 năm 2015, các lập trình viên đã có cuộc bình chọn PHP framework phổ biến nhất năm 2015, theo sau lần lượt là Symfony2, Nette, CodeIgniter, Yii2 và một số khác.
Trước đó, tháng 8 năm 2014, Laravel đã trở thành project PHP phổ biến nhất và được theo dõi nhiều nhất Github [3]. Những tính năng nổi bật của Laravel [1]: Nâng cấp, cài đặt… với Composer. Thao tác với cú pháp đẹp mắt và đơn giản với Eloquent ORM. 6 Hỗ trợ biến Laravel thành một web service API với Restful API.
Cung cấp các lệnh cần thiết để phát triển ứng dụng với Artisan. Hỗ trợ tạo các trường trong cơ sở dữ liệu, thêm các cột trong bảng, tạo mối quan hệ giữa các bảng,. Cung cấp sẵn các tính năng đăng nhập, đăng ký, quên mật khẩu, … với Authentication. Hỗ trợ test lỗi để sửa chữa với Unit Testing.
Sử dụng Laravel, người dùng sẽ được [1]: Tiếp cận các tính năng mới nhất mà PHP cung cấp. Ưu điểm này đặt biệt hữu ích với người dùng Namespaces. Tham khảo nguồn tài nguyên đa dạng tài liệu khác nhau. Mỗi phiên bản phát hành của Laravel đều kèm theo nguồn tài liệu phù hợp để người dùng tiện tra cứu.
Tích hợp với dịch vụ mail dựa trên nền tảng đám mây hoặc local nhờ API sạch trên thư viên SwiftMailer. Tốc độ xử lý nhanh, đáp ứng nhu cầu tạo lập website hay các dự án lớn trong thời gian ngắn. Dễ sử dụng nhờ tuân theo mẫu thiết kế mô hình 3 lớp MVC dễ hiểu. Tính bảo mật cao.
Hỗ trợ các cache backend như Memcached và Redis out-of-the-box. Công cụ tích hợp cho dòng lệnh – Artisan Tạo liên kết đến các route được đặt tên Giảm đáng kể chu kỳ phát triển sản phẩm vì Laravel giúp tích hợp nhanh hơn cùng sự hỗ trợ của cộng đồng Laracasts. Tuy có rất nhiều ưu điểm tốt những song song đó nó còn có các nhược điểm như các PHP framework khác. Dù vậy, Framework Laravel bộc lộ khá ít nhược điểm.
Vấn đề lớn nhất có thể kể đến của framework này là thiếu sự liên kết giữa các phiên bản, nếu cố cập nhật code, có thể khiến cho ứng dụng bị gián đoạn hoặc phá vỡ. Bên cạnh đó, framework Laravel cũng quá nặng cho ứng dụng di động, khiến việc tải trang trở nên chậm chạp. Mô hình MVC Mô hình MVC gồm 3 loại chính là thành phần bên trong không thể thiếu khi áp dụng mô hình này [4]: Model: Là bộ phận có chức năng lưu trữ toàn bộ dữ liệu của ứng dụng và là cầu nối giữa 2 thành phần bên dưới là View và Controller. Một model là dữ liệu được sử dụng bởi chương trình.
Đây có thể là cơ sở dữ 7 liệu, hoặc file XML bình thường hay một đối tượng đơn giản. Chẳng hạn như biểu tượng hay là một nhân vật trong game. View: Đây là phần giao diện (theme) dành cho người sử dụng. View là phương tiện hiển thị các đối tượng trong một ứng dụng.
Chẳng hạn như hiển thị một cửa sổ, nút hay văn bản trong một cửa sổ khác. Nó bao gồm bất cứ thứ gì mà người dùng có thể nhìn thấy được. Controller: Là bộ phận có nhiệm vụ xử lý các yêu cầu người dùng đưa đến thông qua View. Một controller bao gồm cả Model lẫn View.
Nó nhận input và thực hiện các update tương ứng. Hình 1: Mô hình MVC 5. Lịch sử của MVC MVC được tiến sĩ Trygve Reenskaug đưa vào ngôn ngữ lập trình Smalltalk-76 khi ông đến Trung tâm Nghiên cứu Xerox Palo Alto (PARC) vào giữa năm 1970.