PHÂN TÍCH HỆ THỐNG VỀ CHỨC NĂNG

Một phần của tài liệu Xây dựng ứng dụng học tiếng Nhật trên nền tảng Android. (Trang 31)

5. BỐ CỤC ĐỀ TÀI

2.2 PHÂN TÍCH HỆ THỐNG VỀ CHỨC NĂNG

2.2.1 Sơ đồ phân rã chức năng

Hình 2.1 Sơ đồ phân rã chức năng

2.2.2 Sơ đồ ngữ cảnh

2.2.3 Sơ đồ dòng dữ liệu mức đỉnh

Hình 2.3 Sơ đồ dòng dữ liệu mức đỉnh

2.2.4 Biểu đồ Activity

a. Học tiếng Nhật

b. Luyện tập

Hình 2.5 Biểu đồ Activity “Luyện tập”

c. Tải dữ liệu từ Web API

d. Tìm kiếm

Hình 2.7 Biểu đồ Activity “Tìm kiếm”

e. Đăng ký Google Cloud Messaging

2.2.5 Một số kịch bản đa sử dụng

a. Chức năng học tiếng Nhật

Tên chức năng Học tiếng Nhật Tác nhân Người dùng

Mô tả Chức năng này cho phép người dùng học tiếng Nhật. Điều kiện ban đầu Không có

Luồng sự kiện chính:

1. Hệ thống sẽ hiện ra danh sách các bài học. 2. Người dùng chọn bài học muốn học.

3. Hệ thống sẽ hiện ra nội dung bài học mà người dùng chọn.

Ngoại lệ: Người dùng có thể chọn bài học khác bằng cách bấm nút menu

Bảng 2.1 Kịch bản sử dụng chức năng học tiếng Nhật

b. Chức năng luyện tập

Tên chức năng Luyện tập Tác nhân Người dùng

Mô tả Chức năng này cho phép người dùng luyện tập.

Điều kiện ban đầu Không có

Luồng sự kiện chính:

1. Hệ thống sẽ hiện ra danh sách các bài luyện tập. 2. Người dùng chọn bài luyện tập muốn luyện tập.

3. Hệ thống sẽ hiện ra bài luyện tập mà người dùng chọn.

Ngoại lệ: Người dùng có thể chọn bài học khác bằng cách bấm nút menu

c. Chức năng tìm kiếm

Tên chức năng Tìm kiếm Tác nhân Người dùng

Mô tả Chức năng này cho phép người dùng tìm kiếm từ.

Điều kiện ban đầu Không có

Luồng sự kiện chính:

1. Người dùng nhập vào từ cần tìm.

2. Hệ thống sẽ xử lý và hiển thị kết quả ra màn hình.

Bảng 2.3 Kịch bản sử dụng chức năng tìm kiếm

2.3 PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU 2.3.1 Sơ đồ thực thể liên kết (ERD) 2.3.1 Sơ đồ thực thể liên kết (ERD)

2.3.2 Sơ đồ quan hệ dữ liệu

Hình 2.10 Sơ đồ quan hệ dữ liệu

2.3.3 Các lược đồ quan hệ

a. Lesson

 Lược đồ quan hệ:

Lesson (LessonID, LessonName, Description)  Ràng buộc toàn vẹn dữ liệu

- Toàn vẹn thực thể: LessonID là khóa chính - Toàn vẹn tham chiếu:

Thuộc tính Ý nghĩa Kiểu dữ liệu Kích thước Giá trị

duy nhất Null LessonID Mã bài học Int 11 x

LessonName Tên bài học Varchar 40

Description Mô tả Varchar 40 x

 Phụ thuộc hàm: LessonID  LessonName, Description  Dạng chuẩn: Boyce-Codd.

b. Vocabulary

 Lược đồ quan hệ:

Vocabulary (VocabularyID, LessonID, Word, Meaning, Description, SoundUrl, ImageUrl, SoundFile, ImageFile)

 Ràng buộc toàn vẹn dữ liệu

- Toàn vẹn thực thể: VocabularyID là khóa chính

- Toàn vẹn tham chiếu: Thuộc tính LessonID của quan hệ Vocabulary là khóa ngoại tham chiếu đến khóa chính LessonID của quan hệ Lesson.

- Toàn vẹn giá trị:

