1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo Cáo Bài Tập Lớn Nhập Môn Công Nghệ Phần Mềm Quản Lý Dân Cư & Quản Lý Thu Phí, Đóng Góp.pdf

45 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Quản Lý Dân Cư & Quản Lý Thu Phí, Đóng Góp
Tác giả Bùi Đức Mạnh, Bùi Đức Anh, Nguyễn Tiến Anh, Bạch Đăng Dũng, Nguyễn Văn Huy, Dương Ngô Kiên, Lê Quốc Khánh, Bùi Trung Quân, Hoàng Minh Tân, Nguyễn Bá Sơn
Người hướng dẫn TS. Trần Nhật Hóa
Trường học Trường Đại học Bách Khoa Hà Nội, Viện Công nghệ Thông tin và Truyền thông
Chuyên ngành Nhập Môn Công Nghệ Phần Mềm
Thể loại Báo cáo bài tập lớn
Năm xuất bản 2021
Thành phố Hà Nội
Định dạng
Số trang 45
Dung lượng 5,95 MB

Cấu trúc

  • CHƯƠNG I: ĐẶC TẢ YÊU CẦU BÀI TOÁN (5)
    • 1. Mô tả yêu cầu bài toán (5)
    • 2. Biểu đồ usecase (7)
      • 2.1. Biểu đồ usecase tổng quan (7)
      • 2.2. Biểu đồ usecase phân dã (7)
    • 3. Đặc tả usecase (10)
      • 3.1. Đặc tả Use case “Đăng nhập” (10)
      • 3.2. Đặc tả Use case “Hộ khẩu” (11)
      • 3.3. Đặc tả Use case “Nhân khẩu” (13)
      • 3.4. Đặc tả Use case “Quản lý thu phí đóng góp” (0)
      • 3.5. Đặc tả Use case “Thống Kê” (14)
      • 3.6. Đặc tả Use case “Tìm kiếm’ (15)
  • CHƯƠNG II: PHÂN TÍCH THIẾT KẾ BÀI TOÁN (16)
    • 1. Thiết kế cơ sở dữ liệu (17)
    • 2. Biểu đồ trình tự (19)
    • 3. Biểu đồ lớp (20)
    • 4. Thiết kế cơ sở dữ liệu (22)
  • CHƯƠNG III: CÔNG NGHỆ VÀ THUẬT TOÁN SỬ DỤNG (25)
    • 1. Tư duy lập trình hướng đối tượng (25)
    • 2. Công nghệ (25)
  • CHƯƠNG IV: DEMO CHƯƠNG TRÌNH (28)
    • 1. Kết quả đạt được (28)
    • 2. Giao diện chương trình (28)
      • 2.1. Đăng nhập (28)
      • 2.2. Giao diện tìm kiếm (30)
      • 2.3. Giao diện thu phí (30)
      • 2.4. Giao diện quản lý hộ khẩu (31)
      • 2.5. Giao diện quản lý nhân khẩu (31)
      • 2.6. Giao diện thống kê (32)
      • 2.7. Giao diện thêm, thay đổi, di chuyển hộ khẩu (32)
      • 2.8. Giao diện thêm, thay đổi, tạm trú, vắng nhân khẩu (33)
      • 2.9. Giao diện thêm đóng góp, thêm khoản phí (35)
    • 1. Kiểm thử các chức năng chương trình (35)
      • 1.1. Kiểm thử cho chức năng tìm kiếm (35)
      • 1.2. Kiểm thử chức năng “Thu phí” (36)
      • 1.3. Kiểm tra chức năng “Hộ khẩu” (38)
      • 1.4. Kiểm tra chức năng nhân khẩu (41)
      • 1.5. Kiểm tra chức năng đăng nhập (43)
  • CHƯƠNG V: KẾT LUẬN (44)
  • TÀI LIỆU THAM KHẢO...........................................................................................41 (45)

Nội dung

ĐẶC TẢ YÊU CẦU BÀI TOÁN

Mô tả yêu cầu bài toán

Xây dựng một phần mềm quản lý thông tin tổ dân phố/khu dân cư:

Ban quản lý tổ dân phố 7 phường La Khê cần xây dựng một phần mềm quản lý thông tin khu dân cư / tổ dân phố Tổ dân phố 7 có hơn 400 hộ gia đình với 1.700 nhân khẩu, chưa kể hàng trăm sinh viên thuê trọ và hàng chục gia đình nơi khác đến thuê nhà làm kinh doanh dịch vụ Địa bàn rộng, dân cư đông và phức tạp nên ban quản lý mong đợi phần mềm này có thể quản lý thông tin chung cả tổ dân phố từ biến động nhân khẩu, hộ khẩu đến các công tác đoàn thể khác Ban quản lý gồm một tổ trưởng, một tổ phó và các cán bộ phụ trách các hoạt động nghiệp vụ khác Tổ trưởng và tổ phó có thể thực hiện tất cả các nghiệp vụ quản lý, còn các cán bộ khác phụ trách từng nghiệp vụ theo phân công cụ thể

Nghiệp vụ chính: Quản lý thông tin về hộ khẩu, nhân khẩu và biến động nhân khẩu (khai sinh, khai tử, tạm vắng, tạm trú, …)

Thông tin về hộ khẩu và nhân khẩu do tổ trưởng ghi nhận và quản lý:

