1. Trang chủ
  2. » Thể loại khác

ĐỒ ÁN CƠ SỞ 3 ĐỀ TÀI: NGHIÊN CỨU HỆ THỐNG ĐẢM BẢO CHẤT LƯỢNG GIÁO DỤC TẠI VKU. ThS. Nguyễn Anh Tuấn

50 19 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 50
Dung lượng 3,57 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Có hai mục tiêu chính để thiết kế và vận hành một hệ thống ĐBCL nội bộ:Một là, nhằm đánh giá, đo lường, kiểm soát chất lượng toàn diện và trên cơ sở đóđảm bảo và nâng cao chất lượng của

Trang 1

ĐẠI HỌC ĐÀ NẴNGTRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

VIỆT HÀN

ĐỒ ÁN CƠ SỞ 3

ĐỀ TÀI:

NGHIÊN CỨU HỆ THỐNG ĐẢM BẢO CHẤT LƯỢNG

GIÁO DỤC TẠI VKU

Sinh viên thực hiện : PHẠM QUỐC VĂN

: TRẦN QUỐC NGUYÊN Giảng viên hướng dẫn : ThS Nguyễn Anh Tuấn

Đà nẵng, tháng 6 năm 2021

Trang 2

ĐẠI HỌC ĐÀ NẴNGTRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

VIỆT HÀN

ĐỒ ÁN CƠ SỞ 3

ĐỀ TÀI:

NGHIÊN CỨU HỆ THỐNG ĐẢM BẢO CHẤT LƯỢNG

GIÁO DỤC TẠI VKU

Đà Nẵng, ngày… tháng… năm 202…

Trang 3

LỜI CẢM ƠN

Trong thời gian chuẩn bị và hoàn thành bài báo cáo đề tài của mình,chúng em đã rất may mắn khi nhận được sự ủng hộ, khuyến khích và hỗ trợ từrất nhiều người đặc biệt là sự ủng hộ tự phía các bạn và nhà trường

Chúng em xin gửi lời cảm ơn chân thành tới các thầy cô trong KhoaCNTT-TT thuộc ĐH Đà Nẵng, đặc biệt là thầy Nguyễn Anh Tuấn đã tạo điềukiện thuận lợi cho nhóm chúng em thu thập dữ liệu, hướng dẫn, định hướng vàcung cấp tài liệu nghiên cứu một cách tốt nhất trong suốt thời gian nhóm chúng

em thực hiện đề tài này

Về hình thức trình bày và nội dung của bài báo cáo do còn nhiều hạn chế

về trình độ cũng như mặt thời gian nên đề tài này sẽ không tránh khỏi sai sót.Nhóm em rất mong nhận được sự chỉ bảo góp ý của các thầy cô và các bạn đểgiúp chúng em hoàn thiện được kỹ năng lập trình cũng như bổ sung vào lỗ hỏngkiến thức cho hình thức và nội dung của bài báo cáo được đầy đủ hơn và sau đó

là áp dụng cho những lần thực hiện sau được chỉnh chu

Xin chân thành cảm ơn!

Trang 4

NHẬN XÉT (Của giảng viên hướng dẫn)

………

………

………

………

………

………

………

………

………

……

Đà Nẵng, ngày… tháng… năm 202…

Giảng viên hướng dẫn

Trang 5

MỤC LỤC

Trang

LỜI CẢM ƠN

MỤC LỤC

DANH MỤC CÁC HÌNH

DANH MỤC BẢNG

DANH MỤC CỤM TỪ VIẾT TẮT

Chương 1 GIỚI THIỆU 1

1.1 Tên đề tài 1

1.2 Mục tiêu 1

1.3 Tổng quan về tình hình nghiên cứu thuộc lĩnh vực của đề tài 1

1.4 Tính cấp thiết, ý nghĩa khoa học và thực tiễn của đề tài 1

1.5 Giới thiệu về dự án 2

Chương 2 CƠ SỞ LÝ THUYẾT 3

2.1 Lựa chọn công cụ thực hiên: 3

2.2 Phương pháp phân tích và thiết kế hướng đối tượng UML 3

2.2.1 Phương pháp phân tích thiết kế 3

2.2.2 Đối tượng là gì? 3

2.2.3 Khái niệm phân tích hướng đối tượng (Object Oriented Analysis - OOA).4 2.2.4 Khái niệm thiết kế hướng đối tượng (Object Oriented Design - OOD) 4

2.2.5 Khái niệm UML 4

2.3 Mô hình MVC 4

2.3.1 Khái niệm mô hình MVC 5

2.3.2 Ưu nhược điểm của mô hình MVC 5

2.4 Laravel Framework 6

2.4.1 Framework là gì? 6

2.4.2 Laravel là gì? 6

2.4.3 Tại sao sử dụng Laravel để xây dựng RESTful API cho moblie 6

2.5 Khái niệm về RESTful API trong Moblie App 7

