Chương trình quản lý Trường THCS
Chương trình quản lý Trường Trung học cơ sở Đồ án môn học Xử lý phân bố Giáo viên hướng dẫn: Nguyễn Trác Thức Sinh viên thực hiện: Nguyễn Minh Tuấn 07520389 Đỗ Hồng Hải 07520108 Trần Công Vương 07520422 Nguyễn Bá Chung 07520031 6/1/2011 Mục Lục Lời Mở Đầu Hiện nay công nghệ thông tin được xem là ngành công nghiệp mũi nhọn của các quốc gia, đặc biệt là các quốc gia đang phát triển, tiến hành công nhiệp hóa và hiện đại hóa như nước ta. Sự bùng nổ thông tin và sự phát triển mạnh mẽ của công nghệ kỹ thuật số yêu cầu muốn phát triển thì phải tin học hóa vào tất cả các ngành các lĩnh vực. Cùng với sự phát triển nhanh chóng phần cứng máy tính, các phần mềm càng ngày trở nên đa dạng, phong phú, hoàn thiện hơn và hỗ trợ hiệu quả hơn cho con người.các phần mềm hiện nay ngày càng mô phỏng được rất nhiều nghiệp vụ khó khăn, hỗ trợ cho người dùng thuận tiện sử dụng, thời gin xử lý nhanh chóng, và một số nghiệp vụ được tự động hóa cao. Do vậy mà việc phát triển phần mềm, sự đòi hỏi không chỉ là sự chính xác, xử lý được nhiều nghiệp vụ thực tế mà còn phải đáp ứng các nhu cầu khác như về tốc độ, giao diện than thiện, mô hình hóa được thực tế vào máy tính để người sử dụng tiện lợi, quen thuộc, tính tương thích cao, bảo mật cao (đối với các dữ liệu nhạy cảm),…. Các phần mềm giúp tiết kiệm một lượng lớn thời gian, công sức của con người, và tăng đọ chính xác và hiệu quả trong công việc (nhất là việc sửa lỗi và tự động đồng bộ hóa).Qua thời gian, công nghệ mới không ngừng ra đời làm thay đổi mạnh mẽ cuộc sống. Phần mềm “Quản Lý Trường Trung Học Cơ Sở” sử dụng kỹ thuật xứ lý phân bố RMI, ra đời với mong muốn góp phần nâng cao chất lượng công việc, tạo một cái nhìn khách quan cho công cuộc tin học hóa. Lời cuối, chúng em xin chân thành cảm ơn những chỉ bảo, hướng dẫn tận tình cũng như những đóng góp bổ ích của gỉang viên hướng dẫn Nhóm thực hiện NHẬN XÉT CỦA GIÁO VIÊN . . . . . . . . . . . . . . I. Giới thiệu 1. Bối cảnh thực hiện dự án Việc quản lý học vụ trong trường trung học cơ sở. Nếu không có sự hỗ trợ của tin học, việc quản lý này cần khá nhiều người, chia thành nhiều khâu, mới có thể quản lý được toàn bộ hồ sơ, học sinh (thông tin, điểm số, kỷ luật, học bạ,…), lớp học (sỉ số, GVCN, thời khóa biểu,…), giáo viên (thông tin, lịch dạy,…), … cũng như các nghiệp vụ sắp thời khóa biểu, tính điểm trung bình, xếp loại học lực cho học sinh toàn trường (số lượng học sinh có thể lên đến ha ba ngàn học sinh). Các công việc này đòi hỏi nhiều thời gian và công sức, mà sự chính xác và thống kê, và hiệu quả không cao, vì đa số đều làm bằng thủ công rất ít tự động. một số nghiệp vụ như tra cứu, thống kê và hiệu chỉnh thông tin khá vất vả. Ngoài ra còn có một số khó khăn về vấn đồ lưu trữ khá đồ sộ, dễ thất lạc, tốn kém,….Trong khi đó, các nghiệp vụ này hoàn toàn có thể tin học hóa một cách dễ dàng.Với sự giúp đỡ của tin học, việc quản lý học vụ sẽ trở nên đơn giản, thuận tiện, nhanh chóng và hiệu quả hơn rất nhiều. Công nghệ phần mềm đã mang lịa những lợi ích vô cùng to lớn cho con người. Do đó, chúng ta cần đẩy mạnh việc sản xuất, thiết kê, thử nghiệm và phát triển phần mềm ứng dụng trong mọi lĩnh vực. Để góp phần tin học hóa quản lý, chúng em đã xay dựng phần mềm “Quản lý trường Trung Học Cơ Sở” với mục tiêu có thể thể ứng dụng và mang lại hiệu quả công tác quản lý cho các trường THCS. 2. Mục tiêu của dự án Sử dụng RMI để xử lý phân bố dữ liệu. Phần mềm được xây dựng theo mô hình 2 tầng 3 lớp. Một tầng được gọi là máy chủ và 1 tầng được gọi là máy con. Về phía máy chủ: • Tầng này được xây dựng như là 1 tầng Data Access. Tầng này kết nối trực tiếp với cơ sở dữ liệu. Quản lý tài nguyên của ứng dụng • Đáp ứng nhu cầu về mặt dữ liệu cho máy con. Như là cung cấp các dữ liệu để hiện thị trên các máy con. • Lưu trữ các thao tác giữa các máy Client và máy chủ. Về phía máy con: Thiết kế hệ thống phần mềm quản lý trường THCS nhằm hỗ trợ phòng đào tạo của các trường THCS những nghiệp vụ sau: • Được xây dựng dựa trên mô hình 3 lớp: Tầng giao diện(GUI/Presentation), tầng chứa xử lý Logic (Business logic Layer), tầng kết nối với máy chủ (Data access layer). • Hỗ trợ phòng đào tạo các trường THCS quản lý và lưu trữ thông tin các học sinh và điểm các môn học. • Lập danh sách học sinh và điểm từng môn. • Lưu lại thông tin của các học sinh qua từng năm học. • Hỗ trợ tra cứu nhanh các thông tin về học sinh và điểm các môn học. • Hỗ trợ việc tính điểm tổng kết qua từng học kỳ và năm học và lưu lại thông tin đó qua từng năm. Vì vậy, nếu không có sự hỗ trợ của tin học, các yêu cầu trên đòi hỏi nhiều thời gian, công sức và nguồn nhân lực, độ chính xác và hiệu quả không cao. Do vậy, phải xây dựng một hệ thống quản lý trường THCS để phòng đào tạo của các trường THCS quản lý các yêu cầu nghiệp vụ trên dễ dàng và hiệu quả, đơn giản và nhanh chóng. 3. Phạm vi của dự án Yêu cầu về hệ thống: - Xây dựng một hệ thống an toàn và chất lượng. Đảm bảo việc sao lưu dữ liệu tránh rủi ro, mất mát dữ liệu. - Tương thích với hệ thống máy tính của các trường THCS. Yêu cầu về chất lượng: - Thực hiện đúng và đầy đủ các chức năng. - Tốc độ truy xuất và lưu trữ dữ liệu nhanh. - Giao diện thân thiện, dễ sử dụng và thao tác. - Tương thích với hệ thống máy tính của các trường THCS. - Phần mềm phải được thiết kế mở để tiện nâng cấp sau này II. Những hiểu biết cần thiết để làm được đồ án 1. Kiến thức cơ bản về Java: Phần này chỉ nhắc lại những kiến thức cần sử dụng và chỉ nêu ra những thứ mà đồ án sử dụng. a. Layout Manager. Hiểu biết kỹ về các loại layout để tiện cho việc thiết kế giao diện cho phần mềm. b. Các đối tượng khung chứa Container Hiểu biết về các loại khung chứa như FrameView, JPanel… c. Các Components Hiểu biết về các loại components như: JTabbedPanel, JLabel, TextField, JButton, JCombobox, JTable… d. Các sự kiện Hiểu biết về các sự kiện như: ActionListener, ItemListener, KeyListener… 2. Kiến thức về JDBC Cần có kiến thức về JDBC(Java DataBase Connectivity), mô hình chi tiết kiến trúc của JDBC, JDBC Interface và mô hình của nó … Kiến thức cơ bản này sẽ hỗ trợ việc truy xuất cơ sở dữ liệu được dễ dàng hơn. 3. Kiến thức về RMI a. Giới thiệu: - Lập trình đối tượng phân tán là một trong những vấn đề nóng bỏng của công nghệ phân tán phần mềm ngày nay. Java là ngôn ngữ đi tiên phong trong việc giải quyết vấn đề lập trình phân tán. b. RMI VÀ LẬP TRÌNH PHÂN TÁN ĐỐI TƯỢNG - Thông thường các chương trình của chúng ta được viết dưới dạng thủ tục hoặc hàm và việc các hàm gọi lẫn nhau, truyền tham số hay kết quả cho nhau chỉ xảy ra ở máy cục bộ. Kỷ thuật RMI (Remote Method Invoke) – mang ý nghĩa triệu gọi phương thức từ xa – là cách thức giao tiếp giữa các đối tượng trong Java có mã lệnh cài đặt nằm trên các máy khác nhau có thể triệu gọi lẫn nhau. Mô hình triệu gọi các đối tượng từ xa c. GỌI PHƯƠNGTHỨC TỪ XA VÀ CÁC VẤN ĐỀ PHÁT SINH - Việc gọi phương thức của đối tượng từ xa luôn phức tạp hơn gọi phương thức cục bộ. - Các đối tượng trên hai máy khác nhau hoạt đông trên hai tiến trình khác nhau nên việc tham chiếu đến biến địa chỉ hoàn toàn khác nhau. - Lời gọi phương thức từ xa phải thông qua mạng và có thể bị ngắt ngang do mạng gặp sự cố. - Các tham số truyền cho đối tượng ở xa phải được đóng gói và truyền qua mạng để đến với phương thức thực sự. d. VAI TRÒ CỦA CÁC LỚP TRUNG GIAN ( STUB VÀ SKELETION ) - Để giải quyết vấn đề trên, đối tượng trên hai máy khác nhau không gọi trực tiếp mà thông qua lớp trung gian. Lớp này tồn tại ở cả hai phía Client và Server. Lớp ở máy Client gọi là Stub, lớp ở máy Server gọi là Skel (Skeletion). e. CÀI ĐẶT ỨNG DỤNG PHÂN TÁN RMI - Các phương thức sử dụng trong chương trình: o exportObject(Object) : nằm trong lớp UnicastRemoteObject. Phương thức này làm cho máy ảo Java nhận diện được đối tượng Object. Để sử dụng được lớp UnicastRemoteObject phải khai báo: import java.rmi.server.*; o bind(URLString, Object) thuộc lớp Naming. - URLString: Chuỗi định vị có dạng như sau: rmi://hostName:port/ObjectName. Trong đó: rmi: là tên giao thức dùng để đăng ký. hostName, port: là địa chỉ IP và số hiệu cổng nơi máy chủ nơi bộ đăng ký đối tượng rmi đang chạy. ObjectName: là tên bất kỳ gợi nhớ để đặt cho đối tượng. Các chương trình máy khách sẽ dựa vào tên này để truy tìm tham chiếu đến đối tượng cần dùng. - Object: Tên đối tượng. Phương thức bind() dùng để đăng ký một tên gợi nhớcho đối tượng Object với bộ quản lý rmi. o lookup(rmi://hostName:port/ObjectName). Phương thức này thuộc lớp Naming. Đối số là chuỗi định dạng cho biết địa chỉ máy chủ và tên đăng ký đối tượng. f. CHUYỂN THAM SỐ TRONG LỜI GỌI PHƯƠNG THỪC TỪ XA - Việc truyền tham số qua mạng theo cơ chế RMI lại khác với cách truyền tham số thông thường. - Tất cả các kiểu dử liệu đơn giản như int,char… đều được truyền theo tham trị. - Tất cả các dử liệu kiểu đối tượng muốn truyền qua mạng đều buộc phải cài đặt một trong hai giao tiếp Remote hoặc Serializable. [...]... Bảng tầm ảnh hưởng: b Thiết kế giao diện - Sửa +(HeSo) i Thiết kế thực đơn: Quản Lý Trường THCS Hệ thống Thay Đổi Quy Định Cấu Hình Thoát Quản Lý Học Sinh Thêm Học Sinh Sửa Học Sinh Điểm Nhập Điểm Sửa Điểm Nhập Điểm Thi Sửa Điểm Thi Nhập Điểm Tổng Kết Tổng Kết Năm Tra Cứu Học Sinh Tổng Kết Môn Bảng Điểm Môn Bảng Điểm Tổng Kết Quản Lý Lớp Danh Sách Lớp Xét Lên Lớp Báo Cáo ii Thiết kế các màn hình 1 Sơ đồ... TONGKETNAM nhận khóa chính của quan hệ HOCSINH, NAMHOC làm - khóa chính Nhận xét 8: để quản lý thông tin học sinh đó lên lớp không Ta thêm quan hệ CHITIETLENLOP nhận khóa chính của quan hệ LOP, NAMHOC làm khóa - ngoại Nhận xét 9: Do có yêu cầu báo cáo tổng kết điểm của môn, nên ta thêm quan hệ BAOCAOTONGKETMON để quản lý danh sách tổng kết điểm của các môn của từng học sinh Kết luận: dựa vào các nhận... XAPHUONGTHITRAN là quan hệ 1-n Nhận xét 2: Do môn toán và môn văn là hệ số 2 nên ta thêm thuộc tính hệ số - (HeSo) vào môn học để quản lý thông tin hệ số của các môn học Nhận xét 3: Do mỗi năm sau khi học sinh lên lớp và cho đến khi học sinh không còn học ở trường đó nữa (ra trường) thì thông tin điểm, tên lớp, năm học của học sinh phải được lưu lại nên có thêm quan hệ CHITIETHOCSINH Quan hệ CHITIETHOCSINH... chính xác Thiết Kế Xử Lý (DFD) Sơ đồ hệ thống con của quy trình 2 Giải thích các dòng dữ liệu lưu chuyển Số 1 2 3 4 5 6 3 Diễn giải Thông tin học sinh Danh sách học sinh Thông tin điểm của từng môn Danh sách điểm của từng môn Thông tin tra cứu của học sinh Kết quả tra cứu của học sinh Các mô hình DFD Mô hình DFD cấp 1: Mô hình DFD cấp 2: Mô hình DFD cấp 3: • Phân rã ô xử lý Lập báo cáo tổng kết:... tin trên hơn 10 và lớn form, có để nhấn vào nút xem hơn 0 đểm để xem các điểm quá trình của học sinh đó sau khi chắc chắn nhấn nút để nhập điểm cho học sinh đó Người dùng sẽ lựa chọn các thông tin và nhấn nút để nhập điểm tổng kết cho nguyên 1 lớp Người dùng sẽ lựa chọn thông tin sau đó nhấn nút xác nhận để thực hiện quá trình xét lên lớp, Người dùng phải xác nhận lại lớp tiếp theo Tìm theo Người dùng... chứa bên trong nhiều đối tượng con khác thì Java lấy tất cả các đối tượng con ghi luôn xuống đĩa - 4 Kiến thức về mô hình 2tier, 3 layers a Mô hình 3layer ( sử dụng trong thiết kế xử lý client và server) i GUI: nhập liệu, trình bày dữ liệu, kiểm tra trính đúng dắn của dữ liệu trước khi gọi Business Logic Layer ii Business Logic Layer: đáp ứng các yêu cầu thao tác dữ liệu của GUI, kiểm tra các yêu cầu... TONGKETNAM(MaHS, NamHoc, DiemTongKetNam) Mỗi thông tin điểm tổng kết năm được xác định của học sinh nào, trong năm học nào và điểm tổng kết bao nhiêu Đánh giá nhận xét mô hình quan hệ - Nhận xét 1: Do quản lý thông tin địa chỉ của học sinh nên ta thêm 3 quan hệ XAPHUONGTHITRAN, QUANHUYENXA, TINHTHANHPHO Do mỗi tỉnh, thành phố có nhiều quận, huyện, thị xã nên quan hệ giữa TINHTHANHPHO và QUANHUYENTHIXA . không cao. Do vậy, phải xây dựng một hệ thống quản lý trường THCS để phòng đào tạo của các trường THCS quản lý các yêu cầu nghiệp vụ trên dễ dàng và hiệu. hóa quản lý, chúng em đã xay dựng phần mềm Quản lý trường Trung Học Cơ Sở” với mục tiêu có thể thể ứng dụng và mang lại hiệu quả công tác quản lý cho