Friday, October 30, 2009

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

1.PHÂN TÍCH HỆ THỐNG

1.1. Bài toán "Quản lý luận văn tốt nghiệp"

Hệ thống "Quản lý luận văn tốt nghiệp" là một phần trong Hệ chương trình "Quản lý sinh viên", được xây dựng nhằm hỗ trợ việc quản lý và tra cứu các luận văn tốt nghiệp tại Khoa. Hệ thống giúp người sử dụng có thể tra cứu các luận văn tốt nghiệp nhanh chóng, có thể tìm được các luận văn có nội dung mong muốn. Hệ thống cũng giúp người Quản trị quản lý tốt Cơ sở dữ liệu về các luận văn tốt nghiệp, sửa chữa và cập nhật thông tin dễ dàng.

Việc Quản lý luận văn tốt nghiệp bao gồm việc quản lý CSDL về luận văn tốt nghiệp và việc tra cứu, tìm kiếm thông tin trên CSDL này.

Chức năng chính của Hệ thống là tìm kiếm các luận văn tốt nghiệp trong Cơ sở dữ liệu có nội dung cho trước. Nội dung cần tìm có thể là từ đơn, cụm từ hoặc là những tổ hợp từ (AND, OR). Sau khi tìm kiếm Hệ thống có thể hiển thị danh sách các luận văn có chứa nội dung cần tìm cũng như hiển thị lại nội dung của những luận văn này.

1.2. Các chức năng của Hệ thống

Hệ thống "Quản lý luận văn tốt nghiệp" sẽ thực hiện các chứùc năng sau:

-Tra cứu các luận văn theo nội dung

-Tìm kiếm các luận văn theo các điều kiện

-Nạp thêm các luận văn mới vào CSDL

-Quản lý CSDL về sinh viên, giáo viên, luận văn

Chức năng chính của Hệ thống là tra cứu các luận văn tốt nghiệp trong CSDL có nội dung cho trước. Nội dung cần tìm có thể là từ đơn, cụm từ hoặc là những tổ hợïp từ. Sau khi tìm kiếm Hệ thống có thể hiển thị danh sách các luận văn có chứùa nội dung cần tìm cũng như hiển thị lại nội dung của những luận văn này.

Để giải quyết đượïïc vấn đề này, trong hệ thống ta sử dụng các chức năng CONTEXT QUERY (gồm TEXT QUERY và THEME QUERY) của ORACLE 8 để thực hiện.

Ngoài ra, Hệ thống cho phép tìm kiếm các luận văn tốt nghiệp theo các điều kiện khác nhau:

+Tên đề tài

+Sinh viên thực hiện

+Giáo viên hướng dẫn

+Thời gian bảo vệ

Sau khi tìm kiếm có thể hiển thị lại nội dung các luận văn tốt nghiệp tìm được.

Hệ thống cũng cho phép quản lý CSDL về sinh viên, giáo viên, luận văn, lớp, … để có thể thêm, bớt, điều chỉnh các dữ liệu trên. Hệ thống tự động cập nhật lại CSDL về luận văn tốt nghiệp khi ta nạp thêm vào CSDL những luận văn mớùi.

1.3.Sơ đồ dòng Dữ liệu (DFD)

LƯỢC ĐỒ CSDL

HỆ (Mã hệ, Tên hệ)

LỚP (Mã lớp, Tên lớp, Mã hệ)

SINH VIÊN (Mã SV, Họ tên, Mã lớp)

LUẬN VĂN (Mã LV, Đề tài, Địa chỉ, Nội dung, Ngày BV, Ngày nộp)

GIÁO VIÊN (Mã GV, Họ tên)

THỰC HIỆN (Mã SV, Mã LV, Điểm)

HƯỚNG DẪN (Mã LV, Mã GV)

1.5. Đặc tả quá trình

QUÁ TRÌNH SEARCH

INPUT:

Từ hoặc cụm từ cần tìm

OUTPUT:

-Danh sách các luận văn có chứa từ cần tìm

-Nội dung các luận văn này

THỰC HIỆN:

-Gọi thủ tục CTX_QUERY.CONTAINS: Tìm trong CSDL các luận văn chứa "từ cần tìm", kết quả trả về bảng "CTX_TEMP"

-Query từ 2 bảng "CTX_TEMP" và "LUẬN VĂN", lấy ra bảng kết quả là danh sách các luận văn thỏa điều kiện

-Dùng CTX_VIEWER để hiển thị nội dung các luận văn thỏa điều kiện

QUÁ TRÌNH SQL

INPUT:

