internet radio

104
DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 1 MAJOR PROJECT REPORT ON INTERNET RADIO FOR ANDROID DEVICE AT PATHPARTNER,BANGALORE Submitted by MAITREYEE Reg. no:- 95580020 M.C.A.:- 2008-2011 In partial fulfillment of the requirements for the Degree of the Master of Computer Applications DEPARTMENT OF COMPUTER APPLICATIONS COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY KOCHI - 682022

description

Final year project report

Transcript of internet radio

Page 1: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 1

MAJOR PROJECT REPORT ON

INTERNET RADIO

FOR ANDROID DEVICE

AT

PATHPARTNER,BANGALORE

Submitted by

MAITREYEE

Reg. no:- 95580020

M.C.A.:- 2008-2011

In partial fulfillment of the requirements for the Degree of the

Master of Computer Applications

DEPARTMENT OF COMPUTER APPLICATIONS

COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY

KOCHI - 682022

Page 2: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 2

CERTIFICATE

COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY

COCHIN-22

This is to certify that the project report entitled “INTERNET

RADIO” FOR ANDROID DEVICES is a bonafide record of the work done

by MAITREYEE (Regno.95580020) at PATH PARTNER,BANGLORE for

partial fulfillment of the requirements for the award of the Degree in

MASTER OF COMPUTER APPLICATIONS by the COCHIN

UNIVERSITY OF SCIENCE AND TECHNOLOGY, Cochin.

APRIL 2011

______________

Head of the Department

_______________ ______________

Page 3: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 3

Internal Examiner External examiner

Declaration

‘I hereby declare that the project work entitled INTERNET RADIO done

for PATH PARTNER, BANGALORE is submitted in partial fulfillment of the

requirements for the award of the degree of Master of Computer Applications and it is a

report of the original work done by me during the period of January – April 2011 in

Cochin University of Science and Technology, Trikkara.

Maitreyee

Page 4: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 4

Contents

Page No.

� ACKNOWLEDGEMENT 6

� SYNOPSIS 7

� INTRODUCTION 8

o ORGANIZATION PROFILE 9

o PROJECT OVERVIEW 10

o SYSTEMENVIRONMENT 13

o THEORITICAL FRAMEWORK 12

� SOFTWARE QUALITY ASSURANCE PLAN 20

o PURPOSE 21

o SCOPE 21

o DOCUMENTOVERVIEW 21

o TASKS 22

o SQL IMPLEMENTATION 22

o DOCUMENTATION 23

o AUDIT 23

o SOFTWARE DEVELOPMENT PROCESS 24

o PROJECT REVIEW 24

o TESTING & QUALITY CHECK 24

� SYSTEM ANALYSIS 25

o SYSTEM ANALYSIS 26

Page 5: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 5

o SYSTEM STUDY 34

o PROBLEM IDENTIFICATION 36

o FEASIBILITY STUDY 37

� SOFTWARE REQUIREMENTS SPECIFICATION 34

o REQUIREMENT SPECIFICATION 35

o FUNCTIONAL REQUIREMENTS 58

o NON-FUNCTIONAL REQUIREMENTS 58

� SYSTEM DESIGN 44

o ARCHITECTURAL DESIGN 45 o ER-DIAGRAMS 48 o USE CASE DIAGRAM 49 o MUDULAR DESIGN 50

� DATA DESIGN 52

o DATA FLOW DIAGRAMS 53

o DATABASE DESIGN 58

o USER INTERFACE DESIGN 62

� SYSTEM TESTING 63

o TEST PLAN 63

o SYSTEM TESTING 64

� SYSTEM DEVELOPMENT & IMPLEMENTATION 71

o DEPLOYEMENT STRATEGY 72

o DIFFERENT IMPLEMENTATION METHODS 72

o USER MANUAL 74

� SCREEN SHOTS 75

� FUTURE ENHANCEMENT 91

� CONCLUSION 93

� BIBLIOGRAPHY 95

Page 6: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 6

Acknowledgement I praise and thanks GOD for the blessings showered upon me and for being with me all

through this endeavor without which this work would have been an unfulfilled dream.

Completing a task is never a one-man effort. It offers the results of valuable contribution of

a number of individuals in a direct or indirect manner that helps in shaping and achieving

an objective. This project would not have taken shape, but for the guidance provided by

Mr Vishal , my Trainer cum project guide who helped me on my project and resolve all the

technical as well as other problems related to the project. Mr. Alexy has helped me so

much. He has the extreme grip over ANDROID fundamentals which were the great tool to

me to develop this project. I profusely thank them for the support provided to me.

I express a deep sense of gratitude to Mr Keshav karunakar, Director of PathPartner

Technology Consulting Pvt Ltd, Banglore for his efforts in giving start and his keen

interest, criticism and valuable guidance were indeed a source of inspiration for me. I am

grateful to them for lending their precious time and the patient listening they gave me

every time I needed help; in spite of their busy schedule.

I express my profound gratitude to Dr. K.V Pramod [HOD, DCA] and all staff members

of the Department of Computer Applications for their endless help and support. The

guidance and support received from all the members who contributed and who are

contributing to this project, was vital for the success of the project. I am grateful for their

constant support and help.

Above all I wish to express my heartfelt gratitude to my family, who has always been the

singular source of inspiration in all my ventures I have undertaken.

Maitreyee

Page 7: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 7

Synopsis Internet Radio is a project work done for PathPartner Technology Consulting Pvt Ltd. This is

made for android mobile. Internet radio (also known as web radio, net radio, streaming radio

and e-radio) is an audio service transmitted via the Internet. Music streaming on the Internet is

usually referred to as webcasting since it is not transmitted broadly through wireless means.

Enjoy music, talk and news from all over the world right on your mobile phone. Virtual Radio

contains hundreds of Internet radio stations with all sorts of sounds and news. Maybe your

favorite station is among them. Virtual Radio is based on one single basic functionality : playing

a given set of Internet radio channels. Just start up the player and it immediately starts playing

audio. There is no need to define play lists or find and type in URL's.

Internet radio involves streaming media, presenting listeners with a continuous stream of audio

that cannot be paused or replayed, much like traditional broadcast media; in this respect, it is

distinct from on-demand file serving. Internet radio is also distinct from podcasting, which

involves downloading rather than streaming. Many Internet radio services are associated with a

corresponding traditional (terrestrial) radio station or radio network. Internet-only radio stations

are independent of such associations. Internet radio services are usually accessible from

anywhere in the world.

We have the internet radio but it is for a particular device. This proposed

system is portable. This is applicable for any android devices. There are many modules. Like

categoty that listing the category and after selecting category the station list will be listed. Then

we can play radio. One module is searching.

Android is a mobile operating system initially developed by Android Inc. Android was bought

by google in 2005.Android is based upon a modified version of the linux kernal. Google and

other members of the open handset allience collaborated on Android's development and release.

The Android Open Source Project (AOSP) is tasked with the maintenance and further

development of Android.

Page 8: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 8

Organization Profile

INTRODUCTION

Page 9: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 9

PathPartner Technology Consulting Pvt Ltd was founded in the mid 2006 with a vision of

becoming a leading provider of solutions and expertise driven services to enrich the multimedia

experience in today's advanced media centric devices.

The organizational goal of Path Partner is centred on maximizing value for all the stakeholders

through technology and business excellence in the niche media-centric devices market, with

focus on select verticals such as: wireless handsets, digital home and surveillance.

PathPartner is a provider of Software Solutions, Product Engineering Services, System

Integration and Technology Consulting that enable the development and deployment of

convergence devices for wireless handsets, digital home, video surveillance and tele-presence

markets.

Path Partner's business thrives on addressing the challenges faced by OEMs, ODMs & Media

Chipset vendors in their new product introductions, arising due to increasing competition,

reduced shelf-life, increasing features & complexity, shrinking R&D budget, multiple product

lines and Geo specific requirements.

The Founders

The founding team of PathPartner comprises of techno-entrepreneurs who have scripted

successful careers in the embedded multimedia industry, with several decades of collective

experience in various roles from organizations of high repute. This team has, in the past, been

instrumental in building a successful multimedia technology organization - Emuzed (a California

based company that was acquired by Flextronics International in 2005), which pioneered in

licensing mobile multimedia IPs and solutions to most of the leading mobile and consumer

device OEMs, ODMs and semiconductor companies worldwide.

Company Philosophy

Our actions are guided by the following basic beliefs:

• A work culture that nourishes talent and encourages everyone to enjoy & excel at work

• Proactive investment in relevant emerging technologies to stay poised for the market

• Total customer satisfaction through quality delivery on-time every time, cost effectively

• Maintenance of high ethical standards and uncompromising integrity

• Continuous improvement of organizational processes

PROJECT OVERVIEW

Page 10: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 10

Internet radio (also known as web radio, net radio, streaming radio and e-radio) is an audio

service transmitted via the Internet. Music streaming on the Internet is usually referred to as

webcasting since it is not transmitted broadly through wireless means. The project “Internet

radio” is one of the latest android application, which is gaining popularity along with the

AM/FM kind of radios in India. A lot of audio material is available these days on the net ranging

from music to education. It is made for android mobile and it is portable so we can use it for any

android device. It contains hundreds of Internet radio stations with all sorts of sounds and news.

Maybe your favorite station is among them. It is based on one single basic functionality playing

a given set of Internet radio channels. Just start up the player and it immediately starts playing

audio. There is no need to define play lists or find and type in URL's. We are fetching data

