ShareMedia By NureAlamID


ShareMedia

By
NureAlamID: 142-15-4167
ShabnamMostaryID: 142-15-3504
Farjana Rahman OyshiID: 142-15-4126
This Report Presented in Partial Fulfillment of the Requirements for the Degree of Bachelor of Science in Computer Science and Engineering.

Supervised By
Mr. Raja Tariqul Hasan Tusher
Lecturer
Department of CSE
Daffodil International University
21042795631
DAFFODIL INTERNATIONAL UNIVERSITY
Shukrabad, Dhanmondi, Dhaka-1207
May 2017
APPROVAL
This Project titled “ShareMedia”, submitted by Nure Alam ID: 142-15-4167,Shabnam Mostary ID:142-15-3504 and Farjana Rahman Oyshi to the Department of Computer Science and Engineering, Daffodil International University, has been accepted as satisfactory for the partial fulfillment of the requirements for the degree of B.Sc. in Computer Science and Engineering(BSc) and approved as to its style and contents. The presentation has been held on May 2017.

Board of Examiners
012318900
Dr. Syed Akhter HossainChairman
Professor and Head
Department of Computer Science and Engineering
Faculty of Science & Information Technology
Daffodil International University
010858400
Dr. Sheak Rashed Haider NooriInternal Examiner
Associate Professor and Associate Head
Department of Computer Science and Engineering
Faculty of Science & Information Technology
DaffodilInternationalUniversity013525400
Md. Zahid HasanInternal Examiner
Assistant Professor
Department of Computer Science and Engineering
Faculty of Science & Information Technology
DaffodilInternationalUniversity013334900
Dr. Mohammad Shorif UddinExternal Examiner
Professor and Chairman
Department of Computer Science and Engineering
Jahangirnagar University
Declaration
We hereby declare that, this project has been done by us under the supervision of Mr.RajaTariqul Hagan Tusher, Lecturer, Department of CSE, and Daffodil International University in Partial fulfillment of the requirements for the Degree of Bachelor of Computer Science.

We also declare that neither this project report nor any part of this project report has been submitted elsewhere for award of any Degree or Diploma. We also declare that, we collect information from our project work experience and Internet.

Supervised by:
011937900
Mr. Raja Tariqul Hagan Tusher
Lecturer
Department of CSE
Daffodil International University
Submitted by:
016192400
Nure Alam
ID:142-15-4167
Department of CSE
Daffodil International University
Shabnam MostaryID: 142-15-3504
Department of CSE
Daffodil International University
Farjana Rahman OyshiID:142-15-4126
Department of CSE
Daffodil International University
ACKNOWLEDGEMENT
First we express our heartiest thanks and gratefulness to almighty God for his divine blessing makes us possible to complete the final year project successfully. We have been taken efforts in this project. However, it would not have been possible without the kind support and help of many individuals. We would like to our extend sincere thanks to all of them.

We really grateful and wish our profound our indebtedness to Mr. Raja Tariqul Hagan Tusher , Lecturer , Department of CSE, Daffodil International University, Dhaka. Deep Knowledge & keen interest of our supervisor field in the of “ShareMedia” to carry out this project. His endless patience, continual encouragement scholarly guidance, constant and energetics supervision, constructive criticism, valuable advice, reading many inferior draft and correcting them at all stage have made it possible to complete this project.

We are highly indebted to Daffodil International University and The Head, Department of CSE, for their guidance and constant supervision as well as for providing necessary information regarding the internship and also for their support in completing the project and also to other faculty member and the staffs of the department of CSE of Daffodil International University.

Finally, we would like to express our gratitude towards our parents & our supervisor Mr. Raja Tariqul Hagan Tusher for their kind co-operation and encouragement which helped us in completion of this project.

Abstract
This project is online android application named “ShareMedia”. This application is used to communicate to others. The era of mobile opens the technology windows to the android apps.
The aim of the application is to help the owners and users. We will using this application anywhere using internet. Share media allows massage exchanges without having to pay for SMS. The users can create groups, send each other unlimited images, audios, current locations, voice massages, video, contact number, file transfer.