Thông tin về nhân khẩu của mỗi hộ gia đình được lưu trong sổ hộ khẩu với một mã số định danh duy nhất Sổ hộ khẩu gia đình ghi các thông tin cho cả hộ như: số hộ khẩu, họ tên chủ hộ, số nhà, đường phố (ấp), phường (xã, thị trấn), quận (huyện)

Sổ hộ khẩu gồm nhiều chi tiết cụ thể cho từng nhân khẩu trong hộ như họ và tên, bí danh, ngày tháng năm sinh, nơi sinh, nguyên quán, dân tộc, nghề nghiệp, nơi làm việc, số CMND hoặc số CCCD, ngày cấp và nơi cấp, ngày tháng năm đăng ký thường trú, địa chỉ nơi thường trú trước khi chuyển đến Trường hợp nhân khẩu là chủ hộ thì sẽ được ghi trang đầu tiên, nếu không là chủ hộ thì sẽ thêm chi tiết: quan hệ với chủ hộ

Các hoạt động biến đổi nhân khẩu:

Nếu gia đình có thêm nhân khẩu mới: sinh thêm con thì sẽ bổ sung chi tiết như trên, bỏ trống các chi tiết về nghề nghiệp, CMND và nơi thường trú chuyển đến sẽ ghi các chi tiết về giấy khai sinh của em bé

Nếu có nhân khẩu qua đời, chi tiết về chuyển đi sẽ ghi rõ các chi tiết về giấy khai tử Nếu có một nhân khẩu chuyển đi nơi khác thì sẽ thêm các chi tiết như sau: chuyển đi ngày, nơi chuyển đến, lý do khác

Nếu cả hộ chuyển đi nơi khác thì sẽ ghi ở phần thay đổi địa chỉ cả hộ các chi tiết như chuyển đến đâu, ngày đăng ký chuyển

Nếu có những thay đổi khác liên quan cả hộ (ví dụ như thay đổi chủ hộ) thì sẽ ghi ở phần thay đổi đính chính khác các chi tiết như nội dung thay đổi, ngày thay đổi

Nếu tách hộ thì tạo thông tin sổ hộ khẩu mới với các nhân khẩu được chọn.

Khi gia đình có ai đó đi xa dài ngày thì phải đến gặp tổ trưởng thông báo và xin cấp giấy tạm vắng có thời hạn Ngược lại nếu có nhân khẩu từ địa phương khác đến cư trú tạm thời trong một khoảng thời gian thì phải khai báo để được cấp giấy tạm trú

Phần mềm cần cung cấp cho tổ trưởng và tổ phó khả năng ghi nhận các thông tin trên ngoài ra có thể tìm kiếm các thông tin một cách nhanh chóng, xem lịch sử thay đổi nhân khẩu của một hộ Hàng quý tổ trưởng cần thống kê nhân khẩu theo các tiêu chí: theo giới tính (nam / nữ), theo độ tuổi (mầm non / mẫu giáo / cấp 1 / cấp 2 / cấp 3 / độ tuổi lao động / nghỉ hưu), theo khoảng thời gian và thống kê tạm vắng / tạm trú.

Nghiệp vụ khác: Quản lý thu phí, đóng góp của các hộ gia đình

Hàng năm tổ dân phố thực hiện thu một số khoản phí và đóng góp của các hộ gia đình, công việc này do cán bộ kế toán phụ trách Khoản phí vệ sinh là bắt buộc với tất cả các hộ gia đình, mỗi năm thu 1 lần với định mức 6.000VNĐ / 1 tháng / 1 nhân khẩu Cán bộ kế toán sẽ lập danh sách các hộ gia đình và số nhân khẩu tương ứng, sau đó đến từng nhà thu phí và ghi nhận số tiền nộp Đối với các khoản đóng góp thì không quy định số tiền mà phụ thuộc vào từng hộ, các khoản đóng góp này được thu theo từng đợt của các cuộc vận động như: “Ủng hộ ngày thương binh-liệt sỹ 27/07”,

“Ủng hộ ngày tết thiếu nhi”, “Ủng hộ vì người nghèo”, “Trợ giúp đồng bào bị ảnh hưởng bão lụt”,… Cán bộ kế toán cũng cần thống kê tổng số tiền đã thu trong mỗi đợt, tổng số hộ đã nộp và có thể xem chi tiết mỗi hộ đã nộp những khoản tiền nà.

Biểu đồ usecase

2.1 Biểu đồ usecase tổng quan

2.2 Biểu đồ usecase phân dã

- Quản lý thu phí đóng góp:

Đặc tả usecase

3.1 Đặc tả Use case “Đăng nhập”

UC001 Tên Use case Đăng nhập

Tác nhân User: Quản lý, kế toán …

Người đăng nhập đã có tài khoản trong hệ thống

1 User Mở form đăng nhập

2 Hệ thống Tạo giao diện đăng nhập

3 User Nhập thông tin: tên người dùng và password

4 User Nhấn nút “Đăng nhập”

5 Hệ thống Tiếp nhận thông tin, kiểm tra thông tin nhập vào

6 Hệ thống Hợp lệ, mở ra giao diện mới ứng với thông tin người đăng nhập

Luồng sự kiện thay thế

7a Hệ thống Thông báo lỗi: Cần nhập các trường bắt buộc nhập nếu nhập thiếu