from radio times. And after fetching, storing the data in to databases, so that we increase the

performance. There are many functionalities, like we can display the categories like news,

oldies etc.. and after clicking on the category stations of that category are listed. And after

clicking on the station name the radio is start playing. We can also play the previous played item

and we can switch to next one.

We can add any station to our favorite list with the option

add to favorite and can play that station anytime from the favorite list that will display the

contents of favorite database. we can control the volume, means able to increase or decrease the

volume. One search function is there so we can search any station that we want to play.

Setting is also there to create the database again and again. It increases the performance. We are

deleting the old database and creating new one.

Advantage of internet radio

1 It can be viewed in real time- Media streaming allows the user to listen to music on the

Internet in real time. As opposed to the conventional method of obtaining music online—

downloading files from the Internet to your desktop, the music can be actually listened to

instantly without using up your hard drive storing all the mp3’s.

2. You can listen to the music of your choice- Among its biggest advantages over

conventional radio is the wide array of choices to select from. Internet radio offers all kinds

of music genres; there’s something for every generation.

Page 11: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 11

3. Fewer advertisements- Compared to a regular radio station, the cost of running an

Internet radio is far less; thus fewer ads are needed to meet costs. Commercial breaks that

constantly interrupt the music on conventional radio broadcasts tends to bore—and often

annoy—listeners, so the better alternative is Internet radio.

4. Availability- The Web is everywhere. Access to web-based stations is not limited by the

range of the broadcaster’s transmitter as with traditional radio stations. As long as you

have a your computer or your smart phone, you can listen to your favorite music anytime.

5. Better sound quality- Radio interference is a common problem during storms and bad

weather. Internet radio is not affected by competing signals in the airwaves and has near-

CD quality.

6. It immediately tells how many listeners are tuning in- Online radio allows the owner to

track how many people are actually listening to his station at any particular time. Using

these statistics, the station can be adjusted and improved to make it more attractive to

listeners. Traditional radio stations can never know exactly how large their audience is; the

best they can do is to take polls and then extrapolate on the data.

7. Censor Free- Terrestrial radio is limited in what it can broadcast and what it can’t;

online radio isn’t. Online radio relies on self-censorship, meaning don’t listen to what you

don’t want to hear. Traditional radio broadcasts are governed by what the FCC doesn’t

want you to hear.

8. It allows you to “catch up” on your favorite radio program- Even if you miss your

favorite radio program online, you can still listen to it when you have your free time as it

can be requested via the website. Example: Did you miss DJ Tremble’s Mix Show? See his

artist page to listen to past shows anytime!

9. It’s Free!- Although there are some services that require a monthly or yearly

subscription, most Internet Radio stations offer their content for free. In 977′s case,

listeners are *paid* to listen via points earned for interacting with the site which can be

redeemed for cash and prizes.

10. It’s Easy!- Simply click on any station link to start the music.

Page 12: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 12

SYSTEM ENVIRONMENT

• Hardware Requirements

1. Processor: 512 MHz processor.

2. RAM: 192 MB.

3. ROM : 256MB

4. Disk Space: 20 MB.

• Software Requirements

1. Operating System: Android

2. API Level: 2.1

3. Display: Touch screen with any dimension and resolution

• Network requirements

Internet should be available.

Page 13: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 13

� THEORITICAL FRAMEWORK

About ANDROID-SDK:

A brief history of ANDROID

Android is a software stack for mobile devices that includes an operating

system, middleware and key applications. Google Inc purchased the initial developer of the

software, Android Inc., in 2005. Android's mobile operating system is based on a modified

version of the Linux kernel. Google and other members of the Open Handset

Alliance collaborated on Android's development and release. The Android Open Source Project

(AOSP) is tasked with the maintenance and further development of Android. The Android

operating system is the world's best-selling Smartphone platform.

Android has a large community of developers writing applications ("apps") that extend the

functionality of the devices. There are currently over 150,000 apps available for

Android. Android Market is the online app store run by Google, though apps can also be

downloaded from third-party sites. Developers write primarily in the Java language, controlling

the device via Google-developed Java libraries.

The unveiling of the Android distribution on 5 November 2007 was announced with the

founding of the Open Handset Alliance, a consortium of 80 hardware, software,

and telecom companies devoted to advancing open standards for mobile devices.[17][18] Google

released most of the Android code under the Apache License, a free software and open source

license.

The Android open-source software stack consists of Java applications running on a Java-

based, object-oriented application framework on top of Java core libraries running on a Dalvik

virtual machine featuring JIT compilation. Libraries written in C include the surface manager,

OpenCore media framework, SQLite relational database management system, OpenGL ES

2.0 3D graphics API, WebKit layout engine, SGL graphics engine, SSL, and Bionic libc. The

Android operating system, including the Linux kernel, consists of roughly 12 million lines of

code including 3 million lines of XML, 2.8 million lines of C, 2.1 million lines of Java, and

1.75 million lines of C++

Overview of ANDROID

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.

Page 14: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 14

Major Features of ANDROID

• Application framework enabling reuse and replacement of components

• Dalvik virtual machine optimized for mobile devices

• Integrated browser based on the open source WebKit engine

• Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the

OpenGL ES 1.0 specification (hardware acceleration optional)

• SQLite for structured data storage

• Media support for common audio, video, and still image formats (MPEG4, H.264, MP3,

AAC, AMR, JPG, PNG, GIF)

• GSM Telephony (hardware dependent)

• Bluetooth, EDGE, 3G, and WiFi (hardware dependent)

• Camera, GPS, compass, and accelerometer (hardware dependent)

• Rich development environment including a device emulator, tools for debugging,

memory and performance profiling, and a plugin for the Eclipse IDE.

Advantages of ANDROID

1. The ability for anyone to customize the Google Android platform will open up the

applications playing field to small and new players who lack the financial muscle to negotiate

with wireless carriers like AT&T and Orange. The consumer will benefit from having a wide

range of mobile applications to choose from since the monopoly will be broken by Google

Android.

2. Although this will depend on the carrier, one will be able to customize a mobile phones

using Google Android platform like never before, right down to the screen. Features like weather

details, opening screen, live RSS feeds and even the icons on the opening screen will be able to

be customized.

3. In addition, as a result of many mobile phones carrying Google Android, companies will

come up with such innovative products like the location– aware services that will provide users

with any information they might be in need of. This information could include knowing the

location of a nearby convenience store or filling station. In addition the entertainment

functionalities will be taken a notch higher by Google Android being able to offer online real

time multiplayer games.

Page 15: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 15

About JAVA

History of JAVA

Java is a programming language originally developed by James Gosling at Sun

Microsystems (which is now a subsidiary of Oracle Corporation) and released in 1995 as a core

component of Sun Microsystems' Java platform. The language derives much of

its syntax from Cand C++ but has a simpler object model and fewer low-level facilities. Java

applications are typically compiled to bytecode (class file) that can run on any Java Virtual

Machine (JVM) regardless of computer architecture. Java is a general-purpose, concurrent,

class-based, object-oriented language that is specifically designed to have as few implementation

dependencies as possible. It is intended to let application developers "write once, run anywhere".

Java is currently one of the most popular programming languages in use, and is widely used

from application software to web applications.[9][10]

The original and reference implementation Java compilers, virtual machines, and class

libraries were developed by Sun from 1995. As of May 2007, in compliance with the

specifications of the Java Community Process, Sun relicensed most of its Java technologies

under the GNU General Public License. Others have also developed alternative implementations

of these Sun technologies, such as the GNU Compiler for Java, GNU Classpath, and Dalvik.

Overview of JAVA Java is an object-oriented programming language . Java applications are typically

compiled to bytecode, although compilation to native machine code is also possible. At runtime,

bytecode is usually either interpreted or compiled to native code for execution, although direct

hardware execution of bytecode by a Java processor is also possible. Sun Microsystems provides

a GNU General Public License implementation of a Java compiler and Java virtual machine, in

compliance with the specifications of the Java Community Process. Java is the only one pure

object oriented language available today, is now used in almost all applications, from simple

home appliances control systems to complex space control systems. Java’s motto is write once,

run anywhere. Java’s latest version includes new features that enrich and extend the java

platform and provides upward compatibility and improved performance. The most striking

feature of the language is that it is a platform-neural language. Java is the first programming

language that is not tied to any particular hardware or operating system. Some of the java

features are given below.

Page 16: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 16

1. Compiled and interpreted

2. Platform independent and portable

3. Object oriented

4. Robust and secure

5. Distributed

6. Familiar, simple and small

7. Multithreaded and interactive

8. High performance

9. Dynamic and extensible

Object Oriented:- Java uses object-oriented concept as for basic for software

design. Java provides object a clean and efficient object based development platform.

Robust:- The multi-platform environment of the web places high demand on the

reliability of the program to execute on a Varity of systems. Thus high priority has been given to

create robust and highly reliable programmers in the design of java.

Secure:- Prior to Java, most users did not download executable programs

frequently, and those who did scanned them for viruses prior to execution. Even so, most users

still worried about the possibility of infecting their systems with a virus. In addition to viruses,

another type of malicious program exists that must be guarded against. This type of program can

gather private information, such as credit card numbers, bank account balances, and passwords,

by searching the contents of your computer's local file system. Java answers both of these

concerns by providing a "firewall" between a networked application and the computer.

When one uses a Java-compatible Web browser, one can safely download Java

applets without fear of viral infection or malicious intent. Java achieves this protection by

