Tải bản đầy đủ (.doc) (33 trang)

Nghiên cứu và tìm hiểu kiến trúc GPU nvidia

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 (823.57 KB, 33 trang )

Mục lục
Lời mở đầu.........................................................................................................1
Mục lục...............................................................................................................2
Chương 1: Những kiến thức lý thuyết căn bản................................................3
1.1. Hệ thống thông tin........................................................................................3
1.1.1. Hệ thống...............................................................................................3
1.1.2. Khái niệm về thông tin.........................................................................4
1.1.3. Khái niệm về hệ thống thông tin...........................................................4
1.1.4. Hệ thống thông tin quản lý ..................................................................5
1.1.5. Vai trò của hệ thống thông tin .............................................................5
1.1.6. Một số mô hình phát triển HTTT..........................................................5
1.2. Giới thiệu Visual basic..................................................................................7
1.2.1. Tổng quan về Visual Basic 6................................................................7
1.2.2. Các ấn bản Visual Basic 6.....................................................................7
1.2.3. Cài đặt VB6..........................................................................................8
1.2.4. Một số thành phần và đối tượng trong Visual Basic.............................8
1.2.5. Cấu trúc điều khiển chương trình trong Visual Basic...........................12
Chương 2: Phân tích và thiết kế hệ thống thi trắc nghiệm.............................14
2.1. Khảo sát hệ thống..........................................................................................14
2.1.1. Giới thiệu về hệ thống thi.....................................................................14
2.1.2. Khảo sát hệ thống thi trắc nghiệm trên máy tín....................................14
2.2. Phân tích và thiết kế hệ thống.......................................................................15
2.2.1. Mô tả hệ thống:....................................................................................15
2.2.2. Các yêu cầu của hệ thống:....................................................................16
2.2.3. Phân tích chức năng của hệ thống........................................................17
2.2.4. Biểu đồ phân cấp chức năng của hệ thống:..........................................20
2.2.5.Biểu đồ các luồng dữ liệu......................................................................22
2.3. Thiết kế cơ sở dữ liệu....................................................................................25
2.3.1. Thiết kế các bảng..................................................................................25
2.3.2. Sơ đồ quan hệ.......................................................................................28
Chương 3: Xây dựng chương trình..................................................................29


3.1. Một số giao diện của chương trình PDQuizServer..................................29
3.1. Một số giao diện của chương trìn PDQuizClient.....................................33
Kết luận..............................................................................................................34
2


Chương 1: Những kiến thức lý thuyết căn bản
1.1. Hệ thống thông tin (HTTT)
1.1.1. Hệ thống
Hệ thống là một thuật ngữ dùng để chỉ những đồ vật (things), những tình trạng
(conditions), những phương thức (methods). Chẳng hạn hệ thống thanh toán, hệ
thống truyền thông hay hệ thống giao thông.
Hệ thống là một tập hợp các đối tượng, các thành phần có quan hệ với nhau,
tương tác với nhau theo những nguyên tắc, những cơ chế nào đó nhưng tồn tại trong
một thể thống nhất.
Trong một hệ thống, mỗi một thành phần có thể có những chức năng khác
nhau nhưng khi kết hợp lại chúng chúng có những chức năng đặc biệt.
Thí dụ: tất cả thứ như: giá đỡ, bánh xe, phụ tùng, dây dẫn, đai ốc, bulông,
nhãn hiệu,.. , mỗi thứ có một chức năng riêng, nhưng nếu chúng được lắp ráp một
cách hợp lý tạo thành một chiếc ôtô thì chúng có khả năng di chuyển nhanh, chuyên
chở nặng... Giá trị của toàn bộ hệ thống hơn hẵn giá trị của tất cả tạo nên nó cộng
lại. Các hệ thống có thể có các mối quan hệ:
-

Phân cách nhau và phân cách với môi trường bên ngoài. Một hệ thống có thể
nhận các đối tượng từ môi trường bên ngoài vào, biến đổi chúng và cũng có
thể kết xuất ra môi trường bên ngoài. Kết quả của kết xuất có khi đánh giá
bằng phạm trù tiêu chuẩn kết xuất.

-


Bao hàm nhau: hệ thống này là bộ phận hay chứa hệ thống kia.

-

Giao nhau: các thành phần của hệ thống này cũng là thành phần của hệ thống
khác. Chẳng hạn sông ngòi vừa là một đối tượng của hệ thống địa lý vừa là
thành phần của hệ thống giao thông.

-

Có thể có ảnh hưởng qua lại lẫn nhau.
Có hệ thống đơn giản: ít phần tử, ít mối quan hệ hay các mối quan hệ đơn giản;

nhưng cũng có những hệ thống phức tạp: nhiều phần tử, nhiều mối quan hệ và các
mối quan hệ phức tạp. Vì vậy các hệ thống thường có cấu trúc, hoạt động theo các
nguyên lý chặt chẽ, nói tóm lại là hoạt động một cách có tổ chức. Thuật ngữ hệ
thống thường dùng để chỉ các tổ chức hoạt động có cơ chế quy cũ, mà nhiều khi
chúng ta đồng nhất nghĩa của hai thuật ngữ tổ chức và hệ thống với nhau.
3


