Chức năng ngơn ngữ (Language)

Một phần của tài liệu TÌM HIỂU mô HÌNH SCORM(Shareable content object reference model) và xây DỰNG CÔNG cụ MINH họa (Trang 119)

Ứng dụng hiện thực giao diện đa ngơn ngữ, với mong muốn đem lại sự tiện lợi nhất cho người sử dụng chương trình. Hiện nay ứng dụng đã hiện thực giao diện cho hai ngơn ngữ Anh và Việt.

Hình 3.1.7 Chức năng thay đổi ngơn ngữ thể hiện

3.2 Hin thc ng dng

3.2.1 Xác định yêu cu

Chương trình được hiện thực với mục đích minh họa cho quá trình đĩng gĩi nội dung theo SCORM. Do đĩ yêu cầu chính của ứng dụng là hiện thực chức năng đĩng gĩi nội dung theo chuẩn SCORM. Do gĩi nội dung SCORM được mơ tả bởi tập tin manifest được dùng để mơ tả cho cấu trúc và các thành phần của gĩi nội dung. Do đĩ chức năng chủ yếu của chương trình là sẽ tương tác với tập tin manifest. Các thao tác chủ yếu này bao gồm các chức năng như thêm các thành phần vào tập tin manifest, xĩa các thành phần ra khỏi tập tin manifest, và sửa các thuộc tính cho các thành phần.

Sau khi thao tác trên các thành phần manifest của gĩi nội dung thì phải thực hiện chức năng chính tiếp theo là đĩng gĩi nội dung đểđưa ra một gĩi nội dung theo chuẩn SCORM đã mơ tả. Theo chuẩn SCORM quy định gĩi nội dung được đĩng gĩi theo dạng tập tin nén (tập tin cĩ phần mở rộng là ZIP). Do đĩ cần phải hiện thực quá trình nén tập tin cho gĩi nội dung.

Trước những yêu cầu đặt ra và kết hợp với các đặc tả của chuẩn SCORM cho gĩi nội dung, việc hiện thực ứng dụng gặp phải những khĩ khăn cần phải khắc phục:

− Do cấu trúc tập tin manifest quy định cĩ một số thành phần cĩ cấu trúc thẻ khơng giới hạn số cấp lồng nhau nên việc quản lý và tương tác đối với các thành phần này rất khĩ khăn.

− Các thành phần của manifest cĩ số lượng thuộc tính và các thẻ thành phần khá nhiều do đĩ gây khĩ khăn cho việc lựa chọn phương pháp hiện thực giao diện phù hợp giúp người sử dụng cĩ thể dễ dàng tương tác với các thành phần này.

− Số lượng thẻ trong một gĩi nội dung bình thường là tương đối nhiều và đối tượng người dùng của chương trình cĩ thể là những giáo viên hay giảng viên là những người sử dụng cĩ cấu hình máy khơng cao, do đĩ vấn đề về hiệu năng chương trình cũng là một vấn đề cần được chú ý đến.

3.2.2 Thiết kế chương trình

Chương trình được thiết kế với các chức năng cơ bản như tạo gĩi nội dung hay mở

gĩi nội dung. Để tăng tính tiện dụng khi sử dụng chương trình, nên các chức năng như mở gĩi nội dung hay tạo mới gĩi nội dung được thiết kế theo dạng wizard step by step (từng bước một) để hỗ trợ cho người sử dụng. Nhằm tránh những sai sĩt cho những người sử dụng chương trình lần đầu hay chưa am hiểu vềứng dụng.

V phn to mi gĩi ni dung: gĩi nội dung cĩ thểđược tạo mới bằng hai cách:

Là một gĩi mới hồn tồn: chương trình sẽ tựđộng tạo ra một số tập tin cấu hình cần thiết cho gĩi nội dung (bao gồm tập tin imsmanifest.xml và một số

tập tin schema và DTD)

Là một gĩi mới được tạo trên nền tài nguyên đã cĩ sẵn: tài nguyên ở đây cĩ thể là một thư mục đã chứa sẵn các tập tin tài nguyên cần dùng cho gĩi nội dung (như tập tin hình ảnh, âm thanh, trang web,v..v..) sau khi người dùng trỏ đến thư mục chứa tài nguyên, chương trình sẽ tự động copy tồn bộ các tài nguyên đang chứa trong thư mục vào gĩi nội dung và tựđộng tạo thêm một số

tập tin cần thiết cho gĩi nội dung. Nếu tài nguyên là một gĩi nội dung khác thì chương trình sẽ tựđộng giải nén tài nguyên vào gĩi nội dung và tựđộng tạo một số tập tin cần thiết.

V phn m gĩi ni dung:để mở một gĩi nội dung cũng cĩ thểđược mở bằng hai cách:

Từ một gĩi nội dung: chương trình sẽ giải nén gĩi nội dung vào thư mục đã

được người dùng chỉđịnh rồi sau đĩ sẽ tiến hành thực hiện theo quy trình mở

gĩi bằng tập tin manifest.

Từ một tập tin manifest: chương trình đọc các thơng tin từ tập tin imsmanifest.xml để thể hiện lên cấu trúc cây thành phần của manifest.

V phn tương tác vi các thành phn ca manifest: được thiết kế bao gồm một treeview thể hiện các thành phần của mainifest (như metadata, resource, organization,v.v…), các form thuộc tính tương ứng với các thành phần của manifest được bố trí nằm về phía phải của cây thành phần manifest, giúp người sử

dụng dễ dàng đối chiếu qua lại, và một hệ thống menu ngữ cảnh tương ứng dành cho các chức năng như tạo mới và xĩa các thành phần. Khi người dùng tương tác với các thành phần thơng qua các form hay menu ngữ cảnh thì chương trình sẽ tự động sinh ra, xĩa hay sửa những thẻ XML tương ứng theo những thay đổi của người dùng.

V phn thêm các tài nguyên vào gĩi ni dung: chương trình sẽ cĩ một hộp thoại hỗ trợ cho thao tác này của người dùng. Người dùng cĩ thể thêm tài nguyên vào gĩi nội dung bằng ba cách.

Chỉ thêm vào một tập tin duy nhất: chương trình sẽ tự động sao chép tập tin này vào gĩi nội dung.

Thêm vào gĩi nội dung là nội dung của cả một gĩi khác: chương trình sẽ tự động giải nén nội dung của gĩi nội dung nhập vào.

Thêm vào gĩi nội dung là một thư mục: người dùng hồn tồn cĩ thể chỉđịnh số lượng tập tin hay thư mục con sẽ thêm vào, chứ khơng cần thiết sẽ thêm vào tồn bộ nội dung của thư mục.

Xem các tp tin tài nguyên: Khi thêm tài nguyên vào gĩi nội dung, người dùng cĩ thể thêm bất kỳ tập tin nào cĩ định dạng bất kỳ nào vào gĩi nội dung, do chuẩn SCORM khơng cĩ quy định về định dạng của tài nguyên, nên tất cả các tập tin

đều cĩ thể là tài nguyên. Do đĩ chương trình sẽ và chỉ hỗ trợ xem một số tập tin cĩ định dạng thơng dụng. Chương trình cĩ hỗ trợ chức năng xem nội dung của các tài nguyên. Chương trình sẽ hỗ trợ xem một số định dạng cơ bản như tập tin web, tập tin hình ảnh, âm thanh, các tập tin xml, schema, DTD, các tập tin text, các

định dạng thơng dụng như PDF, DOC, PPT,.., đối với các định dạng cịn lại chương trình sẽ nhờ sự trợ giúp của hệđiều hành trên máy tính người dùng trợ

giúp để mở các định dạng này.

View source code: nhằm tăng sự thuận tiện khi tương tác với các thành phần manifest, chương trình hỗ trợ một tab page cho phép xem trước source code của tập tin manifest trong suốt quá trình tương tác, những tương tác này chỉđược thể

hiện trong tab page này và sẽ khơng cĩ ảnh hưởng đến tập tin vật lý trên máy, những thay đổi này chỉđược ghi xuống đĩa khi người dùng nhấn nút “lưu gĩi nội dung”. Source code của manifest sẽ được đánh số dịng và thể hiện theo dạng coloring code (hiển thị màu cho code) với các tập tin XML, schema và DTD để

người sử dụng dễ dàng trong việc theo dõi code.

H tr giao din đa ngơn ng: chương trình được thiết kế cĩ giao diện đa ngơn ngữ (cĩ hỗ trợ tiếng Việt) giúp cho người sử dụng nhanh chĩng tiếp cận và sữ

dụng được ứng dụng bằng chính ngơn ngữ quen thuộc của người dùng. Tập tin dùng để chứa các chỉ thị cho từng ngơn ngữ thể hiện là các tập tin XML được chứa trong thư mục lang của ứng dụng.

Ngồi ra, ứng dụng cịn hiện thực vài chức năng tiện ích khác để hỗ trợ cho các chức năng chính của chương trình như (sao chép, xĩa tập tin hay thư mục, hiện thực chức năng nén, giải nén tập tin ZIP,v.v…).

3.2.3 Gii pháp hin thc

Trước những yêu cầu và khĩ khăn đặt ra, cũng đã cĩ nhiều biện pháp được đề xuất để

lựa chọn để giải quyết vấn đề chính đĩ là quản lý cấu trúc của tập tin XML này, trong

