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

Kết luận chuẩn web

Một phần của tài liệu KIẾN TRÚC VÀ CHUẨN PHẦN MỀM TRÊN NỀN WEB, ỨNG DỤNG XÂY DỰNG HỆ THỐNG THI TRẮC NGHIỆM (Trang 43 -43 )

Các chuẩn web là phần đáng quan tâm đối với nhà phát triển và thiết kế web. Đặc biệt là những người tạo ra trang web được truy cập bởi nhiều người dùng trên toàn thế giới. Một trang web chuẩn sẽđảm bảo khả năng truy cập và sử dụng tốt, nhanh hơn, dễ dàng bảo trì và phát triển. Tuy nhiên, việc đảm bảo tuân thủ toàn bộ các chuẩn này cũng sẽ là một khó khăn cho người phát triển và thiết kế. Bởi lẽ cần có sự thích ứng với các nguyên tắc và sử dụng các công cụ phát triển sinh mã tuân theo đúng các chuẩn quy định.

PHẦN 2: ỨNG DỤNG XÂY DỰNG HỆ THỐNG THI TRẮC NGHIỆM

CHƯƠNG 3 - XÂY DỰNG HỆ THỐNG THI TRẮC NGHIỆM 3.1. Mô tả bài toán thi trắc nghiệm

Tại nhiều các doanh nghiệp, tổ chức, trường học,... đều có các hình thức thi cử phục vụ cho các mục đích như tuyển nhân viên, kiểm tra trình độ nhân viên, hay thi kết thúc khoá học,... Trong đó, hình thức thi trắc nghiệm được các Đơn vị đặc biệt quan tâm và áp dụng nhiều do có nhiều ưu điểm. Đó là khả năng ra đề đa dạng với nhiều câu hỏi, phạm vi câu hỏi bao trùm rộng, các công tác ra đề và chấm thi cũng có thể thực hiện một cách dễ dàng, nhanh chóng, chính xác nếu đã xây dựng được trước ngân hàng câu hỏi.

Tuy nhiên, với các Đơn vị có tập hợp rất nhiều câu hỏi, có lượng thí sinh lớn và muốn thi trực tuyến trên máy tính thì nhu cầu cần có bộ chương trình thi là cần thiết. Yêu cầu của chương trình với từng Đơn vị có thể có các đặc thù khác nhau. Trong phạm vi của Luận văn, bài toán xây dựng hệ thống phần mềm thi trắc nghiệm cần đáp ứng được các yêu cầu sau:

Về phạm vi:

Hệ thống có thể áp dụng cho bất kỳ Đơn vị nào muốn thực hiện thi theo hình thức trắc nghiệm.

Tạo lập ngân hàng câu hỏi:

- Có khả năng tạo lập dễ dàng các câu hỏi và đáp án. Câu hỏi có thể thêm, sửa lại sau khi thêm, xoá đi hoặc đánh dấu ẩn (để không còn dùng trong các đợt ra đề sau đó). Mỗi câu hỏi sẽ có tập các trả lời và đáp án tương ứng. Đáp án có thể là một hoặc nhiều trả lời.

- Các câu hỏi được tổ chức thành các nhóm phân cấp cha con. Không giới hạn số cấp. Ví dụ: Ý 1.1: Những vấn đề chung (có 100 câu hỏi) Ý 1.2: Thị trường điện lực (có 200 câu hỏi) Nhóm 1: Câu hỏi về Luật điện lực

Ý 1.3: Quyền, nghĩa vụ của các bên tham gia TTĐ (có 300 câu hỏi) Ý 2.1.1: Chức năng nhiệm vụ các đơn vị Ý 2.1: Quy trình điều độ Ý 2.1.2: Th tc đóng đin công trình mi Nhóm 2: Câu hỏi về điều độ vận hành Ý 2.2:…. …

- Các câu hỏi có thểđược phân loại về mức độ khó khác nhau. Các độ khó có dạng số nguyên >=0 kèm theo tên gọi mô tả nếu có. Không giới hạn số tối đa của độ khó. Cho phép lập sẵn cấu trúc phân cấp của đối tượng thi. Độ khó là thuộc tính tuỳ chọn, người dùng có thể nhập hoặc không nhập. Nếu không nhập thì được xem như phù hợp với tất cả.

- Mỗi câu hỏi có ngầm định thời gian làm bài bao nhiêu phút. Thời gian này tùy người lập ngân hàng câu hỏi xác định.

Ra đề thi:

- Đề thi được lập tự động từ ngân hàng các câu hỏi dựa trên các tiêu chí lựa chọn về số câu, phân biệt độ khó hay không (từ bao nhiêu đến bao nhiều). Điểm & thời gian làm bài cho mỗi câu tương ứng từng loại độ khó hoặc áp riêng cho từng câu. Chương trình có thể hỗ trợ các tính năng tiện ích cho người ra đề như tự động xác định các loại nhóm, độ khó tối đa trong ngân hàng câu hỏi, tổng sốđiểm, tổng thời gian tương ứng bộđề được tạo ra. Các câu đáp án có thứ tự tuỳ chọn như lúc lập câu hỏi hay số thứ tự ngẫu nhiên.

- Đáp án được tạo ra cùng với đề thi nếu chọn câu hỏi tĩnh. Các câu hỏi và đáp án có thể tạo sẵn và lưu lại để thực hiện thi cho nhiều thí sinh. Hoặc cũng có thể tao động câu hỏi cho từng thí sinh khi thi theo các tiêu chí đã lựa chọn của đề thi. Nếu tạo sẵn các câu hỏi thì cần được lưu ra riêng độc lập với ngân hàng câu hỏi.

- Cho phép in đề thi và đáp án ra giấy. Ví dụ:

¾ Đề thi gồm 30 câu hỏi.

¾ Nhóm Luật điện lực – Ý 1.1: gồm 5 câu ngẫu nhiên, không phân biệt độ khó.

¾ Nhóm Luật điện lực – Ý 1.2: gồm 5 câu ngẫu nhiên, không phân biệt độ khó.

¾ Nhóm Luật điện lực – Ý 1.3: gồm 5 câu ngẫu nhiên, không phân biệt độ khó.

¾ Nhóm vềđiều độ vận hành: gồm 15 câu hỏi, các câu có độ khó từ 0 đến 8.

¾ Điểm cho câu có độ khó từ 0-5 là 10 đ thời gian 3 phút, độ khó >5 là 15đ, thời gian 5 phút. Tổng thời gian làm bài 120 phút.

¾ Tổng sốđiểm các định là 50đ.

Tổ chức thi & chấm thi:

- Với mỗi đợt thi tuyển, tạo ra danh sách thí sinh và bộ đề tương ứng nhóm thí sinh.

- Cho phép thực hiện thi qua mạng: mỗi thí sinh có một tên đăng nhập và mật khẩu truy cập. Thời gian làm bài được chương trình tựđộng kiểm soát. Sau khi thi xong chương trình tự động chấm điểm. Việc thông báo cho thí sinh ngay sau khi kết thúc làm bài được lựa chọn có hoặc không bởi người tổ chức đợt thi.

Các yêu cu phi chc năng:

• Có sự tách biệt giữa quản lý ngân hàng câu hỏi và quản lý thi. Việc tạo đề thi có thể kết nối tới nhiều ngân hàng câu hỏi đặt tại nhiều nơi khác nhau. Cách thức kết nối ngân hàng câu hỏi thông qua cấu hình đặt tại bên cung cấp và bên sử dụng.

• Các ngân hàng câu hỏi có thể được cung cấp lên mạng và cần sử dụng các chuẩn thông dụng, cho phép nhiều trình khách kết nối vào, không phân biệt nền tảng công nghệ hay ngôn ngữ lập trình.

• Có các cơ chếđảm bảo an ninh, hiệu năng tốt cho toàn hệ thống.

• Cơ sở dữ liệu tại một Đơn vị là tập trung, lưu trữ toàn bộ các thông tin về ngân hàng câu hỏi (nếu có), các đợt thi, thí sinh thi và kết quả thi.

• Giao diện thân thiện, dễ sử dung.

• Font chữ tiêu chuẩn Unicode, ngôn ngữ Tiếng Việt.

• Cài đặt thuận tiện, dễ dàng.

Phm vi xây dng h thng thi trc nghim trong lun văn:

• Lập kiến trúc phần mềm cho toàn hệ thống.

• Thiết kế chương trình, giao diện chính, cơ sở dữ liệu.

• Thực hiện lập trình minh hoạ kiến trúc SOA: lựa chọn mô đun lập ngân hàng câu hỏi.

3.2. Kiến trúc phần mềm 3.2.1. Giới thiệu chung 3.2.1. Giới thiệu chung

Kiến trúc phần mềm của hệ thống thi trắc nghiệm được xây dựng nhằm mục tiêu mô tả tổng quan và thiết kế mức cao về hệ thống thi trắc nghiệm dựa trên các khung nhìn khác nhau. Mỗi khung nhìn sẽ thể hiện các khía cạnh khác nhau về hệ thống.

Phương pháp tiếp cận xây dựng kiến trúc dựa trên phương pháp SOA. Mặc dù có thể sử dụng các phương pháp truyền thống khác để xây dựng hệ thống. Tuy nhiên, phương pháp SOA là phương pháp mới, có nhiều ưu điểm mạnh về hiệu năng & khả năng tích hợp. Trong các phần trên của luận văn tập trung nghiên cứu và mô tả về kiến trúc SOA, nên để làm rõ hơn về khía cạnh áp dụng của SOA, phương pháp lựa chọn để xây dựng kiến trúc và thực thi phần mềm là sử dụng SOA.

Tổng quan về hệ thống thi trắc nghiệm được biểu diễn bằng hình sau:

Hình 18 - Tổng quan về Hệ thống thi trắc nghiệm

Đơn vị tổ chức thi trắc nghiệm có thể tự xây dựng ngân hàng câu hỏi hoặc kết nối tới các Đơn vị khác chuyên về cung cấp dịch vụ ngân hàng câu hỏi bằng cách gọi dịch vụ web thông qua môi trường mạng kết nối giữa hai Đơn vị (LAN/WAN/Internet).

3.2.2. Biểu diễn kiến trúc

Kiến trúc hệ thống được biểu diễn theo mô hình 4+1 khung nhìn. Trong đó, bao gồm các khung nhìn ca sử dụng, khung nhìn logic, khung nhìn tiến trình, khung nhìn triển khai và khung nhìn thực thi. Các khung nhìn này được biểu diễn bằng ngôn ngữ mô hình hoá thống nhất (Unified Modeling Language – UML).

3.2.3. Mục tiêu và các ràng buộc kiến trúc

Kiến trúc phần mềm thi trắc nghiệm cần đáp ứng được đầy đủ các yêu cầu của bài toán đã đặt ra về lập ngân hàng câu hỏi, ra đề, tổ chức thi và chấm điểm. Một số ràng buộc:

• Môi trường ứng dụng là mạng LAN của Đơn vị, cơ sở dữ liệu tập trung. Trường hợp Đơn vị kết nối tới ngân hàng câu hỏi của Đơn vị khác thì cần có đường truyền mạng WAN để kết nối tới Đơn vị này.

• Xác thực người dùng bằng tên đăng nhập, mật khẩu và phân quyền được người dùng được phép sử dụng các chức năng nào.

• Tuân thủ kiến trúc hướng dịch vụ để đảm bảo hiệu năng, tính linh động & tích hợp hệ thống.

• Dựa trên các chuẩn đã được chấp nhận rộng rãi như http, xml, ...

3.2.4. Khung nhìn ca sử dụng

Hình 19 - Khung nhìn ca sử dụng

Ca sử dụng “Lap ngan hang cau hoi”:

Cung cấp chức năng để người dùng lập ngân hàng các câu hỏi và đáp án kèm theo. Các câu hỏi được phân vào các nhóm. Các nhóm được tổ chức theo cấu trúc hình cây (cha con).

Thông tin về một câu hỏi gồm có:

- Nội dung câu hỏi: nhập câu hỏi.

- Thuộc nhóm: chọn trong danh sách nhóm.

- Độ khó: (đánh số).

- Các câu trả lời: gồm danh sách các câu trả lời, và câu trả lời đúng (1 hoặc nhiều).

Ca sử dụng “Lap de thi”:

Cung cấp chức năng để người dùng lập đề thi dựa trên ngân hàng câu hỏi. Mỗi đề thi được tạo ra là phép chọn lọc ngẫu nhiên một tập các câu hỏi trong ngân hàng câu hỏi. Mỗi câu hỏi có một bộđếm số lần sử dụng. Mỗi lần được chọn thi bộđếm sẽ tăng lên 1.

- Thông tin lập đề thi: nhập tên đề thi.

i: cho phép người dùng tạo cấu trúc cây các nhóm đề thi.

- Nhóm đề th

- Tên đề thi.

- ác lựa chọn:

c chọn trong khoảng nào.

ựđộng một cách ngẫu nhiên hay sinh sẵn các câu hỏi.

-

khi thí sinh kết thúc làm bài. ngày hiện tại.

- Mô tả: mô tả khác vềđề thi.

này sử dụng để nhập thông tin về các thí sinh tham gia làm bài thi trắc ngh

hập: cấp cho thí sinh để vào làm bài.

- nh đào

tạo, năm tốt nghiệp, xếp loại tốt nghiệp, kinh nghiệm, mô tả thêm,... Chọn số lượng câu hỏi trong mỗi nhóm. Trong đó, có c

+ Độ khó: không chọn hoặ

+ Tổng thời gian làm bài.

+ Danh sách thí sinh được gán làm đề thi.

- Chọn sinh câu hỏi t Một số lựa chọn:

+ Số câu hỏi hiển thị: số câu/toàn bộ.

+ Tựđộng hiển thị kết quả cho thí sinh sau

- Ngày lập đề thi: ngầm định là

Ca sử dụng “Lap danh sach thi sinh”:

Chức iệm.

Thông tin về thí sinh gồm có:

- Tên đăng n

- Mật khẩu.

- Họ tên thí sinh.

Các thông tin mô tả khác: như năm sinh, quê quán, trường đào tạo, ngà

inh. Kết quả làm bài được ghi lại và thông báo lại cho thí sinh hoặc người tổ chức thi.

ọn khi tạo đề m

ủa thí sinh. Nếu quá thời ạn mà thí sinh mới gửi kết quả lên thì sẽ không được xử lý.

ủa tất cả thí sinh theo 1 đề thi hoặc xem kết quả thi của các môn thi theo từng thí sinh.

3.2.5. Khung nhìn logic

Ca sử dụng “Cham diem thi”:

Chức năng này được sử dụng để tựđộng tính điểm làm bài thi của thí sinh dựa trên đề thi và các câu trả lời của thí s

Ca sử dụng “Lam bai thi”

Thí sinh sử dụng chức năng này để thực hiện làm bài thi. Trong đó, thí sinh sẽ đăng nhập với tên truy nhập và mật khẩu được cấp. Chương trình hiển thị danh sách các đề thi thí sinh chưa làm bài. Sau khi chọn đề thi, thí sinh làm bài và gửi kết quả lên và gọi chức năng chấm điểm thi để tựđộng chấm bài. Tuỳ thuộc vào lựa ch

à chương trình sẽ gọi tới chức năng hiển thị kết quả thi hay không. Lưu ý: chức năng sẽ kiểm soát tựđộng thời hạn làm bài c

h

Ca sử dụng “Xem điem thi”

Hiển thị các kết quả làm bài thi của thí sinh. Chức năng này có thể xem theo nhiều chiều. Như ngay sau thí sinh làm bài nếu có lựa chọn thì sẽ hiển thị ngay kết quả cho thí sinh. Hoặc sau đó, người tổ chức thi có thể xem kết quả c

Trinh dien

Ung dung

Dich vu

Hình 20 - Kiến trúc tổng thể

Ngan hang cau hoi

Lap de thi

Quan ly thi sinh Lam bai thi Quan ly thi

Hình 21 - Lớp trình diễn

Hình 22 - Lớp trình diễn - Ngân hàng câu hỏi

Hình 23 - Lớp trình diễn - Lập đề thi

Hình 24 - Lớp trình diễn - Quản lý thí sinh

Hình 25 - Lớp trình diễn - Làm bài thi

Hình 26 - Lớp ứng dụng

Hình 27 - Lớp dịch vụ - Ngân hàng câu hỏi

Hình 28 - Lớp dịch vụ - Quản lý thi

3.2.6. Khung nhìn tiến trình

Toàn bộ hoạt động của hệ thống thi trắc nghiệm gồm các tiến trình:

• Chuẩn bị ngân hàng câu hỏi

• Lập danh sách thí sinh thi.

• Lập đề thi

• Tổ chức thi.

Chi tiết các hoạt động của tiến trình thể hiện trong sơđồ sau:

Hình 29 - Mô hình hoạt động tổng thể của hệ thống thi trắc nghiệm

3.2.7. Khung nhìn triển khai

Mô hình triển khai hệ thống được thể hiện bằng sơđồ sau:

Hình 30 - Mô hình triển khai hệ thống thi trắc nghiệm

Hình 31 - Mô hình mạng áp dụng thực tế tại một Đơn vị

3.2.8. Khung nhìn thực thi

Mô hình thực thi hệ thống được chia thành các thành phần (component) sau:

Hình 32 - Khung nhìn thực thi

3.3. Thực hiện hệ thống 3.3.1. Lựa chọn công nghệ

3.3.1.1. Công cụ lập trình và cơ sở dữ liệu

Hệ thống thi trắc nghiệm là hệ thống web-based nên có thể sử dụng nhiều công nghệ khác nhau. Trong thời điểm hiện nay, có thể thấy có các công nghệđiển hình sau:

• Ngôn ngữ lập trình: Java, PHP, Microsoft.Net.

• Cơ sở dữ liệu: Oracle, MySQL, SQL Server.

Hệ thống sử dụng dịch vụ web theo kiểu REST nên Java và Micrsoft.Net là phù hợp. Hiện nay, Microsoft đã phát hành phiên bản Visual Studio 2005/2008 trên nên tảng DotNetFrame work 3.0/3.5 có hỗ trợ đầy đủ REST. Vì vậy, môi trường lập trình

Một phần của tài liệu KIẾN TRÚC VÀ CHUẨN PHẦN MỀM TRÊN NỀN WEB, ỨNG DỤNG XÂY DỰNG HỆ THỐNG THI TRẮC NGHIỆM (Trang 43 -43 )

×