Towards the Development of an M-Learning System: A New Stage to Enhance Higher Education

—With the availability of high bandwidth wireless channels such as 3G-telecommunication infrastructure and wireless LAN, mobile learning (M-learning) is becoming more feasible now. M-learning can be considered as an intersection of online learning and mobile computing. Through wireless devices (such as mobile telephones, Personal Digital Assistants - PDAs, tablet PC, and laptops) and wireless applications, M-learning supports an integrated access to Web content and services in education anytime and anywhere. This paper describes the analysis, design, architecture, and experimental development of "Wireless Course Management System (WCMS)", that provides a wireless access to course information content. The system allows the use of the wireless Web as a medium to administer, and deliver course content, to support wireless course management, tests and student wireless communications.


I. INTRODUCTION
The demand for mobile Internet access is driving the development of a new generation of wireless devices and wireless applications. To date, the greatest demand for WAP (Wireless Application Protocol) applications has been within the business world. As a result, real-time applications that can access corporate LANs, intranets, databases, email, and messaging applications are the first types of applications one might encounter as a wireless Internet user. The demand for WAP applications goes far beyond the corporate world. Real-time delivery of wireless content is a type of application that all users will find beneficial. Wireless users require and expect access to the Internet content and Web services similar to that of today's Internet users. The use of the Web as a learning environment is widespread today [4][5][6][7]. Several companies have already developed and offer online teaching environments-WebCT, BlackBoard, eCollege, and TopClass. Unfortunately, there are few wireless applications in the area of education and still there is no wireless support in the current online course management systems [8][9][10]. E-learning is already enhancing the way courses are taught at some universities, but mobile learning may soon be used to distribute content and course information to students [1][2][3].
Mobile learning (M-learning) can be considered as an intersection of online learning and mobile computing.
Through wireless devices (such as Web phones, PDAs, tablets, and wireless laptops) and wireless applications, M-learning supports an integrated access to Web content and services in education anytime and anywhere.
The WCMS prototype consisting of three main components, as shown in Figure 1: system interface, system application, and database management system (DBMS). The system interface layer handles how the client WAP browser interacts with the application. The system application layer handles authentication, course information content and course communication content delivery. The DBMS layer stores and manages the course information content (such as, course syllabus, materials, assignments, tutorial, labs, and grades), communication content (such as, SMS, email, useful links, student testing and grading), student and teacher profiles.
The paper is organized as follows: in section two we describe the M-learning network architecture, that includes the system architecture, the Wi-Fi network technology, and the system architecture scenario. In section three we introduce the analysis and design of the Wireless Course Management System, while in section four we describe the implementation issues of the Mlearning system. The paper is finally concluded in section five.

A. System Architecture
The M-learning system consists of three components as shown in Figure 2, the client, the server, and the DBMS. The system environment can be divided into two major blocks. The first one is the client side application, which developed by wireless programming languages such as, C#.NET, WML, and XML-based tools. The second block is the server application, which developed by ASP.NET, ASP.NET mobile controls, and C#.NET. It acts as a gateway between the database and the clients. The ASP.NET mobile controls render the appropriate markup (HTML, WML, cHTML, XHTML) while dealing with different screen sizes, orientations and device capabilities. The course information contents is stored and managed using Microsoft SQL Server database. The database and the server applications will run on Microsoft Windows 2003 Server.

B. The Wi-Fi Network Technology
A wireless network uses radio waves that communicate in two ways: a centralized network with access point, called infrastructure network and, a decentralized network without access point, called ad-hoc network. In an educational context as of the wireless network implementations to date, WiFi (Wireless Fidelity) technology is widely used in comparison to others wireless networks. So, in this paper, we'll focus on infrastructure WiFi network. A computer's wireless adapter converts the message or data to be sent into radio signals and transmits them using an antenna. The wireless access point that is already connected to an existing local area network (or directly to Internet) receives the incoming radio signal and decodes it. It forwards that information to the Internet or to any computer on the local network. The process also works backwards, with the access point or router receiving information from the Internet or destination computer, converting it into radio signals and sending it back to the source computer. The radio transmission happens at frequencies of 2.4 GHz or 5GHz, which is considerably higher than the frequencies used for cell phones, televisions etc. The higher frequency allows the signal to carry more data [11].

