98
1 Campus WI-FI Mobile Application Mahesh Kumar February 2012 Dissertation submitted in partial fulfilment for the degree of Master of Science in Advanced Computing 1

1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

  • Upload
    vandan

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

1

Campus WI-FI Mobile Application

Mahesh Kumar

February 2012

Dissertation submitted in partial fulfilment for the degree of

Master of Science in Advanced Computing

Computing Science and Mathematics

University of Stirling

1

Page 2: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

2

Abstract

This project is developed to enhance the communication system in the university

environment between the university administration and students to provide a better

information services through Wi-Fi Technology. This project is implemented using distributed

network sharing system for students. The basic idea of creating campus information system via

WI-FI Technology to make sure that student can access the information anywhere within the

campus zone frequently.

This project presents a mobile application which is built using Mobile Information Device

Profile (MIDP) of the Java 2 Platform Micro Edition (J2ME).The objective is to provide an

interface where students can get the update/alert sent by the administrator on their mobile

phone which would be beneficial for students they only need a PDA or a java enabled mobile

phone.

The intellectual growth is not possible without a modern technology being used. But the

discrepancy exists between the types of technology used on campus and the technology that

can be used to facilitate learning experience. Utilizing campus applications technology is a

great prospective and would be useful in campus environment. The mobile device frees the

user from the physical size of laptops and desktops. The mobile application platform provides

users with wireless and mobile access to any business information system easily and securely.

The project was design using the well known open source technologies MYSQL and JSP,

SERVLET and J2ME.

Page 3: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

3

Attestation

I understand the nature of plagiarism, and I am aware of the University’s policy on this.

I certify that this dissertation reports original work by me during my University project except

for the following:

Few element of implementation part is taken from [9].

Signature Mahesh Kumar Date 03/02/12

Page 4: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

4

Acknowledgements

I would like to thanks my supervisor, Prof. Evan H. Magill and all of them who gave

much kind help and guidance on this project.

I lack a word to express my gratitude to all my lecturers and colleagues who have encouraged

me to this far, you will always remain fresh in my memory.

Page 5: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

5

Table of Contents

Abstract....................................................................................................................................1

Attestation................................................................................................................................2

Acknowledgements..................................................................................................................3

Table of Contents......................................................................................................................4

List of Figures............................................................................................................................6

1 Introduction........................................................................................................................7

1.1Background and Context................................................................................................7

1.2 Scope and Objectives.....................................................................................................8

1.3 Overview of Project ......................................................................................................9

2 State-of-The-Art.................................................................................................................10

2.1 Introduction ...........................................................................................................10

2.2 Requirement Gathering……......................................................................................10

2.3 Why Java for Mobile Application…….……………………………………………………….……….......15

2.4 Alternative Approaches…………. …………………….…………………………………………………...16

2.5 Reasons for choosing J2ME …………………….……………………………………………………….…....18

2.6 Similar Systems and Comparisons .................................................................................19

3 Problem Requirements.........................................................................................................23

3.1 Use Cases .......................................................................................................................23

3.2 Textual Descriptions .......................................................................................................23

3.3 Use Case Diagram for Administrator...............................................................................24

3.4 Use Case Diagram for Students …………………….………………………………………………….….....25

4 System Description and Implementation..............................................................................28

4.1 Technology in use...........................................................................................................28

4.2 Process model for Development.....................................................................................30

4.3 Implementing Mobile Application..................................................................................33

4.4 System Architecture........................................................................................................37

Page 6: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

6

4.5 Admin and user interface..............................................................................................38

4.2.1 Java ME MIDlet...........................................................................................................43

4.2.2 Emulator......................................................................................................................44

4.2.3 Java ME Issues.............................................................................................................44

5 Project design......................................................................................................................45

5.2 Design Considerations.............................................................................................46

5.3 Payment Idea in Existing System...................................................................................47

6 Data Structure......................................................................................................................48

6.1 Real Phone Environment................................................................................................52

6.2 Analysis...........................................................................................................................52

7 Conclusion.............................................................................................................................55

7.1 Summary...........................................................................................................................55

7.2 Evaluation.........................................................................................................................55

7.3 Limitation..........................................................................................................................57

7.4 Future Work......................................................................................................................58

References..................................................................................................................... .........60

Appendix 1..............................................................................................................................61

Appendix 2 – User guide.........................................................................................................63

Appendix 3 – Installation guide...............................................................................................64

Appendix 4 – Login Process....................................................................................................65

Appendix 4 – Add and View Resources..................................................................................66

Page 7: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

7

List of Figures

Figure 1. Wireless and Wired ……………………………………………………………………..………...14

Figure U1. Admin Use Case Diagram...................................................................................25

Figure U2. Student Use case Diagram.................................................................................27

Figure 2. System Architecture .........................................................................................37

Figure 4. Snapshot Sending Alert.....................................................................................38

Figure 5. Snapshot Alet Pop up........................................................................................39

Figure 6. Snapshot Message Recived ...............................................................................39

Figure 7. Snapshot New Query option..............................................................................40

Figure 8. SnapshotNew Query with message..................................................................40

Figure 9. Snapshot Post Reply..........................................................................................41

Figure 10. Snapshot Add Resource.....................................................................................41

Figure 11. Snapshot Resource Added.................................................................................42

Figure 13. MIDlet Life Cycle................................................................................................43

Figure 13.1 Payment Diagram..............................................................................................47

Figure 14 Database shapshot............................................................................................48

Figure 14.1 Course Table......................................................................................................49

Figure 14.2 Form Registration Table.....................................................................................49

Figure 14.3 Message Table...................................................................................................49

Figure 14.4 Posting Table......................................................................................................50

Figure 14.5 Resource Table...................................................................................................50

Figure 14.6 Student Table.....................................................................................................50

Figure 14.7 Unread Message Table......................................................................................51

Figure 14.8 User table..........................................................................................................51

Figure 15 Login diagram ...................................................................................................65

Figure 16 Add and view Resouces diagrame....................................................................66

Page 8: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

8

1 Introduction

1.1 Background and Context

Mobile applications are services (consist of software) that can be run on a mobile

device and perform tasks for the user of the mobile phone. The Campus Wi-Fi mobile

application is a new way to improve the communications system in campus environment

between the students and the university administration. The basic idea is to provide new

interaction method to the students through which they can get the latest news or updated

information on their mobile device within the campus zone (area) through wi-fi technology.

Mobile applications are very popular in global mobile market. There are quite a few

applications which are pre-installed on mobile device for example MMS(Multimedia

Messaging Service), SMS (Short Messaging Service), Browser whereas there are applications

which can be downloaded through wireless internet these applications are useful to make life

or work more comfortable for example weather application which provides all the latest

weather updates on mobile device. The above application also provides advanced features in

campus environment to the students. In terms of technical perspective mobile applications are

divided by the run time environment in which they are executed (i) Native platform and

operating system like Windows mobile and Linux, (ii) Mobile web browser like Mozilla/Firefox

and Opera Mini (iii) Managed platforms and virtual machine like Java / J2me (Java 2 Micro

Edition) .

Wi–Fi is a technology which allow electronic devices to share or exchange data wirelessly. The

desire to have a Wi-Fi mobile information system is a step forward towards next level to

improve the communications. This project focuses to develop mobile wi-fi information system

within the campus zone to enhance the communication between students and university

administration. The system will provide an interface where students will get all the information

from the administrator on their mobile device, Wi–Fi is very popular and most of the students

used Wi-Fi phones these days that’s why this application would be very useful. Student’s

needs a Java enabled mobile device with Wi-Fi to get benefit of this facility. The present day of

information system has pushed many organizations to demand secured reliable and flexible

mobile application information system.

Page 9: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

9

1.2 Scope and Objectives

This project is built for students and will provide information on campus zone

(area) to the students. For example, if tomorrow is the last date of submitting the

examination forms then administrator will send this as an alert to the students account. After

login in the account, the student will get the information about the latest alerts. Each message

is explicit to student profile, so the messages are only received by a user whom it is concerned

for.

Mobile Web applications enable users on the move to access on their hand held devices. The

various functions built in the project are as follows: Real time Alert and Update on the mobile

phone within the campus, Chat Facility “ Post Request “,Document Sharing , Event Forum

Registration.

Sometimes it’s real hard for a student to be on computer online every time and checking

updates from the University. This application will provide an interface where student can get

all the updates on their mobile device. Below are the Objectives of this project.

• This project act as service provider for Students for various campus activities.

• It acts as a new platform which can be used by the administrator to interact

with the students & vice versa.

• It should provide a new communication platform for interaction between

