Trong vài năm trở lại đây, hệ điều hành Android ra đời với sự kế thừa những ưu việt của các hệ điều hành ra đời trước và sự kết hợp của nhiều công nghệ tiên tiến nhất hiện nay. Android đã nhanh chóng là đối thủ cạnh tranh mạnh mẽ với các hệ điều hành trước đó và đang là hệ điều hành di động của tương lai và được nhiều người ưa chuộng nhất. Đề tài nghiên cứu hướng đến nhu cầu thực tế của trường Đại học Quản lý và Công nghệ Hải phòng cần một ứng dụng trên điện thoại để đăng ký ăn trưa, đáp ứng nhanh và thuận tiện.
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUẢN LÝ VÀ CƠNG NGHỆ HẢI PHỊNG - ISO 9001:2015 ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ THƠNG TIN Sinh viên :Vũ Ngọc Đơng Giảng viên hướng dẫn: Ths Nguyễn Thị Xuân Hương HẢI PHÒNG – 2020 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUẢN LÝ VÀ CƠNG NGHỆ HẢI PHỊNG - XÂY DỰNG ỨNG DỤNG ĐĂNG KÝ ĂN TRƯA TẠI TRƯỜNG ĐẠI HỌC QUẢN LÝ VÀ CƠNG NGHỆ HẢI PHỊNG ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY NGÀNH CƠNG NGHỆ THƠNG TIN Sinh viên : Vũ Ngọc Đông Giảng viên hướng dẫn:Ths Nguyễn Thị Xuân Hương HẢI PHÒNG – 2020 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUẢN LÝ VÀ CÔNG NGHỆ HẢI PHÒNG NHIỆM VỤ ĐỀ TÀI TỐT NGHIỆP Sinh viên: Vũ Ngọc Đông Lớp : CT2001C Ngành :Công nghệ Thông tin Mã SV: 1612112004 Tên đề tài: Xây dựng ứng dụng đăng ký ăn trưa trường Đại học Quản lý Cơng nghệ Hải Phịng NHIỆM VỤ ĐỀ TÀI Nội dung yêu cầu cần giải nhiệm vụ đề tài tốt nghiệp - Tìm hiểu hệ điều hành Android, - Tìm hiểu mơi trường lập trình Android - Xây dựng ứng dụng Đăng ký ăn trưa trường Đại học Quản lý Cơng nghệ Hải Phịng, cho phép o Thực phân quyền cho người dùng o Người dùng đăng nhập hệ thống để đăng ký ăn trưa o Thống kê hiển thị danh sách giảng viên sinh viên đăng ký ăn trưa theo ngày Các tài liệu, số liệu cần thiết - Số liệu: theo thông tin giảng viên trường Đại học Quản lý Công nghệ Hải Phòng Địa điểm thực tập tốt nghiệp - Trường Đại Quản lý Cơng nghệ Hải Phịng CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN TỐT NGHIỆP Họ tên : Nguyễn Thị Xuân Hương Học hàm, học vị : Thạc sỹ Cơ quan công tác : Trường Đại học Quản lý Cơng nghệ Hải Phịng Nội dung hướng dẫn: - Tìm hiểu hệ điều hành Android - Tìm hiểu mơi trường lập trình Android - Xây dựng ứng dụng đăng ký ăn trưa trường Đại học Quản lý Cơng nghệ Hải Phịng Đề tài tốt nghiệp giao ngày 30 tháng 03 năm 2020 Yêu cầu phải hoàn thành xong trước ngày 30 tháng 06 năm 2020 Đã nhận nhiệm vụ ĐTTN Đã giao nhiệm vụ ĐTTN Sinh viên Giảng viên hướng dẫn Hải Phòng, ngày tháng HIỆU TRƯỞNG năm 2020 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN TỐT NGHIỆP Họ tên giảng viên: ……………………………………………………………… Đơn vị công tác: …………………………………………………………………… Họ tên sinh viên: ……………………………… Ngành: ………………………… Nội dung hướng dẫn: ………………………………………………………………… ……………………………………………………………………………………………… Tinh thần thái độ sinh viên trình làm đề tài tốt nghiệp ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… Đánh giá chất lượng đồ án/khóa luận (so với nội dung yêu cầu đề nhiệm vụ Đ.T T.N mặt lý luận, thực tiễn, tính tốn số liệu…) ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… Ý kiến giảng viên hướng dẫn tốt nghiệp Đạt x Không đạt Điểm:…………………………………… Hải Phòng, ngày 28 tháng 06 năm 2020 Giảng viên hướng dẫn (Ký ghi rõ họ tên QC20-B18 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN CHẤM PHẢN BIỆN Họ tên giảng viên: …………………………………………………………… Đơn vị công tác: ………………………………………………………………… Họ tên sinh viên: ……………………………… Ngành: …………………… Đề tài tốt nghiệp: ……………………………………………………………… ………………………………………………………………….…………… Phần nhận xét giảng viên chấm phản biện Những mặt hạn chế Ý kiến giảng viên chấm phản biện Được bảo vệ Không bảo vệ Điểm:…………… Hải Phòng, ngày …… tháng … năm 2020 Giảng viên chấm phản biện (Ký ghi rõ họ tên) QC20-B19 MỤC LỤC CHƯƠNG 1: GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH ANDROID 1.1 Giới thiệu hệ điều hành Android 1.2 Kiến trúc hệ điều hành Android 1.2.1 Nhân Linux 1.2.2 Thư viện 1.2.3 Thực thi 1.2.4 Nền tảng Android 1.2.5 Tầng ứng dụng CHƯƠNG 2: MÔI TRƯỜNG PHÁT TRIỂN ỨNG DỤNG ANDROID STUDIO, SQLITE 2.1 Giới thiệu ứng dụng Android Studio 2.2 Thành phần dự án ANDROID 2.2.1 Tệp cấu hình Android 10 2.2.2 Thư mục Java 13 2.2.3 Thư mục Res 13 2.2.4 Tệp Grade Scripts 14 2.3 Thành phần giao diện 14 2.3.1 View group 14 2.3.2 View 16 2.4 Vòng đời ứng dụng android 18 2.5 Lớp Intent 19 2.6 Share prefenrences 20 2.7 Hiệu ứng android 20 2.8 SQLite 20 2.8.1 Giới thiệu SQLite 20 2.8.2 Cấu hình SQLite 21 2.9 FRAGMENT 22 2.9.1 Tổng quan 22 a Lý đời fragment 22 b Vòng đời fragment 23 2.9.2 Sử dụng Tạo hiển thị fragment 25 25 2.9.3 Tổng kết 25 2.10.1 DAO 26 a.Khái niệm 26 b.Cài đặt 27 2.10.2 DTO 32 a.Transfer Object Pattern: 32 b.Cài đặt Transfer Object Pattern 33 c Lợi ích Transfer Object Pattern 34 2.11.1 Khái niệm 35 2.11.2 Đặc điểm 35 2.11.3 Những chuẩn Web Services 35 2.5.4 Các dạng tương tác Web Service với ứng dụng thiết bị di động XML - eXtensible Markup Language 37 CHƯƠNG 3: CHƯƠNG TRÌNH THỰC NGHIỆM 39 3.1 Giới thiệu 39 3.2 Phát biểu tốn 40 3.3 Phân tích hệ thống 41 3.3.1 Ngữ cảnh hệ thống 41 3.3.2 Mô hình chức 41 3.3.3 Mơ hình hoạt động 42 3.5 Thiết kế chương trình 46 3.5.1 Giao diện 46 3.5.2 Các chức chương trình 47 3.6 Chương trình thực nghiệm 48 3.6.1 Thiết bị Mơi trường lập trình: 48 3.6.2 Ứng dụng đăng ký ăn trưa 48 3.7 Các yêu cầu người dùng hệ thống 52 KẾT LUẬN 53 LỜI MỞ ĐẦU Hiện Cơng nghệ thơng tin ngành có nhiều đóng góp to lớn cho việc thực nhiệm vụ lĩnh vực sống Các chương trình tạo khơng thực máy tính mà cịn áp dụng cho thiết bị vô nhỏ gọn tiện dụng điện thoại di động hay máy tính bảng Do việc xây dựng ứng dụng cho điện thoại di động ngành công nghiệp đầy tiềm hứa hẹn nhiều phát triển vượt bậc ngành khoa học kỹ thuật Phần mềm, ứng dụng cho điện thoại di động đa dạng phong phú hệ điều hành di động Các hệ điều hành J2ME, Android, IOS, Hybrid, Web bases Mobile Application phát triển thị trường truyền thông di động Trong vài năm trở lại đây, hệ điều hành Android đời với kế thừa ưu việt hệ điều hành đời trước kết hợp nhiều công nghệ tiên tiến Android nhanh chóng đối thủ cạnh tranh mạnh mẽ với hệ điều hành trước hệ điều hành di động tương lai nhiều người ưa chuộng Hướng đến nhu cầu thực tế trường Đại học quản lý cơng nghệ Hải phịng cần ứng dụng điện thoại để đăng ký ăn trưa, đáp ứng nhanh thuận tiên Vì em chọn đề tài “Xây dựng ứng dụng đăng ký ăn trưa trường Đại học quản lý cơng nghệ Hải phịng” CHƯƠNG 3: CHƯƠNG TRÌNH THỰC NGHIỆM 3.1 Giới thiệu Các thiết bị di động ngày trở lên phổ biến đem lại nhiều lợi ích cho người dùng Thay phải đến trực tiếp, người dùng cần thực kết nối sử dụng dịch vụ Việc giúp giảm thời gian, công sức chi phí khơng cần thiết khác Mặt khác, hầu hết mối cá nhân sở hữu điện thoại thông minh, họ không dùng cho việc kết nối mà cịn sử dụng ứng dụng cho cơng việc cá nhân Do đó, phần mềm viết không sử dụng máy tính mà cịn dùng cho thiết bị di động mang lại nhiều lợi ích thiết thực cho người dùng nhiều lĩnh vực sống lợi nhuận cho công ty phát triển phần mềm Nhà ăn Trường Đại học Quản lý cơng nghệ Hải Phịng, phục vụ suất ăn trưa cho cán bộ, giảng viên, nhân viên sinh viên (gọi tắt khách hàng) trường Thông thường, người đến căng tin phục vụ Các sinh viên trả tiền cho suất ăn cịn cán bộ, giảng viên nhân viên ký vào sổ để xác nhận ăn trưa để nhà trường toán Tuy nhiên xảy tình trạng có ngày thiếu ăn để bán cho khách có ngày lại thừa số người ăn tăng giảm thất thường mà không báo trước Việc ảnh hưởng trực tiếp đến lợi nhuận khả phục vụ căng tin gây bất tiện cho khách hàng Do đó, viêc xây dựng ứng dụng đăng ký ăn trưa cho cán bộ, giảng viên, nhân viên sinh viên căng tin giúp việc theo dõi số lượng khách ăn của căng tin cân đối lượng thực phẩm cần chuẩn bị ngày để việc cung cấp dịch vụ ngày tốt quản lý việc thu chi hiệu Người quản lý căng tin biết có người đăng ký ăn ngày hơm dự kiên chuẩn bị thực phẩm phù hợp Các khách hàng đăng ký ăn trước yên tâm phục vụ mà không cần phải đến tận nơi hay gọi điện để đăng ký 39 3.2 Phát biểu toán Nhà ăn Trường ĐH QL CN HP, phục vụ suất ăn trưa cho cán bộ, giảng viên, nhân viên sinh viên (khách hàng) trường Vào ăn trưa, Khách hàng đến nhà ăn phục vụ Tuy nhiên đông khách hàng người đến sau hết suất ăn, cịn khách hàng lại thừa suất ăn Việc ảnh hưởng đến lợi nhuận khả phục vụ nhà ăn gây bất tiện cho khách hàng Xây dựng ứng dụng đăng ký ăn trưa trường Đại học Quản lý Công nghệ Hải Phòng cho phép khách hàng đăng ký ăn trưa ngày, người quản lý biết số lượng khách đặt ăn ngày hơm để chuẩn bị danh sách người đăng ký để đối chiếu với lượng cán bộ, giảng viên, nhân viên thực dự đến ăn ký vào danh sách ăn trưa hay lượng sinh viên thực ăn ngày hơm Quy định thời gian đăng ký ăn trưa trước 10 sáng ngày Nếu sau thời gian hệ thống từ chối thông báo hết đăng ký Các bước thực trông hệ thống: Cho phép người dùng đăng ký để đăng nhập hệ thống Phân quyền cho người dùng gồm: quyền khách hàng dùng để đăng ký ăn trưa quyền Admin cho người quản lý xem kết đăng ký thống kê báo cáo Cho khách hàng đăng ký ăn trưa ứng dụng Cho người quản lý xem số lượng khách , thông tin khách , xem thống kê ứng dụng danh sách số lượng khách theo ngày ,theo khoảng thời gian , theo người… 40 3.3 Phân tích hệ thống 3.3.1 Ngữ cảnh hệ thống Số lượng khách ăn ngày,danh sách khách đăng ký Thông tin đăng nhập CÁN BỘ, GIẢNG Xác nhận đăng nhập VIÊN, NHÂN Đăng ký ăn trưa VIÊN, SINH VIÊN ĐĂNG KÝ ĂN TRƯA Yêu cầu thống kê Thông tin đăng nhập Xác nhận đăng ký Xác nhận đăng nhập 3.3.2 Mơ hình chức ĐĂNG KÝ ĂN TRƯA Đăng ký Đăng nhập Đăng ký ăn trưa Thống kê, báo cáo Số lượng khách đăng ký ngày Danh sách khách đăng ký ngày Số lượng danh sách khách tuần Số lượng danh sách khách theo tháng Hình 3.2.1 Mơ hình chức 41 NGƯỜI QUẢN LÝ Mơ tả chức năng: Đăng ký: Chức dành cho cán bộ, giảng viên, nhân viên sinh viên trường đăng ký thông tin để đăng nhập vào hệ thống để đăng ký ăn trưa Thông tin đăng ký bao gồm: Tên đăng nhập, mật khẩu, mã số, giới tính Đăng nhập: Để thực đăng ký ăn trưa, cán bộ, giảng viên, nhân viên sinh viên phải đăng nhập vào hệ thống với tên đăng nhập mật đăng ký Đăng ký ăn trưa: Sau cán bộ, giảng viên, nhân viên sinh viên đăng nhập vào hệ thống, ứng dụng cho phép họ đăng ký ăn trưa Nếu việc đăng ký thực trước 10 sáng ngày hơm đó, hệ thống thống báo cho cán bộ, giảng viên, nhân viên sinh viên đăng ký thành công, ngược lại thơng tin đăng ký ăn trưa họ không xác nhận Admin kiểm tra lượng khách: Ứng dụng hiển thị danh sách giảng viên/ sinh viên đăng ký ăn trưa ngày hôm thống kê tổng số người đăng ký 3.3.3 Mơ hình hoạt động Đăng ký ăn trưa Đăng ký Đăng nhập Xem thống kê 42 3.3.4 Cơ sở liệu 3.3.4.1 Bảng thongtinkhach Thiết kế sở liệu Hình 3.2.1 Mơ hình hoạt động STT Tên trường iddangnhap matkhau maso hoten gioitinh Kiểu liệu char char char char char Độ rộng 20 20 11 30 Mô tả Định danh Mật Mã số Họ tên Giới tính Ghi Khóa Độ rộng 20 Mơ tả ID đăng nhập Ghi Khóa Ngày đăng ký Khóa 3.3.4.2 Bảng danhsachdangky Thiết kế sở liêu STT Tên trường iddangnhap Kiểu liệu char ngaydangky Date time 3.3.4.3 Đưa thơng tin lên host Sau bóc tách hay phân tích thơng tin khách hàng, ta tiến hành đưa tất thông tin lên Host Và để đưa thông tin lên Host, ta phải thông qua bước trung gian Webservice viết ngôn ngữ PHP 43 Hình 3.3.4.3.1 Mơ hình Webservice Trình tự bước sau : a Đưa thông tin người dùng lên Host b Tiến hành xây dựng hàm xử lý đăng ký, đẩy liệu từ ứng dụng lên Webservice c Các hàm : đăng nhập , đăng ký ăn trưa , thống kê … làm tương tự d Chuyển thành định dạng Json (đã mã hóa thơng tin) protected Map getParams() throws AuthFailureError { JSONArray jsonArray = new JSONArray(); JSONObject jsonObject= new JSONObject(); try { jsonObject.put("iddn", iddn); jsonObject.put("matkhau", matkhau); jsonObject.put("maso", maso); jsonObject.put("hoten", hoten); jsonObject.put("gioitinh", gioitinh); } catch (JSONException e) { e.printStackTrace(); } jsonArray.put(jsonObject); HashMap hashMap = new HashMap(); hashMap.put("dangky_json", jsonArray.toString()); return hashMap; } }; RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext()); requestQueue.add(stringRequest); e.Tiến hành viết Webservice Đăng ký lên Host 44 Các thông tin đăng ký gửi lên Host dạng file Json f Lấy thông tin đăng ký từ Host thông qua Webservice 45 3.5 Thiết kế chương trình 3.5.1 Giao diện 3.5.1.1 Giao diện Trang chủ Đăng nhập Khách Sửa , Xóa Home 3.5.1.2 Giao diện đăng ký String String String String String 3.5.1.3 Giao diện đăng nhập Tên đăng nhập String Mật String 3.5.1.4 Giao diện đăng ký ăn trưa 46 Đăng ký ăn trưa Button Thoát Button 3.5.1.5 Giao diện người quản lý Xem danh sách Button Xem thống kê Button 3.5.2 Các chức chương trình 3.5.2.1 Chương trình cho phép người dùng : − Đăng ký thông tin − Truy nhập hệ thống − Đăng ký ăn trưa − Sửa thông tin đăng ký 3.5.2.1 Với người quản lý Sửa thông tin đăng nhập Xem danh sách ăn trưa Xem thống kê : - Lượng khách đăng ký ăn trưa theo ngày, theo người theo khoảng thời gian - Thông tin khách hàng Xóa tài khoản người dùng 47 3.6 Chương trình thực nghiệm 3.6.1 Thiết bị Mơi trường lập trình: - Thiết bị: LapTop HP Mainboard : Hewlett Packart - 1993 CPU : Core I5- 4300M Ram :DDR 3, GB Ố cứng : HDD 300 GB… Điện thoại SamSung J5 prime - Môi trường lập trình: Hệ điều hành Windows 10 Android Studio 4.0, SDK 8.1 Ngơn ngữ lập trình Java 3.6.2 Ứng dụng đăng ký ăn trưa Một số giao diện hoạt động chương trình 3.6.2.1 Đăng ký tài khoản: 48 Đăng ký thông tin bao gồm: ID đăng nhập Mật Mã sinh viên / cán / Giảng viên … Họ tên Giới tính 3.6.2.2 Đăng nhập hệ thống Sau đăng ký thành cơng ta đăng nhập vào hệ thống Thông tin đăng nhập bao gồm Tên đăng nhập Mật 49 3.6.2.3 Đăng ký ăn trưa Do việc chuẩn bị bữa ăn cần nhiều thời gian nên việc đăng ký ăn trưa thực khoảng thời gian cho phép ứng dụng Khách hàng đăng ký khoảng đến 10 ngày Ngoài thời gian ứng dụng không cho đăng ký ăn trưa Trong khoảng thời gian đến 10h Khách hàng đăng ký ăn trưa Khách hàng tiến hành Click vào nút ĐĂNG KÝ ĂN TRƯA Ngoài khoảng thời gian Ứng dụng khóa chức đăng ký ăn trưa 50 3.6.2.4 Thống kê, báo cáo Người quản lý đăng nhập tài khoản Admin click vào nút THỐNG KÊ để xem thống kê theo tùy chọn : Sau Click vào nút thống kê ứng dụng đưa vào giao diện Thống Kê : * Để xem thống kê phía thơng tin khách hàng cần lưu trữ lại bảng danhsachdangky tạo sở liệu bao gồm thông tin : − Tên đăng nhập − Họ tên − Ngày đăng ký Khi khách hàng Click vào nút Đăng ký ăn trưa hệ thống lưu thông tin phía vào bảng danhsachdangky từ muốn xem thống kê ta cần sử dụng lệnh truy vấn sở liêu có dạng : SELECT< cột…> FROM < tên bảng > WHERE < điều kiện > 51 3.7 Các yêu cầu người dùng hệ thống Người sử dụng phải cán bộ, giảng viên, nhân viên sinh viên trường Người dùng phải có thiết bị di động sử dụng hệ điều hành Android, ví dụ : Điện thoại : Sam sung , Oppo , Xiaomi , Vinsmart , Nexus,… Máy tính bảng : Samsung Galaxy Tab , Masstel Tab , Huawei MediaPad , Lenovo Yoga Tab … Và số thiết bị khác 52 KẾT LUẬN Kết đạt đồ án : − Trong thời gian thực đề tài, em tìm hiểu cài đặt học lập trình Android để viết ứng dụng đăng ký ăn trưa Trường Đại học Quản lý Công nghệ Hải Phịng qua thiết bị di động − Chương trình thực chức như: cán bộ, giảng viên, nhân viên sinh viên trường đăng ký thông tin, đăng ký thông tin để đăng nhập vào hệ thống; Phân quyền sử dụng: cán bộ, giảng viên, nhân viên sinh viên đăng nhập để đăng ký ăn trưa, người quản lý đăng nhập để lấy số liệu báo cáo số lượng người danh sách người đăng ký ngày; Hệ thống cho phép việc đăng ký trước 10 hàng ngày để người quản lý nắm số lượng khách hàng chuẩn bị thực phẩm ngày hơm − Thơng qua kết việc đăng ký ăn trưa, nhà ăn nhanh chóng nắm số lượng người ăn trưa để chủ động việc cung cấp bữa ăn Việc giúp khả phục vụ nhà ăn tốt cán bộ, giảng viên, nhân viên sinh viên đảm bảo chắn phục vụ đăng ký trực tuyến mà không cần đến tận nơi hay gọi điện để thông báo Những hạn chế : − Trong khoảng thời gian ngắn để thực đề tài, em xây dựng ứng dụng với chức theo yêu cầu hệ thống − Ứng dụng hạn chế giao diện thông điệp trao đổi người dùng tương tác Hướng phát triển tiếp theo: Trong thời gian tới em chỉnh sửa lại giao diện cho gần gũi dễ sử dụng, thiết kế thống kê báo cáo bổ sung 53 ... Đại học quản lý cơng nghệ Hải phịng cần ứng dụng điện thoại để đăng ký ăn trưa, đáp ứng nhanh thuận tiên Vì em chọn đề tài ? ?Xây dựng ứng dụng đăng ký ăn trưa trường Đại học quản lý cơng nghệ Hải... dùng đăng ký để đăng nhập hệ thống Phân quyền cho người dùng gồm: quyền khách hàng dùng để đăng ký ăn trưa quyền Admin cho người quản lý xem kết đăng ký thống kê báo cáo Cho khách hàng đăng ký ăn. .. trình Android - Xây dựng ứng dụng Đăng ký ăn trưa trường Đại học Quản lý Công nghệ Hải Phịng, cho phép o Thực phân quyền cho người dùng o Người dùng đăng nhập hệ thống để đăng ký ăn trưa o Thống