Từ chối đăng nhập và thông báo không tìm thấy tài khoản khi kiểm tra thông tin đăng nhập không chính xác

7b Hệ thống Người dùng chọn “Thoát” thì kết thúc chương trình 7c Hệ thống Người dùng chọn “Tư cách khách’

Người dùng đăng nhập thành công và thực hiện các chức năng

3.2 Đặc tả Use case “Hộ khẩu”

UC002 Tên Use case Quản lý User

Tác nhân User: Quản lý

Tiền điều kiện Đăng nhập thành công, bấm vào “Hộ khẩu”

2 User Chọn yêu cầu di chuyển

4 User Chọn một hộ khẩu cần di chuyển

6 User Điền đầy đủ thông tin cần điền, bấm vào

8 User Điền đầy đủ thông tin vào form địa chỉ, bấm “OK”

5 Hệ thống Thực hiện lưu lại, và cập nhập

Luồng sự kiện thay thế

6.a Hệ thống Thông báo cho user cần nhập đủ các trường 6.b Hệ thống Yêu cầu kiểm tra lại thông tin khi người thực hiện nhập sai thông tin.

6.c Hệ thống Không lưu thông tin người dùng nhập và trở về giao diện hộ khẩu khi bấm “Cancel” Thay đổi:

1 User chọn một hộ khẩu và yêu cầu thay đổi

3 Hệ thống chuyển đến form sửa thông tin hộ khẩu

5 User chỉnh sửa các thông tin, bấm “+” để chỉnh sửa địa chỉ

7 Hệ thống Chuyển đến form địa chỉ

9 User Nhập thông tin địa chỉ

11 Hệ thống Cho người dùng chọn tiếp tục lưu nhấn vào “OK” hay hủy bỏ nhấn vào “Cancel”

13 Hệ thống kiểm tra các trường bắt buộc nhập, các trường nhập có hợp lệ hay không.

14 Hệ thống Hiển thị thông itn địa chỉ vừa điền

15 User Bấm “OK” để lưu thông tin

16 Hệ thống Cập nhập thông tin thay đổi

Luồng sự kiện thay thế

8.a Hệ thống thông báo lỗi khi chưa nhập đủ các trường cần thiết nếu quản trị viên nhập thiếu trường.

8.b Hệ thống Yêu cầu kiểm tra lại thông tin khi người

12 thực hiện nhập sai thông tin.

8.c Hệ thống Không lưu thông tin người dùng chỉnh sửa và trở về giao diện hộ khẩu khi bấm

1 User Chọn yêu cầu thêm hộ khẩu

3 Hệ thống Hiển thị form thêm hộ khẩu

5 User Nhập các thông tin hộ khẩu cần thêm vào hệ thống

7 Hệ thống Cho người dùng chọn tiếp tục lưu nhấn vào “OK” hay hủy bỏ nhấn vào “Cancel”

11 Hệ thống kiểm tra các trường bắt buộc nhập

12 Hệ thống Thực hiện lưu và cập nhật các thông tin hộ khẩu

Luồng sự kiện thay thế

13 Hệ thống thông báo lỗi chưa nhập đủ các trường cần thiết nếu quản trị viên nhập thiếu trường

3.3 Đặc tả Use case “Nhân khẩu”

UC003 Tên Use case Quản lý User

Tác nhân User: Quản lý

Tiền điều kiện Đăng nhập thành công, bấm vào “Nhân khẩu”

1 User Chọn yêu cầu tạm trú, vắng

3 User Quản lý tìm kiếm

5 Hệ thống Hiển thị những nhân khẩu thỏa mãn yêu

27 Hệ thống Kiểm tra các trường phải nhập và các trường nhập có hợp lệ hay không

29 Hệ thống Thực hiện lưu và cập nhật các thông tin nhân khẩu

Luồng sự kiện thay thế

12.a Hệ thống Báo lỗi chưa nhập đầy đủ trường nếu người dùng chưa nhập đầy đủ các trường cần thiết

12.b Hệ thống Báo lỗi khi người dùng nhập sai thông tin Thêm khoản phí

1 User yêu cầu thêm khoản phí

2 Hệ thống Hiển thị form thêm hàng hóa

3 User Nhập đầy đủ thông tin khoản phí.

4 Hệ thống Cho quản lý chọn tiếp tục lưu nhấn vào

“OK” hay hủy bỏ nhấn vào “Cancel”

6 Hệ thống Kiểm tra các trường bắt buộc và các trường có nhập hợp lệ

Luồng sự kiện thay thế

7.a Hệ thống thông báo lỗi: chưa nhập đủ các trường cần thiết nếu nhập thiếu trường 7.b Hệ thống Thông báo lỗi: khi các trường nhập sai thông tin

3.5 Đặc tả Use case “Thống Kê”

UC005 Tên Use case Thống kê

Tác nhân Uset: Quản lý

Tiền điều kiện Đăng nhập thành công, bấm vào “Trang chủ”

Luồng sự STT Thực hiện Hành động

1 Hệ thống Hiển thị giao diện gồm thống kê

2 Hệ thống Hệ thống vào database lấy các thông tin

3 Hệ thống Hiển thị các thông tin lên giao diện thống kê

Luồng sự kiện thay thế

3.6 Đặc tả Use case “Tìm kiếm’

UC007 Tên Use case Quản lý tài khoản

Tác nhân Quản lý, khách