Thuộc tính Ý nghĩa Kiểu dữ liệu Kích thước Giá trị duy nhất Null VocabularyID Mã từ vựng Int 11 x

LessonID Mã bài học Int 11 Word Từ vựng Varchar 100 Meaning Nghĩa từ vựng Varchar 100

SoundUrl Link âm thanh Varchar 100 ImageUrl Link hình ảnh Varchar 100 SoundFile Tên âm thanh Varchar 10 ImageFile Tên hình ảnh Varchar 10

 Phụ thuộc hàm:

VocabularyID  LessonID, Word, Meaning, Description, SoundUrl, ImageUrl, SoundFile, ImageFile

 Dạng chuẩn: Boyce-Codd.

c. Grammar

 Lược đồ quan hệ:

Grammar (GrammarID, LessonID, Title, Content)  Ràng buộc toàn vẹn dữ liệu

- Toàn vẹn thực thể: GrammarID là khóa chính

- Toàn vẹn tham chiếu: Thuộc tính LessonID của quan hệ Grammar là khóa ngoại tham chiếu đến khóa chính LessonID của quan hệ Lesson.

- Toàn vẹn giá trị:

Thuộc tính Ý nghĩa Kiểu dữ

liệu Kích thước

Giá trị

duy nhất Null GrammarID Mã ngữ pháp Int 11 x

LessonID Mã bài học Int 11 Title Tiêu đề ngữ pháp Varchar 250 Content Nội dung ngữ pháp Varchar 2048

 Phụ thuộc hàm: GrammarID  LessonID, Title, Content  Dạng chuẩn: Boyce-Codd.

d. Grammar Example

 Lược đồ quan hệ:

Grammar_Example (ExampleID, GrammarID, Sentence_Jp, Sentence_Vn)

 Ràng buộc toàn vẹn dữ liệu

- Toàn vẹn thực thể: ExampleID là khóa chính

- Toàn vẹn tham chiếu: GrammarID của quan hệ Grammar_Example là khóa ngoại tham chiếu đến khóa chính GrammarID của quan hệ Grammar.

- Toàn vẹn giá trị:

Thuộc tính Ý nghĩa Kiểu dữ liệu Kích thước

Giá trị

duy nhất Null ExampleID Mã ví dụ Int 11 x

GrammarID Mã ngữ pháp Int 11 Sentence_Jp Ví dụ tiếng Nhật Varchar 2048 Sentence_Vn Ví dụ tiếng Việt Varchar 2048

 Phụ thuộc hàm:

ExampleID  GrammarID, Sentence_Jp, Sentence_Vn  Dạng chuẩn: Boyce-Codd.

e. Question

 Lược đồ quan hệ:

Question (QuestionID, LessonID, PractiseTypeID, Content, QuestionTypeID, Answer1, Answer2, Answer3, Answer4, CorrectAnswer)

- Toàn vẹn thực thể: QuestionID là khóa chính - Toàn vẹn tham chiếu:

+ Thuộc tính LessonID của quan hệ Question là khóa ngoại tham chiếu đến khóa chính LessonID của quan hệ Lesson.

+ Thuộc tính PractiseTypeID của quan hệ Question là khóa ngoại tham chiếu đến khóa chính PractiseTypeID của quan hệ PractiseType.

+ Thuộc tính QuestionTypeID của quan hệ Question là khóa ngoại tham chiếu đến khóa chính QuestionTypeID của quan hệ QuestionType.

- Toàn vẹn giá trị:

Thuộc tính Ý nghĩa Kiểu dữ liệu

Kích thước

Giá trị

duy nhất Null QuestionID Mã câu hỏi Int 11 x

LessonID Mã bài học Int 11 PractiseTypeID Mã loại luyện tập Int 11 QuestionTypeID Mã loại câu hỏi Int 11 Content Nội dung câu hỏi Int 350 Answer1 Đáp án 1 Varchar 150 Answer2 Đáp án 2 Varchar 150 Answer3 Đáp án 3 Varchar 150 Answer4 Đáp án 4 Varchar 150 CorrectAnswer Đáp án đúng Varchar 150  Phụ thuộc hàm:

QuestionID  QuestionTypeID, PractiseTypeID, LessonID, Content, Answer1, Answer2, Answer3, Answer4, CorrectAnswer

 Dạng chuẩn: Boyce-Codd.