The platform of the developed online application is online platform and Mobile application is Android operating system. This application works in online mode which means internet connection must be provided.

To develop this project most essential languages are XML, Firebase, Web RRC server and java for android application. After implementation of the functions, the system is tested in different stages and it works successfully as a prototype.

Report Layout
To complete this report, we add the layout. Layout is the process of add something in a short form or in a table to show the whole process in short time. We use layout because we want to show the all of my work in a short form, so that viewer can understand it clearly.

Chapter 1 is describing the introduction, objective, motivation, expected result, methodology of this project.
Chapter 2 is about the project background and the project overview. This chapter gives the information about related work, comparative studies, scope of the problem and project challenges.

Chapter 3 is shown the system design of this project. Also described use case description, uses case model for login with register.

Chapter 4 described the project implementation, Installation & Configuration, Functional Requirements or Feature, Non Functional Requirements, Mobile operating system, android application, the project database, upload database, UI design and Functionality.

Chapter 5 described about the project validation and testing, like Functional Testing of database, Unit test, System Testing, Compatibility test.

Chapter 6 is about Conclusion and Future Scope of this project.

TABLE OF CONTENTS
CONTENTS PAGE
Board of examiners I
Declaration Ii
Acknowledgements Iii
Abstract
CHAPTER Iv
CHAPTER 1: INTRODUCTION 1-3
Introduction
Objectives
Motivation
Expected Result
Methodology
1
1
2
2
3
CHAPTER 2: BACKGROUND 4-5
2.1 Introduction 4
2.2 Related Works 4
2.3 Comparative Studies
2.4 Scope of the Problem
2.5 Challenges
4
4
5
CHAPTER 3: SYSTEM DESIGN 6-7
3.1 Logical Designing of the normal user
3.2 Use Case Description
3.2.1 Use Case model for login with register 6
6
6
CHAPTER 4: IMPLEMENTATION 8-13
4.1 Installation& Configuration 8
4.1.1 Installing the JDK 8
4.1.2 Installing the Android SDK 9
4.1.3 Installing the right Eclipse Version and Android studio
4.2 Functional Requirements or Feature
4.3 Non-Functional Requirements
4.4 Mobile Operating System
4.5 Android Application
4.6 Database
4.7 Upload project
4.8 UI Design and Functionality
9
9
10
11
12
12
13
CHAPTER 5: VALIDATION & TESTING
5.1 Testing
5.1.1 Functional Testing
5.2 Unit Testing
5.3 System Testing
5.4 Compatibility Test
CHAPTER 6: CONCLUSION & FUTURE SCOPE
6.1 Conclusion
6.2 Future Scope
REFERENCES
27-28
27
27
27
28
28
29-30
29
29
LIST OF FIGURES
FIGURES PAGE NO
Figure: 3.2.1 Use Case model for login with register
Figure 4.8.1 Login and home page.

Figure 4.8.2 Categories update map with contact.

Figure 4.8.3 Categories recording and default map
Figure 4.8.4 Chats
Figure 4.8.5: Recording.

Figure 4.8.6: New Group
Figure 4.8.7: Search Option and Contact List.

Figure 4.8.8: Dashboard page.

Figure 4.8.9: XML Form On page.

Figure 4.8.10: Layout page.

Figure 4:8.11: Accounts module page with user account.

LIST OF TABLE
TABLESPAGE
Table 5.1 Comparability Testing
4
11
PAGE
7
16
17
20
21
22
CHAPTER 1
INTRODUCTION
1.1 Introduction
Android has become very popular in market for two mainstream reasons. First, source code is completely free moreover, there are no royalty fees for JVM( Java Virtual Machine).second deriving from the first, Android is highly compatible for expansion as the developer see fit.

“Share media” is an application for Android mobile phones. With the installation of this application one can use it and benefited. User allows massage exchanges without having to pay for SMS. The users can create groups, send each other unlimited images, audios, current locations sharing, voice massages, videos, contact number, file transfer. A mobile applications designed to run on smart phones, tablet computers and other mobile devices. They are usually available through applications distribution platforms, which are typically operated by the owner of the mobile operating system such as the Google play and windows phone store.