C. System Architecture Scenario
• To start building the proposed Web-based M-learning applications, we will need a Windows Server running Internet Information Services (IIS) and the .Net Framework. • The MS Mobile Internet Toolkit extends the functionality of the ASP.NET to easily target mobile devices using mobile Web Forms technology. We can use .NET framework services like XML Web Services, ADO.NET for data Access and the Common Language Runtime. • Once the Web server and the mobile Web application are deployed on the Internet. the wireless device that wants to access the mobile Web application will make an HTTP request to the Web server. • The HTTP request will be processed on the server in three main stages (Device capabilities, Mobile .aspx pages, and Mobile controls & device adapters generate display). The first process is identifying the The Machine.config file applies to all applications on the server and the web.config file applies to specific application. • The HTTP request from the wireless device contains the User Agent string, Header information and URL that is being requested. The User Agent string is matched against entries in the Machine.config file. • The URL from the HTTP request is then used to locate the corresponding mobile Web page which will have a .aspx file extension. • The first time that a ASPX page is accessed, the page will be compiled. The ASPX page will be send to the parser, once the page has been parsed it will be processed by the compiler. The compiled page is then stored in the Assemble Cache. The server then creates a new instance of the compiled page, and uses it to process the request. • Once the page has been compiled, the parsing and compiling steps do not need to be repeated for each request, the compiled page class can be reused, resulting in improved performance. • The device adapters associated with the requesting device and controls used on the page then generate the appropriate mark-up language, in this case HTML for wireless devices. • The HTML is then encapsulated in an HTTP response and returned to the requesting wireless device. • When a WML browser accesses the same mobile web application as the wireless device, it goes through the following steps. The WAP browser makes a WAP request to a WAP Gateway. Usually, these gateways are a service provided by wireless carriers. The WAP Gateway translates the WAP request to an HTTP request and passes it to the web server over the internet [12][13][14].
Clients Server

A. Wireless Course Content
We categorize the wireless course content, that used for instructors and students interaction, into two groups: (1) The wireless information content; and (2) The wireless interaction content: • The wireless information content: follows the traditional online course content, but course documents and materials will design by wireless infrastructure and deliver through wireless devices.
We identify the following wireless information contents: wireless syllabus, wireless schedule, wireless assignments, wireless labs, wireless course resources, and wireless tutorials. • The wireless interaction content: is highly depend on the type of the wireless device and micro browsers installed on these devices. We identify the following course interaction contents: wireless testing, wireless grades, useful links, SMS, and wireless e-mail.
The information and the interaction contents both are generated dynamically from the course database. To assess student knowledge and learning outcomes, we provide various types of wireless quiz and test items such as: multiple-choice, true/false, and matching. The design of the wireless grades application is based on a grades database table and the application capabilities allow the instructor to specify the grading methods, procedures, and grading formulas, enter and update grades. The students have instant access to their grades through a WAP phone or a PDA. The wireless testing automatically saves the student test grades in the grades database table.
All items of the wireless information content are designed as tree data structures. The nodes of such tree structures contain separate sections from the information item. For example, as shown in Figure 3, the wireless syllabus is designed with such sections (nodes) as instructor information, course description, Lab. session information, textbook, course topics, and grades distribution.
The node course content is a parent node for syllabus, course lectures, course assignments, course tutorial, Lab assignments, test/quiz, SMS, and useful link nodes. The tree data structure has been chosen because it provides an easy mechanism for the implementation of the wireless information content and makes it possible to implement its delivery on wireless devices through menus, small size windows and basic navigation.