f. Practise Type

 Lược đồ quan hệ:

PractiseType (PractiseTypeID, PractiseTypeName)  Ràng buộc toàn vẹn dữ liệu

- Toàn vẹn thực thể: PractiseTypeID là khóa chính - Toàn vẹn tham chiếu:

- Toàn vẹn giá trị:

Thuộc tính Ý nghĩa Kiểu dữ liệu

Kích thước

Giá trị

duy nhất Null PractiseTypeID Mã loại luyện tập Int 11 x

PractiseTypeName Tên loại luyện tập Varchar 100

 Phụ thuộc hàm:

PractiseTypeID  PractiseTypeName  Dạng chuẩn: Boyce-Codd.

g. Question Type

 Lược đồ quan hệ:

QuestionType (QuestionTypeID, QuestionTypeName)  Ràng buộc toàn vẹn dữ liệu

- Toàn vẹn thực thể: QuestionTypeID là khóa chính - Toàn vẹn tham chiếu:

Thuộc tính Ý nghĩa Kiểu dữ liệu Kích thước Giá trị duy nhất Null QuestionTypeID Mã loại câu hỏi Int 11 x

QuestionTypeName Tên loại câu hỏi Varchar 100

 Phụ thuộc hàm: QuestionTypeID  QuestionTypeName  Dạng chuẩn: Boyce-Codd.

h. GCM Users

 Lược đồ quan hệ:

Gcm_Users (ID, Gcm_RegID, Created_At)  Ràng buộc toàn vẹn dữ liệu

- Toàn vẹn thực thể: ID là khóa chính - Toàn vẹn tham chiếu:

- Toàn vẹn giá trị:

Thuộc tính Ý nghĩa Kiểu dữ liệu Kích thước Giá trị duy nhất Null ID Số thứ tự đăng ký Int 11 x

Gcm_RegID Mã đăng ký GCM Text Created_At Thời gian đăng ký Timestamp

 Phụ thuộc hàm: ID  Gcm_RegID, Created_At  Dạng chuẩn: Boyce-Codd.

CHƯƠNG 3

KẾT QUẢ ĐẠT ĐƯỢC

3.1 WEBSITE QUẢN LÝ ỨNG DỤNG HỌC TIẾNG NHẬT 3.1.1 Bài học 3.1.1 Bài học

 Ở trang này người quản lý có thêm mới bài học, chỉnh sửa các thông tin liên quan về bài học.

 Người dùng nhập tên bài học, mô tả bài học rồi chọn nút “Add new” để nhập bài học.

Hình 3.1 Giao diện phần bài học

3.1.2 Từ vựng

 Ở trang này người quản lý có thêm mới từ vựng, chỉnh sửa các thông tin liên quan về từ vựng.

 Người dùng nhập mã bài học, nhập từ vựng, nhập nghĩa từ vựng, nhập file âm thanh, file hình ảnh… rồi bấm chọn nút “Add new” để thêm mới từ vựng.

Hình 3.2 Giao diện phần từ vựng

3.1.3 Ngữ pháp

 Người dùng nhập mã bài học, tiêu đề ngữ pháp, nội dung ngữ pháp rồi bấm chọn nút “Add new” để thêm mới ngữ pháp.

3.1.4 Ví dụ ngữ pháp

 Người dùng nhập mã ngữ pháp, ví dụ ngữ pháp tiếng Nhật, nghĩa tiếng Việt của ví dụ rồi bấm chọn nút “Add new” để thêm mới ví dụ.

Hình 3.4 Giao diện phần ngữ pháp

3.1.5 Gởi thông báo

 Người dùng nhập nội dung thông báo rồi bấm chọn nút “Send” để gởi thông báo đến các thiết bị Android đã đăng ký.

3.1.6 Câu hỏi luyện tập

 Ở trang này người quản lý có thể thêm mới câu hỏi luyện tập, chỉnh sửa các thông tin liên quan về câu hỏi luyện tập.

 Người dùng nhập mã bài học, loại luyện tập, loại câu hỏi, các câu trả lời, đáp án đúng rồi bấm chọn nút “Add new” để thêm mới câu hỏi.  Người dùng bấm chọn mã câu hỏi thì sẽ chuyển sang trang chỉnh sửa