students & the university management.

• Students will get real time alerts & updates from admin department on their

mobile phones within the campus zone.

• Document sharing, important study materials or information documents can be

shared among the users by the management through the campus Wi-Fi

application.

• Administration can publish an event and student can register for that event via

their mobile device

Page 10: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

10

1.3 Overview of Dissertation

In this dissertation the new interesting and advanced approach is described to

enhance the information system between the students and Administration via Wi-Fi

technology. The concept of developing campus information via Wi-Fi technology is to make

sure students can access information at any time on ad-hoc basic.

We plan to provide functionalities like:

1) Alerts/Notification: - Alerts are to be send to all the students in the university.

For Eg: "If the practical lab/lecture is cancelled" then admin will send this as alert to all

students of the particular class. Now the students will get the alert on their mobile device, so

the counter in the application will be increase and the sound will be played (as we get the

message in the mobile phone).

2) Post Request: - If the student wants to ask questions or any enquiry to the administrator

(admin) then they can send this to admin and Admin can reply to that question by posting a

comment to that particular student, they can communicate through a chat window.

3) File Sharing: - In this section admin can also share the file, suppose assignment or its result

files will be uploaded in respective format. So from here students can download the file on

their mobile devices.

4) Forum or Event Registration: - In this admin can publish an event and send to student.

Students can view the Event and registered for that particular event through their mobile

device.

All the four main goal of this application are achieved successfully.

Page 11: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

11

2 State-of-The-Art

2.1 Introduction

Mobile applications design, implementation and deployment involve some technical

issues and ethical considerations. It is important to develop an application which works fast

and should be reliable. There are different platform to develop mobile application and J2ME

(Java 2 Micro Edition) is one of that which provide huge amount of features, we can run

application on emulator we don’t need to test the application on mobile device again and

again which become quite complicated sometimes .When we talk about Mobile application it

is important to think about both aspects of work for example Campus Wi- Fi application which

provides and ensures fast information service through Wi- Fi for the students within the

campus. So it important to keep the students prospective in mind as well before building such

application .As per the feedback from students with regards to such software, the students

would be happy to use, if the software is easy to use and reliable.

2.2 Requirement Gathering

Wireless Technology

In computing world wireless technology is used to describe telecommunication

through radio waves in other words when two or more electronic device established

connection or transfer information that are not physically connected. The two most common

types of wireless capabilities in computing world are Wi–Fi and Bluetooth. Bluetooth

technology is used to transfer information between two or more devices that are near to each

other, it is not suitable for full-scale network and doesn’t provide faster connection. One of

the best examples of wireless technology is mobile device. This technology allows users of

mobile device (which uses radio waves) to make a call from any location worldwide. Wi-fi

technology is used for wireless networking , for example if a laptop has Wi-Fi technology then

wireless card transmits to a wireless router and wireless network are connected to a network

DSL modem which allow internet access to anyone connected to wireless network. Wi-fi

Page 12: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

12

provides faster connection and better security. There are two modes of wireless networking

Ad – Hoc mode and Infrastructure mode. The above application provides services on Ad- hoc

mode.

Ad –Hoc Mode [13]

Ad-Hoc mode allows wireless devices to communicate directly to each other. The

wireless devices which work in ad-hoc mode within the range used to communicate in peer –

to – peer way without involving the access points they use broadband wireless routers. All the

wireless adapters on the ad-hoc mode should use the same SSID (Service Set Identification)

and the same channel number. SSID (Service Set Identification) is the name of Wireless Local

Area Network (WLAN), It is important in wireless communication all the wireless devices on

WLAN (wireless local network area) must use the same SSID to communicate with each other.

Sometimes when there are so many devices connected through the some router in this

situation performance becomes slower and large number of ad-hoc network becomes difficult

to handle.

Infrastructure Mode

Infrastructure mode in wireless networking joins (Bridges) a wireless network with the

wired Ethernet network in other word when the wireless clients connect to an access point

which in turns bridges to a network. In this mode wireless access point is must to have

wireless networking. To bridge the WLAN it is important that access point and the entire

wireless users must be configured with the same SSID (Service Set Identification). We can add

additional access point to the WLAN to increase the number of wireless users. Infrastructure

mode provides centralized security and much improved reach. The drawback of this mode is

for wireless networking is that it would cost more to buy additional access point hardware.

It is easy to set up connection in Ad-Hoc mode because it does not require an access point. On

the other side Infrastructure mode provides high performance of an access point to cover the

huge area. In Ad- Hoc mode as many devices connects the interference of the devices will go

up as they all are trying to use the same frequency channel.

Page 13: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

13

To begin developing an application in wireless technology it is important to study the

advantages and disadvantages of it. It is important to study the wired connection and why

wireless technology is future of networking. All these in details are mentioned below

Wired Connections [1]

Wired connection use Ethernet cables and network adapters. We can connect multiple

numbers of computers through cable. Wired system is also very important which uses router

to provide it services. The dial up connection provides connection through home phone but it

is very slow and used rarely.

Broadband also provide shared connections it allow us to use internet and home phone at

the same point of time this is very popular among the home users because of its high speed.

Basically we have an ADSL (Asymmetric digital subscriber line) router which is connected to

phone and we can connect our computers through cables from router to computer device on

which we want to use internet. Whether it’s a wired or wireless connection they both depend

on standard Internet Protocol and network operating system configuration options.

Advantages and disadvantages of wired connections are mentioned below.

Advantages:

• Quite cheap and easy to afford as compared to wireless.

• Most of the users use wired network because it is more reliable.

• It transfers the data faster without any interruption or connection failure.

• Wired connections are more secure as compared to wireless connection because it is

connected directly to router device which doesn’t allow unknown device to connect.

Page 14: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

14

Disadvantages:

• Wired connection connect through wires so it is difficult to use the network in single

place for example if u have wired network connection on laptop device you can use

that connection until that cable is connect to device , if you want to use the network

on traveling that’s not possible .

• It is possible if too many connections are connected trough one single wired router it

can slow down the speed. The most common type of wired network is an Ethernet

network.

• Wired network is not as flexible it can only use where we can have socket.

• It is more time consuming to set up and wired connection.

Wireless Connections

Wireless connections works through radio waves to make link to computers from

network. Wireless technology is an advanced version of wired network which is most popular

in universities and other big organization. Now day’s wireless connections are becoming more

popular amongst the home user as well. Because of its features and so much of competition in

world home users are able to get this service in fewer prices.

Below the figure 1 [2] shows layout of wired and wireless networks .The picture is seen from

Google give a view how both network systems look like .We can see wired network is

connected through a cable to normal Router 192.168.1 IP and establish connection. On the

right side of the figure there is a Wireless Router 192.168.1.2 which is connected to network

through radio waves it does not require any cable connection between devices who want to

access the network.

Page 15: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

15

Figure 1

Wireless network also have some advantages and disadvantages which are mentioned below

Advantages:

• No need of cable, there are few places where cables can’t reach .User is not limited

for any fixed position.

• Wireless network allows flexible number of devices to be connected in specific range

it depends on the Routers range.

• It is very easy to set up a wireless network. it’s a hassle free network.

• We can set up wireless network without Ad- Hoc network, which means we don’t

need to define an Access Point to establish network connections.

Page 16: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

16

Disadvantages

• Wireless network use radio waves for connection and connection failures are

frequent.

• It is less secure hackers can access the network easily as compare to wired

network.

• It does effect by surroundings wall blocking or far distance.

• Bit expensive as compare to wired network

We have discussed about the wired and wireless network it is important to know about the

technology that you are going to build an application described in section 2.2.1.

2.32.3 Why Java for Mobile Application [8]

The JVM (Java Virtual Machine) and Java API (Application Programming Interface)

makes the Java Platform. Therefore, the Java platform consist the following three

things

(J2SE) – (J2SE) – Java 2 Standard Edition. Java 2 Standard Edition. This is made for desktop systemThis is made for desktop system.