confining a Java program to the Java execution environment and not allowing it to access other

parts of the computer. The ability to download applets with the confidence that no harm will be

Page 17: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 17

done and that no security will be breached is considered by many to be the single most important

aspect of Java.

Architecture Natural:- Java was designed to support application on heterogeneous

network environments composed of Varity of processors and the operating system architecture

and multiple programming interface. To enable java application to execute anywhere on the

network, the java compiler generates the byte code instruction which are not dependent upon

particular computer architecture. These instructions are then interpreted on any machine and

translated on the native machine code on the fly by the java run time system.

Portable:- The Java programs are same on any platform. There are no data type

incompatibilities across the hardware and software architectures.

Interpreted:- Java byte code is not directly executed by the system, because java is

interpreted. The speed is more than adequate for most interactive application. The speed will

continue to improve further.

Multithreaded:- Java was designed to meet the real world requirement of creative,

interactive, networked programs. Java’s multithreading capability provider’s the means to build

application with many concurrent threads of activity. The multithreading feature of java as

various sophisticated synchronization primitives. Moreover, the java’s high level system

libraries have been written to be threading safe.

Dynamic:- Java complier is strict in its static checking during compiles time, the

language and run time system are dynamic during linking and loading stages. Classes are linked

only as needed. New code modules can be linked in on demand from a variety of course, even

from the network in a number.

High performance:- Java enables the creation of cross-platform programs by

compiling into an intermediate representation called java byte code. This code can be interpreted

on any system that provides a java a virtual machine. The java byte code was carefully designed

so that it would to be easy to translate directly into native machine code for very high

performance by using a just-in-time complier.

Distributed:- Java is distributed environment of the Internet and it handles TCP/IP

protocol. Java included features for intra-address-space messaging. That allowed object to

Page 18: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 18

execute procedure remotely. Java revived these interface in a package called remote method

invocation. This feature brings an unparalleled level of abstraction to client/server programming.

Security Features in Java

The security features provided by the Java Development Kit (JDK™) are intended for a variety

of audiences:

• Users running programs:- Built-in security functionality protects you from

malevolent programs (including viruses), maintains the privacy of your files

and information about you, and authenticates the identity of each code

provider. You can subject applications and applets to security controls when

you need to.

• Developers:- You can use API methods to incorporate security functionality

into your programs, including cryptography services and security checks. The

API framework enables you to define and integrate your own permissions

(controlling access to specific resources), cryptography service

implementations, security manager implementations, and policy

implementations. In addition, classes are provided for management of your

public/private key pairs and public key certificates from people you trust.

• Systems administrators, developers, and users:- JDK tools manage your

keystore (database of keys and certificates); generate digital signatures for

JAR files, and verify the authenticity of such signatures and the integrity of the

signed contents; and create and modify the policy files that define your

installation's security policy.

The GUI is designed in Java using swing components. Swing components provide

GUI environment to Java. Swing components are a collection of lightweight visual components

that provide a replacement

Overview of ECLIPSE

Eclipse Enterprise Workbench is a full-featured, Enterprise class platform and tool suite for

developing software applications and systems supporting the full life-cycle of application

development. Facilities and features usually found only in high-priced, Enterprise class product

Page 19: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 19

are included in Eclipse. Based on the open industry standards and the Eclipse platform, Eclipse

redefines software pricing, support and delivery release cycles by providing a complete

applications development environment for J2EE WEB, XML, UML and databases and the most

comprehensive array of application server connectors(25 target environments) to optimize

development, testing and portability.

The Android platform is a software stack for mobile devices. In this two-part screencast you are

going to see how to install and use the Android SDK to develop a simple Android application

using the Java programming language and Eclipse IDE plugin. The first screencast shows how to

install SDK, configure the Eclipse plugin and run sample Android applications. Total running

time 03:00 minutesThe second tutorial covers new project creation in Eclipse, the use of

Android emulator, content model, permissions and navigation model. Total running time 02:50

minutes.

Most people know Eclipse as an integrated development environment (IDE) for

Java. Eclipse is created by an open source community and is used in several different areas, e.g.

as IDE for Java or for Android or as a platform to develop Eclipse RCP applications, etc.. The

usage of Eclipse as a Java development environment will be described in this tutorial. Starting

out with the right Eclipse package will smooth your transition from either j2me novice to

Android application developer or from java newbie to Android application developer novice.

Thus, it is described what Eclipse package one should start with in their Android application

development. You can find the author's blog at Mobilebytes . While it is true that the beginning

Android application developer may use the Eclipse ADT plugins at some point, he or she

progresses beyond that to use heap dumps and profile dumps to optimize code. Whereas Eclipse

MAT (Memory Analyzer Technology) provides one the ability to read the heap dump once it is

converted with a converter contained in the Android SDK and the Eclipse TPTP project allows

us to analyze the profiing data once it is converted using the converter from the Android SDK.

Thus, which Eclipse package should one download to start out with that will enable one to

progress to these processes once Android application development is mastered

Page 20: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 20

SOFTWARE QUALITY ASSURANCE PLAN

Page 21: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 21

PURPOSE The purpose of this plan is to define the “Internet Radio” Software Quality Assurance (SQA) organization, SQA tasks and responsibilities; provide reference documents and guidelines to perform the SQA activities; provide the standards, practices and conventions used in carrying out SQA activities; and provide the tools, techniques, and methodologies to support SQA activities, and SQA reporting.

SCOPE The scope of this document is to outline all procedures, techniques and tools to be used for Quality Assurance of this project. This plan:

• Identifies the SQA responsibilities of the project developer and the SQA consultant

• Lists the activities, processes, and work products that the SQA consultant will review and audit

• Identifies the SQA work products

DOCUMENT OVERVIEW: The rest of the document is organized as follows:

Management: A description of each major element of the organization and a description of the SQA tasks and their relationships

Documentation: Identification of the documents related to development, verification, validation, use and maintenance of the software.

SQAP Requirements: This section defines the SQA review, reporting, and auditing procedures used to ensure that software deliverables are developed in accordance with this plan and the project’s requirements.

Management

This section describes the management organizational structure, its roles and responsibilities, and the software quality tasks to be performed.

Organization

Efforts for this project are supported by numerous entities, organizations and personnel. This tool is developed as part of partial fulfilment of requirements for Masters in Computer Applications degree. It will be the sole responsibility of the developer to review the product’s

Page 22: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 22

usability, efficiency, reliability, and accuracy. The client will however conduct inspections, reviews, and walk-through on a regular basis. Client’s specifications and suggestions will be used in places where quality decisions need to out-weigh development schedule decisions.

TASKS • Develop requirement specification and cost estimation for the project.

• Develop the design plan and test plan for testing the tool.

• Implement and test the application and deliver the application along with the necessary documentation.

• Give a formal presentation to the client on completion of the analysis, design and testing phases. The client reviews the work and provides feedback/suggestions.

• Planning, coordinating, testing and assessing all aspects of quality issues.

The responsibilities of the client are to:

• Review the work performed.

• Provide feedback and advice.

SQA IMPLEMENTATION Quality assurance will be implemented through all the software life cycles of the tool’s development process, until the release of the software product. The following are the quality assurance tasks for each phase of the software development:

Requirements phase: When the SRS is being developed, it has to be ensured that it elucidates the proposed functionality of the product and to keep refining the SRS until the requirements are clearly stated and understood.

Specification and Design phase: Due to the great importance for accuracy and completeness in these documents, weekly reviews shall be conducted between the developer and the client to identify any defects and rectify them.

Implementation phase: The developer shall do code reviews when the construction phase of the Tool begins.

Software testing phase: The developer shall test each case. The final product shall be verified with the functionality of the software as specified in the Software Requirements Specification (SRS) for the Tool.

Page 23: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 23

DOCUMENTATION In addition to this document, the essential documentation will include:

The Software Requirements Specification (SRS), which

• Prescribes each of the essential requirements of the software

• Objectively verifies achievement of each requirement by a prescribed method.

• Facilitates traceability of requirements specification to product delivery.

• Gives estimates of the cost/effort for developing the product including a project plan.

The Software Design Document (SDD)

• Depicts how the software will be structured

• Describes the components and sub-components of the software design, including various packages and frameworks, if any.

• Gives an object model the essential classes that would make up the product.

• Gives a sample interaction diagram, showing the key interactions in the application.

Software Test Plan: Describes the test cases that will be employed to test the product.

DOCUMENT AUDIT Quality Assurance for this project will include at least one review of all current work products in each stage of development (Requirement, Design, and Implementation). The reviews will assure that the established project processes and procedures are being followed effectively, and exposures and risks to the current project plan are identified and addressed. The review process includes:

• A formal presentation at the end of each development phase (Requirement, Design and Implementation).

• A managerial review by the client periodically to ensure the work generated is in compliance with project requirements.

• Reviews by the client after each presentation.

Page 24: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 24

SOFTWARE DEVELOPMENT PROCESS The software development process involves three stages:

1) Requirements phase,

2)Design phase

3) Implementation and testing phase.

During each phase, the client will review the deliverable documents. The developer would incorporate modifications suggested by the committee. This would ensure quality of the software product.

PROJECT REVIEWS The client will perform a review at the 3 stages of the project as described in the section above. This review will determine whether the requirements have been met for the deliverable, check that the product meets the requirements, ensure that the SQA plan has been adhered to, verify the performance of the software and ensure that acceptance testing is carried out. A design checklist will be used and the developer will check to see whether the design meets the checklist criteria.