1.1.2. Khái niệm về thông tin
Thông tin là một hay tập hợp những phần tử mà ta thường gọi là các tín hiệu
phản ánh ý nghĩa về một đối tượng, một hiện tượng hay một quá trình nào đó của sự
vật thông qua quá trình nhận thức.
Tín hiệu được biểu hiện dưới nhiều dạng khác nhau: ngôn ngữ (tiếng nói, văn
bản chữ viết, động tác), hình ảnh, âm thanh, mùi vị... được nhận biết thông qua các
cơ quan cảm giác và quá trình nhận thức.
Cần chú ý là cùng một (hoặc một tập hợp) tín hiệu nhưng tùy những ngữ cảnh

khác nhau thể hiện những thông tin khác nhau và cùng một thông tin cũng có thể
biểu diễn bằng những dạng tín hiệu khác nhau.
Một tổ chức có thể được nhìn nhận, xem xét dưới những góc độ khác nhau,
cho nên có nhiều dạng thông tin khác nhau. Tập hợp tất cả những thông tin về một
tổ chức cho ta tiếp cận sự hiểu biết về tổ chức đó.
Trong tin học, thông tin là sự tinh lọc từ việc xử lý dữ liệu. Chính vì vậy mà
hai thành phần quan trọng của hệ thống thông tin là thành phần dữ liệu và thành
phần xử lý.
1.1.3. Khái niệm về hệ thống thông tin
HTTT của một tổ chức là tập hợp có hệ thống những thông tin về tổ chức đó.
Một tổ chức, như chúng ta đã biết, thường gồm nhiều lớp đối tượng đa dạng, nhiều
mối quan hệ, nhiều quy trình xử lý, biến đổi phức tạp, cho nên để phản ánh bản chất
của nó, nói cách khác là để có sự hiểu biết đầy đủ về nó phải nghiên cứu để có một
sự biểu diễn thích hợp.
Thí dụ: Tập hợp các báo cáo kế toán của một tổ chức là hệ thống thông tin về
hoạt động tài chính của đơn vị đó. Học bạ và bằng tốt nghiệp là hệ thống thông tin
về kết quả học tập và rèn luyện của học sinh, sinh viên trong quá trình đào tạo tại
nhà trường...

4


1.1.4. Hệ thống thông tin quản lý (Management information system – Mis )
HTTT quản lý phục vụ các hoạt động quản lý của tổ chức như lập kế hoạch,
kiểm tra thực hiện, tổng hợp và làm các báo cáo, làm các quyết định quản lý trên cơ
sở các quy trình thủ thục cho trước. Nhìn chung nó sử dụng dữ liệu từ các hệ xử lý
giao dịch. Hệ này không mềm dẻo và ít có khả năng phân tích và thường được thiết
lập trên cơ sở của những thủ tục hay quy trình đơn giản.
Đối tượng phục vụ của HTTT quản lý thực sự rộng hơn rất nhiều so với ý nghĩa
của chính bản thân tên gọi từ này. Đối tượng của nó không chỉ là các nhà quản lý

mà còn bao gồm cả những người trong một tổ chức làm việc trên HTTT, những
người làm công tác phân tích thiết kế hệ thống.
1.1.5. Vai trò của hệ thống thông tin
Cung cấp một sự biểu diễn để tiếp cận sự hiểu biết chính xác về tổ chức.
Trên cơ sở hệ thống thông tin về tổ chức (có được sự hiểu biết về tổ chức) có thể
khắc phục những thiếu sót, cải tiến những qui trình chưa hợp lý để hệ thống hoạt
động có hiệu quả hơn.
Một tổ chức gồm nhiều phần tử tương tác động với nhau, nghĩa là luôn sinh ra
một môi trường bên trong biến đổi. Ngoài ra, tổ chức còn phải đối phó với thế giới
bên ngoài cũng không ngừng biến động. Như vậy, hệ thống thông tin về tổ chức là
cơ sở để kiểm soát đầu vào, đầu ra và các qui trình xử lý bên trong để có thể thích
nghi với những biến động ở bên trong lẫn bên ngoài để giữ cho mục tiêu của tổ
chức không ra ngoài giới hạn cho phép và nhằm đảm bảo tính ổn định cũng như
phát triển của hệ thống.
1.1.6. Một số mô hình phát triển HTTT
* Mô hình vòng đời cổ điển:
Mô hình vòng đời cổ điển đôi khi còn gọi là mô hình thác nước. Khuôn cảnh
vòng đời yêu cầu tiếp cận một cách hệ thống, tuần tự tới việc phát triển phần mềm,
bắt đầu ở mức hệ thống và tiến dần xuống phân tích, thiết kế, mã hoá, kiểm thử, bảo
trì.
* Mô hình làm bản mẫu:
Cách tiếp cận làm bản mẫu là cách tiếp cận tốt nhất khi:
-

Khách hàng xác định được mục tiêu tổng quát cho phần mềm, nhưng chưa
xác định được đầu vào và đầu ra.
5