(J2EE) – (J2EE) – Java 2 Enterprise Edition (J2EEJava 2 Enterprise Edition (J2EE) is an excellent platform for multiple users.

It is based on J2SE and adds APIs (Application Programming Interface) for server side working.

(J2ME) – (J2ME) – Java 2 Micro Edition (Java 2 Micro Edition (J2ME) is a bundle of technologies that develop

applications for small mobile phones, and set-top boxes.

Why Java platform for this application:Why Java platform for this application:

Platform Independent:Platform Independent: Java is an open source language it means it’s a cross Java is an open source language it means it’s a cross

platform, Java application can run on different platform because java applicationplatform, Java application can run on different platform because java application

execute through a byte code by JVM (Java Virtual Machine) .Suppose if oneexecute through a byte code by JVM (Java Virtual Machine) .Suppose if one

machine is running on Windows and other is on Linux, single java application canmachine is running on Windows and other is on Linux, single java application can

Page 17: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

17

run on both machines because the byte code generated by the compiler can berun on both machines because the byte code generated by the compiler can be

read by any JVM (Java Virtual Machine) of any machineread by any JVM (Java Virtual Machine) of any machine

RobustRobust:: Because Java applications are managed by the byte code is verified

before execution, it must not crash in the face of unwanted behaviour. It will not

affect other sensitive applications or the data on the device.

SecureSecure:: The Java API (Application Programming Interface) provides a very

advanced security for Java application.

ObjectObject orientedoriented:: Java is an object-oriented language with too much of library

classes which is already exists. Java is a modern representation of C++where

everything is an object, and all object are part of one global class hierarchy.

Java code always executes within the JVM (Java Virtual Machine), and provides a safe

environment for execution. Java provides robust programming. The garbage collector

identifies the unused object that is no longer needed by a program so that their resources can

be reused and reclaimed . The Java exception handling mechanisms encourage developers to

build robust applications.

2.4 Alternative Approaches

There are different platform for mobile applications apart from J2ME (Java 2 Micro

Edition), Google Android, Apple IPhone are also very popular amongst the users. Android is a

Linux-based system developed by Google, which is basically target at mobile phones and other

small devices, Android is an operating system. Android gives Java-based development

platform for applications. Eclipse provides an interface to build Android application more

comfortably. Android Application is made of one or more activities which run in different

Linux processes.

Page 18: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

18

The major reason for building this application on J2ME (Java 2 Micro Edition) because of

background experience in the Java platform, however few elements which makes J2ME (Java

2 Micro Edition) application better then Android are discussed below.

• Unlike Java ME (Micro Edition) Android does not use java software environment. It

only reuses the Java language syntax but does not provide in built class libraries and

API (Application Programming Interface) bundled with Java SE (Standard Edition).

• J2ME (Java 2 Micro Edition) provide monitoring mechanism that allow user to

safeguard errors that comes in runtime.

• You cannot install or run Android application from, an SD card.

• Applications written on Java can run on different platform, but you can’t do this

Android application. Java is a computing language where Android is an Operating

System.

• J2ME applications are essential program it’s a stand-alone application, although it

uses different display technology due to resource constraint.

• J2ME (Java 2 Micro Edition ) promises advantages to mobile handset manufactures ,It

offers an opportunity to foster a large and prolific development community that could

delivered an value added functionality for their devices.

• J2ME (Java 2 Micro Edition) is more like a monolithic application where single

program does everything. Whereas Android is more like a component architecture.

The Apple IPhone is one of the most used and popular platforms. The IPhone is a reliable

device which provides a high end security. The IPhone is showing a failure rate of less than

1%. However, the IPhone lacks an official office suite. Open Office is an Open source

alternative. The IPhone currently does not have an application to encrypt stored data. The

IPhone is not compatible with Microsoft Exchange server that is one of the minus point of

IPhone app. Research says that the IPhone may be a great entertainment tool, but it lacks

characteristics that focus on a cooperate environment.

Page 19: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

19

2.5 Reasons for choosing J2ME or Java Me (Micro Edition)

J2ME (Java 2 Micro Edition) provides a strong development tool which greatly

helps J2ME (Java 2 Micro Edition) adoption among wireless application development, it is

more reliable and flexible for building mobile applications. J2ME (Java 2 Micro Edition)

provides easy interface that uses to build sophisticated application easily. J2ME (Java 2 Micro

Edition) applications can be built by developers who usually have good knowledge of java. It is

important to go through core java before developing such applications especially for new

developers

In J2ME (Java 2 Micro Edition) applications all the classes that are available in the class loaders

are verified to make sure that the applications are not performing unwanted operations. One

of the best advantages is the use of J2ME (Java 2 Micro Edition) platform for blackberry

application development helps in avoiding memory leaks. J2ME provide monitoring

mechanism that allow user to safeguard errors that comes in runtime. J2ME (Java 2 Micro

Edition) applications are very popular and used by huge amount of user and accepted by

almost every mobile phone organization.

The main reason for choosing J2me for campus information mobile application because it

provides not only user friendly interface but it also gives developer huge amount of options to

test new things, and most of the students use java enabled phone.

Page 20: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

20

2.6 Similar Systems and Comparisons

Blackboard Learning System (WebCT)

One of the similar systems to dissertation is Blackboard Learning System

(WebCT). They are dedicated to develop and implement new technologies that enhance every

aspect of education. They are developing comprehensive learning and teaching solution which

is flexible and simple to make sure it is easy to use for the students and teachers. WebCT is a

web based application it’s not a mobile application. Blackboard learning System is a huge

application which consists to many functionalities and information’s for the students. It is

customizable students can change the layout according to his or her need, colour of the

background and the channels (the content you want to display in blackboard) for example

Campus Announcements, My Grades, and Personal Bookmarks. It has course lists where

student can access the entire course modules and their content, University administration

(Teachers) can reuse learning objects and track how learning object is used. It has section

called My Learning which consists all learning and training opportunities available to the

students and the staff.

As an administrator in WebCT, admin can view class lists in different formats and enter the

grades of exam paper or assignment manually and student can view the final grade after login

to WebCT. It also provides calendar facility so the student can see when the assignment is due

or when to give test. Admin can give online quiz and these are available to students.

For Students WebCT provide huge number of facilities to work with. The Campus

Announcements board allows students of the particular course to communicate with each

other. It also provides email facility to students to communicate with other students and

teachers. The chat facility provides real-time communication options for the students they can

chat to other online students. WebCT provide self evaluation section which can be added as a

note within any course module in this section students have multiple choice questions that are

automatically scored by the program. These can help students to test their learning

throughout their module. There are online quiz and the score on each quiz can be posted for

Page 21: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

21

the students to view. There is a section called Web Link where students can view all the

helpful links which is helpful for studies.

Blackboard Mobile Learn [14]

Blackboard mobile is a podium for bringing dynamic learning, teaching and campus

experience to the mobile device. Blackboard Mobile Learn application allow students and

teachers to access their course content, students can view their grades. User (Student) can

access documents in multiple formats and upload media as attachments to discussion board

and blogs. Instructor (faculty) can post announcements for example if any assignment is due

or class is cancelled he can post the news and student have instant access to the latest news.

There is a function called task which helps students to track and manage the progress of

various tasks. This Blackboard Learn mobile application is available in some places (In US

Puerto Rico and US Virgin Islands) over wi-fi with no cost and this application can be accessed

in variety of devices including IPhone, Android, and Blackberry.

Blackboard Learning System (WebCT) and Campus Wi-Fi Comparisons

Campus Wi-Fi application promises to provide the services frequently, the strategy is to

deliver the best learning tools to enhance the learning and information system, So the aim is

similar in both applications however WebCT is a huge application which consist to many

functionalities to provide dynamic learning information management. The main difference

between both applications is that Campus Wi-Fi mobile application works through Wi-Fi

technology and Blackboard Learning System provide all facilities over internet.

Both applications are developed on java platform however their goals are similar but both

applications are different WebCT is a web based application and Campus wi-fi is a mobile

application. WebCT is highly customizable on the other side campus wi-fi application is not

customizable. The four main objective of campus wi-fi application 1) Alert and notification 2)

Post request 3) File sharing 4) Forms or Event Registration also exists in WebCT. Administrator

can send an alert message via email to students and students can reply to that mail. It has a

chat facility however it is quite broad, where student can not only chat with teaching staff but

also with other online students. In WebCT students can view their assignments and results

similar to campus wi-fi application however student can’t submit their assignments on

Page 22: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

22

Campus Wi-Fi application but in WebCT they can submit their assignments. It also has a

section called Campus announcement which alerts students for upcoming event or latest

news. WebCT consist timed online quiz or surveys and self assessments whereas Campus wi-fi

application does not have these functionality. WebCT can be accessed through any web

browser, like Mozilla /Firefox or Internet Explorer, Additional plug-in might be required to view

the media files on the other hand campus wi-fi application can be accessed on java enabled

mobile device.

After reviewing both WebCT and Campus Wi-Fi. I came to realize both of these tools provide

similar functionalities however WebCT is highly broad and huge application so it consist larger

number of functionalities .However campus wi-fi application is not that huge as compare to

WebCT but it promises to give facility over the mobile device through wi-fi it means from

student prospective they don’t need to start the laptop or computer to access the services

