Xây dựng giao diện màn hình chính, thêm tính năng các khóa học cho user , học ngữ pháp, từ vựng cấu trúc câu cơ bản.
Tìm hoặc xây dựng database.
Sử dụng PHP + Angular (có thể thay đổi) để xây dựng phân back-end, tối ưu dữ liệu ,tốc độ cho Website , clean code giúp dễ dàng nâng cấp phiên bản về sau.
Xây dựng đăng nhập thông qua Google hoặc Facebook, tạo hồ sơ người dùng.
Tạo form giao diện html,css cho trang đăng kí vào đăng nhập < có thể tham khảo một số template của bootstrap > responsive giao diện phù hợp cho cả mobile và desktop .
Tạo database bằng mongodb , sử dụng mongoose để tạo model <thiết lập mô hình MVC>
kết nối tương tác với cơ sở dữ liệu
Liên kết với database sử dụng module mongoose
Thực hiện các chức năng rằng buộc khi người dùng đăng kí ( VD : điền đầy đủ các trường còn thiếu nếu người dùng bỏ qua , mật khẩu ít nhất 8 kí tự trong đó có ít nhất 1 kí tự chữ , 1 kí tự số và 1 kí tự đặng biệt , email đăng kí phải là duy nhất không trùng lặp ) ,
Ở phần viết hàm đăng nhập cần chú ý hiện ra các thông báo nếu người dùng chưa thực hiện đủ các bước hoặc sai ở bước nào đó, thông báo cho người dùng nếu họ điền sai email hay password đã được đăng kí.
Sau khi kiểm tra mail được đăng kí không bị trung lặp bắt đầu lưu tài khoản của người dùng vào database , trước đó cần hash password của tài khoản < có thể sử dụng module bcrypt của nodejs express > để tăng cường tính bảo mật cho tài khoản
Ở bước đăng nhập ( tham khảo module passport của nodejs express ) để xác thực tài khoản người dùng bằng email và password (dùng session để lưu trữ tạm thời tài khoản của người dùng)
Xem lại logic 1 lượt của chức năng đăng nhập , đảm bảo người dùng đăng nhập để sử dụng các tính năng có trong website
Có thể sử dụng tài khoản của google ( lấy thông tin từ tài khoản google của người dùng )
để đăng nhập .
Xây dựng các ca kiểm thử (test case) dựa trên kỹ thuật kiểm thử biên. Yêu cầu độ bao phủ của bộ kiểm thử phải trên 70%. Nếu dưới 70% thì sửa lại test case để đạt yêu cầu về độ bao phủ.
Kiểm tra lại mã nguồn xem có mã xấu hay không. Nếu có mã xấu thì sửa lại đoạn mã đó.
Demo sản phẩm với 1 vài người dùng dùng thử sản phẩm để kiểm tra xem còn lỗi về giao diện (giao diện cho mobile đã được responsive chưa) , logic hay không.
Xây dựng trang html dựa trên UI của Elight Learning English (sử dụng template của bootstrap , package của React để làm giao diện cũng như hiệu ứng cho trang)
Chia nhỏ khóa học thành các chủ đề tương ứng, giúp người dùng tiếp cận khóa học một cách dễ dàng nhất
Xây dựng database phù hợp, đúng ngữ pháp , câu từ , chính tả , hình ảnh để tạo 1 trải nghiệm tốt nhất cho người dùng
sử dụng Nodejs và Axios sử dụng như API để lấy dữ liệu từ server trả về JSON cho React quản lí
thiết kế khung câu hỏi và câu trả lời , khung trả lời bao gồm 1 ảnh miêu tả ý nghĩa của từ đó và nghĩa tiếng Anh của từ , mỗi câu hỏi gồm 3 câu trả lời có button để kiểm tra đáp án mà người dùng đã chọn
Thông báo cho người dùng khi họ hoàn tất một câu hỏi trắc nghiệm , sai hay đúng và đáp án đúng của câu hỏi đó là gì , có thể giải thích thêm
Ở mỗi câu mà người dùng tích chính xác đáp án , sẽ được cộng điểm tương ứng cho câu hỏi đó và sau khi kết thúc lượt quiz sẽ thông báo cho người dùng kết quả của phần quiz đó
Xây dựng tính năng này trên một trang duy nhất ( single web-page application ) để tăng tốc độ cho website không phải reload quá nhiều tăng trải nghiệm người dùng ( tham khảo 1 số freamwork liên quan như reactjs , angular và redux )
Lấy ý kiến người sử dụng để cải tiến tính năng của hệ thống
Rà soát mã nguồn , tối ưu mã nguồn (Thanh lọc những component , ảnh , file json mà không sử dụng tới) , tận dụng tối đa các component khi sử dụng
Đảm bảo tính logic của hệ thống , tạo các test case để tìm lỗi và rà soát lỗi ( luôn đảm bảo đúng về ngữ pháp , câu từ , chính tả )
tạo form giao diện html cho trang đăng kí vào đăng nhập < có thể tham khảo một số template của bootstrap >
tạo database bằng mongodb , sử dụng mongoose để tạo model kết nối tương tác với cơ sở dữ liệu
Liên kết với database sử dụng module mongoose
thực hiện các chức năng rằng buộc khi người dùng đăng kí ( VD : điền đầy đủ các trường còn thiếu nếu người dùng bỏ qua , mật khẩu ít nhất 8 kí tự trong đó có ít nhất 1 kí tự chữ , 1 kí tự số và 1 kí tự đặng biệt , email đăng kí phải là duy nhất không trùng lặp )
hiện ra các thông báo nếu người dùng chưa thực hiện đủ các bước hoặc sai ở bước nào đó
sau khi kiểm tra mail được đăng kí không bị trung lặp bắt đầu lưu tài khoản của người dùng vào database , trước đó cần hash password của tài khoản < sử dụng module bcrypt của nodejs express > để tăng cường tính bảo mật cho tài khoản
ở bước đăng nhập , sử dụng module passport của nodejs express để xác thực tài khoản người dùng bằng email và password ( dùng session để lưu trữ tạm thời tài khoản của người dùng )
thông báo cho người dùng nếu họ điền sai email hay password đã được đăng kí
xem lại logic 1 lượt của chức năng đăng nhập , đảm bảo người dùng đăng nhập để sử dụng các tính năng có trong website
có thể sử dụng tài khoản của google , facebook để đăng nhập
xây dựng trang html dựa trên UI "khóa học 1 nghìn từ vựng " của elight.edu.vn
chia nhỏ thành các chủ để học cho người dùng lựa chọn , mỗi chủ đề là một khung chia theo tỉ lệ 8-4 < như bootsrap quy định >
có hình cho mỗi chủ đề mỗi chủ đề là 1 bài học , tên của chủ đề phần miêu ta và hiển thị thông báo hoàn thành được bao nhiêu phần của chủ đề học từ vựng đó
load video từ youtube cho phần giới thiệu chủ đề
có nút kiểm tra , nút tiếp tục và trở lại trong phần chọn từ
có label điền từ, nút kiểm tra trong chức năng điền từ
sử dụng css để căn lề thêm 1 số animation , color , font , effect cơ bản...
là một người dùng tôi muôn có tính năng quiz ( hình thức trăc nghiệm có 3 đáp án trong đó có 1 đáp án đúng là nghĩa tiếng việt của từ ) mỗi đáp án đúng sẽ được 1 điểm số nhất định cập nhật vào điểm thành tích cá nhân của account , để tăng khả năng học từ thông qua các câu hỏi trắc nghiệm nhanh
là người dùng tôi muốn trang học từ vựng thao tác giống 1 trang single one-page để giúp tôi có thao tác trang web 1 cách nhanh nhất , thuận tiện nhất