Ứng dụng “AGMessenger Server”

Một phần của tài liệu ThS37 050 nghiên cứu và phát triển ứng dụng trên mạng không dây (Trang 92 - 110)

4.2.1.1 Lược đồ chính ca mơ hình Use-Case

StartServer StopServer AddAccount RemoveAccount UpdateAccount User Chat

KHOA CNTT – ĐH KHTN 4.2.1.1.1 Danh sách Actor STT Actor Ý nghĩa 1 User Người sử dụng. 4.2.1.1.2 Danh sách Use-Case chính STT Use-Case Ý nghĩa

1 StartServer Khởi động server để cho phép client kết nối vào.

2 StopServer Ngừng server và khơng cho client kết nối vào nữa.

3 AddAccount Thêm tài khoản mới.

4 RemoveAccount Xĩa tài khoản.

5 UpdateAccount Cập nhật tài khoản.

6 Chat Tán gẫu (gửi tin nhắn với 1 ngưịi hay nhĩm ngưịi)

4.2.1.2 Đặc t Use-Case chính 4.2.1.2.1 Đặc t Use-Case “StartServer”

Tĩm tắt

Use-Case này cho phép người sử dụng khởi động Server để cho phép các client cĩ thể kết nối vào để chat.

Dịng sự kiện

o Dịng sự kiện chính

1. Use-Case này bắt đầu khi người sử dụng chọn chức năng khởi động Server từ nút tên "Start" trên màn hình kết nối.

2. Chương trình kiểm tra thơng tin đăng nhập của Server.

3. Chương trình sẽ khởi động Server và gửi thơng điệp mời các client đang cố kết nối vào Server trước đĩ (khởi động thành cơng)

4. Thơng báo cho người sử dụng biết kết quả khởi động Server. o Dịng sự kiện khác

- Thơng tin đăng nhập của người sử dụng (nhà quản trị) khơng đúng, chương trình sẽ báo lỗi và yêu cầu sửa lại.

KHOA CNTT –

ĐH KHTN

Điều kiện tiên quyết

Khơng cĩ.

Post condition

Server sẽđược khởi động và cho phép client kết nối.

Điểm mở rộng

Khơng cĩ.

4.2.1.2.2 Đặc t Use-Case “StopServer”

Tĩm tắt

Use-Case này cho phép người sử dụng ngừng Server để và khơng cho phép các client cĩ thể kết nối vào nữa.

Dịng sự kiện

3. Use-Case này bắt đầu khi người sử dụng chọn chức năng ngừng Server từ

nút tên "Stop" trên màn hình kết nối.

4. Chương trình sẽ ngừng Server và gửi thơng điệp ngừng kết nối cho tất cả

các client đang tham gia.

5. Thơng báo cho người sử dụng biết kết quả ngừng Server. o Dịng sự kiện khác Khơng cĩ. Các yêu cầu đặc biệt Khơng cĩ. Điều kiện tiên quyết Khơng cĩ. Post condition

Server sẽ ngừng và khơng cho phép client kết nối.

Điểm mở rộng

KHOA CNTT –

ĐH KHTN

4.2.1.2.3 Đặc t Use-Case “AddAccount”

Tĩm tắt

Use-Case này cho phép người sử dụng (nhà quản trị) thêm tài khoản mới.

Dịng sự kiện

o Dịng sự kiện chính

6. Use-Case này bắt đầu khi người sử dụng chọn chức năng thêm tài khoản từ nút tên "Add" trên màn quản lý tài khoản.

7. Hộp thoại thêm tài khoản được mở ra.

8. Người dùng nhập thơng tin để tạo tài khoản như tên đăng nhập, mật khẩu. 9. Chương trình kiểm tra thơng tin đăng ký và thêm tài khoản này vào cơ sở

dữ liệu (thêm tài khoản thành cơng) o Dịng sự kiện khác

- Nếu tên đăng nhập khơng hợp lệ (bỏ trống hoặc đã cĩ) hoặc mật khẩu khơng hợp lệ (bỏ trống) thì chương trình sẽ báo lỗi. Người sử dụng cĩ thể

quay trở lại dịng sự kiện chính để sửa lại hoặc hủy bỏ việc thêm tài khoản. Lúc này Use-Case kết thúc. Các yêu cầu đặc biệt Khơng cĩ. Điều kiện tiên quyết Khơng cĩ. Post condition

Nếu Use-Case thành cơng thì tài khoản mới sẽđược thêm vào cơ sở dữ liệu.

Điểm mở rộng

KHOA CNTT –

ĐH KHTN

4.2.1.2.4 Đặc t Use-Case “RemoveAccount”

Tĩm tắt

Use-Case này cho phép người sử dụng (nhà quản trị) xĩa một tài khoản đã cĩ trong cơ sở dữ liệu.

Dịng sự kiện

o Dịng sự kiện chính

1. Use-Case này bắt đầu khi người sử dụng chọn chức năng xĩa bỏ tài khoản từ nút tên "Remove" trên màn hình quản lý tài khoản nếu như