Tiền điều kiện Đăng nhập thành công, bấm vào “Tìm kiếm”

1 Hệ thống Hiển thị giao diện tìm kiếm

2 User Tùy chọn kìm kiếm về hộ khẩu hoặc nhân khẩu

3 User Nhập thông tin ID, tên của hộ khẩu, nhân khẩu muốn tìm kiếm

4 Hệ thống Lấy danh sách nhân khẩu, hộ khẩu từ database theo yêu cầu

5 Hệ thống Hiển thị danh sách tìm kiếm

Luồng sự kiện thay thế

PHÂN TÍCH THIẾT KẾ BÀI TOÁN

Thiết kế cơ sở dữ liệu

Các bảng trong cơ sở dữ liệu:

1 Bảng dong_gop (ID, tenKhoanDong, ngayTao, soTien, donVi, theLoai, hoanThanh) ID: Mã khoản đóng góp tenKhoanDong: tên khoản đóng góp ngayTao: ngày tạo soTien: số tiền donVi: đơn vị theLoai: thể loại hoanThanh: hoàn thành

2 Bảng ho_khau_dong_gop (idHoKhau, idDongGop, ngayDong, daDong) idHoKhau: Mã hộ khẩu đóng góp idDongGop: Mã khoản đóng góp ngayDong: ngày đóng daDong: đã đóng (true:1, false:0)

3 Bảng ho_khau (ID, maHoKhau, idChuHo, maKhuVuc, diaChi, ngayChuyenDi) ID maHoKhau: mã hộ khẩu idChuHo: mã chủ hộ maKhuVuc: mã khu vực diaChi: địa chỉ ngayChuyenDi: ngày chuyển đi

4 Bảng thanh_vien_cua_ho (idNhanKhau, idHoKhau, quanHeVoiChuHo) idNhanKhau: Mã Nhân khẩu idHoKhau: Mã hộ khẩu quanHeVoiChuHo: quan hệ với chủ hộ

5 Bảng tieu_su (ID, idNhanKhau, tuNgay, denNgay, diaChi, ngheNghiep, noiLamViec)

19 idNhanKhau: Mã nhân khẩu tuNgay: từ ngày denNgay: đến ngày diaChi: địa chỉ ngheNghiep: nghề nghiệp noiLamViec: nơi làm việc

6 Bảng dinh_chinh (ID, idHoKhau, thongTinThayDoi, thayDoiTu, doiThanh, ngayThayDoi, nguoiThayDoi)

ID: Mã thủ tục đính chính idHoKhau: mã hộ khẩu thongTinThayDoi: thông tin thay đổi thayDoiTu: thay đổi từ doiThanh: đổi thành ngayThayDoi: ngày thay đổi nguoiThayDoi: người thay đổi

7 Bảng user (ID, username, password, ngayTao, role)

ID: mã người dùng username: tên người dùng password: mật khẩu ngayTao: ngày tạo role: vai trò

8 Bảng nhan_khau (ID, hoTen, bietDanh, namSinh, gioiTinh, noiSinh, nguyenQuan, danToc, tonGiao, quocTich, soHoChieu, noiThuongTru, diaChiHienNay, trinhDoHocVan, trinhDoChuyenMon, bietTiengDanToc, trinhDoNgoaiNgu, ngheNghiep, noiLamViec, tienAn, ngayChuyenDen, lyDoChuyenDen, ngayChuyenDi, lyDoChuyenDi, diaChiMoi, ngayTao, idNguoiTao, ngayXoa, idNguoiXoa, lyDoXoa, ghiChu)

ID: mã nhân khẩu hoTen: họ tên bietDanh: biệt danh namSinh: năm sinh gioiTinh: giới tính noiSinh: nơi sinh nguyenQuan: nguyên quán danToc: dân tộc tonGiao: tôn giáo quocTich: quốc tịch soHoChieu: số hộ chiếu noiThuongTru: nơi thường trú diaChiHienNay: địa chỉ hiện nay trinhDoHocVan: trình độ học vấn trinhDoChuyenMon: trình độ chuyên môn bietTiengDanToc: biết tiếng dân tộc trinhDoNgoaiNgu: trình độ ngoại ngữ ngheNghiep: nghề nghiệp noiLamViec: nơi làm việc tienAn: tiền án ngayChuyenDen: ngày chuyển đến

20 lyDoChuyenDen: lý do chuyển đến ngayChuyenDi: ngày chuyển đi lyDoChuyenDi: lý do chuyển đi diaChiMoi: địa chỉ mới ngayTao: ngày tạo idNguoiTao: mã nhân khẩu người tạo ngayXoa: ngày xóa idNguoiXoa: mã nhân khẩu người xóa lyDoXoa: lý do xóa ghiChu: ghi chú

9 Bảng dinh_danh (ID,idNhanKhau, soDinhDanh, ngayCap, noiCap, type)

ID: mã thủ tục định danh idNhanKhau: mã nhân khẩu soDinhDanh: sổ định danh ngayCap: ngày cấp noiCap: nơi cấp type: loại

10 Bảng tam_tru (ID, idNhanKhau, maGiayTamTru, soDienThoaiNguoiDangKy, tuNgay, denNgay, lyDo)

ID: mã tt tạm trú idNhanKhau: mã nhân khẩu maGiayTamTru: mã giấy tạm trú soDienThoaiNguoiDangKy: số điện thoại người đăng ký tuNgay: từ ngày denNgay: đến ngày lyDo: lý do