-


Người phát triển không chắc chắn về hiệu quả của thuật toán về thích nghi
của hệ điều hành hay giao diện người sử dụng. Làm bản mẫu là một tiến tŕnh
giúp người phát triển có khả năng tạo ra một mô hình cho phần mềm cần xây
dựng.

Mô hình có thể là một trong 3 dạng:
-

Bản mẫu trên giấy hay trên máy mô tả giao diện người máy dưới dạng làm
cho người dùng có thể hiểu được cách các tương tác xuất hiện.

-

Bản mẫu làm việc: cài đặt một tập con chức năng phần mềm mong muốn.

-

Một chương trình mà chỉ thực hiện nét cơ bản của tất cả các chức năng mong
muốn nhưng cần cải tiến thêm các tính năng khác tuỳ theo khả năng phát
triển.

• Mô hình xoắn ốc:
Mô hình xoắn ốc bao gồm các tính năng tốt nhất của cả vòng đời cổ điển và
làm bản mẫu cộng thêm phần phân tích rủi ro.
Mô hình xác định 4 hoạt động chính:
-

Lập kế hoạch: Xác định mục tiêu, giải pháp và ràng buộc.


-

Phân tích rủi ro: phân tích các phương án và xác định giải quyết rủi ro.

-

Kỹ nghệ: phát triển sản phẩm “mức tiếp theo”.

-

Đánh giá của khách hàng: Khẳng định kết quả của kỹ nghệ.

6


1.2. Giới thiệu Visual basic
1.2.1. Tổng quan về Visual Basic 6
Visual basic là một ngôn ngữ lập trình hướng đối tượng được hãng Microsoft
phát triển, lợi điểm khi dùng Visual Basic chính là ở chỗ tiết kiệm được thời gian và
công sức so với các ngôn ngữ lập trình khác khi xây dựng cùng một ứng dụng.
Visual Basic gắn liền với khái niệm lập trình trực quan (Visual), nghĩa là khi
thiết kế chương trình, ta nhìn thấy ngay kết quả qua từng thao tác và giao diện khi
chương trình thực hiện. Đây là thuận lợi lớn so với các ngôn ngữ lập trình khác,
Visual Basic cho phép ta chỉnh sửa đơn giản, nhanh chóng màu sắc, kích thước,
hình dáng của các đối tượng có mặt trong ứng dụng.
Một khả năng khác của Visual Basic chính là khả năng kết hợp các thư viện liên kết
động DLL (Dynamic Link Library). DLL chính là phần mở rông cho Visual Basic
tức là khi xây dựng một ứng dụng nào đó có một số yêu cầu mà Visual Basic chưa
đáp ứng đủ, ta viết thêm DLL phụ trợ.
Khi viết chương trình bằng Visual Basic, chúng ta phải qua hai bước :

-

Thiết kế giao diện (Visual Programming)

-

Viết lệnh (Code Programming)

1.2.2. Các ấn bản Visual Basic 6
Có ba ấn bản VB6: Learning, Professional và Enterprise. Hãy gác qua ấn bản
Learning, có thể dùng ấn bản Professional hay Enterprise.
Ấn bản Professional cung cấp đầy đủ những gì để học và triển khai một chương
trình VB6, nhất là các control ActiveX, những bộ phận lập trình tiền chế và rất hữu
dụng cho các chương trình ứng dụng (application programs). Ngoài đĩa compact
chính cho VB6, tài liệu đính kèm gồm có sách Visual Studio Professional Features
và hai đĩa CD Microsoft Developer Network (MSDN).
Ấn bản Enterprise là ấn bản Professional cộng thêm các công cụ Back Office
chẳng hạn như SQL Server, Microsoft Transaction Server, Internet Information
Server.

7


1.2.3. Cài đặt VB6
Để cài đặt VB6, máy tính cần phải có một ổ đĩa CD-ROM (CD drive). Cấn có ít
nhất 32 MB RAM, 2 GB hard disk và CPU Pentium II. Khi bỏ VB6 CD vào CD
drive, nó sẽ tự khởi động để hiển thị một menu lựa chọn những thứ cần Setup, click
Install Visual Basic 6.0 để cài VB6. Ngoại trừ các file hệ điều hành (Operating
System) trong thư mục (folder) \Os, các file trong đĩa compact đều không bị nén. Vì
thế, có thể sử dụng chúng trực tiếp từ đĩa. Ví dụ, có nhiều công cụ và thành phần

trong folder \Tools vốn có thể được cài đặt trực tiếp từ CD-ROM. Ngoài ra, có thể
chạy Setup khi nào cần thiết. Ví dụ, ta có thể chạy Setup để cài đặt lại Visual Basic
trong folder khác, hoặc để cài đặt thêm bớt các phần của VB6. Nếu vì lý do gì hệ
thống không install các đĩa compact MSDN (ta sẽ khám phá ra điều này khi thấy
Help không có mặt lúc chạy VB6), ta có thể cài đặt chúng trực tiếp từ đĩa số 1 của
bộ MSDN.
Để bổ xung và xóa các thành phần VB:
1.