người sử dụng đã chọn tài khoản cần xĩa trong danh sách các tài khoản. 2. Tài khoản được chọn sẽđược xĩa khỏi cơ sở dữ liệu.

o Dịng sự kiện khác

Khơng cĩ.

Các yêu cầu đặc biệt

Khơng cĩ.

Điều kiện tiên quyết

Người sử dụng phải chọn một tài khoản đã cĩ trong danh sách tài khoản.

Post condition

Tài khoản được chọn xĩa sẽđược xĩa khỏi cơ sở dữ liệu.

Điểm mở rộng

Khơng cĩ.

4.2.1.2.5 Đặc t Use-Case “UpdateAccount”

Tĩm tắt

Use-Case này cho phép người sử dụng (nhà quản trị) cập nhật lại tài khoản đã cĩ trong cơ sở dữ liệu.

KHOA CNTT –

ĐH KHTN

Dịng sự kiện

o Dịng sự kiện chính

1. Use-Case này bắt đầu khi người sử dụng chọn chức năng cập nhật tài khoản từ nút tên "Update" trên màn hình quản lý tài khoản nếu như người sử dụng đã chọn tài khoản cần cập nhật trong danh sách các tài khoản. 2. Hộp thoại cập nhật tài khoản sẽđược mở ra.

3. Người dùng nhập thơng tin cập nhật (mật khẩu). Chương trình kiểm tra thơng tin mới và cập nhật tài khoản này vào cơ sở dữ liệu (cập nhật tài khoản thành cơng)

o Dịng sự kiện khác

- Nếu tên đăng mật khẩu khơng hợp lệ (bỏ trống) thì chương trình sẽ báo lỗi. Người sử dụng cĩ thể quay trở lại dịng sự kiện chính để sửa lại hoặc hủy bỏ

việc cập nhật tài khoản. Lúc này Use-Case kết thúc.

Các yêu cầu đặc biệt

Khơng cĩ.

Điều kiện tiên quyết

Khơng cĩ.

Post condition

Trong trường hợp Use-Case thành cơng, thơng tin mới của tài khoản sẽđược cập nhật vào cơ sở dữ liệu.

Điểm mở rộng

Khơng cĩ.

4.2.1.2.6 Đặc t Use-Case “Chat”

Tĩm tắt

Use-Case này cho phép người sử dụng (nhà quản trị) gửi và nhận tin nhắn (chat) với một người hay tất cả mọi người đã đăng nhập vào server.

KHOA CNTT –

ĐH KHTN

Dịng sự kiện

o Dịng sự kiện chính

1. Use-Case này bắt đầu khi người sử dụng chọn người cần gửi tin nhắn, nhập nội dung tin nhắn cần gửi đến người đĩ và chọn Send trên màn hình chat.

2. Chương trình sẽ gửi tin nhắn đến đối tượng được yêu cầu (gửi tin nhắn thành cơng)

o Dịng sự kiện khác

- Trong trường hợp đối tượng đang được chọn để chat gửi tin nhắn đến người sử dụng thì tin nhắn đĩ sẽđược cập nhật lên màn hình chat (nhận tin nhắn). - Trong trường hợp đối tin nhắn khơng gửi đến được đối tượng được chọn, chương trình sẽ báo lỗi.

Các yêu cầu đặc biệt

Khơng cĩ.

Điều kiện tiên quyết

Người sử dụng phải chọn người để gửi tin nhắn hoặc tất cả mọi người (public). Server cũng phải được khởi động và phải cĩ client tham gia.

Post condition

Nếu Use-Case thực hiện thành cơng, tin nhắn sẽ được chương trình gửi đến đối tượng được yêu cầu.

Điểm mở rộng

KHOA CNTT – ĐH KHTN 4.2.1.3 Thiết kế d liu Options Connection Management Chat MainForm 1 1 1 1 11 1 1 1 1 1 1 1 1 MultiCommFramework 1 11 1 Lớp đối tượng Connection • Danh sách các thuộc tính STT Tên Loại Kiểu Miền giá trị Ý nghĩa

1 listenerport Đơn trị int (0, 9999) cổng nghe

2 clientport Đơn trị int (0, 9999) cổng client

3 username Đơn trị string Tên user

• Danh sách các trách nhiệm

STT Xử lý chính Loại Ý nghĩa Ghi chú

1 Connect Cập nhật Kết nối với Server

2 Disconnect Cập nhật NgServer ừng kết nối với

3 Register Cập nhật Đăng ký tài khoản mới

4 SignIn Cập nhật Đăthống nhng ập vào hệ

5 SignOut Cập nhật Đăthống xung ất khỏi hệ

Lớp đối tượng Chat

• Danh sách các thuộc tính

STT Tên Loại Kiểu Miền giá trị Ý nghĩa

KHOA CNTT –

ĐH KHTN

• Danh sách các trách nhiệm

STT Xử lý chính Loại Ý nghĩa Ghi chú

1 ChatPublic Cập nhật Chat với mọi người

2 ChatPrivate Cập nhật Chat với một người

Lớp đối tượng Management • Danh sách các thuộc tính

STT Tên Loại Kiểu Miền giá trị Ý nghĩa

1 userlist Đa trị Mảng Danh sách user