11 Bảng tam_vang (ID, idNhanKhau, maGiayTamVang, noiTamTru, tuNgay, denNgay, lyDo)

ID: mã tt tạm vắng idNhanKhau: mã nhân khẩu maGiayTamVang: mã giấy tạm vắng noiTamTru: nơi tạm trú tuNgay: từ ngày denNgay: đến ngày lyDo: lý do

12 Bảng khai_tu (ID, soGiayKhai, idNguoiKhai, idNguoiChet, ngayKhai, ngayChet, lyDoChet)

ID: Mã thủ tục khai tử soGiayKhai: số giấy khai idNguoiKhai: mã nhân khẩu người khai idNguoiChet: mã nhân khẩu người chết ngayKhai: ngày khai ngayChet: ngày chết

Biểu đồ trình tự

2 Usecase Xem thông tin Hộ Khẩu

Biểu đồ lớp

Sơ đồ package tổng quát

Sơ đồ lớp tổng quát

Thiết kế cơ sở dữ liệu

Các package trong bài toán : app.common: gồm class chứa chức vụ có thể thực hiện nghiệp vụ quản lý bao gồm tổ trưởng, tổ phó, kế toán và các cán bộ khác app.component: gồm class thuộc tầng giao diện, cung cấp giao diện người dùng như đăng ký hộ khẩu , đăng ký nhân khẩu, đăng nhập, app.config: gồm class thuộc tầng dữ liệu để kết nối tới máy tính của bạn app.database: gồm class thuộc tầng dữ liệu , những class này có thể là cấu trúc dữ liệu hoặc là nơi lưu trữ dữ liệu phục vụ hoạt động của ứng dụng app.entity: gồm class thuộc tầng nghiệp vụ , những class này có nhiệm vụ định nghĩa những đối tượng riêng lẻ được tạo ra trong package này app.helper: gồm class thuộc tầng nghiệp vụ để thông báo các trường hợp ngoại lệ app.service: gồm class thuộc tầng nghiệp vụ, những class này đóng vai trò như các chức năng ứng dụng app.utility: gồm class thuộc tầng nghiệp vụ và giao diện, những class này vừa có vai trò là giao diện tương tác người dùng, nó giống như môi trường giao tiếp giữa người dùng và hệ thống ( cụ thể là button, label, )

Tất cả các package trên sẽ cung cấp đầy đủ chức năng của ứng dụng, và việc chia các lớp trong ứng dụng thành các package cùng chức năng như vậy sẽ giúp lập

24 trình viên dễ dàng quản lý chương trình, tổ chức code một cách phù hợp và thân thiện với người đọc code

Một số packages quan trọng:

CÔNG NGHỆ VÀ THUẬT TOÁN SỬ DỤNG

Tư duy lập trình hướng đối tượng

Ứng dụng tính trừu tượng hóa và đóng gói để xây dựng các đối tượng trong chương trình và ứng dụng tính kế thừa, kết tập, hợp thành để tái sử dụng code đồng thời ứng dụng tính đa hình trong quản lý các lớp đối tượng (upcasting và downcasing).

Sử dụng những lớp abstract kết hợp với các interface để tạo cấu trúc thiết kế chương trình rõ ràng, rất có ích trong việc làm việc nhóm.

Ghép nhóm những lớp có cùng chức năng hoặc có chức năng có liên quan lại với nhau tạo ra một chương trình có cấu trúc rõ ràng, dễ hiểu.

Công nghệ

- Javascript là một ngôn ngữ lập trình kịch bản dựa vào đối tượng phát triển có sẵn hoặc tự định nghĩa Javascript được sử dụng rộng rãi trong các ứng dụng Website Javascript được hỗ trợ hầu như trên tất cả các trình duyệt như Firefox, Chrome, trên máy tính lẫn điện thoại.

- Nhiệm vụ của Javascript là xử lý những đối tượng HTML trên trình duyệt Nó có thể can thiệp với các hành động như thêm / xóa / sửa các thuộc tính CSS và các thẻ HTML một cách dễ dàng Hay nói cách khác, Javascript là một ngôn ngữ lập trình trên trình duyệt ở phía client Tuy nhiên, hiện nay với sự xuất hiện của NodeJS đã giúp cho Javascript có thể làm việc ở backend.

- ReactJS là một thư viện JavaScript chuyên giúp các nhà phát triển xây dựng giao diện người dùng hay UI Trong lập trình ứng dụng front-end, lập trình viên thường sẽ phải làm việc chính trên 2 thành phần sau: UI và xử lý tương tác của người dùng UI là tập hợp những thành phần mà bạn nhìn thấy được trên bất kỳ một ứng dụng nào, ví dụ có thể kể đến bao gồm: menu, thanh tìm kiếm, những nút nhấn, card,… Giả sử bạn đang lập trình một website thương mại điện tử, sau khi người dùng chọn được sản phẩm ưng ý rồi và nhấn vào nút “Thêm vào giỏ hàng”, thì việc tiếp theo mà bạn phải làm đó là thêm sản phẩm được chọn vào giỏ hàng và hiển thị lại sản phẩm đó khi user vào xem => xử lý tương tác.