Bỏ đĩa compact vào CD drive.

2.

Nếu menu không tự động hiện lên thì chạy chương trình Setup có sẵn tong
folder gốc trên đĩa compact.

3.

Chọn nút Custom trong hộp thoại (dialog) Microsoft Visual Basic 6.0
Setup.

4.

Chọn hay xóa các thành phần bằng cách check hay uncheck các hộp danh
sách Options của dialog Custom.

5.

Thực hiện các chỉ dẫn Setup trên màn hình.


1.2.4. Một số thành phần và đối tượng trong Visual Basic
Menu Bar
Chứa đầy đủ các commands mà ta sử dụng để làm việc với VB6, kể cả các menu
để truy cập các chức năng đặc biệt dành cho việc lập trình chẳng hạn như Project,
Format, hoặc Debug.

8


Toolbars (Debug, Edit, form Editor, Standard)
Các toolbars có hình các icons cho phép ta click để thực hiện công việc tương
đương với dùng một menu command, nhưng nhanh và tiện hơn. Ta dùng menu
command View => Toolbars (click lên menu command View cho popup menu hiện
ra rồi click command con Toolbars) để làm cho các toolbars hiện ra hay ẩn đi. Ta có
thể thay đổi vị trí một toolbar bằng cách nắm vào hai gạch vertical nằm bên trái
toolbar rồi dời toolbar đi chỗ khác (nắm ở đây nghĩa là để pointer của mouse lên
chỗ chấm đỏ trong hình phía dưới rồi bấm xuống và giữ nút bên trái của mouse,
trong khi kéo pointer đi nơi khác).
Project Explorer
Sẽ liệt kê các forms và các modules trong project hiện hành. Một project là sự
tập hợp các files mà ta sử dụng để tạo một trình ứng dụng. Tức là trong VB6, khi
nói viết một program có nghĩa là triển khai một project.
Properties window
Liệt kê các đặc tính của các forms hoặc controls được chọn. Một property là một
đặc tính của một object chẳng hạn như size, caption, hoặc color. Khi ta sửa đổi một
property ta sẽ thấy hiệu quả ngay lập tức, thí dụ thay đổi property Font của một
Label sẽ thấy Label ấy được display bằng Font chữ mới. Khi ta chọn một Property
của control hay form trong Properties window, phía bên phải ở chỗ value của
property có thể display ba chấm (. . .) hay một tam giác chỉa xuống. Bấm vào đó để
display một dialog cho ta chọn value.

Form Layout
Ta dùng form Layout để chỉnh vị trí của các forms khi form hiện ra lần đầu lúc
chương trình chạy. Dùng context command Resolution Guides để thấy nếu dùng
một màn ảnh với độ phân giải thấp, thí dụ như 640 X 480, thì nó sẽ nhỏ như thế
nào.

9


Form Designer
Dùng để thiết kế giao diện lập trình. Ta bổ sung các controls, các đồ họa
(graphics), các hình ảnh và một form để tạo sự ma sát mà ta muốn. Mỗi form trong
trình ứng dụng của ta có designer form riêng của nó. Khi ta maximise một form
designer, nó chiếm cả khu làm việc. Muốn làm cho nó trở lại cở bình thường và
đồng thời để thấy các form designers khác, click nút Restore Window ở góc bên
phải, phía trên.
Code Window
Cửa sổ để xem code của một form mà ta đã chọn. Trong Code window ta có thể
chọn display tất cả Sub của code cùng một lúc như trong hình hay display mỗi lần
chỉ một Sub bằng cách click button có hình ba dòng nằm ở góc bên trái phía dưới.
Toolbox
Đây là hộp đồ nghề với các công cụ gọi là controls, mà ta có thể đặt lên các form
trong lúc thiết kế (design). Nếu Toolbox biến mất, ta có thể display nó trở lại bằng
cách dùng menu command View => Toolbox. Ta có thể khiến toolbox display nhiều
controls hơn bằng cách chọn Components... từ context menu (chọn Toolbox rồi bấm
nút phải của mouse để display context menu) hay dùng menu command Project =>
Components.
Dưới đây là một số đối tượng thông dụng trong toolbox:



Scroll Bar: (Thanh cuốn)
Các thanh cuốn được dùng để nhận nhập liệu hoặc hiển thị kết xuất khi ta

không quan tâm đến giá trị chính xác của một đối tượng nhưng lại quan tâm sự
thay đổi đó nhỏ hay lớn. Nói cách khác, thanh cuốn là đối tượng cho phép nhận
từ người dùng một giá trị tùy theo vị trí con chạy (Thumb) trên thanh cuốn thay
cho cách gõ giá trị số.
Thanh cuốn có các thuộc tính quan trọng nhất là :
- Thuộc tính Min : Xác định cận dưới của thanh cuốn
- Thuộc tính Max : Xác định cận trên của thanh cuốn
- Thuộc tính Value : Xác định giá trị tạm thời của thanh cuốn

10




Option Button Control: (Nút chọn)
Đối tượng nút chọn cho phép người dùng chọn một trong những lựa chọn