they can just login through mobile device and get access all the services or information’s.

However Campus wi-fi is restrictive because it is only available in campus zone because it

needs a campus wireless network to get access so only those students who are in the range of

campus wi-fi network can access this application. On the other side WebCT can be accessed

from anywhere, where internet connections are available. Both tools are user friendly.

Overall both tools (applications) promises to provide best services for enhancing the

information system for any Institution or University both have their own way of providing such

services it would be bit unfair to compare campus mobile Wi-Fi application to WebCT because

WebCT is such a larger application which also offers professional development and training

support and consulting services. In the end I would like to add that if a campus wi-fi mobile

application consist few more of the functionalities which WebCT have then it would be a great

plus (advantage) for students.

Page 23: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

23

Blackboard Mobile Learn and Campus Wi-Fi Comparisons

Blackboard mobile Learn and Campus wi-fi mobile application are quite similar to

each other in terms of services they provide. Blackboard Mobile Learn have a function called

announcements where faculty can make announcements to notify students, on the other

hand Campus wi-fi mobile application consist a function called alert to notify students about

any latest news .Students can view their grades in both application however the way is

different in Blackboard Mobile Learn students can view their grades just clicking on grades

section , In Campus wi-fi mobile application administrator upload all the results or grades ( all

students ) in respective format .pdf or word document then student have to download that file

to see the grades .There is interesting function called Tasks which help students to track and

manage the progress of various tasks , Campus wi-fi doesn’t have such functionality.

Blackboard Learn application have a section called Discussions where students can ask

questions and answers them to the instructors and he can respond to students for the benefit

of all , In this dissertation same functionality has been given in a post request section where

student can ask and get a answer from administrator like a chat box . Campus wi-fi application

have a function called Forum (Event Registration) where admin can post a university event and

students can register themselves for the event through their mobile device,BlackboardMobile

Learn app doesn’t not have this functionality . After going through each tool of applications

I can say that both applications are promises to provide similar functionalities to students and

user friendly environment, where Campus wi-fi is only build for java enabled device and

Blackboard Learn is available for variety of devices like IPhone , Android . It would be good

idea to extend Campus wi-fi with some more functionality and build in other platforms as well.

Page 24: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

24

3 Problem Requirements

3.1 Use cases

The basic requirements for this dissertation are to build a system where Administrator

can communicate to students and they can get all the information on their mobile device. The

aim to build a mobile application which will provide facilities through wi-fi technology in the

campus environment. Students will be able to get the alerts from admin department and they

can ask any queries or questions to administrator and get a response on their mobile device.

Student can see their results and download assignments on their mobile device. Student can

register themselves for latest events. Other functionalities may be added in future to enhance

the application.

The main users of this application are the students.

3.2 Textual Descriptions

The textual description for the use case for the users is outlined below:

a. Student

As a Student, you can do the following:

New query

This is where each registered user can ask any questions to administrator. If a

student wants to know the fee of sports membership he can just write his query and

he will get his answer. It’s like a chat window where admin can respond quickly to any

question of students.

Login into Campus wi-fi system in mobile device using your login details

The login panel allows students to access the application. Student can get there

login details from Administrator.

Inbox

In this section student can see the alert send by the administrator.

Your Post

This section is related to new query where student get the answer of his question

like a chat window and allow user to ask multiple questions to administrator.

Page 25: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

25

Event

This section provides a facility to students where they can view the upcoming

university events and register themselves for events posted by the administrator.

Get Resources

This section allow user to see the uploaded file from the administrator, it can the

assignment or the results of assignment (.pdf .doc or any other respective

file) .Student can view the file in default browser or he can download in mobile device.

b. Administrator

The administrator has access to the admin panel to manage the web contents, but not

limited to the following as more will be added in the future works.

Manage Student

This allow administrator to add users and manage their existence users

Form Master

This section allows admin to post a university event with the expiry date so the

student get to know this event is still available for them.

Registration

This section allows Admin to see all the registered students for the events.

Manage Message

This allows the administrator to send alert message to student. Administrator can

determine a type of message it relates to and he can send this alert as all students

or to a single student.

Manage Student Post

This allows administrator to give answer of the students question or query it’s

like a chat window where administrator can respond to multiple questions asked

by the student.

Manage Resources

This section allows administrator to upload assignment or results in respective

format.

Page 26: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

26

3.3 Use Case Diagram for Administrator

Figure U 1

The use case diagram for Administrator (Admin) is shown on figure U 1. It shows Admin can

login to campus Wi-Fi through his username and password. In the Admin page Administrator

can add /update student details and can define password for the students. He can send

alert/update messages to students, post event and can reply to new query which is send by

the student .He can add the resources which can be downloaded by student as shown on

figure U2.

Admin

Login

Add/Update Student

Send Alert/Update

Post Event

Query Posting

Add Resources

Page 27: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

27

All these functionalities are only accessible to Administrator as show in the use diagram above.

Use cases are very useful before making an application developer get to know about the

structure and functionality of the application. It also provides an idea about which objects are

required and what would the flow of the application.

Page 28: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

28

3.4 Use Case for Students

Figure U 2

The use case diagram for the Students is shown above in figure U2. IT shows Students can

login provided with the password. He can view alert messages can post a new query to

Administrator. Students can view or download resources and he can also make event

registration. These are the functionalities which is available to student.

Students

Login

View Message

Post new Query

View/download

Resources

Event Registration

Page 29: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

29

4 System Description and Implementation

4.1 Technology in use

This section examined the technologies used in this project and their specific usage in

the development process, discussions in details can also be found in some of the material

listed in the references.

J2ME (Java 2 Micro Edition) [15]

Java 2 Micro Edition (J2ME) is a technology which allows developers to use java

language and related tools to develop programs for mobile wireless. Java 2 Micro Edition

(J2ME) is divided into three parts profiles, configurations and optional packages. Profiles are

Application programming interface which is built on top of the configurations to provide a

runtime environment for mobile device like PDA mobile phones. Profile used to manage the

applications. Optional packages provides standard application programming interface for

using both existing and newly technologies like messaging through wireless, database

connectivity and multimedia. Configurations provide set of libraries and a virtual machine for

the category of wireless device. Java 2 Micro Edition (J2ME) has two configurations CLDC

(Connected Limited Device Configuration) and CDC (Connected Device Configuration) which

are described below in details.

CLDC (Connected Limited Device Configuration) [15]

It is a set of standards, libraries and virtual machine for devices with the very limited

resources like mobile device. When it is joined with the Mobile Information Device Profile

(MIDP), it provides an excellent java platform for developing applications which can run on the

devices with limited memory.

Page 30: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

30

CDC (Connected Device Configuration) [15]

Connected Device Configuration (CDC) is for bigger devices, such as set-top boxes and

PDAs. It’s a specification for the JVM (Java Virtual Machine) that a J2ME (Java 2 Micro Edition)

device must support.

J2ME API’s (Application Programming Interface)

javax.microedition.midlet

[4] MIDP (Mobile Information Device Profile) is called as MIDlet each and every

MIDlet is an instance of java.microedition.midlet.MIDlet. It is implemented in lifecycle

method (discussed on 3.2.4). Conceptually it is similar to applet and can be

downloaded. MIDlet is executed in host environment.

MYSQL

MYSQL is a well known relational database management system (RDBMS) used

to manage the database relationship and interactivity among the database. It is an open

source technology which is used to create the database. In this project it is used to interact

with Servlet for the management of the database such as edit, delete, update etc.

JSP (Java Server page)

JSP (Java Server pages) enables the creation of web application, it is a server side

scripting language, it work by embedding Java code in to web programming language like XML,

DHTML ,HTML and other programming languages. This scripting is indeed competing with

Servlet, Java and other well known web applications.

Page 31: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

31

Servlet

A Servlet is a java programming language class which is used to extend the server

that host applications accessed through a request-response model. Servlets are use to extend

the applications hosted by web-server. It defines HTTP (Hypertext Transfer Protocol) specific

servlet classes.

4.2 Process model for development

The software development model represents the model and the processes of

developing applications. I am following the waterfall model for the development of this

project which goes through five stages: Requirement, Analysis, Design, Coding, and Testing all

these are describe below.

Requirement Stage:

The requirement of the university administration and students were initially studied. The

requirement is collected by use- cases through which it was decided what objects and functionality

should be given to Administrator, such as Login, Add/Update Student, Send Alert/Update, Post Event,

Query Posting, and Add Resources. In this stage of the process I went through with quite a few similar

systems which has been analyzed, blackboard is the organization which develops such a system on a