2.6 Giới thiệu công cụ Android Studio 8

Chương 3 PHÂN TÍCH THIẾT KẾ HỆ THỐNG 9

3.1 Yêu cầu bài toán, khảo sát nghiệp vụ 9

3.1.1 Yêu cầu bài toán 9

3.1.2 Các đối tượng tham gia vào hệ thống 10

3.2 Biểu đồ ca sử dụng (Usecase diagram) 10

3.2.1 Các tác nhân tham gia vào hệ thống 10

3.2.2 Biểu đồ các Actor và Usecase toàn hệ thống 11

3.2.3 Biểu đồ phân rã các Usecase: 12

3.3 Biểu đồ hoạt động (Activity diagram) 15

3.3.1 Hoạt động đăng nhập 15

3.3.2 Hoạt động quản lý lịch và đề cương chi tiết 16

3.4 Biểu đồ tuần tự (Sequence diagram) 17

3.4.1 Biểu đồ tuần tự đăng nhập sinh viên - giảng viên 17

3.4.2 Biểu đồ tuần tự đăng nhập admin 17

Trang 6

3.4.3 Biểu đồ tuần tự quản lý đề cương chi tiết – lịch học phần 18

3.5 Biểu đồ lớp (Class diagram) 18

3.6 Mô tả chi tiết các lớp 19

3.7 Biểu đồ gói (Package Diagram) 23

3.8 Biểu đồ thành phần (Component diagram) 23

3.9 Biểu đồ triển khai (Deployment Diagram) 24

3.10 Một số kỹ thuật nâng cao được sử dụng trong đề tài 25

3.11 Kết chương 29

3.12 Một số hình ảnh của đề tài 30

Chương 4 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 39

4.1 Kết quả đạt được 39

4.2 Ưu điểm 39

4.3 Khuyết điểm 39

4.4 Hướng phát triển 40

DANH MỤC TÀI LIỆU THAM KHẢO 41

Trang 7

DANH MỤC CÁC HÌNH

Hình 2 1 Mô tả về mô hình MVC 5

Hình 2 2 Laravel 6

Hình 2 3 adroid studio 8

Hình 3 1 Biểu đồ usecase toàn hệ thống 11

Hình 3 2 Biểu đồ phân rã usecase cho sinh viên - giảng viên 13

Hình 3 3 Biểu đồ phân rã usecase cho Admin 14

Hình 3 4 Tiến trình quản lý đề cương học phần 14

Hình 3 5 Tiến trình quản lý thông báo lịch 15

Hình 3 6 Biểu đồ hoạt động đăng nhập 16

Hình 3 7 Biểu đồ hoạt động quản lý 16

Hình 3 8 Biểu đồ tuần tự đăng nhập của sinh viên và giảng viên 17

Hình 3 9: Biểu đồ tuần tự đăng nhập của Admin 17

Hình 3 10 Biểu đồ tuần tự quản lý đề cương – lịch học phần 18

Hình 3 11: Biểu đồ lớp 19

Hình 3 12 Biểu đồ gói 23

Hình 3 13 Biểu đồ thành phần 24

Hình 3 14 Biểu đồ triển khai 24

Hình 3 15 Thông tin account google trả về khi đăng nhập đúng 25

Hình 3 16 Server xử lí token app gửi lên và trả về thông tin 26

Hình 3 17 Cách lưu lại phiên đăng nhập của người dùng 27

Hình 3 18 Cách kiểm tra phiên đăng nhập khi vào app 27

Hình 3 19 Cấu trúc android RestAPI 28

Hình 3 20 Cấu trúc Json của danh sách môn học 28

Hình 3 21 Cấu trúc json của kế hoạch giảng dạy 29

Hình 3 22 Cấu trúc json của lịch học 29

Hình 3 23 Giao diện hiển thị danh sách các đề cương trên web 30

Hình 3 24 Giao diện thêm đề cương trên web 30

Hình 3 25 Giao diện thêm đánh giá học phần trên web 31

Hình 3 26 Giao diện thêm kế hoạch giảng dạy trên web 31

Hình 3 27 Giao diện trang chủ của app 32

Hình 3 28 Giao diện màn hình tin tức của app 33

Hình 3 29 Giao diện màn hình danh sách môn học của app 34

Hình 3 30 Giao diện màn hình tài khoản người dùng của app 35

Hình 3 31 Giao diện màn hình cài đặt của app 36

Hình 3 32 Giao diện màn hình lịch sử đăng nhập của app 37

Hình 3 33 Giao diện màn hình kế hoạch giảng dạy của app 38

Trang 8

DANH MỤC BẢNG

Bảng 3 1 table_giangvien 19

Bảng 3 2 table_sinhvien 19

Bảng 3 3 table_account 20

Bảng 3 4 user 20

Bảng 3 5 table_lichsudangnhap 20

Bảng 3 6 table_lich_gv_sv 20

Bảng 3 7 table_lich 20

