Ministry of education and training fpt university



tải về 1.87 Mb.
trang1/24
Chuyển đổi dữ liệu09.10.2016
Kích1.87 Mb.
  1   2   3   4   5   6   7   8   9   ...   24




MINISTRY OF EDUCATION AND TRAINING






FPT UNIVERSITY

Capstone Project Document

KA Plus – Karaoke Plus

(Mobile Application)









Group Members

Bùi Minh Phương – PhuongBM00045

Bùi Thành Chung – ChungBT00057

Trần Đức Vinh – VinhTD00076

Đinh Mạnh Ngọc – NgocDM00206

Dương Bích Ngọc – NgocDB00214


Supervisor

PhD. Phan Duy Hùng

Ext Supervisor




Capstone Project code

KAP








- Hanoi, May - 2011 -



Table of Contents


Table of Contents 2

A. Introductions 12

I.The initial idea 13

1. Definition of KA Plus: 13

Karaoke player that run on PC will use a free and open source cross-platform multimedia player and framework that plays most multimedia files as well as DVD, Audio CD, VCD, and various streaming protocols. 15

Our team develop application run on phone which using Android Operating System. Because The Android OS can be used as an operating system for cell phones, notebooks and tablets, TV and other devices so it will easy to develop for many devices. Firstly, we will develop our application for one device, it is Android mobile phone. 15

A hardware and software solution for karaoke box: easy to implement, low cost and effective. Karaoke box can cut cost and attract more customers. Of course, our application is the important part that will make this possible. 15

2. Why need our application 15

Nowadays, mobile phone is become popular, and people can use it in many subjects with a lot of ways. In Vietnam, although Android mobile are not cheap and it still not popular, but people own them had a significant number. Android market is also developing very fast and it a potential market to make business by develop application for it. 15

Almost karaoke box in Vietnam still using employee to serve customer when they choose song for singing , request for changing , stop or continue playing song . . . 15

KA Plus bring new experience, interesting, the feeling of useful for users when they using your mobile phone. 15

Karaoke Box can cut cost for business, because they need fewer employees than before, and equipment for running karaoke service will effective and lower cost 15

3. Limitation of our application 16

4. Business model 16

Profits from the contract to install and maintain software for each karaoke box 16

Percentage revenue share 16

II. Existing system 16

1. Overview existing application 16

After researching, we find some kind of karaoke application. They have two kinds, one use for PC and one another use for mobile phone. There are some examples of them: 16

Application run on PC: 16

1. Vina Karaoke Jukebox: This has two parts. The first is as a client run on a touch screen with 15 inch at minimum and places within room. User can search and add song into playlist to song. Of course, current list can be edited by user: add, edit, and remove. So user can do some media command as stop, play, next, back, adjusts volume and equalize. 16

17

Picture 1.1 the application run on touch-screen 17



In direction room or home, Karaoke box and user use the same application but it is used by normal application run on PC: 17

18


Picture 1.2 The application run on PC 18

Reference: http://www.vinakaraoke.com/ 18

2. VLC Player 18

18


Picture 1.3 The simple application run on PC 18

Simple, Powerful and Fast 18

Play everything, Files, Discs (DVD, CD, and VCD), Devices and Sreeams 18

Plays most codecs with no codec packs needed 18

Completely Free, no spyware, ads or User Tracking 18

Best mpeg2, x264, DivX player 19

Works on most platforms: Windows, Linux, Mac, UNIX. 19

Media Converter and Streamer 19

Some application run in mobile phone: 19

1. Mini Karaoke : 19

This is the first Karaoke player in the mobile world. With her you can sing Karaoke songs in your android phone, with the only requirement that you have the mp3 files. 19

Picture 1.4 Android application: Mini Karaoke 20

2. Karaoke Vietnam 21

This is a simple searching tool on mobile. 21

21

2. Limitation of existing system 21



With application run on PC in karaoke box or home: 21

Owner must hire employee to control each karaoke room because all most customer can do it by themselves. 21

With application run on touch screen for customer, the quality of devices are not good, and customer still must go to control area (Karaoke box fixed the screen’s location). 21

With home karaoke application (using PC as karaoke player), user must control karaoke without remote. 21

With application run on mobile phone: 22

None application can have two main functions: remote and search playlist. 22

None complete Vietnamese application can remote karaoke on mobile phone. 22

Search function still simple and not optimized for choose song when sing karaoke. 22

None complete solution for karaoke box serve customer most effective and lowest cost. 22

III. Project team 22

1. Basic norms 22

Having a clear purpose: Team have an outlined plan and an indicated strategic. Our project must get good results. We expect that this project get 8.5 marks or more to demonstrate our team work spirit and our knowledge. 22

