Implementation of ICT Technology Using Android
Implementation of ICT Technology Using Android
Implementation of ICT Technology Using Android
INTRODUCTION
1.1 AN OVERVIEW
Information and Communications Technology (ICT) can impact student learning when
teachers are digitally literate and understand how to integrate it into curriculum. Schools use a
diverse set of Information and Communications Technology tools to communicate, create,
disseminate, store, and manage information. In some contexts, Information and Communications
Technology has also become integral to the teaching-learning interaction, through such
approaches as replacing chalkboards with interactive digital whiteboards, using students’ own
smart phones or other devices for learning during class time, and the “flipped classroom” model
where students watch lectures at home on the computer and use classroom time for more
interactive exercises. When teachers are digitally literate and trained to use Information and
Communications Technology, these approaches can lead to higher order thinking skills, provide
creative and individualized options for students to express their understandings, and leave
students better prepared to deal with ongoing technological change in society and the workplace.
1
1.2 ABSTRACT
Recently, the development of ICT gradually replaces the traditional teaching pedagogy. Face
to face classroom interaction is getting replaced by on-line communication, traditional white or
blackboard is getting replaced by interactive whiteboard, and books or printed resources are
getting replaced by on-line resources. It is believed that technology can bring our education
sector from the dark age to the light age. This is because the implementation of ICT in schools
can bring about some potential benefits. However, to obtain those benefits we have to overcome
its enormous difficulties. These difficulties may vary from school to school, from region to
region, and from country to country.
This study was conducted to investigate students’ use of Information and Communication
Technology and the factors that relate to their technology use. The study found that majority of
the students used Information and Communication Technology to communicate with peers more
than other types of Information and Communication Technology application. However, the study
revealed that students’ pedagogical use of Information and Communication Technology was low.
2
1.3 OBJECTIVES
The following are the objectives which are to be achieved from the development of the ICT
application:-
Allowing students to access to list of related announcements with just a few simple clicks
anytime anywhere as long as the application is installed and Internet is available
Reducing the gap between students of different courses within institution thus enhancing
a friendly study environment
Reducing the use of paper forms or documents by replacing them with digital ones; thus
promoting environment-friendliness
1.4 SCOPES
The following are the scopes and requirements of the chosen system:
User Verification
In order to further explore the contents of the application, a verification process will
firstly be initiated to determine if the user is a registered student or a valid staff. This verification
process will be performed with the aid of a database. Successful verification of a student will
eventually bring him/her to the main screen where all the personalized and customized settings
are being displayed. As for staffs that are responsible to channel out announcements, a fixed
3
screen which allows them to do so will be displayed after successful login. Failure in verification
will result in an error message.
The application will be designed in such a way that it incorporates attractive and creative
elements which could eventually promote user exploration and maintain student’s loyalty
towards the application. In contrast with the complexity of existing platforms in displaying
announcement to students, announcements presented via this application will be done in a much
simpler manner in terms of organization and ease of access. Every module available in this
system shall be accessible via fewer clicks when compared to existing platforms.
Downloadable Contents
Interaction-Enabled Announcements
For every announcements made, students should be able to enquire, comment or make
suggestions using their own profile ID. Administrator or the staff who is responsible in posting
that particular announcement will then respond appropriately towards the statements made by the
students. Other students are also allowed to participate if there are any discussions being held in
which they can share their knowledge.
4
2. SYSTEM SPECIFICATION
INPUT/OUTPUT
PROCESSING
System should generate username and password for both student and staff.
System should inform student about the security of their personal information.
ERROR HANDLING
5
Non-functional requirements are requirements that specify criteria that can be used to judge the
operation of a system, rather than specific behaviors. This should be contrasted with functional
requirements that specify specific behavior or functions. In general, functional requirements
define what a system is supposed to do whereas non-functional requirements define how a
system is supposed to be. Non-functional requirements are often called qualities of a system.
Other terms for non-functional requirements are "constraints", "quality attributes", "quality
goals" and "quality of service requirements". Qualities, aka. Non-functional requirements, can be
divided into two main categories.
1. Execution qualities, such as security and usability, are observable at run time.
2. Evolution qualities, such as testability, maintainability, extensibility and scalability, are
embodied in the static structure of the software system.
Scalability
The network-deployment cost for scaling up these systems must be manageable merely
having the technology to provide a user service is not sufficient. The service-provider
involvement requires that different infrastructure services be available. This information helps
service providers to determine where to invest next. The data-collection facility is that service
want to integrate into their service and system.
Interoperability
It is important that the interface is simple and intuitive Instead of making products and
services ever more sophisticated, they must be made intuitive, simple, and useful in solving
problems.
Reliability
In order to be more reliable Jain SIP is used. It enhances the performance as well as the
reliability of the system and communicate with more number of people at a time. It is imperative
that the service reaches thousands of people, and that it is absolutely reliable.
Portability
6
In order to be more portable we use Application server Tomcat5.0 and even the voice server
is independent of the platform.
Extensibility
The application should be widely extensible, where we can include many services like fax
can be added in to UMS server. Also many call routing mechanism can be included.
Efficiency
The system should function in an efficient manner with proper acknowledgements and
responses at high speed.
The hardware specification is necessary to support the proposed system, which have been
identified, ordered, delivered, installed and tested at the time of installation.
7
The software specification is the one says about the development environment of the package.
3. SYSTEM STUDY
By using this system we have number of drawbacks which we have mentioned below:
Editing personal details also cause a hassle for students as they need to travel back and
forth to their own faculty to complete them.
Most of the things are done manually.
Some of the institution follow computerized system but it is not so efficient as it helps
only staffs and not students.
For every information or records, student have to visit office or have to communicate
with the staff which is very tedious and time consuming.
Students performance are not revealed, so it becomes difficult for the student to know
about themselves.
9
The proposed system is one of the automated wireless applications. This application is
centralized by the objective of design of new system to automate the current procedure by
managing it automatically. The developed application keeps the information on a central server
which is to be access by the user by providing a correct user id and password. The information
which is kept on a server is accessed through mobile application installed on student’s
Smartphone. By using this application moreover the redundancies of data as well as effectiveness
of the data correlation of a specified student can be managed easily. The Information and
Communication between the students and staffs will be easily managed.
By having access to internet in their school the students will not totally depend on the
staffs.
The student can find information that they need, copy it, and go on to find more and more
information.
By using this learning system, the students also becomes self-managed in their learning
process.
10
3.3 MODULE DESCRIPTION
Given that the student has downloaded the application, then the student should be
able to register through the application by providing the details required for registration.
Starting from academic session, it is required that student should register for the
application at the beginning of every semester. After registration they can login into the
system by providing the user id and password.
HOME SCREEN:
Upon successful login, student will be navigated into the home screen of the
application.
STUDENT DETAILS:
The students are expected to enter their personal details which will then be
verified by the staffs. The teachers are expected to enter the academic and placement
details. Academic details include students CGPA. Placement details can only be entered
in the final year and includes the company name where the student is placed and his pay
package or if the student has opted for higher studies then the corresponding details will
be entered. Notes can be posted by teachers from their respective login and can be viewed
on a notes board section of the application with title for a notes associated with it.
The notes for a particular class will be broadcasted to that class only. Subject
teachers for each semester are required to enter the attendance details of students. The
system should be able to generate attendance reports (for lectures and practical’s) for
individual student for each subject. These reports will be sent to the student as well as his
parents periodically. The teacher can also view the attendance record of students during a
particular interval. If the attendance of some student falls below the threshold value, then
the particular student should be notified regarding the same.
11
ANNOUNCEMENT SCREEN:
COMMENT SCREEN:
4. SYSYTEM ANALYSIS
12
System analysis is required to build and verify an effective system. In created social orders
we assume that all youngsters are enlisted during childbirth and that all individuals are enrolled
when they bite the dust with a medicinally relegated reason for death. We scarcely consider birth
and demise enrollment since we once in a while are the initiators; it is typically the establishment
where the birth happens that registers the infant, and the funeral director who enlists a passing.
Our contribution is regularly constrained to picking a name for the kid and marking the
enrollment papers.
In most creating nations, nonetheless, the onus is totally on the family to enlist a birth or
demise. In any event, accepting they know about this commitment, it frequently requires
considerable exertion and cost and can take a little while. This to a limited extent clarifies why
such a large number of births and passing’s go unrecorded. For what reason do we need a birth
endorsement? Surely, the issuance of a birth endorsement is steady with the Convention on the
Rights of the Child that expresses that each kid ought to be enrolled following birth. What's
more, in practically all social orders a birth testament is a fundamental authoritative record that
offers personality to a youngster, and naturally gives various rights, for example, the privilege to
human services, nationality, tutoring, identification, property proprietorship, casting a ballot,
formal work, or access to banking administrations. While, for the group of the expired, a passing
endorsement guarantees their entitlement to acquire property, to get to business and money
related qualifications, and to guarantee any accessible protection benefits.
13
It is necessary and prudent to evaluate the feasibility of a project at the earliest possible
time. There may be different ways of checking whether a system is feasible or not. Feasibility
study can be divided into three basic forms as follows.
Operational feasibility:
In this test, the operational scope of the system is checked. The system under
consideration should have enough operational research. It is observed that proposed system is
very user friendly and since the system is built with enough help, even persons with little
knowledge of windows can find the system very easy.
Technical feasibility:
This test includes a study of function, performance and constraints that may affect the
ability to achieve an acceptable system. This test begins with an assessment of the technical
viability of the proposed system. One of the main factors to be accessed is the need of various
kinds of resources for the successful implementation of the proposed system.
Economical feasibility:
An evaluation of development cost weighed against the ultimate income of benefit from
the development of the proposed system is made. Care must be taken regarding the costs that
incur in the development process of the proposed system.
14
Android Software Development Kit (SDK)
The Android SDK which is freely downloadable via Android’s main website provides
developers the API libraries and tools necessary to build, test and debug apps for Android. Plus,
the Android library includes specifications for the use of multitasking, drag and drop and swiping
between screens. Thus, if the Android application for this project is to be developed, this Android
SDK is vital to be used. Since different computer platforms require different type of SDK, a
proper checking in terms of compatibility and system requirements should be performed before
downloading and installing a SDK. The Eclipse IDE, a platform which allows programmers to
code in Java, will be installed first before plugging-in the chosen Android SDK.
Android platform can be generally defined as a software bunch for mobiles which include
an operating system, middleware and key applications. Google which acquire Android Inc. in
2003 has been constantly researching and updating the versions of Android to fix bugs faced by
previous versions besides adding in more functionalities and specifications. The latest version of
Android which can be found in the market is Android 4.1, Jelly Bean which was released mid
2012. Among the improved functionalities implemented on this latest version are enhanced
accessibility, bi-directional text and other language support, expandable notifications, resizable
app widgets, high resolution contact photos, Android Bean and multichannel audio.
(Developer.android.com 2012)
Applications - Set of core application that comes with Android distribution such as Calendar,
Map Browser, Web Browser and Contacts application
Libraries – Includes System C Library, surface manager, 2D and 3D graphic engines, Media
Codecs, SQLite and web browser engine, LibWebCore
15
Android Runtime - Consist of a set of Core libraries that provides most Java functionalities and
Dalvik virtual machine which act as a translator between application side and operating system
Linux Kernel - For core system services with all these layers integrated, Android platform is
said to be successful in offering many features to the end user which covers the area of
application development, internet, media and connectivity.
Most of the important features and interfaces in the UTAR Android application will be
developed using Java programming language since most Android devices support this language.
Since Android implements the open source platform, available code samples and supports from
fellow developers can be easily accessed thus, finding, sharing and the enhancement of solutions
for problems can be easily performed.
XAMPP
XAMPP, a cross-platform web server solution stack package, will be installed and used in
system development machine since it is free and open-source. Plus, since PHP will be used as the
main programming language for the development of websites used to manipulate data for the
system, XAMPP is deemed to be the best package to be installed since it supports and
incorporates well with the aforementioned language. Among the included tools in the package
are Apache HTTP software and MySQL database. An important module within XAMPP is the
phpMyAdmin where all manipulation of system database will be Performed.
16
The following diagram shows a clearer picture of the Android layers:
There are many strengths of Android which are worth to be applauded for. For instance,
developers may most likely prefer creating apps for Android devices since Android offers an
open development platform, allowing them to use third-party tools to create the particular app.
With the implementation of open source platform, anyone with the right skills and knowledge
can create an app specially tailored for Android devices without tight restrictions or approvals.
Besides, this strength of Android also enhances flexibility since it allows developers to update
their apps anytime to accommodate a range of different devices and play around with many
features and functions of their app during the development process. (Priya Viswanathan n.d.)
Developing an Android app may also be easy especially for Java programmers since all
applications under Android mainly use Java, a commonly used programming language in current
days. Hassell (2010) also commented that since Android implements the open source platform,
17
available code samples and supports from fellow developers can be easily accessed thus,
attracting more new potential developers to learn and create apps either with basic or complex
functionalities.
In contrast with its major competitor’s application market, Apple’s App Store which
rejects application submissions that are deemed too simple or are similar to existing apps,
Android Marketplace doesn’t censor its apps. In other words, apps developed by any developers
will have equal chances to enter and to be published in the market but of course, the best one will
only succeed. Meanwhile, since Android is an open platform, manufacturers have the flexibility
to pair the OS with any hardware they wish, thus providing end users a higher number of device
selections in terms of specifications, design, screen and other physical appearances. (Escallier
2010) However, Android does have its cons too. Though open source platform is part of
Android major strengths, this technique has also raised security and quality control
concerns to app developers. Since anyone can develop and present new apps in the market
without much restrictions and approvals, end users may purchase low-quality apps numerous
times thus wasting their resources. With the open source concept, developers may also face
piracy threats and loss of potential profits since anyone could easily access to the same learning
resources and produce similar app. Meanwhile, hackers could also easily mimic popular apps
and trick end users into using the fake app which may contain malicious elements. (Dempsey
2012)
18
there may be an incident in which some devices installed with certain versions of Android will
not be able to run applications that work fine either on the same device or another device of
different Android version. With such problem, fixing bugs and updating apps will also cause
headache to developers as they have to make sure that the app could be supported by all Android
devices as soon as an update is performed. (Rodriguez 2012).
19
5. SYSTEM DESIGN
Input Design:
The input design is the process of entering data to the system. The input design goal is to enter to
the computer as accurate as possible. Here inputs are designed effectively so that errors made by
the operations are minimized. The inputs to the system have been designed in such a way that
manual forms and the inputs are coordinated where the data elements are common to the source
document and to the input. The input is acceptable and understandable by the users who are
using it. Once identified, appropriate input media are selected for processing.
The input design also determines the user to interact efficiently with the system. Input design is a
part of overall system design that requires special attention because it is the common source for
data processing error. The goal of designing input data is to make entry easy and free from errors.
The main objectives that are done during the input design are:
20
Data is transmitted to the computer
Validation of input data is done
Output Design:
Computer output is most important and direct source of information to the user. Efficient of
intelligible output should improve the system relationship with the user and help in decision-
making. Major forms of output are hard copy from the printer and soft copy from the CRT unit.
The output design was done so that results of processing could be communicated to the users.
The various outputs have been designed in such a way that they represent the same format that
the office and management used to.
Computer output is the most important and direct source of information to the user. Efficient,
intelligible output design should improve the systems relationships with the user and help in
decision making. A major form of output is the hardcopy from the printer.
21
A data flow diagram (DFD) is a graphical representation of the "flow" of data through
an information system, modeling its process aspects. Often they are a preliminary step used to
create an overview of the system which can later be elaborated. DFDs can also be used for
the visualization of data processing (structured design).
A DFD shows what kinds of data will be input to and output from the system, where the
data will come from and go to, and where the data will be stored. It does not show information
about the timing of processes, or information about whether processes will operate in sequence
or in parallel (which is shown on a flowchart).
It is common practice to draw the context-level data flow diagram first, which shows the
interaction between the system and external agents which act as data sources and data sinks. On
the context diagram the system’s interactions with the outside world are modeled purely in terms
of data flows across the system boundary. The context diagram shows the entire system as a
single process, and gives no clues as to its internal organization.
This context-level DFD is next “exploded”, to produce a Level 0 DFD that shows some
of the detail of the system being modeled. The Level 0 DFD shows how the system is divided
into sub-systems (processes), each of which deals with one or more of the data flows to or from
an external agent, and which together provide all of the functionality of the system as a whole. It
also identifies internal data stores that must be present in order for the system to do its job, and
shows the flow of data between the various parts of the system.
Data flow diagrams were proposed by Larry Constantine, the original developer of
structured design, based on Martin and Estrin’s “data flow graph” model of computation.
Data flow diagrams are one of the three essential perspectives of the structured-systems
analysis and design method (SSADM). The sponsor of a project and the end users will need to be
22
briefed and consulted throughout all stages of a system’s evolution. With a data flow diagram,
users are able to visualize how the system will operate, what the system will accomplish, and
how the system will be implemented. The old system’s dataflow diagrams can be drawn up and
compared with the new system’s data flow diagrams to draw comparisons to implement a more
efficient system. Data flow diagrams can be used to provide the end user with a physical idea of
where the data they input ultimately has an effect upon the structure of the whole system from
order to dispatch to report. How any system is developed can be determined through a data flow
diagram model.
In the course of developing a set of levelled data flow diagrams the analyst/designers is
forced to address how the system may be decomposed into component sub-systems, and to
identify the transaction data in the data model. Data flow diagrams can be used in both Analysis
and Design phase of system development life cycle (SDLC).There are different notations to draw
23
data flow diagrams (Yourdon & Coad and Gane&Sarson), defining different visual
representations for processes, data stores, data flow, and external entities.
A use case describes a sequence of actions that provide something measurable value to an
actor and is drawn as a horizontal ellipse an actor is a person, organization or external system
that plays a role in one or more interactions with your system. Fig. 5.4 illustrates how the
application and the user will interwork to achieve the desired goal. It shows the different
functionalities a user can do as well as the system. User can start the capture, stop the capture,
save logs while the application can start monitoring the network, display graphs, get packet
headers, destinations, drop unwanted packets and get packet data.
24
25
5.6 DATABASE DESIGN
Database Design is the process of producing a detailed data model of a database. This
logical data model contains all the needed logical and physical design choices and physical
storage parameters needed to generate a design in a Data Definition Language, which can then be
used to create a database. A fully attributed data model contains detailed attributes for each
entity. The term database design is used to describe many different parts of the design of an
overall database system.
The logical design of the base data structures used to store the data. In the relational
model these are the tables and views. In an object database the entities and relationships map
directly to object classes and named relationships. However, the term database design could also
be used to apply to the overall process of designing, not just the base data structures, but also the
forms and queries used as part of the overall database application within the database
management system (DBMS).
The process of doing database design generally consists of a number of steps which will
be carried out by the database designer.
The process of SQL Server Management Studio database design is divided into different
parts. It consists of a series of steps. They are
Requirement Analysis
Conceptual Database Design (ER-Diagram)
Logical Database Design (Tables, Normalization etc.)
Physical Database design (Table Indexing, Clustering etc.)
Requirement Analysis
26
In the phase a detailed analysis of the requirement is done. The objective of this phase is
to get a clear understanding of the requirements. It makes use of various information gathering
methods for the purpose. Some of them are:
Once the relationships and dependencies are identified the data can be arranged into
logical structures and is mapped into database management system tables. Normalization is
performed to make the relations in appropriate normal forms.
In order to fully implement a secure MySQL database, it is necessary to learn the MySQL
access control system. There are four privilege levels that apply:
Database Backups
27
Another area that often gets lost in the layers of security is the critical area of database
backup and recovery. As a part of whatever backup type is used, testing recovery of data is
mandatory. Further, check pointing has been improved to be done more frequently, also easing
the recovery process. With frequent check pointing, as well as transaction logging and making
regular backup copies, backup and recovery of databases is made more straightforward.
Specifically, the InnoDB transactional model allows for commit, rollback and crash
recovery. By adding locking capabilities for users, having many users access the database at the
same time becomes faster and more stable. To ensure that InnoDB is available with your
installation, configure your package with the ‘with-innodb’ flags. You will also want to specify
InnoDB options in your ‘my.cnf’ file. Details on these set-up options can be found at the MySQL
Documentation on InnoDB Start-up Options.
The following Fig 3.3 describes the Xampp Control Panel Application form which shows
the start the MySQL connectivity.
28
The privileges can get very granular, so it is important that they are used in a well-planned
fashion. The types of privileges include:
Alter
Delete
Create
Drop
Execute
Select
Update
Once a database is completely set up, these privileges should be reviewed prior to going to
any usage of the database to ensure that the privileges were set up appropriately.
The Fig 3.3.1 describes how to create a new database in the My_SQL database. It
contains the database name and also the locations were the database is created and where it is
accessed.
29
Fig 3.3.1 Creating a New Database in MySQL
The CREATE TABLE statement is used to create a table in MySQL. We must add the
CREATE TABLE statement to the mysql_query () function to execute the command. The
following figure describes how to create a tables in the database.
The following Fig 3.3.2 describes to create a new table in the database job scheduling. It
includes the table name and the entities used in the table, its size and also its type.
30
Fig 3.3.2 Create a New Table in the Database
There are several GUI consoles available to make the management of MySQL database
easier. For instance, MySQL Explorer allows several management processes to be done via an
interface that runs on several windows platforms. The MySQL team also has a version in beta
called MySQL Control Center.
31
Insert Data Into a Database Table
The INSERT INTO statement is used to add new records to a database table. The
following form describes to create a new data into the database table which is already created.
32
6. SYSTEM TESTING AND IMPLEMENTATION
The most important phase in system development life cycle is system testing. The
number and nature of errors in a newly designed system depends on the system specification and
the time frame given for the design.
A newly designed system should have all the subsystems working together, but in reality
each subsystems work independently. During the phase, all the subsystems are gathered into one
pool and tested to determine whether it meets the user requirements.
Testing is done in two level-Testing of individual modules and test the entire system.
During the system testing, the system is used experimentally to ensure the software will run
according to the specifications and in the way the user expects. Each test case is designed with
the intent of finding errors in the way the system will process.
Testing is vital to the success of the system. System testing makes a logical assumption that
if all the parts of the system are correct; the goal will be successfully achieved non- testing
leads to error that may not appear until months later. This creates two problems.
The time lag between the cause and appearance of the problem.
The effort of system error on files and records within the system.
Unit testing
33
Integrated testing
Validation testing
White Box testing
Unit Testing
Testing of individual programs or modules is known as unit testing. Unit testing is done
both during documentation and testing phase. Unit testing focuses on verification of effort on the
smallest of software design. Modules using the detailed design description as a guide, important
control paths are tested to uncover errors within the boundary of the module. The relative
complexity is test and errors detected as a result are limited by the constraints scope established
for unit testing. Unit testing is always white box oriented and the step can be conducted in
parallel for multiple modules.
Integration Testing
Validation Testing
The most common web application security weakness is the failure to properly validate
input coming from the client or environment before using it. The weakness leads to almost all of
the major vulnerabilities in web applications, such as cross site scripting, SQL injection,
interpreter injection. Data from an external entity or client should never be trusted, since it can be
arbitrarily tampered with by an attacker. Validation doesn't just mean putting your pages through
some web driven testers. It also means test-driving it with friends, relatives, co-workers, and
34
strangers. Everyone has a different system and way of working, so ask for others to test-drive
your styles or themes before you make them public.
White box testing is a test case method that uses control structure and procedural design to
drive test cases using white box testing method. Software engineer can test cases that:
White box testing sometimes called as glass box testing is a test case design method that uses the
control structures of the procedural design to derive test cases.
Using White Box testing methods, the software engineer can derive test case, that
guarantee that all independent paths with in a module have been exercised at least once, exercise
all logical decisions on the true and false sides, execute all loops at their boundaries and within
their operational bounds, exercise internal data structures to ensure their validity. “Logic errors
and incorrect assumptions are inversely proportional to the probability that a program path will
be executed“. Black Box Testing: Black box testing, also called as behavioral testing, focuses on
the functional requirements of the software. That is, black box testing enables the software
engineer to derive sets of input conditions that will fully exercise all functional requirements for
a program.
Black box testing focuses on the fundamental requirements on software and on input
and output of the module. It enables the software engineers to derive set of input condition that
35
will truly exercise all functional requirements of a program. Black box testing is rather a
contemporary approach that is likely to uncover different class of errors.
System implementation is the process of developing the system based on the user
requirement that has to be enforced in any system while development. Security window prohibits
unauthorized users entering the system. Implementation is the stage of the project when the
system design is turned into fully working system. This stage consists of following steps.
The purpose of System Implementation can be summarized as follows: making the new
system available to a prepared set of users (the deployment), and positioning on-going support
and maintenance of the system within the Performing Organization (the transition). At a finer
level of detail, deploying the system consists of executing all steps necessary to educate the
Consumers on the use of the new system, placing the newly developed system into production,
confirming that all data required at the start of operations is available and accurate, and
validating that business functions that interact with the system are functioning properly. A key
difference between System Implementation and all other phases of the lifecycle is that all project
activities up to this point have been performed in safe, protected, and secure environments,
36
where project issues that arise have little or no impact on day-to-day business operations. Once
the system goes live, however, this is no longer the case.
The system has been designed and developed according to the current requirements of the
user. At the same time the system is very flexible and extensible, Hence, future enhancements, if
needed can be made without much difficulty, so new applications can be developed and it be
integrated with the existing one very easily.
The following future enhancements may be worthwhile to make the tool usable to a wider
section of users.
Currently only text-based reports are handled. It can be extended to include graphics and
images. Also music and audio clips are considerable.
User level authentication and authorization may be of use in certain circumstances.
37
7. CONCLUSION
As Android-smart phone users among college students will never stop to increase, an
announcement portal which is to be implemented in Android platform is relevant enough to be
developed. With the availability of this application named Implementation of ICT Technology,
problem faced by university staffs in conveying messages to students could be solved in a more
effective and efficient way when compared to other existing platforms. Plus, students will not
have difficulties to retrieve new and updated announcements anytime anywhere as long as their
Android phone is capable of retrieving Internet connection, thus, ruling out chances for them to
miss out bulletins or alerts related to them or which serves as their golden opportunities for
future career or achievements. The sophisticated features that Android platform have could also
result in a system announcement portal which is more attractive, user-friendly, interactive and
notification-effective.
As the developed application is targeted to students and their collaboration in the testing
phases is highly essential, the agile method is selected. Meanwhile, two techniques are used to
gather requirements for the project, namely Survey method and Interview Sessions. Survey
method is highly effective to gather a huge amount of students’ information regarding popularity
of Android, opinions of existing announcement platforms and expectations of system in a short
time. Interview session with one of the staff of the top management in another case, could aid in
getting a clearer view on what problem which is faced by the organization in conveying
messages to students. In the implementation process, Java programming language will be used
since Android development supports the mentioned language. As every Android application
recommends never-ending upgrade of versions to remain competitive in the market or to
38
maintain loyalty of current users, this application should also consider further enhancements in
terms of notifications, automatic sign-in and update and add-on of other new modules as
requested by students themselves.
The future enhancements which could be implemented into our application is to maintain
the loyalty of its users besides making it more sophisticated, usable and contributive. The
following are the enhancement where developers shall consider:
Trigger of Notifications
Automatic Sign-In and Update
39
BIBLIOGRAPHY
[1] Brady, A. (2012) 3 Ways Mobile Apps Can Reward Customer Loyalty. [online] Available at:
http://therealtimereport.com/2012/09/03/3-ways-mobile-apps-can-reward-customer-loyalty/
[2] Clay, K. (2012) Will 2013 Be The Year of Loyalty Programs?. [online] Available at:
http://www.forbes.com/sites/kellyclay/2012/12/15/will-2013-be-the-year-of-loyaltyprograms/
[3] Dempsey, J. (2012) Android loses to Apple when it comes to security. [online] Available at:
http://www.cvbizjournal.com/columns/james-dempsey/android-loses-to-apple-when-itcomes-to-
security.html [Accessed: 7 July 2012].
[4] Developer.android.com (2012) Android 4.1 for Developers | Android Developers. [online]
Available at: http://developer.android.com/about/versions/jelly-bean.html
[5] Egham. (2012) Gartner Says Worldwide Smartphone Sales Soared in Fourth Quarter of 2011
With 47 Percent Growth. [online] Available at: http://www.gartner.com/it/page.jsp?id=1924314
[6] Escallier, P. (2010) Maximum PC | 10 Things Android Does Better Than iPhone OS - Page 1.
[online]Available:
http://www.maximumpc.com/article/features/10_things_android_does_better_iphone?page=0,0
40
[7]Gatherspace.com (n.d.) Agile Software Development. [online] Available at:
http://www.gatherspace.com/static/agile_software_development.html
[8] Haughey, D. (2009) Waterfall v Agile: How Should I Approach My Software Development
Project?.
APPENDIX
A. TABLE STRUCTURE
B. SCREENSHOTS
C. SAMPLE CODINGS
41