TESTING AND QUALITY CHECK Testing will be carried out in accordance with the Software Testing Plan (STP). Testing documentation will be sufficient to demonstrate that testing objectives and software requirements have been met. Test results will be documented and discussed in the final phase of the project.

Page 25: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 25

SYSTEM ANALYSIS System analysis is the process of gathering and interpreting facts, diagnosing problems and using

the facts to improve the system. System specifies what system should do. A system is a set of

components that interact to accomplish some purpose.

SYSTEM ANALYSIS

Page 26: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 26

• Identifying the drawback of the existing system

• Identify the need for conversion

• Perform feasibility study

• Identify hardware, software and database requirements

• Create a system definition that forms the foundation for subsequent work

SYSTEM STUDY

OVERVIEW OF EXISTING SYSTEM

FM broadcasting is a broadcast technology pioneered by Edwin Howard

Armstrong that uses frequency modulation (FM) to provide high-fidelity sound over broadcast

radio. The term "FM band" is effectively shorthand for "frequency band in which FM is used for

broadcasting". This term can upset purists because it conflates a modulation scheme with a range

of frequencies.

Drawbacks of the Existing System:

• FM is strictly line of sight, so it's broadcast range on our round planet is limited

• This system is not available in rural areas.

• Having very less number of stations..

• We can not listen our favorite station anytime.

• Sound quality is not good.

OVERVIEW OF PROPOSED SYSTEM

Internet radio (also known as web radio, net radio, streaming radio and e-radio) is an audio

service transmitted via the Internet. Music streaming on the Internet is usually referred to as

webcasting since it is not transmitted broadly through wireless means. The project “Internet

radio” is one of the latest android application.

• To overcome the above drawbacks, a system has to be designed. The Proposed

system is available anywhere.

Page 27: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 27

• It is also available in rural area.

• The proposed system having hundreds of station available.

• We can listen our favorite station any time whenever we want.

• Sound quality is better than the existing system.

Problem identification

Requirement analysis is the software engineering task that bridges the gap between system level

requirement engineering and software design. Software requirement analysis is divided into

three:

1. Problem Recognition

2. Problem Evaluation and Synthesis

3. Modeling

PROBLEM RECOGNITION

The main goal of the problem recognition is the recognition of the basic problems

as perceived by the listener. The existing system is inefficient when compared with the proposed

system. Here it is not possible to listen radio in rural area. In the existing system, there are only

few stations. The existing system can not handle any tables. Also it is not very much user

friendly because it showing only frequency not station name and description, with station logo.

PROBLEM EVALUATION AND SYNTHESIS

In the problem evaluation and synthesis the software engineer must define all

externally observable data objects, evaluate the flow and content of information, define and

elaborate all software functions, understand software behaviour that affects the system, establish

system interface characteristics, and uncover additional design constraints. Each of these tasks

serves to describe the problem so that an overall solution may be synthesized.

Page 28: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 28

The Proposed system has been developed for the present requirements, which is

advantageous over the existing system. Here radio can be listen online, which are completely

internet based is and the proposed system is highly user friendly.

Since the proposed system having number of stations so user will like this

application.

MODELING

During software requirements analysis, we create models of it to be built to gain better

understanding of the actual logical entities (functions and sub functions) to be built. The

following are the roles of models in requirements analysis.

• The model helps analyst to understand information, function, and behavior of the

system.

• The model becomes the main reference for review to determine completeness,

consistency and accuracy of the specification.

• The model becomes the foundation for design.

FEASIBILITY STUDY

The feasibility of a project can be ascertained in terms of technical factors,

economic factors, or both. A feasibility study is documented with a report showing all the

ramifications of the project. In project finance, the pre-financing work (sometimes referred to as

due diligence) is to make sure there is no "dry rot" in the project and to identify project risks

ensuring they can be mitigated and managed in addition to ascertaining "debt service" capability

Feasibility is a measure of how beneficial the development of the information system will be to

an organization. This is done by investigating the existing system proposal according to its

workability, impact on the organization, ability to meet user needs, and effective use of

resources.

Page 29: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 29

Few key considerations are involved in the feasibility analysis: economic, technical and social

etc..

Economic Feasibility:

Economic analysis is the most frequently used method for evaluating the

effectiveness of a proposed system. It is more commonly known as cost benefit analysis, the

procedure to determine the benefits and saving that are expected from a decision is made to

doing and implement the system. Otherwise make alterations in the proposed system.

Cost associated with the development of computer-based systems is as follows.

1. Procurement costs such as consultation, equipment purchase, installation,

furnishing the size etc.

2. Start-up costs, user operating system cost, personal search cost etc. Project-

related costs such as software purchase, training personnel, data collection, documents

preparation costs etc.

3. Ongoing costs such as hardware, software maintenance, rental, depreciation of

hardware costs etc.

Technical Feasibility:

In examining Technical feasibility of the system, ore importance is given to the

hardware interaction part of the system. The assessments of technical feasibility centers on the

existing system and to what extent it can support the proposed addition. This was based on an

outline design of system requirements in turns of inputs, files programs, procedures and staff. It

involves financial considerations to accommodate technical enhancements. The propose system

has three-tier architecture consisting of SQLite as the database, Application Server as SQLite as

the middle tier and Internet developer suite oracle as the development tool. The software is very

user friendly for both developers and end users.

Social feasibility:

People are inherently resistant to change and mobiles have been known to

facilitate change. An estimate should be made about the reaction of the user staff towards the

development of a computerized system. Computer installations have something to do with

Page 30: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 30

turnover, transfers and changes in job status. The introduction of a candidate system requires

special effort to educate, sell and train the staff for conducting the business.

The proposed software is designed such that only persons can access it having

android mobile and a person with some computer knowledge can interact with the system freely.

Computer illiterate people require training for efficient use of the software.

Managerial Feasibility:

Managerial feasibility involves the capability of the infrastructure of a process to

achieve and sustain process improvement. Management support, employee involvement, and

commitment are key elements required to ascertain managerial feasibility.

Economic Feasibility:

This involves the feasibility of the proposed project to generate economic

benefits. A benefit-cost analysis and a breakeven analysis are important aspects of evaluating

the economic feasibility of new industrial projects. The tangible and intangible aspects of a

project should be translated into economic terms to facilitate a consistent basis for evaluation.

Financial Feasibility:

Financial feasibility should be distinguished from economic feasibility.

Financial feasibility involves the capability of the project organization to raise the appropriate

funds needed to implement the proposed project. Project financing can be a major obstacle in

large multi-party projects because of the level of capital required. Loan availability, credit

worthiness, equity, and loan schedule are important aspects of financial feasibility analysis.

Cultural Feasibility:

Cultural feasibility deals with the compatibility of the proposed project with the

cultural setup of the project environment. In labor-intensive projects, planned functions must be

integrated with the local cultural practices and beliefs. For example, every one using mobile so

it is cultural feasible.

Safety Feasibility:

Page 31: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 31

Safety feasibility is another important aspect that should be considered in project

planning. Safety feasibility refers to an analysis of whether the project is capable of being

implemented and operated safely with minimal adverse effects on the environment.

Unfortunately, environmental impact assessment is often not adequately addressed in complex

projects. As an example, the North American Free Trade Agreement (NAFTA) between the

U.S., Canada, and Mexico was temporarily suspended in 1993 because of the legal consideration

of the potential environmental impacts of the projects to be undertaken under the agreement.

Political Feasibility:

A politically feasible project may be referred to as a "politically correct project."

Political considerations often dictate direction for a proposed project. This is particularly true

for large projects with national visibility that may have significant government inputs and

political implications. For example, political necessity may be a source of support for a project

regardless of the project's merits. On the other hand, worthy projects may face insurmountable

opposition simply because of political factors. Political feasibility analysis requires an

evaluation of the compatibility of project goals with the prevailing goals of the political system.

Environmental Feasibility:

Often a killer of projects through long, drawn-out approval processes and

outright active opposition by those claiming environmental concerns. This is an aspect worthy

of real attention in the very early stages of a project. Concern must be shown and action must be

taken to address any and all environmental concerns raised or anticipated. A perfect example

was the recent attempt by Disney to build a theme park in Virginia. After a lot of funds and

efforts, Disney could not overcome the local opposition to the environmental impact that the

Disney project would have on the historic Manassas battleground area.

Page 32: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 32

Market Feasibility. Another concern is market variability and impact on the project. This area should not be confused with the Economic Feasibility. The market needs analysis to view the potential impacts of market demand, competitive activities, etc. and "divertible" market share available. Price war activities by competitors, whether local, regional, national or international, must also be analyzed for early contingency funding and debt service negotiations during the start-up, ramp-up, and commercial start-up phases of the project

.

Feasibility Areas

The Feasibility Study is the preliminary study that determines whether a proposed systems project is technically, financially, and operationally viable. The Alternatives Analysis, usually included as part of the Feasibility Study, identifies viable alternatives for the system design and development. Between them, the documents provide: An analysis of the system objectives, functional requirements, and system design concepts;

Page 33: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 33

• A determination of the feasibility of applying automated systems to effectively, efficiently, and economically improve program operations;

• An evaluation of alternative approaches for reasonably achieving the objectives and goals; and

• Identification of a proposed approach.

Scope of Feasibility Analysis

In general terms, the elements of a feasibility analysis for a project should cover the following:

• Need Analysis. This indicates recognition of a need for the project. The need may affect the organization itself, another organization, the public, or the government. A preliminary study is then conducted to confirm and evaluate the need. A proposal of how the need may be satisfied is then made. Pertinent questions that should be asked include:

� Is the need significant enough to justify the proposed project? � Will the need still exist by the time the project is completed? � What are the alternate means of satisfying the need? � What are the economic, social, environmental, and political impacts of the need?

• Process Work. This is the preliminary analysis done to determine what will be required to satisfy the need. The work may be performed by a consultant who is an expert in the project field. The preliminary study often involves system models or prototypes. For technology-oriented projects, artist's conception and scaled-down models may be used for illustrating the general characteristics of a process. A simulation of the proposed system can be carried out to predict the outcome before the actual project starts.

• Engineering & Design. This involves a detailed technical study of te proposed project. Written quotations are obtained from suppliers and subcontractors as needed. Technology capabilities are evaluated as needed. Product design, if needed, should be done at this time.

• Cost Estimate. This involves estimating project cost to an acceptable level of accuracy.

Levels of around -5% to +15% are common at this level of a project plan. Both the initial and operating costs are included in the cost estimation. Estimates of capital investment and of recurring and nonrecurring costs should also be contained in the cost estimate document. Sensitivity analysis can be carried out on the estimated cost values to see how sensitive the project plan is to the estimated cost values.

• Financial Analysis. This involves an analysis of the cash flow profile of the project. The analysis should consider rates of return, inflation, sources of capital, payback periods, breakeven point, residual values, and sensitivity. This is a critical analysis since it

Page 34: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 34

determines whether or not and when funds will be available to the project. The project cash flow profile helps to support the economic and financial feasibility of the project.

• Project Impacts. This portion of the feasibility study provides an assessment of the impact of the proposed project. Environmental, social, cultural, political, and economic impacts may be some of the factors that will determine how a project is perceived by the public. The value added potential of the project should also be assessed. A value added tax may be assessed based on the price of a product and the cost of the raw material used in making the product. The tax so collected may be viewed as a contribution to government coffers.

• Conclusions and Recommendations. The feasibility study should end with the overall outcome of the project analysis. This may indicate an endorsement or disapproval of the project. Recommendations on what should be done should be included in this section of the feasibility report.

Page 35: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 35

SOFTWARE REQUIREMENT SPECIFICATION

Page 36: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 36

REQUIREMENT SPECIFICATION

An accurate and thorough understanding of system requirements is essential to

the success of any Software Development Process. All further stages of SDLC like system

analysis, design and coding depend on how accurate well prepared and thoroughly understood

the System Requirements Specification is. Poorly analyzed requirements will disappoint the

user no matter how well designed and the well coded the software is.

Requirement specification appears to be a relatively simple task but the chances

of misinterpretation is very high, ambiguity is probable and communication gap between

customer and developer is bound to bring confusions. Requirement Specifications begin with a

clear and concise heading stating in a sentence the task to be performed (i.e. work objective). For

this, we have to identify the problem first. Problem specifications serve as the basis for

identifying work objective that helps in describing the requirements in technical and precise

statements. After the initial specification reports are received, they are analyzed and refined

through customer-developer interaction. System Analysis follows to determine feasibility and

Cost Benefit Analysis.

A complete understanding of requirement specification of the new system is very

important for the successful development of the software product. Requirement specification is

the foundation in the process of software development. All further development like System

Analysis, System Design, and Coding will depend on how accurate and well prepared the

requirement.

Overall Description

Requirement specification appears to be relatively simple task, but appearances

are often deceiving. There is always a chance of wrong specification because of communication

gap between user and developer, ambiguity in requirement or a wrongly specified problem.

Requirement Specification begins with a clear statement of the problem and the task to be

performed. Then requirements are described in a technical manner in precise statements. After

the initial specification reports are received, they are analyzed and refined through user

developer interaction. System Analysis follows to determine and cost benefit analysis.

Page 37: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 37

An SRS is basically an organization's understanding (in writing) of a customer or potential

client's system requirements and dependencies at a particular point in time (usually) prior to any

actual design or development work. It's a two-way insurance policy that assures that both the

client and the organization understand the other's requirements from that perspective at

The SRS document itself states in precise and explicit language those functions

and capabilities a software system (i.e., a software application, an ecommerce Web site, and so

on) must provide, as well as states any required constraints by which the system must abide. The

SRS also functions as a blueprint for completing a project with as little cost growth as possible.

The SRS is often referred to as the "parent" document because all subsequent project

management documents, such as design specifications, statements of work, software architecture

specifications, testing and validation plans, and documentation plans, are related to it.

It's important to note that an SRS contains functional and nonfunctional requirements

only; it doesn't offer design suggestions, possible solutions to technology or business issues, or

any other information other than what the development team understands the customer's system

requirements to be. It consists following phases.

Introduction

Page 38: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 38

Modules of the project • CATEGOTY • RADIO PLAY • FAVORITES • SEARCH • SETTINGS

CATEGORY This module display all the categories .we can also list the stations of individual category and play the stations one by one. There are 22 categories in radiotimes.com . Each category having many stations. When clicking on category tab then a list view appear with the category list. After selecting a particular category list view switched to another list view having list of stations with name ,description and logo of that station. After selecting a particular station it moves to RADIO PLAY module and starts playing.

RADIO PLAY This module play the radio. When any station is playing the animation rotating with that. When we click on pause the animation and station both stops rotating and playing. There are feature like previous and next so that we can play the previously played or next station in the list. One feature is controlling the volume of the player according to our choice. One feature is add to favorite, to add the playing station to the favorite list. In this module I have written the code for closing the application.

FAVORITES This module all about our favorite station. We can listen our favorite stations whenever we want to listen. If we like any station then we can add that station to our favorite list. In favorite table only the ID of station is stored and whenever we play the favorite station the other detail is fetched from station table and listed into the list view. From there we can play and it will go to the RADIO PLAY module.

SEARCH We can search any station by giving any keyword in the text box. The Url is passed with the given keyword to the parsing function and search the required station details . After searching the details is stored to the search table and next time when the other search happen the search table is deleted and newly searched details are stored to search table.

Page 39: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 39

SETTINGS Here we are creating the database to increase the performance. It takes time to fetch data from radiotimes every time so we are creating a database and storing the data in to that , when application is installed first time. From setting tab we can recreate the data base.

FUNCTIONAL REQUIREMENTS

The main goal that proposed system is to play the radio of our choice. We can

also play the radio in rural area. This radio is available everywhere. Hundres of stations are

available in this radio. We can play the previous and next played station. Add the liked station to

the favorite list. Selecting the category then selecting the station then play the selected station.

Searching the station which we want to play. Setting the database means deleting previously

created and creating new database. Change the the volume of the player. Once station starts

playing an animation starts rotating.

NONFUNCTIONAL REQUIREMENTS

• Availability : - The system should be properly supported by the required H/W and S/W

interface needs so that any user can access the data from any place sitting on the internet

connectivity node.

• Maintainability: - It is a system which incorporates this feature as it is the system whose

defects can be easily removed by the programmers. This system can be easily adapted to

meet the changing requirements of its users or the changing environment in which it operates

Page 40: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 40

Fig: Nonfunctional Requirements

• Portability: - its design is relatively machine independent. It is being coded in languages which are well-defined & meet to the standards, hence more portable.

• Visibility : - Any user can view the menu of the system and can work out the processing even from a remote place. There is no hiding of data and incorporates easy availability and accessibility.

• Efficiency: - It is an efficient system because it fulfills most of the requirements being mentioned by the users. It uses least amount of devices & memory space for execution of the package on the systems at the client’s end.

• Reliability : - It is a very reliable system. Two separate processes of the package are unique & non-interdependent to each other. The execution of one process does not effect the processing of second one. The complete processing does not effect the normal operations of the company terminals.

• Safety & Security: - The processes/operations under each consideration are completely equipped with alert messages as and when required. The software never permits any mishandling or misfiring of data in the database tables at any point of processing.

Page 41: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 41

• Standard Compliance: - It follows a standard format or layout in the designing as well as operational phases. This helps the user to work on the system in an effective and efficient way at any site of the office. They can work on its database to keep all the concurrent updating.

APPROACH TO DEVELOP THE SYSTEM

The company has already aware of that what should the proposed system will do and how. So we follow the prototyping approach for the analysis and design phase and then linear model of software development.

The prototype paradigm begins with requirement gathering. Development and customer meet and define the overall objectives for the software, identify whatever requirements are known, and outline areas where further definition is mandatory. A “quick design” occurs. The quick design focuses on a representation of those aspects of the software that will be visible to the customer/user. The quick design leads to the construction of a prototype. The prototype is evaluated by the customer/user and used to refine requirements for the software to be developed. Iteration occurs as the prototype is tuned to satisfy the needs of the customer, while at the same time enabling the developer to better understand what needs to be done.

After design phase is approved, we follow the linear model to develop the complete system. After design phase we move to coding and testing then implementation phase.

In prototyping model we first develop a working prototype of the software instead of developing the actual software. The working prototype is developed as per current available requirements. The developers use this prototype to reefing the requirements and prepare the final specification document. Because the working prototype has been evaluated by the customer, it is reasonable to expect that the resulting specification document will be correct.

When the prototype is created, it is reviewed by the customer. Typically this review gives feedback to the developers that helps to remove uncertainties in the requirements of the software, and starts an iteration of refinement in order to further clarify requirements.