thông tin câu hỏi luyện tập

Hình 3.6 Giao diện phần câu hỏi luyện tập

3.1.7 Web API

 Ở trang này sẽ hiển thị ra cơ sở dữ liệu của ứng dụng học tiếng Nhật dưới dạng Json. Điện thoại sẽ kết nối đến API này, lấy dữ liệu xuống điện thoại.

3.2 GIAO DIỆN ỨNG DỤNG HỌC TIẾNG NHẬT TRÊN ANDROID 3.2.1 Splash screen 3.2.1 Splash screen

Hình 3.8 Màn hình Splash Screen

Ở màn hình này sẽ thực hiện các chức năng sau:  Gọi API lấy chuỗi Json về, lưu vào file json.txt.  Parse Json.

 Tải âm thanh, hình ảnh lưu vào thẻ nhớ điện thoại  Đăng ký Google Cloud Message

 Gởi RegID lên Web Server

3.2.2 Menu

 Ở giao diện này sẽ có năm nút chức năng chính của chương trình: Bài học, luyện tập, video, tìm kiếm, thông tin.

Hình 3.9 Giao diện menu

3.2.3 Menu bài học

 Đây là màn hình menu các bài học. Khi người dùng lựa chọn bài học nào thì sẽ hiển thị ra nội dung bài học tương ứng. Có tất cả 10 bài học: hiragana, katakana, phát âm, chào hỏi cơ bản, số đếm, thời gian, từ vựng, ngữ pháp, 60 chữ Hán Tự, 70 bộ Hán Tự.

Hình 3.10 Giao diện menu bài học

3.2.4 Popup menu

 Ở mỗi phần bài học, sẽ có một button menu. Nếu người dùng bấm vào button đó sẽ hiện ra một popup menu, giúp người dùng có thể chọn bài học khác nhanh mà không cần phải bấm back trở lại menu bài học.

3.2.5 Học bảng chữ cái

 Giao diện học bảng chữ cái gồm có 3 tab: học bảng chữ cái, học trọc âm, học ảo âm.

 Người dùng khi bấm vào chữ cái ở phía dưới sẽ hiển thị cách viết chữ cái đó lên và phát âm chữ cái đó.

 Người dùng lướt màn hình để chuyển qua hàng bảng chữ cái khác.

Hình 3.12 Giao diện học bảng chữ cái

3.2.6 Học phát âm

 Giao diện học phát âm tiếng Nhật gồm 3 tab: hướng dẫn cách đọc trường âm, cách đọc xúc âm và cách đọc ghép âm.

 Phía dưới 3 tab là phần hướng dẫn cách phát âm.

 Tiếp theo là phần ví dụ, người dùng bấm vào biểu tượng âm thanh để nghe phát âm ví dụ.

Hình 3.13 Giao diện học phát âm

3.2.7 Học chào hỏi cơ bản

 Giao diện học chào hỏi gồm có danh sách các câu chào hỏi, người dùng bấm vào một câu chào hỏi thì sẽ hiển thị chữ tiếng Nhật, phiên âm và sẽ đọc câu chào hỏi đó lên.

Hình 3.14 Giao diện học chào hỏi cơ bản

3.2.8 Học số đếm

 Giao diện học số đếm gồm có 3 tab: học số đếm cơ bản, học cách đếm tuổi và học cách đếm tầng.

 Ở tab học số đếm, sẽ phân ra hướng dẫn học sáu loại số đếm. Người dùng bấm vào loại mình muốn học sẽ hiển thị là danh sách các số đếm của loại đó.

Hình 3.15 Giao diện phần học số đếm

3.2.9 Học cách nói thời gian

 Giao diện học thời gian gồm có 3 tab: hướng dẫn đếm giờ, hướng dẫn đếm phút và hướng dẫn cách nói thời gian.

 Ở mỗi tab sẽ có phần hướng dẫn và danh sách các ví dụ kèm theo âm thanh.

Hình 3.16 Giao diện phần học thời gian

3.2.10 Học từ vựng

 Người dùng khi chọn học từ vựng sẽ hiển thị ra danh sách các bài học từ vựng, chọn bài học muốn học sẽ hiển thị ra các từ vựng trong bài.  Người dùng bấm nút next để chuyển qua từ vựng tiếp theo, bấm back