đưa ra. Như vậy, tại một thời điểm chỉ có một trong các nút chọn được chọn.


Check Box: (Hộp kiểm tra)
Đối tượng hộp kiểm tra cho phép người dùng kiểm tra một hay nhiều điều

kiện của chương trình ứng dụng. Như vậy, tại một thời điểm có thể có nhiều hộp
kiểm tra được đánh dấu.



Label: (Nhãn)
Đối tượng nhãn cho phép người dùng gán nhãn một bộ phận nào đó của giao

diện trong lúc thiết kế giao diện cho chương trình ứng dụng. Dùng các nhãn để
hiển thị thông tin không muốn người dùng thay đổi. Các nhãn thường được dùng
để định danh một hộp văn bản hoặc một điều khiển khác bằng cách mô tả nội
dung của nó.


Image: (Hình ảnh)
Đối tượng Image cho phép người dùng đưa hình ảnh vào Form



Picture Box:
Đối tượng Picture Box có tác dụng gần giống như đối tượng Image.



Text Box: (Hộp soạn thảo)
Đối tượng Text Box cho phép đưa các chuỗi kí tự vào Form
Thuộc tính quan trọng nhất của Text Box là thuộc tính Text cho biết nội

dung hộp Text Box.


Command Button: (Nút lệnh)
Đối tượng Command Button cho phép quyết định thực thi một công việc nào

đó.



Directory List Box, Drive List Box, File List Box:
Đây là các đối tượng hỗ trợ cho việc tìm kiếm các tập tin trên một thư mục

của ổ đĩa nào đó.


List Box: (Hộp danh sách)
Đối tượng List Box cho phép xuất các thông tin về chuỗi.

11


1.2.5. Cấu trúc điều khiển chương trình trong Visual Basic
1.

Phát biểu IF :
IF điều kiện THEN
Các lệnh thực hiện khi điều kiện thỏa
ELSE
Các lệnh thực hiện khi điều kiện không thỏa
END IF

2.

Phát biểu SELECT CASE :

Đây là cấu trúc chọn lựa
SELECT CASE X

CASE 0 :
Các lệnh thực hiện khi X = 0
CASE 1 :
Các lệnh thực hiện khi X = 1
...
CASE n :
Các lệnh thực hiện khi X = n
END SELECT

3.

Lệnh DO WHILE . . LOOP :

Đây là cấu trúc lặp kiểm tra điều kiện trước, vòng lặp tiếp tục khi điều kiện
lặp còn đúng
DO WHILE Điều kiện
Các lệnh thực hiện khi điều kiện còn thỏa
LOOP
4.

Lệnh DO . . LOOP WHILE :

12


Đây là cấu trúc lặp kiểm tra điều kiện sau, vòng lặp tiếp tục khi điều kiện lặp
còn đúng
DO
Các lệnh
LOOP WHILE Điều kiện

Như vậy với cấu trúc này, vòng lặp thực hiện ít nhất 1 lần
5.

Lệnh FOR . . NEXT :

Đây là cấu trúc lặp hay dùng nhất trong Visual Basic
FOR . . TO STEP n
Các lệnh
NEXT
Trong đó Step là bước tăng. Mặc định Step là 1
6.

Lệnh DO . . LOOP UNTIL :
DO . .
Các lệnh
LOOP UNTIL Điều kiện

Tương tự như DO . . LOOP WHILE. Vòng lặp thực hiện ít nhất 1 lần
7.

Phát biểu EXIT . . FOR :

Phát biểu EXIT được sử dụng khi cần dừng ngay quá trình lặp của FOR
8.

Lệnh EXIT DO :

Phát biểu EXIT DO sử dụng khi cần dừng ngay quá trình lặp của phát biểu
DO


13


Chương 2: Phân tích và thiết kế hệ thống thi trắc nghiệm
2.1. Khảo sát hệ thống:
2.1.1. Giới thiệu về hệ thống thi
Thi là một quá trình đánh giá kết quả học tập thông qua bài thi và điểm thi của
thí sinh. Từ xưa đến nay cách thi chủ yếu là thi viết trên giấy, và giáo viên chấm
điểm vào bài thi của thí sinh. Do còn tồn tại rất nhiều những nhược điểm của
phương pháp thi này nên ngày càng có nhiều những phương pháp thi khác được áp
dụng nhằm đánh giá kiến thức của thí sinh một cách công bằng hơn, chính xác hơn,
một trong những phương pháp thi dó là hình thức thi trắc nghiệm.
Hiện nay phương pháp thi trắc nghiệm ngày càng được áp dụng nhiều hơn nhờ
những ưu điểm và những hiệu quả mà nó mang lại. Với sự phát triển của công nghệ
thông tin đã có rất nhiều phần mềm thi trắc nghiệm trên máy tính ra đời. Trong tài
liều này em sẽ đi sâu vào việc phân tích và thiết kế một chương trình thi trắc
nghiệm bằng ngôn ngữ lập trình Visual basic và hệ quản trị cơ sở dữ liệu SQL.
2.1.2. Khảo sát hệ thống thi trắc nghiệm trên máy tính
Hệ thống thi trắc nghiệm trên máy tính là hệ thống đánh giá trình độ của thí
sinh dựa vào máy tính. Hệ thống này đã thay thế rất hiệu quả cho hình thức thi trắc
nghiệm trên giấy, việc ra đề thi, tổ chức thi được thực hiện hoàn toàn bằng máy
tính. Khi tổ chức thi đề thi có thể có nhiều dạng câu hỏi thi khác nhau:
- Dạng câu trắc nghiệm điền vào chỗ trống
- Dạng câu trắc nghiệm sắp xếp các thành phần đã cho theo trật tự nhất
định.
- Dạng câu trắc nghiệm lựa chọn đúng sai.
- Dạng câu trắc nghiệm lựa chọn một đáp án tối ưu nhất cho câu hỏi .
- Dạng câu trắc nghiệm lựa chọn nhiều phương án phù hợp với câu hỏi.
Ta sẽ cùng tìm hiểu những ưu và nhược điểm của hệ thống thi trắc nghiệm:
14



