Campus Information System PDF

Download as pdf or txt
Download as pdf or txt
You are on page 1of 63

ACKNOWLEDGEMENT

We thank the management of K. C. College of Engineering our Principal and the staff of the
Information Technology Department, for motivating us to think beyond books and imbibing in
us the attitude and aptitude to implement what we have studied thus far to make us aware with
some of the real world challenges.

We would like to convey our heartfelt gratitude to our Head of Department Prof. Aarti Bakshi
and our project guide Prof. Varsha Wangikar, for inspiring us to take up this project. Their
valuable guidance and timely support, without which, we would have never been able to
complete the project, cannot be forgotten. We would like to thank Prof. Varsha Wangikar for
providing immense support to us and imbibing us with knowledge about the Android based
applications.

Finally, we would like to express our gratitude for the faculty members of Information
Technology Department of K. C. College of Engineering and thank them for their co-operation
and timely assistance. Finally, we would like to thank our parents for their moral support.

Dhruvil S. Dhulia
Harshal J. Nandgaonkar
Santosh S. Patel
[1]

INDEX
SR.NO.

1.
1.1
1.2
2.
2.1
2.2
2.3
2.4
2.5
2.6
2.7
3.
3.1
3.2
3.4
4.
4.1
4.2
4.3
4.4
4.4.1
5.
5.1
6.
7.
7.1
7.2
8

CONTENTS

PAGE NO.

Acknowledgement
List of figures
Abstract

I
IV
V

Project Overview
Introduction
Scope & Objective
Project Analysis
Problem Statement
Literature Survey
Methodology used
Cost Estimation
Gantt Chart (Month wise)
Responsibility Matrix
Data Flow Diagram
Project Design
Block Diagram
Sequence Diagram
Interface design
Implementation
Hardware Requirement & software Requirement
Experimental setup
Coding
Testing
Different test cases
Result
Snap Shots of Project
Advantages of Project
Conclusion & Future Scope
Conclusion
Further Scope
References

6
7
9
11
12
14
15
19
20
23
24
25
26
27
29
30
31
32
33
44
45
47
48
57
59
60
61
63

[2]

List of Acronyms

IEEE: Institute of Electrical And Electronics Engineers.

DSL: Digital Subscriber Line.

API: Application Programming Interface.

Opengl: Open Graphics Library.

HTTP: Hypertext Transfer Protocol.( Wireless Fidelity).

GSM: The Global System For Mobile Communications (GSM).

CDMA: Code Division Multiple Access.

EV-DO: Enhanced Voice-Data Optimized or Enhanced Voice-Data Only(Ev-DO, EV,

EVDO Etc.).

PHP : Hypertext Preprocessor.

QBE: Query By Example.

CSV: Common Service Interface.

[3]

LIST OF FIGURES
SR.NO.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

FIGURES NAME
Architecture of Android
Current scenario of android market
Gantt chart 1
Gantt chart 2
Gantt chart 3
Level zero DFD
Level one DFD
Block Diagram
Sequence Diagram 1
Sequence Diagram 2
Sequence Diagram 3
Interface Diagram
Administrator Login
Administrator Tab
Student Login
Student Tab
Download List database
Files directory
Apply course
Course database
View history
Transfer File
Admin notification
Student notification
Guest Tab
View course Tab
Events Tab
Alumni Tab
Images Tab

PAGE NO.
8
12
20
21
22
24
24
26
27
27
28
29
48
48
49
49
50
50
51
51
52
52
53
53
54
54
55
55
56

[4]

ABSTRACT
Through this report, we introduce a novel approach to sharing information between students,
lecturers and the administration in order to enhance quality of information in campus
environment. We describe a network for distributing campus information among lecturers and
students. The concept of developing campus information is to ensure that student can access
information at any time, at any locations and ad-hoc basic. Information System helps the
students and lecturers on campus to find and access information based on ad-hoc basic, which is
of interest and relevant to students or lecturers through a smart phone. We will develop an
Android application thereby providing a collaborative communication system within the campus
aiding everyone participating in it. This will create a ubiquitous environment throughout the
campus making it a very positive and exciting experience for all the participants.
Thus we have implemented the android application which promotes high usage of mobile phones
by students into a system through which the students can learn and to present an informative tool
which they can use to solve their queries and also receive the latest news running around the
campus on their mobile phone devices. With maximum people shifting towards smart phones
and a boom in the android application market has motivated us to develop an Android
application that will prove to be learning as well as an informative tool for the students across the
campus.

