Technology And Mobile Phone Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

Since the late 1990s, there have been increased interests in how information and communication technologies exploited (ICTs) such as the internet and mobile phones and who they are used in the society. However, the use of the mobile phone has become more common and multifaceted. Moreover, its significance as an instrument of the information society has been increased among citizens of all ages

Mobile phones are not only used for personal communication but also on the infrastructure of the information society, More and people are using mobile phones in Mauritius.Table1-1 below indicates substantial growth in usage.




Mobile cellular subscribers ('000)







Voting is a method for a group such as a meeting or an electorate to make a decision or express an opinion, often following discussions, debates, or election campaigns. In a representative government, voting commonly implies election: a way for an electorate to select among candidates for office. In politics voting is the method by which the electorate of a democracy appoints representatives in its government.[1]

Types Of Voting Systems

Traditional Voting System

E-Voting System

E-voting refers to any voting process where an electronic means is used to cast votes and count results. E-voting methods include optical-scan voting systems, specialized voting systems like DRE or direct recording electronic voting systems, punch cards, national IDs, the Internet, computer networks, and telephony systems.

Electronic voting is already in use in many countries worldwide, but others are still skeptic about its security and the authenticity of the votes.

Types of E-Voting

Direct Recording Electronic (DRE)

This is essentially voting through a computer. Here, a digital swipe-card, buttons or a touch screen will be used in order to make the choices. Here also all the list of candidates is in front of the voter and instead of marking on a piece of paper, voters can enter their vote electronically via touch screen or push-buttons. The votes are stored in a physical memory device which will be sent to a centralized voting station. Public network DRE voting systems can send the results after each voter has finished or by batches throughout the Election Day. Although the votes can be sent through the Internet, this is only used to speed up the rate of counting. The physical memory devices will still be used to verify the count.The benefit of this voting system is the speed in which results can be obtained because results are tabulated almost instantaneously.[2]


An optical scan voting system is an electronic voting system and uses an optical scanner to read marked paper ballots and tally the results.In this system the voter signs in at the polling station and then receives a paper ballot along with an appropriate approved device by the electoral commission. The voter then marks the appropriate position on the ballot. The names of the candidates may be printed on the actual ballot or on a sheet alongside the ballot. After marking the paper ballot, he/she feeds it in the ballot box. After the voting process terminated, the ballots are then counted by an optical scanning machine.[3]

Internet Voting

Internet voting, on the other hand, can be done in remote locations. This system has already been tested in overseas absentee voting of some countries. Estonia, for example, uses this type of e-voting system by providing voter passwords through the postal service or via a national ID equipped with a microchip.

Mark-sense voting

In this system the voter signs in at the polling station and then receives a paper ballot

along with an appropriate approved device by the electoral commission. The voter then marks

the appropriate position on the ballot. The names of the candidates may be printed on the actual


© Mr. D.Pereanen 2006 (University of Mauritius) 10

ballot or on a sheet alongside the ballot. After marking the paper ballot, he/she feeds it in the

ballot box. After the voting process terminated, the ballots are then counted by an optical

scanning machine. [REF02]

Punch card voting

Here voters enter their choices by making holes in the ballot cards. There are two types of

punch card systems, the Datavote and Votomatic systems. Datavote systems use a lever punch

tool to mark the ballot and Votomatic machines require the voter to punch out a perforated

rectangle from the card using a stylus. Till now the Datavote systems seem to be better due to the

easier use of the lever punch compared to the manual stylus. [REF02]

Internet voting

With this voting system, the voters would have to input their votes online via a web

interface. With internet voting, voters would need a computer and then go to the internet site

using a web browser. A suitable web interface should be displayed in which the voter should be

able to login so as to authenticate him/her. Afterwards a ballot form would be presented on the

screen on which the voter should be able to place his vote. This type of voting is mainly used for

private voting only. This is not suitable for general public elections as there is great demand for

security and privacy. There can be problems like malicious code, denial of service (DNS)

attacks, spoofing attacks. The Internet is so vast that, all these problems cannot be totally

eliminated and even traceable. This is why it is preferable to use this system for only small

purpose concerning a small group of people like in companies or any institutions whereby there

will be low probability of attacks to the system from hackers or any malicious users. [REF03]

Telephone voting

This type of voting is mainly used for quiz voting. Anyone just have to telephone a

specific phone number and then select their preference either by talking to another person on the

line and saying his/her selection or else by pressing the telephone buttons using a vocal menu

system. The main disadvantage here is of identifying the voter and also of preventing only one

vote per person. [REF04]

Types of Electronic Voting

Paper-based E-voting system

In a paper based e-voting system, a touchscreen is used in voting. After the voter has finished casting his votes, the unit prints out a hardcopy of the ballot which the voter has to pass to the election officer in charge so that it can be counted in a centralized location. The ballots will then be counted through optical-scan voting systems.

This system has the advantage of a paper trail as every person's votes are recorded on a piece of paper. However, holes that are not properly aligned in a punch card or stray marks on an optical-scan card may lead to a vote not being counted by the machine. Moreover, physical ballots can still be lost during or after transit to the counting stations.

Direct recording electronic systems

This is essentially voting through a computer. Here, a digital swipe-card, buttons or a touch screen will be used in order to make the choices. The votes are stored in a physical memory device which will be sent to a centralized voting station. Public network DRE voting systems can send the results after each voter has finished or by batches throughout the election day. Although the votes can be sent through the Internet, this is only used to speed up the rate of counting. The physical memory devices will still be used to verify the count.

The benefit of this voting system is the speed in which results can be obtained because results are tabulated almost instantaneously. This system also reduces the risk of mechanical error. Since voting is done through a computer, ballot appearance can also be modified to fit the needs of the voter. A voter with poor eyesight could, for example, use a ballot format with larger text. This system also helps the government save money by eliminating the need to print ballots.

Internet Voting

Internet voting, on the other hand, can be done in remote locations. This system has already been tested in overseas absentee voting of some countries. Estonia, for example, uses this type of e-voting system by providing voter passwords through the postal service or via a national ID equipped with a microchip.

Advantages of Electronic Voting

Electronic voting has many advantages over the traditional way of voting. Some of these advantages are lesser cost, faster tabulation of results, improved accessibility, greater accuracy, and lower risk of human and mechanical errors.

Advocates of e-voting point out that electronic voting can reduce election costs and increase civic participation by making the voting process more convenient. Critics maintain that without a paper trail, recounts are more difficult and electronic ballot manipulation, or even poorly-written programming code, could affect election results.

Sequoia is another leading company in United States

providing touch screen voting systems. It was one of the firstly

used E-voting systems in the presidential election of 2000 in

United States. It provides an easy way to understand ballot

design. It also enables blind voters to fulfill their duty by

providing these voters with an audio ballot facility. Hand

recounts are also possible by printing the ballots. [REF13]

Diebold is one of the leading company providing election

systems across the United States to assist voters during the

elections. The company is providing a touch screen election

system which provide voters with a new art of making votes. It

provides both an accurate and secured vote. It also has features

which enable blind and any other physically challenged voters to

vote which makes therefore a great leap made by Diebold in

IVotronic LS Voting System is developed by Election

Systems & Software. It has over 74.000 of its election system

installed worldwide. The iVotronic LS is another touch

screen voting system providing paperless ballot. It provides a

secure, accurate, and reliable voting solution that has been

proven in thousands of elections worldwide. The iVotronic LS

is offered with an optional Real Time Audit Log. The Real

Time Audit Log provides a immediate assurance and

confidence to a voter that his or her vote has been accurately

recorded. [REF14]

State of the Art Review

This section is about analyzing existing systems which are in the same field as the current

project in progress. The cons and flaws of the existing systems are analyzed so as to better

strengthen the proposed system. There are two existing E-Voting systems which have been

mentioned in section 2.2.3 namely Diebold, Sequoia which will be the systems under analysis in

this section. The researchers involved have focused mostly in finding flaws in the system as there

only concern was to find whether this system could be trusted and be used in an election.

3.1.1 Diebold Voting System

This review was made by Researchers of the University of Maryland found in the USA

on December 2002, the state itself where this system was put into operation. The researchers

were from the Computer Science Department and Department of Government and Politics. There

major findings about this system were as follows:

It was found that most voters appreciated the introduction of these new voting machines

and trusted them to accurately record their votes. But still some negative feedbacks were given.

A number of the voters were having concerns about these machines, many needed help to use

them, and technical problems with the machines also occurred. Voters who were not very ease

with technology had the most difficulty using the machines. Then after an assessment was done,

the results were as such:-

• Seven percent of voters found the touch screen voting machine was not easy to use whereas

the rest found it very easy to use.

• Nine percent of voters did not trust the touch screen voting machine, compared to with 91

percent who did. Only 70 percent trusted the mechanical lever or punch card system they

previously used.

• Three percent of voters reported encountering technical problems with the new machines.

• More than one-quarter of the voters who use computers once a month or less received

assistance using the voting machine.

• One-third of voters who have not attended college received assistance using the voting

machine. [REF15]

Sequoia Voting System

This review was made by consultants and Staff of the California Secretary of State's

Office of Voting Systems Technology Assessment (OVSTA) on February 22, 2006. There were

several flaws about the malfunction of the machine itself namely the main problem occurring

was that paper was jammed in the machine which therefore required manual intervention from

the election officers to solve this problem. The rest of their findings for this system are as


• There were a small number of instances requiring recalibration of the screen.

• The application was less than elegant.

• The "Print" button on several menu activities would not work. However, the report option

(printer icon) allows printed reports on all database items.

• The installation does not have a method to save reports to a file. If jurisdictions wish to do so

they need to add Adobe acrobat to capture file copies of reports.

• Sometimes the system crashes on certain events.

• A number of times during the exercise of the system, an abnormal end to the process were

experienced. It is unclear whether this was an artifact of the testing environment.

• Some of the function of the buttons such as the "Reset Printer" button was not even known to

the representatives of Sequoia who were assisting. [REF16]

Wireless Mobile Technologies


What is wap?

WAP specifies an application framework and network protocols for wireless devices such as mobile phones, pagers and personal digital assistants. WAP's specifications extend existing mobile networking technologies such as wireless networking standards and extend some Internet technologies such as XML, scripting and content formats.[2]

A typical WAP network consists of the following components:

User with WAP-enabled device


Application server

A typical scenario using WAP technology:

A user with a WAP device requests content from the application server.

The request reaches the gateway first, which does the protocol translation from WAP to HTTP and routes the HTTP request to the destination server.

The server returns WML output and adds HTTP headers to the gateway, depending upon whether dynamic or static pages are requested.

The gateway converts WML and HTTP to binary form to conserve bandwidth and returns a WAP response to the user.

The browser inside the WAP device interprets the WML and shows the contents.



General Packet Radio Service (GPRS) is a wireless technology that can be used on the GSM enabled devices and it operates at the speed of up to 171.12 Kb/s. GPRS technology provides the services like internet, web surfing, online shopping, SMS, MMS and email and push to talk over the cellular networks. 

GPRS is a value added service and it provides a wide range of bandwidth that's why it supports numerous high bandwidth services.  GPRS services are billed on the per KB/s data transfer basis.


EDGE is enhanced technology for 2G, 2.5 generation systems, GSM and GPRS networks. It is a modulation technique for GSM networks. An Enhanced DataRates for GSM Evolution (EDGE) is used to increase network capacity and data rates in mobile networks. GPRS can transfer data at rates of 115 kbps theoretically and up to 160 kbps on physical layer, where as EDGE/EGRPS can transfer up to 384 kbps on physical layer and 473.6 kbps theoretically.***


GSM technology was able to transfer circuit switched data over the network. The use of 3G technology is also able to transmit packet switch data efficiently at better and increased bandwidth. 3G mobile technologies proffers more advanced services to mobile users. It can help many multimedia services to function.

Compared to the previous technologies, 3G promises speeds ranging from 144 Kbps, which is 3 times faster compared to the traditional 56K dial-up modem connection up to 2.4 Mbps, which is very near cable-modem speed. The networks of 3G allows you to browse quickly through web pages, watch on-demand video programs, download and play music, videos and 3D games,watch streaming videos and music videos and have a video conference with others located on the other side of the plant.


Data Encryption

Data encryption refers to mathematical calculations and algorithmic schemes that transform plaintext into cyphertext, a form that is non-readable to unauthorized parties. The recipient of an encrypted message uses a key which triggers the algorithm mechanism to decrypt the data, transforming it to the original plaintext version.

Before the internet, data encryption was seldom used by the public as it was more of a military security tool. With the prevalence of online shopping, banking and other services, even basic home users are now aware of data encryption.

Types of Data Encryption

There are many different types of data encryption, but not all are reliable. In the beginning, 64-bit encryption was thought to be strong, but was proven wrong with the introduction of 128-bit solutions. AES (Advanced Encryption Standard) is the new standard and permits a maximum of 256-bits. In general, the stronger the computer, the better chance it has at breaking a data encryption scheme.

Data encryption schemes generally fall in two categories: symmetric and asymmetric. AES, DES and Blowfish use symmetric key algorithms. Each system uses a key which is shared among the sender and the recipient. This key has the ability to encrypt and decrypt the data. With asymmetric encryption such as Diffie-Hellman and RSA, a pair of keys is created and assigned: a private key and a public key. The public key can be known by anyone and used to encrypt data that will be sent to the owner. Once the message is encrypted, it can only be decrypted by the owner of the private key. Asymmetric encryption is said to be somewhat more secure than symmetric encryption as the private key is not to be shared.

Strong encryption like SSL (Secure Sockets Layer) and TLS (Transport Layer Security) will keep data private, but cannot always ensure security. Websites using this type of data encryption can be verified by checking the digital signature on their certificate, which should be validated by an approved CA (Certificate Authority).


As more users come to understand the internet's open nature and the dangers of web surfing, applying data encryption to common communications such as emailing and instant messaging is likely to become more popular. Without this security mechanism, information transferred over the internet can be easily captured and viewed by anyone listening. This critical data can be compromised in a number of ways, especially when stored in servers that might change hands over the years. When considering how detrimental crimes like are identity theft are on the rise, data encryption is well worth pursuing.


Symmetric Encryption Algorithm

A symmetric is a cryptographic algorithm that uses the same key for both encryption and decryption of data.

There are 2 types of symmetric ciphers namely Block cipher, Stream cipher. Plain text is broken in blocks of equal size and each block is encrypted one after the other in Block ciphers whereas stream ciphers, encryption is done one bit at a time and the can data cannot be divided into blocks.

DES (Data Encryption Standard)

Developed in the late 90's, DES is one of the most widely used encryption algorithm in the world. DES uses a key length of 64 bits of which 56 of which are used as a key. The remaining 8 bits are use for error correction


Blowfish was designed in 1993 and is considered as a faster algorithm than DES.Blowfish is freely available and used. It encryption key can range from 32 bits to 448 bits.


Twofish is an improvement to the Blowfish algorithm. It uses a 128-bit block cipher which accepts a variable-length key up to 256 bits. Twofish is considered to be highly secure and flexible able freely.

Asymmetric Encryption Algorithm

Asymmetric algorithms also known as Public-key cryptography are a types of encryption algorithms uses a pair of keys that encode and decode the text. One key is used to encrypt data into cipher text while the other one key decrypts it back into plaintext.

Asymmetric algorithms are not appropriate for encrypting large amounts of data since they tend to be slower than their symmetric counterparts.

MD5 (Message Digest 5)

MD5 is a widely used Hash function. MD5 takes as input a variable-length message and converts it into a 128 bit scrambled message.MD5 is commonly used in user authentication and MD5 checksum for data integrity.

Mobile Platform

Java Micro Edition

Java Platform Micro Edition (Java ME) is design to provide a robust and flexible environment for running application on devices ranging from mobile phone, TV setup box to printers. Java ME implements a profile. The most common one are MIDP and CLDC aimed essentially at mobile device.


Mobile Information Device Profile as its name suggest is design for mobile phone and includes API for various applications ranging from Personal Information Management (PIM) to Web Services. Currently two MIDP versions exist MIDP 1.0 and MIDP 2.0 with MIDP 3.0 in development. The different MIDP version indicates the API the mobile device will support. For example Mobile 3D Graphics API exist only for MIDP 2.0.


The Connected Limited Device Configuration (CLDC) contains a strict subset of the Java-class libraries, and is the minimum amount needed for a Java virtual machine to operate. A configuration provides the most basic set of libraries and virtual-machine features that must be present in each implementation of a J2ME environment. When coupled with one or more profiles, the Connected Limited Device Configuration gives developers a solid Java platform for creating applications for consumer and embedded devices.


Symbian is an operating system for mobile phone and smart phone devices owned by mobile phone vendor Nokia. The operating system comes with associated framework libraries to allow application development. Symbian OS can run on different hardware combinations and have supports for numerous mobile wireless technologies and protocols. Development of native Symbian OS application is usually done in C++. Symbian OS also provides support for J2ME, meaning that application developed on J2ME will also be able to run on Symbian OS.

Windows Mobile

Windows Mobile comes from Microsoft which is famous for their desktop operating system Windows. It is design for mobile and smart phones devices. Windows Mobile provides support for various API which bring extensibility to the device based on Windows Mobile.


The Blackberry OS is essentially used by RIM Blackberry smart phone devices. Blackberry is popular for its Push Mail functionality with allow its users to receive their email directly on their mobile phone as soon as it arrive on their inbox.


Android is an operating system for mobile devices such as mobile phones, tablet computers and netbooks. Developed by Google, it was based upon the Linux kernel and GNU software. A Linux-based system, Android uses a virtual machine that is engineered to enhance the hardware and memory resources in a mobile environment. Android is an open platform, so developers can create dynamic and rich applications for Android. According to ComScore Android has 13% share of the worldwide smartphone market as of July 2010.







Operating System





Blackberry OS

Mobile application development with Java

Nowadays most new mobile phones are able to run downloaded external applications, not just the ones preinstalled on the device by the manufacturer. These applications can be native applications for the device's own operating system or platform independent applications that are run special virtual machine (VM) software on the device.

Java is a multi-platform language that is made up of three versions. J2SE (Java 2 Standard Edition) is the version for desktop computers, J2ME (Java 2 Micro Edition) is a cut down version which runs on the majority of recent mobile phones which support Bluetooth, and J2EE (Java 2 Enterprise Edition) which is best suited for larger distributed applications.

*The Sun Java Wireless Toolkit is a state-of-the-art toolbox for developing wireless applications that are based on J2ME's Connected Limited Device Configuration (CLDC) and Mobile Information Device Profile (MIDP), and designed to run on cell phones, mainstream personal digital assistants, and other small mobile devices. The toolkit includes the emulation environments, performance optimization and tuning features, documentation, and examples that developers need to bring efficient and successful wireless applications to market quickly*Wiki


A list of Relational Database Management System is listed together with their properties and advantages.


My Structured Query Language is a relational database management system used extensively with web based application. MySQL runs as a server and provides simultaneous multiple user access to a number of database. Also MySQL is released under GNU General Public License which means it is open sourced and is platform independent. It provide for multiple storage engine, allowing user to choose the one that is most effective for each table in the application .


PostgreSQL is an object-relational database management system (ORDBMS) released under a BSD-style license and is thus making it free and open source software. PostgreSQL have support for PL/pgSQL scripting language which is quite similar to PL/SQL from Oracle. The scripting language allow for table manipulation and automated function.

Web Development Tools

In this section several server side scripting languages are analyzed. Server side languages are use to make the website dynamic by allowing response from server. A list of web development tools is listed together with their functions.


PHP, or Hypertext Preprocessor, is a widely used, general-purpose scripting language that was originally designed for web development, to produce dynamic web pages. It can be embedded into HTML and generally runs on a web server, which needs to be configured to process PHP code and create web page content from it. It can be deployed on most web servers and on almost every operating system and platform free of charge. PHP is installed on over 20 million websites and 1 million web servers


ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites, web applications and web services It was first released in January 2002 with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages (ASP) technology. ASP.NET is built on the Common Language Runtime (CLR), allowing programmers to write ASP.NET code using any supported .NET language.


JavaServer Pages (JSP) is a server side Java technology that allows software developers to create dynamically generated web pages, with HTML, XML, or other document types, in response to a Web client request to a Java Web Application container (server). Architecturally, JSP may be viewed as a high-level abstraction of Java servlets. JSP pages are loaded in the server and operated from a structured special installed Java server packet called a J2EE Web Application often packaged as a .war or .ear file archive

System Architectures

Client/Server Architecture

Client/Server Architecture is a network architecture in which each computer or process on the network is either a client or a server. This architecture is sometimes referred to as a two-tier network architecture with the server being the first tier and the client being the second tier. Typically, there is a "one server" to "many clients" relationship.

Often clients and servers communicate over a computer network on separate hardware, but both client and server may reside in the same system.


            All data stored at server

            Due to thin Client application less load on client.

            Easy to Implement Security.



            Clients are dependent on servers.

            All load transfer on Servers.

            Better bandwidth is required for server.

3 -Tier Architecture

3-Tier architecture refers to the architecture of an application that has at least 3 "logical" layers -- or parts -- that are separate. Each layer interacts with only the layer directly below, and has specific function that it is responsible for.

Presentation Layer (UI)

Presentation layer is where data is presented to the user or input is taken from the user. It contains all things that are visible to the user, the 'outside' of the system, such as screen layout and navigation.

Business Access Layer or Business Logic Layer

BAL contains business logic, validations or calculations related with the data, if needed. It controls an application's functionality by performing detailed processing.

Data Access Layer


DAL contains methods that helps business layer to connect the data and perform required action, might be returning data or manipulating data (insert, update, delete etc).

3-Tier Architecture Considerations:

Client program contains presentation logic only

Less resources needed for client workstation

No client modification if database location changes

Less code to distribute to client workstations

One server handles many client requests

More resources available for server program

Reduces data traffic on the network

Web Services

The term Web services describes a standardized way of integrating Web-based applications using the XML, SOAP, WSDL and UDDI open standards over an Internet protocol backbone. XML is used to tag the data, SOAP is used to transfer the data, WSDL is used for describing the services available and UDDI is used for listing what services are available. Used primarily as a means for businesses to communicate with each other and with clients, Web services allow organizations to communicate data without intimate knowledge of each other's IT systems behind the firewall.

Unlike traditional client/server models, Web services do not provide the user with a GUI. Web services instead share business logic, data and processes through a programmatic interface across a network. Developers can then add the Web service to a GUI (such as a Web page or an executable program) to offer specific functionality to users.

Web services allow different applications from different sources to communicate with each other without time-consuming custom coding, and because all communication is in XML, Web services are not tied to any one operating system or programming language. For example, Java can talk with Perl, Windows applications can talk with UNIX applications.

Web services do not require the use of browsers or HTML.

Web services are sometimes called application services.

[1]Voting [Online], Available From: [Accessed 2 September 2010]