System/Information

Engineering

Analysis Design Code Test

Implementatio

n

Page 42: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 42

The prototype being developed is not the final product to be delivered and the code generated in the prototype is being get thrown away but the experience gathered from developing the prototype helps in developing the actual system. The developers should develop prototype as early as possible to speed up the software development process. After all, prototype has to be

discarded. After

the

finalization of software requirement specification (SRS) document, the prototype is discarded and actual is then being get developed.

Page 43: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 43

PROTOYPING MODEL

Working of Prototype model can be described as :

Requirements

Quick Design

Implement

Customer Evaluation

Design

Implementation and Unit Testing

Integration and System Testing

Operation and Maintenance

Refinement of

Requirements as per

suggestions

Page 44: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 44

SYSTEM DESIGN

Page 45: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 45

ARCHITECTURE DESIGN

System design provides the understanding and procedural details necessary for implementing the system recommended in the system study .Emphasis is on translating the performance requirements into design specifications . The Design phase is a transition from a user – oriented document (System proposal) to a documented oriented to the programmers or database personnel.

Feature of Three-tier Architecture:

The proposed software has a three-tier architecture. The architecture layers are the database layer, the application server layer and the client layer. Compiled forms are deployed I the application server. The application server layer and the database server will communicate and the details are displayed to the listener.

A three-tier architecture is considered to be the most suitable architecture for large applications. The partitioning of the application enables rapid design and development of the system. The modularity makes it easier to make changes to just one tier without affecting the others. Separating the functions into distinct tiers makes It easier to monitor and optimize the performance of each layer. Load balancing and adding more capacity can take place independently at each layer. Multi-tier architecture also makes it simpler to scale the system across multiple processors on different machines.