đĩ mơ hình DOM là giải pháp đã được lựa chọn, tuy đây khơng phải là một giải pháp hồn hảo do mơ hình DOM buộc phải load tất cả nội dung tập tin lên trên bộ nhớ

RAM cho nên sẽảnh hưởng nhiều đến hiệu năng của chương trình, và do giao diện chương trình khi tương tác cịn gồm một cây thể hiện cấu trúc của tập tin manifest và các form thể hiện thuộc tính của từng thẻ cho nên vấn đề tốc độ phải được ưu tiên giải quyết. Biện pháp mà chương trình đã sử dụng là đĩ là sử dụng mơ hình DOM và một số biện pháp hỗ trợ giúp cải thiện tốc độ là XPath và load từng phần cho cây của manifest để tránh tình trạng tốc độ của chương trình. Dựa vào đặc tính quản lý các thành phần theo mơ hình cây của mơ hình DOM để cĩ thể dễ dàng quản lý các thẻ và cũng như các tương tác (thêm, xĩa, sửa) trên các thành phần này.

Manifest file XMLDocumment

Component

TreeView Component Form Attribute

Load Load

Load

RichTextBox Component (View Source code)

Save

Save Add or Delete manifest component

Modify manifest component

Hình 3.2.1 Sơ đồ quy trình tương tác với các thành phần manifest

Quan sát trên hình 3.2.1, nhận thấy rằng, giải thuật chủ yếu của chương trình dựa vào mơ hình DOM mà ở đây được thể hiện bằng thành phần XMLDocument của .NET. Quá trình đọc tập tin manifest là quá trình load tồn bộ tập tin manifest vào thành

phần XMLDocument, tại đây theo khái niệm của DOM, tồn bộ các thẻ và thuộc tính nĩi riêng và các thành phần của tập tin manifest nĩi chung sẽđược quản lý theo sơđồ

hình cây do đối tượng XMLDocument quản lý. Mơ hình cây này sẽđược cụ thể hĩa bằng thành phần Treeview ở trên màn hình chính, giúp cho người dùng cĩ thể tương tác và quản lý các thành phần manifest, khi người dùng chọn một node trên thành phần TreeView tương đương với việc người dùng đã chọn lấy một thành phần manifest và ngay lập tức form chứa thuộc tính tương ứng sẽ xuất hiện và mọi thơng tin được load lên từ thành phần TreeView.

Do thực hiện theo cơ chế quản lý như trên, nên khi người thực hiện các thao tác như

thêm một thành phần manifest hay xĩa một thành phần manifest hoặc chỉnh sửa một thành phần manifest nào đĩ bằng cách tương tác lên thành phần TreeView hay trên các form thuộc tính thì chương trình sẽ thực hiện những dịng lệnh hết sức đơn giản như tạo thêm một element hay xĩa một element hoặc hiệu chỉnh một element trong XMLDocument ở vị trí tương ứng.

Trong khi tương tác với các thành phần của manifest, người dùng cĩ thể xem trước nội dung của tập tin manifest để xem những thay đổi của tập tin này trước những yêu cầu thay đổi của người dùng. Lúc này, chương trình chỉđơn giản là gọi phương thức Save của XMLDocument ra một thành phần RichTextBox để người dùng cĩ thể xem

được nội dung source code. Cịn nếu người dùng muốn lưu những thay đổi này xuống tập tin, thì chương trình cũng chỉ đơn giản là gọi phương thức Save của XMLDocument một lần nữa để ghi ra tập tin.

Do quá trình load nội dung của tập tin manifest lên bao gồm các quá trình load nội dung tập tin manifest vào thành phần XMLDocument để tạo cấu trúc DOM sau đĩ lại load tiếp lên trên thành phần TreeView để cho thể hiện cây thành phần manifest và sau đĩ lại load tiếp lên các form thuộc tính để cho thể hiện các giá trị của các thuộc tính tương ứng với các thành phần, nếu thực thi một loạt liên tục quá trình này thì ứng dụng sẽ chạy rất chậm. Do đĩ để khắc phục vấn đề về hiệu năng cho chương trình,

ứng dụng đã hiện thực giải pháp là load từng phần của mơ hình DOM lên TreeView khi cĩ sự tác động của người dùng. Khi người dùng click vào một node trên TreeView thì chương trình chỉ load các node con của thành phần đĩ trong mơ hình DOM, chứ khơng load hết tất cả các nút con và cháu. Tương tự như vậy các form thuộc tính chỉ được load dữ liệu khi cĩ sự kiện click tác động của người dùng lên thành phần trên TreeView. Những biện pháp này khi được sử dụng đã cải thiện rõ rệt về hiệu năng và tốc độ xử lý chương trình.

