truonganhhoang/INT2208-8-2019

Là một học sinh thường xuyên phải di chuyển, tôi muốn có thể đăng nhập và truy cập chương trình học của mình để tôi có thể học bài mọi lúc mọi nơi. (<Nguyễn Nhật Minh>)

Closed this issue · 0 comments

  • Independent: Đây là chức năng có thể phát triển riêng không cần phụ thuộc vào các chức năng khác.
  • Negotiable: Có thể thiết kế đăng nhập tùy theo FB hay gmail do người dùng chọn.
  • Valuable: Chức năng đăng nhập giúp người dùng học mọi lúc, thậm chí khi mất thiết bị di động.
  • Estimatable: Việc thiết kế phụ thuộc chủ yếu vào database, vì vậy có thể ước tính thời gian được với phiên bản đơn giản là 1-2 ngày.
  • Small: Đủ nhỏ và đơn giản nhưng vẫn dễ hiểu với team dev.
  • Testable: Có thể dễ dàng kiểm thử bằng cách tạo một tài khoản bất kỳ.

Tasklist:

  • Nghiên cứu và nắm vững các nguyên tắc code giúp code dễ đọc và dễ mở rộng.(10 phút) ( Specifications and Readability)
  • Thiết kế giao diện đăng nhập đơn giản, dễ sử dụng. (1 tiếng) (Requirement Process) (lightkuriboh@a5796d3)
  • Tìm hiểu về firebase authentication và cách sử dụng trên project Android. (2-3 ngày) (https://firebase.google.com/docs/android/setup)
  • Tạo project trên Facebook for developers, tạo các thiết lập cần thiết để có thể kết nối với Facebook.(1-2 ngày)(idapp:1203178179844520)
    (tạo hash code facebook:lightkuriboh@7df4aa1)
  • Tạo một class quản lý việc đăng nhập của người dùng thông qua giao diện đã tạo.(1-2 tiếng) (Information Hiding) (lightkuriboh@a5796d3)
  • Thiết kế phương thức truy cập khi không đăng nhập ( anonymous). (15 phút) (Requirement Process) (lightkuriboh@a5796d3)
  • Thêm thanh kéo ở giao diện main có chứa tên, id user và các button login, logout. (1-2 tiếng) (Requirement Process) (lightkuriboh@9a5241c)
  • Tạo button đánh dấu "chú ý" với mỗi từ cho phép người dùng đã đăng nhập đánh dấu.(1-2 tiếng)(Requirement Process)
  • Viết chương trình riêng chuyển database hiện tại lên firebase để tiện quản lý.(1-2 tiếng)
  • Kiểm tra và sửa lại những đoạn code xấu.(30 phút) (Code smells)
  • Thử đăng nhập bằng 2 đến 3 tài khoản trên các thiết bị khác nhau và 2 3 tài khoản trên cùng thiết bị để kiểm tra độ chính xác của chức năng. (30 phút)

link youtube demo các task đã làm được:
https://www.youtube.com/watch?v=DWSUQxiJfto