Understanding of roles and structure: The roles of team members are assigned base on the personal skill and the knowledge of everyone. All of team members are clear about the work in each role and about what is expected of them as well as clear about the roles of others on the team. 22

Output products: It’s very important. It demonstrates the attitude of team about the project. The quality of output is high and submits output on time. 22

22

Using diversity effectively: Each member of team have the different abilities and knowledge in some subjects. Team diversity is used to the team’s benefit. The experienced members train others to understand widely knowledge such as business, technical or personal skills… 22



Marking Self-assessment: Periodically, the team stops to examine how well it is functioning and what may be interfering with its effectiveness. The team will sometimes call on supervisors to honestly assess team processes and effectiveness. 22

Solving problem and Making decisions: Differences in opinion are discussed openly and decisions are usually arrived at through consensus. If it has many decision-makings to solve a problem, team will create vote to decide solution for that problem. 23

2. Advantage of team 23

All of us are close friends. We have learned together about 4 years. We know each other very well so we will work together well. 23

All members know java programming language 23

Some of us are very good at java-programming technique and have experienced with programming in mobile phone. 23

All members are hard working and most of us are finished all required subject so we have more time to do. 23

All of us like a project related to mobile phone especially Android OS. 23

3. Disadvantage of team 23

This is the first project we work in mobile phone environment. Some of us have not experience or have never program in this environment so it takes us many times to over training. 23

This project is a quite big with the student like us. Although we have learned about managing skill and work allocation, we still have some trouble in allocating and managing work for all members in a big real project like that. 23

Another small disadvantage is the geographical distance between us. Most of us are quite far each other so maybe sometime we make the meeting more difficult than other team that near each other. 23

4. Time line 23

Study and defile problem : 1 week 24

Collect requirement : 2 weeks 24

Design : 2 weeks 24

Coding : 4 weeks 24

Testing : 2 weeks 24

Summary and finish : 2 weeks 24

IV. Developing and final project package 24

1. Developing 24

Process: Flow one software project development correctly with all phrases. 24

Environment developing 24

Windows 7 Operating System 24

Java(TM) 6 Update 24 24

Java(TM) SE Development Kit 4 Update 24 24

Android SDK Tools 0.7 (Google Inc.) 24

Wi-Fi network 24

Eclipse reporting Helios SR2 24

Samsung android mobile phone 24

Visual Studio 24

Other supported software and service 24

Google code 24

Microsoft Project Professional 2010 24

Microsoft Office 2010 24

Adobe Photoshop CS 5 extended update 12 24

Email and Skype 5.3 24

Tortoise SVN 1.6.15.21042 25

2. Final project package 25

SERVER : Application can make play-list and control play-list 25

PC : VLC player 25

Mobile phone : An application with functions listed above 25

V. Acronyms 25

1. Acronyms 25

2. Reference 25

B. Software Project Management Plan 26

I. Problem Definition 26

1. Name of this Capstone Project: 26

2. Problem Abstract 26

3. Project overview 26

There are two system of karaoke now. 26

One is an audio processing software is installed on a device such as computer or digital home video. 26

The other is an application on smart phone. They can directly open karaoke songs available on memory of mobile device or download via 3G. However, it has many limitations compared the first type. 26

User can search the songs they want 26

See top selected songs in this karaoke bar 26

Add the new songs just selected to the bottom of current playlist 27

The current playlist can modify such as swapping the positions, delete, update... 27

Users can play the selected playlist. 27

Can use media button such as: pause, stop, next, volume.... to remote to the computer 27

The system can run on many firmware version of android mobile 27

The system under development of this Capstone Project will include: 27

A complete application run on android mobile can connect to pc client via wifi. 27

Software run on server can manage many functions 27

All the process documents involved 27

At least one android smart phone with wifi and firmware version from 2.1 or later 27

An server system to store karaoke songs with the minimum configuration: 27

1000 GB of hard disk, 1GB Ram, core 2 Dou 2.0 GHz. 27

At least one client computer to run application processing audio video with the minimum configuration: 40 GB of hard disk, 2 GB Ram, core 2 Dou 2.0 GHz. 28

A modem wifi. 28

Operating system: Windows XP / Windows 7 28

Framework: .NET Framework 4.0 28

IDE: Visual Studio 2010 28

DBMS: SQL Server 2008 R2 28

Source Control: Google code 28

Tool: 28

Email fpt and Skype 5.3 28

Microsoft Office 2010 28

Microsoft Project Professional 2010 28

Tortoise SVN 1.6.15.21042 28

II. Project Organization 28

1. Software Process Model 28

2. Role and Responsibilities 29

3. Tool and Techniques 30

Work well with Eclipse IDE for supporting programming. 30

Use goggle code tool efficiency. 30

Java language 30

Other techniques: Create, review document techniques, etc. 30

Presentation skill 30

Relationship skill 30

Other skills: Management skill, persuasion skill, etc. 30