1.2 Objectives
This project is provide multimedia communication with text messaging, hold to talk voice messaging, broadcast messaging, photo or video sharing, location sharing and contact information exchange.
The Objectives are:
To maintain simplicity.

To maintain accessibility.

To maintain compatible platform.

To maintain instant messaging.

To maintain picture messaging.

To maintain group chat.

To maintain allow videos, voice notes.

To maintain advance technology.

To maintain modernization of people.

To increased demand for smart phones.

1.3 Motivation
Today’s world is digital world. Digital world means online based services. Here people want everything in their hand. There is nothing which isn’t in online. All information’s are going to online. In online all information’s are storage in individual database, which is maintained by a website, that is a system.

In our country smart phone or tablet had becoming a necessity in our life as well as to communicate and even for entertainment. So android apps are apparently needed to make peoples life easy. And they wants to communicate with others, share about life or many things in effortless.

This think is motivating us, to prepare this application. For this we have done our project on ShareMedia.

1.4 Expected Result
Now-a- days there are too many mobile application in our country. At this circumstance a user face great difficult to choose suitable application. The user has to face difficulty to pick up which application. This application will be helpful to overcome all these difficulties of the users. User allows massage exchanges without having to pay for SMS. The users can create groups, send each other unlimited images, audios, current locations sharing, voice massages, videos, contact number, file transfer.

1.5 Methodology
We have undertaken several parts to make this project successfully. We researched on existing manual process. Methodology of the functioning of the existing system gives the Idea for the design of the new system.
Log in to User Id.

Start chatting.

Next to the Initiate Chat with user.

From the more menu, select Hosted Domains.

Click START.

Enter the File Button Or Recording Button.
Depending on how you want to configure the domain name, do one of the following:
File Button — Enter a file button and show Location, Camera, File, Audio, Video, Contact;
Alias leave the folder field blank.

Message okay.

CHAPTER 2
BACKGROUND
2.1 Introduction
At present about 131.956million (2016) Bangladeshi use mobile phone for quick communication. 8.2 million (2015) of them use smart phone and this number is increasing day by day. 6.5 percent (2013) of total population use internet. It has become possible as a result of taking some groundbreaking measures in ICT sector by the government. The user has to face difficulty to pick up which application. This application will be helpful to overcome all these difficulties of the users. This application will provide the smartphone users with the solutions of this problems.
2.2 Some Other Projects Works
In Google Play Store, there are some similar type applications. Some of this are: Shareit, Messenger, Talkie, WhatsApp.

2.3 Comparative Studies
This application is multidimensional compared to others. It displays various types of information free of cost which is not frequently occurred in some others.. User allows massage exchanges without having to pay for SMS. The users can create groups, send each other unlimited images, audios, current locations sharing, voice massages, videos, contact number, file transfer.

2.4 Scope of the Problem
It can’t give any suggestion.

Most of the feature are not free.

Specially this application is not only for Bangladesh.

2.5Challenges
The proposed application should have the following challenges to overcome the better service:
To maintain simplicity.

To maintain accessibility.

To maintain compatible platform.

To maintain instant messaging.

To maintain picture messaging.

To maintain group chat.

To maintain allow videos, voice notes.

To maintain advance technology.

To maintain modernization of people.

To increased demand for smart phones.

CHAPTER 3
DESIGN AND DEVELOPMENT
3.1 Logical Designing of the normal user
The most creative and challenging phase of the system development life cycle is design.

To simplify the design to understand we explains some few parts of our application. The main user interface of our application has one part is login/sign up and the backend Part of our application XML database. A logical design of our application. In this application the User ID, Email, phone, Password, Display Name and login button.
3.2 Use Case Description
The Use Case Model describes the proposed functionality of the new system. A Use Case represents a discrete unit of interaction between a user (human or machine) and the system. A Use Case is a single unit of meaningful work; for example login to system. Each Use Case has a description which describes the functionality that will be built in the proposed system. A Use Case my ‘include’ another Use Case’s functionality or ‘extend’ another Use Case with its own behavior.