Bảng 3 8 table_lophocphan 20

Bảng 3 9 table_decuongchitiet 21

Bảng 3 10 table_khoa 21

Bảng 3 11 table_nganh 21

Bảng 3 12 table_hocphan 21

Bảng 3 13 table_trongso_hp 22

Bảng 3 14 table_kehoachgiangday 22

Bảng 3 15 table_chuandaura_monhoc 22

Bảng 3 16 table_chuandaura_chung 22

Bảng 3 17 table_danhgiahocphan 22

Bảng 3 18 table_thanhphandanhgia 23

Trang 9

DANH MỤC CỤM TỪ VIẾT TẮT

1 Hypertext Preprocessor PHP

3 Reppresentational State Transfer REST

4 Application Programming Interface API

5 Unified Modeling Language UML

7 Người quản trị hệ thống Admin

9 Đảm bảo chất lượng ĐBCL

Trang 10

Chương 1 GIỚI THIỆU

và cung ứng dịch vụ Hệ thống ĐBCL hướng đến đáp ứng tốt sứ mệnh, tầm nhìn,đạt các mục tiêu chiến lược của nhà trường và đáp ứng tốt yêu cầu của các bên cóliên quan

Có hai mục tiêu chính để thiết kế và vận hành một hệ thống ĐBCL nội bộ:Một là, nhằm đánh giá, đo lường, kiểm soát chất lượng toàn diện và trên cơ sở đóđảm bảo và nâng cao chất lượng của nhà trường, và hai là sẵn sàng đáp ứng cácyêu cầu, tiêu chuẩn nhằm hỗ trợ giảng viên, sinh viên bằng cách thông báo nhắcnhở trước mỗi môn học, buổi học cho sinh viên nắm trước được nội dung của họcphần và cần chuẩn bị những gì để tốt cho môn học

1.3 Tổng quan về tình hình nghiên cứu thuộc lĩnh vực của đề tài

Hiện nay việc sinh viên không nằm được lịch trình và nội dung giảng dạycủa các học phần mà mình đang theo học khiến cho sinh viên không có sự chuẩn

bị tốt nhất cho các tiến học khiến cho sinh viên khó khăn trong việc tiếp thu cáckiến thức mới, cần có hệ thống app di động thông báo nhắc nhở cho sinh viên biếtđược lịch trình và nội dung sẽ được học vào ngày tiếp theo giúp cho sinh viên dễdàng trong việc chuẩn bị bài từ đó làm cho buổi học sẽ hiệu quả hơn, chất lượnghơn

Dự án mà chúng em thực hiện lần này sẽ hỗ trợ thực tiễn công tác đảm bảochất lượng giáo dục ở Đại học Đà Nẵng nói chung, cũng như trường đại học VKU

nội dung giảng dạy của các học phần, hỗ trợ giảng viên, sinh viên, góp phần nângcao chất lượng đào tạo đại học

1.4 Tính cấp thiết, ý nghĩa khoa học và thực tiễn của đề tài

Giáo dục là quan trọng, tiến độ giáo dục, việc thực hiện tiến độ giảng dạy

và học tập còn chưa được kiểm soát và đảm bảo, giảng viên có thể không biết

và chưa bám sát lịch trình giảng dạy mà đề cương đưa ra, sinh viên không biết

Trang 11

trước buổi tiếp theo mình sẽ học những gì để chuẩn bị bài, ví dụ buổi tiếp theokiểm tra học kì, nếu sinh viên đó nghỉ học quá nhiều hoặc không nắm được lịchtrình môn học thì sẽ rất khó để vượt qua môn.

Vì vậy trong lĩnh vực giáo dục, việc nghiên cứu khoa học và chuyển giaocông nghệ là các hoạt động có chủ đích, có hệ thống nhằm đạt đến sự hiểu biếtkhách quan (được kiểm chứng) trong lĩnh vực học tập để ứng dụng trong thựctiễn hoạt động giáo dục (quản lý, giảng dạy, nghiên cứu, học tập ) Việc xâydựng một ứng dụng hỗ trợ hoạt động đào tạo trong trường đại học có mối quan

hệ chặt chẽ, bổ sung cho nhau để hoàn thiện những thiếu sót mà mục tiêu nhàtrường hướng tới cho sinh viên cũng như đội ngủ giảng dạy

Do vậy, nhóm chúng em hy vọng với nền tảng Web và ứng dụng Androidcho đề tài “Nghiên cứu hệ thống đảm bảo chất lượng giáo dục tại VKU” có thể đểđáp ứng được yêu cầu đặt ra cũng như kỳ vọng và sự nhiệt tình giúp đỡ từ thầycô

1.5 Giới thiệu về dự án