Our concept of developing a campus information system seeks to provide a

collaborative communication system anytime, anywhere throughout the campus.


In this project we present a thorough model that we seek to design Campus News Information
System as an Android application.

[5]

PROJECT OVERVIEW

[6]

1.1 INTRODUCTION
India has the fastest growing telecom network in the world with many users moving towards
Smart Phones and majority by students. Other than India all over the world has boom in mobile
with many applications that are useful in day today life such as games apps, video calls,
photograph apps, Shopping Apps, easy search options etc
We introduce a novel approach to share information via an Android application between students
and lecturers in order to enhance quality of information in campus environment via HTTP
technology. We describe a network for distributing campus information among lecturers and
students. The concept of developing campus information via HTTP technology is to ensure that
student can access information at any time, within campus. Information System helps the
students and lecturers on campus to find and access information based on ad-hoc basic, which is
of interest and relevant to students or lecturers, they only need an Android-based smart phone.
The CNIS model will use a Semantic Mobile Environment. The architecture of the CNIS will
consist of three components: a web application as the user frontend, a server application in the
middle and a freely scalable number of service nodes for delivering the information to the mobile
devices.
Android is Open Google mobile platform which provide greater flexibility, Rapid Application
Development and Easy to Develop User Inteface with rich api collection. It is mixture of c,c++
and java.

[7]

Figure 1: Architecture of Android


Android Architecture:
1) Linux operating system kernel that provides the low-level interface with the hardware,
memory management, and process control, all optimized for mobile devices.
2) Open source libraries for providing various functionality like Browsing ,font rendering,
Multimedia stuff etc. It include SQLite, Web Kit, OpenGL, media manager, Free type and SGL,
SurfaceManager etc.

Android uses Dalvik VM which Supports multiple virtual machine processes per device

Uses runtime memory efficiently Java .class / .jar files converted to .dex at build time Runs
optimized file format (.dex) and Dalvik bytecode
3) An application framework that exposes system services to the application layer, including the
window manager, content providers, location manager, telephony, and peer-to-peer services.
4)Application layer which provide interface to develop user-interface and application. It contain
all application which interact with user.

[8]

1.2 SCOPE
Android being a relatively new technology, the future scope in the project is immense.
Scalability would be the biggest scope. The application can be made available off campus as well
whereby only certain services would be made available to the user. Information security plays a
vital role in the system work model for ensuring confidentiality and integrity, smooth functioning
and reduced misuse of the system. Advanced security features can be employed for enhanced
functioning of the application.
As of for now, the project will enable the college student to download the study material such as
question bank, assignment questions, tutorials etc. But in the near future, if the lecturer or the
professor is not able to take lectures for a long duration, then the lecturer can make a video of the
lecture from his workplace and give it to the administrator to upload it on the server, and the
corresponding link will be send to the students. Thus the process of e-learning can be
incorporated with the CNIS project in the future to provide a robust learning system with the
CNIS being a communication system or bridging the gap for a better learning experience.
Being a relatively new idea in India, we can even go commercial with the idea and provide
numerous campuses with the application.

[9]

1.3 OBJEVTIVE
Ubiquity across an enterprise or campus is a very positive and exciting experience for the
students, faculty, staff and visitors to the institution. Having instant access to email, the internet,
and other IT services irrespective of location can dramatically change the way your constituents
live, work, study, learn, and play. Thus with CNIS we provide a ubiquitous environment across
the campus wherein it will serve as a collaborative communicative system.

Our concept of developing a campus information system seeks to answer these questions in a
personalized way, at any time, at any location. The idea is to enable the user to find and access
all information that is of relevance to him. All he needs is a smart phone which enables the
execution of an android application. All used techniques are in themselves not new or unique,
but the combination of instant messaging. On top of that, the system based on a platform made
purely for research is in the stage of evolving into a product and is even now being utilized as a
public service on-campus. There is also an approach to use mobile devices for interaction during
classroom teaching. Altogether we find a situation on Campus, where students use their mobile
device for learning and interacting.