Use Cases are typically related to ‘actors’. An actor is a human or machine entity that interacts with the system to perform meaningful work. In our Project there are one actors.
This is
User Login
3.2.1 Use Case model for login with register
Actor: User Login
Primary Path:
User Id, Email, Phone Number, Password, Display Name

Figure 3.1: Use Case model for login with register
CHAPTER 4
IMPLEMENTATION AND DESIGN
4.1 Installation and Configuration:
Now it’s time to get this Android going, we need to install and configure a few tools, including SDKs:
?Java JDK: Lays the foundation for the Android SDK.

?Android SDK: Provides access to Android libraries and allows us to develop for Android.

Android Studio.

?Eclipse IDE (integrated development environment): Brings together Java, the Android SDK, and the Android ADT (Android Development Tools), and provides tools for us to write our Android programs.

?Android ADT: Does a lot of the grunt work for our, such as creating the files and structure required for an Android app.

A benefit of working with open-source software is that most of the time, we can get the tools to develop the software for free. Android is no exception to that rule. All the tools that we need to develop rich Android applications are free of charge.

4.1.1 Installing the JDK
It’s important to remember what version of the Java SDK we need to install. As we want to work with Android 2.2 it’s only supports Java SDK versions 5 and 6. If I install the wrong version of Java, we knows that we’ll get unexpected results during development. So we installed JDK version 6 which is jdk-6u33-windows-i586. Then we created the java Path variable and then we successfully tested java by using command Java at the command prompt .4.1.2 Installing the Android SDK
The Android SDK is composed of a debugger, Android libraries, a device emulator, documentation, sample code, and tutorials. It’s so important because we can’t develop any Android apps without it. We successfully downloaded the android-sdk_r20-windows which is android SDK revision 20 and placed that folder to c:android as it is recommended. For the purposes of our project, we installed version 4.0.3 (API 5) and we also downloaded the documentation and samples that correspond with Android version 4.0.3 (API 15) through the SDK Manager.

4.1.3 Installing the right Eclipse Version and Android Studio
Downloading the correct version of Eclipse is very important. Android support Eclipse Helios and Eclipse Galileo but it’s best to use Eclipse Helios. So we downloaded and installed eclipse-jee-helios-SR2-win32 for our project. Eclipse IDE for JAVA EE Developers works as well.

4.2 Functional Requirement or Feature
In software engineering (and systems engineering), a functional requirement defines a function of a system and its components. A function is described as a set of inputs, the behavior, and outputs (see also software).
Functional requirements may be calculations, technical details, data manipulation and processing and other specific functionality that define what a system is supposed to accomplish. Behavioral requirements describing all the cases where the system uses the functional requirements are captured in use cases. Functional requirements are supported by non-functional requirements (also known as quality requirements), which impose constraints on the design or implementation (such as performance requirements, security, or reliability). Generally, functional requirements are expressed in the form “system must do <requirement>”, while non-functional requirements are “system shall be <requirement>”. The plan for implementing functional requirements is detailed in the system design. The plan for implementing nonfunctional requirements is detailed in the system architecture.
As defined in requirements engineering, functional requirements specify particular results of a system. This should be contrasted with non-functional requirements which specify overall characteristics such as cost and reliability. Functional requirements drive the application architecture of a system, while nonfunctional requirements drive the technical architecture of a system.
In some cases a requirements analyst generates use cases after gathering and validating a set of functional requirements. The hierarchy of functional requirements is: user/stakeholder request ? feature ? use case . Each use case illustrates behavioral scenarios through one or more functional requirements. Often, though, an analyst will begin by eliciting a set of use cases, from which the analyst can derive the functional requirements that must be implemented to allow a user to perform each use case.
In our project, there are such kinds of things will be included and that are:
A typical functional requirement will contain a unique name and number, a brief summary, and a rationale. This information is used to help the reader understand
Why the requirement is needed, and to track the requirement through the development of the system.
4.3 Non-Functional Requirements
In systems engineering and requirements engineering, a non-functional requirement is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviors. This should be contrasted with functional requirements that define specific behavior or functions. The plan for implementing functional requirements is detailed in the system design. The plan for implementing nonfunctional requirements is detailed in the system architecture.
Broadly, functional requirements define what a system is supposed to do and nonfunctional requirements define how a system is supposed to be. Functional requirements are usually in the form of “system shall do <requirement>”, an individual action of part of the system, perhaps explicitly in the sense of a mathematical function, a black box description input, output, process and control functional model or IPO Model. In contrast, non-functional requirements are in the form of “system shall be <requirement>”, an overall property of the system as a whole or of a particular aspect and not a specific function. The systems’ overall properties commonly mark the difference between whether the development project has succeeded or failed.
4.4Mobile Operating System
A mobile operating system (mobile OS) is specifically designed to run on handy devices such as mobile phones, smartphones, PDAs, tablets and other handheld devices. To run the devices there are few well known OS are available worldwide such as:
Android OS (Google Inc.),
iPhone OS /iOS (Apple)
BadaOS (Samsung Electronics)
BlackBerry OS (Research in Motion)
MeeGoOS (Nokia and Intel)
gPalmOS (Garnet OS)
Symbian OS (Nokia)
Web OS (Palm/HP)
Some OS are used massively in terms of its user friendliness, design flexibilities; cost comparing other phones and the availability of applications. For our project we have chosen android platform due to its availability and user friendliness. Android is developed by Google, based on the Linux kernel and designed primarily for touchscreen mobile devices such as smartphones and tablets. Android is the world most used mobile operating system.

