Hotline: 024.62511017

024.62511081

  Trang chủ   Sản phẩm   Phần mềm Dành cho nhà trường   Phần mềm Hỗ trợ học tập   Kho phần mềm   Liên hệ   Đăng nhập | Đăng ký

Tìm kiếm

School@net
 
Xem bài viết theo các chủ đề hiện có
  • Hoạt động của công ty (726 bài viết)
  • Hỗ trợ khách hàng (498 bài viết)
  • Thông tin tuyển dụng (57 bài viết)
  • Thông tin khuyến mại (80 bài viết)
  • Sản phẩm mới (216 bài viết)
  • Dành cho Giáo viên (549 bài viết)
  • Lập trình Scratch (3 bài viết)
  • Mô hình & Giải pháp (156 bài viết)
  • IQB và mô hình Ngân hàng đề kiểm tra (127 bài viết)
  • TKB và bài toán xếp Thời khóa biểu (242 bài viết)
  • Học tiếng Việt (183 bài viết)
  • Download - Archive- Update (289 bài viết)
  • Các Website hữu ích (70 bài viết)
  • Cùng học (92 bài viết)
  • Learning Math: Tin học hỗ trợ học Toán trong nhà trường (78 bài viết)
  • School@net 15 năm (154 bài viết)
  • Mỗi ngày một phần mềm (7 bài viết)
  • Dành cho cha mẹ học sinh (124 bài viết)
  • Khám phá phần mềm (122 bài viết)
  • GeoMath: Giải pháp hỗ trợ học dạy môn Toán trong trường phổ thông (36 bài viết)
  • Phần mềm cho em (13 bài viết)
  • ĐỐ VUI - THƯ GIÃN (363 bài viết)
  • Các vấn đề giáo dục (1210 bài viết)
  • Bài học trực tuyến (1037 bài viết)
  • Hoàng Sa - Trường Sa (17 bài viết)
  • Vui học đường (275 bài viết)
  • Tin học và Toán học (220 bài viết)
  • Truyện cổ tích - Truyện thiếu nhi (180 bài viết)
  • Việt Nam - 4000 năm lịch sử (97 bài viết)
  • Xem toàn bộ bài viết (8223 bài viết)
  •  
    Đăng nhập/Đăng ký
    Bí danh
    Mật khẩu
    Mã kiểm traMã kiểm tra
    Lặp lại mã kiểm tra
    Ghi nhớ
     
    Quên mật khẩu | Đăng ký mới
     
    Thành viên có mặt
    Khách: 14
    Thành viên: 0
    Tổng cộng: 14
     
    Số người truy cập
    Hiện đã có 91965991 lượt người đến thăm trang Web của chúng tôi.

    Mô hình mã hóa HỌC SINH trong bài toán quản lý Nhà trường Phổ thông

    Ngày gửi bài: 08/02/2006
    Số lượt đọc: 23420

    1. Mục đích

    Việc mã hóa Học sinh và Giáo viên trong School Viewer phải thỏa mãn được các mục đích sau đây:

    M1 - Tối ưu hóa việc sử dụng chữ và số đề mã hóa

    M2 - Không quá phức tạp để có thể nhanh chóng mã hóa và giải mã

    M3 - Tính duy nhất: mỗi học sinh và giáo viên phải có một mã (khóa) duy nhất không phụ thuộc vào trường và địa phương mà mình đang học tập, làm việc. Hay nói cách khác mã phải có tác dụng trên qui mô toàn quốc.

    M4 - Mỗi mã học sinh không dài quá 12 ký tự (chữ+số) và mỗi mã giáo viên không dài quá 10 ký tự (chữ+số).

    2. Cơ sở lý thuyết của Mã hóa

    Mã hóa với cơ sở 64

    Để mô tả và lưu trữ dễ dàng các mã hóa của học sinh và giáo viên, bắt buộc phải sử dụng các chữ cái latinh và chữ số. Như vậy phải sử dụng 10 chữ số + 52 chữ cái latinh + 2 ký tự thông dụng (dấu _ và dấu #) = 64 ký tự để mô phỏng mã hóa. School Viewer sẽ chính thức dùng hệ mã số này để mô tả các ký tự mã hóa của mình.

    Như vậy bảng mã hóa của School Viewer (gọi là SVC - School Viewer Coding) được mô tả trong bảng sau:



    Như vậy với bảng mã 64 ký tự của SVC, mỗi 6-bit sẽ được mô tả thành 1 "ký tự" trong School Viewer, hay mỗi 3 byte sẽ được mô tả thành 4 ký tự trong SVC.

    3. Thông tin mã hóa

    Các thông số cần thiết để mã hóa bao gồm:

    1. Ngày sinh

    Ngày sinh của học sinh/giáo viên được tính như một số nguyên là số ngày tính từ năm 1900.

    Số lượng ngày cho phép tính là 200 năm (1900-2099) là 200 x 365 =73000  2 bytes (16 bits). Chương trình sẽ sử dụng 17 bits = 131,072 để lưu mã hóa thông số này.

    Chú ý: trường hợp học sinh không nhớ chính xác ngày sinh thì chương trình sẽ tự động gán giá trị ngày ngẫu nhiên để làm thông tin mã hóa.

    2. Nam/Nữ

    Sử dụng 1 bit cho thông số này.

    3. Quê quán

    Hiện tại sử dụng dữ liệu bao gồm 61 tỉnh thành  7 bits Như vậy cho phép mở rộng trong tương lai lên 128 tỉnh/thành phố.

    4. Mã hóa họ cha

    Phần họ của học sinh được tách ra và mã hóa theo một CSDL lưu các Họ chuẩn của Việt Nam. Số lượng các họ của người Việt là hữu hạn và được lưu trong một bảng của System.svd có tên là rNAMESVN. Tổng số lượng các họ của người Việt sẽ không quá 12 bits (4096).

    Chú ý: trường hợp khi nhập dữ liệu họ không có trong bảng CSDL thì chương trình sẽ tự động nạp họ này vào bảng tương ứng tại vị trí cuối cùng. Giá trị Checksum-4 sẽ đặt là 1.

    5. Mã hóa theo tên học sinh

    Phần tên học sinh (sau khi đã loại đi Họ + đệm) sẽ được mã hóa theo một CSDL lưu các tên chuẩn của người Việt Nam. Số lượng tên của người Việt là hữu hạn và lưu trong bảng rNamesVN. Tổng số lượng tên người Việt dự đoán không quá 8,192 - 13 bits.

    Chú ý: trường hợp khi nhập dữ liệu tên không có trong bảng CSDL thì chương trình sẽ tự động nạp tên này vào bảng tương ứng tại vị trí cuối cùng. Giá trị Checksum-5 sẽ đặt là 1.

    6. Tham số thời gian

    Tham số thời gian được đưa vào để giảm thiểu tối đa khả năng tạo ra các mã trùng nhau. Ta sử dụng tham số thời gian là thời gian chính xác đến giây thời điểm nhập dữ liệu vào máy tính. Được phép dùng 17-bits để mô tả cho tham số ngẫu nhiên này.

    - bit 1: 0-nếu thời gian là từ 0 giờ đến 12 giờ trưa

    1-nếu thời gian là từ 12 giờ trưa đến 24 giờ đêm.

    - bit 2-17: mô tả thời gian tính bằng giây tính từ thời điểm 0 giờ hoặc 12 giờ trưa cho đến thời điểm hiện thời.

    7. Tham số Checksum: 5 bits

    - 2 bit sau cùng có ý nghĩa như sau:

    Bit-4 chỉ ra giá trị Họ của học sinh có tìm thấy trong bảng dữ liệu chuẩn hay không.

    Bit-5 chỉ ra giá Tên của học sinh có tìm thấy trong bảng dữ liệu chuẩn hay không.

    Tổng kết lại chúng ta cần:

    (1) = 17 bits

    (2) = 1 bit

    (3) = 7 bits

    (4) = 12 bits

    (5) = 13 bits

    (6) = 17 bits

    (7) = 5 bits

    = 72 bits = 12 ký tự

    4. Cấu trúc và thủ tục mã hóa

    Theo sơ đồ đã mô tả ở trên, chúng ta có 72-bit đã được mã hóa từ các thông số của một học sinh. Các bit được sắp xếp theo thứ tự và sau đó ghép lại theo bảng ký tự SVC. Để thể hiện (thông báo mã cho học sinh) chúng ta dùng khuôn dạng:

    XX-XXXXX-XXXXX

    5. Phương án mã hóa 32 bit

    Phương án mã hóa Học sinh, Giáo viên với cơ sở 64 bit như đã trình bày ở trên không thích hợp với mô hình CSDL không phân biệt các chữ cái in hoa và in thường. Trong mục này ta sẽ mô tả một phương án mã hóa khác chỉ sử dụng 32 bit Cơ sở.

    M4 - Mỗi mã học sinh không dài quá 12 ký tự (chữ+số) và mỗi mã giáo viên không dài quá 10 ký tự (chữ+số).

    Bộ ký tự dùng cho kiểu mã hóa này chỉ là các chữ số và bộ chữ cái in hoa rút gọn, phù hợp với bảng chữ cái tiếng Việt (Tiếng Anh bỏ đi F, J, W, Z).



    Với bảng chữ cái mới này, 5 bits = 1 chữ cái. Như vậy để mã hóa bởi 12 ký tự, chúng ta cần lượng thông tin là 5 x 12 = 60 bits.

    Thủ tục mã hoá học sinh/giáo viên theo cơ sở 32 bits vẫn hoàn toàn thỏa mãn các mục đích M1, M2, M3 đã nêu ra ở trên.

    Thông tin mã hóa theo qui luật sau:

    1. Ngày sinh - 16 bits

    Ngày sinh của học sinh/giáo viên được tính như một số nguyên là số ngày tính từ năm 1925.

    Số lượng ngày cho phép tính là 175 năm (1925-2099) là 175 x 365 =63875 - 2 bytes (16 bits). Chương trình sẽ sử dụng 16 bits = 65,536 để mã hóa thông số này.

    Chú ý: trường hợp học sinh không nhớ chính xác ngày sinh thì chương trình sẽ tự động gán giá trị ngày ngẫu nhiên để làm thông tin mã hóa.

    2. Nam/Nữ - 1 bit

    Sử dụng 1 bit cho thông số này.

    3. Mã hóa theo Họ cha của Học sinh - 9 bits

    Phần họ của học sinh được tách ra và mã hóa theo một CSDL lưu các Họ thường gặp của người Việt Nam. Dữ liệu này được lưu trong bảng rFamilyNamesVN nằm trong tệp System.svd của hệ thống. Dự kiến toàn bộ các họ Việt Nam sẽ không quá 512. Chúng ta sẽ dùng 9 bits để mã hoá giá trị này của Học sinh. Trường hợp khi nhập họ học sinh không có trng bảng này, chương trình sẽ tự động nạp tên này vào bảng tại vị trí cuối cùng. Trường hợp bảng đã đủ 512 bản ghi mà họ học sinh không tìm thấy trong bảng thì máy sẽ gán một giá trị ngẫu nhiên 9 bits cho giá trị này.

    4. Mã hóa theo tên học sinh - 13 bits

    Phần tên học sinh (sau khi đã loại đi Họ + đệm) sẽ được mã hóa theo một CSDL lưu các tên chuẩn của người Việt Nam. Số lượng tên của người Việt là hữu hạn và lưu trong tệp rNamesVN trong System.svd. Tổng số lượng tên người Việt dự đoán không quá 8,192 = 13 bits.

    Chú ý: trường hợp khi nhập dữ liệu tên không có trong bảng CSDL thì chương trình sẽ tự động nạp tên này vào bảng tương ứng tại vị trí cuối cùng.

    5. Mã Quận/Huyện của nhà trường hiện thời - 10 bits

    Hiện tại số Quận/Huyện trên cả nước là 616, chúng ta sẽ sử dụng 10 bits = 1024 để mã hóa thông tin này.

    6. Chỉ số địa phương của Nhà trường (SchoolLocalID) - 6 bits

    Chỉ số địa phương của Nhà trường được gán và khởi tạo từ lệnh Khởi tạo CSDL nhà trường. Chỉ số này dùng để phân biệt giữa các nhà trường trong phạm vi một Quận/Huyện. Hệ thống chỉ số được gán thống nhất và được kiểm soát bởi Sở GD & ĐT hoặc Phòng GD & ĐT quận/huyện. Trong phạm vi một quận/huyện, các trường cùng cấp (Tiểu học, THCS, THPT) phải có Chỉ số địa phương khác nhau. Chỉ số địa phương được phép gán từ giá trị 1 đến 64, như vậy cần 6 bits để mã hoá thông số này.

    Chú ý: Lần đầu tiên khi khởi tạo CSDL năm học, chương trình sẽ khởi tạo một giá trị ngẫu nhiên cho SchoolLocalID, tuy nhiên Hiệu trưởng có thể thay đổi lại giá trị này bất cứ lúc nào. Khi cài đặt công ty School@net nên đặt giá trị này trước cho nhà trường coi như một thông số bắt buộc của quá trình cấp License phần mềm.

    7. Tham số Checksum: 5 bit

    - Có 32 giá trị (5 bits) để tạo tham số phòng hờ sự cố khi sử dụng 6 tham số trên tạo ra các mã trùng nhau trong một trường (tại thời điểm sinh mã học sinh/giáo viên). Khi đó Checksum sẽ tự động tăng lên 1 giá trị.

    Tổng kết lại chúng ta cần:

    (1) = 16 bits

    (2) = 1 bit

    (3) = 9 bits

    (4) = 13 bits

    (5) = 10 bits

    (6) = 6 bits

    (7) = 5 bit

    Tổng cộng = 60 bits = 12 ký tự

    Qui định ghi Mã Học sinh - Giáo viên (thể hiện và thông báo cho học sinh).

    XXXX-XXXX-XXXX

    Chú ý:

    Toàn bộ các thông tin cần thiết để mã hoá một Học sinh / Giáo viên đều là những thông số bắt buộc cần phải biết của một nhà trường. Các thông tin của Nhà trường như SchoolLocalID, Mã Quận/Huyện, Mã Tỉnh đều được cấp chính xác ngay khi cài đặt phần mềm.

    Trường hợp sau khi thực hiện các bước mã hóa từ (1) đến (7), vẫn bi trùng lặp mã thì chương trình sẽ lấy năm sinh của học sinh thay thế bằng năm 2100, như vậy chúng ta có thêm 32 checksum bổ sung. Giả sử lại vẫn trùng chúng ta lại sử dụng thêm các năm 2101 và 2102 với tổng cộng 96 checksum bổ sung. Việc sử dụng năm 2100, 2101 và 2102 không phá vỡ tính duy nhất của thuật toán bởi vì với năm 2102, chúng ta đã dùng đến 178 năm x 365 = 64970 vẫn nằm trong phạm vi kiểm soát của 16-bits.

    School@net



     Bản để in  Lưu dạng file  Gửi tin qua email


    Những bài viết khác:



    Lên đầu trang

     
    CÔNG TY CÔNG NGHỆ TIN HỌC NHÀ TRƯỜNG
     
    Phòng 804 - Nhà 17T1 - Khu Trung Hoà Nhân Chính - Quận Cầu Giấy - Hà Nội
    Phone: 024.62511017 - 024.62511081
    Email: kinhdoanh@schoolnet.vn


    Bản quyền thông tin trên trang điện tử này thuộc về công ty School@net
    Ghi rõ nguồn www.vnschool.net khi bạn phát hành lại thông tin từ website này
    Site xây dựng trên cơ sở hệ thống NukeViet - phát triển từ PHP-Nuke, lưu hành theo giấy phép của GNU/GPL.