* Ưu điểm:
- Giảm chi phí giấy mực cho mỗi lần thi.
- Việc chấm bài được chương trình thực hiện hoàn toàn tự động và có kết quả
lập tức ngay sau khi thi xong. Đảm bảo tính chính xác và công bằng khi chấm
điểm.
- Bài thi của mỗi thí sinh được lấy câu hỏi ngẫu nhiên từ ngân hàng câu hỏi
được lưu trên máy chủ, với số lượng câu hỏi rất nhiều vì vậy sẽ tránh được sự
giống nhau giữa đề thi của từng sinh viên do đó giảm tình trạng quay cóp bài
của nhau.
- Bài thi và điểm của thí sinh được lưu vào máy tính thuận tiện trong công tác
lưu trữ và quản lý.
- Đề thi có tính kế thừa cao, dễ cập nhật và lưu trữ câu hỏi.
* Nhược điểm:
- Việc biên soạn ngân hàng câu hỏi mất nhiều thời gian với số lượng câu hỏi
hàng ngàn câu, đòi hỏi người biên soạn phải có kiến thức chuyên sâu về môn
học.
- Đòi hỏi phải có một hệ thống máy tính đủ mạnh để chạy hệ thống chương
trình.
- Thí sinh không thể hiện được sâu về kiến thức của mình được học.
- Đòi hỏi thí sinh phải biết sử dụng máy tính.
2.2. Phân tích và thiết kế hệ thống
2.2.1. Mô tả hệ thống:
Hệ thống chương trình được thiết kế để áp dụng trong các kỳ thi hết môn ở các
trường đại học, chạy trên mạng cục bộ với mô hình client-server. Hệ thông thi chắc
nghiệm gồm 2 phần, phần chạy trên server và phần chạy trên client tạm đặt tên là
PDQuizServer và PDQuizClient, phần PDQuizServer có chức năng quản lý dữ liệu
trên server giúp giáo viên có thể cập nhật danh sách lớp, soạn câu hỏi, ra đề thi một
cách dễ dàng nó có thể hỗ trợ cho nhiều giáo viên với nhiều môn học khác nhau.

Một ngân hàng câu hỏi có thể do nhiều giáo viên soạn. Các câu hỏi có thể có ba
mức độ: khó, trung bình, dễ. Sau khi soạn ngân hàng câu hỏi giáo viên soạn đề thi

15


thông qua việc lựa chọn môn thi, số lượng câu hỏi, số câu khó, số câu trung bình và
số câu dễ, thời gian thi.
Thí sinh dự thi sẽ ngồi trên các máy client được cài phần mềm PDQuizClient,
phần mềm này sẽ chọn ngẫu nhiên các câu hỏi trong ngân hàng câu hỏi ở server dựa
vào phần ra đề thi của giáo viên với số lượng câu hỏi, số câu khó, trung bình, dễ tương ứng. Sau khi thi xong chương trình sẽ gửi trả lại server kết quả của bài thi.
2.2.2. Các yêu cầu của hệ thống:
* Yêu cầu chung:
- Dễ sử dụng
- ít thao tác
- Giao diện thân thiện với nguời dùng.
- Có chức năng trợ giúp người dùng
* Yêu cầu của PDQuizServer:
- Đòi hỏi phải cung cấp đúng tên người sử dụng và mật khẩu mới được
đăng nhập hệ thống.
- Dễ dàng cập nhật câu hỏi, danh sách lớp, quản lý điểm, báo cáo, in ấn.
- Hỗ trợ cho nhiều người sử dụng với những quyền hạn khác nhau.
- Dữ dàng trao đổi dữ liệu với những chương trình soạn thảo văn bản.
* Yêu cầu của PDQuizClient
- Có chức năng đăng nhập của giáo viên và đăng nhập của sinh viên.
- Khi chạy chương trình và thoát chương trình đều đòi hỏi nhập mật khẩu của
giáo viên.
- Có chức năng thi thử để làm quen với cách sử các chức năng của chương trình.
- Chấm điểm chính xác, cho ngay kết quả
- Trong thời gian làm bài thí sinh có thể dễ dàng chuyển sang câu hỏi tiếp theo,