large scale. Then I have decided which platform I am going to build this application which is J2me (Java 2

Micro Edition ) , what database I am going to use which is MY SQL DB, which language should be used

develop a web based application for administrator which is JSP /Servlet.

Analysis Stage:

Once the requirements of the application are identified in requirement stage, then it is

important to understand the scope of the problem. If there is a problem dividing that problem

into sub sections so that goals can be achieved .The analysis stage is used to find the solution

Page 32: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

32

of the problem. It was important to make sure that whatever the thoughts or functionalities

are in mind should be reachable in the limited time frame. Firstly it was considered student

would have functionality where they can pay the dues through the mobile phones to

university administration but after analyzing it is found that the desired goal would be not

achievable in the limited time frame and the there were some security issues to consider

payment function. In the above application it was analysed that all the four goals for

application are achievable. The detailed description of analysis can be found in section [6.2] of

the application.

Design Stage:

Design stage contains identifying the major component, objects of the application. It

will represent the systems behaviour and the work flow (the structure). It involves design of

the interfaces between major components of the sub-systems. This is the part that is exposed

to the users and hence the only part they can experience. If the application is too complex to

understand on the first time then the user is not going to use it on the next time. Architecture

of the Campus Wi-Fi mobile application has been considered in this stage which is described in

detail section [4.5]. The students is going to connect through Wi-Fi router to the

administration department which will send the information to the server then the server will

fetch the data and forward the request to administrator.

Coding stage:

This stage the design of the application is transform into the code. The Eclipse IDE

(Iintegrated Development Environment) supports all the needs of writing the code, such as

syntax highlighting which was useful to identify the error, example material for building mobile

application and all the necessary compiling, deploying and running functionalities. Eclipse was

helpful there, as there are so many pre defined functions which makes the work easier. The

detailed description of this stage is discussed in section 4.3.

Testing stage:

Page 33: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

33

Once the application is coded testing of all the function has been done to find out

whether it is working the way it was designed to work. It is important to test application in

large scale because I did face a problem when I was testing adding resource option in

administration browser field after some time I found there are syntax errors. Testing the

functionalities of this project is an important aspect of this dissertation, it is necessary to see

how the application and information on mobile devices are being displayed especially on

different real mobile device and emulator this type of testing helped me to correct the bugs in

functionalities according to the users’ requirements. Unit testing on the functionalities of this

project is an important aspect of the dissertation, but more importantly the usability testing

by the potential users in with the project is developed for. Campus Wi-Fi application testing is

very necessary to see does the functionalities given to administrator and user (students) are

working properly according to the requirements.

This project has been tested on different common browser from the administrator side i.e.

Google Chrome, Mozilla Firefox and Internet Explorer 8, and it was found to display equal

quality of information and functions given to administrator as specified in the project

specification. This type of testing helps the developer to find the bugs in functionalities

according to the administrator requirement.

The user side of the project was also tested and it was found to meet the student’s

requirement, all the functions are working properly which was specified in project objectives.

The most important function from the student side send query, view resources, event

registration and read alert message all these functionalities has been tested and found to be

working as expected.

The Administrator side of the project was also tested based on the requirements, all the

functions such as sending alert, post request, file sharing and posting event are also tested and

found to be working according to administrator requirement.

Why the above development model was chosen

Page 34: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

34

Waterfall model has specific goals for each phase of development in the above application

each goals are determined and divided into stages , Schedule is set for the each stage as a

deadline to achieve the goals for example first goal was to build a administrator interface and

database structure then to move on to mobile application . After completion of the

administrator panel and data structure the mobile application coding been started. It is

important to finish the first stage then move to the next. Each stage of the development

proceeds in strict orders, without any overlapping of steps. One of the advantages of this

model is the amount of resources required to implement this model is minimum. After the

major stage of coding the application is tested against specifications. The above application is

tested again on a larger scale once the major coding is completed then the application is

tested. If there are any errors then the error was corrected. It was easy in this process model

to identify the progress and it also gives an opportunity to identify the problems quickly. The

best thing about this model is the design been made before the actual coding, so before

starting coding the structure and objects of the system were well known.

4.3 Implementing mobile application One of the biggest challenges of the mobile applications development is how to

implement such applications in a way that consist the security properties of their specification.

It is important to think and specify the application using high level tools and then ascertain

that specification meets the desired requirement , Is all the goals are achievable or not. Then it

is decided that application is going to build on java platform.

To begin implementing Campus wi-fi Mobile application first of all JSP (Java Server Pages) is

used to build the layout of the application which represents the admin part. The login panel is

been made which allow admin to login in through the user name and password mean while it

was decided to build a database on MYSQL Database ,discussed on Data Structure of the

dissertation. The Servlet are used to fetch the data from the MYSQL database. The mobile

application is built using J2ME (Java 2 Micro Edition) on Eclipse (integrated development

environment) IDE in which important aspects (coding) of mobile application implementation

and the important aspects of implementation are discussed below.

Page 35: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

35

Campus.java

Campus.java class is the main class of the application which extends MIDlet and

implement runnable interface. Objects of login, Menu, New Query, Post list and other

important parts of the application are created in Campus.java class. Then background thread

is created for searching up the new messages, it keeps searching for the new message in a

specific time (20 sec) frame again and again. One of the interesting aspects of implementing in

the above class is the alert screen that shows a picture to a user (students) and waits for a

certain period of time with a sound. This functions uses to alert the student to inform new

message has been received with unread message picture, the coding to implement this

feature is below

Alert alert = new Alert("Alert Demo","You Got new Message",img,AlertType.INFO);

alert.setType (AlertType.INFO);