- Phù hợp với đa dạng thể loại website: ReactJS khiến cho việc khởi tạo website dễ dàng hơn bởi vì bạn không cần phải code nhiều như khi tạo trang web thuần chỉ dùng JavaScript, HTML và nó đã cung cấp cho bạn đủ loại “đồ chơi” để bạn có thể dùng cho nhiều trường hợp.

Cơ sở dữ liệu NoSQL

- Cơ sở dữ liệu NoSQL là Cơ sở dữ liệu được xây dựng dành riêng cho mô hình dữ liệu và có sơ đồ linh hoạt để xây dựng các ứng dụng hiện đại Cơ sở dữ liệu NoSQL được công nhận rộng rãi vì khả năng dễ phát triển, chức năng cũng như hiê £u năng ở quy mô lớn Trang này có các tài nguyên giúp bạn hiểu thêm về cơ sở dữ liệu NoSQL và bắt đầu sử dụng.

- Cơ sở dữ liệu NoSQL sử dụng nhiều mô hình dữ liệu để truy cập và quản lý dữ liệu Các loại cơ sở dữ liệu này được tối ưu hóa dành riêng cho các ứng dụng yêu cầu mô hình dữ liệu linh hoạt có lượng dữ liệu lớn và độ trễ thấp, có thể đạt được bằng cách giảm bớt một số hạn chế về tính nhất quán của dữ liệu của các cơ sở dữ liệu khác.

- Cơ sở dữ liệu NoSQL là lựa chọn cực kỳ thích hợp cho nhiều ứng dụng hiện đại, ví dụ như di động, web và trò chơi đòi hỏi phải sử dụng cơ sở dữ liệu cực kỳ thiết thực, linh hoạt, có khả năng thay đổi quy mô và hiệu năng cao để đem đến cho người dùng trải nghiệm tuyệt vời.

Linh hoạt: Cơ sở dữ liệu NoSQL thường cung cấp các sơ đồ linh hoạt giúp công đoạn phát triển nhanh hơn và có khả năng lặp lại cao hơn Mô hình dữ liệu linh hoạt biến cơ sở dữ liệu NoSQL thành lựa chọn lý tưởng cho dữ liệu không được tổ chức thành cấu trúc hoặc có cấu trúc chưa hoàn chỉnh.

Khả năng thay đổi quy mô: Cơ sở dữ liệu NoSQL thường được thiết kế để tăng quy mô bằng cách sử dụng các cụm phần cứng được phân phối thay vì tăng quy mô bằng cách bổ sung máy chủ mạnh và tốn kém Một số nhà cung cấp dịch vụ đám mây xử lý các hoạt động này một cách không công khai dưới dạng dịch vụ được quản lý đầy đủ. Hiệu năng cao: Cơ sở dữ liệu NoSQL được tối ưu hóa theo các mô hình dữ liệu cụ thể và các mẫu truy cập giúp tăng hiệu năng cao hơn so với việc cố gắng đạt được mức độ chức năng tương tự bằng cơ sở dữ liệu quan hệ.

Cực kỳ thiết thực: Cơ sở dữ liệu NoSQL cung cấp các API và kiểu dữ liệu cực kỳ thiết thực được xây dựng riêng cho từng mô hình dữ liệu tương ứng.

- Là một hệ thống quản lý phiên bản phân tán (Distributed Version Control System) ra đời vào 2005 và được sử dụng rất phổ biến.

- Git sẽ giúp bạn thực hiện việc quản lý mã nguồn cũng như làm việc nhóm chở nên hiệu quả hơn:

Lưu lại các phiên bản khác nhau của mã nguồn dự án.

Khôi phục lại mã nguồn từ một phiên bản bất kì.

Dễ dàng so sánh giữa các phiên bản

Phát hiện được ai đã sửa phần nào trong mã nguồn

Khôi phục lại tập tin bị mất.

Dễ dàng thử nghiệm, mở rộng tính năng dự án

Giúp phối hợp thực hiện dự án một cách hiệu quả.

- Sourcetree: cho phép người dùng thực hiện các thao tác cơ bản của git như commit, push, pull, fetch, create branch, …

Giao diện sử dụng của sourcetree rất thân thiện, dễ nhìn giúp người dùng có thể thực hiện các thao tác một cách đơn giản.

DEMO CHƯƠNG TRÌNH

Kết quả đạt được

Hoàn thành các chức năng cơ bản của phần mềm quản lý dân cư và thu phí, cụ thể là các chức năng: Đăng nhập: Đăng nhập cho admin Đăng nhập cho khách

Xem thông tin tổng quan

Tìm kiếm (nhân khẩu, hộ khẩu)

Xem thông tin tổng quan

Tìm kiếm (nhân khẩu, hộ khẩu)

Giao diện chương trình

Chức năng đăng nhập cho phép người dùng đăng nhập vào hệ thống

Màn hình chính của ứng dụng : màn hình làm việc sau khi người dùng đăng nhập thành công Màn hình chứa menu bên trái với các nút liên kết để mở các chức năng chính Khung bên phải chứa các thông tin thống kê chung về các số liệu (nhân khẩu, hộ khẩu, tạm vắng, tạm trú) trong hệ thống. Điều khiển Thông tin dữ liệu

Tổng quan Hiển thị thông tin tổng quan về tình hình dân cư.

Tìm kiếm Khi người dùng click sẽ mở màn hình “Tìm kiếm hộ khẩu nhân khẩu”

Thu phí Khi người dùng click sẽ mở màn hình “Quản lý thu phí”