B. M-Learning Database Design
The database management system, store the user login records, course information contents, student profiles, instructor profiles, course quizzes (questions/answers), and the student grades. The database accessed and managed using Microsoft SQL Server database. Figure 4, shows the basic Entity Relationship Diagram, that used for creating the database schema and the database tables of WCMS.

IV. M-LEARNING SYSTEM IMPLEMENTATION
To prove the functionality of the Wireless Course Management System, we have implemented several wireless applications as components of the M-learning system.  The system applications divided into two main parts: the student applications and the instructor applications.

A. The Student Applications
Student Login: a student accesses the M-learning system through the URL. The system should ask the student to login in first, as shown in Figure 5(a). Once the student has a valid login name (student ID) and a password, he/she can login to the system applications and choose a course from the list of courses in which the student enrolled, Figure 5(b). A student's unique key-login name is checked against a database of students' list. • Wireless Course Content: we have implemented several wireless programs as components of the wireless course content application, such as wireless course syllabus, course lectures, course assignments, course tutorial, Lab assignments, test/quiz, SMS, and useful links, as shown in Figure 5(c): • Wireless Course Syllabus: The wireless course syllabus home page (card) contains six distinct syllabus links: instructor information, course description, Lab session information, textbook, course topics, and grades distribution. The wireless course syllabus could be generated dynamically from the course data-  Figure 5(d, e) below shows the course syllabus navigation cards and its related course description card.
• Wireless Tests/Quizzes: The wireless student tests/quizzes application allows a test to be taken not just anytime, but anywhere through a wireless mobile device. The tests are generated dynamically on the Web server by ASP.NET code and are delivered by WML code and with timing constraints on the WAP device's micro-browser. When the student decides to save the test, it can be saved only once, and page caching is disabled, not allowing the cached cards to be used again. The selected answers are transferred from the micro-browser (WML code) back to the Web server (ASP.NET code) where they are checked against the correct answers (with weights) in the tests database table. The test score is calculated and displayed in the micro-browser using a separate WML card., as show in Figure 5(f).

B. The Instructor Applications
• Instructor Login: Before users (Instructors and TAs) are granted access to the WCMS, they must successfully login to the system. The user's accounts are associated with different levels of privileges. Using a login name and a password is the most common authentication method, as shown in Figure 6(a). The login program supplies two input text boxes on the wireless device for user name and password. Once the user enters a user name and a password, the data are sent to the Web server to check against the course database. The authentication program on the Web server opens a database connection and retrieves the user record. If the user input data matches a database record, the user is granted to access the WCMS, and the system displays a list of instructor' courses that teaching in this semester, as shown in Figure 6(b). Otherwise, an "invalid login" message is displayed, and the login page is displayed again.
• Wireless Course Management: The instructor (or TA) can login to a WCMS from any computer with Internet connection and work on the wireless course development, maintenance, updating, and monitoring.
The instructor can create course information content (wireless course syllabus, lectures, assignments, tutorials, labs, self tests/quizzes, SMS, and useful links) using the interface based on ASP and C#.NET forms (see Figure 6 (c, d). The teacher's responsibilities include upgrading the course content as required, monitoring the student progress, and creating and canceling student accounts.
The WCMS system administrator duties are similar to the duties of a traditional Course Management System (CMS) administrator. The main system administrator's responsibilities comprise user management, course management on the Web server, and course database maintenance. The system administrator sets up a course "template" in accordance with a professor's request or deletes courses. The system administrator opens, closes teacher's accounts, and adds or deletes students from the course database. V. CONCLUSION In this paper we presented the analysis, design, architecture, and experimental development of Wireless Course Management System. We have developed a prototype implementation of the WCMS and developed experiments with wireless course syllabus, lectures, assignments, tutorials, labs, self tests/quizzes, SMS, and useful links. A group of instructors and students tested the experimental software, and the feedbacks of both instructors and students were very positive and highly promising. With today's technologies, wireless educational system is basically possible to implement. The system allows the use of the wireless Web as a medium to administer, and deliver course content, to support wireless course management, tests and student wireless communications.