A three-tier architecture introduces a server (or an “agent”) between the client and the server. The role of the agent is manifolds. It can provide translation services (as in adapting a legacy application on a mainframe to a client/server environment), metering services (as in acting as a transaction monitor to limit the number of simultaneous request to a given server), or intelligent agent services (as in mapping a request to a number of different servers, collating the results and returning a single response to the client.

1. The presentation layer delivers the application to the end users on the web. 2. The business logic layer contains and executes the rules that run the application.

3. The database layer manages the data required by the application.

PROCESS DESIGN

V –Model of development

V Process is a whole life-cycle process. V Process must be applied at each stage in the software process.

Page 46: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 46

Objective

The V-Model (Lifecycle Process Model) regulates the system development process and the maintenance and modification of systems.

This standard helps to achieve the following objectives:

� Improvement and guarantee of the quality:

– The discovery of defects in a system.

–The assessment of whether or not the system is usable in an operational situation.

–The completeness of the results to be delivered can best be guaranteed by a standardized procedure.

–Defined interim results make early assessment procedures possible. Uniform product contents alleviate the readability of the products and the assessment procedures.

� Checking the costs for the whole lifecycle:

–The generation of relevant project-specific development standards and its assessment will be simplified.

–The standardized procedure makes the cost calculation more transparent. Any risks in connection with the costs can be recognized better.

–Uniform standards reduce friction losses between customer and contractor as well as between main contractor and subcontractor.

Page 47: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 47

–Standardized procedures allow for the reduction in the use of resources.

–In case of a standardized procedure universal approaches to the solutions become transparent and can thus be reused.

–Undesirable developments are recognized at an earlier stage.

–The training costs are reduced.

–The interim results/final results are standardized to such an extent that other parties involved or staff of other companies are able to settle in without very much effort, if necessary

Page 48: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 48

ER – DIAGRAM

CID Nam

Category

FID

Fetching

stations

Station

Add to

favorite

s

Favorite

Add to

favorites

Searc

h Server

1

Name

CID

SID

Descri

ption

server

2 Log

o

Server

3

SID Server

Server

1

Server2 Log

o Descriptio

n

Name

Page 49: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 49

USER CASE DIAGRAM

Listener

Play/ pauseradio

Setting

Search

Select staion

Add tofavorite

Select category

INTERNET RADIO

Changevolume

Page 50: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 50

Modular design This project having many modules. The project “Internet radio” is one of the latest android

application, which is gaining popularity along with the AM/FM kind of radios in India. A lot of

audio material is available these days on the net ranging from music to education. It is made for

android mobile and it is portable so we can use it for any android device.

It contains hundreds of Internet radio stations with all sorts of sounds and news.

Maybe your favorite station is among them. It is based on one single basic functionality playing

a given set of Internet radio channels. Just start up the player and it immediately starts playing

audio. There is no need to define play lists or find and type in URL's. We are fetching data

from radio times. And after fetching, storing the data in to databases, so that we increase the

performance. There are many functionalities, like we can display the categories like news,

oldies etc.. and after clicking on the category stations of that category are listed. And after

clicking on the station name the radio is start playing. We can also play the previous played item

and we can switch to next one

Modules of the project

• CATEGOTY

• RADIO PLAY

• FAVORITES

• SEARCH

• SETTINGS

CATEGORY

This module display all the categories .we can also list the stations of individual category and

play the stations one by one. There are 22 categories in radiotimes.com . Each category having

many stations. When clicking on category tab then a list view appear with the category list.

After selecting a particular category list view switched to another list view having list of

stations with name ,description and logo of that station. After selecting a particular station it

moves to RADIO PLAY module and starts playing.

Page 51: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 51

RADIO PLAY

This module play the radio. When any station is playing the animation rotating with that. When

we click on pause the animation and station both stops rotating and playing. There are feature

like previous and next so that we can play the previously played or next station in the list. One

feature is controlling the volume of the player according to our choice. One feature is add to

favorite, to add the playing station to the favorite list. In this module I have written the code

for closing the application.

FAVORITES

This module all about our favorite station. We can listen our favorite stations whenever we

want to listen. If we like any station then we can add that station to our favorite list. In favorite

table only the ID of station is stored and whenever we play the favorite station the other detail

is fetched from station table and listed into the list view. From there we can play and it will go

to the RADIO PLAY module.

SEARCH

We can search any station by giving any keyword in the text box. The Url is passed with the

given keyword to the parsing function and search the required station details . After searching

the details is stored to the search table and next time when the other search happen the search

table is deleted and newly searched details are stored to search table.

SETTINGS

Here we are creating the database to increase the performance. It takes time to fetch data from

radiotimes every time so we are creating a database and storing the data in to that , when

application is installed first time. From setting tab we can recreate the data base.

Page 52: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 52

DATA FLOW DIAGRAM

DATA DESIGN

Page 53: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 53

Data Flow Diagrams represent one of the most ingenious tools used for structured

analysis. A Data Flow Diagram or DFD as it is shortly called is also known as a bubble chart. It

has the purpose of clarifying system requirement and identifying major transformation that will

become programs in system design. It is the major starting point in the design phase that

functionally decomposes the requirements specification down to the lowest level of details. A

functionally decomposes the requirements specification down to the lowest level of details. A

DFD consists of a series of bubble joined by lines. The bubble represents data transformation

and line represents data flow in the system. In the normal conventional a DFD has four major

symbols.

- Square, which defined source or destination of data

- Arrow which shows the data flow

- Circle, which represent a process that

transformation incoming data in to outgoing flow

- Open rectangle, which shows a data store

The DFD at the simplest level is referred to as the ‘zero level DFD’ or in the

simple words a ‘Context Analysis Diagram’. These are expanded level by level each explaining

its process in detail. Processes are numbered for easy identification and are normally labeled in

block letters. Each data flow is labeled for easy understanding.

Page 54: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 54

CONTEXT ANALYSIS DIAGRAM

RADIO TIMES

INTERNET

RADIO

Querying

LISTENER

Station details Station details

Fetching station details

Request for stations

Page 55: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 55

Page 56: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 56

1 LEVEL D FD

FETCH CATEGORY

2

PLAY RADIO

3

SETTINGS1

FETCH FAVORITE

4SEARCH

5

INTERNET RADIOLISTENER

SEARCH TABLE

FAVORITE TABLE

RADIO TIMES

Station details

CATEGORY TABLE

Category details

Searc

hed s

tatio

n d

eta

ils

Page 57: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 57

2 LEVEL D FD FOR SETTIN GS

FETCHING DATA FROM RADIO

TIMES1.1

RADIO TIMESLISTTENER

Data request

STORING DATA TO DATABASES

1.2

CATEGORY TABLE

STATION TABLE

Data

Page 58: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 58

2 LEVEL D FD FOR CATEGORY

LISTENER

FETCHING CATEGORIES

2.1

FETCHING STATIONS

2.2

STATION TABLE

Station details

CATEGORY TABLE

Page 59: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 59

2 LEVEL D FD FOR PLAYIN G RAD IO

LISTENER

PLAY/PAUSE RADIO

3.1

PLAYING PREV/NEXT

3.1.1

CHANGE VOLUME

3.1.2

CLOSE APPLICATION

3.2

ADD TO FAVORITE

3.1.3

FAVORITE TABLE

DATABASE DESIGN

Page 60: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 60

Data in computer is termed a database. There is software that allows one or more

persons to use and / modify this data is a database management system (DBMS). A major role of

the DBMS is to allow the user to deal with the data in abstract terms, rather than as the computer

stores the data. The DBMS meets as an interpreter for a high level programming language;

ideally allowing the user to specify what must be done with little or no attention on the user’s

part to the detailed algorithm or data representation used by the system. However in the case of a

DBMS there may be far less relationship between the data as seen by the user and as store in the

computer, than between arrays as defined in a typical programming language and the

representation of those arrays in the memory.

The data base management system is one of the most complex varieties of

software in existence. One way to get a field for the different aspects of the DBMS is to

consider the various kinds of users of such a system and ways they interact with the system and

with each other.

In relational database approach, data is organized in logical mathematical sets in

tabular structure. The data filed becomes a column in a table and under relational model and

each record becomes a row in a table. Relationship between various table areas is defined

through the use of a mathematical function such as JOIN and UNION. The cost important

advantages of relational model are its flexibility in describing the relationship between the

various data items.

Primary purpose behind the relational model is the preservation of data integrity,

which implies that the data must be stored in a format that preserves it from being accessed from

outside the DBMS that crated it.

The emphasis on the data integrity makes the relational model ideal for

transactional processing systems, and thus for multi user and client server database. The

relational model also requires that the date be accessed through programs that do not rely in a

data in the database.

The most important aspect of building of application is the design of tables or the

database schema. The data stored in a table must be organized in some manner, which is

meaningful. The overall objective in the process of table design has been to treat as an

Page 61: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 61

organizational resources and as an integrated whole. The organization of data in a database aims

to achieve three major objectives are given bellow.

1. Data Integration

2. Data Integrity

3. Data Independence.

Several degrees of normalization have to be applied during the process of table

design. The major aim of the process of normalization is to reduce data redundancy and prevent

loosing data integrity. Redundancy refers to unwanted and unnecessary repetition of data. Data

integrity has to convert at all levels. Poor normalization can cause problems related to storage

and retrieval of data. During the process of normalization, dependencies can be identified which

cause serious problem during deletion and updating. Normalizing also help in simplifying the

structure of table.

The theme behind a database is to handle information as an integrated whole thus

making access to information easy, quick, inexpensive and flexible for user. The entire package

depends on how the data are maintained in the system each table has been designed with a

perfect vision. Minor tables have been created which thought takes much space facilities the

process of Querying fast and accurate.

Normalization

Normalization provides for table optimisation through the investigation of entity

relationships. Main purpose of normalization is to avoid Data redundancy and some unforeseen

scalability factors. Normalization is done to remove Insertion, Updating and Modification

anomalies and redundancy of data. A certain level of normalization of tables in database gives a

particular normal form based of particulars steps followed. Database can be normalized up to

any defined normal forms according as the need of application and its effectiveness.

Database of Budget Estimation is normalized up to Third Normal Form. Further

normalization of database was not considered taking into account the need of application and

ease of working with database.

� The database is in First Normal Form as all the fields of all tables are atomic. There is

no multivalued field in any table.

� The database is in Second Normal Form as it satisfies the constraint of full functional

dependency. All the fields of all tables are fully functional dependent on the primary key.

Page 62: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 62

� The database is in Third Normal Form as all its tables satisfy the constraint that there

should be no transitive dependency. No field has transitive dependency on the key field.

Thus database also satisfies the constraints of third normal form.

Sqlite Tables:

CATEGORY TABLE:- Store the category details.

STATION TABLE :-Store the station details.

Field Type Null Key

CID Int No PRI

Name Varchar (30) No

Field Type Null Key

SID Int No PRI

CID Int No Foreign key

Name Varchar(100) No MUL

Description Varchar(100)

Logo Blob

Server1 Varchar(50)

Server2 Varchar(50)

Server3 Varchar(50)

Page 63: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 63

FAVORITE TABLE:- Store all the favorite stations.

SEARCH TABLE:- Store the newly searched stations.

USER INTERFACE DESIGN

Field Type Null Key

FID Int No PRI

Field Type Null Key

SID Int No PRI

Name Varchar(100) No

Description Varchar(100)

Logo

Blob

Server1 Varchar(50)

Server2 Varchar(50)

Server3 Varchar(50)

Page 64: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 64

The interface design describes how the software communicates within itself, to

system that inter-operates with it and with people who use it. User interface is the doorway into

an interactive software application. The interface tells the system what action is to be taken for

entering, changing, or retrieving data. It should allow users to accomplish processing action is to

be taken for entering, changing or retrieving data. The interface would be in such a way that it

includes methods that will not be tiresome or unacceptable to frequent users who become

families with the system, but that will facilitate equally effective use by novice users. It should

prevent any action that will create a processing error.

Interface design creates an effective communication medium between a human

and a mobile. Design identifies interface objects and actions then create a screen layout that

forms the basis for a user interface.

Interface design focuses on:

1. The design of interfaces between software components

2. The design of interfaces between software and other non-human producers and

consumers of information

3. The design of interface between a human and the mobile.

Interface design begins with the identification of user, task and environment requirements.

Page 65: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 65

SYSTEM TESTING

Page 66: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 66

TEST PLAN Test Plan describes the testing strategy and approach to testing. QA is to validate the quality of the product prior to release. It also contains various resources required for the successful completion of this project.

TEST SCRIPTS

A test script is a testing work product modeling a software program (often written in a procedural scripting language) that executes a test suite of test cases

The goals of a test script are to automate or document the following:

� Automate the execution of test cases. � Support regression testing.

The support these goals, the objectives of a single test script include:

� Execute each test case in the test suite. � Report the result of the test suite.

A test script provides the following benefits:

Automates a single test suite, thereby supporting regression testing.

Failure to produce test scripts makes regression testing more expensive and less likely to occur.

GUIDELINES

Three test scripts will be used at all levels of testing (e.g., unit testing, integration testing, system testing, and launch testing).

If the quality of the test scripts is not at least as good as the quality of the item under test then it will be difficult to know if the defect causing the failure of the tests, which are documented in the associated test reports.

Page 67: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 67

SYSTEM TESTING

Testing is the stage of implementing, which is aimed at earning system running

accurately and efficiently. The purpose of the system testing is to identify and correct errors in

the new system. The performance factors like turn around time, back up, file protection and

human factors are some of the performance criteria for system testing. A system is tested for

online response, display, recovery from failure and usability.

Effective testing early in the process translates directly into long-term cost savings

from a reduced number of errors. Back up files are need when the system is failure or down. The

usability test verifies the user-friendly nature of the system. Accurate and complete

documentation is necessary for the user-friendly nature of the system.

System testing is designed to uncover weaknesses that are not found in the earlier

tests. This includes forced system failure and validation of the total system, as its users in the

operational environment will implement it. The total system is tested for recovery and fallback

after various major failures to ensure that no display is lost during the emergency. All this is

done with the old system still in operation. After the candidate system passes the test, the old

system is discontinued.

System testing involves unit testing, integration testing, acceptance testing.

Careful planning and scheduling are required to ensure that modules will be available for

integration into the evolving software product when needed. A test plan has the following

steps

• Prepare test plan

• Specify conditions for user acceptance testing

• Prepare test data for program testing

• Prepare test data for transaction path testing

• Plan user training

• Compile/assemble programs

Page 68: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 68

• Prepare job performance aids.

System testing is the stage of implementation that is aimed at ensuring that the

system works accurately and efficiently before live operation commences. The system on a

whole was tested for the following:

• Speed of data fetching from radiotimes..

• Display is same for all android devices.

• Sequential tests

• Consistency of the application

System testing, asks a logical assumption that if all the parts of the system are

correct, the system will be successfully achieved. The objective of testing is to discover errors.

To fulfill these objectives a series of tests were planned and executed.

The logical design and the physical design should be thoroughly and continually

examined on paper o ensure that they will work when implementation should be a confirmation

that all is correct and an opportunity to show the users that the system works.

Unit Testing

Here, each individual program was tested using the test data. The outputs as

per the requirements were found satisfactory. Thus it was possible to conclude that every

program in the software was functionally correct. The interrelated modules were also tested in an

exhaustive that will make the whole software work properly.

• Module interface is tested to ensure that information properly flows into and put of the

program under test.

• Local data structures are examined to ensure that data stored temporarily maintains its

integrity during all steps in algorithm execution.

• All display is tested to ensure that it is applicable for all android devices.

• All independent paths through the control structures are executed to ensure that all

statements in the module have been executed at least once.

Page 69: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 69

• Error handling paths are also tested.

This test focuses verification effort on the smallest unit of software design, the

module. Here, the module interfaces, local data structure, displays, and all independent paths and

last but not the least, all error handling paths were verified by inputting false data. Tests of data

flow across each module interface of this software were done before any other test was initiated.

A unit testing focuses on the verification effort on the smallest unit of the software

design. Using the unit test plan prepared in the design phase of the system, important control

paths be tested to uncover the errors within these module. This testing was carried out doing the

coding itself. In this testing steps, each module is going to be working satisfactorily as the

expected output from the module.

Integrated Testing

The individual programs are combined together to form modules. Integrated tests

were performed on each of the modules and again the validity was checked. After that, all

modules were brought under a single module and the integrity test was found to be successful.

This system was validated in such a way that even the slightest deviation in inputting

the data will invoke error messages and provide guidelines regarding the input. Before the

software is being released, the developers to do testing by implementing the commercial security

package for security. This ensures that the software works properly. These tests can also be

performed

• Top down integration

• Bottom up integration

It is systematic technical for constructing the program structure while at the same

time conducting test to uncover errors associated with the interface. The objective is to take unit

tested module and build the program structure that has been detected by design.

Page 70: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 70

All modules are combined in this testing step, and the entire program is tested as a

whole. If a set of errors are encountered correction is difficult because the isolation of causes is

complicated by vastness of the entire program.

Using integrated system test plan prepared in the design phase of the system

developed as a guide, he integration was carried up.

System Testing

When a system is developed, it is hoped that it performs properly. In practice

however some errors always occur. The main purpose of testing and information system is to

find the errors and correct them. A successful test is one which finds an error.

The main objectives of system testing are

• To ensure during operation the system will perform as per specifications.

• To make sure that the system meets user’s requirements during operation.

• To verify that the controls incorporated in the system function as intended.

• To see that when correct inputs are fed to the system the outputs are correct.

• To make sure that during operation incorrect input and output will be show error

message.

The scope of a system test should include computerized operation. Operations system testing is a

comprehensive evaluation of the programs, manual procedures, computer operations and

controls. System testing is the process of checking if the developed system is working according

to the original objectives and requirements. All testing needs to be conducted in accordance to

the test conditions specified earlier.

Validation Testing

Validation testing is done to ensure complete assembly of the error-free

software. Validation can be termed successful only if it functions in manner that is reasonably

expected by the customer.

Page 71: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 71

Under validation is alpha and beta testing. Alpha testing is where the end user tests

the system rather than the developer, but in a controlled environment. The software is used on a

natural setting with the developer monitoring the user using the system. The developer records

the errors and usage problems encountered by the user.

The sales person conducts beta testing at one more sites. The developer is not present

during these tests. Hence, beta test can be said as the live application of the software on an

environment that cannot be controlled by the developer.

The sales person takes down the problems encountered during beta testing and

reports these to the developer at regular intervals. The developer makes suitable modifications to

the software henceforth.

The first step in system testing is to develop a plan that tests all the aspects of the

system. Completeness, correctness, reliability and maintainability of the software are to be tested

for the best quality assurance-an assurance that the system meets the specification and

requirements for its intended user and performance. System testing is most useful practical

process of executing a program with explicit intention of finding errors that makes the program

fail. The following phases were developed.

Module Testing

Each individual programs module is tested for any possible errors. They were

also tested for specifications, i.e. to see whether they are working as per what the program

should do and how it should perform under various conditions.

Display Testing

The display procedures were tested since the displayed is of most importance.

The data was input in the different modules and it was checked whether the information is

Page 72: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 72

properly displayed in the other dependent modules. The consistency of the display and

attractiveness of the display were also tested. The following tests were also conducted over the

system developed:

• Integration: These test the integration between browsers and servers, applications and

data, hardware and software.

• Usability: These test the overall usability of a web page or a web application, including

appearance clarity and navigation.

• Security: These test the adequacy and correctness of security controls including access

control and authorizations.

• Performance: These test the performance of the web applications under load.

• Verification of code: this validate that the code used in building the web application has

been used in a correct manner.

Comments and suggestions from the observations during the test run were later

considered. Special care was given to user interface comments. The list of possible

values, the attractiveness and user-friendliness of the software was well appreciated.

Page 73: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 73

DEPLOYMENT STRATEGY

SYSTEM DEVELOPMENT & IMPLEMENTATION

Page 74: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 74

This phase occurs after the software has been delivered to the customer and put into operation. Deployment is the process of establishing all the system elements at the end user organization. Various system elements involve software, hardware, database, people, documentations and procedures.

This involves

1. User interaction/presentation component 2. Database component

User interaction/presentation component:

In order to make it an interactive application a user interface is necessary. This component implements all function that are typically associated with a graphical user interface.

Database component:

This component performs the data manipulation and management required by an application. Data manipulation and management may be as simple as the transfer of a record or as complex as the processing of sophisticated transactions. This application was developed on android/sqlite.

DIFFERENT IMPLEMENTATION METHODS Implementation is the stage in the project where the theoretical design is turned into a working system and is giving confidence on the new system for the users that it will work efficiently and effectively. It involves careful planning, investigation of the current system and its constraints on implementation, design of methods to achieve the change over, an evaluation, of change over methods. Apart from planning major task of preparing the implementation are education and training of users. The more complex system being implemented, the more involved will be the system analysis and the design effort required just for implementation.

An implementation co-ordination committee based on policies of individual organization has been appointed. The implementation process begins with preparing a plan for the implementation of the system. According to this plan, the activitites are to be carried out, discussions made regarding the equipment and resources and the additional equipment has to be acquired to implement the new system.

Implementation is the final and important phase. This is the most critical stage in achieving a successful new system and in giving the users confidence that the new system will work effective. The system can be implemented only after thorough testing so as to provide effectiveness. This method also offers the greatest security since the old system can take over if the errors are found or inability to handle certain type of transaction while using the new system.

It involves the individual programming system testing; user training and the operational running of developed proposed system that constitutes the application subsystems.

Page 75: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 75

One major task of preparing for implementation is education of users, which should really have been taken place much earlier in the project when they were being involved in the investigation and design work. During the implementation phase system actually takes physical shape. In order to develop a system implemented, planning is very essential. The implementation phase of the software development is concerned with translating design specification in to source code. The user tests the developed system and changes are made according to their needs. This system has been successfully implemented. Before implementation several tests have been conducted to ensure that no errors are encountered during the operation. The implementation phase ends with an evaluation of the system after placing it into operation for a period of time. Implementation is the third phase of the system process.

In order to achieve the objectives and the expected performance the system has been developed in a highly interactive and user-friendly manner.

At the beginning of the development phase a preliminary implementation plan is created to schedule and manage the many different activities that must be integrated into plan. The implementation plan is updated throughout the development phase, culminating in a changeover plan for the operation phase. The major elements of implementation plan are test plan, training plan, equipment installation plan and a conversion plan.

There are three types of implementation:

1. Implementation of a internet radio to replace a manual system. 2. Implementation of a new mobile to replace an existing one. 3. Implementation of a modified application to replace an existing one, using the

same computer.

After considering all the phase of the system life cycle the proposed system is

now implemented successfully.

USER MANUAL

System maintenance and service:

Page 76: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 76

This phase occurs as a result of deploying the whole system at the end users organization. They will perform the beta testing at the end users place and inform to the developers about any needed modifications to be application. The customer records all the problems that are encountered during the beta testing and reports these to the developer at regular intervals. As result of problems reported during implementation, the software developer makes modifications and then prepares for release of the software product to the entire customer base.

Type of changes that can be encountered during the maintenance phase:

Corrective maintenance: Even with the best quality assurance activities, it is likely that the customer will defects in the software. Corrective maintenance changes the software to correct defects.

Adaptive maintenance: Over time, the original environment (CPU, operating system, business rules external product characteristics) for which the software was developed is likely to change. Adaptive maintenance results in modification to the software to accommodate changes to its external environment.

Enhancement management: As software is used, the listener will recognize additional functions that will provide benefit. Perfect maintenance extends the software beyond its original functional requirements.

Preventive maintenance: Computer software deteriorates due to change, and because of this, preventive maintenance often called software reengineering, must be conducted to enable the software to serve the needs of its end users. Preventive maintenance makes changes to computer programs so that they can be more easily corrected, adapted and enhanced.

Page 77: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 77

SCREEN SHOTS

Page 78: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 78

When open the application this screen will be visible.

Page 79: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 79

Page 80: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 80

Page 81: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 81

Creating database.

This is radio playing tab.

Page 82: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 82

Page 83: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 83

Category tab.

Page 84: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 84

Page 85: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 85

Stations of the particular category is listed.

Page 86: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 86

We can pause the radio.

Page 87: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 87

Favorite tab.

Page 88: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 88

Page 89: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 89

Page 90: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 90

Search tab.

Page 91: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 91

Previous searched list.

Page 92: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 92

Page 93: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 93

Newly searched list.

Page 94: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 94

Changing volume.

Page 95: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 95

Page 96: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 96

Adding the playing item to favorite list.

Page 97: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 97

Page 98: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 98

FUTURE ENHANCEMENT

Page 99: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 99

INTERNET RADIO application can be enhanced by including features like :

• User can change the background of the application.

• Application can fetch data from VTuner rather than radiotimes because sometime

radiotimes.com is not working.

• The playing information can be shown as notification on status bar.

• Podcasting option can be implemented.

Page 100: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 100

CONCLUSION

Page 101: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 101

INTERNET RADIO is a user-friendly interactive Application for android device

and requires no prior knowledge of software. All the suggestions forwarded during the software

proposal have been successfully completed and final threshold of application has been crossed.

Some errors were spotted out during the system testing and were corrected. The system

developed for the given conditions specified by the firm was found working efficiently. The

system is highly flexible and is well efficient to make easy interactions with the database. The

goal of computer security to maintain the integrity, availability and privacy of information

entrusted to the system was successfully obtained.

Page 102: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 102

Page 103: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 103

Books:-

The following are the list of some of the books that where referred during the working over the project

1. The Complete Reference Java2 2. Android Essentials.pdf 3. Professional Android Application Development-0470344717.pdf

In the net-era, books only are not single and sufficient resources of knowledge. On internet a lot of useful information is available. Now a days it is being treated as a repository of knowledge; and we did not miss the chance to utilize such a huge resource of knowledge.

BIBLIOGRAPHY

Page 104: internet radio

DEPARTMENT OF COMPUTER APPLICATIONS, CUSAT Page 104

Web Resources:-

http://developer.android.com

http://www.android.com/

http://www.androidpeople.com/android-notification-example

http://www.twintechs.com

http://www.tutorialforandroid.com

http://www.google.com/