• Danh sách các trách nhiệm

STT Xử lý chính Loại Ý nghĩa Ghi chú

1 AddUser Cập nhật Thêm user mới

2 RemoveUser Cập nhật Xĩa user

3 UpdateUser Cập nhật Cập nhật thơng tin user

4 KickUser Cập nhật Khơng cho user knữa ết nối

Lớp đối tượng MultiCommFramework • Danh sách các trách nhiệm

STT Xử lý chính Loại Ý nghĩa Ghi chú

1 listener_OnJoined Cập nhật Phát sinh khi client kết

nối vào

2 listener_OnLeave Cập nhật Phát sinh khi client

ngừng kết nối 3 multiComm_OnReceive Cập nhật Phát sinh khi nhđược thơng điệp ận 4 multiComm_OnTerminate Cập nhật Phát sinh khi ngnối ừng kết

KHOA CNTT –

ĐH KHTN

4.2.1.4 Thiết kế giao din

4.2.1.4.1 Danh sách các giao din chính

Chương trình "AG Messenger Server" đĩng vai trị Server trong mơ hình mạng Client-Server. Ngồi các chức năng phục vụ cho Client kết nối, chương trình cịn hỗ

trợ các chức năng quản lý như thêm, xĩa, cập nhật tài khoản. Ngồi ra nĩ cũng đĩng vai trị như một client tức là cĩ thể chat với từng người hoặc chung nhiều người.

Danh sách các màn hình chính trong chươn trình "AG Messenger Server" gồm:

STT Tên Nội dung

1 Màn hình giới thiệu Các gitrình. ới thiệu liên quan đến chương

2 Màn hình kết nối Khởi động và ngừng server.

3 Màn hình quản lý tài khoản Thể hiện thơng tin các tài khoản và cho phép thêm, xĩa, sửa tài khoản.

4 Màn hình thêm tài khoản Thêm một tài khoản mới.

5 Màn hình cập nhật tài khoản Câp nhật tài khoản.

6 Màn hình chat Thể hiện thơng tin chat giữa các thành

KHOA CNTT –

ĐH KHTN

Màn hình giới thiệu

Hình 4-2: Màn hình gii thiu

KHOA CNTT –

ĐH KHTN

Màn hình quản lý tài khoản

Hình 4-4: Màn hình qun lý tài khon

KHOA CNTT –

ĐH KHTN

Màn hình cập nhật tài khoản

Hình 4-6: Màn hình cp nht tài khon

KHOA CNTT –

ĐH KHTN

4.2.1.5 Thiết kế x

4.2.1.5.1 Danh sách các x lý chính

STT Xử lý Mơ tả Use-Case tương ứng

1 XL1 Khởi động Server. StartServer

2 XL2 Ngừng Server. StopServer

3 XL3 Thêm tài khoản. AddAccount

4 XL4 Cập nhật tài khoản. UpdateAccount

5 XL5 Tán gẫu (gửi tin nhắn) Chat

4.2.1.5.2 Các x lý chính

XL1 – Khởi động Server

: User : ConnectionScreen : ConnectionControl : Main_DB 1: //StartServerRequest()

2: //CheckAndStartRequest()

3: //CheckAdminInfo() 4: //StartAndSendInviteMessage() 5: //ShowStartServerResult()

KHOA CNTT –

ĐH KHTN

XL2 – Ngừng Server

: User : ConnectionScreen : ConnectionControl 1: //StopServerRequest()

2: //StopRequest()

3: //SendStopServerMessage() 4: //ShowStopServerResult()

KHOA CNTT –

ĐH KHTN

95

XL3 – Thêm tài khoản

: User : ManagementScreen : AddAccountScreen : ManagementControl : Main_DB 1: //AddAccountRequest() 2: //OpenAddAccountScreen() 3: //InputAccountInfo() 4: //DoAddAccount() 5: //GetAccountList() 6: //CheckAccountInfo() 7: //AddAccount() 8: ShowAddAccountResult()

KHOA CNTT –

ĐH KHTN

96

XL4 – Cập nhật tài khoản

: Main_DB : User : ManagementScreen : UpdateAccountScreen : ManagementControl

1: //UpdateAccountRequest() 2: //OpenUpdateAccountScreen() 3: //GetAccountInfoRequest() 4: GetAccountInfo() 5: //ShowAccountInfo() 6: //InputAccountInfo() 8: //DoUpdateAccount() 9: //CheckAccountInfo() 10: //UpdateAccount() 11: //ShowUpdateAccountResult() 7: //UpdateAccountRequest()

KHOA CNTT –

ĐH KHTN

XL5 – Tán gẫu

: User : ChatScreen : ChatControl

1: //SelectUser() 2: //InputMessage() 3: //SendMessageRequest() 4: //SendMessage() 5: //CheckChatInfo() 7: //ShowChatResult() 6: //DoSendMessage() Hình 4-12: Sequence Diagram tán gu

KHOA CNTT –

ĐH KHTN

Một phần của tài liệu ThS37 050 nghiên cứu và phát triển ứng dụng trên mạng không dây (Trang 92 - 110)