TỔ NG QUAN
T ổ ng quan v ấn đề đượ c nghiên c ứ u
Trong kỷ nguyên công nghệ hiện nay, công nghệ thông tin đóng vai trò chủ đạo trong các lĩnh vực như giáo dục, y tế và kinh tế, mang lại lợi ích to lớn cho việc học tập và làm việc Sự phát triển mạnh mẽ của công nghệ giúp con người quản lý, lưu trữ và xử lý thông tin phức tạp một cách dễ dàng hơn, từ công việc đến sinh hoạt hàng ngày Nhờ vào máy tính và thiết bị di động, chúng ta có thể thực hiện những nhiệm vụ mà trước đây rất khó khăn Các doanh nghiệp phần mềm và trường đại học đang nỗ lực hoàn thiện hệ thống công nghệ thông tin của mình để công nghệ hóa các hoạt động và học tập, với mức độ hoàn thiện phụ thuộc vào khả năng lập trình, kinh nghiệm và quy trình thiết kế hệ thống.
Hiện nay, việc quản lý học sinh, sinh viên tại các trường đại học gặp nhiều khó khăn trong việc quản lý thông tin như điểm số, môn học, thời khóa biểu và thông tin cá nhân Để giải quyết vấn đề này, tôi đã chọn đề tài “Xây dựng ứng dụng quản lý sinh viên cho thiết bị di động” Ứng dụng được phát triển trên nền tảng hệ điều hành Android Studio và sử dụng ngôn ngữ lập trình Java để cài đặt và xử lý các chức năng theo yêu cầu cụ thể Các công cụ hỗ trợ cho quá trình phát triển ứng dụng cũng được sử dụng hiệu quả.
Cơ sở dữ liệu SQLite
Công cụ phát triển: Android Studio, JDK, máy ảo AVD
1.2 Nhiệm vụ đồ án Ứng dụng quản lý sinh viên trên trên thiết bịdi động được tạo ra nhằm mục đích giúp cho việc quản lý sinh viên trong các trường đại học trở nên nhanh chóng tiện lợi và chính xác hơn Tạo ra giao diện thân thiện, gần gũi, tiện lợi dễ sử dụng đối với người dùng nhưng vẫn đầy đủ các chức năng cần thiết liên quan đến việc quản lý thông tin của sinh viên Với việc thực hiện đồ án này sẽ giúp em hiểu rõ hơn về ngôn ngữ lập trình trên thiết bịdi động và các công cụ phát triển ứng dụng cũng như cách xây dựng phần mềm và hỗ trợ chương trình Đồng thời , cũng giúp bản thân em chau chuốt rèn luyện và bồi dưỡng thêm kinh nghiệm của bản thân
Hình 1.3 Sơ đồ cấu trúc đồ án
C ấu trúc đồ án
Hình 1.3 Sơ đồ cấu trúc đồ án
CƠ SỞ LÝ THUY Ế T
Các khái ni ệm và cơ chế ho ạt độ ng
Android Studio là phần mềm phát triển ứng dụng cho thiết bị Android, bao gồm các công cụ như code editor, debugger, và hệ thống build/deploy Nó cho phép lập trình viên phát triển ứng dụng từ đơn giản đến phức tạp một cách nhanh chóng Quá trình xây dựng ứng dụng di động bao gồm việc viết mã, tạo file cài đặt, và kiểm thử trên thiết bị Thay vì phải thực hiện từng bước trên nhiều thiết bị khác nhau, Android Studio giúp tối ưu hóa quy trình, cho phép tất cả các công đoạn diễn ra trên một máy tính, tiết kiệm thời gian và công sức cho lập trình viên.
Android Studio được ra mắt vào ngày 16 tháng 5 năm 2013 tại hội nghị Google I/O
Android Studio đã bắt đầu giai đoạn truy cập xem trước sớm với phiên bản 0.1 vào tháng 5 năm 2013, và sau đó chuyển sang giai đoạn beta với phiên bản 0.8 được phát hành vào tháng 6 cùng năm.
2014 Phiên bản ổn định đầu tiên được ra mắt vào tháng 12 năm 2014, bắt đầu từ phiên bản 1.0
Based on JetBrains' IntelliJ IDEA software, Android Studio is specifically designed for Android application development It supports multiple operating systems, including Windows and Mac OS.
X và Linux là IDE chính thức của Google để phát triển ứng dụng Android gốc để thay thế cho Android và Development Tools (ADT) dựa trên Eclipse
Trang web chính thức của android studio : https://developer.android.com/studio/intro/index.html
Phiên Bản hiện tại của android studio mà bạn có thể tải về máy :
SQLite là một thư viện lập trình cung cấp một SQL Database Engine tự tổ chức, không cần server hay cấu hình, nhưng vẫn hỗ trợ đầy đủ tính năng quản lý giao tác Đây là SQL Database Engine mã nguồn mở theo mô hình dữ liệu quan hệ phổ biến nhất toàn cầu nhờ vào tính cơ động, dễ sử dụng, gọn nhẹ, hiệu quả và đáng tin cậy.
Một số đặc điểm chính của SQLite:
SQLite đảm bảo đầy đủ 4 đặc tính ACID của các giao tác, bao gồm tính nguyên tố (Atomic), tính nhất quán (Consistent), tính cô lập (Isolated) và tính bền vững (Durable) Điều này có nghĩa là, mặc dù kích thước của nó rất nhỏ gọn, nhưng các giao tác với SQLite vẫn duy trì tính toàn vẹn ngay cả khi hệ thống gặp sự cố như crash hoặc mất điện.
Không cầncấu hình: với SQLite chúng ta sẽ không cần phải cài đặt hay quản trị nó
SQLite includes nearly all the popular features of SQL according to the SQL92 standard However, it does not support certain functionalities such as RIGHT OUTER JOIN, FULL OUTER JOIN, and FOR EACH STATEMENT TRIGGER.
Toàn bộ Database được lưu trữ trong 1 tập tin trên đĩa duy nhất
Hỗ trợ CSDL lên tớihằng TetraByte, trong đó các kiểu dữ liệu chuỗi và blobs lên tới hằng GigaByte.
Bộ thư viện quản lý SQLite rất nhỏ gọn, với kích thước dưới 500 KB cho phiên bản đầy đủ tính năng Cụ thể, phiên bản SQLite 3.7.17 hiện tại chỉ chiếm khoảng 350 KB trên hệ điều hành 32 bit và dưới 409 KB trên hệ điều hành 64 bit.
KB trên các hệ thống 64 bit.
Hầu hết các thao tác trên dữ liệu thông thường đềuchạy nhanh hơn các Database Engine theo kiểu Client/Server phổ biến khác.
Đơngiản và dễsửdụngbộ API tương ứng
Mã nguồn mởđược viết bằng ANSI-C, được comment rất tốt và có thể tái sử dụng với bất cứ mục đích gì.
SQLite có thể được tải về và nhúng vào các dự án khác nhau dưới hình thứcmột Single ANSI-C source-code file
SQLite là một cơ sở dữ liệu tự tổ chức, không phụ thuộc vào các thư viện bên ngoài, điều này làm cho nó trở thành lựa chọn lý tưởng cho việc nhúng vào thiết bị di động và các ứng dụng cần hoạt động mà không cần cấu hình hệ thống phức tạp.
SQLite cung cấp một client đơn giản giao tiếp qua dòng lệnh, gọi là SQLite3 (trên Windows là sqlite3.exe), để quản lý cơ sở dữ liệu SQLite.
Ứng dụng cơ sở dữ liệu SQLite:
Do đặc điểm được thiết kế của SQLite ngay từ đầu, nên CSDL nhúng này phù hợp với một số tình huống sử dụng như sau:
SQLite là một định dạng tập tin lý tưởng cho các ứng dụng, thay thế các file cấu hình truyền thống như ini hay xml, mà không cần phụ thuộc vào parser Việc sử dụng SQLite không chỉ khắc phục những hạn chế của các định dạng cũ mà còn cho phép chương trình chạy trên nhiều nền tảng khác nhau.
SQLite là một lựa chọn phổ biến cho cơ sở dữ liệu (CSDL) trên các thiết bị điện tử như PDA, điện thoại di động, MP3 Player và set-top box Với kích thước nhỏ gọn, SQLite sử dụng bộ nhớ và băng thông hiệu quả, đồng thời không cần quản trị viên chuyên nghiệp Nếu bạn phát triển ứng dụng cho các thiết bị iOS như iPhone, iPad hoặc các thiết bị Android và Windows Mobile, SQLite là giải pháp CSDL lý tưởng cho các nền tảng di động này.
SQLite là một lựa chọn phổ biến cho các website vừa và nhỏ, vì nó không yêu cầu cấu hình phức tạp và lưu trữ dữ liệu dưới dạng tập tin trên đĩa.
SQLite có thể được sử dụng thay thế cho các cơ sở dữ liệu quan hệ doanh nghiệp trong một số tình huống như kiểm thử và trình diễn Điều này là nhờ vào khả năng hoạt động nhanh chóng và không yêu cầu cài đặt của SQLite.
Một sốđiểm hạn chế của SQLite:
Mặc dù SQLite có nhiều ưu điểm nổi bật được quảng bá trên trang web, nhưng khi so sánh với các hệ quản trị cơ sở dữ liệu mạnh mẽ khác như Oracle Database hay SQL Server, SQLite vẫn bộc lộ một số điểm yếu nhất định.
SQLite sử dụng cơ chế khóa coarse-gained locking, cho phép nhiều người đọc dữ liệu đồng thời, nhưng chỉ cho phép một người ghi dữ liệu tại một thời điểm.
PHÂN TÍCH THI Ế T K Ế
Phân tích
3.1.1 Nghiệp vụ quản lí sinh viên
Nghiệp vụ này đòi hỏi ứng dụng cho phép người sử dụng (ở đây là quản trị viên ) thực hiện các công việc cụ thểnhư sau:
Thêm sinh viên/ điểm/thời khóa biểu/khoa/môn học
Sửa thông tin/ thay thế thông tin về sinh viên, điểm,….
Xóa sinh viên/xóa điểm/xóa thời khóa biểu/Khoa/Môn học theo nhu cầu của trường
Xem thông tin vềsinh viên, điểm…
Nghiệp vụ này đòi hỏi ứng dụng cho phép người sử dụng (ở đây quản trị viên) thực hiện các công việc cụ thể như sau:
Yêu cầu truy xuất danh sách của sinh viên
Thêm sinh viên vào danh sách
Tìm kiếm được thông tin của sinh viên đó.
Thi ế t k ế
3.2.1 Các mô hình giải pháp
Sơ đồ phân rã chức năng (BFD – Business Function Diagram)
Hình 3.2.1.1 Sơ đồ phân rã chức năng (BFD – Business Function Diagram)
Sơ đồ xử lý luồng dữ liệu (DFD – Data Flow Diagram)
Hình 3.2.1.2 Sơ đồ ngữ cảnh chức năng đăng nhập
Hình 3.2.1.3 Sơ đồ ngữ cảnh chức năng thêm Thông Tin Sinh Viên
Hình 3.2.1.4 Sơ đồ ngữ cảnh chức năng xóa Thông Tin Sinh Viên
Hình 3.2.1.5 Sơ đồ ngữ cảnh chức năng sửa Sinh Viên
Hình 3.2.1.6 Sơ đồ ngữ cảnh chức năng tìm kiếm Thông Tin Sinh Viên
Sơ đồ tuần tự (Sequence Diagram)
Hình 3.2.1.7 Sơ đồ tuần tự chức năng đăng nhập
Hình 3.2.1.8 Sơ đồ tuần tự chức năng thêm Sinh Viên
3.2.2 Thực thể và thuộc tính
Bảng 3.2.2.1: Tài Khoản STT Tên thuộc tính Kiểu dữ liệu Ý nghĩa Ghi chú
1 Id Interger Số thứ tự của Tài
2 MATKHAU Varchar Mật Khẩu của người dùng
3 TENTK Nvarchar Tên Tài Khoản
4 DIACHI Nvarchar Địa chỉ của người dùng
5 SĐT Number Số điện thoại người dùng
Bảng 3.2.2.2: Sinh Viên STT Tên thuộc tính Kiểu dữ liệu Ý nghĩa Ghi chú
1 MSSV Interger Mã Số của SV Khóa chính
2 MAKHOA Varchar Mã của khoa
3 HOTEN Nvarchar Tên của Sinh Viên
4 ĐIACHI Nvarchar Địa Chỉ của SV
5 Email Varchar Email của Sinh Viên
6 NGAYSINH DateTime Ngày sinh của Sinh
7 GIOITINH Varchar Giới Tính Của Sinh
Bảng 3.2.2.3: Khoa STT Tên thuộc tính Kiểu dữ liệu Ý nghĩa Ghi chú
1 MAKHOA Interger Mã Khoa Khóa chính
Bảng 3.2.2.4: Môn Học STT Tên thuộc tính Kiểu dữ liệu Ý nghĩa Ghi chú
1 MAMH Interger Mã Môn Học Khóa chính
2 TENMH Varchar Tên Môn Học
Bảng 3.2.2.5: Thời Khóa Biểu STT Tên thuộc tính Kiểu dữ liệu Ý nghĩa Ghi chú
1 MASV Interger Mã Sinh Viên Khóa chính
2 MATKB Interger Mã Thời Khóa Biểu
3 CTTKB Nvarchar Nội dung thời khóa biểu
Bảng 3.2.2.6: Kết Quả Học Tập
STT Tên thuộc tính Kiểu dữ liệu Ý nghĩa Ghi chú
1 MADIEMTHI Interger Mã b ảng điể m Khóa Chính
2 MONHOC Varchar Tên của môn học
KẾ T QU Ả TH Ự C NGHI Ệ M Error! Bookmark not defined
Giao di ệ n x ử lý ch ức năng phân quyề n
Để truy cập vào ứng dụng, người dùng cần đăng nhập bằng tên người dùng và mật khẩu đã được cấp khi khởi động chương trình.
Giao di ệ n x ử lý ch ức năng chính
Hình 4.2.1 Giao diện trang chủ
Trang chủ của ứng dụng bao gồm ba nút chính: Trang chủ để hiển thị thông tin và sự kiện của trường, Quản Trị Viên cho phép thêm, xóa và sửa thông tin về sinh viên, điểm, khoa, thời khóa biểu và môn học, và Hồ Sơ Cá Nhân để hiển thị thông tin cá nhân của sinh viên.
Khi nhấn vào nút Quản Trị Viên, người dùng sẽ được chuyển đến giao diện quản lý, bao gồm các nút chức năng như Thời Khóa Biểu, Điểm Thi, Sinh Viên, Môn Học, Khoa và nút Back để quay lại.
Hình 4.2.3 Giao diện thêm thời khóa biểu
Chọn mục thời khóa biểu, bạn sẽ thấy ba nút Thêm, Sửa và Xóa Phần này cho phép thêm thời khóa biểu theo ngành và mã sinh viên, giúp việc tra cứu và quản lý thông tin trở nên thuận tiện hơn.
Quản lý điểm số của sinh viên là một nhiệm vụ quan trọng trong các trường học, vì điểm số ảnh hưởng trực tiếp đến kết quả học tập của họ Tại giao diện điểm, người dùng có thể thực hiện các thao tác như thêm, sửa, và xóa điểm của sinh viên một cách dễ dàng.
Giao diện thêm sinh viên là một phần quan trọng trong quản lý thông tin cá nhân của sinh viên, bao gồm một form đăng ký đầy đủ thông tin cần thiết Tại đây, người dùng có thể thêm, sửa hoặc xóa thông tin của sinh viên một cách dễ dàng.
Hình 4.2.6 Giao diện thêm môn học Màn hình môn học cho phép chúng ta cập nhật môn học theo nghành học
Giao diện Khoa, như hình 4.2.7, cho phép người dùng theo dõi các khoa hiện có, đồng thời cung cấp tính năng xóa hoặc thêm khoa mới, phù hợp với sự phát triển không ngừng của các trường đại học.
Giao diện Hồ Sơ Cá Nhân cung cấp thông tin chi tiết về sinh viên, bao gồm thời khóa biểu và khả năng đăng ký môn học hoặc tham gia Câu Lạc Bộ Ngoài ra, nút đăng xuất cho phép người dùng quay lại màn hình đăng nhập một cách dễ dàng.
Hình 4.2.9 Giao diện câu lạc bộSau khi chọn nút Câu Lạc Bộ, chúng ta sẽ chọn những câu lạc bộ mà chúng ta muốn tham gia
Hình 4.2.10 Trang nhập thông tin cá nhân để tham gia CLB
Sau khi lựa chọn câu lạc bộ mong muốn tham gia, người dùng sẽ được chuyển đến giao diện đăng ký, nơi cần điền các thông tin cá nhân cần thiết để gửi cho câu lạc bộ đó.
KẾ T LU Ậ N
K ế t qu ả đạt đượ c
Xây dựng ứng dụng quản lý, đặc biệt là phần mềm quản lý sinh viên, yêu cầu một quá trình khảo sát và phân tích kỹ lưỡng Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ, việc quản lý thông tin qua thiết bị di động trở nên cần thiết và thực tiễn Các ưu điểm như tính tiện lợi, nhanh chóng và bảo mật cao sẽ giúp quản lý sinh viên hiệu quả hơn, đồng thời tiết kiệm thời gian.
Đánh giá phầ n m ề m
Quản lý thông tin trường học trở nên dễ dàng hơn với thiết bị di động, cho phép người quản lý theo dõi tình trạng từng sinh viên, cập nhật thông tin về sinh viên mới, sinh viên đã tốt nghiệp và những người đang theo học Hệ thống này cũng giúp người quản lý nắm bắt số lượng sinh viên hiện tại của trường.
Dữ liệu chỉ nằm trên thiết bịdi động cá nhân, dễ mất toàn bộ dữ liệu khi mất thiết bị
Giao diện chưa thật sự hiện đại, tối ưu , thân thiện với người dùng
Còn hạn chế về mặt chức năng
Giao diện vẫn chưa được bắt mắt
Chưa bắt lỗi khi nhập sai dữ liệu
Hướ ng phát tri ể n và m ở r ộng đề tài
Khắc phục những nhược điểm nêu trên
Phát triển ứng dụng lên internet
Tối ưu hóa tính tiện lợi, bảo mật, nhanh chóng của ứng dụng.