để quay lại từ vựng trước đó.

Hình 3.17 Giao diện phần học từ vựng

3.2.11 Học ngữ pháp

 Người dùng khi chọn học ngữ pháp sẽ hiển thị ra danh sách các bài học ngữ pháp, chọn bài học muốn học sẽ hiển thị ra các ngữ pháp trong bài.  Người dùng chọn nội dung để xem nội dung ngữ pháp, chọn ví dụ để

xem các ví dụ của ngữ pháp đang học

Hình 3.18 Giao diện phần học ngữ pháp

3.2.12 Notification

 Khi người quản lý chọn phần Push Notification trên Server, nhập nội dung thông báo và gởi thì ở điện thoại sẽ hiện lên một notification.

3.2.13 Học Hán Tự

 Người dùng khi chọn học Hán Tự sẽ hiển thị ra danh sách các Hán Tự.  Ở đây có chức năng ghi nhớ Hán Tự đã học qua.

Hình 3.20 Giao diện phần học Hán Tự

3.2.14 Menu luyện tập

 Đây là màn hình menu các bài luyện tập. Khi người dùng lựa chọn bài học nào thì sẽ hiển thị ra nội dung luyện tập tương ứng. Có tất cả 8 bài luyện tập: hiragana, katakana, chào hỏi cơ bản, số đếm, thời gian, từ vựng, ngữ pháp, Hán Tự.

Hình 3.21 Giao diện menu luyện tập

3.2.15 Luyện tập bảng chữ cái

 Người dùng nghe phát âm chữ cái rồi chọn đáp án đúng.  Nếu chọn đúng sẽ được 1 điểm.

 Mỗi lần vào luyện tập sẽ hiển thị ngẫu nhiên 15 câu hỏi với các câu trả lời ngẫu nhiên, không trùng lặp.

Hình 3.22 Giao diện phần luyện tập chữ cái

3.2.16 Luyện tập chào hỏi

 Ở phần luyện tập này, người dùng chọn câu chào hỏi tiếng Nhật.  Trả lời đúng sẽ được 1 điểm.

Hình 3.23 Giao diện luyện tập chào hỏi

3.2.17 Luyện tập số đếm

 Người dùng nghe số đếm rồi điền số đếm vào ô trả lời.  Nếu chọn đúng sẽ được 1 điểm.

 Mỗi lần vào luyện tập sẽ hiển thị ngẫu nhiên 15 câu hỏi với các câu trả lời ngẫu nhiên, không trùng lặp.

Hình 3.24 Giao diện phần luyện tập số đếm

3.2.18 Luyện tập thời gian

 Ở phần luyện tập này, người dùng chọn cách nói thời gian tiếng Nhật đúng.

 Trả lời đúng sẽ được 1 điểm.

Hình 3.25 Giao diện luyện tập thời gian

3.2.19 Luyện tập từ vựng

 Người dùng nghe phát âm từ vựng rồi chọn đáp án đúng.  Nếu chọn đúng sẽ được 1 điểm.

 Mỗi lần vào luyện tập sẽ hiển thị ngẫu nhiên 15 câu hỏi với các câu trả lời ngẫu nhiên, không trùng lặp.

Hình 3.26 Giao diện luyện tập từ vựng

3.2.20 Luyện tập ngữ pháp

 Người dùng điền một chữ Hiragana đúng vào mỗi ô trống.  Nếu chọn đúng sẽ được 1 điểm.

 Mỗi lần vào luyện tập sẽ hiển thị ngẫu nhiên câu hỏi và câu trả lời.  Người dùng có thể bấm vào xem đáp án để xem đáp án đúng.

Hình 3.26 Giao diện luyện tập ngữ pháp

3.2.21 Luyện tập Hán Tự

 Người dùng điền một chữ Hán Tự đúng với âm Hán.  Nếu chọn đúng sẽ được 1 điểm.

 Mỗi lần vào luyện tập sẽ hiển thị ngẫu nhiên 15 câu hỏi với câu trả lời ngẫu nhiên.

Hình 3.28 Giao diện luyện tập Hán Tự

Một phần của tài liệu Xây dựng ứng dụng học tiếng Nhật trên nền tảng Android. (Trang 31)

Tải bản đầy đủ (PDF)

(70 trang)