if(display.getCurrent()==mmenu){

mmenu = new MainMenu(this);

display.setCurrent (alert,mmenu);

ConnectWait.java

The ConnectWait.java class is build to establish connections between all the servlet.

ConnectWait.java class extends Canvas class (A class that represents a blank rectangular area

of the screen in which the application can trap input events from the user) and implement

runnable interface. For communications the servlet base (servbase) address is given to

communicate with the admin application side. Then the paint method has been given in order

to perform custom graphics on the canvas, after that the method for calling the servlet and

getting back the result it takes from the servlet name & parameter as input is assign. One of

Page 36: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

36

the interesting part of implementing of this class is to establishing a communication between

the all the servlet.

Login.java

The Login.java class represents the login activities of the user (students) which allows

them to login, passwords are provided to them by administrator. This class implements

Command Listener (the commands registered with display or the item objects have provided

in class).The method “Command Action “ is describing what actions needs to be done when

button clicked is been performed for example in the above class if exit button is clicked

application will call the quit function to exit of the application. In the login section user needs

to input the username and password when validating the username name and password it will

call the login servlet (actually it will call to callservlet () of the main class). If the username or

password is incorrect it will show the message “Invalid Login/Password” or if the login is

successful then it will display the main menu. Simply the logout.java class allow the user to

logout in the same process.

Apart from all these three important java classes mainmenu.java, messagelist.java,

newquery.java, resourcelist.java, showmessage.java, showpost.java etc, has been

implemented to provide the different functionalities to the application. All these class

implements the Command Listener with the Command action which defines which actions is

needs to be done when the button is clicked.

Interesting aspects of implementation in Servlet

Servlet are small programme that runs on server. Web applications are usually

contain both private and public resources. It is important to make sure that those areas that

are restricted to public will remain off limit.

LoginController.java

Page 37: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

37

Logincontroller.java Servlet is built to handle the login process for administrator. The

Do Post methods of servlet define the current session and the values of username and

password. The “loginDao“ instance of “LoginDao” has been created for the database

connection pulling. When discussing the login process security is very important the two main

categories of security needs to be considered Authentication and Authorization. The

Authentication is to verify the user, are they the right person whom they say they are.

Authentication is handled via username and password login. Mostly websites utilize login page

through Secure Socket Layer (SSL) over Hyper Text Transfer Protocol (HTTP). Once the

authentication process is done then it goes to authorization stage. The Authorization process

makes sure that the user only see the data what they authorized to see.

MobileLoginController.java

MobileLoginController.java servlet is built to handle mobile login authentication for

user (Students). The process is same as discussed on the LoginController.java servlet class. The

Do Post method here defines string parameters and the values for username and password.

The instance of LoginDao is created for database connection pulling. Once the authentication

is done user will move to next page if the authentication is failed (wrong password or

username) then message will be showed “Invalid Username/ Password”.

Usually those programme that access database by user input needs to be on server side. One

of the advantages of java servlet is that with heavy traffic they can execute more quickly.

Instead of causing the separate programme process to be created, the request from the user is

invoked in a single demon process (the amount of system overhead for each request is slight).

Performance Considerations

In Campus wi-fi project local variables has been used because it is quicker to access local

variable as compare to class members. String concatenation has been avoided because it

slows down the performance and increase the memory usage of the application. Threads have

been used and synchronization has been avoided through which performance can increase.

Page 38: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

38

4.4 System Architecture

The below figure shows the architecture of the application J2ME/JSP (Java 2 Micro

Edition / Java Server Pages ) which represents the user (students), a web based application

admin browser is for admin .A server application is running in middle. The database is running

in the backend to store records. The radio waves deliver the information to mobile devices.

Figure 2 shows the architecture of an application, it is difficult to understand the picture all at

once but the work flow is easily understandable. The figure 2 has one administration (admin

who is sending messages is in black arrow), and there are two students, Student A (Blue

arrow) and Student B (Purple arrow) both have java enabled phones. The Admin send and the

message forward to the server from where the related message then goes to database (DB)

to search the related table the data is fetch and send back in server which process the

message forward through Wi-Fi Network and message received to students mobile device. The

same process goes when students send query or ask any information which start from the

student side and reach to admin in end. Below are the two different students just to show that

they both send and receiving messages which is related to them.

Student A Student B

DB

Wi-Fi

Server

Page 39: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

39

Admin

Figure 2

4.5 The Admin and User Interface

This section captures some of the important Administrator and User (students)

interfaces of the Campus Wi-Fi Mobile Application. The structure and qualities of the

presentation will be analyzed with respect to computer human interactions and

functionalities which will form the bases for the evaluation and future work in concluding

this dissertation.

Below figure shows Administrator is sending message from the Admin browser

Figure 4 “Sending Alert/Update”

In the above figure 4 Admin (administrator) is sending message to mobile device “Hello, Just want to inform you all. Timing for tomorrow Lecture of Object Oriented Programming is changed and new timing is 1 pm to 2pm Wednesday. And below

Page 40: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

40

figure 5 shows that the new message is been received in mobile device with alert “You Got new Message”.

Figure 5“Alert Pop up on device”

Figure 5 shows message alert on the emulator (mobile device).

Figure 6

Page 41: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

41

In the above figure 6 message is received in mobile device which was sent by the admin earlier. In the below figure 7 Student is sending message from his mobile device via New Query and asking a question to administrator.

Figure 7

Figure 8 Above Figure 7 shows student is going to ask question by new query of

device and in figure 8 students asked a question he wants to know the fee for the sports membership and the answer comes

Page 42: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

42

The below figure 9 which shows admin reply to student stating that fee is 80 GBP annual and message is also received in the mobile device it is like a chat window.

Figure 9

Figure 9 shows student got a reply on his device and he can chat to admin through

this feature “Post Request”

Page 43: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

43

Figure 10

In the above figure 10 admin is uploading Assignment Results through Manage Resources. And in the below figure 11 Resource has been added and received in mobile device where student can save the AssignmentResult.pdf file and view the results.

Figure 11

These screen shots are just to show the major functionalities available to the administrator

and user device. Other functionalities can be added in future work based on the user demand

and need for better platform. The essence of the screen shots is to showcase the available

information and functionalities to the readers.

Page 44: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

44

4.2.1 Java ME MIDlets [4]

A MIDlet is an application that uses the Mobile information Device Profile (MIDP) of

the Connected Limited Device Configuration (CLDC) for the Java ME (Micro Edition)

environment. Mobile information Device Profile (MIDP) application is also known as MIDlet .It

is executed by device-specific Application Security Manager (ASM) which defines security

restrictions for each MIDlet and it can interrupt MIDlet. MIDlets move from state to state in

the lifecycle. Below is the life cycle of MIDlet.

Figure 13

The figure 13 shows life cycle of MIDlet. The first is pause state, by deault midlet is in pause

state when the application is excuted the startApp method is called and when we close the

application the destroy method is called and destroy the midilet

Page 45: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

45

4.2.2 Emulator

An emulator is a substitute to test mobile applications without need of real device. It

gives an option to test the mobile applications without the real device (in absence of real

mobile device). Eclipse IDE (Integrated Development Environment) has an emulator that

works as a substitute of mobile devices. The emulator is used to test mobile applications

which make work easier because it is hard to test the application on real phone each and

every time. Emulator runs through the J2ME (Java 2 Micro Edition) wireless toolkit. There are

numbers of emulators on different systems or IDE’s (Integrated Development Environment)

and which one is the best for each system depends on what interface and features we would

like to implement (requirement of the applications).

4.2.3 Java ME Issue

J2ME (Java 2 Micro Edition) is wide language which provide so much of feature and

popular amongst the developers but it also have some drawback and fault which is mentioned

below.

• It has a poor native UI component palette.

• Porting –application works on Nokia, but will not work on SE.

• Application looks fine on emulators but sometimes fails to work on the real device.

• Bundled resources size.

Page 46: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

46

5 Project Design

The methodology of the design of this application involved careful consideration of

the various technical and design issues implied by the project requirements. This project is

built on three stages first one the Admin browser second is J2ME (Java 2 Micro Edition) mobile

application for students and the third is Database (backend). There are few elements and

important stages of design are already described in section 4.2.

As it is said earlier this project is built on three stages so all are divided into the parts. The

admin panel for administrator is on the first stage, Database which is running on the backend

on second stage, the final stage the front end for users (students). It was decided there would

an admin panel for administrator which would be implement first and the administrator is

going to send a request (which contain alert or message) to a server from where the server

will process the request to database running on backend and fetch the data from the related

table and process back the request to server then server establish communication to students

mobile devices through Wi-Fi wireless router the request is now processed to students

through wireless router. Same scenario is repeated for student in a reverse order.

When the application was started “Form registration” was not considered to be in this

application but through with implementation and analysis process this resulted into new

requirement is created. Project design basically deals with the time frame and cost factor but

in this application time frame has been considered.

5.2 Design Considerations

Page 47: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

47

To develop mobile application there are few things which needs to be considered

during designing stage. It is better to built small applications because its uses less memory on

the device and takes less time for installation. As considered for the above application

compressed in Java Archive (jar) files. It is important to manage the memory efficiency by

setting object references to null and not to depend on the garbage collector which has been

done in the coding stage .For minimizing the memory usage the other way is to only allocate

objects that are needed. Allow the server to do the most of the work, move the

computationally intensive task to the server and allow the server to run them for you. Allow

the mobile device to handle the interface and minimum amounts of computation, and allow

the server to do the intensive work. Then the language is been considered J2ME (Java 2 Micro

Edition) is the best choice depends on the needs and the experience in java.

In terms of alternative design model the spiral design model was also studied, however it

was not implemented. The spiral model more emphases in placed on risk analysis. The spiral

model has four stages Planning Risk, Analysis Engineering and evaluation. This model was not

implemented because it doesn’t work well in the smaller projects. The Campus Wi-Fi mobile

application is a small project which does not go well with the spiral model. It is a costly model

to use.

Why this project is designed in this way

The reason for designing this application in this way as it is because the above design

was easy to implement and understandable. The user has a simple navigation and it was easy

to follow the functions of the application. The structure of the application is easily

understandable. The administrator browser was built in the first stage because it is useful to

start the work with developing the back end because the mobile development is much more

complex as compare web based applications. The design of the admin panel was simple each

functionality has divided into different section. The database for the application is built on the

second stage which runs on the backend, in this stage all the objects and functionality are well

known so it was easy to create the tables without any further changes. The last stage mobile

application was built because at this stage most of functions are already defined in the admin

panel the only difficult part was to establish a communication network. If the mobile

application was built in first stage then there would be some complications because of lack of

experience in mobile application.

Page 48: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

48

5.3 Payment Idea in Existing System

When this project was chosen there was functionality in mind to provide a payment

facility to students from their mobile devices (a method to pay dues), however it was not

implemented in real application because of security issues and limited period of time of the

project. The Payment section would be a functionality given to students where they the pay

their dues from their mobile phone. The concept is students would be having some amount of

money in their university accounts (balance amount), and administrator can view the balance

amount of the each student in the admin panel.

For Example Administrator is going to send alert to all the students that they need to pay 50

GBP pounds for the upcoming examination fee. So the students will make 50 GBP pounds

payment from their mobile device (payment section) and 50 GBP pounds would be deducted

from student’s accounts and new balance can be viewed by the administrator. Students

probably can send a query to administrator to ask what the balance amount in their account

is.

The below figure shows how Payment function can be added in the given system. The Figure

shows Administrator post /add event which is sent to students, they view the event and found

in the description there is a fee of 10 GBP pounds to get registered for the event .Student is

making a payment from their mobile device the request fetch the required data from the

payments table and process the request (user is registered).Administrator can view the

payment made by the students in admin panel.

Post/Add Event View Event

Make Payment & register

Event

RegistrationAdministrato

r

(Admin)

Students

Page 49: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

49

View Payment

Figure 13.1

6 Data Structure

[6] Database is used to store and manage data. I have used MY SQL (Structure Query

Language) Database for this application. The design of the database is developed by the

requirements of the project. Having a well defined relational database is a basis for building

interactivity and ease of information processing with less cumbersome in a contents

management system. My SQL is open source Database management system. Database is a

collection of data it can be anything record of Students or University. To add, access, fetching

one information from a huge amount of data we need a database management system. MY

SQL is RBDMS (Relational Database Management System), a relational database stores data in

different instead of putting all the data in one big workplace that’s add speed and flexibility to

database. I have used Servlet application to fetch data from the database.

Payment

_table

Page 50: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

50

Figure 14

The Figure 14 shows the design of the database .Name of the database is Campus (bold font)

on the top right side of the figure.

The designs of the database depend on the requirements of the project. The main purpose of

the project is to design a contents management system to manage Students and University

Administrator. The most important table is the user table in which all other tables depend on,

the user table contains the attributes of each user admin or student, while user table alone

cannot meet the diverse needs of the project and more other tables are created and are

related to the member table. The description of each of the attributes in the table is outlined

below:

• Course Table shown on figure 14.1 which provide information about the course

Identification number and name of the course.

Field Description

Course_id Course Identification No or ID

Course_name Name of the course

Figure 14.1

• Description of Form Registration table shown in figure 14.2

Figure 14.2

• Description of Message Table Below is the figure 14.3

Field Description

Message_id Number of the message

Field Description

Form_id Number of the event or form

Title Title of the event

Description Description of event

Entry date Entry date for event

Expiry date Expiry Date for event

Page 51: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

51

Message_type Message type or which topic it is concerned

Student_id Student ID number

Msg Content Of message

Date_time

Field Description

Post_id Identification number for Event

Student_id Student Id number

Post_type Type of Event

Message Content of Event

Date_time Date and time of Event

Status Status of an event

•Description of Posting Table is shown in figure which is above 14.4

• Description of Resource Table is below shown in figure 14.5

Field Description

Resource_id Number of an uploaded resource

Course_id Which course It is related to

Title Title name of the resource

Fileurl Url of the resource to download

Description of Student Table is shown in 14.6

Field Description

Student_id Student id number

Name Name of the student

Course_id Course identification number

Course_year Year of the course

Age Age of the student

Page 52: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

52

Dob Date of the birth of the student

Figure 14.6

Description of Unread Message Table is shown in figure 14.7

Field Description

Msg_id Message number

Student_id Student ID number

Figure 14.7

User Table is the most important table of database which provide description of user

when new user is create by admin that user is created by this table .It is advised not to

delete this table.

Field Description

User_id Used Identification number

Username Name of the user

Password Password of user and admin

User_type User type whether it is admin or student

Logged_n Login Info

Figure 14.8

Page 53: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

53

6.1 Real Phone Environment

It is quite interesting to run and test mobile applications on emulator but sometime it

does create problem and became important to test application on real mobile device,

however chances are very low for this scenario. Through Eclipse we can create a jar file after

the jar file is created we need to install that .jar file in mobile device after the installation is

successful we can use the application to test on real mobile phone.

When I was testing the application in real mobile device there was difficulty to connects to

networks, sometimes user not able to connect to shared networks it usually happened

because connection is not established between the network and mobile device, as a

suggestion it better to confirm IP addresses and default gateway settings of the network and

the mobile device. Sometimes users test the applications and it doesn’t go through and they

try to find mistake or error in the code but usually it happens because the device is not able to

establish connection to network. I have faced this issue in the beginning of testing the

application on real mobile phone.

6.2 Analysis

Feasibility Study

The feasibility study plays a major role in the analysis of the system. The decision

of the system analyst, to design a particular system depends whether the system is feasible or

not. Hence, the feasibility study forms the very basic of the system. The feasibility study can

be categorized into:

Technical Feasibility

Page 54: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

54

It has been determined that the technology which is required for the system is

available and this technology can be used into the application. Technical evaluation has also

evaluated the existing system to find that it cannot be upgraded in keeping with the user’s

needs. Hence, we need to create an entire new system which caters to the specific needs of

the user. The end user can be equipped with the pre-mentioned hardware and software

requirements.

OPERATIONAL FEASIBILITY

There are two aspects of operational feasibility for the system. One aspect is

that of technical performance and other is of acceptance. It has been determined that the

system can provide correct and timely data required for the end user needs. Also it has been

determined that the system will be accepted by both users (students) and administrator with

and without technical knowledge.

Economic Feasibility

The economic feasibility of the system is mainly concerned with its financial

aspects. It determines whether the project is economically feasible. As the hardware and

software are already available easily in the market, no further investment is to be made in

that direction, the only cost involved is that of implementing the system. The front end system

is built in jdk1.5.0 which is freely available. The backend is built in MS Sql server which the can

be made available with easy efforts and lower cost. Also since the application works on

middle-level phones it is not necessary to spend a lot of money in obtaining a phone.

It was decided that the project was technically feasible because of the following:

• Necessary technology exists to do what is suggested.

• The system would be expandable if so decided.

Page 55: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

55

• The system can be integrated with other networking tools and output of the

system can be provided to other tools for high end analysis.

• This system is technically more secure.

Page 56: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

56

7 Conclusion

7.1 Summary

The purpose of this project is to develop an advanced Mobile Application

information system between university administration and students with the use of WI-if

technology, the requirements of the project was a due consideration at each stage of the

development. Designing such an application to meet the aspirations of many users seems

complex at the beginning, but the work at the end was able to meet all the original goals. The

basic idea is to provide fast and reliable information service to students in the campus

environment. This application provides an interface where students can communicate to

university administration through their mobile phones.

To build such application, many technologies had to be learned to integrate some of the

functionalities used to establish communication between mobile and admin browser .These

technologies are learned and their usage as seen on the website was limited by the level of

knowledge and understanding within the time frame.

The MYSQL is used to design the relational database, JSP for structure and display, Servlet for

structure, fetching database from backend and establish a connection between J2ME (Java 2

Micro Edition) java classes to server. All these technologies are used in order to explore their

functionalities and usability.

7.2 Evaluation

The project is developed to design an information system between the university

administration and students; the objective is to communicate to students by sending

information’s (alerts or messages) on their mobile device through Wi-Fi technology. This

application based on the well known open source technologies Java 2 Micro Edition (J2ME),

JSP (Java Server Pages) and Servlet.

Page 57: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

57

All the four objectives of the application were achieved successfully. This project is evaluated

on usability testing which becomes necessary to validate the claims made in section [4.2

testing] and to suggest possible areas of improvement and future work. Two users (students)

were selected for the purpose of usability testing. These numbers might not be perfect

enough for testing, but it is enough to test the functionalities of this project within the limited

period. These potential users are divided into two parts one user_1 within administrator given

login details to login in into administrator panel of the application to test the functionalities

within the admin panel, and the other user_2 (student side) within the student section given

the login details to login in to mobile application. This testing is done on emulator not on the

real mobile device.

Both the applications are running on different systems. The user_1 from the administrator side

deployed and run the application on laptop A after the successful login he was able to see the

admin browser. The user_2 has opened the emulator on another system (laptop B) and logged

in to mobile application side of the application. User_1 (admin panel) sends the alert message

from his system and user_2 has received that message on emulator which is running on

another system (laptop B) with the alert sound. To test the second functionality user_2

(student side) sends a new query to ask a question to administrator and that message is

received by user_1 (admin) in the manage student post section of the administrator browser,

both user_1 (administrator) and user_2 (student) exchanged few messages and as a result

both are able to communicate each other like a chat window. Both of the above functionalities

meet the original requirements which were decided in project objectives. To test the third

functionality user_1 (administrator) has uploaded assignment and it was added successfully

which is viewed by the user_2 (student) on his emulator, however this functionality has some

issues which is discussed below.

When administrator adds resource, assignment (.pdf or .doc) file in the Manage Resources

section of the admin panel. On the emulator or mobile device when students click to view file,

the mobile application shuts downs. The MIDlet goes to destroy state and shuts the mobile

application user need to login again to view that .pdf or .doc files .This is one of the problem

faced in this application. This functionality was not actually working the way as it is discussed

in objectives.

Page 58: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

58

The final functionality event post and registration is also tested. User_1 (admin) has posted an

event in Form Master Section of admin panel that post is viewed by the user_2 (student

) on emulator in Event Forms section of the mobile application user_2 (student) registered for

that event from their mobile device. User_1 (admin) viewed the registered members in the

registrations section of the admin panel, which gives the information to administrator which

student has registered for particular event.

This project is not tested on big scale in real mobile phones, it was just once tested on mobile

phone and the outcome was similar as it is working on emulator. The results of the usability

testing deduced the project has meet the technical demands and original requirement of the

Administrator and Students, however functionality three viewing the files on mobile phones

needs to improved.

Apart from all the good qualities there is little section which can be improved for better

results. When user (students) sends a query to administrator to ask any question via new

query there is no way where administrator get any alert sound or anything to point out new

message is received from students, administrator needs to click manage student post section

to check new messages. It would be nice to provide functionality where administrators get to

know on the admin panel a new post or query from students. The same problem exists (on

student side) when administrator upload or add resources, students need to check the get

resources section of mobile application to find out whether any files (assignment ) are posted

or not , it could be better if students gets a alert sound when they got any files from

administrator. All over this application is successful and meets the original requirements of the

project.

7.3 Limitation

This application is limited and only available for students who have java enable

mobile phone. In the real time university environment students uses different phones where

each has different functionalities for example Android, IPhone those users can’t use this

application because it is built on J2ME(Java 2 Micro Edition) environment (only for java

enabled mobile device). Apart from this java enabled mobile device should have a Wi-Fi

technology to access or get the benefit of this application.

Page 59: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

59

Multiple devices can be connected to the system, however when multiple devices are

connected through single router (physical device which connects network) the performance

will suffer. The wireless router is varying in the Wi-Fi range. The router with strong Wi-Fi

signals allows the multiple devices to connect at the higher speed even in a greater distance,

[10] the router Wi-Fi coverage depends on the access point. The typical wireless access point

using 802.11b or 802.11g with the stock antenna have a range around 32 meter ( 120ft)indoor

and 95 meter (300ft) outdoors , however IEEE 802.11n provides the range by more than two

times.

This application is limited or accessible only in the Wi-Fi coverage; students can only access

the application if the mobile device is in the range of the wireless network of campus. The Wi-

Fi coverage is range of the wireless router. This System can be spread to a larger area with

multiple wireless routers to provide greater coverage to the users (students); however it is not

tested with multiple wireless routers.

7.4 Future Work

The development of a mobile application is technically more complex and can be built

in different platforms which would be having their advantages and disadvantages, and this

may provide a user different interface. The Campus Wi-Fi application is open application which

can be extended by adding more features or using different platform according to the demand

of the users.

The website could be deployed in future on other alternatives technologies and customized

the functions depending on user’s requirement. When I have started this project I have a

function in mind called payment or transaction, this will provide a facility to student (user) to

pay his due fee or any payment to the university department through his mobile device in

future I am going to extend this application to add this function that’s why my application still

consist few element of transaction in coding.

Page 60: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

60

The application can be broad by adding functionalities as per the user requirement. In my

view it would better idea if students can have a task section on the mobile device .A task

section will allows the students to see the due assignment dates and probably a calendar

where student can set the reminders. It would be great if student can view the module

lectures from the mobile device. And probably broad this application which not only works in

wi-fi range (wi-fi technology) but also can be accessible through internet from the mobile

phones, it will give an opportunity to students to access the application from anywhere.

The application can extend farther more by using different platform Android is one them.

Android application also based on java easy to build and provide user friendly interface. When

building an application for student we have to keep in mind that student’s uses different

phones and Android is most popular these days. So if any university is going to implement this

application in real time environment they have to build this application on different platform

to fulfil the requirement of the users (students).

Page 61: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

61

References

1) http://home-networking.wikidot.com/wireless-vs-wired