Các thông tin về luận văn như:

+Mã số luận văn

+Tên đề tài

+Tên, Lớp, Hệ của Sinh viên thực hiện

+Tên Giáo viên hướng dẫn

+Năm thực hiện

OUTPUT:

-Danh sách các luận văn thỏa điều kiện

-Nội dung các luận văn này

THỰC HIỆN:

-Tổng hợp các thông tin nhập vào thành câu lệnh SQL

-Thực hiện câu lệnh SQL, lấy ra danh sách các luận văn thỏa điều kiện

-Dùng CTX_VIEWER để hiển thị nội dung các luận văn thỏa điều kiện

QUÁ TRÌNH NHẬP HỆ

INPUT:

-Hệ mới (mã hệ, tên hệ)

-Table Hệ

OUTPUT:

-Table Hệ

THỰC HIỆN:

IF có hệ mới

INSERT thông tin hệ mới vào TABLE Hệ

ENDIF

QUÁ TRÌNH NHẬP LỚP

INPUT:

-Lớp mới (mã lớp, tên lớp, mã hệ)

-Table Lớp

OUTPUT:

-Table Lớp

THỰC HIỆN:

IF có lớp mới

Nhận thông tin về lớp

IF mã lớp và mã hệ hợp lệ

INSERT thông tin lớp mới vào TABLE Lớp

ENDIF

ENDIF

QUÁ TRÌNH NHẬP GIÁO VIÊN

INPUT:

-GV mới (mã GV, tên GV)

-Table Giáo viên

OUTPUT:

-Table Giáo viên

THỰC HIỆN:

IF có GV mới

INSERT thông tin GV mới vào TABLE Giáo viên

ENDIF

QUÁ TRÌNH NHẬP SINH VIÊN

INPUT:

-SV mới (mã SV, tên SV, Mã lớp)

-Table Sinh viên

OUTPUT:

-Table Sinh viên

THỰC HIỆN:

IF có SV mới

Nhận thông tin về sinh viên

IF mã sinh viên, mã lớp hợp lệ

INSERT thông tin SV mới vào TABLE Sinh viên

ENDIF

ENDIF

QUÁ TRÌNH NHẬP LUẬN VĂN

INPUT:

-Các thông tin về luận văn

-Các Table: Luận văn, Hướng dẫn, Thực hiện

OUTPUT:

-Các Table: Luận văn, Hướng dẫn, Thực hiện

THỰC HIỆN:

IF có luận văn mới

Tạo Mã số luận văn

Nhận thông tin về luận văn (Đề tài, Tên File, GV hướng dẫn, SV thực hiện, Ngày bảo vệ, điểm)

IF Thông tin hợp lệ

INSERT INTO TABLE "Luận văn" thông tin về luận văn mới

INSERT INTO TABLE "Hướng dẫn" thông tin về luận văn mới

INSERT INTO TABLE "Thực hiện" thông tin về luận văn mới

COPY FILE vào thư mục qui định

Tạo ra File Load để thực hiện Autoload nội dung luận văn vào CSDL

ENDIF

ENDIF

1.6. Từ điển dữ liệu

MAHE={MT,KS,CD,GV}

TENHE={20*(A..Z,0..9)}

NAMVAO={2*(0..9)}

MALOP=MAHE | NAMVAO

TENLOP={30*(A..Z,0..9)}

MAGV={3*(0..9)}

HOTENGV={30*(A..Z)}

MASV={3*(0..9)}

HOTENSV={30*(A..Z)}

NAMTN={2*(0..9)}

MASO={3*(0..9)}

MALV=NAMTN | MASO

DETAI={100*(A..Z,0..9)}

DIACHI={30*{A..Z,0..9}}

NGAYBV={6*(0..9)}

NGAYNOP={6*(0..9)}

DIEM={0..10}

HE=MAHE+TENHE

LOP=MALOP+TENLOP+MAHE

GIAOVIEN=MAGV+HOTENGV

SINHVIEN=MASV+HOTENSV

LUANVAN=MALV+DETAI+DIACHI+NGAYBV+NGAYNOP

DULIEU={HE,LOP,GIAOVIEN,SINHVIEN,LUANVAN}

N={1..20}

TU={N*(A..Z)}

CUMTU={N*TU}

TOHOP={N*(TU, |, &)}

QUERY={TU,CUMTU,TOHOP}

1 comment:

  1. co thể vào đây lấy bài mẫu http://thieuhoangphuoc.blogspot.com/2012/04/phan-tich-thiet-ke-he-thong-thong-tin.html

    ReplyDelete