hoặc trở về câu hỏi trước đó để tạm bỏ qua những câu khó và làm câu dễ trước.
- Nếu hết thời gian quy định làm bài thi mà thí sinh chưa làm xong thì
chương trình sẽ dừng lại.
- Có chức năng đánh dấu những câu hỏi còn chưa chắc chắn để thí sinh xem
lại sau.
-

Luôn hiển thị tên thí sinh, thời gian làm bài, số lượng câu hỏi, số lượng câu

chưa trả lời
16


Các chức năng và cách hoạt động của từng chức năng sẽ được đề cập cụ thể
hơn ở phần tiếp theo.

2.2.3. Phân tích chức năng của hệ thống
* Các chức năng chính của PDQuizServer
- Chức năng đăng nhập hệ thống:
Khi chương trình PDQuizServer được chạy nó sẽ thực hiện ngay chức năng
đăng nhập hệ thống, đòi hỏi người dùng phải khai báo đúng tên đăng nhập và
mật khẩu thì chương trình mới tiếp tục. Nếu nhập sai tên đăng nhập hoặc mật
khẩu quá 3 lần chương trình sẽ tự động thoát.
- Chức nâng cập nhật dữ liệu:
+ Cập nhật danh sách khoa và danh sách lớp: chức năng này cho phép giáo
viên có thể cập nhật, xoá, thay đổi về danh sách các khoa và các. Để thực hiện
việc cập nhật, người sử dụng chương trình phải có quyền hạn được phép cập
nhật thông tin về danh sách khoa và lớp thông qua chức năng đăng nhập.
+ Cập nhật danh sách sinh viên: Đùng để cập nhật danh sách các sinh viên của
các lớp vào cơ sở dữ liệu. Trong phần này còn có thêm các chức năng như tìm

kiếm, sắp xếp sinh viên theo tên lớp theo mã sinh viên hoặc ngày sinh…
+ Tạo danh sách thi: Chức năng này sẽ lấy danh sách sinh viên từ các lớp sau
đó sẽ kiểm tra sinh viên nào không đủ điều kiện dự thi sẽ bị loại ra khỏi danh
sách thi.
+ Cập nhật ngân hàng câu hỏi: chức năng cập nhật ngân hàng câu hỏi cho phép
người sử dụng chương trình cập nhật, xoá thay đổi các thông tin, các câu hỏi
trắc nghiệm trong ngân hàng câu hỏi.
+ Tạo đề thi: Chức năng này cho phép giáo viên có thể chọn đề thi cho từng
môn thi với số lượng câu hỏi, số câu khó, câu ở mức trung bình, câu dễ, dạng
câu hỏi trắc nghiệm.
+ Lập lịch thi: Giúp giáo viên cập nhật lịch thi của các môn như ngày, giờ thi,
môn thi, chọn lựa đề thi, giám thị coi thi.
17


+ Cập nhật quyền hạn đăng nhập: chương trình cho phép khai báo nhiều người
sử dụng với các quyền hạn khác nhau, các quyền hạn đó là:
• Cập nhật thông tin về danh sách lớp và danh sách thi
• Cập nhật thông tin về bộ đề thi và các câu hỏi trắc nghiệm
• Soạn lịch thi
• Tạo, thay đổi thông tin về các user
-

Chức năng báo cáo :

Giáo viên có thể xem và lập báo cáo về kết quả thi theo kỳ, theo khoa, theo lớp
hoặc theo một môn thi nào đó.
- Các chức năng soạn thảo:
Chương trình sẽ cung cấp cho người dùng những tính năng soạn thảo như một
chương trình soạn thảo thông thường như: sao chép, cắt, dán, quay lui…

- Chức năng nhập và xuất dữ liệu:
Giáo viên sẽ dùng chức năng này để nhập hoặc xuất dữ liệu ra các file word,
Excel. Trong chức năng này cũng có lựa chọn xuất đề thi ra dưới dạng thi trên giấy
để thí sinh có thể làm bài trên giấy trong một số trường hợp.
- Xem lại bài làm của thí sinh :
sử dụng chức năng này khi thí sinh nào đó có yêu cầu xem lại bài thi của mình.
- Chức năng in ấn:
Cho phép giáo viên có thể in danh sách sinh viên hay in bảng điểm của một kỳ

thi, của một môn thi, một lớp hay của một thí sinh nào đó.
* Các chức năng chính của PDQuizClient
- Chức năng đăng nhập cho giám thị và thí sinh:
Cũng như chương trình PDQuizServer chương trình PDQuizClient cũng có chức
năng đăng nhập, sẽ có 2 mức đăng nhập là đăng nhập dành cho người quản trị và
đăng nhập dành cho sinh viên. Khi cần thiết lập lại các thông số về cấu hình máy
chủ người quản trị sẽ dùng chức năng đăng nhập của mình để khai báo lại phần cấu
hình. Khi sinh viên thực hiện đăng nhập sẽ phải điền mã số sinh viên và ngày sinh
của mình. Chương trình sẽ kiểm tra trong danh sách sinh viên, nếu không đúng mã
số hoặc ngày sinh chương trình sẽ đưa ra thông báo và không cho thực hiện chức
năng làm bài thi.