2)http://www.google.co.in/search?q=wired+and+wireless+connection&hl=en&gbv=2&imgrefurl=http://wiresolutions.blogspot.com/2011/01/quick-guide-to-configure-wireless.html&w=299&h=287&ndsp=15&tbm=isch&tbs=simg:CAQSEgmko8jI3O4ygyGeVxgPvEK3Aw&sa=X&ei=Gu9wTqz3IofsrAeeiNWOBw&ved=0CAQQrBE4Dw&biw=1024&bih=6303) ITNP92 University of Stirling lectures written by David Cairns and Jesse Blum Spring 20104 ) http://en.wikipedia.org/wiki/MIDlet5) www.blackboard.com/Platforms/ Mobile /Overview.aspx

6) http://dev.mysql.com/doc/refman/5.0/en/what-is-mysql.html

7)http://www.java.com/en/download/faq/whatis_j2me.xml”,

“http://java.sun.com/products/cldc/wp/KVMwp.pdf”

8) http://en.wikipedia.org/wiki/Java_Platform,_Enterprise_Edition

9)

http://www.ericsson.com/ericsson/corpinfo/programs/using_wireless_technologies_for_context

_sensitive_education_and_training/products/giunti_ericsson_wp3.pdf

10) http://en.wikipedia.org/wiki/Wi-Fi#Range