Hộ khẩu Khi người dùng click sẽ mở màn hình “Quản lý hộ khẩu”

Nhân khẩu Khi người dùng click sẽ mở màn hình “Quản lý nhân khẩu”

Thống kê Khi người dùng click sẽ mở màn hình “Thống kê”

Quản lý hộ khẩu: có chức năng thêm, thay đổi, di chuyển hộ khẩu Điều khiển Thông tin dữ liệu

Thêm Khi người dùng click vào sẽ hiển thị ra một biểu mẫu, người dùng có thể điền thông tin vào đó rồi ấn OK để tạo ra một hộ khẩu mới

Thay đổi Người dùng click vào một hộ khẩu cụ thể sau đó nhấn thay đổi, nó sẽ hiện ra một biểu mẫu nơi người dùng có thể thay đổi thông tin

Di chuyển Người dùng click vào sẽ hiển thị ra một biễu mẫu nơi người dùng sẽ khai báo thông tin về việc di chuyển hộ khẩu

Quản lý nhân khẩu: có chức năng thêm, thay đổi, di chuyển hộ khẩu Điều khiển Thông tin dữ liệu

Thêm Khi người dùng click vào sẽ hiển thị ra một biểu mẫu, người dùng có thể điền thông tin vào đó rồi ấn OK để tạo ra một nhân khẩu mới

Thay đổi Người dùng click vào một nhân khẩu cụ thể sau đó nhấn thay đổi, nó sẽ hiện ra một biểu mẫu nơi người dùng có thể thay đổi thông tin

Tạm trú, vắng Người dùng click vào sẽ hiển thị ra một biễu mẫu nơi người dùng sẽ khai báo thông tin về việc tạm trú, tạm vắng

Quản lý thu phí: có chức năng thêm, thay đổi, di chuyển hộ khẩu Điều khiển Thông tin dữ liệu

Thêm đóng góp Khi người dùng click vào sẽ hiển thị ra một biểu mẫu, người dùng có thể điền thông tin vào để khai báo lần đóng góp đấy

Thêm khoản phí Khi người dùng click vào sẽ hiển thị ra một biểu mẫu, người dùng có thể điền thông tin vào để khai báo thông tin khoản phí

2.4 Giao diện quản lý hộ khẩu

2.5 Giao diện quản lý nhân khẩu

2.7 Giao diện thêm, thay đổi, di chuyển hộ khẩu

2.8 Giao diện thêm, thay đổi, tạm trú, vắng nhân khẩu

2.9 Giao diện thêm đóng góp, thêm khoản phí

Kiểm thử các chức năng chương trình

1.1 Kiểm thử cho chức năng tìm kiếm

Bảng 3.1: Kết quả kiểm thử cho chức năng tìm kiếm

T Input Output Ngoại lệ Kết quả

Tìm kiếm: (dữ liệu bất kỳ)

Không hiển thị dữ liệu Không xử lý OK

Hiển thị danh sách tất cả hộ khẩu

Tìm kiếm: “hk0001” Hiển thị danh sách thông tin hộ khẩu có chứa ký tự

“hk0001” không phân biệt chữ hoa chữ thường

Tìm kiếm: “HÙng” Hiển thị danh sách thông tin hộ khẩu có chứa ký tự

“HÙng” không phân biệt chữ hoa chữ thường

Không hiển thị dữ liệu Không xử lý OK

Không hiển thị dữ liệu Không xử lý OK

Hiển thị danh sách tất cả hộ khẩu

Tìm kiếm: “HÙng” Hiển thị danh sách thông tin nhân khẩu có chứa ký tự

“HÙng” không phân biệt chữ hoa chữ thường

Tìm kiếm: “0342” Hiển thị danh sách thông tin nhân khẩu có chứa ký tự

Không hiển thị danh sách Không xử lý OK

1.2 Kiểm thử chức năng “Thu phí”

Bảng 3.2.1: Kết quả kiểm thử chức năng “Thêm khoản phí”

T Input Output Ngoại lệ Kết quả

Thông báo ra lỗi yêu cầu nhập đầy đủ thông tin

Thông báo ra lỗi yêu cầu nhập đầy đủ thông tin

Thông báo ra lỗi yêu cầu nhập đầy đủ thông tin

Thông báo ra lỗi yêu cầu nhập đầy đủ thông tin

Loại phí: “Đóng góp” Lưu thông tin vào CSDL Không xử lý OK

Lưu thông tin vào CSDL Không xử lý OK

Thông báo ra lỗi yêu cầu nhập lại Xử lý chuẩn OK

Hình 3.2.2: Kết quả kiểm thử chức năng “Thêm khoản phí”

STT Input Output Ngoại lệ Kết quả

Hiển thị “Bạn chưa chon tên khoản phí”

2 Tên khoản phí:Ủng hộ miền trung

3 Tên khoản phí:Ủng hộ miền trung

4 Tên khoản phí: Ủng hộ miền trung 9000

Hiển thị:”chưa có thông tin hộ khẩu”

5 Tên khoản phí: Ủng hộ miền trung 9000

Hiển thị:”chưa có thông tin hộ khẩu”

6 Tên khoản phí: Ủng hộ miền trung 9000

Lưu vào cơ sở dữ liệu

7 Tên khoản phí: Ủng hộ miền trung 9000

Ghi chú: ủng hộ 9000 đồng

