Professional Documents
Culture Documents
SHARE PBL4 HDH Va Mang May Tinh 09 2022
SHARE PBL4 HDH Va Mang May Tinh 09 2022
a. Yêu cầu:
1) Sinh viên chọn đề tài, đăng ký với GV.
2) Mỗi nhóm có tối đa 02 sinh viên/nhóm/(1 đề tài mạng + 1 đề tài HĐH). Các đề tài có thể đăng ký lặp lại.
3) Sinh viên phải trao đổi với giảng viên về nội dung đề tài và báo cáo tiến độ công việc
Yêu cầu SV sử dụng MS Teams và Email @sv1.dut.udn.vn để trao đổi.
1
3 Phân tích bài toán. Đặc tả các chức năng
4 Xây dựng mô hình hệ thống, lựa chọn ngôn ngữ, CSDL,
môi trường triển khai
5 Phân tích hệ thống.
6 + Tham khảo một số source code tương tự.
Lập trình trình theo các modun/chức năng đã phân tích.
+ Sử dụng GitHub để quản lý mã nguồn
7 Hoàn thiện, nhập dữ liệu, kiểm tra lỗi
8 Viết báo cáo theo mẫu của Bộ môn Mạng & Truyền thông
TT Danh sách nhóm (Tối đa 02SV/nhóm) Tên đề tài đăng ký & Nội dung hướng dẫn
Họ và Tên (Lớp, Email @sv1.dut.udn.vn, SĐT) (Các nhóm có thể đăng ký trùng đề tài. GVHD sẽ phân bố lại)
1 1. Nguyễn Văn An (…,…., …)
2. Trần Văn Xuân
3. Lê Thị Phượng
3
102200390@sv1.dut.udn.vn, 0858134825)
10 1. Nguyễn Trung Đức(20TCLC-
DT5,102200206@sv1.dut.udn.vn,0915346 [26/08]
337) Xây dựng ứng dụng BKZalo cho phép các người dùng có thể trò
2. Mai Anh Quân (20TCLC_DT5, chuyện, nhắn tin, gửi hình ảnh trên di động và máy tính
102200227@sv1.dut.udn.vn,0849000514)
11 1. Đỗ Nguyễn Quốc Đạt (20TCTC_DT2,
102200084@sv1.dut.udn.vn, 0914931015 ) [26/08]
2. Bùi Hồng Phước (20TCLC_DT2,
102200106@sv1.dut.udn.vn, 0906574629) Đề tài mạng máy tính: Xây dựng ứng dụng BKZalo cho phép các người dùng
có thể trò chuyện, nhắn tin, gửi hình ảnh trên di động và máy tính.
Đề tài hệ điều hành: Tìm hiểu kỹ thuật lập trình Hook và xây dựng ứng dụng
bắt phím AutoText
4
14 1. Hoàng Đình Điệp (19TCLC_DT6 [27/08]
102190256@sv1.dut.udn.vn 0865588367)
2. Lê Long Vũ (19TCLC_DT5
Đề tài MMT: Xây dựng chương trình Client tương tác với Web API
102190249@sv1.dut.udn.vn 0934750959) Đề tài HĐH: Tìm hiểu kỹ thuật lập trình Hook và xây dựng ứng dụng bắt phím
AutoText
6
2. Võ Chí Tài (20TCLC_DT5,
102200232@sv1.dut.udn.vn,
0916679702
27 1. Trương Thị Thoa( 20T1, Đề tài MMT: Xây dựng ứng dụng BKZalo cho phép các người dùng có thể
102200033@sv1.dut.udn,vn, 0378537190) trò chuyện, nhắn tin, gửi hình ảnh trên di động và máy tính.
2. Trần Thị Thu Phượng (20T1, HĐH:Hook từ dien tra cứu.
102200029@sv1.dut.udn,vn, 0378263785)
[26/08]
28 1. Nguyễn Văn Nghĩa (20T1, [26/08]
102200026@sv1.dut.udn.vn,0773066731)
Phân tích dữ liệu Web
2.Nguyễn Công Cẩn( 20T1 ,
1022000011@sv1.dut.udn.vn , )
29 1. Nguyễn Phạm Anh Tú (20T1, [26/08]
102200037@sv1.dut.udn.vn, 0399349244)
Đề tài MMT: Xây dựng chương trình Client tương tác với Web API.
2.Huỳnh Đức Trị( 20T1 ,
Đề tài HDH: Tìm hiểu kỹ thuật lập trình Hook và xây dựng ứng dụng bắt phím
7
102200036@sv1.dut.udn.vn , 0899217403) Keylogger.
37 1. Lê Hoàng(20TCLC_DT2, [27/08]
102200089@sv1.dut.udn.vn,0898160800)
2. Trương Huy Hoàng
Blockchain
(20TCLC_DT2,102200090@sv1.dut.udn.vn,08687
38656)
9
40 Bùi Văn Thông [26/08]
(20T2,102200392@sv1.dut.udn.vn,0384565094
Đề tài MMT: Xây dựng ứng dụng BKZalo cho phép các người dùng có thể trò
)
chuyện, nhắn tin, gửi hình ảnh trên di động và máy tính
Hoàng Lê Thành Phương
(20T2,102200386@sv1.dut.udn.vn,0376579002 Đề tài HDH: Trò chơi ăn quan
)
10
1.Trương Văn Tân(20TCLC_DT2, [27/08]
102200112@sv1.dut.udn.vn, 0905015904)
2.Trương Quốc Lâm(20TCLC_DT2,
Xây dựng ứng dụng mô phỏng cơ chế hoạt động mạng blockchain
102200096@sv1.dut.udn.vn, 0702514482)
[27/08]
Dương Quang Phú (20T2,
102200385@sv1.dut.udn.vn, 0338375765)
Xây dựng ứng dụng mô phỏng cơ chế hoạt động mạng blockchain
Nguyễn Đắc Thái
(20T2, 102200389@sv1.dut.udn.vn,
0365718545)
1.Nguyễn Trí Hậu (20TCLC-DT2, [28/8] Đề tài MMT : Xây dựng ứng dụng di động tương tác Web API
102200087@sv1.dut.udn.vn , Đề tài HDH : Tìm hiểu kỹ thuật lập trình Hook và xây dựng ứng dụng
0365288052) bắt phím Keylogger
2.Lê Xuân Lượng (20TCLC-DT2,
102200098@sv1.dut.udn.vn, 0961195409)
11
1.Nguyễn Trường Duy (20TCLC_KHDL,
102200252@sv1.dut.udn.vn, 0934932309) Xây dựng ứng dụng di động BKZalo cho phép các người dùng có thể trò chuyện,
2.Hồ Minh Quân nhắn tin, gửi hình ảnh trên di động và máy tính
(20TCLC_DT4,102200187@sv1.dut.udn.vn, )
1. Nguyễn Nho Quốc Việt (HĐH + Mạng): Xây dựng ứng dụng mô phỏng cơ hoạt động mạng
(20TCLC_DT1,
102200079@sv1.dut.udn.vn, Blockchain
0332039626)
Đề tài 1: Xây dựng ứng dụng di động tương tác với Web API
Mô tả đề tài:
- Mục tiêu: Xây dựng ứng dụng di động tương tác với Web API cung cấp các chức năng CRUD (Create, Read, Update, Delete) trên
CSDL. Ví dụ Web quản lý thiết bị, Quản lý Sinh viên, Quản lý hồ sơ, …
- Tìm hiểu giao thức HTTP, HTTPS, mô hình WWW, Mô hình MVC
- Xây dựng Web API cho phép xác thực, đăng nhập, thao tác dữ liệu; xây dựng chương trình ứng dụng truy xuất đến Website thông qua
các API được cung cấp. Ngôn ngữ xây dựng Web API gợi ý : Node.js
- Web API hỗ trợ restful đầy đủ các phương thức của giao thức HTTP: GET/POST/PUT/DELETE dữ liệu. Cho phép xây dựng các HTTP
service, hỗ trợ các thành phần HTTP: URI, request/response headers, caching, versioning, content format.
- CSDL: MongoDB Sử dụng công cụ 3T để thiết kế, MySQL: xampp để thiết kế.
- Công cụ hỗ trợ kiểm thử API: Postman, các plugin hỗ trợ cho Google Chrome, ….
- Xây dựng ứng dụng di động : Android, Fluter truy xuất đến Website thông qua API
Tài liệu tham khảo:
12
- https://topdev.vn/blog/api-la-gi/
- https://www.thanhlongdev.com/huong-dan-xay-dung-nodejs-api-xac-thuc-voi-jwt/
Đề tài 2: Xây dựng chương trình Client tương tác với Web API
Mô tả đề tài:
- Mục tiêu: Xây dựng chương trình trên máy tính tương tác với Web API cung cấp các chức năng CRUD (Create, Read, Update, Delete)
trên CSDL.
- Tìm hiểu giao thức HTTP, HTTPS, mô hình WWW, Mô hình MVC
- Xây dựng Web API cho phép xác thực, đăng nhập, thao tác dữ liệu; xây dựng chương trình ứng dụng truy xuất đến Website thông qua
các API được cung cấp. Ngôn ngữ xây dựng Web API gợi ý : Node.js
- Web API hỗ trợ restful đầy đủ các phương thức của giao thức HTTP: GET/POST/PUT/DELETE dữ liệu. Cho phép xây dựng các HTTP
service, hỗ trợ các thành phần HTTP: URI, request/response headers, caching, versioning, content format.
- Client (Java, C++, Python, Node.js) ó API ó Web ó (MongoDB, MySQL, …)
- Chương trình ứng dụng : Java, Python, Node.js,…
- CSDL: MongoDB Sử dụng công cụ 3T để thiết kế, MySQL: xampp để thiết kế.
- Công cụ hỗ trợ truy xuất API: Postman, các plugin hỗ trợ cho Google Chrome, ….
- Ý tưởng : Chương trình quản lý (thiết bị, mua bán, ), Chương trình đọc tin, Chương trình xử lý ảnh…
Tài liệu tham khảo:
- https://topdev.vn/blog/api-la-gi/
- https://www.thanhlongdev.com/huong-dan-xay-dung-nodejs-api-xac-thuc-voi-jwt/
Đề tài 3: (HĐH + Mạng) Xây dựng ứng dụng tự động đồng bộ tập tin giữa nhiều máy trong mạng LAN
Mô tả đề tài:
- Một nhóm máy tính lưu trữ các CSDL tại các máy. Các CSDL có cấu trúc giống hoặc khác nhau, các record khác nhau.
- Xây dựng ứng dụng cho phép tìm kiếm, CRUD đến dữ liệu trên các máy và đồng bộ dữ liệu với nhau.
- Lấy ý tưởng : tìm kiếm thông tin sách trong các thư viện khác nhau.
- Sử dụng giao thức TCP, UDP xây dựng các chương trình kết nối với nhau qua mạng LAN
13
- Mỗi chương trình (agent) sẽ quản lý một thư mục trên máy cục bộ
- Thư mục chia sẻ của mỗi máy được đồng bộ với các máy khác nếu có yêu cầu.
- Chương trình chính sẽ quản lý và cung cấp thông tin của toàn bộ dữ liệu phân tán …
- Các chương trình được cài đặt trên các máy, kết nối nhau sử dụng tài khoản đăng nhập.
- Hướng phát triển : Quản lý dữ liệu không đồng nhất (MySQL, Excel, Access, …)
- Ngôn ngữ lập trình : Java, Node.js,…
Tài liệu tham khảo:
Đề tài 4: (HĐH + Mạng) Xây dựng ứng dụng đồng bộ CSDL giữa nhiều máy trong mạng LAN
Mô tả đề tài:
- Một nhóm máy tính lưu trữ các CSDL tại các máy. Các CSDL có chung cấu trúc, các record giống nhau.
- Xây dựng ứng dụng cho phép tìm kiếm, CRUD đến dữ liệu trên các máy và đồng bộ dữ liệu với nhau.
- Nếu thay đổi 1 bản ghi thì tất cả các CSDL khác phải được đồng bộ.
- Sử dụng giao thức TCP, UDP xây dựng các chương trình kết nối với nhau qua mạng LAN
- Mỗi chương trình (agent) sẽ quản lý một một CSDL trên máy cục bộ
- Chương trình chính sẽ quản lý và cung cấp thông tin của toàn bộ dữ liệu phân tán …
- Các chương trình được cài đặt trên các máy, kết nối nhau sử dụng tài khoản đăng nhập.
- CSDL : MySQL, MongoDB,
- Ngôn ngữ lập trình : Java, Node.js,…
Tài liệu tham khảo:
Đề tài 5: (HĐH + Mạng) Xây dựng ứng dụng di động BKZalo cho phép các người dùng có thể trò chuyện, nhắn tin, gửi hình ảnh trên di
động và máy tính
Mô tả đề tài:
- Xây dựng WebAPI cung cấp các chức năng để quản lý tài khoản và lưu trữ dữ liệu.
- Xây dựng ứng dụng trên điện thoại di động hoặc chương trình máy tính giao tiếp WebAPI
- Người dùng có thể trao đổi thông tin qua ứng dụng di động này.
14
- Ứng dụng di động có chức năng quản lý file.
- Hệ thống có cơ chế xác thực client và lưu nhật ký.
- Ngôn ngữ Web: Java, node.js, python
- Lập trình mobile : Android, fluter.
- CSDL : MongoDB
Tài liệu tham khảo
Đề tài 6: (HĐH + Mạng) Xây dựng ứng dụng mô phỏng cơ hoạt động mạng blockchain
Mô tả đề tài:
- Lập trình xây dựng ứng có các chức năng tương tự mạng blockchain
- Triển khai trên mạng ngang hàng bao gồm các nút mạng, chức năng mỗi nút trong mạng là chia sẻ và đồng bộ hóa cơ sở dữ liệu với các
nút khác theo qui định:
- Khi một nút tạo một block mới, thông tin block mới này sẽ được broadcast block lên mạng.
- Khi một nút kết nối với một nút mới, truy vấn xem block mới nhất của nút đó là gì ?
- Khi một nút nhận được một block có chỉ số lớn hơn block mới nhất mà nó có, nó sẽ xác thực và thêm block đó vào cơ sở dữ liệu của
mình.
- Ngôn ngữ lập trình: Java, node.js, python
- Yêu cầu có kiến thức về mã hóa.
Tài liệu tham khảo
[1] https://www.baeldung.com/java-blockchain
[2] https://topdev.vn/blog/cach-xay-dung-blockchain-don-gian-chi-voi-200-dong-code/
[1] https://vncoder.vn/bai-viet/python-huong-dan-xay-dung-mot-mang-blockchain-bang-python-don-gian-nhat
Đề tài 7: (HĐH + Mạng) Xây dựng ứng dụng giao tiếp trao đổi dữ liệu dựa trên giao thức MQTT và HTTP
Mô tả đề tài:
- MQTT và HTTP là hai giao thức phổ biến dùng cho các thiết bị IoT
- Tìm hiểu giao thức MQTT, HTTP. Mô hình giao tiếp IoT-MQTT-Web
15
- Xây dựng IoT Web dùng để quản lý các thiết bị sử dụng giao thức MQTT
- Ngôn ngữ Web : Java, Node.js, PHP và cơ sở dữ liệu MySQL
- Cài đặt máy chủ MQTT broker.
- Mô phỏng thiết bị IoT thu thập dữ liệu cảm biến nhiệt độ, độ ẩm và gửi đến máy chủ định kỳ qua giao thức MQTT
- Xây dựng MQTT client trên máy chủ, là thành phần trung gian để kết nối MQTT Broker và xử lý gói tin Subscribe; kết nối thiết bị với
các thành phần khác trên máy chủ (MySQL, dashboard) có thể tương tác gửi dữ liệu với nhau.
Tài liệu tham khảo
[2] https://tapit.vn/thiet-ke-thong-iot-don-gian-dung-giao-thuc-mqtt-ket-hop-php-mysql-va-node-js/
Đề tài 8: (HĐH + Mạng) Xây dựng ứng dụng cho phép quản lý và truy xuất dữ liệu hình ảnh từ Webcam qua internet
Mô tả đề tài: Xây dựng ứng dụng Client và Server có các chức năng:
- Xây dựng mô hình mạng: Máy tính, hub, Camera.
- Xây dựng chương trình trên máy tính sẽ giao tiếp với thiết bị Camera để thu nhận hình ảnh từ Camera, lưu trữ, xử lý trên máy cục bộ.
- Client gửi hình ảnh thu nhận lên WebSite.
- Website cho phép thiết lập kích thước ảnh, tần suất gửi, chất lượng nén…, quản lý hình ảnh nhận được và hiển thị ra màn hình. Có thể
điều khiển để thay đổi các tham số của client từ xa.
- WebSite lập trình API để cung cấp các chức năng CRUD.
Ngôn ngữ lập trình: Java, node.js, Python
Tài liệu tham khảo
Đề tài 9: (HĐH + Mạng) Xây dựng ứng dụng IoT WebServer trên máy tính nhúng Raspberry cho phép quản lý và điều khiển từ xa
Mô tả đề tài: Lập trình Web trên thiết bị Raspberry cung cấp chức năng:
- Cài đặt thiết bị IoT Raspberry
- Lập trình trên thiết bị Raspberry để xây dựng WebServer.
- WebServer thu nhận dữ liệu từ thiết bị cảm biến, camera kết nối với IoT Raspberry
- WebServer quản lý và hiển thị dữ liệu
- Cấu hình thông số từ xa qua Website
16
- Từ bên ngoài có thể truy xuất đến WebServer trên Raspberry để CRUD trên dữ liệu.
Ngôn ngữ: Java, Node.js, python, mongoDB.
Tài liệu tham khảo
- https://mlab.vn/index.php?_route_=24025-bai-10-lap-trinh-web-server-tren-raspberry-pi-%E2%80%93-phan-1.html
- https://www.aapanel.com/
Đề tài 10: Xây dựng ứng dụng phân tích và thu thập dữ liệu trên Web
Mô tả đề tài:
- Xây dựng chương trình truy xuất dữ liệu trên trang Web, đọc nội dung Web
- Phân tích các tin mới nhất, hiển thị và gửi email thông báo cho người dùng.
- Ý tưởng : Chương trình duyệt tin Web. Cần chú ý tối ưu, đồng bộ, không đọc lại bản tin đã có.
- Ngôn ngữ lập trình: Java, Node.js, python
Tài liệu tham khảo
Đề tài 11: (HĐH + Mạng) Xây dựng ứng dụng phân tích dữ liệu giám sát mạng
Đề tài 12: (HĐH + Mạng) Xây dựng ứng dụng phân tích file nhật ký của máy chủ
Đề tài 13: Sinh viên đề xuất đề tài và trao đổi với GVHD.
Đề tài 1: Xây dựng chương trình chia sẻ file giữa các máy tính của người dùng.
Đề tài 2: Tìm hiểu và xây dựng chương trình diệt virus/mã độc trên máy tính
Đề tài 3: Tìm hiểu cơ chế đa luồng trên hệ điều hành và xây dựng chương trình trò chơi ăn quan
17
Đề tài 4: Tìm hiểu cơ chế điều khiển chuột. Xây dựng ứng dụng tự động xử lý chuột.
Đề tài 5: Tìm hiểu Virus và viết chương trình diệt Virus
Đề tài 6: Tìm hiểu kỹ thuật lập trình Hook và xây dựng ứng dụng gõ tắt AutoText
Đề tài 7: Tìm hiểu kỹ thuật lập trình Hook và xây dựng ứng dụng bắt phím Keylogger
Đề tài 8: Tìm hiểu kỹ thuật lập trình Hook và xây dựng tra cứu từ điển Anh Việt trên máy tính
Đề tài 9: Tìm hiểu cơ chế Đồng bộ các process : Bài toán Sản xuất-Tiêu dùng
Đề tài 10: Tìm hiểu cơ chế trao đổi MPI giữa các tiến trình và xây dựng chương trình minh họa
- Tìm hiểu các cơ chế giao tiếp giữa các tiến trình trong UNIX dùng MPI (Message Passing Interface)
Đề tài 11: Sinh viên đề xuất đề tài và trao đổi với GVHD.
-----------------------------
19
1.2 Nội dung Slide
Đặt vấn đề
Phát biểu bài toán
Phân tích lựa chọn công nghệ
Phân tích thống kê hệ thống
Sơ đồ thiết kế tổng thể, chi tiết
nThiết kế CSDL
Thuật toán
----------------------------------------
20