Đây là một nền tảng Web và ứng dụng Android quản lý hoạt động đảm bảochất lượng giáo dục giúp công tác quản lý hoạt động đảm bảo chất lượng thựchiện nghiêm túc, đúng quy định Hệ thống Quản lý hoạt động đảm bảo chất lượnggiáo dục là căn cứ để kiểm tra, đôn đốc tiến độ hoàn thành báo cáo tự đánh giá vàđánh giá ngoài theo chu kỳ và quy định…

Xây dựng một hệ thống quản lý hoạt động đảm bảo chất lượng giáo dục:

 Đối với giảng viên: thông báo nhắc nhở việc ngày mai sẽ dạy môn gì

và cần chuẩn bị những gì, đảm bảo việc giảng dạy được bám sátđược nội dung giảng dạy đảm bảo tiến độ và chất lượng giảng dạy

 Đối với sinh viên: thông báo nhắc nhở việc ngày mai sẽ học những

gì, từ đó trước giờ học khoảng 2h hệ thống sẽ thông báo lịch học vànội dung học đến sinh viên đảm bảo lịch trình học tập thuận lợi

Hệ thống có sẵn trên cả nền tảng Web và ứng dụng trên hệ điều hànhAndroid Ứng dụng và cơ sở dữ liệu tương tác với nhau qua RESTAPI dựa trênLaravel framework

Trang 12

Chương 2 CƠ SỞ LÝ THUYẾT

Nội dung chính của chương 2 là giới thiệu các cơ sở lý thuyết, cách thứchoạt động áp dụng vào đồ án xây dựng nền tảng ứng dụng nghiên cứu hệ thốngđảm bảo chất lượng giáo dục tại VKU Kết thúc chương 2 sẽ xác định đúng cơ sở

lý thuyết để giải quyết yêu cầu đồ án

2.1 Lựa chọn công cụ thực hiên:

Việc lựa chọn công cụ là vô cùng quan trọng Trước hết nó phản ánh mức

độ hiểu biết vấn đề của người giải quyết bài toán sâu sắc đến đâu, ta cần phải nắm

rõ những đặc trưng của bài toán, cân nhắc những điểm mạnh yếu của môi trườngxung quanh bào toán để lựa chọn được công cụ phù hợp Hơn nữa, công cụ thựchiện sẽ quyết định điểm mạnh yếu của chương trình xây dựng trên đó

- Trên nền tảng Web: HTML5, CSS3, JS, Bootstrap 4 framework, Jquery, PHP, Laravel famework, database MySQL, Xampp

- Trên nền tảng Android: Kotlin, Android Studio, Virtual Device

2.2 Phương pháp phân tích và thiết kế hướng đối tượng UML

2.2.1 Phương pháp phân tích thiết kế

Trong kỹ nghệ phần mềm để sản xuất được một sản phẩm phần mềm người

ta chia quá trình phát triển sản phẩm ra nhiều giai đoạn như thu thập và phân tíchyêu cầu, phân tích và thiết kế hệ thống, phát triển (coding), kiểm thử, triển khai

và bảo trì Trong đó, giai đoạn phân tích, thiết kế bao giờ cũng là giai đoạn khókhăn và phức tạp nhất Giai đoạn này giúp chúng ta hiểu rõ yêu cầu đặt ra, xácđịnh giải pháp, mô tả chi tiết giải pháp Nó trả lời 2 câu hỏi What (phần mềm nàylàm cái gì?) và How (làm nó như thế nào?)

Để phân tích và thiết kế một phần mềm thì có nhiều cách làm, một trongnhững cách làm đó là xem hệ thống gồm những đối tượng sống trong đó và tươngtác với nhau Việc mô tả được tất cả các đối tượng và sự tương tác của chúng sẽgiúp chúng ta hiểu rõ hệ thống và cài đặt được nó Phương thức này gọi là Phântích thiết kế hướng đối tượng (OOAD)

2.2.2 Đối tượng là gì?

Đối tượng là những sự vật, sự việc mà có những tính chất, đặc tính, hànhđộng giống nhau và ta gom góp lại thành đối tượng Ví dụ: Sinh viên là một đốitượng vì sinh viên có các đặc tính như tên, mã sinh viên, giới tính… và nhữnghành động như đi học, điểm danh… Mỗi sinh viên là thể hiện của đối tượng sinhviên

Trang 13

2.2.3 Khái niệm phân tích hướng đối tượng (Object Oriented Analysis OOA)

-Phân tích hướng đối tượng là giai đoạn phát triển một mô hình chính xác

và xúc tích của vấn đề, có thành phần là các đối tượng và khái niệm đời thực, dễhiểu đối với người sử dụng Sử dụng phương pháp đối tượng chúng ta có thể môhình hóa các thực thể thuộc một vấn đề có thực mà vẫn giữ được cấu trúc, quan

hệ cũng như hành vi của chúng

2.2.4 Khái niệm thiết kế hướng đối tượng (Object Oriented Design - OOD)

Thiết kế hướng đối tượng là giai đoạn tổ chức chương trình thành các tậphợp đối tượng cộng tác, mỗi đối tượng trong đó là thực thể của một lớp Các lớp