Lưu vào cơ sở dữ liệu

1.3 Kiểm tra chức năng “Hộ khẩu”

Bảng 3.3.1: Kết quả kiểm thử chức năng “Thêm” và “Thay đổi” hộ khẩu

T Input Output Ngoại lệ Kết quả

1 Số hộ khẩu: null Địa chỉ: “Số 1, Đường test, Phường test, Quận test, Huyện test”

Thông báo ra lỗi yêu cầu nhập lại

2 Số hộ khẩu: “test” Địa chỉ: null

Thông báo ra lỗi yêu cầu nhập lại

3 Số hộ khẩu: “test” Địa chỉ: “Số 1, Đường test, Phường test, Quận test, Huyện test”

Họ tên chủ hộ: null

Thông báo ra lỗi yêu cầu nhập lại Không ngoại lệ OK

4 Số hộ khẩu: “test” Địa chỉ: “Số 1, Đường test, Phường test, Quận test, Huyện test”

Họ tên chủ hộ: “test”

Thông báo ra lỗi yêu cầu nhập lại

5 Số hộ khẩu: “test” Địa chỉ: “Số 1, Đường test, Phường test, Quận test, Huyện test”

Lưu vào cơ sở dữ liệu Không ngoại lệ OK

6 Số hộ khẩu: “HK0001” Địa chỉ: “Số 1, Đường test, Phường test, Quận test, Huyện test”

Thông báo đã tồn tại hộ khẩu yêu cầu nhập lại Không ngoại lệ OK

7 Số hộ khẩu: “///,.xsax/” Địa chỉ: “Số 1, Đường test, Phường test, Quận test, Huyện test”

Thông báo nhập sai yêu cầu nhập lại

Bảng 3.4.2: Kết quả kiểm thử chức năng “Di chuyển” hộ khẩu

T Input Output Ngoại lệ Kết quả

BK Quận HBT Thành Phố

Chưa chọn thông tin về hộ khẩu xử lí chuẩn OK

BK Quận HBT Thành Phố

Bạn chưa chọn thể loại chuyển

BK Quận HBT Thành Phố

Thông tin không hợp lệ

Số nhà: null đường TĐN

BK Quận HBT Thành Phố

Bạn chưa chọn thông tin số nhà

BK Quận HBT Thành Phố

Bạn chưa nhập thông tin đường phố

Phường null Quận HBT Thành Phố

Thông báo: bạn chưa nhập thông tin phường

Thông báo: bạn chưa nhập thông tin quận

BK Quận null Thành Phố

BK Quận BK Thành Phố null

Thông báo: bạn chưa nhập thông tin thanh phố

BK Quận HBT Thành Phố

Lưu vào cơ sở dữ liệu Không xử lí OK

1.4 Kiểm tra chức năng nhân khẩu

Bảng 3.5.1: Kết quả kiểm thử chức năng “Thêm” và “Thay đổi” nhân khẩu

T Input Output Ngoại lệ Kết quả

Nơi sinh, Dân tộc, Nguyên quán,

Nơi làm việc, Nơi cấp CMND,

Quan hệ chủ hộ = “Con”

Lưu vào cơ sở dữ liệu Không có ngoại lệ OK

2 Lần lượt thay các trường ở trên test case 1 bằng null, các trường còn lại giữ nguyên

Thông báo nhập sai yêu cầu nhập lại Không có ngoại lệ OK

Bảng 3.5.2: Kết quả kiểm thử chức năng “Tạm trú, vắng”

ST Input Output Ngoại lệ Kết quả

Thể loại: tạm vắng Địa chỉ: Số nhà 10 đường

Vui lòng chọn nhân khẩu

Thể loại: tạm vắng Địa chỉ: Số nhà 10 đường

Thông tin không hợp lệ

Thể loại: tạm vắng Địa chỉ: Số nhà 10 đường

Thông báo:Thông tin không hợp lệ

Thể loại: null Địa chỉ: Số nhà 10 đường

Thể loại: tạm vắng Địa chỉ: Số nhà null đường

Chưa chọn thông tin số nhà

Thể loại: tạm vắng Địa chỉ: Số nhà 10 đường null Phường BK Quận

Bạn chưa nhập thông tin đường phố

Thể loại: tạm vắng Địa chỉ: Số nhà 19 đường

Thông báo:Bạn chưa nhập thông tin phường

Thể loại: tạm vắng Địa chỉ: Số nhà 33 đường

TDN Phường BK Quận null Thành Phố HN

Bạn chưa nhập thông tin quận huyện

Thể loại: tạm vắng Địa chỉ: Số nhà 86 đường

Bạn chưa nhập thông tin tỉnh, thành phố

Thể loại: tạm vắng Địa chỉ: Số nhà 86 đường

Lưu vào cơ sở dữ liệu

1.5 Kiểm tra chức năng đăng nhập

Bảng 3.6: Kết quả kiểm thử chức năng đăng nhập

T Input Output Ngoại lệ Kết quả

Bạn chưa nhập tên tài khoản

Bạn chưa nhập mật khẩu

Thông báo: bạn chưa nhập tài khoản

Mật khẩu:admin Thông báo:

Không tìm thấy tài khoản

Mật khẩu không chính xác.Vui long nhập lại

Hiển thị giao diện tổng quan dân cư

Ngày đăng: 25/05/2024, 10:07

w