[10]

PROJECT Analysis

[11]

2.1 PROBLEM STATEMENT


India is the fastest growing telecom network in the world with many users moving towards
Smart Phones and majority among them being youngsters and students. Other than India all over
the world has boom in mobile with many applications that are useful in day today life such as
games apps, video calls, photograph apps, Shopping Apps, easy search options etc. Now a days
mobile is not just for communication purpose but also used for doing number of work using
single application within one phone. People just use mobile applications to complete their work
faster, efficiently, effectively.

Figure 2: Scenario of Android Market

These types of application are provided by many companies like Nokia with windows
application, Apples Mac OS and largest selling Samsung Android phone has covered the entire
mobile market.

Today all Mobile devices are inbuilt with Bluetooth device. The University of Koblenz campus:
in a series of projects in 2010, they developed Living Books, personalized, intelligent teaching
material, which is also available for PDAs and smart mobile phones. There was also an approach
to use mobile devices for interaction during classroom teaching.But the problem with the concept

[12]

of Living Books was that they used the Bluetooth technology. The Bluetooth technology has the
following problems:

One of the things that may cause conflicts for Bluetooth is that it uses the same frequency as the
Wavelength standard.

Another problem for Bluetooth is when there are a number of mobile devices in the same room,
and possibly attempting the same operation. Since Bluetooth is Omni-directional, it encounters
problems in discovering the intended recipient device. Bluetooth devices must perform a
discovery operation that will likely find many other devices in the same room. At this point, the
user must choose the proposed recipient, which will require special information.

Furthermore, Bluetooth has so many security mechanisms that it would have to carry out in
order to prevent eavesdropping.
Using Bluetooth, inbuilt application and new application cannot be used in efficient manner, so
we have to enlarge our scope from Bluetooth to HTTP or GSM which is much, highly effective
in use.
Solution to the above problem:

In this project we present a thorough model that we seek to design Campus News Information
System as an Android application.

Using Android technology to develop this application, the drawbacks of Bluetooth are overcome
and also the purpose of ubiquity is kept alive. Creating an android application for this purpose
will have the following advantages:

GSM, EDGE, CDMA, Bluetooth, HTTP, EV-DO and UMTS technologies to send/receive data
across mobile networks.

A wide range of libraries for image, audio and video files.

Export and signing app for publishing, SQLite for data storage.

[13]

2.2 LITERATURE SURVEY


The University of Koblenz campus: in a series of projects in 2010, they developed Living
Books, personalized, intelligent teaching material, which is also available for PDAs and smart
mobile phones. There was also an approach to use mobile devices for interaction during
classroom teaching.
But the problem with the concept of Living Books was that they used the Bluetooth technology.
The Bluetooth technology has the following problems:

One of the things that may cause conflicts for Bluetooth is that it uses the same frequency as the
Wavelength standard.

Another problem for Bluetooth is when there are a number of mobile devices in the same room,
and possibly attempting the same operation. Since Bluetooth is Omni-directional, it encounters
problems in discovering the intended recipient device. Bluetooth devices must perform a
discovery operation that will likely find many other devices in the same room. At this point, the
user must choose the proposed recipient, which will require special information.

Furthermore, Bluetooth has so many security mechanisms that it would have to carry out in
order to prevent eavesdropping.

[14]

2.3 MEHTODOLOGY USED


Campus news information system design mainly focused on two sections
The tool we have used is : Eclipse IDE
Technology used: HTTP based

Programming used: Android Programming.


1) ANDROID SDK
The Android SDK provides you the API libraries and
developer tools necessary to build, test, and debug apps
for Android.
If you're a new Android developer, we recommend you
download the ADT Bundle to quickly start developing
apps. It includes the essential Android SDK components
and a version of the Eclipse IDE with built-in ADT
(Android Developer Tools) to streamline your Android app development.
With a single download, the ADT Bundle includes everything you need to begin developing
apps:

Eclipse + ADT plugin

Android SDK Tools

Android Platform-tools

The latest Android platform

The latest Android system image for the emulator

HyperNext Android Creator

RFO Basic

Android APIMiner

[15]

