Tải bản đầy đủ (.pdf) (13 trang)

XÂY DỰNG HỆ THỐNG ĐĂNG KÍ MÔN HỌC CHO TRƯỜNG ĐẠI HỌC BÁCH KHOA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (919.17 KB, 13 trang )

Nhóm ProCE
-----------------------------

XÂY DỰNG HỆ THỐNG ĐĂNG KÍ MÔN
HỌC CHO TRƯỜNG ĐẠI HỌC BÁCH
KHOA
Software Architecture Document

Version <1.0>


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

Phiên bản: <1.0>
Ngày: 28/06/2011

Software Architecture Document
1. Introduction
1.1 Purpose
Tài liệu này cung cấp cho sinh viên cũng như giảng viên một cái nhìn tổng quan toàn diện kiến
trúc của hệ thống đăng ký môn học, bằng cách sử dụng một số quan điểm kiến trúc khác nhau để
mô tả các khía cạnh khác nhau của hệ thống. Nó được thiết kế để giúp sinh viên và giảng viên
hiểu cách hoạt động của hệ thống đăng ký môn học.

1.2 Scope
Tài liệu này sẽ tiếp theo SRS , đi sâu vào kiến trúc và chức năng sub system , gồm có giao diện sử
dụng các thao tác xử lí và lưu trữ dữ liệu . Mỗi user sau khi login sẽ có thể thực hiện 1 số chức
năng : view , update , regist , …. Ngoài ra còn phân tích các tầng layer của hệ thống .

1.3 Definitions, Acronyms, and Abbreviations


Term
CTĐT
CSDL
ĐK
HC
KQ
MH
P.ĐTĐH
P.KHTC
P.QTTB
SV
TKB

Definition
Chương trình đào tạo
Cơ sở dữ liệu
Đăng ký
Hiệu chỉnh
Kết quả
Môn học
Phòng Đào Tạo Đại Học (phòng đào tạo)
Phòng Kế Hoạch Tài Chính
Phòng Quản Trị Thiết Bị
Sinh viên
Thời khóa biểu

1.4 Overview
Những nội dung được đề cập trong tài liệu:
-


Use-Case View: mô tả sơ lượt về các use-case được thiết lập từ bước phân tích hệ thống.
Logical View: gồm các góc nhìn từ bao quát đến cụ thể của hệ thống, với phần quan trọng là hệ
thống Đăng Ký Online.
Deployment View: lượt đồ triển khai hệ thống – mô tả hệ thống sẽ được triển khai với mấy cụm
máy chủ, với những thiết bị cần thiết nào.

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 2


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

-

Phiên bản: <1.0>
Ngày: 28/06/2011

Data View: (chỉ cho hệ thống con Đăng ký online): mô tả một số bảng dữ liệu cần thiết cho việc
hiện thực hệ thống.

2. Use-Case View

Hệ thống đăng kí môn học gồm: sinh viên, Phòng ĐT, admin và khoa.
Hệ thống sẽ liên kết với hệ thống tín học phí và hệ thống quản lý phòng học.
Sinh viên thông qua chức năng Login có chức năng Đăng kí môn học, hiệu chỉnh môn học online
dưới sự quản lý của admin là đại diện của Phòng Đào Tạo.

Admin quản lý các chức năng Đăng kí môn học, hiệu chỉnh môn học của sinh viên.
Các khoa có nhiệm vụ Lập kế hoạch giảng dạy và Đăng kí mở môn học với Phòng Đào Tạo.

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 3


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

Phiên bản: <1.0>
Ngày: 28/06/2011

Phòng Đào Tạo lập thời khóa biểu và điều chỉnh thời khóa biểu cho sinh viên và đưa ra thông báo
cho sinh viên, cán bộ giảng dạy, các khoa liên kết với Phòng kế hoạch tài chính để tính học học
phí cho sinh viên và Phòng quản trị thiết bị để mở lớp dạy.

3. Logical View
3.1 Overview
Phần Logical View là góc nhìn thiết kế từ tổng quan đến cụ thể của hệ thống ĐKMH, bao gồm:
-

Architecture Design: mô tả các hệ thống con và kiến trúc các lớp (Layers) của toàn bộ hệ thống
Static View: mô tả góc nhìn tĩnh – lượt đồ lớp của use-case Hiệu Chỉnh Online
Dynamic View: mô tả góc nhìn động của use-case Hiệu Chỉnh Online bao gồm các lượt đồ sau:
o Sequence Diagram: lượt đồ tuần tự
o Collaborate Diagram: lượt đồ cộng tác