4.5 Android Applications
There are millions of application available in Google play store. Some of them are given below.

Messenger, imo, viberVarious types of social communication application
ShareitData sharing application
Google map
Location and various types of map information
Weather
Temperature and weather related information
Clash of clans, Modern Air Combat
Various types of popular Games
The above apps are almost designed in general perspective so that any user can use them as required. Our target is Bangladeshi smart phone users.

4.6 Database
A database is an integrated collection of logically related records of files consolidate into a common pool that provides data for one or more multiple uses. The MySQL database stores logically in the form of table spaces and physically in the form of data files.
To create databases
Log in to UserId.

Click To .Start;
Next to the Create account group you want to use, click Manage.

In the Databases section of the Hosting Control Panel, click the icon corresponding to the database you want to create.

Click Add.

Complete the fields. To allow direct access, click Additional Options.

Verify the settings and click OK.

It takes up to 1 hour to create a database.

Once the database is created, you can click Actions, and then Details to find more information, such as its host name.

4.7 Upload project
UPLOAD FILES
Your hosting account has a built-in file manager you can use to upload the files to your hosting account.

Log in to your Account Manager.

Enter the UserId.

Next connect to the same UserIdaccount you want to use, click Manage.

In the Tools section, click File Manager.

Use the directory tree to select the folder you want to upload the file to.

Click Upload.

Select to Add file or Add folder. You can upload up to 250MB at a time.

Select the file or folder to upload.

4.8 UI Design and Functionality

4.8.1 The following Login and home page.

.

left69850
Figure 4.8.1: Login and home page
4.8.2 The following figure categories map with contact.

Figure 4.8.2: Categories update map with contact.

4.8.3 The following figure categories recoding and default Maps.

Figure 4.8.3: Categories recording and default map.

4.8.4 The Chat list:

Figure 4.8.4: Chats.

4.8.5 Recording

Figure 4.8.5: Recording
4.8.6 Create New Group:

Figure 4.8.6: New Group
4.8.7 Search Option and Contact information’s

Figure 4.8.7: Search Option and Contact List
4.8.8 The following dashboard page.

Figure 4.8.8: Dashboard page.
4.8.9 XML Design and Functionality
The following logging Form page.

Figure 4.8.9: XML Form on page.
4.8.10 XML Design and Functionality

Figure 4.8.10: Layout Page
4.8.11 XML Design and Functionality
The following accounts menu page.

Figure 4.8.11: Accounts module page with user account.
CHAPTER 5
VALIDATION ; TESTING
5.1 Testing
In general, software testing is used to find out system errors. A software test can be carried out by examining codes, design and execution of the whole system. Testing is inevitable to improve the quality of the system. Reviewing and testing code is another basic of software engineering that is often overlooked in project development. Testing is an integral part of the system development process. The main Standard for software Testing is contained in the ANSI/IEEE standard 829/1983-Standard for software testing Documentation. Some software testing may also be performed by CAST (Computer Aided Software Testing).