18


- Chức năng làm bài thi:
Sau khi thí sinh đăng nhập thành công chương trình sẽ thực hiện chức năng
làm bài thi. Các câu hỏi sẽ được lấy ngẫu nhiên trong ngân hàng câu hỏi ở máy chủ,
số lượng câu hỏi và mức độ khó của các câu hỏi sẽ dựa vào phần ra đề thi. Trong
quá trình làm bài thí sinh có thể chuyển qua lại giữa các câu hỏi để làm những câu
dễ trước.

-

Chức năng trợ giúp:

Ở bất kỳ thời điểm nào trong quá trình làm bài thi thí sinh cũng có thể chọn chức
năng trợ giúp, chức năng này sẽ hướng dẫn sinh viên cách sử dụng chương trình và
những chú ý khi sử dụng chương trình.
- Chức năng chọn câu chưa trả lời:
Chức năng này cho phép thí sinh chuyển nhanh đến những câu hỏi mà mình
chưa trả lời để làm bài, mà không phải chuyển qua lại toàn bộ câu hỏi.
- Kết thúc và chấm điểm:
Khi thí sinh muốn kết thúc bài làm hoặc thời gian làm bài đã hết chương trình
sẽ dừng lại và tính toán đưa ra số điểm mà thí sinh đạt được. Dựa vào điểm đạt
được giáo viên cập nhật ở phần ra đề chương trình sẽ thông báo cho thí sinh biết họ
đã thi đạt hay không đạt.
- Gửi kết quả về server:
Chức năng này được thực hiện một cách tự động, sau khi thí sinh thi xong sẽ gửi
bài làm và số điểm đã đạt được về máy chủ.

19


2.2.4. Biểu đồ phân cấp chức năng của hệ thống:
• Biểu đồ chức năng tổng thể:
Error: Reference source not found

• Biểu đồ chức năng cập nhật thông tin:

Error: Reference source not found


• Biểu đồ chức năng báo cáo:

Error: Reference source not found

2.2.5. Biểu đồ các luồng dữ liệu

20


Biểu đồ luồng dữ liệu cho phép ta nghiên cứu hệ thống bằng cách theo dõi các
luồng dữ liệu, các chức năng, kho dữ liệu để biểu diễn sự hoạt động của hệ thống,
phản ánh được thực trạng của hệ thống.
Error: Reference source not found
• Biểu đồ luồng dữ liệu mức ngữ cảnh
Error: Reference source not found

• Biểu đồ luồng dữ liệu mức đỉnh

21


Yêu Cầu Xem Kết Quả Thi

Bài Làm

ThíSinh

Ngân HàngCâu
Hỏi


Đ ềThi

Số Báo Danh

Yêu Cầu Thi Môn

TổChức Thi

Bài Làm

Tạo Đ ềThi

Kết Quả Thi

Kết Quả Thi

Yêu Cầu Kết Quả Thi

Tổng
Kếtcỏo
Đ ánh
Bỏo
Giá Kết Quả

Bảng Tổng Kết Kết Quả
Thi Theo Môn Học

Đ ềThi

Thông Tin vềCâu Hỏi, Đ ềThi


Yêu cầu thông tin vềcâu hỏi , đềthi

Giáo Viên

ThíSinh

Ngân Hàng Câu
Hỏi
Giáo Viên

Biu lung d liu cho tin trỡnh to thi:
Nội Dung Câu Hỏi
Cập Nhật Câu Hỏi

Thời Gian
Mức Độ, Hình Thức Thi

Tạo Đề Thi

22
Đề Thi


* Biu lung d liu cho tin trỡnh thi:
Danh sách thi
Thí Sinh

Mã SV


Kiểm Tra mã SV

Mã SV Sai
DS Đề Thi
Chọn Đề Thi

i
Thờ
H
Tính Thời Gian Thi ết Thời
Gian
i thi
Làm bà

Đề Thi

i
n Th
a
i
G

Ngân Hàng
Câu Hỏi

Thi
Bài làm

Giám sát quá
trình thi


Chấm
điểm
Giám thị

Bảng kết
quả

2.3. Thiết kế cơ sở dữ liệu:
2.3.1. Thiết kế các bảng:

Báo cáo

Bảng Lớp:

23


B¶ng Khoa:

B¶ng M«n Thi:

B¶ng LÞch Thi:

B¶ng §Ò Thi:

24


B¶ng Danh s¸ch líp:


B¶ng Danh s¸ch thi:

B¶ng C©u Hái:

B¶ng §¸p ¸n ( c¸c ®¸p ¸n cña c©u hái):

B¶ng Qu¶n TrÞ:
25


B¶ng Gi¸o viªn:

2.3.2 S¬ ®å quan hÖ gi÷a c¸c b¶ng:

26


×