là thành viên của một cây cấu trúc với mối quan hệ thừa kế

Mục đích của giai đoạn OOD là tạo thiết kế dựa trên kết quả của giai đoạnOOA, dựa trên những quy định phi chức năng, những yêu cầu về môi trường,những yêu cầu về khả năng thực thi

Trong giai đoạn OOD, nhà thiết kế định nghĩa các chức năng, thủ tục,thuộc tính cũng như mối quan hệ của một hay nhiều lớp

2.2.5 Khái niệm UML

Ngôn ngữ mô hình hóa thống nhất (Unifield Modeling Language - UML)

là một ngôn ngữ mô hình hóa thống nhất, có phần chính bao gồm những ký hiệuhình học, được các phương pháp hướng đối tượng sử dụng để thể hiện và miêu tảcác thiết kế của một hệ thống UML là một ngôn ngữ để đặc tả, trực quan hóa,xây dựng, UML có thể được sử dụng làm công cụ giao tiếp giữa người dùng, nhàphân tích, nhà thiết kế và nhà phát triển phần mềm

 UML được xây dựng với chủ đích là:

- Mô hình hóa các hệ thống sử dụng các khái niệm đối tượng

- Thiết lập một kết nối từ nhận thức của con người đến các sự kiện cần môhình hóa

- Giải quyết vấn đề về mức độ kế thừa trong các hệ thống phức tạp, có nhiềuràng buộc khác nhau

- Tạo một ngôn ngữ mô hình hóa có thể sử dụng bởi người và máy

2.3 Mô hình MVC

Hiểu một cách đơn giản, MVC cho ta thấy cách thức hoạt động của cácứng dụng Web Hãy tưởng tượng việc bạn phải chuẩn bị một bữa tối với chiếc tủ

Trang 14

lạnh đầy thức ăn Trong trường hợp này, mọi nguyên liệu bạn có chính là Model.

Và bạn có nhiều lựa chọn công thức món ăn khác nhau, những lựa chọn này đóngvai trò giống như Controller Các món ăn sau khi được chế biến và bày biện sẵnsàng, chính là View

2.3.1 Khái niệm mô hình MVC

Hình 2 1 Mô tả về mô hình MVC

MVC là chữ viết tắt của Model – View – Controller, đây là một mô hìnhkiến trúc phần mềm được tạo ra với mục đích quản lý và xây dựng dự án phầnmềm có hệ thống hơn Mô hình này được dùng khá rộng rãi và đặc biệt là trongcác ngôn ngữ lập trình Web

Mô hình MVC và các thành phần bên trong của MVC:

- Model: có nhiệm vụ thao tác với cơ sở dữ liệu, nghĩa là nó sẽ chứa tất cả

các hàm, các phương thức ttruy vấn trực tiếp với dữ liệu và controller sẽthông qua hàm, phương thức đó để lấy dữ liệu rồi gửi qua view

- View: có nhiệm vụ tiếp nhận dữ liệu từ controller và hiển thị nội dung qua

giao diện Website

- Controller: đóng vai trò trung gian giữa model và view, có nhiệm vụ tiếp

nhận yêu cầu từ client sau đó xử lý request, load model tương ứng và gửidata qua view tương ứng rồi trả kết quả về cho client

2.3.2 Ưu nhược điểm của mô hình MVC

 Ưu điểm:

- Hệ thống phân ra từng phần nên dễ dàng phát triển

- Chia thành nhiều modun nhỏ nên nhiều người có thể làm chung dựán

Trang 15

- Vấn đề bảo trì và nâng cấp dễ dàng hơn.

- Dễ dàng debug trong quá trình xây dựng

2.4.2 Laravel là gì?

Hình 2 2 Laravel

Laravel là một php framework, phiên bản đầu tiên được phát hành vàtháng 6/2011 Ngay từ khi ra mắt laravel đã được chú ý bởi nhiều đặc điểm nhưEloquent ORM, localization, models and relationships, routing, caching, sessions,views … chính tác giả laravel – taylor Otwell đã nói rằng Laravel được tạo đểkhắc phục những vấn đề còn vướng mắc và thiếu sót của codeigniter còn gặpphải

2.4.3 Tại sao sử dụng Laravel để xây dựng RESTful API cho moblie

Laravel framework có rất nhiều tính năng có thể giúp chúng em xây dựng

ứng dụng 1 cách nhanh chóng Laravel framework hỗ trợ công cụ tạo mẫu nhẹ

(light-weight template) gọi là "blade", tạo điều kiện cho chúng em dễ dàng xâydựng những tác vụ phải làm thường xuyên, chẳng hạn như: tác vụ authenticate,sessions, caching và RESTful API routing Được thừa hưởng những thế mạnhcủa các framework khác

Trang 16

Những điểm mạnh của laravel framework bao gồm:

o Xây dựng nhanh chóng: Laravel framework có thể được tạo

