A Framework for .NET Mobile-Based Application Services

: Problem statement: This study presents a .NET framework in the form of a course registration system, which is designed to facilitate the process of registration of courses at any educational institute. Approach: The study outlines the main concepts related to the analysis and design methodologies that had been applied. Results: The whole process, starting from the students’ login to the system till their requests were fulfilled, was presented. Conclusion: The implementation provides students with opportunities to communicate effectively with the registration system over the WAP. It also dramatically reduces the number of staff employed in the registration office.


INTRODUCTION
Over the past few years the world has exploded with new wireless devices, such as cell phones and Packet PCs, which enable users to browse the worldwide information for business or personal use at any time from any location (Imielinski and Badrinath, 1994;Lee et al., 2004). The new technology used nowadays is basically revolving around the use of mobile and Pocket PC applications around the world, especially in universities and schools.
Developing application for these wireless devices is challenging due to the following reasons: To support all types of mobiles devices, you must create one different application for each language. On the contrary, Microsoft has introduced a new platform for the development of mobile applications called: .NET Mobile. It uses the Microsoft Mobile Internet Tool kit (MMIT) that is embedded in Visual Studio. NET 2003. In this study, we outlined our design approach to .NET-based registration system and outlined how this system can provide efficient solutions to the existing registration problems. The application is an integrated university registration system based on .NET technologies. It enables students to: Register courses [add, drop, view registered courses]; generate an eprofile which includes the student's personal information and transcript; add chair to sections that were full; and calculates students' GPA. It also forecast a student's GPA using simulation techniques.

Related work:
Mobile-based applications in wireless environments receive a lot of attention in the past few years (Barbara, 1997;Dunham et al., 1997;Lee et al. 2004;Madria and Bhargava, 1998). However there are few studies on mobile-based. Net processing in wireless environments and nearly all of them are focused on processing of read-only transactions.
Microsoft Mobile Internet Toolkit (MMIT) extends the functionality of ASP.NET to easily target mobile devices using .NET technologies. Developers building mobile web applications can use the .NET framework services such as the XML web services. For building such application, Windows Server Internet Information Services (IIS) and the .NET framework will be needed.
There are a number of independent bodies started developing and creating Mobile-based platform. For example Counter Mind, 2012 created a product family that includes a server, a smart client and an application assembler. Any corporation that has mobile workers, such as field service technicians or healthcare professionals and needs the ability to rapidly develop or modify mobile applications targeted at specific vertical needs can use the platform. By developing its product on Microsoft Windows Mobile software, Countermind was able to build its product substantially faster than using Java-based tools and provide customers with a product that integrates easily into enterprise environments.
At present many types of mobile computing devices are available such as laptops, Personal Digital Assistants (PDA) and so on. The capacity of these mobile devices become more powerful and has more processing speed and longer operating time. One exciting thing about these new mobile devices is their ability to connect to the Internet and to execute web applications W3schools, 2008.
Combining with the expanding of the high-speed network like the Internet, mobile computing applications are growing rapidly (Le, 2001).
Once the web server & the mobile web application are deployed on the Internet, a Pocket PC can access the mobile web application by making an HTTP request to the web server. This will allow the Pocket PC to receive data directly from the web server. In the case of WAP access, the request must go through a WAP gateway to be translated into an HTTP request (Fig. 1). When using a.NET framework, both Pocket PCs and mobiles (using WAP) will be able to access the mobile web application.
In order to familiarize reader with .NET we start by defining .NET as a platform neutral framework. It provides a common set of class libraries, which can be accessed from any .NET based programming language. There will not be separate set of classes and libraries for each language. Once you know a .NET language, you can write code in any .NET language.
Applications of .NET have been used in the support of many systems worldwide. For example, the Croation Republic has used .NET mobile application in managing forests and forestlands. The system has been used to classify and enter data about woods in the forest, collect information about trees, such as what kind of wood, take measurements, quality checking which determines what it can be used for. The Croation forest system was developed for Mobile devices using Microsoft embedded visual Studio and is written in visual C++ for use on MS-DOS based devices. The system was ported on the pocket PC environment, running on 250 hand-held devices Counter Mind, 2012.
In their study (Lin and Shroff, 2004) study how to achieve the maximum capacity under delay constraints for large mobile wireless networks through the development of a systematic methodology for studying this problem in the asymptotic region when the number of nodes n in the network is large. Lin and Shroff (2004) first identify a number of key parameters for a large class of scheduling schemes and investigate the inherent tradeoffs among the capacity, the delay and the scheduling parameters. Their methodology can also be extended to incorporate additional scheduling constraints. It is a set of server-side web Forms Controls used to build applications for wireless mobile devices, like mobile phones and Pocket PCs. These controls produce different output for different devices by generating WML 1.1, HTML 3.2 or compact HTML (cHTML).
The architecture of the mobile web application consists of the following components: The above components are organized in layers as shown in Fig. 2.
The model uses similar architecture to the ISO.

