Using Microsoft’s ASP.NET Mobile Controls to Develop a Truly Usable Mobile Web Application Brendon Webber Supervisor: Dr. Greg Foster Submitted in part fulfilment of an Honours Degree in Computer Science at Rhodes University Computer Science Department, November 2003
82
Embed
Using Microsoft’s ASP.NET Mobile Controls to Develop a ... Writeup.pdf · Validation Controls 63 7.1.4. Calendar Control 63 7.1.5. Lack of Table Support 64 7.1.6. Hidden Links 64
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Using Microsoft’s ASP.NET Mobile Controls
to Develop a Truly Usable Mobile Web Application
Brendon Webber
Supervisor: Dr. Greg Foster
Submitted in part fulfilment of an
Honours Degree in Computer Science
at Rhodes University
Computer Science Department, November 2003
I
Acknowledgements
This year has been very enjoyable and has driven me to push myself to new levels. I could
safely say that I have learned more this year than any other year. This would not have been
possible were it not for the following people:
� Dr. Greg Foster, my supervisor. Greg has always been very approachable and
helpful. He has pushed me and helped keep me on track throughout the year.
Without him this project would not be half of what it has become. Thank you.
� My digs mates: Claire, Mike, Greg, GB and Jake. For always being there for me
when I wasn’t in the Labs, and for not disowning me for always being in the labs!
� My Mother, Janet Webber. For all the love, support and encouragement she has
given me, and for proofreading this project. I owe so much to her.
� To all the people that partook in the user testing, many thanks, the results were
constructive and imaginative.
� To the staff and students of the department for their constant support.
II
Abstract
The rapid advances in wireless communications technologies have lead to increases in
wireless data transfer. This, combined with the introduction of a host of powerful, web
enabled mobile devices, is placing new demands on Internet services that is not currently
sufficiently catered for. Even with the faster connections and more capable devices users
have been reluctant to use the Mobile Internet due to its lack of usability.
Thus usability if a primary focus of the Mobile Internet’s development. Catering for the
range of different devices that access mobile web applications is a major challenge. Tools
such as ASP.NET Mobile Controls, which form part of Microsoft’s .NET Framework, are
aiding developers in overcoming this challenge by providing a powerful tool for creating
mobile web applications without worrying about the markup language the requesting device
understands.
This project investigates the effectiveness of ASP.NET Mobile Controls in the development
of a usable mobile web application. To do this a mobile web application was constructed
using these tools and its usability was evaluated, then this application was enhanced to target
the Nokia 3650 phone while documenting the enhancements made. The usability was again
tested for the enhanced application. The usability is compared with guidelines outlined by
other authors.
Thus the work gives good grounding to evaluate the strong and weak points of ASP.NET
Mobile Controls and draws conclusions about its effectiveness in creating usable mobile web
applications. There are a few problems with ASP.NET Mobile Controls, but these can be
overcome and truly usable mobile web applications can be developed.
III
Contents
CHAPTER 1: OVERVIEW OF WIRELESS TECHNOLOGIES 1
1.1. Evolution of the Internet 1
1.1.1. The History of the Internet 1
1.1.2. The Development of the World Wide Web 1
1.1.3. The Birth and Growth of the Mobile Internet 2
1.1.4. Markets 3
1.1.4.1. Mobile Phone Markets 3
1.1.4.2. Mobile Internet Market 3
1.2. Current and Future Wireless Communication Technologies 4
1.2.1 Local Wireless Networks 4
1.2.2 Carrier Wireless Networks and Their Evolution 5
1.3. Overview of Microsoft .NET Development Tools 13
1.3.1. Microsoft Visual Studio .NET 13
1.3.2. Microsoft ASP.NET 13
1.3.3. Microsoft ADO.NET 14
1.3.4. Microsoft ASP.NET Mobile Controls 14
CHAPTER 2: INITIAL USER STUDY 15
2.1. Process 15
2.2. Results 15
2.2.1. Mobile Phone Brands 15
2.2.2. Mobile Internet Usage 16
2.2.3. Current Mobile Internet Usability 16
2.3. Conclusions From the Initial User Study 17
CHAPTER 3: BOOKIT FIRST VERSION 18
3.1. Project Objectives and Introduction 18
3.2. Description of the Mobile Web Application: BookIt 18
3.3. System Architecture 18
3.3.1. Development Environments 18
IV
3.3.2. Architectural Overview 19
3.4. System Design 20
3.5. Constructing the First Version of the BookIt Application 21
3.5.1. Methodology 21
3.5.2. Creating Controls Programmatically 23
3.5.2.1. BookIt: Manage Items 23
3.5.2.2. BookIt: Manage Bookings 25
3.5.3.3. Dynamically Creating Menus 27
3.6. Image Creation and Image Streaming 28
3.6.1. BookIt: View All Bookings 28
3.7. Other Design Issues 30
3.7.1. Clashes 30
3.8. Deployment Issues 31
3.8.1. Manual vs. Automated Deployment 31
3.8.2. Deploying BookIt 32
3.8.3. Issues with Deployment 32
3.9. BookIt First Version Results 32
3.9.1. Problems Encountered 33
3.9.1.1. The SelectionList Control 33
3.9.1.2. Link Layout 34
3.9.1.3. Validation Controls 35
CHAPTER 4: ENHANCED BOOKIT 36
4.1. Enhancing the Usability of the BookIt Application 36
4.1.1. View/Delete Bookings 36
4.1.2. Device Specific Checks 37
4.1.3. Fixing the Link Problem 37
4.1.4. Enhancing Date Selection for the Nokia 3650 37
4.1.4.1. The Calendar Control For Date Selection 37
4.1.4.2. Enhancing the Date Selection Process: 39
4.1.5. Main Menu Links 41
4.1.6. Making Username and Password Checks Ignore Case 41
4.2. Enhanced BookIt Results 42
V
4.2.1. Improvements: New Date Selection Process 42
4.2.1.1. Clicks 42
4.2.1.2. Speedup 42
4.2.1.3. Data Transfer 43
4.2.1.4. Other Improvements 43
4.2.2. Enhanced BookIt Screen Flow 45
CHAPTER 5: USABILITY EVALUATION COMPARISON 48
5.1. Process 48
5.1.1. Required Tasks 48
5.2. Desktop/Laptop Usability Results 48
5.3. Pocket PC Usability Results 50
5.4. Mobile Phone Usability Results 50
5.4.1. Mobile Phone User Expertise 50
5.4.2. BookIt: Login 51
5.4.3. BookIt: Change User Details 52
5.4.4. BookIt: Make Booking 52
5.4.5. View/Delete Bookings 54
5.4.6. General Considerations 55
5.4.6.1. The Nokia 3650 Keypad Limitations 55
5.4.7. User Comments 56
5.5. Usability Evaluation Conclusion 56
CHAPTER 6: USABILITY CONSIDERATIONS 58
6.1. Pace and Bandwidth 58
6.1.1. Testing Pace of Interaction 59
6.2. Context 60
6.3. Device Limitations 60
6.3.1. Screen Limitations 60
6.3.2. Input Limitations 61
6.4. Screen Flow 62
VI
CHAPTER 7: DISCUSSION 63
7.1. Problems Encountered with ASP.NET Mobile Controls 63
7.1.1. The SelectionList Control 63
7.1.2. Link Layout 63
7.1.3. Validation Controls 63
7.1.4. Calendar Control 63
7.1.5. Lack of Table Support 64
7.1.6. Hidden Links 64
7.2. Usability Discussion 64
CHAPTER 8: CONCLUSIONS AND POSSIBLE EXTENSIONS 65
8.1. Conclusions 65
8.1.1. Review 65
8.1.2. The Wireless Evolution 65
8.1.3. Usability Considerations 66
8.1.4. The Effectiveness of ASP.NET Mobile Controls 66
8.2. Possible Extensions 67
8.2.1. Support for More Devices 67
8.2.2. User Profiles and Prioritisation of Tasks 68
8.2.3. SMS Booking Ability 68
8.2.4. Utilising Web Services 68
8.2.5. Enabling Lecture Time Booking 69
REFERENCES 70
APPENDIX A: PROJECT POSTER 75
Chapter 1: Overview of Wireless Technologies Brendon Webber
1
Chapter 1: Overview of Wireless Technologies
1.1. Evolution of the Internet
1.1.1. The History of the Internet
The Internet gets its name from “Inter-nation Network” and though it does not have an
official naming date (Tanenbaum, 1996), its history begins in 1957 when the American
Department of Defence and the Defence Advanced Research Projects Agency (DARPA)
commissioned a group of scientists to develop a data communications network. (Beaumont,
1999).
The Internet is a collection of networks around the world that communicate with one another
through certain protocols. It has been created so that its design is independent of its
constituent networks and as such can evolve and change to accommodate the latest
technology. (Kahn, 1999).
Having been created by efforts from United States defence agencies as well as science and
education foundations the Internet has its foundations in the research and development
community. Recently, however, the Internet’s growth has been almost entirely driven by the
private sector and the Internet has come to play a vital role in the entire world’s economy
(Kahn, 1999). The Internet has become a part of the daily life of individuals, and is a
platform for online and offline business and communications. For example, purchases over
the Internet amounted to over US$ 600 billion in 2001. (Olive, 2002).
Over the past 30 years the speed of network lines has increased from 50 Kbps to more than 10
Gbps today. Users can access the Internet via dial up modem at 56 Kbps, Integrated Services
Digital Networks (ISDN) at 128 Kbps, Cable modems at 10 Mbps (shared) or over Digital
Subscriber lines at speeds up to 6 Mbps
1.1.2. The Development of the World Wide Web
In 1992 Berners-Lee developed an application to allow accessing of documents over different
machines, called “hypertext” which lead to the development of the World Wide Web (WWW)
(Beaumont, 1999). The introduction of the Mosaic browser in 1993 (later to become
Netscape in 1995) for the World Wide Web caused usage of the Internet to accelerate
dramatically.
Chapter 1: Overview of Wireless Technologies Brendon Webber
2
It is very difficult to determine the amount of users online, however, using sophisticated
measurement techniques Nua Internet Surveys have formulated an educated guess of the
numbers online and that number is 605.6 million. Africa contributes 6.31 million to the total,
of which South Africa contribute almost half at just over 3 million in December 2001. (Table
1.1).
Table 1.1: How Many Online (Nua Internet Surveys)
1.1.3. The Birth and Growth of the Mobile Internet
As the Internet started to reach such widespread acceptance users have placed new demands
on computing that fixed desktop connections cannot possibly provide. The advent of
extremely powerful laptop computers along with the massive arrival of a wide range of
smaller mobile computers and phones mean that traditional online services are becoming less
suitable to today’s modern user. In addition to this, the rapid growth of cellular
communications and other wireless services (such as Wireless Local Area Networks WLANS,
and Wireless Internet Access) have led to the decrease in the prices of these devices as well as
an increase in their demand (Kahn, 1999). Kahn (1999) believes that palm sized devices with
their wireless connection to the Internet will eventually dominate the market.
Many online content providers have made their pages accessible to mobile devices along with
standard desktop browsers (CGE&Y, 2001). Since these technologies will be packet based,
data transmission volumes will become the method for billing customers and staying
connected wherever one goes will become the norm. According to Kahn (1999), Speeds of up
to 1.5 Mb/s in the next decade seems destined for those who can afford it while speeds of 10
Mb/s are common place in the local wireless environment (WLANs) with speeds of 54 Mb/s
already in the marketplace.
Chapter 1: Overview of Wireless Technologies Brendon Webber
3
Thus the Internet will experience rapid expansion of a new breed of online user that
constantly change their geographical location and access services from a variety of devices,
each with different specifications and characteristics.
1.1.4. Markets
1.1.4.1. Mobile Phone Markets
According to MobileOffice.co.za (2003), in February 2003 there were 14.4 Million mobile
phone users in South Africa, with a potential amount of 19 Million by 2006. This is a market
that will experience massive growth in the near future. Thus it is important for developers to
create usable web applications in order to catch and keep prospective users.
1.1.4.2. Mobile Internet Market
“Mobile data growth was limited for reasons such as speed, security, coverage, ease of use
and cost” (Lucent Technologies, 2003). However, with the development of cutting edge 3G
technologies such as CDMA2000 (Code Devision Multiple Access 2000) and UMTS
(Universal Mobile Telecommunications System) the problems restricting the Mobile
Internet’s growth should be overcome as service providers meet user’s needs at a lower cost.
“Some ease of use challenges remain” (Lucent Technologies, 2003) indicating that in spite of
the advances in technology and communications speeds, the mobile Internet is not currently
easy to use. Excessively high expectations on technologies, and bad advertising in the
markets meant that WAP was very slow to take off and was a disappointment for most users
(Selian, 2000). “WAP usability fails miserably,” states Sigurdson (2001), but then he goes on
to state that “good user interface design can alleviate some of the problems.” This indicates
that usability is of high priority in this emerging market and gives good grounding for the
work covered in this project.
“mCommerce revenues worldwide in 2000 amounted to about $4 billion. By the end of 2005,
there will be almost 500 million users of mobile eCommerce who will generate more than
$200 billion in revenue” (CGE&Y, 2001). This prediction is staggering; with revenues
exploding by 50 times in 5 years there is clearly a prosperous future for the Mobile Internet.
Chapter 1: Overview of Wireless Technologies Brendon Webber
4
1.2. Current and Future Wireless Communication Technologies
There are numerous implementations of mobile data transfer technologies and they generally
fall under two categories, namely Local Wireless Networks and Carrier Wireless Networks.
1.2.1 Local Wireless Networks
Wireless Local Area Networks (WLANs) or Personal Area Network (PAN) provide LAN
connectivity over short distances, usually within a business building. Protocols such as IEEE
802.11 for WLANs and Bluetooth for PANs are used.
IEEE 802.11 protocol (WLANs):
An 802.11 LAN is based on a cellular architecture where the system is divided up into
cells, each of which is controlled by an Access Point*. Some WLANs can work without
an access point, however, most WLANs are made up of several cells controlled by access
points that are connected to the primary local area network backbone. The 802.11
protocol covers the Data Link and Physical layers, but performs some upper layer
functions such as Fragmentation, Packet Retransmission and Acknowledgments (Brenner,
1996). 802.11’s basic access method is the Carrier Sense Multiple Access with Collision
Avoidance (CSMA/CA). CSMA protocols are widely used in the industry, the most
popular being Ethernet using the CSMA/CD protocol (CD meaning Collision Detection).
These kinds of protocols are only effective when the medium is not heavily loaded.
Though Collision detection works well for wired LANs it is not suitable for wireless
LANs because Collision Detection would require the presence of a full-duplex radio link
which would increase the price significantly. Another reason is that sending stations
might not be able to hear each other and therefore would not detect the collision if there
were one at the receiver. For these reasons 802.11 uses Collision Avoidance which works
as follows: Stations still sense the medium and wait until it seems the medium is free.
Once the medium is free for a specified length of time the sending station will send, the
receiving station will check the CRC† of the received packet and return an
acknowledgment (ACK). If the sender does not receive the acknowledgment it will re-
send the fragment. It will repeat this until it receives an acknowledgement or until it has
made a certain amount of attempts. (Brenner, 1996).
Bluetooth (PANs):
* Access Points receive, buffer and transmit data between the wireless LAN and the wired network, supporting a group of wireless devices. Each access point and its users make up a cell. † Cyclic Redundancy Check: A method to detect and correct errors by adding bits derived from a block or string of bits to the block (NIST, 2002)
Chapter 1: Overview of Wireless Technologies Brendon Webber
5
Bluetooth is a much shorter distance technology that allows Bluetooth enabled devices to
talk with one another. It overcomes a few barriers that limit the user-friendliness of the
classical cable connection, Bluetooth is wireless and does not need any specific entries
and settings to establish communication. It operates at a frequency lying between 2.402
GHz and 2.480 GHz. Bluetooth utilises a frequency hopping technique with 1600 hops
per second to avoid vulnerability to eavesdropping and interference. It can reach speeds
of 1 Mbps of which 721 kbps are available for speech and data. Bluetooth is efficient
over distances of up to about 10m (class 2 modules), there is, however, a new
specification that should increase the range to almost 100m (class 1 modules), but with the
cost of increased power consumption. Due to its small size and very low power
consumption Bluetooth is commonly used to connect mobile phones to computers,
cordless headsets, motor vehicles and other appliances (Bluetooth, 2001).
1.2.2 Carrier Wireless Networks and Their Evolution
Cellular Communications:
This technology divides a service area into a number of smaller cells. As users travel from
cell to cell calls are transferred between stations using cellular switching mechanisms.
Cellular phones provide real-time, full duplex voice communications and can achieve speeds
of 20 Kbps. Because cellular is two-way and real-time it is suitable for data transfer and thus
for mobile web applications. Wireless carrier’s or service providers provide cellular services.
In South Africa there are three carrier services: Vodacom, MTN and Cell C. (Zhao, 2003).
These networks have been evolving and are classified into generations, with 3rd generation
networks beginning to emerge in the more advanced countries such as Japan. 2nd Generation
(2G) networks, such as GSM, were designed for voice and this technology will now share the
network and existing infrastructures with emerging 3rd Generation (3G) technologies, such as
GPRS, that concentrate more on data transfer (Girau et al, 2002).
1.2.3.1. 1G Networks
1G wireless cellular systems started appearing in the 1980s. Based on AMPS (Advanced
Mobile Phone Service) standard 1G networks were the first to use the concept of cells. They
Chapter 1: Overview of Wireless Technologies Brendon Webber
6
provided an analogue voice service but no data services. “The spectral efficiency* of 1G
networks was very low and the effective ‘energy/bit’ was high” leading to low battery life
(Silicon Press, 2002).
1.2.3.2. 2G Networks
Digital is used in 2G wireless networks for spectral efficiency rather than for digital services.
Several 2G standards are in use:
GSM: GSM stands for Global System for Mobile and is known as 2G (2nd Generation)
Digital. GSM is based on circuit switching technology and can achieve speeds of 9.6
Kbps. The GSM standard employ’s Time Division Multiple Access (TDMA) technology.
GSM is poor for data and Internet applications and was mainly aimed towards carrying
voice. A connection is established and the circuit switched connection lasts the entire
session, the time for which the user normally pays for. It is for this reason that a means
for transferring packet data over GSM was needed. Normally GSM operates in the 900
MHz or 1.8 GHz frequency bands. It divides up its 25 MHz wide frequency spectrum
using a combination of Time and Frequency Division Multiple Access (TDMA and
FDMA) which also form part of 2G networks. One of the most appealing features of
GSM is that it is considered to be secure. All speech and data communications are
encrypted to prevent eavesdropping and users are identified by a unique identity number
and authentication key held on a SIM card which also holds the algorithm. The SIM card
method of access to the network means that the user’s access is independent of the device
and users can simply rent devices and insert their SIM cards. (Selian, 2000).
TDMA is widely used in the western hemisphere and is a foundation for GSM. Bits of voice
are digitised and then transmitted on an individual channel to be reconstructed on the
other end and converted back into voice. Data is transmitted at up to 14.4Kbps. (Selian,
2000).
CDMA (Code Division Multiple Access) is a modulation and multiple access scheme that
uses digital encoding and spread spectrum techniques to let multiple users share the same
channel. It encodes each user’s signals uniquely by spreading the spectrum of their
signals across the frequency band so that each users signal is pseudo-orthogonal to each
other user’s signal (Algorex, 2000; Selian, 2000). CDMA has been known to increase
system capacity by more than three times when compared to TDMA. CDMA systems are
* Spectral Efficiency: The amount of useful information that can be transmitted over a given spectrum (bandwidth) over a given period of time.
Chapter 1: Overview of Wireless Technologies Brendon Webber
7
the most advanced 2nd generation technology and provide a more reliable error recovery.
(Selian, 2000).
The relationship between 2G and 3G networks is highly dependent on the migration process
between the two different generation networks which, in turn, is dependent on what type of
2G network formed the starting point. CDMA based systems point to CDMA2000 whereas
TDMA based systems (GSM inclusive) aim towards the W-CDMA (or UMTS) standard as
their 3G destination. CDMA based carriers believe their migration to 3G will be less
expensive than their GSM/TDMA counterparts since the change will only involve inserting
new channel cards into the base stations and updating the networking software. While the
GSM/TDMA’s route to 3G will require implementing an entire network overlay. (Selian,
2000).
South African service providers used GSM/TDMA for 2G so the cellular communications
networks migration from 2G to 3G is likely to follow the path indicated by Figure 1.1.
Figure 1.1. From GSM to 3G (Usha Communication Technology, 2000)
HSCSD:
HSCSD stands for High Speed Circuit Switched Data. It is possible to transmit
narrowband data and digital fax over GSM networks using the TDMA interface. The
methodology is similar to that of establishing a connection, like one would do with a
modem over a traditional landline (Selian, 2001). HSCSD concentrates up to four GSM
timeslots and can reach data transmission speeds of about 64 Kbps. Mobile terminals
supporting HSCSD are not currently available. Operators will need to decide whether
they will offer this service or skip it on their way to GPRS and true 3G networks. HSCSD
Chapter 1: Overview of Wireless Technologies Brendon Webber
8
is not an essential step on the way to EDGE and 3G networks and for this reason most
network operators have skipped it. (GPRS White Paper, 2000).
1.2.3.3. 2.5G Networks
2.5G networks are beginning to become the standard worldwide and were implemented in
South Africa during 2001 (iTouch, 2000). 2.5G systems (which are essentially GPRS
systems) are basically packet overlays on 2G, and are primarily a software upgrade of GSM
(Silicon Press, 2002). Both GSM and TDMA support GPRS (Mobile Streams, 2001).
GPRS:
GPRS stands for General Packet Radio Service and is a relatively new, non-voice service
that is being added to cellular telecommunications systems and form part of 3G networks.
GPRS is also known as 2.5G. It provides for the transmission of IP packets over existing
cellular networks thereby bringing the Internet to the mobile phone (Gilbert & Deshpande,
2002). It does this by overlaying a packet based air interface over the existing circuit
switched network. Data is split into separate but related packets, then transmitted and
reassembled on the receiving end. GPRS does not hold any channels for a specific length
of time, instead the users will share the resources and only use them when they actually
need to send or receive data (Mobile Streams, 2001). This is quite a big step for network
operators and many consider it a bigger step than from 2.5G to 3G. This is because
operators are changing from a time based service to a volume based service (Selian,
2000).
GPRS users will have instantaneous access to the Internet, without the need to dial up, and
will remain continuously connected until they log off, only paying for actual data they
transfer (Usha Communication Technology, 2000). Theoretically GPRS data speeds
should range from 14.4 kbps (with one radio timeslot) to 115 kbps (combining timeslots).
Practically speeds of 40 to 50 kbps are expected which will enable one to use truly
interactive web applications from ones mobile phone, for a reasonable price (Usha
Communication Technology, 2000). It is for these reasons that GPRS has been deployed
in many mobile communications networks today. However, with all these benefits of
GPRS there are still some drawbacks. Since GPRS packets are sent in all different
directions and need to be reassembled on the receiving end, it is likely that some of those
packets may get lost or corrupted, which is why GPRS incorporates data integrity and
retransmission strategies. This in turn may introduce transmission delays as packets need
Chapter 1: Overview of Wireless Technologies Brendon Webber
9
to be re-submitted to reconstruct the original data. This makes GPRS not suitable for
applications such as video streaming. HSCSD is more suited to for this since it is
characteristically an end to end connection and therefore there is less chance of having
transmission delays (Mobile Streams, 2001). In reality GPRS will be much slower than
documented and relatively high mobile data speeds might not be available to end users
until technologies such as EDGE or UMTS are employed in the network infrastructure.
(Mobile Streams, 2001)
EDGE:
EDGE stands for Enhanced Data for GSM Evolution (Usha Communication Technology,
2000) or Enhanced Data for Global Evolution (Chapman, 2003). Next in line on the way
to 3G, EDGE is considered to be between 2.5G and 3G. EDGE has been developed to
increase the bandwidth of GPRS and is expected to triple its capacity reaching speeds of
up to 384Kbps by combining 8 × 48 Kbps channels. However, analysts believe EDGE’s
indoor speeds “will drop outside the urban areas to 115 Kbps, and will achieve outdoor
speeds of 450-550 Kbps (Usha Communication Technology, 2000). EDGE was originally
developed as a cost effective way for operators to migrate to full-blown 3G networks.
EDGE is based on GPRS/GSM and does not change much of the core network. It
enhances data transfer by using a more advanced coding scheme enabling each timeslot to
carry more data. EDGE is also adaptive and will change its coding schemes as signal
changes, achieving much higher transfer speeds when signal is good. EDGE’s goal is to
enhance the current GSM radio carrier by changing the type of modulation used, whilst
still working concurrently with existing circuit and packet switching technologies (Selian,
2000). EDGE uses eight-phase-shift-keying (8 PSK) modulation, and since 8 PSK will be
used for UMTS, operators will have to incorporate it somewhere on the way to 3G
systems (Usha Communication Technology, 2000).
1.2.3.4. 3G Networks
3G is often referred to as IMT-2000 (International Mobile Telecommunications-2000),
WCDMA or UMTS. 3G is an ITU (International Telecommunications Union) scheme for
providing radio access to the global telecommunications infrastructure, “through both satellite
and terrestrial systems, servicing fixed and mobile users in public and private networks”
(GPRS White Paper, 2000). The global standard radio link between user’s terminals and the
operator’s network is likely to be WCDMA (Wideband Code Division Multiple Access).
Chapter 1: Overview of Wireless Technologies Brendon Webber
10
High data transfer speeds can be achieved in this way as several hundred channels can share a
single 5 MHz frequency corridor. Operators running GSM 1800 MHz networks will have an
advantage over those running GSM 900 MHz networks because the lower power and higher
frequency provide better coverage at UMTS frequencies (Selian, 2000). This means that Cell
C might have the advantage over Vodacom and MTN since they are the only operator in
South Africa that utilises the 1800 MHz frequency band.
Throughout the wireless evolution process, operators have only been able to offer a “best
effort” service. The same goes for 3G where high-quality services based on UMTS must bear
the limitation that data transmission may reach anywhere up to 2 Mbps. It seems that with
mobile, nothing is guaranteed. (Selian, 2000).
UMTS:
UMTS, which stands for Universal Mobile Telecommunications System, should
revolutionize mobile connectivity. UMTS is intended to provide data speeds and
protocols that will allow users, equipped with advanced handsets, to access the Internet,
watch movies, listen to music, transfer large files and participate in video conference calls
to and from locations of choice worldwide. Hosting all these different types of activities
requires a dynamic, flexible network. (Selian, 2000).
UMTS is the direct evolution of GPRS/GSM networks. UMTS can support both IP and
non-IP traffic using a number of methods including packets, circuit switching and virtual
circuits. The maximum speeds of 2 Mbps will probably drop to 384 Kbps for pedestrians
and 144 Kbps for moving vehicles. (Usha Communication Technology, 2000).
The most significant change is the introduction of the new UMTS terrestrial radio access
(UTRA) which is a WCDMA radio-interface for land communications. UTRA supports
both time division duplex (TDD) and frequency division duplex (FDD) which both offer
flexible and dynamic data rates of up to 2 Mbps. (Tektronix, 2003).
With the emerging 3G networks and mobile data transfer speeds constantly on the increase
there is plenty of room for new applications for the technology. The ability to make truly
interactive mobile web applications will be based on the abilities of the device and markup
language supported by the browser rather than the speed of the connection.
Chapter 1: Overview of Wireless Technologies Brendon Webber
11
1.2.4. Protocols and Markup Languages
Markup languages are sets of codes that define how a document is structured and can then be
used to specify how a document is rendered. Web pages are usually encoded with a set of
tags called Hypertext Markup Language (HTML). SGML is the parent language of HTML
and most other markup languages.
Standard Generalized Markup Language (SGML):
SGML texts are comprised of plain ASCII text and markup tags, which allow one to
create very structured documents. The tags are also ASCII characters and so no special
software is required to create a SGML file, all that is needed is a text editor. (Seaman,
2003)
Hypertext Markup Language (HTML):
HTML is the primary markup language of the World Wide Web. HTML has gone from
version 1.0 to 4.0. HTML documents are designed for on-screen viewing and user
interaction (Walker, 1998). HTML makes use of tags and specifies what each tag and
attribute means (and often how the text between them will look in a browser). In 1998
Walker believed that XML would replace HTML, however we now know that XHTML is
probably going to replace HTML (Heinicke, 2000).
Extensible Markup Language (XML):
XML is a simple, flexible text format that is beginning to play a very important role in
data exchange between applications on the Web and elsewhere (W3C, 2003). The most
important difference between HTML and XML is that XML is extensible, unlike HTML
where authors cannot add new features to the language. Like HTML, XML makes use of
tags, but XML uses tags only to delimit data and leaves the interpretation of the data to the
application that reads it. XML is a meta-language meaning that it is a language that is
used to describe other languages. In an XML document tag names convey meaning about
the data they contain and thus XML is ideal for data representation and storage. (CHM,
2002).
Extensible Hypertext Markup Language (XHTML):
In XHTML elements of HTML have been combined with XML 1.0 to make a single
language. HTML can easily be converted into XHTML (Heinicke, 2000). Some of the
main points about XHTML are: all tags are written in lowercase, every tag must have a
corresponding end tag, every attribute value must be in double quotes, nesting must be
correct and symmetrical and all markup must be well formed (Kaiser, 2001).
Chapter 1: Overview of Wireless Technologies Brendon Webber
12
Traditional markup languages are not suitable for mobile devices. Conventional HTML
carries support for advanced capabilities that modern day browsers such as Internet Explorer
6 (IE6) can exploit. Browsers such as IE6 make use of the rich set of capabilities that desktop
and laptop devices have such as large colour screens, 101 key keyboards, easy scroll mouses
etc. The browsers on mobile phones and other devices are restricted by the limited
capabilities of the device upon which they reside. To accommodate the limitations of a
charges) a special markup language, WML which is part of the WAP specification, has been
devised. Other languages designed for these smaller mobile devices are XHTML Basic,
XHTML Mobile Profile and Compact HTML (cHTML).
Wireless Access Protocol (WAP):
WAP is a widely marketed standard wireless protocol that was first published in 1998 by
the WAP Forum. WAP’s design accommodates an enormous range of wireless networks
including GSM. WAP uses a number of underlying transmission protocols to transfer
some markup language from the Internet to user’s devices, the most common language
being WML (Aldridge, 2000). There are many versions of WAP, the latest of which is
WAP 2.0. WAP 2.0 provides support for protocols such as IP, TCP and HTTP, which
enables wireless devices to utilise existing Internet technologies. The WAP 2.0
Application Environment has evolved to embrace developing standards for Internet
browser markup language. This has led to the definition of the XHTML Mobile Profile
(XHTMLMP). XHTMLMP is based on the modularity framework of the Extensible
HyperText Markup Language (XHTML) developed by the W3C to replace and enhance
the currently used HTML language common today. (WAP Forum, 2001).
Wireless Markup Language (WML):
WML is a markup language that allows text and graphics to be displayed on mobile
phones and certain PDAs*. WML is designed for the wireless web where the limitations
of small screens and few buttons make regular markup languages inappropriate. WML
acts as an XML application for mobile devices as XHTML is for Web browsers (CGE&Y,
2001). Where conventional web browsing consists of sites containing a number of pages,
handheld web browsing consists of decks containing a number of cards (Adams, 2001).
* Personal Digital Assistant - Handheld Computer
Chapter 1: Overview of Wireless Technologies Brendon Webber
13
XHTML Basic:
XHTML Basic was designed to enable the sharing of XHTML documents across multiple
communities of devices (e.g. desktops, televisions, and mobile phones). (W3C, 2000).
XHTML Mobile Profile (XHTMLMP):
XHTML Mobile Profile is a strict subset of XHTML that addresses the special
requirements of Web clients operating on resource-constrained devices such as mobile
phones. XHTML Mobile Profile extends XHTML Basic to enhance functionality for
authors such as additional presentation elements and support for internal style sheets.
(WAP Forum, 2001).
1.2.3.6. Other Technologies
i-mode:
i-mode uses compact HTML (cHTML) for delivery of content and packet switching to
sustain continuous connection at data transfer speeds of about 9.6 kbps. Developed in
Japan, but gaining acceptance in Europe, i-mode is by far the cheapest wireless access
service. (Aldridge, 2000).
1.3. Overview of Microsoft .NET Development Tools
1.3.1. Microsoft Visual Studio .NET
Microsoft’s Visual Studio .NET replaces their previous tools and incorporates many new
tools needed in today’s technology driven environment. .NET also provides a massive library
of pre-built components designed for re-use in applications. .NET incorporates many
languages including Visual Basic .NET, Visual C# .NET , Visual C++ .NET, and Visual J#
.NET (java) though there is little support for Java. Microsoft believes that .NET will be a
means to speed up and optimise the construction of XML-based web services and applications
and to serve these applications to a host of web enabled devices. (Rupley, 2002).
1.3.2. Microsoft ASP.NET
ASP.NET allows one to program web applications in any of the .NET Framework compatible
languages. ASP.NET also provides a method for the web programmer to truly separate
content from layout as one can use WebForms to display the user interface, and then use any
of the .NET Framework tools to build the programming back-end. In addition to this, the
Chapter 1: Overview of Wireless Technologies Brendon Webber
14
code making up an ASP.NET application is a compiled .NET program, and therefore it will
run faster than the equivalent ASP application. ASP.NET also makes use of an automated
caching model which caches pages that have already been compiled resulting in increased
performance. In addition to this, ASP.NET makes the issue of maintaining state simple
through the use of its automated state management system. (Watson et al, 2001)
1.3.3. Microsoft ADO.NET
The .NET Framework provides a specific set of objects within the System.Data
namespace that provide developers with a multitude of methods for easy access to data. All
together, these objects are known as ADO.NET (derived from ActiveX Data Objects).
(Watson et al, 2001).
ADO.NET sets itself apart from previous ADO implementations with its handling of
disconnected data stores and its interoperability with XML. ADO.NET provides namespaces
for SQL, Access, Oracle (.NET v 1.1) and any ODBC* data source where each namespace
contains many classes that can be used to access and manipulate data within their associated
data stores. (Markatos, 2003).
1.3.4. Microsoft ASP.NET Mobile Controls
ASP.NET Mobile Controls were previously known as Microsoft Mobile Internet Toolkit
(MMIT) with the first release of Visual Studio .NET (Landry, 2003). The controls are
available as part of the Microsoft .NET Framework 1.1 which can be downloaded free from
the Microsoft web site. ASP.NET Mobile Controls allows developers to develop web
applications accessible to many different devices including Pocket PC’s and mobile phones.
It does this by recognising the incoming device browser and then generating the appropriate
markup for that device. ASP.NET Mobile Controls supports hundreds of devices, though
emulators are seldom available for them. (Dragan, 2002).
* Open Database Connectivity: A standard for accessing different database systems. There are interfaces for Visual Basic, Visual C++, SQL and the ODBC driver pack contains drivers for the Access, Paradox, dBase, Text, Excel and Btrieve databases. (hyperdictionary, 2003).
Chapter 2: Initial User Study Brendon Webber
15
Chapter 2: Initial User Study
2.1. Process
Before development of the actual application began it was decided to ascertain users current
views of the mobile Internet and which devices were popular among these users. A
questionnaire was constructed and posted on the Web for prospective users to complete. The
questionnaire gathered information about user’s mobile phones, their knowledge of current
technologies (e.g. WAP and GPRS) and their experiences with using the mobile Internet.
2.2. Results
2.2.1. Mobile Phone Brands
Figure 2.6. Mobile Phone Brand Usage
Analysis of the 26 responses indicated that Nokia seem to have a large proportion of the
market share (Figure 2.6). The popularity of Nokia mean that it is important for web
applications to run smoothly on Nokia phones.
In addition to this, of the Nokia users, 30% of their phones are not WAP or GPRS enabled.
This number can be expected to diminish rapidly as new cell phones now have GPRS and
WAP capabilities. In addition, the survey indicated that the average turnaround period for a
mobile phone is just under 18 months, so in the near future every mobile phone user will be
able to connect to the Internet through their mobile phones.
Chapter 2: Initial User Study Brendon Webber
16
2.2.2. Mobile Internet Usage
Figure 2.7. Current and Possible Future Mobile Internet Usage
The survey indicated that the Mobile Internet is not being fully utilised, but many users would
like to use it (Figure 2.7). This indicates that soon, with more mobile phones being GPRS
enabled and with phone capabilities improving constantly, there will be a much larger
population of prospective users.
2.2.3. Current Mobile Internet Usability
Figure 2.8. User Evaluation of the Ease of Use of the Mobile Internet
Chapter 2: Initial User Study Brendon Webber
17
Of the seven users that had used the Mobile Internet, one can see that it is not currently easy
to use (Figure 2.8). The negative responses indicate the need for developers to construct
mobile web applications that increase usability for the user. Menus were rated the highest
with regards to usability, this is important to note as menus can be used in a variety of ways
from navigation to data entry and thus their usefulness and usability must be exploited during
design.
2.3. Conclusions From the Initial User Study
From these results one can see that Nokia is the most popular make of phone. For this reason
a Nokia was chosen as a target device for the project. Within the next few years virtually
every mobile phone will be GPRS enabled and users indicate that they would like to use the
Mobile Internet. This is evidence of a large prospective market for mobile web services in the
future. Users that had used the mobile Internet found it difficult to use. Thus one can deduce
that it is vital to produce easy to use mobile web applications in order to satisfy current and
future users.
Chapter 3: BookIt First Version Brendon Webber
18
Chapter 3: BookIt First Version
3.1. Project Objectives and Introduction
The overall objective of this project is to determine the effectiveness of Visual Studio .NET
and ASP.NET Mobile Controls in designing a usable mobile web application. This was
accomplished by constructing a mobile web application using these tools. The application
then underwent a usability evaluation before it was enhanced to optimise its usability on a
number of target devices. The steps taken during enhancement were recorded and
documented after which the usability of the enhanced version was evaluated.
This provides a good basis upon which to draw conclusions about the effectiveness of
Microsoft Visual Studio .NET and ASP.NET Mobile Controls in creating truly usable mobile
web applications.
3.2. Description of the Mobile Web Application: BookIt
For the purposes of this project a standard web bookings application was constructed for use
in the Hamilton building (which houses the dept of CS and IS) at Rhodes University. The
application was named BookIt and allows the Administrator to add categories to the system
and then to add items to those categories. The categories comprised of Venues (e.g. Staff
Room, Visitors Office etc.) and Equipment (e.g. Digital Camera, Video Camera etc.), though
the application could easily be set up using other categories and items. The Administrator
may also choose a starting time and ending time which will be the start and end times of the
day, and timeslot length into which the day will be divided. Then users that have been added
by the Administrator may book items during any available timeslot.
3.3. System Architecture
3.3.1. Development Environments
Visual Studio .NET together with ASP.NET Mobile Controls were chosen as a basis for
development of the project. Another notable option is that of SUN’s Java Mobile Web
solution J2ME. ADO.NET was used to access data located in a SQL Server database.
The host server ran Microsoft Internet Information Server (IIS) which supported the .NET
framework. Microsoft SQL Server 2003 was used as a database server to house the data for
the web application.
Chapter 3: BookIt First Version Brendon Webber
19
Three target devices were tested: The Desktop PC (using Internet Explorer 6.0 and Mozilla),
Compaq iPAQ H3660 Pocket PC (using Pocket Internet Explorer) and the Nokia 3650
(XHTML Mobile Profile/WML 1.3 browser).
3.3.2. Architectural Overview
Figure 2.1. Architectural Overview
The BookIt application resided on a web server named Beavis located in the Hamilton
Building. The web server is connected to a SQL Server that housed the BookIt database.
Users could access the BookIt application from any computer connected to the Internet, from
any PDA or Pocket PC connected to a wireless network connected to the Internet or from a
cell phone that connects, using GPRS, through a network operator (such as Vodacom) to the
Internet (Figure 2.1). The project was tested on desktop computers attached to the Internet, a
Pocket PC connected using 802.11 to the Hamilton WLAN and on a mobile phone connecting
to the Internet through the Vodacom network operator.
Once a mobile web application is deployed on a web server, a mobile phone or Pocket PC can
make a request to the web server for a mobile web page. The request will be made using
either WAP over GPRS or HSCSD (GPRS was used for testing) depending on phone and
network capabilities and how the user has decided to set up their connection. The phone will
issue a WAP request which will be translated into an HTTP request by the network operator’s
WAP Gateway (Figure 2.2). If 802.11 is used, say from a pocket PC, then the request is
simply an HTTP request. The request will then be forwarded to the appropriate web server.
Chapter 3: BookIt First Version Brendon Webber
20
Figure 2.2.Mobile Web Application Architecture
Figure 2.3. Rendering the Correct Markup Language
The server will determine the device and browser capabilities and render the requested page
in the appropriate markup language (Figure 2.3). It will then package the page into an HTTP
response and return it to the sender. If it was initially a WAP request then the network
operator will translate the HTTP response into a WAP response and return it to the requesting
device. In the case of 802.11 being used the HTTP response will simply be returned to the
device. (Mobile Web Application Architecture Tutorial, 2003).
3.4. System Design
The system was designed using object oriented design and programming practices. Wherever
possible objects were mapped to their real world counterparts. One object (the
Chapter 3: BookIt First Version Brendon Webber
21
DBController) controlled all access to the database and all other objects would have a
connection to this object so that they could access the data and populate their attributes. This
method of database access means that if the location or properties of the database were to
change one would only need to update the properties of the DBController class (Figure
2.4).
Figure 2.4. BookIt – Problem Domain Class Diagram
A relational database model was chosen and the data was normalised (Figure 2.5). One can
see that the tables in the relational model map closely to the objects in the class diagram.
Figure 2.5. BookIt – Database Relational Model
3.5. Constructing the First Version of the BookIt Application
3.5.1. Methodology
The BookIt application was constructed with no support to check which device and browser is
making the request for the page. However, attention was paid to the fact that it would be a
mobile device with minimal screen space, difficult input mechanisms and a slow connection.
Chapter 3: BookIt First Version Brendon Webber
22
Thus, attempts were made to minimise text lengths, limit data input via typing and minimise
clicks to get to a destination.
For example, if the user wishes to view their bookings they are given the option of whether
they want to view all bookings or to view specific bookings for an item. If the user has only
one booking they will be redirected straight to their booking. Similarly, if the user has many
bookings, but all for the same item, they will also be routed directly to view their bookings.
By contrast, if the user has many bookings for different items, they will be prompted to give
the category name and then the item name (Figure 3.1). Thus every effort is made to
minimise the amount of clicks the user takes to get to their final destination.
Figure 3.1. Minimising User Clicks: BookIt – View My Bookings Flowchart
User Input Required
Chapter 3: BookIt First Version Brendon Webber
23
3.5.2. Creating Controls Programmatically
3.5.2.1. BookIt: Manage Items
Administrators need a way of adding categories, and then items to those categories. Since
embedding a DataList control within a DataGrid control gives little control over the
embedded DataList, a dynamic table was created that would host the categories
horizontally with their items beneath them in columns.
A DynTable class was created that made the construction of the table relatively simple. The
developer could add text, buttons and tables to cells with little effort and build up a table that
they could tailor to their needs (Figure 3.2).
Figure 3.2 BookIt – DynTable Class
Then, by iterating through the categories and their items the DynTable class was used to
build up the Manage Item Table (Figure 3.3). All the contents of the Manage Item page were
Tanenbaum AS (1996). Computer Networks. Englewood Cliffs, New Jersy: Prentice Hall
Tektronix (2003). UMTS Protocols and Protocol Testing. The International Engineering Consortium (2003). http://www.iec.org/online/tutorials/acrobat/umts.pdf
References Brendon Webber
74
Usha Communications Technology, 2000. GPRS White Paper. Available online at:
http://www.mobilein.com/GPRS.pdf
W3C (2000). XHTML Basic. W3C Recommendation 19 December 2000.
http://www.w3.org/TR/xhtml-basic/xhtml-basic.pdf
W3C (2003). Extensible Markup Language (XML).
http://www.w3.org/XML/
WAP Forum (2001). XHTML Mobile Profile. Version 29-Oct-2001.