3.2.3.3 Biểu đồ Use case
Người quản trị Xác thực tài khoản Thêm phiên bản Đăng nhập Đăng xuất <<include>> <<include>> Quản lý hành động Thêm hành động Sửa hành động Xóa hành động <<include>> <<include>> <<include>> Quản lý bước hành động Thêm bước Thêm/sửa Website Sửa bước Xóa bước <<include>> <<include>> <<include>>
Hình 3-3: Lược đồ use case của phần tạo sửa hành động
a) Xác thực tài khoản
Mô tả: Khi người quản trị thao tác với hệ thống cần đăng nhập mật khẩu. Để đảm bảo tính an tồn cho hệ thống, người quản trị cần đăng nhập 2 bước gồm mật khẩu thường và OTP được gửi qua email. Tài khoản này sẽ không được đăng ký mà sẽ do Super Admin của hệ thống cung cấp.
Mô tả: Website được hiểu là một sàn thương mai điện tử. khi trên thị trường xuất hiện thêm một sàn mới thì người quản trị sử dụng chức năng này để thêm mới hoặc sửa thông tin website cũ.
c) Thêm phiên bản
Mô tả: Để lưu lịch sử phiên bản thì khi sàn TMĐT của những thay đổi lớn về mặt giao diện, người quản trị nên tạo phiên bản mới thay vì cập nhật lại toàn bộ danh sách hành động, bước hành động cũ.
d) Quản lý hành động
Mô tả: Khi tạo phiên bản mới hoặc thay đổi phiên bản cũ, người quản trị sẽ thêm mới, thay đổi các hành động để phù hợp với giao diện. Ví dụ khi phần đăng sản phẩm thêm một thuộc tính mới hoặc bỏ một thuộc tính. e) Quản lý bước hành động
Mô tả: Khi giao diện của website thay đổi nhỏ, định danh các đối tượng thay đổi thì người dùng cần cập nhật lại các bước hành vi, thêm mới hoặc xóa hành vi khơng cần thiết.
3.2.3.4 Thiết kế cơ sở dữ liệu
a) Phân tích
Dựa vào các chức năng của bộ tạo/sửa hành động, cơ sở dữ liệu cần lưu trữ các thông tin về người dùng, website, phiên bản, hành động, bước hành động tương ứng là các thực thể của hệ thống. Các thực thể có các thuộc tính như sau:
Người dùng: lưu trữ thơng tin gồm username, mật khẩu, tình trạng hoạt động.
Website: lưu trữ tên của website, người tạo, tình trạng hoạt động.
Phiên bản: lưu trữ tên phiên bản, người tạo, có phải là phiển bản cuối hay khơng, tình trạng hoạt động.
Hành động: lưu trữ tên hành động, người tạo, thứ tự hành động, ghi chú, website, phiên bản trực thuộc, tình trạng hoạt động.
Bước hành động: lưu trữ tên bước hành động, thứ tựbước hành động, người tạo, hành động trực thuộc, các tham số, thời gian chờ, tình trạng hoạt động.
Hình 3-4: Lược đồ quan hệ thực thể của phần tạo sửa hành động
Hình vẽ trên biểu thị mối quan hệ giữa các thực thể. Mỗi website có thể có nhiều phiên bản. Mỗi phiên bản có một bộ n hành động, trọng mỗi hành động thì có nhiều bước hành động.
b) Thiết kế
Từ các phân tích về các thực thể và các liên kết thực thể nêu trên, có thể mơ tả qua các lược đồ quan hệ sau:
Lược đồ quan hệ User
User (u_id, user_name, password, salt, permission, status): trong đó u_id
là khóa chính, user_name là tên đăng nhập, password là mật khẩu đã băm, salt là chuỗi ngẫu nhiên để băm mật khẩu, permission là quyền người dùng, status là trạng thái của user.
Lược đồ quan hệ Website
Website(site_id, site_name, author, status): trong đó site_id là khóa chính, site_name là tên website, author là tên username tạo website, status là trạng thái của website
Lược đồ quan hệ Version
Version (ver_id, ver_name, website_id, is_latest, author, status): trong đó
ver _id là khóa chính, ver_name là tên phiên bản, website_id là khóa ngồi xác định website trực thuộc, is_latest thể hiện có phải là phiên bản cuối hay không, author là tên username tạo website, status là trạng thái của phiên bản.
Lược đồ quan hệ Action
Action (act_id, act _name, author, a_index, version_id, note, status): trong
đó act_id là khóa chính, act_name là tên hành động, author là tên username tạo website, a_idx là thứ tự hành động, version_id là khóa ngồi xác định phiên bản trực thuộc, status là trạng thái của hành động.
Step(st_id, st_name, s_idx, author, action_id, params, wait, status): trong
đó st_id là khóa chính, st_name là tên website, s_idx là thứ tự bước hành động, author là tên username tạo website, action_id là khóa ngồi xác định hành động trực thuộc, params là các tham số, wait là thời gian chờ, status là trạng thái của website.
3.2.3.5 Thiết kế các API
Các thành phần trong hệ thống giao tiếp với nhau thông qua Restful HTTP API. Bảng dưới đây mô tả các chức năng của các API đã được xây dựng:
URI Phương
thức Tham số Trả về Ghi chú
api/v1/oauth/login POST username password access_token token_type refresh_token expires_in user_name Đăng nhập
api/v1/oauth/logout POST access_token status Đăng xuất
api/v1/websites GET access_token websites_list
Trả về danh sách website của người dùng api/v1/website_add POST access_token,
website_name website_id Tạo website api/v1/website_edit PUT
access_token, website_id, new_name
status Sửa website
api/v1/verions GET access_token,
website_id versions_list Trả về danh sách version trực thuộc website api/v1/version_add POST access_token, website_id, is_latest, version_name
version_id Tạo version
api/v1/version_edit PUT
access_token, version_id, new_name
status Sửa version
api/v1/actions GET access_token,
version_id actions_list
Trả về danh sách action trực thuộc version
api/v1/action_add POST access_token, action_name, a_index, version_id, note
action_id Tạo action
api/v1/action_edit PUT access_token, action_id version_id, action_name, a_index, note
status Sửa action
api/v1/steps GET access_token,
action_id steps_list Trả về danh sách step trực thuộc action api/v1/step_add POST access_token, step_name, s_index, action_id, params, wait
action_id Tạo step
api/v1/step_edit PUT access_token, step_id step_name, s_index, action_id, params, wait
status Sửa step