11)www.java.sun.com

12) www.j2me.org

13) http://en.wikipedia.org/wiki/Wireless_ad_hoc_network

14) http://www.blackboard.com/Platforms/Mobile/Products/Mobile-Learn.aspx

15) Complete Reference J2ME

16) http://www.javaorigin.com/tutorials/53/19/53/Servlet_Basic_Tutorial

Page 62: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

62

Appendix 1

1. Does the application have the required functionality?

The answer is yes, my application have all the functionality which was decided in the project

Objective, the main goal of the application is to send alert /update for example if

there is certain changes in the time table of lecture ,and it is quite usual that student can’t

be online on computer system all the time in university environment with the above

functionality student will get a alert pop up in his or her mobile device with would be time

saving for him. Second main goal was the post request from student’s side if student can ask a

question from administration through new query and admin can reply to that that query

frequently it would work like a chat facility which would be beneficial for student because

user is not required to on his laptop or computer this can be done through his mobile device.

The third main goal of the application , (file sharing) university administration can upload file

and send to student whether it’s assignment result s or posting new assignment and student

can view or download these document on his mobile device. My application is accomplished

to achieve successfully all these main goals.

2. How application function during the testing?

Application works perfectly which is been tested on emulator very often and tested in real

phone only once and performed in appropriate way. This application is build on Eclipse Helios.

Expect that resource (MIDlets destroy) issue which discuss in evaluation section of the

dissertation the application is working very well without any error. Developer can delete the

records from the backend in MY SQL database.

Page 63: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

63

3. Interface is user friendly or not?

The application design is fully considered by analyzing the users requirement that’s why this

Application provides user friendly interface not only for the administration but also to

Students. It is easy for Admin to send message, add or update student records and on the

Student prospective using the campus application is very easy.

4. Why this Topic is chosen?

Mobile devices, especially smart phones were became

life line, so why not provide few advanced feature through wi-fi technology to

students in the campus inviorement. Mobile applications are interesting to build that’s

why I have chosen the above topic.

Page 64: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

64

Appendix 2 – User guide

How to use the software:

In Real-Life Model:

• Service Provider End:a. Let the class files of the servlets be put up in the application folder of

the web server which supports processing of j2ee.b. Start the web server on the host.

• User End:a. Run the jar file on a mobile phone which supports java.b. Log in with a correct username and password to access the services

provided.c. After logging in, select the required service.

Page 65: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

65

Appendix 3 – Installation guide

About software:

The user would be provided with an executable jar file which would help him connect

the web server to get the required service.

Software Requirements

Tomcat server

Java Wireless toolkit [J2ME]

JDK 1.6

Windows Operating System

My SQL

Eclipse Helios

Page 66: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

66

Appendix 4

Login Process through Diagram

Request Login Request Login

User Authenticated Admin Authenticated

Figure 15

The above figure 15 shown that’s how the login process wok in my application. User

request a login through his username and password login process search for match

able username or password in login table and authenticate user to Login.

LoginUser

Admin

Login

Table

Page 67: 1 Introduction - Computing Science and Mathematics ... Web viewI lack a word to express my gratitude to ... all learning and training opportunities ... context_sensitive_education_and_training/products/giunti_ericsson_wp3

67

Appendix 5

Add and view Resource process

Add files(Resources) View/Download

Figure 16

The above figure 16 provide a view how application behave in Resource adding

option .We can see Admin adding a resources ,its url is added in resource table from

where student can view or download that resource.

Resources

Admin Student

Resource Table