Motivation and objectives:
Registration is a major issue in any student's university life in Bahrain University because of the high number of students being accepted each year and the limited available facilities. Noticeable advantages have been sensed from using online registration options. Yet, many limitations stand as obstacles in gaining the advantages perceived. These limitations include: The need of having a PC and Internet connection to be able to use the provided registration services; the places providing a PC and Internet connection in the university are limited; In many university labs the PCs are offline or not working.
Students who don't have access to the Internet during the registration period must attend early in the morning to get a number, which starts from one and extends to more than a thousand per day. Then students must wait for their number to be called to gain access to the registration counters. Once there, they are asked to provide the courses they need to register and indicate the required section. If the section is full they need to go through the cycle again or add a chair. Adding a chair needs different numbers and longer waiting queues.
The mentioned scenario causes a lot of frustration and waste of time and resources to both the staff and students. It also forces the university to incur high costs in covering this very-labor intensive process. In addition students can't receive their transcripts until they have returned back to campus.
Thus, the main aim in this research was to develop a new media where students can use the registration options more efficiently and effectively, by using Pocket PCs. The reason Pocket PCs were chosen were due to the facts that: • Pocket PCs allow the realization of reasonable access for all students • They are inexpensive and give wide software options • Provide ease of access and use through portability options. Can be used anywhere and anytime by anyone.

• Embedded within it the latest connection technologies such as Infrared, Bluetooth and GPRS
We believe as students, using mobile applications will give us better and more efficient use of our time and available university resources.
Analysis and design of the proposed system: This proposed system deals with all student affairs related to registration, addition, dropping courses and getting updates related to their current GPA and transcript through their mobile sets or Pocket PCs. The interface of the system consists of the following steps: • Entering the URL address • Verification of authentication • Choosing the needed service The above steps are presented in Fig. 3. As soon as verification has been granted, a set of services and facilities are open for the student to access.
When a student tries to add a course the following processes occur:

Fig. 3: Context level diagram
• If allowed, the student enters the course ID and the section • The system will then check whether the course is already registered in his/her current schedule, if not, it will continue to the next step otherwise it will prompt an error message • The course is checked for availability in the semester in question and, if valid, the system will lead to the next step else it will prompt an error message • The system will check if the course has already been taken and whether the student attained a higher grade than C. If so, it will prompt an error message, otherwise, it will go to the next step • If all is well, the system will check on prerequisites, if the prerequisites are fulfilled, it will continue to the next step, if not it will generate an error message • If the course section is not full the system will continue leading towards further steps, otherwise it will generate an error message If the schedule of the student does not contain any courses the system automatically adds the course(s) to his/her schedule, otherwise, it will go to the next step • If some courses, or their examination dates clash, or if more than two exams take place on the same date, the system will prompt an error message, otherwise, it will go to the next step • If the course section clashes with the timetable of the student's schedule, the system will prompt an error message; otherwise, it will add a course section to the schedule Figure 3 shows that student application services receive input from students. The input includes Students ID, Password, Course ID and Course Name, section, Old Password and other details. The most important input items are the student's ID and Password for verification purposes. Other items may be extracting from the database automatically.
The system issues a number of messages to the user. These messages may include registered courses, course section details, instructor details, error messages and add chair details.
The proposed components and flow charts are displayed in Fig. 4. For example, the add chair module checks the validity of courses and accordingly either issue an error message to users (students) otherwise the module checks other the applicability of other rules, such as the size of the requested section.
List of items of information is issued to students advising for the proper course of actions when a section is full or closed otherwise the process will be marked as successful.
The E-profile module, for example, as shown in Fig. 4 is responsible for dealing with issues related to GPA calculation process, GPA forecasting process, transcript viewing process and other personal information processes.
The system flowchart is translated into a more detailed context diagram that shows the related issues of the proposed system. The data flow diagram is shown in Fig. 5.
The broken lines in Fig. 5 indicate that there is no need to have input data. It can automatically deduce it from the system components. Figure 6 depicts the main steps URL request goes through. First, the request travels through the Internet then it is received by the IIS. Next, it is handheld by the .NET Framework and compiled by ASP.NET. After that, .NET Mobile handles any mobile device requirements and returns the page to the client.

Implementation and testing:
The system is composed of a number of interrelated components including: • Registered course viewing process • Add course(s) process • Drop course(s) process • E-profile process • Adviser details process • View transcript process • Calculate GPA process • Forecast GPA process • Personal information process The system provides students with opportunities that enable them to exercise their right over the WAP without being required to queuing in front of a staff desk in the registration office. It reduces times a student may waste traveling. It also reduces the pressure exercised on computer equipment.
Using .NET platform has a number of advantages to both communities: students and staffs. For students, the >NET platform expose them to practice and feel of the importance of technology in their daily life. For staffs, the .NET platform enforces them to update themselves using new technologies, plan their work carefully, utilize existing knowledge from previous experience and develop applications version by version.

RESULTS AND DISCUSSION
Performance: We measured the performance of our system by measuring the satisfaction of the system's users. A questionnaire has been designed, to capture users' opinion on the performance of the system. A random sample of 100 students has been conducted. About 80-90% of the students were satisfied with the system's performance regarding interface quality, design attractiveness, interaction tools (menus, submenus, buttons) and ease of use, interrogation and usability.
The majority of surveyed users state that the most interested functions are ads courses, viewing transcripts, viewing registered courses, GPA. The majority of users think that the service provider should enhance the band width of communication lines during the period of add and drop since this period is limited to only few days.

CONCLUSION
In conclusion, the study presents an overview of an emerging technology: .NET Mobile Applications. This will enable users to have a flexible and more efficient handling of daily issues without consuming a lot of time. The study also shows a general structure of our proposed .NET-based registration system. This system will reduce time spent by students queuing up during the registration period and reduces the pressure on the university's registration staff as well.
From our experience with .NET Mobile application services, we have realized the need to consider issues related to the security of the system. We are also studying the ability to incorporate online learning capabilities in the next version of .NET-based system.