CHƯƠNG 1 CƠ SỞ LÝ THUYẾT Trong chương này em sẽ trình bày lý thuyết và ngôn ngữ lập trình sử dụng để cài đặt và xây dựng hệ thống theo dõi quá trình làm đồ án tốt nghiệp sinh viên thông qua quá trình khảo sát quy trình quản lý đồ án của khoa hiện nay, từ đó đưa ra phương pháp giải quyết bài toán quản lý theo dõi quá trình làm đồ án tốt nghiệp sinh viên. KHẢO SÁT QUY TRÌNH QUẢN LÝ ĐỒ ÁN TỐT NGHIỆP SINH VIÊN Công tác quản lý đồ án tốt nghiệp sinh viên khoa CNTT – Trường Đại học Lạc Hồng hiện nay được thực hiện bởi cán bộ quản lý phân công các giáo viên hướng dẫn cho sinh viên. Hàng năm, mỗi kỳ làm và bảo vệ đề tài tốt nghiệp của sinh viên, cán bộ quản lý NCKH của khoa sẽ lập danh sách phân công các giáo viên hướng dẫn cho sinh viên. Sinh viên sau đó sẽ chủ động liên hệ giáo viên hướng dẫn của mình để trao đổi.
Sau đó sẽ bắt đầu lên kế hoạch thực hiện đồ án. Giáo viên phải thực hiện giao công việc một cách thủ công cho sinh viên, cũng như phải kiểm tra, thực hiện và trao đổi thông qua các ứng dụng thứ 3 và khi đồ án hoàn thành thì source của đồ án sẽ chỉ được lưu trữ trong 1-2 năm và sinh viên các khoá sau gặp khó khăn khi tiếp cập thông tin về các đồ án đã lưu trữ vì phải thông qua cán bộ quản lý để tìm lại trong kho lưu trữ, điều này gây sự khó khăn cho sinh viên và cả cán bộ quản lý. Quy trình phân công giáo viên Khi đến kỳ thực hiện đồ án tốt nghiệp, khoa sẽ tổ chức họp để thống nhất danh sách phân công. Sau đó, cán bộ quản lý sẽ lập danh sách thông tin về phân công các giáo viên hướng dẫn cho sinh viên.
Nếu sinh viên, giáo viên có -6- sự thay đổi về phân công thì sẽ liên lạc với cán bộ quản lý để thay đổi, khi đã xong thì sẽ lưu trữ lại thông tin.1: Quy trình phân công giáo viên -7- Quy trình quản lý đồ án Giáo viên hướng dẫn sẽ trao đổi thông tin chi tiết về đồ án, công việc cần làm, hướng đi, mục tiêu, … với sinh viên.2: Quy trình quản lý đồ án Quy trình thực hiện đồ án Sau khi đã được giáo viên bàn giao yêu cầu công việc, sinh viên sẽ thực hiện các yêu cầu của giáo viên và sinh viên thông báo lại tiến độ hoàn thành các công việc của đồ án cho giáo viên.3: Quy trình thực hiện đồ án Quy trình xác nhận hoàn thành đồ án Sinh viên báo cáo đồ án hoàn thành với giáo viên hướng dẫn, sau khi giáo viên xác nhận đồ án hoàn thành thì sinh viên sẽ gửi các thông tin cần thiết về khoa như source, file báo cáo.4: Quy trình xác nhận hoàn thành đồ án. Quy trình lập hội đồng Ứng với mỗi đồ án đã được thông qua thì sẽ phân vào một hội đồng các giáo viên phản biện. Sau đó sẽ đến một hội đồng chấm báo cáo -10- Hình 1.5: Quy trình lập hội đồng Kết thúc kỳ tốt nghiệp Khi kỳ báo cáo đồ án tốt nghiệp kết thúc thì hồ sơ thông tin về đồ án sẽ được khoa lưu trữ lại.6: Quy trình lưu trữ đồ án 1. Những khó khăn và thuận lợi trong quá trình quản lý Khoa CNTT- Trường Đại học Lạc Hồng có bề dày kinh nghiệm trong công tác quản lý và cộng với đội ngũ cán bộ trẻ nhiệt huyết, có trình độ cao, chuyên môn sâu, nhiệt tình trong công việc đây là những yếu tố thuận lợi giúp cho việc quản lý đồ án tốt nghiệp sinh viên trở lên dễ dàng hơn.
Tuy nhiên, do nhu cầu mở rộng mạng lưới đào tạo mà Khoa có nhiều bậc đào tạo, hệ đào tạo với rất nhiều lớp khác nhau. Cho nên khi đến kỳ báo cáo tốt nghiệp của sinh viên thì giáo viên hướng dẫn và sinh viên còn gặp rất nhiều khó khăn trong việc kết nối và trao đổi cũng như kiểm tra tiến độ thực hiện đồ án do các yếu tố khách quan như các bên thứ 3 còn nhiều hạn chế, chưa phù hợp với nhu cầu của giáo viên, sinh viên hay yếu tố chủ quan như sinh viên, giáo viên cảm thấy bối rối khi phải dùng kết hợp nhiều công cụ khác nhau để quản lý việc thực hiện đồ án. Bài toán quản lý đồ án tốt nghiệp Từ việc khảo sát hiện trạng Quản lý Đồ án tốt nghiệp sinh viên Khoa CNTT- Trường đại học Lạc Hồng như trên, chúng ta cần thấy đưa ra một bài toán Quản lý đồ án tốt nghiệp sinh viên với các yêu cầu sau: Quản lý phân công giáo viên hướng dẫn Cán bộ quản lý thực hiện quy trình phân công giáo viên hướng dẫn cho sinh viên Quản lý đồ án Gồm các nghiệp vụ như: - Quản lý thông tin đồ án - Quản lý công việc đồ án. - Quản lý chủ đề trao đổi của đồ án.
Phân quyền người dùng Quyền hạn của người dùng như sinh viên, giáo viên, cán bộ quản lý được phân chia rõ ràng theo nghiệp vụ quản lý, với các chức năng quản. Hệ thống Hệ thống có giao diện dễ sử dụng, thân thiện với người dùng. Hệ thống cho phép người dùng truy cập thường xuyên, đòi hỏi chương trình tổ chức cơ sở dữ liệu lưu trữ các thông tin của đồ án sao cho tối ưu hiệu quả nhất, giảm thiểu tối đa sai sót và mất mát dữ liệu. TÌM HIỂU CÔNG NGHỆ SỬ DỤNG 1.
Hệ quản trị cơ sở dữ liệu MySQL MySQL là một hệ thống quản trị cơ sở dữ liệu mã nguồn mở (Relational Database Management System, viết tắt là RDBMS) hoạt động theo mô hình -13- client-server. RDBMS là một phần mềm hay dịch vụ dùng để tạo và quản lý các cơ sở dữ liệu (Database) theo hình thức quản lý các mối liên hệ giữa chúng. Qua khảo sát về quy mô dữ liệu thực tế thì cơ sở dữ liệu MySQL là một lựa chọn phù hợp vì ứng dụng có lượng truy xuất dữ liệu liên tục với số lượng lớn vì vậy tốc độ cao và sự ổn định của MySQL là lựa chọn phù hợp, bên cạnh đó khi dữ liệu quá lớn ứng dụng đòi hỏi khả năng mở rộng tốt của cơ sở dữ liệu. Ngôn ngữ lập trình Python Python là một ngôn ngữ lập trình thông dịch (interpreted), hướng đối tượng (object-oriented), và là một ngôn ngữ bậc cao (high-level) ngữ nghĩa động (dynamic semantics).
Python hỗ trợ các module và gói (packages), khuyến khích chương trình module hoá và tái sử dụng mã. Vì quy mô ứng dụng nhỏ và chỉ thực hiện các nghiệp vụ cơ bản, không quá nặng và phức tạp, nên lựa chọn python với sự gọn nhẹ đi kèm sẽ giúp xây dựng ứng dụng được nhanh hơn và đơn giản hơn. Django Framework Được phát triển dựa trên Python, Django giúp việc lập trình web trở nên đơn giản và dễ dàng. Tiết kiệm rất nhiều thời gian bởi code nhanh và ổn định.
Đây là điểm mạnh khiến việc lập trình web với Python vượt trội so với các ngôn ngữ khác. Vì ứng dụng cũng cần một hệ thống quản lý người dùng chặt chẽ vì thế lựa chọn Django với một hệ thống Admin được xây dựng sẵn tiết kiệm thời gian khi phải xây dựng từ đầu. Và ứng dụng tập chung vào các chức năng nghiệp vụ chính nên các thành phần phức tạp khác sẽ được Django xử lý. Và cuối cùng là độ thân thiện của Django khi mà nó giúp ứng dụng có thể triển khai trên bất cứ nền tảng nào.
-14- CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG QUẢN LÝ ĐỒ ÁN TỐT NGHIỆP Trong chương này, em sẽ trình bày phân tích và thiết kế hệ thống Quản lý Đồ án tốt nghiệp sinh viên khoa CNTT- Trường Đại học Lạc Hồng. Các nội dung chi tiết được trình bày bao gồm: khảo sát bài toán Quản lý Đồ án tốt nghiệp sinh viên, phân tích bài toán Quản lý Đồ án tốt nghiệp sinh viên, đặc tả yêu cầu hệ thống, phân tích các chức năng hệ thống, thiết kế hệ thống. KHẢO SÁT VÀ PHÂN TÍCH BÀI TOÁN 2. Khảo sát Khi đến kỳ tốt nghiệp và cán bộ quản lý đã phân công giáo viên hướng dẫn cho sinh viên.
Sau khi giáo viên hướng dẫn và sinh viên trao đổi và thống nhất đồ án thì giáo viên hướng dẫn sẽ lập danh sách các yêu cầu công việc cho sinh viên thực hiện, trao đổi thông tin thông qua các công cụ hỗ trợ khác nhau. Điều này tạo nhiều khó khăn trong quá trình làm việc vì tính chất rời rạc và thiếu tính liên tục. Từ những thực tế trên, đặt ra một bài toán để giải quyết các vấn đề cho sinh viên và giáo viên hướng dẫn: Xây dựng hệ thống theo dõi quá trình làm đồ án tốt nghiệp của sinh viên. Thực hiện quản lý liên quan đến đồ án cho giáo viên, lưu trữ kết quả làm việc của sinh viên và sourcecode đồ án.
Phân tích bài toán Từ những phân tích trên, có thể đưa ra các nghiệp vụ của hệ thống như sau: Admin: - Quản lý các danh mục khoá. -15- - Quản lý các danh mục lớp. - Quản lý các danh mục chủ đề Người quản lý: - Phân công giáo viên hướng dẫn - Tạo thông báo về thời gian kỳ tốt nghiệp. - Nhập thông tin hội đồng phản biện, báo cáo.
Giáo viên hướng dẫn: - Quản lý thông tin đồ án đang hướng dẫn - Tạo danh sách, cập nhật công việc đồ án. - Trao đổi tại các mục công việc. - Tạo thông báo đến sinh viên Sinh viên: - Quản lý các công việc được giao - Cập nhật tiến độ công việc được giao. - Tạo các chủ đề trao đổi với giáo viên hướng dẫn.
Người sử dụng chung: - Tìm kiếm đồ án theo chủ đề, theo tên, theo giáo viên hướng dẫn. - Xem các thông tin về đồ án, giảng viên. một cách trực quan với các thông tin chi tiết đi kèm. ĐẶC TẢ YÊU CẦU HỆ THỐNG Hệ thống cho phép đăng ký, lưu trữ, cập nhật, tìm kiếm các thông tin liên quan đến đồ án tốt nghiệp sinh viên.
Yêu cầu chức năng hệ thống Chức năng của Admin: -16- - Quản lý chủ đề: Chức năng này cho phép admin được thêm mới các chủ đề, sửa, xoá thông tin của chủ đề như tên chủ đề… - Quản lý niên khoá: Chức năng này cho phép admin được thêm mới, sửa, xoá các khoá. - Quản lý lớp: Chức năng này cho phép admin được thêm lớp, sửa, xoá thông tin lớp. - Quản lý người dùng: Chức năng này cho phép admin phân loại người dùng, thêm, sửa, xoá các thông tin người dùng.