III. Project Management Plan 31

1. Task 31

2. Task sheet: Assignments and Timetable 33

3. Meeting minutes 33

IV. Coding convention 35

1. Purpose 35

2. Java language 35

3. C# language 46

V. Other Material 48



C. Software Requirement Specifications 48

I. Document overview 48

1. Purpose 48

2. Scope 49

II. Software Requirements Specification 49

1. User Requirements 49

2. Admin Requirements 50

3. Remote requirements 50

4. Searching Requirements 51

5. Playlist Requirements 51

III. System Requirement Specification (Specific Requirements) 51

1. External Interfaces Requirement 51

1.1. User Interfaces 51

1.2. Admin User Interfaces 52

1.3. Hardware Interfaces 52

1.4. Software Interfaces (Runtime environment) 53

1.5. Communication protocol 54

2. System Features 54

2.1. Download and setup application 54

2.2. Connection 56

2.3. Play a list song available 59

2.4. List playing songs 60

1.0 61

62


2.5. Remote VLC (Video LAN Media Player) 62

2.6 Search songs 63

2.7. Add a song to Favourite 65

2.8. Add a song to Playing list 67

2.9. Remove a song from Playing list 68

2.10. Remove a song to Favourites 70

2.11. (Admin) Collect karaoke song’s information 72

2.12. (Admin) Edit karaoke song’s information 74

2.13. (Admin) Create All-Playlist 76

2.14. (Admin) Create Suggested-playlist 78

2.15. (Admin) Schedule creating playlists 80

IV - Software System Attributes 83

1. Reliability 83

2. Availability 83

3. Security 84

4. Maintainability 84

5. Portability 84

6. Performance 84

V. Reference 85

D. Software design description 85

I. Design Overview 85

II. System Architectural Design 86

1. Choice of System Architecture 86

2. System Interface 88

2.1 PC-Server Interface 89

2.2 PCs-Client Interface 89

2.3Mobile Interface 89

III. Component 89

1. KAP-SS 89

2. KAPlus 89

3. KAP-Client 89

IV. KAP Detailed Design 89

1. Mobile 89

1.1 Connection 90

1.1.1 Class Diagram 90

1.1.2 Class Explanations 90

1.1.3 Sequence Diagram 91

1.2 Play Control 91

1.2.1 Class Diagram 91

92

1.2.2 Class Explanations 92



1.2.3 Sequence Diagram 92

1.3 Pause Control 93

1.3.1 Class Diagram 93

94


1.3.2 Class Explanations 94

1.3.3 Sequence Diagram 94

1.4 Next Control 96

1.4.1 Class Diagram 96

96

1.4.2 Class Explanations 96



1.4.3 Sequence Diagram 97

1.5 Previous Control 98

1.5.1 Class Diagram 98

1.5.2 Class Explanations 98

Class diagram has responsibility about previous song in list song, which played. 98

99


1.5.3 Sequence Diagram 99

1.6 Full screen Control 100

1.6.1 Class Diagram 100

100


1.6.2 Class Explanations 100

Class diagram has responsibility about function full screen of VCL player. 100

1.6.3 Sequence Diagram 101

1.7 Search song 102

1.7.1Class Diagram 102

102


1.7.2 Class Explanations 103

Class diagram has responsibility about search song. 103

1.7.3 Sequence Diagram 103

1.8 Add song to play list 104

1.8.1 Class Diagram 104

105


1.8.2 Class Explanations 105

1.8.3 Sequence Diagram 106

1.9 Play a song 107

1.9.1 Class Diagram 107

108

1.9.2 Class Explanations 108



1.9.3 Sequence Diagram 109

1.10 Add song to Favorites 110

1.10.1 Class Diagram 110

111


1.10.2 Class Explanations 111

1.10.3 Sequence Diagram 112

1.11 Playing List Song 113

1.11.1 Class Diagram 113

114

1.11.2 Class Explanations 114



Class diagram has responsibility about manipulate songs in Playlist: play, remove a song or all. 114

1.11.3 Sequence Diagram 114

Play a song in list 114

115


Remove a song 115

115


Remove all songs 116

116


1.12 Suggest Playlist 116

1.12.1 Class Diagram 116

117

1.12.2 Class Explanations 117



1.12.3 Sequence Diagram 117

1.13 Update Playlist 118

1.13.1 Class Diagram 118

119


1.13.2 Class Explanations 119

1.13.3 Sequence Diagram 120

2. KAP-Client 120

2.1Class Diagram 120

121

2.2 Class Explanations 121



2.3 Sequence Diagram 122

V. KAP-SS Detailed Design 122

1. Overview 122

2. Add song 124

3. Add multi songs 127

3.1 Class Diagram 128

3.2 Class Explanation 129

3.3 Sequence Diagram 130