2) phpMyAdmin
phpMyAdmin is a free software tool written
in PHP, intended to handle the administration
of MySQL over the World Wide Web.
phpMyAdmin supports a wide range of
operations with MySQL. The most frequently
used operations are supported by the user
interface (managing databases, tables, fields,
relations, indexes, users, permissions, etc), while you still have the ability to directly execute any
SQL statement.

Features

Intuitive web interface

Support for most MySQL features:

browse and drop databases, tables, views, fields and indexes

create, copy, drop, rename and alter databases, tables, fields and indexes

maintenance server, databases and tables, with proposals on server configuration

execute, edit and bookmark any SQL-statement, even batch-queries

manage MySQL users and privileges

manage stored procedures and triggers

Import data from CSV and SQL

Export data to various formats: CSV, SQL, XML, PDF, ISO/IEC 26300 - OpenDocument Text
and Spreadsheet, Word, LATEX and others

Administering multiple servers

Creating PDF graphics of your database layout

Creating complex queries using Query-by-example (QBE)

Searching globally in a database or a subset of it

Transforming stored data into any format using a set of predefined functions, like displaying
BLOB-data as image or download-lin
[16]

Components of Anroid Programming used in CNIS

Shared Preferences:
Interface for accessing and modifying preference data returned by getSharedPreferences(String,
int). For any particular set of preferences, there is a single instance of this class that all clients
share. Modifications to the preferences must go through a SharedPreferences.Editor object to
ensure the preference values remain in a consistent state and control when they are committed to
storage.

Notification manager :
Each of the notify methods takes an int id parameter and optionally a String tag parameter, which
may be null. These parameters are used to form a pair (tag, id), or (null, id) if tag is unspecified.
This pair identifies this notification from your app to the system, so that pair should be unique
within your app. If you call one of the notify methods with a (tag, id) pair that is currently active
and a new set of notification parameters, it will be updated

Activity :
With the use of this components of android and HTTP we will connect real time device with
campus server.

android.database.sqlite:-

Contains the SQLite database management classes that an application would use to manage its
own private database.

Applications use these classes to manage private databases. If creating a content provider, you
will probably have to use these classes to create and manage your own database to store content.
See Content Providers to learn the conventions for implementing a content provider. See the
NotePadProvider class in the NotePad sample application in the SDK for an example of a
content provider. Android ships with SQLite version 3.4.0

If you are working with data sent to you by a provider, you will not use these SQLite classes, but
instead use the generic android.database classes.

Android ships with the sqlite3 database tool in the tools/ folder. You can use this tool to browse
or run SQL commands on the device. Run by typing sqlite3 in a shell window.

[17]

HTTP
Most network-connected Android apps use HTTP to send and receive data. Android includes two
HTTP clients: HttpURLConnection and Apache HttpClient. Both support HTTPS, streaming
uploads and downloads, configurable timeouts, IPv6, and connection pooling. We recommend
using HttpURLConnection for applications targeted at Gingerbread and higher. For more
discussion of this topic, see the blog post Android's HTTP Clients.

[18]

2.4

COST ESTIMATION

COCOMO (Constructive Cost Model):


We will be using basic COCOMO as the cost estimation model for quick, early and rough order
of magnitude estimates of software costs. COCOMO uses 3 levels of project complexity:
1. Organic project
2. Semi-detached project
3. Embedded project
CNIS can be classified as a semi-detached mode project.
The equations in this model are:

E = ab(KLOC)bb
D = Cb(E)db
P=E/D

Where E is the effort applied in person-months,


D is the development time in chronological months.
KLOC is the kilo-lines of code
The coefficients ab,bb,cb,db for semi detached mode are as follows:
ab = 3.0
bb = 1.12
cb = 2.5
db = 0.35
Now, we assume that the estimated kilo-lines of code in CNIS is 4 KLOC.
Effort Estimation:
E = 3.0 x (4)1.12 = 14.53
= 15 person-months approx.
Duration estimation:
D = 2.5 x (15)0.35
= 6.45
= 7 months approx.
Persons Estimation:
P = 15 / 7
= 2.24
= 3 persons approx.
[19]

2.5 GANTT CHART (MONTH WISE)

[20]

[21]

[22]

2.6 RESPONSIBILITY MATRIX


Table no:1 Responsibility Matrix
Activity

Dhruvil Dhulia

Santosh Patel

Harshal
Nandgaonkar