Ngồi chứng năng chính được trình bày trên, chương trình cũng phải hiện thực một số

chức năng cơ bản để tăng tính tiện dụng cho chương trình khi sử dụng. Và một trong những chức năng cơ bản mà chương trình phải hiện thực đĩ là chức năng mở gĩi nội dung. Quá trình mở một gĩi nội dung được mơ tả theo hình 3.2.2 dưới đây

Lựa chọn hình thức mở gĩi

Nhập tên gĩi và nơi chứa gĩi nội dung

Đọc các thành phần từ

tập tin manifest Giải nén gĩi nội dung

Hiện lên cây thành phần manifest

Từ tập tin manifest

Từ gĩi nội dung

Hình 3.2.2 Sơ đồ quy trình thực hiện hành động mở gĩi nội dung

Theo hình 3.2.2, thao tác chính yếu của chức năng mở gĩi nội dung sẽ là thao tác đọc các thành phần từ tập tin manifest đã cĩ, sau đĩ sẽ load lên TreeView. Về cơ bản chức năng này sẽ thực hiện những hành động chính sau đây: load tập tin manifest vào thành phần XMLDocument và sau đĩ sẽ load lên TreeView nút gốc của thành phần manifest. Quá trình mở một gĩi nội dung chỉ dừng lại ởđây, sau đĩ khi người dùng click vào cây thành phần sẽ chuyển qua quá trình thao tác với các thành phần manifest, lúc đĩ tùy theo hành động của người sử dụng chương trình sẽ load tiếp các nút con tương ứng để nối vào những nút đang cĩ. Quy trình thực hiện trên đã cải thiện

đáng kể tốc độ cho chương trình.

Vì khuơn khổ giới hạn của khĩa luận, do đĩ phần báo cáo vềứng dụng chỉ sẽ trình bày một số các chức năng cơ bản dưới dạng sơ đồ hoặc bằng các mơ tả sơ lược về

cách hiện thực. Chức năng sẽđược trình bày tiếp theo là chức năng tạo gĩi nội dung cũng được mơ tả theo sơđồ dưới đây:

Lựa chọn hình thức tạo Nhập tên gĩi và nơi chứa gĩi nội dung Lựa chọn tài nguyên Copy thư mục và tập tin vào nơi chứa Tạo các tập tin cấu hình tương ứng Giải nén gĩi vào nơi chứa Gĩi nội dung mới

Tạo từ tài nguyên

Từ thư mục

Từ gĩi nội dung Là gĩi mới

Hình 3.2.3 Sơ đồ quy trình thực hiện hành động tạo gĩi nội dung

Một chức năng tiếp theo khá là quan trọng của ứng dụng đĩ là chức năng đĩng gĩi nội dung. Nhiệm vụ của chức năng này là sẽ tập hợp tất cả các tài nguyên của người dùng cũng như các tập tin cấu hình cho gĩi vào một tập tin nén (tập tin ZIP). Do giải thuật nén và giải nén là một chức năng lớn nên ứng dụng chỉ sử dụng các hàm thư

viện cĩ sẵn của .NET 2.0. Tốc độ nén và giải nén tập tin của thư viện khá tốt và khơng giới hạn về số byte cĩ thể nén và giải nén.

3.3 Đánh giá ng dng

3.3.1 Ưu đim và Khuyết đim

Ưu đim:

− Chương trình đĩng gĩi tuân theo chuẩn SCORM 2004 3rd, là chuẩn được tổ

chức ADL hỗ trợ và khuyến khích sử dụng tại thời điểm đang làm khĩa luận.

− Với tính chất của một ứng dụng minh họa thì chương trình đã đạt được mục tiêu là đĩng gĩi nội dung tuân theo chuẩn SCORM bằng việc sinh ra các thẻ

XML tương ứng bên trong tập tin manifest và cho phép thêm các tài nguyên vào gĩi.

− Chương trình cĩ hỗ trợ giao diện tiếng việt thân thiện, dễ sử dụng đối với những người dùng khơng am hiểu nhiều về SCORM.

− Chương trình đã xây dựng tương đối thành cơng về cấu trúc quản lý và xây dựng chương trình để hỗ trợ cho việc tương tác với các thành phần của tập tin manifest bao gồm việc tạo, xĩa và sửa các thẻ XML bên trong tập tin.

− Chương trình cĩ giao diện dễ sử dụng, thân thiện với người dùng, các biểu mẫu thuộc tính được bố trí bên phải của màn hình giúp người sử dụng cĩ thể

Một phần của tài liệu TÌM HIỂU mô HÌNH SCORM(Shareable content object reference model) và xây DỰNG CÔNG cụ MINH họa (Trang 119)

Tải bản đầy đủ (PDF)

(129 trang)