nhanh chóng bằng cách sử dụng câu lệnh

o Hệ thống routing: Laravel framework hỗ trợ dễ dàng xây dựng

url cho hệ thống với sự linh hoạt và dễ dàng kiểm soát như hỗtrợ 2 loại url là Web.phpAPI.php Trong đó, Web.php dùng

để xây dựng url cho Web application và API.php dùng để xâydựng RESTful API cho hệ thống (resfult API cho ứng dụng diđộng)

o Mã nguồn mở: Với mã nguồn mở, có thể dễ dàng phát triển hệ

thống rộng lớn và với tất cả mọi vấn đề có thể dễ dàng tìm thấy

sự giúp đỡ từ những diễn đàn, ví dụ: diễn đàn Laracast

o Xác thực (Authenticate): Với laravel ta có thể dễ dàng xây

dựng Web authenticate từ laravel framework 5 trở lên Bên cạnh

đó cũng sẽ dễ dàng xây dựng API authenticate

o Sự kế thừa (Method or Dependency Injection): Laravel

Inversion of Control (IoC) là một công cụ mạnh để quản lý sự

kế thừa Sự kế thừa là một phương pháp loại bỏ các phụ thuộclớp mã hóa cứng Container IoC của Laravel là một trong nhữngtính năng được sử dụng nhiều nhất của Laravel

o Thư viện và cấu hình: với Laravel framework chúng em sẽ dễ

dàng thêm vào những libraries và cũng sẽ dễ dàng quản lýlibrary thông qua file composer.json

o Truy vấn cơ sở dữ liệu (Database query builder): Trình xây

dựng truy vấn cơ sở dữ liệu của Laravel cung cấp một giao diệnthuận tiện, thông thạo để tạo và chạy truy vấn cơ sở dữ liệu

o Testing và Debugging: Laravel framework được tích hợp sẵn

hệ thống testing với phpunix.xml đã được tích hợp sẵn vào ứng

dụng laravel

Với Laravel framework chúng em có thể dễ dàng xây dựng những ứngdụng tuyệt vời, cũng như RESTful services 1 cách nhanh chóng, đó là lý do tạisao Laravel là framework gần gũi và dễ sử dụng nhất trong PHP framework kể từkhi nó được phát hành

2.5 Khái niệm về RESTful API trong Moblie App

Với sự gia tăng của phát triển phần mềm Mobile và JavaScript, sử dụng APIRESTful là lựa chọn tốt nhất để xây dựng một giao diện duy nhất giữa dữ liệu củachúng ta và khách hàng

Trước tiên, chúng ta cần phải hiểu chính xác những gì được coi là một

RESTful API REST là viết tắt của Reppresentational State Transfer và được

Trang 17

dùng để giao tiếp mạng giữa các ứng dụng dựa trên giao thức không trạng thái(thường là HTTP) Các dạng HTTP thường dùng:

- GET : truy xuất dữ liệu

- POST : tạo mới dữ liệu

- PUT : cập nhật dữ liệu

- DELETE : xóa dữ liệu

Trong đó, dữ liệu sẽ là mục tiêu của các hành động trong hệ thống Giảipháp là ta sẽ dùng các ứng dụng hoặc framework để chạy test sản phẩm của tamột cách tự động Giống như một con robot sử dụng app của ta theo kịch bản đãđược định sẳn Có nhiều phần mềm, framework để automation test trên tất cả cácplatform, Web, iOS, Android…

2.6 Giới thiệu công cụ Android Studio

Hình 2 3 adroid studio

thức dành cho phát triển nền tảng Android Nó được ra mắt vào ngày 16tháng 5 năm 2013 tại hội nghị Google I/O Android Studio được phát hànhmiễn phí theo giấy phép Apache Licence 2.0

Android Studio ở giai đoạn truy cập xem trước sớm bắt đầu từ phiênbản 0.1 vào tháng 5.2013, sau đó bước vào giai đoạn beta từ phiên bản 0.8được phát hành vào tháng 6 năm 2014 Phiên bản ổn định đầu tiên được ramắt vào tháng 12 năm 2014, bắt đầu từ phiên bản 1.0

Dựa trên phần mềm IntelliJ IDEA của JetBrains, Android Studiođược thiết kế đặc biệt để phát triển ứng dụng Android Nó hỗ trợ các hệđiều hành Windows, Mac OS X và Linux và là IDE chính thức của Google

để phát triển ứng dụng Android gốc để thay thế cho Android DevelopmentTools (ADT) dựa trên Eclipse

Trang 18

Chương 3 PHÂN TÍCH THIẾT KẾ HỆ THỐNG

Trong chương này: Phân tích thiết kế hệ thống, trình bày các quy trìnhnghiệp vụ, phân tích, thiết kế (dữ liệu, chức năng) của phần mềm, có các usercase, biểu đồ luồng dữ liệu, mô hình thực thể liên kết, bảng thiết kế chi tiết cơ sở

