2.2. Một số thuật toán trên tác tử di động
2.2.4. Thuật toán thi hành nhiệm vụ cập nhật phần mềm
Thuật toán này đƣợc sử dụng trong tình huống tác tử sau khi tải phần mềm về từ máy chủ thì thực hiện nhiệm vụ cập nhật phiên bản mới.
2.2.4.1. Mô tả thuật toán
Input: Mã phần mềm, File cài đặt phiên bản mới phần mềm Output: Thông tin cập nhật thành công hay không
Bƣớc 1:
Kiểm tra xem phần mềm hiện tại có đang chạy hay không? Nếu có thì thực hiện dừng phần mềm đang chạy.
Bƣớc 2:
Cài đặt đè phần mềm phiên bản mới vào máy tính khách hàng mà tác tử đang thực thi.
Bƣớc 3:
Gửi thông điệp lên máy chủ thông báo tác tử đang cập nhật phần mềm. Bƣớc 4:
Cập nhật lại thông tin phiên bản phần mềm tại máy tính khách hàng theo đúng phiên bản vừa đƣợc cài đặt.
Bƣớc 5:
Gửi thông điệp lên máy chủ thông báo tác tử đã cập nhật thành công phần mềm và kết thúc.
2.2.4.2. Sơ đồ khối BẮT BẮT ĐÂU KẾT THÚC Kiểm tra phần mềm có đang hoạt động không? Cài đặt phiên bản mới
Gửi thông điệp lên máy chủ thông báo tình trạng đang
cập nhật
Cập nhật thông tin phiên bản mới vào CSDL tại máy khách
Gửi thông điệp lên máy chủ thông báo tình trạng cập nhật thành công
Đúng
Sai
Nhập vào mã phần mềm, file cài đặt phần mềm phiên bản mới
Dừng phần mềm đang hoạt động
2.2.4.3. Giả mã
1. Enter software_id, newest_version, setup_file
2. Call check_running_software (software_id) Returning running 3. If running = True Then
a. Call stop_software(software_id) 4. EndIf
5. Call send_message_to_server(“đang cập nhật phần mềm”)
6. Call setup_new_version(setup_file, software_id) Returning
success
7. If success Then
a. Call update_version(software_id, newest_version)
b. Call send_message_to_server(“đã cập nhật phần mềm thành công”) c. Return “cập nhật thành công” 8. Else a. Call send_message_to_server(“đã cập nhật phần mềm thành công”)
b. Return “cập nhật không thành công” 9. EndIf