Defining Project

goal
Feasibility Study

Project Charter

Plan project

Analysis
Risk

P
P

management
Gui design

Database design

System design
Implementation

P
P

Testing
Final reports and

P
S

presentation
Evaluate Project

Resposibility Code:-

P:- Primary Resposibility


S:-Secondary Responsibility
N:-Must be Notified

[23]

2.7 Data Flow Diagram:


We can describe the Data Flow for many modules of the project. Here in this section we discuss
the Data Flow Diagram for the student to access the resources using the application. Resource is
the process in this case.

Level 0:

Figure 3: level zero DFD

Level 1:

Figure 4: level one DFD

[24]

PROJECT design

[25]

3.1 BLOCK DIAGRAMS

Figure 5: Block diagram


The architecture of the CNIS will consist of three components:

a web application as the user frontend,

a server application in the middle and

a freely scalable number of service nodes for delivering the information to the mobile devices

[26]

3.2 SEQUENCE DIAGRAMS

Figure 6: Sequence Diagram 1

Figure 7: Sequence Diagram 2


[27]

Figure 8: Sequence diagram 3

[28]

3.3INTERFACE DIAGRAM

Figure 10 : Interface Diagram


[29]

implementation

[30]

4 Implementation
4.1HARDWARE AND SOFTWARE REQUIREMENT
Hardware Interface

Server side
o Processor : Pentium 4 with 2.3 GHz or higher
o RAM : 1Gb or more
o Hard disk : 100Gb or more

Clients:
o 32MB RAM
o 32MN Flash Memory
o 200MHz Online Processor

Software Interface

Server side
o Xammp Server
o My SQL(PHP MyAdmin)
o Android SDK API level 10(2.3 Ginger Bread)

Client side :
o Eclipse IDE

Operating Environment
Android is a software stack for mobile devices that includes an operating system, middleware
and key applications. The Android SDK provides the tools and APIs necessary to begin
developing applications on the Android platform using the Java programming language.

[31]

4.2 EXPERIMENTAL SETUP


Steps to run CNIS application:-

1) First Download Eclipce indigo, create android environment in eclipse by installing Android SDK
and different API Level available for android.

2) After developing CNIS Application run as Android Application. It start CNIS Application on
Emulator

3) Then connect Android device to computer via USB and Run program as Android Application it
will load Apk file of CNIS Application on device

4) Connect Android device with wifi to get connection with server and administrator.

[32]

4.3CODING
Admistration.java
package com.cnis;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Color;
import android.net.Uri;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.Gravity;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup.LayoutParams;
import android.view.Window;
import android.view.WindowManager;
import android.widget.ListView;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
import android.widget.Toast;
public class Administrators extends Activity implements CampusNewsISConstants,Runnable{

[33]

private ListView listView;


private boolean doViewCourse=false;
private String response="";
private Thread appThread;
private ProgressDialog formProgressdialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
formProgressdialog = ProgressDialog.show(Administrators.this, null, "Please wait...", true);
formProgressdialog.setCancelable(false);
doViewCourse=true;
appThread = new Thread(Administrators.this);
appThread.start();
}
private OnClickListener tableRowClickListener = new OnClickListener()
{
public void onClick(View v)
{
try
{
//

String selectedRow = (String) v.getTag();

//

Toast toast = Toast.makeText(Search.this, selectedRow,

Toast.LENGTH_SHORT);
//

toast.show();
registerForContextMenu(v);
openContextMenu(v);
}
[34]

catch (Exception ex)


{
Toast toast = Toast.makeText(Administrators.this, ex.toString(),
Toast.LENGTH_SHORT);
toast.show();
}
}
};

@Override
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo
menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
CampusNewsISActivity.showLog("Context menu called");
menu.setHeaderTitle("Select Action");
menu.add(0, v.getId(), 0, "Call Now");
menu.add(0, v.getId(), 0, "Send SMS");
menu.add(0, v.getId(), 0, "Send Email");
}