4. Create All Playlist 130

4.1 Class Diagram 131

4.2 Class Explanation 132

5. Create Suggest Playlists 133

6. Make Auto Create Playlists 137

7. Program Auto StartUp 140

8. Count Played-Time 144

9. Set type of Suggest-Playlists 146

10. Edit Data 149

11. Display Data 152

VI. Database Design 154

1. KAPlus database 154

1.1 Database Overview 154

1.2 Database Detailed Design 155

2. KAP-SS database 155

2.1 Database Overview 155

2.2 Database Detailed Design 155

VII. User Interface Design 156

1 KAPlus 156

1.1 Start up Screen 156

1.2 Control Screen 157

1.3 Suggest Playlist Screen 157

1.4 Current Playlist Screen 158

1.5 Search Screen 158

1.6 Favorite Screen 159

1.7 Singer Evaluate Screen 160

2. KAP-SS 160

2.1 Main Screen 160

2.2 Add Song Screen 161

2.3 Add Multi Songs Screen 162

2.4 Schedule Screen 162

3. KAP-Client 163

3.1 Startup Screen 163

3.2 Running Screen 163

3.3 Point Screen 164

E. Software Test Documentation (STD) 165

I. Introduction 165

1. System Overview 165

User can search the songs they want 165

See top selected songs in this karaoke bar 165

Add the new songs just selected to the bottom of current playlist 165

The current playlist can modify such as swapping the positions, delete, update... 165

Users can play the selected playlist. 165

Can use media button such as: pause ,stop ,next, volume.... to remote to the computer 165

The system can run on many firmware version of android mobile 166

A complete application run on android mobile can connect to pc client via wifi. 166

A software run on server can manage many functions 166

All the process documents involved 166

II. Test Plan 166

1. Features to be tested: 166

Test server KAP-SS 166

Test GUI and Function: “Thêm từng bài” 166

Test GUI and Function: “Thêm nhiều bài hát” 166

Test GUI and Function: “Tạo danh sách tất cả các bài” 166

Test GUI and Function: “Tạo danh sách tham khảo” 166

Test GUI and Function: “Chọn nơi lưu trữ bài hát” 166

Test GUI and Function of main screen 166

Test on Emulator Android Mobile 166

Test GUI and Function of main screen 166

Follow each button on main screen and test GUI & Function 166

Test on Android Mobile: LG-P500 166

Test GUI and Function of main screen 166

Follow each button on main screen and test GUI & Function 166

2. Features not to be tested: N/A 166

III. Test Cases 168

1. KAP-SS GUI 168

2. KAP-SS Functions 169

3. “Thêm từng bài” GUI 173

4. “Thêm từng bài” Function 174

5. “Thêm nhiều bài hát” GUI 184

6. “Thêm nhiều bài hát” Function 185

7. “Các loại danh sách gợi ý” GUI 193

8. “Các loại danh sách gợi ý” Function 194

9. “Tạo danh sách tất cả các bài”_Function 196

10. KAPlus GUI (Emulator) 197

11. KAPlus Function (Emulator) 198

712. KAPlus GUI (Real mobile) 212

IV. Detail Plan 226

V. Check list 226

1. Checklists of code 226

2. Case and Requirement Mapping Review Checklist 226



F. Software User Manual 228

I. Installation Guide 228

1. Setup Server Environment 228

2. KAP-SS (Server Application) 229

2.1. Installing KAP-SS 229

2.2. Setting KAP-SS 231

3.KAPlus ( Mobile Application) 232

3.1 Installing KAPlus 232

4. PC Client 233

4.1 Install VLC media player 233

4.2.Install KAP-Client 234

II.User’s Guide 234

1. KAPlus-Server Service (KAP-SS) 234

1.1. Overview 234

1.2 Add song 235

1.3 Add multi songs 237

1.4 Enabe Auto Start Up 239

1.5 Enable Played-Time Fuction 239

1.6 Edit Database 240

1.7 Change Config 240

1.8 Create All Playlist 242

1.9 Create Suggest Playlists 243

1.10 Auto Create Playlists 243

1.11 Exit application 244

2. KAPlus (Mobile Application) 245

2.1 Overview 245

2.2 Conecting 246

2.3 Update mobile song database 247

2.4 Search songs and add to playlist 247

2.5 Control Playing 248

2.6 Control Current Playlist 249

2.7 Using Favorite Playlist 250

2.8 Using Suggest Playlist 252

2.9 Using Singer Evaluate 252

2.10 Control Screen (not recommended) 252

3. KAP-Client 253

3.1 Overview 253

3.2 Find All-Playlist file 253

3.3 Running KAP-Client 253

3.4 Other 254







  1   2   3   4   5   6   7   8   9   ...   24


Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2019
được sử dụng cho việc quản lý

    Quê hương