dữ liệu Đây là chương quan trọng nhằm xác định được các tác nhân, chức năng

cụ thể của hệ thống một cách chi tiết nhằm phục vụ cho việc bắt tay vào viếtchương trình

3.1 Yêu cầu bài toán, khảo sát nghiệp vụ

3.1.1 Yêu cầu bài toán

Hiện nay việc thực hiện tiến độ giảng dạy và học còn chưa được kiểm soát

và đảm bảo, giảng viên có thể không biết và chưa bám sát lịch trình giảng dạy mà

đề cương đưa ra, sinh viên không biết trước buổi tiếp theo mình sẽ học những gì

để chuẩn bị bài Cần phải xây dựng một hệ thống quản lý hoạt động đảm bảo chấtlượng giáo dục trên nền tảng Web có sẵn và ứng dụng lên hệ điều hành Android(ứng dụng và cơ sở dữ liệu tương tác với nhau qua RestAPI dựa trên Laravelframework)

Sau khi nắm bắt yêu cầu từ nhà trường, chúng em thấy cần có những chứcnăng quan trọng như sau:

- Chức năng thêm, sửa, xóa, cập nhật đề cương học phần trên nền tảngWeb

- Xuất gen ma trận chuẩn đầu ra cho các khoa các ngành trên nền tảngWeb

- Đăng ký, đăng nhập yêu cầu về giao diện (Sử dụng đăng nhập bằngGmail Google)

- Xem được lịch trình học đối với sinh viên cũng như là lịch trình giảngdạy đối với giảng viên ứng với các học phần

- Xây dựng hệ thống thông trước báo lịch dạy và học cho giảng viên vàsinh viên nhà trường

Về giao diện ứng dụng đề ra yêu cầu về giao diện như sau:

- Trang chủ giao diện đơn giản, thân thiện

- Bố cục hài hòa, màu sắc dễ nhìn, dễ sử dụng

Trang 19

Yêu cầu về hệ thống:

- Hệ thống hoạt động nhanh, chính xác, đầy đủ các chức năng cơ bản cầnthiết như xem lịch dạy và học, xem môn học, thông báo lịch dạy và họctrước giờ vào lớp đến sinh viên và giảng viên

- Đảm bảo việc giảng dạy được bám sát được nội dung giảng dạy đảmbảo tiến độ và chất lượng giảng dạy

- Đảm bảo được việc thông tin lịch trình của học phần đến sinh viên, đểsinh viên chuẩn bị tốt cho tiết học

- Có thể nâng cấp, bảo trì, quản lý dễ dàng

3.1.2 Các đối tượng tham gia vào hệ thống

 Người sử dụng ứng dụng:

- Là các giảng viên thuộc đại học VKU

- Là các sinh viên thuộc trường VKU

 Người quản trị hệ thống:

- Là người toàn quyền quản trị hệ thống, thống kê, báo cáo,quản lý được tất cả lịch trình dạy và học của nhà trường

3.2 Biểu đồ ca sử dụng (Usecase diagram)

- Một biểu đồ ca sử dụng là một mô tả đồ họa của tương tác có thể của ngườidùng với một hệ thống Biểu đồ ca sử dụng cho thấy các ca sử dụng khácnhau và các loại người dùng khác nhau mà hệ thống có và thường sẽ đikèm với các loại biểu đồ khác Các trường hợp sử dụng được biểu thị bằnghình tròn hoặc hình elip Các diễn viên thường được thể hiện dưới dạnghình người que

- Các thành phần của biểu đồ ca sử dụng bao gồm:

o Actor: Actor là người dùng hoặc đối tượng tương tác với một hệthống

o Use case: Use Case là chức năng mà các Actor sẽ sử dụng trên hệthống

o Relationship: Relationship hay còn gọi là conntector được sử dụng

để kết nối giữa các đối tượng với nhau tạo nên bản vẽ Use Case baogồm : Association, Generalization, Include, Extend

- System Boundary: System Boundary được sử dụng để xác định phạm vicủa hệ thống mà chúng ta đang thiết kế

3.2.1 Các tác nhân tham gia vào hệ thống

Trang 20

 Bao gồm: Giảng viên, sinh viên, admin.

3.2.2 Biểu đồ các Actor và Usecase toàn hệ thống

Hình 3 1 Biểu đồ usecase toàn hệ thống Actor:

- Người truy cập: Người dùng trực tiếp sử dụng ứng dụng (Sinhviên, giảng viên nhà trường)

- Admin: Người quản trị toàn quyền hệ thống (có thể thêm, xóa,cập nhật và sửa các đề cương và lịch trình học phần)

Các usecase chính

- Đăng nhập: Admin đăng nhập vào hệ thống quản lý và cả nềntảng ứng dụng Android Sinh viên và giảng viên chỉ đăng nhậpđược vào nền tản ứng dụng Android với vai trò tương ứng, không