@Override
public boolean onContextItemSelected(MenuItem item)
{
if(item.getTitle()=="Call Now")
makeCall("444");
else if(item.getTitle()=="Send SMS")
sendSMS("444", "We have received your request.We will get back to you soon");
else if(item.getTitle()=="Send Email")
sendMail("offers@gmail.com", "Registration", "We have received your
request.We will get back to you soon");
return true;
[35]

public void makeCall(String number)


{
String url = "tel:"+number;
Intent i = new Intent(Intent.ACTION_DIAL, Uri.parse(url.toString()));
startActivity(i);
}
public void sendSMS(String recipient, String body)
{
Intent sendIntent = new Intent(Intent.ACTION_VIEW);
sendIntent.putExtra("address", recipient);
sendIntent.putExtra("sms_body", body);
sendIntent.setType("vnd.android-dir/mms-sms");
startActivity(sendIntent);
}

public void sendMail(String recipient, String subject, String body) {


Intent i = new Intent(Intent.ACTION_SEND);
i.setType("plain/text");
i.putExtra(android.content.Intent.EXTRA_EMAIL,new String[] { recipient });
i.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
i.putExtra(android.content.Intent.EXTRA_TEXT, body);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
}

private TableLayout tl;


private int rowCount=0;

private void showAllCourse(String records[])


[36]

{
rowCount=0;
setContentView(R.layout.table);

// Get the TableLayout


tl = (TableLayout) findViewById(R.id.maintable);

TableRow tr = new TableRow(this);


tr.setBackgroundColor(Color.parseColor("#FF86AB60"));

TextView name = new TextView(this);


name.setText("Name");
name.setTextSize(18);
tr.addView(name);

TextView interest= new TextView(this);


interest.setText("Interest");
interest.setTextSize(18);
tr.addView(interest);

TextView year = new TextView(this);


year.setText("Year");
year.setTextSize(18);
tr.addView(year);

TextView dob= new TextView(this);


dob.setText("DOB");
dob.setTextSize(18);
tr.addView(dob);

[37]

// Add the TableRow to the TableLayout


tl.addView(tr, new TableLayout.LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));

for(int i=0;i<records.length;i++)
{
String columns[] = CampusNewsISActivity.split(records[i].trim(), "|");
rowCount++;
tr = new TableRow(this);
if(rowCount%2==0)
tr.setBackgroundColor(Color.parseColor("#FF86AB60"));
else
tr.setBackgroundColor(Color.parseColor("#FF48820E"));

tr.setLayoutParams(new LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));

name = new TextView(this);


name.setText(columns[0]);
name.setTextSize(18);
tr.addView(name);

interest = new TextView(this);


interest.setText(columns[1]);
interest.setTextSize(18);
tr.addView(interest);

year = new TextView(this);


[38]

year.setText(columns[2]);
year.setTextSize(18);
tr.addView(year);

dob = new TextView(this);


dob.setText(columns[3]);
dob.setTextSize(18);
tr.addView(dob);
tr.setGravity(Gravity.LEFT);
tr.setMinimumHeight(120);

// Add the TableRow to the TableLayout


tl.addView(tr, new TableLayout.LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));

tr.setOnClickListener(tableRowClickListener);
//

tr.setTag(""+i);

}
}//end of showAllCourse

private void viewCourse()


{
try
{
CampusNewsISActivity.showLog("Inside applyCourse:");
response=null;
InputStream is=LoginActivity.hitUrl(BASE_URL+"viewcourse.php?");
if (is != null)
[39]

{
ByteArrayOutputStream byteBuffer = new
ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = 0;
while ((len = is.read(buffer)) != -1) {
byteBuffer.write(buffer, 0, len);
}
byte[] data=byteBuffer.toByteArray();
response=new String(data);
}//end of if
else
{
CampusNewsISActivity.showLog("IS null");
}
}
catch(Exception e)
{
formProgressdialog.dismiss();
CampusNewsISActivity.showLog("Exception in applyCourse e:"+e);
}
showResults();
}//end of applyCourse

private void showResults()


{
runOnUiThread(new Runnable() {

@Override
public void run()
}
[40]

});
alertDialogBuilder.setNegativeButton("Close",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id)
{
finish();
}
});
alertDialogBuilder.show();
}//end of showAlert

public void run()


{
try
{
if(doViewCourse)
{
viewCourse();
doViewCourse=false;
}
}
catch(Exception e)
{
CampusNewsISActivity.showLog("Exception in run e:"+e);

}
}//end of run
}

[41]

FileArrayAdapter.java
package com.cnis;
import java.util.List;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;

