3.3.1. Giải pháp công nghệ[6, 9, 10]
Ngôn ngữ lập trình đ−ợc sử dụng để cài đặt ch−ơng trình thử nghiệm cho Hệ thống Trợ giúp Lập bài giảng là PHP vì một số lý do sau đây:
ắ PHP là kịch bản trên máy chủ, đ−ợc thiết kế cho phép xây dựng ứng dụngWeb trên cơ sở dữ liệu. PHP có thể sử dụng trên các hệ điều hành phổ biến hiện nay nh− Linux, Unix, Windows,... và hỗ trợ hầu hết các máy chủ Web nh− Apache, IIS (Microsoft Internet Information Server), Netscape, iPlanet Servers,...
ắ PHP hỗ trợ rất nhiều hệ quản trị cơ sở dữ liệu, đây là một trong những điểm mạnh nhất của PHP. Đó là Oracle, Dbase, InterBase, MySQL, ODBC, IBM DB2,...
ắ PHP là ngôn ngữ lập trình khá mạnh với nhiều toán tử, nhiều phát biểu điều khiển, các hàm thao tác trên tập tin, trên dữ liệu kiểu mảng, kiểu chuỗi,... Các thao tác cơ bản trên cơ sở dữ liệu giúp cho việc in ấn, tổ chức báo cáo trở nên đẹp, dễ dàng và thuận tiện.
nút trên cây tài liệu XML theo mô hình DOM. Cụ thể, sử dụng XPath trong th− viện DOM của PHP để giao tiếp tìm kiếm trong tài liệu. Hơn nữa, PHP còn hỗ trợ lập trình h−ớng đối t−ợng cho phép khởi tạo và sử dụng các lớp, quan hệ, thuộc tính, ph−ơng thức của đối t−ợng trong hệ thống để hỗ trợ phát triển phần mềm theo cấu trúc kế thừa và sử dụng lại mã kết quả.
3.3.2. Thiết kế tài liệu XML
Tất cả các thông tin về đề c−ơng môn học hay nội dung bài giảng của môn học đều đ−ợc biểu diễn d−ới dạng các file XML. Theo mô hình DOM, cấu trúc các tài liệu XML có dạng cây bao gồm các nút là các thẻ trong tài liệu.
a. Cấu trúc các tài liệu XML theo mô hình DOM
<DCMonhoc> <TenDCMonhoc> <TenNganh> <TenHeDT> <SoDVHT> <Mucdich> <Yeucau> <NoidungDC> text text text byte text text text
<Baigiang> text <TenBaigiang text <TenNganh> text <TenHeDT> byte <SoDVHT> <Noidung> <Chuong> text <TenChuong> <Noidung> <Bai> text <TenBai> <Noidung> <Muc>
Hình 3.23: Cấu trúc nội dung bài giảng theo mô hình DOM
b. Xây dựng tài liệu XML
b1. Thiết kế file .xml
Tạo hai file .xml l−u thông tin về đề c−ơng các môn học và nội dung bài giảng của các môn học. Đề c−ơng môn học và bài giảng môn học đ−ợc giảng viên soạn thảo ở máy khách thông qua các form đ−ợc thiết kế sẵn, khi gửi về máy chủ đ−ợc xử lý và l−u lại d−ới dạng file .xml.
Nội dung file DeCuong.xml l−u thông tin về đề c−ơng các môn học:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE DanhSachDeCuong SYSTEM "DeCuong.dtd"> <DanhSachDeCuong>
<DCMonhoc id="1143663740">
<TenDCMonhoc>Tin học cơ sở</TenDCMonhoc> <TenNganh>Cụng nghệ thụng tin</TenNganh> <SoDVHT>3</SoDVHT> <MucDich>Mục đớch</MucDich> <YeuCau>Yờu cầu</YeuCau> <NoidungDC>Nội dung</NoidungDC> </DCMonhoc> <DCMonhoc id="1143663826">
<TenDCMonhoc>Khớ tượng Đại cương</TenDCMonhoc>
<TenMuc>
<Noidung>
text
<SoDVHT>4</SoDVHT>
<MucDich>Mục đớch</MucDich> <YeuCau>Yờu cầu</YeuCau>
<NoidungDC><span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">Nội dung<br
/></span></span></NoidungDC> </DCMonhoc>
<DCMonhoc id="1143703773">
<TenDCMonhoc>Tớnh toỏn Thuỷ văn</TenDCMonhoc> <TenNganh>Thuỷ văn</TenNganh> <SoDVHT>3</SoDVHT> <MucDich>Mục đớch</MucDich> <YeuCau>Yờu cầu</YeuCau> <NoidungDC>Nội dung.</NoidungDC> </DCMonhoc> <DCMonhoc id="1143703848">
<TenDCMonhoc>Địa lý mụi trường</TenDCMonhoc> <TenNganh>Mụi trường</TenNganh> <SoDVHT>3</SoDVHT> <MucDich>Mục đớch</MucDich> <YeuCau>Yờu cầu</YeuCau> <NoidungDC>Nội dung</NoidungDC> </DCMonhoc> </DanhSachDeCuong>
Nội dung file BaiGiang.xml l−u thông tin về nội dung bài giảng các môn học:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE DanhSachDeCuong SYSTEM "BaiGiang.dtd"> <DanhSachBaiGiang>
<BaiGiang id="1143663740">
<TenBaiGiang>Tin học cơ sở</TenDCMonhoc> <TenNganh>Cụng nghệ thụng tin</TenNganh> <TenHeDT>Cao đẳng</TenHeDT> <SoDVHT>3</SoDVHT> <NoidungBG> <Chuong id="1"> <TenChuong>Chương 1: Mở đầu</TenChuong> <NoidungChuong> <Bai id="1">
<TenBai>Bài 1: Thụng tin - Tin học</TenBai> <NoidungBai>
<Muc id="1">
<TenMuc>1.1. Khỏi niệm thụng tin</TenMuc> <NoidungMuc>
Nội dung mục 1.1 của bài 1 thuộc chương 1. </NoidungMuc> </Muc> ... </NoidungBai> </Bai> ... </NoidungChuong> </Chuong> ... </NoidungBG> </BaiGiang> ... </DanhSachBaiGiang>
b2. Thiết kế file .dtd
Tạo định nghĩa và khai báo DTD ngoại với tất cả các thành phần trong hai file .xml nêu trên.
Nội dung file DeCuong.dtd nh− sau:
<?xml version="1.0" encoding="utf-8"?> <!ELEMENT DanhSachDeCuong (DCMonhoc)*> <!ELEMENT DCMonhoc ( TenDCMonhoc, TenNganh, TenHeDT, SoDVHT, MucDich, YeuCau, NoidungDC)>
<!ELEMENT TenDCMonhoc (#PCDATA)> <!ELEMENT TenNganh (#PCDATA)> <!ELEMENT TenHeDT (#PCDATA)> <!ELEMENT SoDVHT (#PCDATA)> <!ELEMENT MucDich (#PCDATA)> <!ELEMENT YeuCau (#PCDATA)> <!ELEMENT NoidungDC (#PCDATA)>
Nội dung file BaiGiang.dtd nh− sau:
<?xml version="1.0" encoding="utf-8"?> <!ELEMENT DanhSachBaiGiang (BaiGiang)*> <!ELEMENT BaiGiang ( TenBaiGiang, TenNganh,
TenHeDT, SoDVHT, NoidungBG)>
<!ELEMENT TenBaiGiang (#PCDATA)> <!ELEMENT TenNganh (#PCDATA)> <!ELEMENT TenHeDT (#PCDATA)> <!ELEMENT SoDVHT (#PCDATA)> <!ELEMENT NoidungBG (Chuong)*>
<!ELEMENT Chuong (TenChuong, NoidungChuong)> <!ELEMENT TenChuong (#PCDATA)>
<!ELEMENT NoidungChuong (Bai)*>
<!ELEMENT Bai (TenBai, NoidungBai)> <!ELEMENT TenBai (#PCDATA)>
<!ELEMENT NoidungBai (Muc)*>
<!ELEMENT Muc (TenMuc, NoidungMuc)> <!ELEMENT TenMuc (#PCDATA)>
3.3.3. Một số giao diện ch−ơng trình
Hệ thống trợ giúp lập bài giảng có một số chức năng chính là: Soạn bài giảng, Soạn đề c−ơng môn học và Quản lý thành viên
a. Giao diện đăng nhập hệ thống
Hình 3.24: Giao diện đăng nhập hệ thống
Để có thể sử dụng hệ thống, ng−ời dùng phải khai báo tên truy cập và mật khẩu. Sau đó mới có thể thực hiện đ−ợc các chức năng của hệ thống.
b. Giao diện soạn mới đề c−ơng môn học
Hình 3.25: Giao diện soạn đề c−ơng mới
Khi ng−ời dùng chọn chức năng “Thêm đề c−ơng mới” sẽ xuất hiện giao diện này. Tên đề c−ơng môn học, Số ĐVHT, Mục đích, Yêu cầu đ−ợc soạn thảo trực tiếp từ bàn phím, còn Tên ngành học đ−ợc lựa chọn từ danh sách trải ra. Ng−ời dùng có thể thực hiện các thao tác soạn thảo và định dạng cho nội dung đề c−ơng môn học t−ơng tự trong trình soạn thảo văn bản Microsoft Word. Sau khi nhập xong các
thông tin này trong file DeCuong.xml và tên đề c−ơng sẽ xuất hiện trong giao diện chứa danh sách các đề c−ơng môn học.
c. Giao diện danh sách đề c−ơng
Hình 3.26: Giao diện danh sách đề c−ơng môn học
Tại đây, đ c hiện các thao
tác : X
ối với mỗi đề c−ơng môn học ng−ời dùng có thể thự
em đề c−ơng, Sửa đề c−ơng và Xóa đề c−ơng bằng cách nhấn chuột vào nút chức năng t−ơng ứng trong cột Thao tác
d. Giao diện danh sách bài giảng
Hình 3.27: Giao diện danh sách bài giảng
T−ơng tự nh− trong giao diện “Danh sách đề c−ơng”, tại giao diện “Danh sách bài giảng”, đối với mỗi bài giảng môn học ng−ời dùng cũng có thể thực hiện các thao tác Xem, Sửa và Xóa nội dung bài giảng đó bằng cách nhấn chuột vào nút t−ơng ứng trong cột Thao tác. Hơn nữa, do mỗi bài giảng đ−ợc cấu trúc thành từng ch−ơng, bài và mục nên trong cột Thao tác có thêm một nút thực hiện chức năng thêm ch−ơng mới trong nội dung bài giảng.
e. Giao diện danh sách ch−ơng và thêm ch−ơng mới
Hình 3.28: Giao diện danh sách ch−ơng và thêm ch−ơng mới
Tại đây, ng−ời dùng có thể soạn tên ch−ơng mới cho bài giảng và thực hiện thao tác soạn bài mới thuộc các ch−ơng đã có bằng cách nhấn chuột vào nút thực hiện chức năng thêm bài mới. Ngoài ra, ng−ời dùng cũng có thể thực hiện các thao tác Sửa và Xóa một ch−ơng đã có trong bài giảng.
T−ơng tự nh− vậy cũng có các giao diện danh sách bài và thêm bài mới, giao diện danh sách mục và thêm mục mới, cuối cùng là giao diện soạn nội dung mục.
f. Giao diện soạn thảo nội dung mục
Hình 3.29: Giao diện soạn nội dung mục mới
T−ơng tự trong giao diện soạn đề c−ơng mới, trong giao diện này, ng−ời dùng có thể soạn thảo nội dung một mục của một bài học đã có. Việc soạn thảo và định dạng đ−ợc thực hiện nh− trong trình soạn thảo văn bản Microsoft Word.
Kết luận
Qua quá trình thực hiện luận văn tốt nghiệp với đề tài “Nghiên cứu xây dựng Hệ thống Trợ giúp Lập bài giảng bằng Công nghệ H−ớng đối t−ợng và Ngôn ngữ XML” đã giúp cho em đạt đ−ợc những kết quả sau:
ắ Hiểu rõ hơn về qui trình phân tích thiết kế h−ớng đối t−ợng, từ đó áp dụng hiểu biết của mình để phân tích thiết kế Hệ thống Trợ giúp Lập bài giảng với sự trợ giúp của ngôn ngữ UML và công cụ Rational Rose.
ắ Đ−ợc tìm hiểu về XML, về việc khai thác và sử dụng XML để biểu diễn dữ liệu trên nền Web. Tuy đó chỉ là những vấn đề cơ bản nhất về XML nh−ng từ đó đã rút ra đ−ợc sự khác biệt của XML so với HTML cũng nh− một số −u điểm và nh−ợc điểm của XML.
ắ Thực hiện cài đặt thử nghiệm Hệ thống Trợ giúp Lập bài giảng bằng ngôn ngữ lập trình PHP rất mạnh hiện nay.
Tuy nhiên, do thời gian hạn chế nên ch−ơng trình thử nghiệm còn nhiều thiếu sót nh−:
ắ Khả năng soạn thảo cho ng−ời dùng còn hạn chế
ắ Giao diện ng−ời dùng ch−a thân thiện
ắ Cấu trúc ch−ơng trình và việc xử lý dữ liệu ch−a tối −u
ắ Chức năng bảo mật và an toàn dữ liệu ch−a tối −u H−ớng phát triển tiếp theo của đề tài:
ắ Tiếp tục tìm hiểu về XML, về những công cụ hỗ trợ trong XML và những ứng dụng XML trong thực tế
ắ Hoàn thiện chức năng bảo mật và an toàn dữ liệu
ắ Tăng tính tiện lợi cho ng−ời dùng khi soạn thảo đề c−ơng môn học hay nội dung bài giảng
Tμi liệu tham khảo Tiếng Việt
1. Nguyễn Văn Vỵ (2002), Phân tích thiết kế các hệ thống thông tin hiện đại, h−ớng cấu trúc – h−ớng đối t−ợng, NXB Thống kê, Hà Nội.
2. Đặng Văn Đức (2002), Phân tích thiết kế h−ớng đối t−ợng bằng UML, NXB Giáo dục, Hà Nội.
3. Ngô Trung Việt, Nguyễn Kim ánh (2003), Nhập môn kỹ nghệ phần mềm, NXB Khoa học và Kỹ thuật, Hà Nội.
4. Nguyễn Tuấn Huy (2003), Quá trình phát triển phần mềm thống nhất, NXB Thống kê, Hà Nội.
5. Nguyễn Ph−ơng Lan (2001), XML – nền tảng và ứng dụng, NXB Giáo dục, Hà Nội.
6. Phạm Hữu Khang (2005), Xây dựng ứng dụng Web bằng PHP và MySQL, NXB Mũi Cà Mau, TP Hồ Chí Minh.
Tiếng Anh
7. David Carlson (2001), Modeling XML applications with UML:practical e-
business applications, Addison-Wesley.
8. Michael C. Daconta, Leo J. Obrst, Kevin T. Smith (2003), The Semantic Web: A guide to the Future of XML, Web Services and Knowledge
Management, Wiley Publishing.
9. http://www.php.net/manual/en/funcref.php 10.http://www.w3.org/XML
11.http://agilemodeling.com/essays/agileModelingRUP.htm 12.http://www.revmedia.com/process_what_is_rup.php