có vai trò đăng nhập vào hệ thống quản lý

Trang 21

- Quản lý lịch trình dạy và học: Admin toàn quyền quản trị, có thểthêm, sửa, xoá, cập nhật các đề cương chi tiết và lịch trình họcphần của sinh viên và giảng viên.

- Xem lịch trình dạy và học: Sinh viên và giảng viên có thể xemđược đề cương chi tiết và lịch học phần

- Thông báo lịch dạy và học: Đối với giảng viên hệ thống sẽ thôngbáo nhắc nhở việc ngày mai sẽ dạy môn gì và cần chuẩn bị những

gì, đối với sinh viên hệ thống sẽ thông báo nhắc nhở việc ngàymai sẽ học những gì

Các usecase phụ

- Quản lý lịch sử đăng nhập

Usecase liên quan đến quản lý hệ thống:

Quản lý đề cương chi tiết:

Điều kiện: Các đề cương học phần đã được cập nhật lên hệ thống

- B1: Chọn chức năng thêm, sửa, xóa các mục đề cương học

- B2: Admin dựa trên nền tản Website để thao tác đến các nội dung đề cương chi tiết học phần

- B3: Kết thúc usecase

Quản lý lịch học phần:

Điều kiện: Các lịch đã được cập nhật lên hệ thống

- B1: Chọn chức năng thêm, sửa, xóa lịch

- B2: Admin dựa trên nền tản Website để thao tác với lịch dạy

và học của sinh viên và giảng viên

- B3: Kết thúc usecase

Thông báo lịch dạy và học:

Điều kiện: Đề cương và lịch học đã được cập nhật trên hệ thống

- B1: Hệ thống đưa ra danh sách lịch báo tương ứng với đềcương chi tiết

- B2: Chức năng thông báo sẽ thực thi đến sinh viên và giảngviên tương ứng

- B3: Kết thúc usecase

Trang 22

3.2.3 Biểu đồ phân rã các Usecase:

Biểu đồ phân rã usecase cho sinh viên – giảng viên

Đặc tả: Use case này cho phép sinh viên và giảng viên có thểtương tác và sử dụng ứng dụng Android bằng cách xem được lịchhọc bao gồm: tuần bắt đầu, tuần kết thúc, ngày học, tiết học, mônhọc, phòng học Thông tin được đến sinh viên và giảng viên về đềcương chi tiết môn học, thông tin môn học Ngoài ra hệ thống còn

hỗ trợ quản lý lịch sử đăng nhập, ở đây sinh viên và giảng viên sẽxem được: ngày giờ đăng nhập, tên thiết bị và vị trí đăng nhập…

Hình 3 2 Biểu đồ phân rã usecase cho sinh viên - giảng viên Biểu đồ phân rã usecase cho Admin

Đặc tả: Use case này cho phép Admin có thể tương tác và sửdụng nền tảng Web để đăng nhập vào hệ thống đào tạo đề thêm, cậpnhật lưu trữ minh chứng lịch trình giảng dạy, đề cương chi tiết, kếhoạch giảng dạy, đánh giá học phần, trọng số học phần và chuẩnđầu ra học phần Thông tin chi tiết đến sinh viên và giảng viên vềnội dung các lớp học phần nhằm đảm bảo tiến độ dạy và học

Trang 23

Hình 3 3 Biểu đồ phân rã usecase cho Admin Tiến trình quản lý đề cương học phần

Hình 3 4 Tiến trình quản lý đề cương học phần

Trang 24

Tiến trình quản lý thông báo lịch

Hình 3 5 Tiến trình quản lý thông báo lịch 3.3 Biểu đồ hoạt động (Activity diagram)

- Biểu đồ hoạt động là biểu đồ mô tả các bước thực hiện, các hành động, cácnút quyết định và điều kiện rẽ nhánh để điều khiển luồng thực hiện của hệthống

- Đối với những luồng thực thi có nhiều tiến trình chạy song song thì biểu đồhoạt động là sự lựa chọn tối ưu cho việc thể hiện Biểu đồ hoạt động khágiống với biểu đồ trạng thái ở tập các kí hiệu nên rất dễ gây nhầm lẫn

- Khi vẽ chúng ta cần phải xác định rõ điểm khác nhau giữa hai dạng biểu đồnày là biểu đồ hoạt động tập trung mô tả các hoạt động và kết qủa thu được

từ việc thay đổi trạng thái của đối tượng còn biểu đồ trạng thái chỉ mô tả tậptất cả các trạng thái của một đối tượng và những sự kiện dẫn tới sự thay đổiqua lại giữa các trạng thái đó

3.3.1 Hoạt động đăng nhập

Trang 25

Hình 3 6 Biểu đồ hoạt động đăng nhập 3.3.2 Hoạt động quản lý lịch và đề cương chi tiết

Hình 3 7 Biểu đồ hoạt động quản lý

Ngày đăng: 27/11/2021, 08:39

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w