5.1.1 Functional Testing
In functional testing tester has to validate the application to see that all specified requirements of the client whatever we have said in SRS have been incorporated or not.

There are two categories of functional testing:
Positive functional testing: testing the application’s functions with valid input and also verifying that the outputs are correct.

Negative functional testing: IT involves exercising application functionality using a combination of invalid inputs some unexpected operating conditions and by some other “out-of-bounds” scenarios.
5.2 Unit Test
Unit testing is generally used in a detailed designing and implementing phase of a project. The rationale of unit test was to find out the defects in this project.
5.3 System Testing
System Testing: Every service related software should have the ability to perform properly. In order to do this, the software should have the following criteria:
Performance tests: In this project, performance was a great concern for software evaluation. This type of test was required to ensure that the application was capable of satisfying the performance criteria set on the system.
User tests: This test was done to check the accuracy and usability of the system.

5.4 Compatibility Test
Compatibility Testing, part of software non-functional tests, is testing conducted on the application to evaluate the application’s with the computing Environment.

Software compatibility testing can be more appropriately referred to as user experience Environment. This project is tested on different browsers, to ensure the following:
Table 5.1: Comparability Testing
Android Device name Screen Size Test Result
Huawei Nova 2i 5.9 inch(1080p) Yes OK
Huawei P9 Lite 5.2 inch Yes OK
Samsung A5 5 inch (720p) Yes OK
Huawei GR3 5 inch Yes OK
4.5inch (720p) Yes OK
Samsung Galaxy core prime 4 .5 inch (480p) Yes OK
Walton primo GM 5 inch (480p) Yes OK
CHAPTER 6
CONCLUSION ; FUTURE SCOPE
6.1 Conclusion
Communication and exchange of information is the most important factor to keep pace with the modern world. In modern busy life, a person has to communicate with a huge number of people. So it should be very fast and mobile phone has met up this demand. Obviously smart phone has opened a new dimension in communication sector. A lion share of the smart phone is operated by android. So it is necessary to make something which can reduce cost for calls.

Keeping in mind such type of thought we have built an android application in where people can get proper information. We have tried to introduce a smart way to reduce call cost of general people. We expect all the Bangladeshi people will get help using this application.

.

6.2 Future Scope
Everything in this world is changing and it is truer for information and communication technology. In future it can be done to include some Features developed in our project.

This Application can be based on com purpose in our Country or worldwide. We have some plan for the future. We can make the system more dynamic and secured.
This Application is really smart and expecting will be more smart in the near future by improving its various features and it can be shown as various smart phone platforms.
REFERENCES
1 Android Studio and SDK: http://developer.android.com/sdk/index.htmllast Accessed Mar 10th 2017
2 Java JDK: http://www.oracle.com/technetwork/java/javase/downloads/index.html last Accessed Mar 20th 2017
3Android API 15 Tools: http://developer.android.com/about/versions/android-4.0.3.htmllast Accessed APR 20th 2017
4 Android API15 Samples: http://developer.android.com/samples/index.htmllast Accessed Mar 05th 2017
5 Android API Demos: https://android.googlesource.com/platform/development/+/master/samples/ApiDemos/src/com/example/android/apis/app/FragmentRetainInstance.javalast Accessed APR 20th 2017
6 Eclipse IDE for JAVA EE Developers: http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/keplersr1 last Accessed APR 20th 2017
7 Eclipse Plug-ins: http://developer.android.com/tools/help/adt.html last Accessed Mar 20th 2017
8Feasibility study: https://www.projectsmart.co.uk/elements-of-a-good-feasibility-study.phplast Accessed APR 20th 2017
9 About mobile app: https://en.wikipedia.org/wiki/Mobile_app last Access APR 20th 2017
10 Android market share: http://www.idc.com/prodserv/smartphone-os-market-share.jsp last access Nov APR 20th 2017