public class FileArrayAdapter extends ArrayAdapter<Option>{

private Context c;
private int id;
private List<Option>items;

public FileArrayAdapter(Context context, int textViewResourceId,


List<Option> objects) {
super(context, textViewResourceId, objects);
c = context;
id = textViewResourceId;
items = objects;
}
public Option getItem(int i)
{
[42]

return items.get(i);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {

int[] colors = new int[] {0xFF86AB60,


0xFF48820E/*Color.parseColor("#ffffff"), Color.parseColor("#fef2e8")*/ };

View v = convertView;
if (v == null) {
LayoutInflater vi =
(LayoutInflater)c.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(id, null);
}
final Option o = items.get(position);
if (o != null) {
TextView t1 = (TextView) v.findViewById(R.id.TextView01);
TextView t2 = (TextView) v.findViewById(R.id.TextView02);

if(t1!=null)
t1.setText(o.getName());
if(t2!=null)
t2.setText(o.getData());
int colorPos = position % colors.length;
v.setBackgroundColor(colors[colorPos]);

}
return v;
}

}
[43]

4.4 TESTING
Testing Objectives :

Testing is a process of executing a program with the intent of finding an error.

A good test case is the one that has high probability of finding an undiscovered error.

A successful test is the one that uncovers most of the undiscovered error.

TestingPrinciples :

Alltestcaseshouldbetraceabletothecustomerrequirements.

Tests should be planned long before the testing begins.

Exhaustive testing is not possible.

Tobemosteffectivetestingshouldbeconductedbyan independent thirdparty.

Testability:

Operability: - The better it works the more efficiently it can be tested.

Observability:- What you see is you test.

Controllability: - The better you control the better it can be optimized.

Decomposability: -By decomposing we can quickly isolateproblems and perform testing.

Stability: -The fewer changes the fewer disruptions to testing.

Simplicity- The less there is to test the more quickly we can test it.

Understandability- The more information we have, the smarter the test.

[44]

4.1.1 DIFFERENT TEST CASES


Sr.No
1.

Test cases

Input

Output

Expected Output

Administrator
a) View course

Click on icon

Application
b) Transfer files

Mode of sending

Various course

Display the number of

information

course application.

Alert message

Message and transfers file

through HTTP (i.e via

where it need to send.

mail or message)
C) send
notification

2.

IP address and

Alert message

notification message

Display notification on
notification bar

Student
a)Downloads

Click on icon and

Couldnt detect

Student should able to

internet connection

download files which has


been sent by the admin.

b)post a request

IP address of admin

Alert message

Message should be
successfully send to the
admin.

C)Apply for
course

3.

Student name,

Alert message

Proper entry in the

interested in course,

database in view history

year, DOB.

section.

Guest
a)View course,
Awards, Videos

Click on icon

Information about

All related images, videos

related field

are displayed.

Events, images.

[45]

4.

Load testing
a)Sending
notification to more

More than one file to

Time delay, could

To all student notification

students.

not connect.

should be send.

than one student


5.

Login

User name ,password

Login success

Login success

6.

New sign up

User name, password

Successfull

Can access CNIS

registration.

application.

[46]

result

[47]

5.1 SNAPSHOT OF PROJECT

Figure 13: Administrator login


When admin entrer valid user name and password, then only he can access
CNIS Application as a Administration.

Figure 14: Administrator Tab


As adminstrator login succesfully, Adminstrator tab is visible along with Student &
Guest tab

[48]

Figure 15: student login


If students want to acces CNIS application they need to signup for first time. If they try
to login without new signup it will give message as Signup Failed.

Figure 16: student Tab


After Signup student can see the two tab (student,guest) which contain Downloads,Apply for
course,Enable alert mode sections etc.
[49]

Download:-

Figure 17: Download List Database


Downloadlist Database shows all the available file download for student.

Figure 18: Files Directory


By long press on file student can save download files to directory /sdcard/.
[50]

Apply For course:-

Figure 19: View Course


Student fill the form via Apply for Course section in student tab.

Figure 20: Course Database


course database store the information about form submitted by student.

[51]

Figure 21: View History


Admin can view the course applied by student in View History.

Transfer File:-

Figure 22: File Transfer