o Activity Diagram: lượt đồ hoạt động
o State Diagram: lượt đồ trạng thái - lớp EditForm

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 4


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

Phiên bản: <1.0>
Ngày: 28/06/2011

3.2 Architecture Design

Getting infor system:
Lấy thông tin từ DBMS
-> Other Systems

3.2.1 Các hệ thống con (Subsystems)
Hệ thống đăng ký môn học có thể được chia ra làm 3 hệ thống con sau:
-

Hệ thống Đăng ký online: bao gồm các chức năng Login (để xác định user là Sinh viên hay
Admin hệ thống), các chức năng cho Sinh viên gồm ĐK oline, HC oline và các chức năng cho
Admin (người quản trị hệ thống đăng ký online): quản lý ĐK, quản lý HC, quản lý Login.


Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 5


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

-

Phiên bản: <1.0>
Ngày: 28/06/2011

Hệ thống Xử lý đăng ký: cung cấp các chức năng cho người dùng là nhân viên P.ĐTĐH như Lập
TKB, bổ sung/hủy nhóm, điều chỉnh TKB.
Hệ thống thông báo: thực hiện các chức năng: In và gửi các thông báo P.ĐTĐH (in thông báo,
gửi email, đăng thông báo lên website), chức năng xem các thông báo trên website dành cho Sinh
viên.

3.2.2 Các Lớp (layers)
Về cơ bản, hệ thống và mỗi hệ thống con được chia thành 3 lớp: lớp Cơ sở dữ liệu, lớp Database
Interface (lớp tương tác dữ liệu) và lớp Ứng dụng.
3.2.2.1 Lớp Cơ Sở Dữ Liệu & DBMS
Hệ thống sẽ có 2 vùng dữ liệu cơ bản:
-

-


Vùng dữ liệu về học vụ: là dữ liệu tung tâm của phòng đào tạo, lưu trữ tất cả các dữ liệu sinh
viên, môn học và cán bộ giảng dạy. Các khái niệm dữ liệu trên được hiểu là các thành phần quan
trọng của hệ cơ sở dữ liệu này, không phải bảng dữ liệu cần hiện thực.
Vùng dữ liệu về đăng ký môn học online: chỉ chứa các thông tin về đăng kí môn học của sinh
viên: bao gồm thông tin Login, thông tin Đăng ký, thông tin Hiệu chỉnh,… Các dữ liệu này không
hoàn toàn độc lập mà có thể được tính toán từ dữ liệu học vụ trung tâm. Ngược lại các dữ liệu này
cũng sẽ được sao lưu ở vùng dữ liệu trung tâm.

Phần trên của lớp Cơ sở dữ liệu là lớp con DMBS (Database Managerment System). Lớp này chứa
các phương thức xử lý truy vấn và truy xuất dữ liệu của hệ CSDL. Ứng với mỗi vùng dữ liệu sẽ có
một hệ quản trị CSDL. Phần quan trọng ở lớp này, đó là sự phân quyền truy cập dữ liệu tùy theo các
mục đích khác nhau:
-

-

Đối với cơ sở dữ liệu trung tâm: DBMS phân ít nhất 2 quyền: read-write dành cho bộ phân
nghiệp vụ xử lý các thông tin về học vụ và quyền read-only dành cho các thao tác xuất kết quả
liên quan.
Đối với DBMS của hệ thống đăng ký online: các quyền có thể được chia rõ ràng tùy theo đối
tượng sử dụng, ví dụ quyền của sinh viên, quyền của admin. DBMS này cũng cung cấp các quyền
ready-only cho hệ thống Xử lý học vụ và hệ thống thông báo.
Các hệ thống con có thể truy xuất đến cả hai vùng dữ liệu này thông qua các quyền riêng. Ngoài
ra dữ liệu về học vụ có thể được truy xuất (read only) bởi các hệ thống khác như: hệ thống Tính
và thu học phí, hệ thống Quản lý phòng học.

3.2.2.2 Lớp Database Interface
Đây là lớp trên của lớp DBMS. Database Interface cung cấp các thư viện truy xuất hệ CSDL
thông qua DBMS. Các chương trình ở lớp ứng dụng có thể sử dụng trực tiếp các phương thức của
lớp này ngay trong code của chương trình. Các phương thức của Database Interface giao tiếp với

lớp ứng dụng hầu như không thay đổi trong suốt quát trình vận hành hệ thống, kể cả khi thay đổi
lớp truy xuất DBMS. Ngược lại, mặt dưới của Database Interface lại dễ dàng thay đổi sau cho
phù hợp với hệ CSDL khi nâng cấp, sửa chữa.
3.2.2.3 Lớp Ứng dụng
Các chức năng ứng dụng sẽ truy xuất dữ liệu của 3 hệ thống con thông qua DBMS.

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 6


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

-

-

-

Phiên bản: <1.0>
Ngày: 28/06/2011

Hệ thống xử lý học vụ sẽ sử dụng các quyền read-write dữ liệu đối với CSDL trung tâm để thực
hiện các chức năng nghiệp vụ trên. Các chức năng này cũng yêu cầu quyền truy xuất đối với dữ
liệu hệ thống đăng ký online.
Hệ thống đăng ký online cung cấp các phương thức cho sinh viên như đăng kí, hiệu chỉnh, sau
khi đã login. Đối với admin của hệ thống con này, sau khi đã login có thể sử dụng các phương

thức quản lý login, quản lý việc ĐK/HC của sinh viên. Việc quản lý (ĐK/HC) cũng cần phải truy
vấn dữ liệu ở vùng dữ liệu trung tâm.. Ngoài ra, đối với đối tượng thực hiện chức năng login cũng
cần được phân quyền riêng.
Đối với hệ thống con thông báo: cung cấp các chức năng cho hai đối tượng: đối tượng quản lý
thông báo (cán bộ phòng đào tạo – thực hiện in thông báo, gửi mail, đăng các thông báo lên
website) và đối tượng xem các thông báo (sinh viên - thực hiện xem hoặc tải về các thông báo từ
website).

Hệ thống đăng ký môn học gồm các đối tượng người dùng: sinh viên, cán bộ giảng dạy, admin hệ
thống đăng ký online và nhân viên phòng Đào tạo đại học, cung cấp các interface là các ứng dụng cho
người dùng.
-

Đối với hệ thống đăng ký online, sinh viên sử dụng các website để tiếp cận hệ thống, admin có
thể sử dụng một công cụ quản lý được viết riêng, cài đặt tại máy tính của phòng đào tạo, hoặc
cũng có thể truy cập vào hệ thống thông qua website với các thao tác hạn chế.
Đối với hệ thống xử lý ở phòng đào tạo, các chương trình ứng dụng là những công cụ chuyên
dụng chạy trên các máy của nhân viên.

Lớp ứng dụng sử dụng các interface của của hệ cơ sở dữ liệu hệ thống thông qua các phương thức của
DBMS.

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 7


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa

Software Architecture Document

Phiên bản: <1.0>
Ngày: 28/06/2011

3.3 Static view (Class Diagram) – Use-case Hiệu chỉnh Online

Hiện thực chức năng hiệu chỉnh Online, ta sử dụng 5 lớp cơ bản sau:

3.3.1 Lớp Student
Chức năng Hiệu Chỉnh Online bắt đầu ngay sau khi user thực hiện chức năng Login. Một Student bao
gồm các thuộc tính cơ bản sau:
-

ID: Mọi đăng nhập hệ thống có ID khác nhau, ID có thể là một dạng kiểu được đếm tăng dần,
hoặc có thể hiện thực theo cách hash (mảng băm) của usename và thời điểm đăng nhập.
studentID: Mã số sinh viên, cũng là username.
EditTime: Thời điểm hiệu chỉnh, sau khi đăng nhập xong, được tính theo giờ hệ thống, chính xác
đến từng giây.
result: kết quả hiệu chỉnh. Khi được khởi tạo là “false” (chưa hiệu chỉnh), hiệu chỉnh thành công
sẽ được gán “true”.
phương thức: editControllerCreated(): khởi tạo một editController.

3.3.2 Lớp EditController
Đối tượng của lớp EditController cũng được tạo ra ngay sau khi user thực hiện chức năng login.
Một EditController sẽ tương ứng với một student, và bao gồm 2 form giao diện: mainForm,
editForm, và một đối tượng databaseInterfaces để kết nối với CSDL.

3.3.3 Lớp MainForm
Một đối tượng mainForm của lớp MainForm là form đầu tiên được hiện ra (visible) sau khi user

đăng nhập thành công. mainForm bao gồm một selectedButton (nút lựa chọn) để dẫn người dùng

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 8


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

Phiên bản: <1.0>
Ngày: 28/06/2011

đến loại hiệu chỉnh (đăng ký mới/hiệu chỉnh). mainForm cũng là nơi thông báo kết quả hiệu chỉnh
của sinh viên, do đó nó chứa một resultTable (bảng kết quả - hiện ra khi hiệu chỉnh thành công)
và một alertBox (hộp thông báo - hiện ra khi hiệu chỉnh thất bại).

3.3.4 Lớp EditForm
Đối tượng editForm của lớp EditForm được hiện ra khi người dùng chọn hiệu chỉnh trong
mainForm. editForm gồm một bảng hiển thị các môn học và một warningBox (hộp cảnh báo,
cảnh báo người dùng có muốn đi tiếp hay không).

3.3.5 Lớp DatabaseInterfaces
Lớp này được gọi ra từ thư viện DatabaseInterface.

3.4 Dynamic view
3.4.1 Sequence Diagram


Thứ tự các bước thực hiện use-case Hiệu chỉnh online
1.Sinh viên kích hoạt chức năng Hiệu chỉnh môn học online vào Main Form
2.Main Form kích hoạt Edit Form
3.Sinh viên nhập tên và mã môn học vào Edit Form
4.Edit Controller lấy thông tin từ Main Form
5.Kiểm tra thông tin nếu hợp lệ qua bước 6
6.Edit Controller lấy thông tin về môn học trong cơ sở dữ liệu

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 9


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

Phiên bản: <1.0>
Ngày: 28/06/2011

7.Kiểm tra thông tin nếu hợp lệ qua bước 8.
8.Sau khi kiểm tra thông tin trả về kết quả.
9.Hiển thị thông báo trong màn hình Main Form.

3.4.2 Collaborate Diagram

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011


trang 10


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

Phiên bản: <1.0>
Ngày: 28/06/2011

3.4.3 Activity Diagram

3.4.4 State Diagram (lớp EditForm)

Bắt đầu khi được kích hoat chức năng Hiệu chỉnh trong Main Form sau đó là giai đoạn Loading
và chờ người dùng nhập vào rồi sau đó là cập nhật bảng Hiệu chỉnh sau đó đưa ra warning và kết
thúc trạng thái.

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 11


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

Phiên bản: <1.0>
Ngày: 28/06/2011


4. Deployment View

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 12


Xây dựng hệ thống đăng ký môn học học cho trường Đại Học Bách Khoa
Software Architecture Document

Phiên bản: <1.0>
Ngày: 28/06/2011

Hệ thống sử dụng cơ sở dữ liệu MySQL và sử dụng hệ điều hành UNIX, có model ADSL để kết
nối INTERNET và trang bị tường lửa để đảm bảo an toàn bảo mật. Sinh viên truy cập vào
website của trường để thực hiện các chức năng. Một số nhân viên chức năng của Phòng Đào Tạo
sẽ có quyền truy cập vào cở sở dữ liệu. Phòng Đào Tào kết nối mạng LAN với các phòng ban
khác và các khoa.

5. Data View
SINH VIÊN
+ Tên
VARCHAR2(20)
+ MSSV NUMBER
+ Email VARCHAR2(20)
+ Tình trạng
đăng kí BOOL


LƯỢT ĐĂNG KÍ
+ Mã số
NUMBER
+ Thời gian
DATE
+ MSSV đăng kí NUMBER
+ Danh sách môn
học đăng kí
NUMBER

MÔN HỌC
+ Tên môn học VARCHAR2(20)
+ Mã số môn học NUMBER
+ Mã số nhóm NUMBER
+ Môn tiên quyết NUMBER
+ Môn học song hành NUMBER
+ Số tín chỉ INTEGER

USER
+ Thời gian Login DATE
+ Thời gian Logout DATE
+ Mã số User
NUMBER

Đây là khung nhìn dữ liệu cơ bản của hệ thống, gồm có 4 bảng dữ liệu :
-

Bảng sinh viên : lưu các thông tin của sinh viên bao gồm tên, MSSV, Email và tình trạng đăng kí.
Bảng môn học : lưu các thông tin về môn học gồm có Tên môn học, Mã số môn học, môn tiên

quyết, môn song hành, số tín chỉ.
Bảng lượt đăng kí : lưu thông tin về các lượt đăng kí của sinh viên gồm có mã số, thời gian đăng
kí, MSSV đăng kí và danh sách môn học đăng kí.
Bảng USER : User có thể là nhân viên văn phòng hoặc sinh viên, gồm có thời gian Login, thời
gian Logout và mã số user.

Tài liệu lưu hành nội bộ

Đại học Bách Khoa TPHCM, 2011

trang 13



×