Above Window show all the file available in /sdcard/. Admin can send file by long
pressing on selected file via bluetooth,email,phone etc.
[52]

Send Notification:-

Figure 23: Admin Notification


Admin send notification to CR of class in form of message like lecture is cancelled,
lecture schedule which give toast message as conformation of notification.

Figure 24: Student Notification


Student receive notification toast message on his device on notification bar.
[53]

Guest Login:-

Figure 25 : Guest Tab


Guest can view different information about capmus such as courses,images awards etc in
Guest Tab

Figure 26: Course Tab


[54]

Figure 27: Events Tab

Figure 28: Alumni Tab

[55]

Figure 29: Images Tab

[56]

Advantages of
project

[57]

The major project advantages are aimed at addressing the major concerns like: Simplicity, Cost
effectiveness and Security

Untutored Access Simple and convenient to use: the user interface in CNIS is simple and very
user friendly. The user can easily navigate through the application without any hindrance thus
providing user satisfaction.

Handiness The user, can access the application anywhere throughout the campus thus proving
mobility and useful at all times and at all places. In essence, CNIS brings the information to the
users by bringing the user to the information.

Freedom of movement The CNIS application will be developed for Android based phones
and most of the smart phones being Android 2.2 or Android 2.3, all applications work on these
platforms thus providing mobility and compatibility with all Android based smart phones..

Time redemptive CNIS application provide ubiquity to the users which saves the precious
time for the users and administration and makes the office timings constraints redundant for the
students using the application, this is due to the automation of everything and the fact that there
is no human intervention.

Minimized Human Intervention - Automatic processing of user request.


Limitations & Constrants:1. Android applications at times are device specific. Most important is memory management.
The CNIS application requires crisp and richness in its user interfaces which can take up a
considerable amount of memory. Thus the biggest challenge is to develop the application giving
a rich feel and at the same time having memory optimization. One of the ways we can attain this
is by converting some PNG images into JPEG format which reduces the image size by nearly 70
to 80 percent.
2. Not all networks have full coverage and some locations may be protected for electromagnetic
radiation, therefore not all users may be capable of getting a signal.
3. Not all users may have a smart phone. Therefore it may be a while before the target audience
for the application widens.
4. Delay of transmission of information by the GSM operators and intra and inter connection
delays.

[58]

Conclusion
&
Future scope

[59]

7.1 CONCLUSION
Thus we have developed a novel approach to sharing information between students, lecturers
and the administration in order to enhance quality of information in campus environment. We
describe a network for distributing campus information among lecturers and students. The
concept of developing campus information is to ensure that student can access information at any
time, at any locations and ad-hoc basic. Information System helps the students and lecturers on
campus to find and access information based on ad-hoc basic, which is of interest and relevant to
students or lecturers through a smart phone. We will develop an Android application thereby
providing a collaborative communication system within the campus aiding everyone
participating in it. This will create a ubiquitous environment throughout the campus making it a
very positive and exciting experience for all the participants.
This is my first attempt in developing a mobile application which gave me a basic understanding
of development and challenges of mobile application development. The main aim of the project
is to provide an easy to use application for searching the restaurants. The application has been
implemented and tested on real devices.

[60]

7.2 FURTHER SCOPE

The application can be improved in many ways and can be extended to support more devices like
the tablets and iOS devices.

This Project can be implemented from intranet to internet environment.

Many other functionalities can be added such as payment option for various form in college.

[61]

References

[62]

[1]. CAMPUSNEWS Michael Schulze Department of Computer Science, Artificial Intelligence


Research Group University of Koblenz.(IEEE Paper)
[2]. http://www.innovantesindia.com/wordpress/2011/04/01/HTTP/
[3]. http://developer.android.com/guide/topics/fundamentals.html
[4]. http://www.handster.com/campus_application_of_fh_kiel.html
[5]. http://www.rapidsofttechnologies.com/android-application-development.html
[6]. Campus Wireless Infrastructure Proposal. IET Communications Resources.
[7]. http://www.waterfall-model.com/
[8]. http://developer.android.com/guide/basics/what-is-android.html
[9]. http://www.hitechtutorials.com/android-for-mobile-computing-in-the-near-future-is-the-bestchoice.html
[10]. Roger Pressman, Software Engineering

[63]

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy