Docstoc

Download - Google Code.doc

Document Sample
Download - Google Code.doc Powered By Docstoc
					             MINISTRY OF EDUCATION AND TRAINING




          FPT UNIVERSITY

    Capstone Project Document
            KA Plus – Karaoke Plus
              (Mobile Application)



                   Bùi Minh Phương – PhuongBM00045

                   Bùi Thành Chung – ChungBT00057
Group Members 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    KAP
                                                                                                                                        KA Plus - Karaoke Android Plus

                                                code




Table of Contents
Table of Contents ............................................................................................................... 2
A. Introductions .................................................................................................................. 7

I.The initial idea ................................................................................................................................... 8
1. Definition of KA Plus:......................................................................................................................................................... 8
2. Why need our application ................................................................................................................................................. 9
3. Limitation of our application............................................................................................................................................. 9
4. Business model................................................................................................................................................................ 10

II. Existing system .............................................................................................................................. 10
1. Overview existing application ......................................................................................................................................... 10
2. Limitation of existing system .......................................................................................................................................... 13

III. Project team ................................................................................................................................. 13
1. Basic norms ..................................................................................................................................................................... 13
2. Advantage of team ......................................................................................................................................................... 14
3. Disadvantage of team..................................................................................................................................................... 14
4. Time line .......................................................................................................................................................................... 15

IV. Developing and final project package........................................................................................ 15
1. Developing ...................................................................................................................................................................... 15
2. Final project package ...................................................................................................................................................... 16

V. Acronyms ....................................................................................................................................... 16
1. Acronyms ........................................................................................................................................................................ 16
2. Reference ........................................................................................................................................................................ 16

B. Software Project Management Plan ...........................................................................17

I. Problem Definition ......................................................................................................................... 17
1. Name of this Capstone Project:....................................................................................................................................... 17
2. Problem Abstract ............................................................................................................................................................ 17


                                                                       - Hanoi, May - 2011 -


                                                                                                                                                                          Page 2/244
                                                                                                                                          KA Plus - Karaoke Android Plus
3. Project overview.............................................................................................................................................................. 17
3.3 Boundaries of the System ............................................................................................................................................. 18
3.4 Development Environment ........................................................................................................................................... 18

II. Project Organization .................................................................................................................... 19
1. Software Process Model.................................................................................................................................................. 19
2. Role and Responsibilities ................................................................................................................................................. 19
3. Tool and Techniques ....................................................................................................................................................... 20

III. Project Management Plan .......................................................................................................... 21
1. Task ................................................................................................................................................................................. 21
2. Task sheet: Assignments and Timetable ......................................................................................................................... 23
3. Meeting minutes ............................................................................................................................................................. 23

IV. Coding convention ....................................................................................................................... 25
1. Purpose ........................................................................................................................................................................... 25
2. Java language ................................................................................................................................................................. 25
3. C# language .................................................................................................................................................................... 36

V. Other Material............................................................................................................................... 39

C. Software Requirement Specifications ........................................................................39

I. Document overview ........................................................................................................................ 39
1. Purpose ........................................................................................................................................................................... 39
2. Scope ............................................................................................................................................................................... 39

II. Software Requirements Specification ......................................................................................... 40
1. User Requirements .......................................................................................................................................................... 40
2. Admin Requirements ....................................................................................................................................................... 40
3. Remote requirements ..................................................................................................................................................... 41
4. Searching Requirements ................................................................................................................................................. 41
5. Playlist Requirements ...................................................................................................................................................... 41

III. System Requirement Specification (Specific Requirements) .................................................. 42
1. External Interfaces Requirement..................................................................................................................................... 42
       1.1. User Interfaces ..................................................................................................................................................... 42
       1.2. Admin User Interfaces ......................................................................................................................................... 43
       1.3. Hardware Interfaces ............................................................................................................................................ 43
       1.4. Software Interfaces (Runtime environment) ....................................................................................................... 44
       1.5. Communication protocol ..................................................................................................................................... 44
2. System Features .............................................................................................................................................................. 44
       2.1. Download and setup application ......................................................................................................................... 44
       2.2. Connection ........................................................................................................................................................... 46
                                                                                                                                                                            Page 3/244
                                                                                                                                        KA Plus - Karaoke Android Plus
       2.3. Play a list song available ...................................................................................................................................... 49
       2.4. List playing songs ................................................................................................................................................. 50
       2.5. Remote VLC (Video LAN Media Player) ............................................................................................................... 52
       2.6 Search songs ......................................................................................................................................................... 54
       2.7. Add a song to Favourite ....................................................................................................................................... 55
       2.8. Add a song to Playing list ..................................................................................................................................... 57
       2.9. Remove a song from Playing list .......................................................................................................................... 59
       2.10. Remove a song to Favourites ............................................................................................................................. 61
       2.11. (Admin) Collect karaoke song’s information ..................................................................................................... 63
       2.12. (Admin) Edit karaoke song’s information .......................................................................................................... 64
       2.13. (Admin) Create All-Playlist ................................................................................................................................. 66
       2.14. (Admin) Create Suggested-playlist ..................................................................................................................... 68
       2.15. (Admin) Schedule creating playlists ................................................................................................................... 70

IV - Software System Attributes ....................................................................................................... 73
1. Reliability ........................................................................................................................................................................ 73
2. Availability ...................................................................................................................................................................... 73
3. Security ........................................................................................................................................................................... 73
4. Maintainability................................................................................................................................................................ 74
5. Portability ....................................................................................................................................................................... 74
6. Performance.................................................................................................................................................................... 74

V. Reference........................................................................................................................................ 74

E. Software Test Documentation (STD) .........................................................................151
I.Introduction ....................................................................................................................151

. System Overview ............................................................................................................................................................. 151

II.Test Plan........................................................................................................................152

1. Features to be tested: ................................................................................................................................................... 152
2. Features not to be tested: N/A ...................................................................................................................................... 152

III.Test Cases....................................................................................................................154

1. KAP_GUI ........................................................................................................................................................................ 154
2. KAP _ Function ................................................................................................................ Error! Bookmark not defined.96
3.“Thêm từng bài”_GUI....................................................................................................... Error! Bookmark not defined.99
4. “Thêm từng bài”_Function ............................................................................................Error! Bookmark not defined.100
5. “Thêm nhiều bài hát”_GUI ............................................................................................Error! Bookmark not defined.106
6. “Thêm nhiều bài hát”_Function ....................................................................................Error! Bookmark not defined.107
7. “Các loại danh sách gợi ý”_GUI.....................................................................................Error! Bookmark not defined.112
8. “Các loại danh sách gợi ý”_Function .............................................................................Error! Bookmark not defined.113

                                                                                                                                                                          Page 4/244
                                                                                                                                       KA Plus - Karaoke Android Plus
9. “Tạo danh sách tất cả các bài”_Function......................................................................Error! Bookmark not defined.114
10. Kaplus_GUI..................................................................................................................Error! Bookmark not defined.114
11: Kaplus_Function ..........................................................................................................Error! Bookmark not defined.115

IV.Checklists ...................................................................... Error! Bookmark not defined.125

1. Checklist of Validation ..................................................................................................Error! Bookmark not defined.125
2.Submission Checklist ......................................................................................................Error! Bookmark not defined.128

G. Software User Manual ................................................................................................218

I. Installation Guide ......................................................................................................................... 218
1. Setup Server Environment ............................................................................................................................................. 218
2. KAP-SS (Server Application) .......................................................................................................................................... 219
       2.1. Installing KAP-SS ................................................................................................................................................ 219
       2.2. Setting KAP-SS .................................................................................................................................................... 221
3.KAPlus ( Mobile Application) .......................................................................................................................................... 222
       3.1 Installing KAPlus .................................................................................................................................................. 222
4. PC Client ........................................................................................................................................................................ 223
       4.1 Install VLC media player ...................................................................................................................................... 223
       4.2.Install KAP-Client................................................................................................................................................. 224

II.User’s Guide ................................................................................................................................. 224
1. KAPlus-Server Service (KAP-SS) ..................................................................................................................................... 224
       1.1. Overview ............................................................................................................................................................ 224
       1.2 Add song ............................................................................................................................................................. 225
       1.3 Add multi songs .................................................................................................................................................. 227
       1.4 Enabe Auto Start Up ........................................................................................................................................... 229
       1.5 Enable Played-Time Fuction ................................................................................................................................ 229
       1.6 Edit Database ...................................................................................................................................................... 230
       1.7 Change Config ..................................................................................................................................................... 230
       1.8 Create All Playlist ................................................................................................................................................ 232
       1.9 Create Suggest Playlists ...................................................................................................................................... 233
       1.10 Auto Create Playlists ......................................................................................................................................... 233
       1.11 Exit application.................................................................................................................................................. 234
2. KAPlus (Mobile Application) .......................................................................................................................................... 235
       2.1 Overview ............................................................................................................................................................. 235
       2.2 Conecting ............................................................................................................................................................ 236
       2.3 Update mobile song database ............................................................................................................................ 237
       2.4 Search songs and add to playlist ......................................................................................................................... 237
       2.5 Control Playing .................................................................................................................................................... 238
       2.6 Control Current Playlist ....................................................................................................................................... 239

                                                                                                                                                                         Page 5/244
                                                                                                                                       KA Plus - Karaoke Android Plus
       2.7 Using Favorite Playlist ......................................................................................................................................... 240
       2.8 Using Suggest Playlist .......................................................................................................................................... 242
       2.9 Using Singer Evaluate.......................................................................................................................................... 242
       2.10 Control Screen (not recommended) ................................................................................................................. 242
3. KAP-Client ..................................................................................................................................................................... 243
       3.1 Overview ............................................................................................................................................................. 243
       3.2 Find All-Playlist file .............................................................................................................................................. 243
       3.3 Running KAP-Client ............................................................................................................................................. 243
       3.4 Other ................................................................................................................................................................... 244




                                                                                                                                                                        Page 6/244
                                                                              KA Plus - Karaoke Android Plus




A. Introductions
         Music is the gateway to a soul as well as spiritual and emotional singing. People lose many
  complexes when they sing aloud, and very often, this opens the barriers between hearts and minds.
  Even if a voice has no professional technique, singing is still a great experience. Karaoke has brought
  back to life an old great tradition of singing and therefore today we can not only sing, but also have a
  wonderful pastime.


  Nowadays in Vietnam, a karaoke box is the most popular type of karaoke venue. A karaoke box is a
  small or medium-sized room containing karaoke equipment rented by the hour or half-hour,
  providing a more intimate atmosphere. Karaoke venues of this type are often dedicated businesses,
  some with multiple floors and a variety of amenities including food service, but hotels and business
  facilities sometimes provide karaoke boxes as well.


         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 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 250,000 apps available for Android. Android Market is the online app store
  run by Google, though apps can be also 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. Google released most of the Android code under the
  Apache License, a free software and open source license.
     (ref: http://en.wikipedia.org/wiki/Android_%28operating_system%29)


         As above, what is the relative between Karaoke and Android? Our teams have seen the
  relative between them and had something to do with them. It is a software project for our capstone
  project, an application that named Karaoke Plus (KAPlus) run on mobile. Of course, it related with
  Karaoke and Android. In this report, we will present overview about our product: What is KAPlus?

                                                                                                  Page 7/244
                                                                           KA Plus - Karaoke Android Plus
Why user need and use our application? Moreover, other overview information related with our
project also presented.

I.The initial idea
1. Definition of KA Plus:




  Our application for an android mobile phone has made it possible to synchronous with karaoke
player, which run in Karaoke box or user’s home. KA Plus is here to provide you with the all-in-one
karaoke solution software that include Karaoke player run on PC with add-in , an application using
to remote, choose playlist , and some extra functions in mobile phone via Wi-Fi technology.


      With the help of KA Plus, user can:
           Remote Karaoke player by a mobile phone with full basic control: display current state
           of playing-song, play, pause, next, previous, adjust speaker volume . .
           Import a full song list from PC into your mobile phone. Therefore, you can use your
           mobile to find information about songs


                                                                                               Page 8/244
                                                                              KA Plus - Karaoke Android Plus

           Make a play-list for singing and user can add, remove, and order songs in this list.
           Creating play list can do by especial search or suggest list.
           Create suggested-list by rate user behavior (Artist, type of song, themes . . .).
           Save list for reusing another time using karaoke service in user mobile phone.


       KA Plus project include two main parts: solution for Karaoke player run on PC and an
       application run on user mobile phone:

           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.
       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.
       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.
2. Why need our application
 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.
 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 . . .
 KA Plus bring new experience, interesting, the feeling of useful for users when they using your
mobile phone.
 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


3. Limitation of our application

  KA Plus just support for smart phone which base on Android Operating System.
Currently, we develop application for one configuration mobile (by screen size) and one karaoke
player in one environment.
 User must manual configure devices to run.

                                                                                                  Page 9/244
                                                                          KA Plus - Karaoke Android Plus
4. Business model


 Profits from the contract to install and maintain software for each karaoke box
 Percentage revenue share


II. Existing system
1. Overview existing application
  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:
       Application run on PC:
         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.




                            Picture 1.1 the application run on touch-screen




                                                                                             Page 10/244
                                                                       KA Plus - Karaoke Android Plus
In direction room or home, Karaoke box and user use the same application but it is used by normal
application run on PC:




                                   Picture 1.2 The application run on PC


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


2. VLC Player




                               Picture 1.3 The simple application run on PC


       -   Simple, Powerful and Fast
       -   Play everything, Files, Discs (DVD, CD, and VCD), Devices and Sreeams
       -   Plays most codecs with no codec packs needed
       -   Completely Free, no spyware, ads or User Tracking
       -   Best mpeg2, x264, DivX player

                                                                                          Page 11/244
                                                                 KA Plus - Karaoke Android Plus

-   Works on most platforms: Windows, Linux, Mac, UNIX.
-   Media Converter and Streamer


 Some application run in mobile phone:
     1. Mini Karaoke :
     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.




                         Picture 1.4 Android application: Mini Karaoke


     2. Karaoke Vietnam
         This is a simple searching tool on mobile.

         Quick find and select in Karaoke 5 number of karaoke room or list.

         Application can help user can store favorite playlist

         All song and all information of song get from Karaoke 5 of Arirang, DVD Vol 42
         update all of most Vietnamese song and a lot of popular English song.




                                                                                    Page 12/244
                                                                       KA Plus - Karaoke Android Plus




Reference: https://market.android.com/

2. Limitation of existing system
       With application run on PC in karaoke box or home:


             Owner must hire employee to control each karaoke room because all most customer
                 can do it by themselves.
             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).
             With home karaoke application (using PC as karaoke player), user must control
                 karaoke without remote.


       With application run on mobile phone:


             None application can have two main functions: remote and search playlist.
             None complete Vietnamese application can remote karaoke on mobile phone.
             Search function still simple and not optimized for choose song when sing karaoke.
             None complete solution for karaoke box serve customer most effective and lowest
                 cost.

III. Project team
1. Basic norms




                                                                                          Page 13/244
                                                                           KA Plus - Karaoke Android Plus
 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.


 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.


 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.


 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…


 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.


 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.


2. Advantage of team
       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.
       All members know java programming language
       Some of us are very good at java-programming technique and have experienced with
          programming in mobile phone.
       All members are hard working and most of us are finished all required subject so we have
          more time to do.
       All of us like a project related to mobile phone especially Android OS.
3. Disadvantage of team




                                                                                              Page 14/244
                                                                       KA Plus - Karaoke Android Plus
       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.


       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.


       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.
4. Time line

We have 13 weeks to build this system

       Study and defile problem : 1 week
       Collect requirement : 2 weeks
       Design : 2 weeks
       Coding : 4 weeks
       Testing : 2 weeks
       Summary and finish : 2 weeks



IV. Developing and final project package
1. Developing
         Process: Flow one software project development correctly with all phrases.
         Environment developing
                    Windows 7 Operating System
                    Java(TM) 6 Update 24
                    Java(TM) SE Development Kit 4 Update 24
                    Android SDK Tools 0.7 (Google Inc.)
                    Wi-Fi network
                    Eclipse reporting Helios SR2
                    Samsung android mobile phone
                    Visual Studio
         Other supported software and service

                                                                                          Page 15/244
                                                                       KA Plus - Karaoke Android Plus

                    Google code
                    Microsoft Project Professional 2010
                     Microsoft Office 2010
                     Adobe Photoshop CS 5 extended update 12
                     Email and Skype 5.3
                     Tortoise SVN 1.6.15.21042


2. Final project package
          SERVER : Application can make play-list and control play-list
          PC : VLC player
          Mobile phone : An application with functions listed above



V. Acronyms
1. Acronyms

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


SDK: Software Development Kit


Wi-Fi: Wi-Fi is a trademark of the Wi-Fi Alliance. A Wi-Fi enabled device such as a personal
computer, video game console, smartphone, and digital audio player can connect to the Internet
when within range of a wireless network connected to the Internet. The coverage of one or more
(interconnected) access points — called hotspots when offering public access — generally comprises
an area the size of a few rooms but may be expanded to cover many square miles, depending on the
number of access points with overlapping coverage.
                    (ref: http://en.wikipedia.org/wiki/Wi-Fi)



2. Reference

http://www.android.com/
http://en.wikipedia.org/wiki/Android_%28operating_system%29
http://www.vinakaraoke.com
https://market.android.com/
http://www.videolan.org/vlc/
http://en.wikipedia.org/wiki/Wi-Fi
                                                                                          Page 16/244
                                                                            KA Plus - Karaoke Android Plus

B. Software Project Management Plan
I. Problem Definition
  1. Name of this Capstone Project:

  “Karaoke Android Plus” is name of our project. This name makes us imagine this is an android
application. It has basic functions of karaoke and more.

  2. Problem Abstract

  We will create a mobile application on android phone with these purposes:
    Support users are customer in karaoke bar
    Support Manager of karaoke bar.
    Connect mobile to server via wifi.
    Ensure the stability and speed of application systems (such as the program load, server load,
          etc...).
    Reduce statistic mistakes to a minimum
    Operation and maintain easily.


  3. Project overview

    3.1 The current System
 There are two system of karaoke now.
One is an audio processing software is installed on a device such as computer or digital home video.
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.

        3.2 The Proposed System
        Our main system is an application run on android mobile.
And a sub-system run on server, it is software can create the playlist to provide for mobile.


            The main system run on mobile will provide the following main features in front-end:

             User can search the songs they want
             See top selected songs in this karaoke bar
             Add the new songs just selected to the bottom of current playlist
             The current playlist can modify such as swapping the positions, delete, update...
             Users can play the selected playlist.
                                                                                                Page 17/244
                                                                         KA Plus - Karaoke Android Plus
         Can use media button such as: pause, stop, next, volume.... to remote to the computer
         The system can run on many firmware version of android mobile

      The back-end will allow the administrators to storage and manage the songs



                                                                                Server




                                                                                  PC




                                                                                Mobile
                                                                                Phone


                 Room 1                   Room 2                  Room 3


    3.3 Boundaries of the System
   The system under development of this Capstone Project will include:
    A complete application run on android mobile can connect to pc client via wifi.
    Software run on server can manage many functions
    All the process documents involved

    3.4 Development Environment
 Hardware requirements:

         At least one android smart phone with wifi and firmware version from 2.1 or later
         An server system to store karaoke songs with the minimum configuration:
         1000 GB of hard disk, 1GB Ram, core 2 Dou 2.0 GHz.
         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.
         A modem wifi.

Software requirements:

         Operating system: Windows XP / Windows 7
         Framework: .NET Framework 4.0
         IDE: Visual Studio 2010
                                                                                            Page 18/244
                                                                       KA Plus - Karaoke Android Plus
          DBMS: SQL Server 2008 R2
          Source Control: Google code
            Tool:
          Email fpt and Skype 5.3
          Microsoft Office 2010
          Microsoft Project Professional 2010
          Tortoise SVN 1.6.15.21042



II. Project Organization
 1. Software Process Model

     After period of time brainstorming, KAP team chose waterfall model is our software process
model




Picture 1. Waterfall model




 2. Role and Responsibilities
                                                                                          Page 19/244
                                                                              KA Plus - Karaoke Android Plus



Student ID Member Name                  Role                    Responsibilities
                                                                Managing process
                                                                Training
                                                                Coding
00045          Bùi Minh Phương          PM, Developer           Testing
                                                                Clarifying requirements
                                                                Coding
                                        Technique leader,       GUI design
00076          Trần Đức Vinh            Developer               Testing
                                                                Managing documents
                                                                Creating test plan and system test cases
00214          Dương Bích Ngọc          Tester                  Testing
                                                                Designing database
                                                                Coding
                                                                Managing configuration
00206          Đinh Mạnh Ngọc           Developer               Deployment
                                                                Coding
                                                                Create system test cases
00057          Bùi Thành Chung          Developer               Testing



  3. Tool and Techniques

   3.1 Tools
          The workflows will be performed in accordance with the Unified Process.
 - MS Office 2007, 2010
 - Visual Studio 2010
 - SQL Server 2008
 - JDK 1.6
 - MS Visio 2007
 - MS Project 2007
 - Tortoise SVN 1.6


3.2 Techniques


This section will list some techniques and skills, in PMS team opinion, they are important with PMS
project. They classify into two groups hard skills and soft skills.



                                                                                                 Page 20/244
                                                                                 KA Plus - Karaoke Android Plus
 Hard skills

              Work well with Eclipse IDE for supporting programming.
              Use goggle code tool efficiency.
              Java language
              Other techniques: Create, review document techniques, etc.

Soft skills



              Presentation skill
              Relationship skill
              Other skills: Management skill, persuasion skill, etc.

III. Project Management Plan

      1. Task

1.1      Task 1: Project Initiation


             Description: team members research information from reality in our life, etc. Identify our
              project and Initiate project, Project approval review

             Deliverables : Introduction report
             Resources Needed: human resource, Internet, book.
             Dependencies and Constraints
             Risks: New technology makes us difficult decisions.

1.2      Task 2: Create - Project Management Plan - PMP
             Description: plan for all process. It defines the details metrics for each phase and task.
                Example: time (start date, finish date), human resource, etc….
             Deliverables : PMP Document
             Resources Needed : SRS, human resource, Google doc
             Dependencies and Constraints
             Risks : team leader lack of experience in project management


1.3      Task 3: Create Software Requirement Specification - SRS
             Description: collect many requirements from stakeholder such as: customer who use
              application directly, karaoke box owners.

                                                                                                    Page 21/244
                                                                           KA Plus - Karaoke Android Plus
         Deliverables : SRS Document
         Resources Needed Requirement from users and from existing system, Internet, smart
          phone.
         Dependencies and Constraints :
         Risks :
             - Lack information requirement on collection process because we do not enough
          time and condition to go to reality place.

             -      Lack experience on writing SRS therefore it cannot clear and contain many
          confuse for team member.

1.4   Task 4: Detail Design

         Description: Design and List all functions, methods, objects, classes, databases, etc ….

         Deliverables : Design Document
         Resources Needed : SRS and human resource (team member)
         Dependencies and Constraints
         Risks

             -      Have many functions, methods; objects therefore can be design unclearly and un-
             fully. This is a different for coding phase

1.5   Task 5: Implement System (Coding Phase)

         Description : Execute coding by developer

         Deliverables : Coding package
         Resources Needed : SRS, Detail Design
         Dependencies and Constraints

         Risks

             - Coding often contains bug. It make system incorrect running and uncompleted
             -      Have different technique issue but do not resolve
1.6   Task 6: Quality Assurance (Testing Phase)

         Description: Execute testing system to assurance that system is done correctly. Beside,
          the user guide document and user manual is built on this phase

         Deliverables : Test case, Test report, User guide and User manual
         Resources Needed : SRS, Package
         Dependencies and Constraints

                                                                                              Page 22/244
                                                                         KA Plus - Karaoke Android Plus
         Risks

                - Tester can miss bug
                - Cannot be enough time to excite many rounds on system test
1.7   Task 7: deployment

         Description : After finish testing , system can be package and deliver to customer on time

         Deliverables : Package
         Resources Needed : Coding Resource, Testing Report, User guide and User manual
         Dependencies and Constraints

         Risks

          -     Late time because last round

1.8    Task 8: Closing

         Description: Team must be present about system before teachers. This working must be
          doing as running system successfully, talk about system function, answer question of
          teacher

         Deliverables : none

                Resources Needed Package of system

         Dependencies and Constraints

         Risks
                   Running system unsuccessfully

                   Not answer question of teacher

2. Task sheet: Assignments and Timetable

Refer to the KAP Plan document.


3. Meeting minutes

Meeting minutes week 1


No    Agenda                 Detail & Key points          PIC                                  Deadline
1     Discuss topic of Choose           team   leader   : PhuongBM, VinhTD, NgocDB,
      project                PhuongBM                     NgocDM, ChungBT



                                                                                            Page 23/244
                                                                           KA Plus - Karaoke Android Plus

                          Discuss some project topic.
                          Ex: current karaoke system
                          in   karaoke        bar,     some
                          software       in          android
                          market….
                           Discuss about difficult and
                          easy problems on coding,
                          time.
                           Summary of ideas               to PhuongBM
                          choose topic of project
2     Choose topic        Choose       topic:    Karaoke PhuongBM,VinhTD,NgocDB,Ng
                          Android      Plus,     resumed ocDM, ChungBT
                          write by KA Plus
3     Create Report 1     -Research report 1 follow PhuongBM,VinhTD,NgocDB,Ng
                          the template                         ocDM, ChungBT
                          -Devise      each     member’s
                          task follow the items of
                          report 1
                          -General all reports of all PhuongBM, VinhDT
                          members.
                          -Review report.
                          - Create final report.               Phuong BM
                          - Submit report to the
                          supervisor




Meeting minutes week 2:




No   Agenda               Detail & Key points                  PIC                             Deadline
1    Research existing Decision topic of project : PhuongBM


                                                                                              Page 24/244
                                                                        KA Plus - Karaoke Android Plus

     system              Choose       the      “Karaoke
                         Android Plus” project
                          Study the some existing
                         system.                            PhuongBM
                          - VinaKaraoke Juke box            VinhTD,
                          - VLC player                      NgocDB,
                          - VLC remote                      NgocDM, ChungBT
                          - Karaoke Vietnam



                          - Summary of ideas about PhuongBM
                         existing system
2    Create Report 2     -Research report 1 follow PhuongBM,VinhTD,NgocDB,N
                         the template                       gocDM, ChungBT
                         -Devise each member’s task
                         follow the items of report 1
                         -General all reports of all PhuongBM, VinhDT
                         members.
                         -Review report.
                         -Create final report.              PhuongBM
                         -Submit      report     to   the
                         supervisor




IV. Coding convention
1. Purpose

      This document describes rules and recommendations for developing applications and class
      libraries using the Java and Language. The goal is to define guidelines to enforce consistent
      style and formatting and help developers avoid common pitfalls and mistakes. This document
      is a collection of standards, conventions and guidelines for writing Java and C# code that is
      easy to understand, to maintain, and to enhance.


2. Java language

    2.1. Program Structure
                                                                                           Page 25/244
                                                                         KA Plus - Karaoke Android Plus
        This section lists commonly used file suffixes and names.

   2.1.1. File Suffixes
  Java Software uses the following file suffixes:
            File Type                                 Suffix
    Java source              .java
    Java bytecode            .class

   2.1.2. Common File Names
Frequently used file names include:
          File Name                                  Use
    README              The preferred name for the file that summarizes the contents of
                        a particular directory.



 2.2. Indentation And Braces
   2.2.1. Tab and Indent
Four spaces should be used as the unit of indentation.
Tab characters should be avoided because different editors interpret tabs differently.
Continuation indent should be configured to 8 spaces (two normal indentation levels).

   2.2.2. Braces
Open curly brace “{” of class/method declarations and other code blocks should be at “END OF
LINE” of the first statement of code block.

   2.2.3. Line Length
Avoid lines longer than 80 or 120 characters, since they're not handled well by many terminals
and tools.
Note: Examples for use in documentation should have a shorter line length-generally no more
than 70 characters.

 2.3. Comments
Java programs can have two kinds of comments: implementation comments and
documentation comments. Implementation comments are those found in C++, which are
delimited by /*...*/, and //. Documentation comments (known as "doc comments") are Java-only,
and are delimited by /**...*/. Doc comments can be extracted to HTML files using the javadoc
tool.
Implementation comments are mean for commenting out code or for comments about the
particular implementation. Doc comments are meant to describe the specification of the code,
                                                                                            Page 26/244
                                                                       KA Plus - Karaoke Android Plus
from an implementation-free perspective to be read by developers who might not necessarily
have the source code at hand.
Comments should be used to give overviews of code and provide additional information that is
not readily available in the code itself. Comments should contain only information that
is relevant to reading and understanding the program. For example, information about how the
corresponding package is built or in what directory it resides should not be included as
a comment.


Discussion of nontrivial or non-obvious design decisions is appropriate, but avoid duplicating
information that is present in (and clear from) the code. It is too easy for redundant
comments to get out of date. In general, avoid any comments that are likely to get out of date as
the code evolves.

   2.3.1. Implementation Comment Formats
Programs can have four styles of implementation comments: block, single-line, trailing, and
end-of-line.

      2.3.1.1 Block Comments
Block comments are used to provide descriptions of files, methods, data structures and
algorithms. Block comments may be used at the beginning of each file and before each
method. They can also be used in other places, such as within methods. Block
comments inside a function or method should be indented to the same level as the code they
describe.
A block comment should be preceded by a blank line to set it apart from the rest of the code.
  /*
      * Here is a block comment.
      */

      2.3.1.2 Single-Line Comments
Short comments can appear on a single line indented to the level of the code that follows. If a
comment can't be written in a single line, it should follow the block comment format .A
single-line comment should be preceded by a blank line. Here's an example of a single-line
comment in Java
  if (condition) {
       // Handle the condition.
       ...
  }

                                                                                          Page 27/244
                                                                         KA Plus - Karaoke Android Plus

       2.3.1.3 Trailing Comments
Very short comments can appear on the same line as the code they describe, but should be
shifted far enough to separate them from the statements. If more than one short comment
appears in a chunk of code, they should all be indented to the same tab setting.
Here's an example of a trailing comment in Java code:
  if (a == 2) {
       return TRUE;            // special case
   } else {
        return isPrime(a);       // works only for odd a
   }

       2.3.1.4 End-Of-Line Comments
The // comment delimiter can comment out a complete line or only a partial line. It shouldn't be
used on consecutive multiple lines for text comments; however, it can be used in
consecutive multiple lines for commenting out sections of code. Examples of all three styles
follow:
  if (foo > 1) {
       // Do a double-flip.
       ...
  } else {
         return false;        // Explain why here.
  }


 2.4. Declarations
   2.4.1 Number Per Line
One declaration per line is recommended since it encourages commenting. In other words,
  int level;             // indentation level
   int size; // size of table
is preferred over
  int level, size;
Do not put different types on the same line. Example:
  int foo, fooarray[]; //WRONG!
Note: The examples above use one space between the type and the identifier. Another
acceptable alternative is to use tabs, e.g.:
  int level;                     // indentation level

                                                                                            Page 28/244
                                                                         KA Plus - Karaoke Android Plus
      int size;                   // size of table
      Object currentEntry; // currently selected table entry

   2.4.2 Array Declaration
Though Java supports two styles of array declarations, we should only follow one as following:
  int anIntArray[]; // AVOID
      int[] anIntArray; // RECOMMENDED

   2.4.3 Initialization
Try to initialize local variables where they're declared. The only reason not to initialize
a variable where it's declared is if the initial value depends on some computation occurring first.

   2.4.4 Placement
Put declarations only at the beginning of blocks. (A block is any code surrounded by
curly braces "{" and "}".) Don't wait to declare variables until their first use; it can
confuse the unwary programmer and hamper code portability within the scope.
  void myMethod() {
          int int1 = 0;           // beginning of method block
          if (condition) {
                  int int2 = 0;   // beginning of "if" block
                    ...
          }
   }
The one exception to the rule is indexes of for loops, which in Java can be declared in the for
statement:


  String tempString;
  for (int i = 0; i < maxLoops; i++) {
        tempString = ...;
        ...
  }
Local variables used inside loops should be declared outside and right before the loop
statement, as shown in above example.
Avoid local declarations that hide declarations at higher levels. For example, do not declare the
same variable name in an inner block:
  int count;
  ...

                                                                                            Page 29/244
                                                                      KA Plus - Karaoke Android Plus
  myMethod() {
       if (condition) {
                 int count = 0;    // AVOID!
                 ...
       }
           ...
   }

   2.4.5 Class and Interface Declarations
When coding Java classes and interfaces, the following formatting rules should be followed:
  Opening bracket "{" always appears at end of line.
  Closing bracket "}" should appear on a new line.
    class Sample extends Object {
                 int ivar1;
                 int ivar2;
                 Sample(int i, int j) {
                         ivar1 = i;
                         ivar2 = j;
                 }
                 int emptyMethod() {
                 ...
                 }
                 ...
       }
  Methods are separated by a blank line




2.5. Statements
   2.5.1 Simple Statements
Each line should contain at most one statement. Example:
  argv++;                         // Correct
  argc--;                         // Correct
  argv++; argc--;                         // AVOID!

   2.5.2 Compound Statements
Compound statements are statements that contain lists of statements enclosed in braces "{
                                                                                         Page 30/244
                                                                         KA Plus - Karaoke Android Plus
statements }". See the following sections for examples:
      -The enclosed statements should be indented one more level than the compound
statement.
      -The opening brace should be at the end of the line that begins the compound statement; the
      closing brace should begin a line and be indented to the beginning of the compound
      statement.
      -Braces are used around all statements, even single statements, when they are part of a
      control structure, such as a if-else or for statement. This makes it easier to add
      statements without accidentally introducing bugs due to forgetting to add braces.

   2.5.3 Return Statements
A return statement with a value should not use parentheses unless they make the return value
more obvious in some way. Example:
  return;
  return myDisk.size();
  return (size ? size : defaultSize);

   2.5.4 if, if-else, if else-if else Statements
The if-else class of statements should have the following form:
  if (condition) {
          statements;
      }


  if (condition) {
          statements;
      } else {
          statements;
  }


  if (condition) {
          statements;
  } else if (condition) {
          statements;
  } else {
          statements;
  }

                                                                                            Page 31/244
                                                                           KA Plus - Karaoke Android Plus

   2.5.5 for Statements
A for statement should have the following form:
      for (initialization; condition; update) {
            statements;
      }
An empty for statement (one in which all the work is done in the initialization, condition, and
update clauses) should have the following form:
           for (initialization; condition; update);
When using the comma operator in the initialization or update clause of a for statement,
avoid the complexity of using more than three variables. If needed, use separate statements
before the for loop (for the initialization clause) or at the end of the loop (for the update clause).

   2.5.6 While Statements
A while statement should have the following form:
  while (condition) {
          statements;
  }
An empty while statement should have the following form:


  while (condition);

   2.5.7 Do-while Statements
A do-while statement should have the following form:
  do {
      statements;
  } while (condition);

   2.5.8 Switch Statements
A switch statement should have the following form:
  switch (condition) {
  case ABC:
          statements;
          /* falls through */
  case DEF:
      statements;
      break;
  case XYZ:

                                                                                              Page 32/244
                                                                               KA Plus - Karaoke Android Plus
          statements;
          break;
  default:
          statements;
          break;
      }
Every time a case falls through (doesn't include a break statement), add a comment where the
break statement would normally be. This is shown in the preceding code example with the /*
falls through */ comment.
Every switch statement should include a default case. The break in the default case is redundant,
but it prevents a fall-through error if later another case is added.

   2.5.9 Try-catch Statements
A try-catch statement should have the following format:
  try {
           statements;
  } catch (ExceptionClass e) {
           statements;
  }
A try-catch statement may also be followed by finally, which executes regardless of
whether or not the try block has completed successfully.
  try {
           statements;
  } catch (ExceptionClass e) {
           statements;
      } finally {
               statements;
      }

2.6 White Space
Blank spaces should be used in the following circumstances:
                A keyword followed by a parenthesis should be separated by a space
                 Note that a blank space should not be used between a method name and its opening
                 parenthesis. This helps to distinguish keywords from method calls.
                A blank space should appear after commas in argument lists.
                All binary operators except. Should be separated from their operands by spaces. Blank

                                                                                                  Page 33/244
                                                                            KA Plus - Karaoke Android Plus
             spaces should never separate unary operators such as unary minus, increment ("++"),
             and decrement ("--") from their operands. Example:
              a += c + d;
              a = (a + b) / (c * d);
              while (d++ = s++) {
                     n++;
              }
              printSize("size is " + foo + "\n");
            The expressions in a for statement should be separated by blank spaces. Example:
              for (expr1; expr2; expr3)
            Casts should be followed by a blank space. Examples:
              myMethod((byte) aNum, (Object) x);
              myMethod((int) (cp + 5), ((int) (i + 3)) + 1);

2.7 Naming Conventions
Naming conventions make programs more understandable by making them easier to read.
They can also give information about the function of the identifier-for example, whether it's a
constant, package, or class-which can be helpful in understanding the code.

  2.7.1 General Rules
This section outlines the rules to be followed while naming Source File / variable / control /
method.
    i.         Programmer defined names should be functionally meaningful, and should indicate
              the purpose of the file / variable / control / method in question.
    ii.        Use terminology applicable to the domain.
              If your users refer to their clients as customers, then use the term Customer for the
    class, not Client.
              Many developers will make the mistake of creating generic terms for concepts when
              perfectly good terms already exist in the industry/domain.
    iii.      Identifiers must be as short as possible without obscuring their meaning, preferably
              20 characters
              or less. Excessively long variable names are cumbersome and irritating for
              programmers to use, hence chances of error during coding are higher.
    iv.       Avoid names that are similar or differ only in case.
              For example, the variable names persistentObject and persistentObjects
              should not be used together, nor should anSqlDatabase and anSQLDatabase

                                                                                               Page 34/244
                                                                        KA Plus - Karaoke Android Plus
    iv.     Avoid cryptic names, even in case of scratch pad variables or counters.
            Bad or cryptic names waste programmer effort. Time is spent in just understanding
            the role of the variable/control/method rather than in understanding functionality
            or solving a problem.
    v.      Abbreviations in names should be avoided.
            Domain specific phrases that are more naturally known through their acronym
            or abbreviations should be kept abbreviated.
            computeAverage();       // NOT: compAvg();
            generateHTML();         // NOT: generateHypertextMarkupLanguage();
            Unambiguous abbreviations should be used wherever possible. For example, use
            custName instead of customerName. Capitalize the whole abbreviation.
    vi.     The method name should not contain any special characters other than underscore.
            Use underscores only while naming constants (see below)

  2.7.2 Class/Interface
Each class/interface name must start with uppercase and respect the general rules of above
naming convention , e.g. class CustomerBean.
         Exception classes should be suffixed with Exception, e.g. LMSFunctionalException.
         Interfaces having no method should be prefixed with I, e.g. IConstants.
         Abstract classes should be prefixed with Abstract, e.g. abstract class AbstractBean.
         Implementation classes should be suffixed with Impl, e.g. class CustomerBOImpl
          implements CustomerBO.




  2.7.3 Variables
         Each variable name must start with lowercase and respect the general rules of
          naming convention , e.g. custName.
         List variables (of type Collection/List) should be suffixed with List, e.g. Collection
          custList.
          Set variables (of type Set/HashSet) should be suffixed with Set, e.g. Set custSet
          = new HashSet();
          Map variables (of type Map/HashMap/TreeMap) should be suffixed with Map, e.g.
          Map custMap = new TreeMap();
          Array variables can be suffixed with Array, e.g. int[] custIDArray;
          The use of ID or Id should be consistent throughout an application.
                                                                                           Page 35/244
                                                                            KA Plus - Karaoke Android Plus

     2.7.4 Constants
  The following guidelines should be followed while naming constants:
             Respect the general rules of naming convention .
             All constants to be named in uppercase letters, with underscore between words.
             All constants must be declared as static final.

     2.7.5 Methods
  The following guidelines to be followed while naming methods in class files:
             Respect the general rules of naming convention
             Method name must start with lowercase letter.
             Usually use “active verb” as the first word of method name. Here are some common
              verbs:
                    getCustomerID, setCustomerID
                    isActive, hasAddresses
                    findCustomers, searchCustomers
                    computeSalary, calculateSalary
                    initializeParameters, initParameters
                    addCustomer, removeCustomer
                    insertCustomer, deleteCustomer
                    updateCustomer, modifyCustomer, amendCustomer
                    openConnection, closeConnection, saveFile
                    createBuffer, destroyBuffer
                    startProcess, stopProcess
              Verbs should be used by pairs and should be used consistently throughout an
               application.
              Some special methods not starting with verbs:
                    Factory methods: newCustomer(), newCustomerBO()
                    Conversion methods: toString(), toLongPhoneNumber(), toXXX()

3. C# language

 3.1 Description
This section contains tables describing a high-level summary of the major standards covered in this
document. These tables are not comprehensive, but give a quick glance at commonly referenced
elements.
Naming Conventions
       “c” = camel Case
                                                                                               Page 36/244
                                                                         KA Plus - Karaoke Android Plus
      “P” = Pascal Case
      “_” = Prefix with _Underscore
      “x” = Not Applicable.
  Identifier        Publi       Protecte   Intern       Priva   Notes
                    c           d          al           te
  Project File      P           x          x            x       Match Assembly & Namespace.
  Source File       P           x          x            x       Match contained class.
  Other Files       P           x          x            x       Apply where possible.
  Namespace         P           x          x            x       Partial Project/Assembly match.
  Class or Struct   P           P          P            P       Add suffix of subclass.
  Interface         P           P          P            P       Prefix with a capital I.
  Generic Class     P           P          P            P       Use T or K as Type identifier.
  [C#v2+]
  Method            P           P          P            P       Use a Verb or Verb-Object pair.
  Property          P           P          P            P       Do not prefix with Get or Set.
  Field             P           P          P            _c      Only use Private fields.
                                                                No Hungarian Notation!
  Constant          P           P          P            _c
  Static Field      P           P          P            _c      Only use Private fields.
  Enum              P           P          P            P       Options are also PascalCase.
  Delegate          P           P          P            P
  Event             P           P          P            P
  Inline Variable   x           x          x            c       Avoid single-character and
                                                                enumerated names.
  Parameter         x           x          x            c


Coding Style
  Code                  Style
  Source Files          One Namespace per file and one class per file.
  Curly Braces          On new line. Always use braces when optional.
  Indention             Use tabs with size of 4.
  Comments              Use // or /// but not /* … */ and do not flowerbox.
  Variables             One variable per declaration.


                                                                                            Page 37/244
                                                                          KA Plus - Karaoke Android Plus

Language Usage
  Code                  Style
  Native Data Types     Use built-in C# native data types vs .NET CTS types.
                        (Use int NOT Int32)
  Enums                 Avoid changing default type.
  Generics [C#v2+]      Prefer Generic Types over standard or strong-typed classes.
  Properties            Never prefix with Get or Set.
  Methods               Use a maximum of 7 parameters.
  base and this         Use only in constructors or within an override.
  Ternary conditions    Avoid complex conditions.
  foreach statements    Do not modify enumerated items within a foreach statement.
  Conditionals          Avoid evaluating Boolean conditions against true or false.
                        No embedded assignment.
                        Avoid embedded method invocation.
  Exceptions            Do not use exceptions for flow control.
                        Use throw; not throw e; when re-throwing.
                        Only catch what you can handle.
                        Use validation to avoid exceptions.
                        Derive from Exception not Application Exception.
  Events                Always check for null before invoking.
  Locking               Use lock() not Monitor. Enter().
                        Do not lock on an object type or “this”.
                        Do lock on private objects.
  Dispose() & Close()   Always invoke them if offered, declare where needed.
  Finalizers            Avoid.
                        Use the C# Destructors.
                        Do not create Finalize() method.
  AssemblyVersion       Increment manually.
  ComVisibleAttribu     Set to false for all assemblies.
  te




                                                                                             Page 38/244
                                                                          KA Plus - Karaoke Android Plus

V. Other Material
 - Assignments   and Timetable refer file attach (file name: KAP_Plan_Document.doc)
 - Java coding convention refers:
   http://www.oracle.com/technetwork/java/codeconv-138413.html
 - C sharp coding convention refers:
   http://www.csharpfriends.com/articles/getarticle.aspx?articleid=336

C. Software Requirement Specifications
I. Document overview
1. Purpose

       A Software Requirements Specification (SRS) – a requirements specification for a software
system – is a complete description of the behaviour of a system to be developed. It includes a set of
use cases that describe all the interactions the users will have with the software. In addition to use
cases, the SRS also contains non-functional (or supplementary) requirements. Non-functional
requirements are requirements, which impose constraints on the design or implementation (such as
performance engineering requirements, quality standards, or design constraints).


       In KA Plus project, this document descripts all requirements from user and project team
about KA Plus application. It contains all parts of a Software Requirement Specification (SRS) to
make project team and involved people verify, understand this project clearly so that project team
can done this project correctly as defined requirement.


2. Scope



       This document will include User Requirement Specification, System Requirement
Specification and Software System Attribute to prepare for next step in project plan. Because this
document is very important for project, it must consist of the following features:             correct,
unambiguous, modifiable, verifiable, consistent, complete, traceable and ranked.




                                                                                             Page 39/244
                                                                           KA Plus - Karaoke Android Plus




II. Software Requirements Specification
1. User Requirements

       These requirements came from user who uses Android mobile phone when using Karaoke
service. It is main requirements because they are as end user. There are all requirements they need:
    Users can view all karaoke songs that available in karaoke box or their computer
    Users can know some basic information about songs to know that this song is the song they
       want (author, singer, lyric. . .)
    Users can control when media was being played (play, pause, next, previous ... )
    Users can search song from karaoke media database quickly and easily
    Users can create playlist for themselves.
    Users can manage playlist for themselves.
    Users can run playlist by the way they want.
    Users can choose suggested playlist
    Users can keep their created-playlist in their mobile phone
    User can
    Users can connect their mobile phone via Wi-Fi
    Users can know the current state of karaoke singing by mobile phone (current playing-song,
       time remaining , volume , next songs)
    Vietnamese interface

2. Admin Requirements




                                                                                              Page 40/244
                                                                            KA Plus - Karaoke Android Plus
       These requirements came from owner or employee in karaoke box and user using this
application at home. Users in this case seem like Admin-administrator. Almost requirements support
user requirement (customers).
    Admin can know all karaoke songs in their system.
    Admin can view all karaoke songs including available information (title, duration , artist,
       gene, album, lyric )
    Admin can manage karaoke songs as database
    Admin can edit song’s information
    Admin can rate song by the number of singing times
    Admin can create all-playlist song for user make database to search
    Admin can create suggest playlist for user (customer)
    Admin can also manage karaoke running when user need

3. Remote requirements

       Remote requirements must have these functions to control playing process:
    Play karaoke song
    Pause singing or play music
    Change to next song
    Change to previous song
    Change to another song in playlist
    Adjust the sound volume
    Adjust the state of current song (seeking when playing)
    Open media, which not available in database but available in their devices.

4. Searching Requirements

These requirements for searching function in mobile application for user:
User can search by any information of the song (title, lyric, singer…)
    Quick and easy
    Searching when offline (without connect with karaoke system)
    Creating playlist before searching

5. Playlist Requirements

These requirements for playlist manager function in mobile application for user:
    Display all playlist: playlist was created, suggested-playlist from karaoke box
    Edit playlist(add , remove, order songs)
    Store song’s information

                                                                                               Page 41/244
                                                                          KA Plus - Karaoke Android Plus
    Create new playlist



III. System Requirement Specification (Specific Requirements)
1. External Interfaces Requirement

     1.1. User Interfaces

KA Plus application runs on mobile phone that has the fixed resolution. Because of the specific of
mobile phone screen (small size, touch-screen, virtual keyboard), so GUIs must ensure these
features:
    Big Icons
    Distance between button must ensues interact correctly
    Easy to view
    Easy to identify functions
    Fit full screen




       Picture 1.1: KAPlus application Home page




                                                                                             Page 42/244
                                                                           KA Plus - Karaoke Android Plus

     1.2. Admin User Interfaces


The main functions of program that run on Server is view all songs in server and create playlist.
Therefore, user interfaces must ensure displaying song information well. Admin GUIs must friendly
as other manager programs to help user easy to use and interact. It must ensure these features:
    Simple
    Almost screen area is display song’s information
    Edit information directly in displayed-information area
    Use command bar
    Easy to view data

     1.3. Hardware Interfaces

 KA Plus has two main modules, one run on mobile phone and one run on Personal Computer.
Therefore, hardware interface must ensure requirement for application working properly.


There are some requirements for hardware interfaces:
Mobile phone:
    Android Operating System compatible ( version 2.2 )
    320*480 screen resolution
    Touch screen
    Wi-Fi connection requested
    RAM:256MB (recommended)
    Memory free space: 5MB at lease
Server:
    Windows 7 Professional Operating System(recommended)
    2TB hard disk space (for storing about1500 karaoke songs)
    4Gb RAM(recommended)
    LAN connection
    PC:
    Windows 7 Professional Operating System (recommended)
    200MB free disk space
    LAN, WLAN connection
    HD audio output




                                                                                              Page 43/244
                                                                             KA Plus - Karaoke Android Plus

     1.4. Software Interfaces (Runtime environment)

   Product runs on PC and mobile phone environments. Therefore, environment for developing and
running this product is:
Computer:
    Windows 7 Professional Operating System (recommended)
    VLC Player
    .Net Framework 4.0
    Microsoft Visual studio 2010
    Eclipse (Development tool)
    SQLite
    Java Development Kit (JDK) 1.6 or higher
    Java Runtime Environment (JRE) 1.6 or higher
    Android SDK r06 or higher


Mobile phone:
    Android OS version 2.2

     1.5. Communication protocol

           Common
              - Communication Standards: HTTP
           Client-Server communication protocol:
              - Each mobile application is connected to Pc - Client throw WIFI
              - Each Pc – Client is connected to Pc – Server throw Lan network
              - Therefore, data (karaoke video file) will be read from Pc - server to Pc - client.




2. System Features

     2.1. Download and setup application

   2.1.1. Use Case Diagram




                                                                                                Page 44/244
                                                                              KA Plus - Karaoke Android Plus




                               Picture 2.1 Download   and setup application


   2.1.2. Use Case Specification




USE CASE- Connection SPECIFICATION




Use-case No.                  UC001                         Use-case Version       1.0

Use-case Name                 Download and setup application

Author                        PhuuongBM

Date                          12/06/2011                    Priority     Normal

Actor:
        Mobile user
Summary:
        For the first time using KAPlus application, users have to down load setup file form server
         via web site link or copy from Computer to mobile through usb -cable.
Goal:
        The goal of use case: when mobile connected to wifi, they easy to download the newest
         version of application with shortest time
Triggers
        User type wrong address of download site, cannot find these files


Preconditions:


                                                                                                 Page 45/244
                                                                                   KA Plus - Karaoke Android Plus

          Version of mobile must be supported by application.
          Mobile is connected wifi internet
Main Success Scenario:


 Step      Actor Action                                   System Response

 1         User click to icon web browser on mobile       Web browser is opened
 2         Type address: “http://code.google.com/p/my-    Web browser display a files application to
           karaoke/downloads/list”                        download
 3         User click symbol download nearly the name     The file will be downloaded on mobile
           of file has name “KAPlus_version_xxx” they
           want.
 4         Click the file “KAPlus_version_xxx” after      Application will be installed and can be run
           download done


Alternative Scenario:

 Step      Actor Action                                   System Response

 1         User click to “Menu, Browser or List” button   System displays the PickServer page
 2         Click button “Add server”                      System displays the Add server page to request
                                                          user adding server Hostname or IP and Port
 3         User enter Hostname or IP address and Port
           in the textbox
 4         Click button “Cancel”                          Redirect to PickServer page


Exceptions:
          Application error
Relationships:


Business Rules:
None


         2.2. Connection

     2.2.1. Use Case Diagram




                                                                                                         Page 46/244
                                                                 KA Plus - Karaoke Android Plus




                       Picture 2.2 Connection


 2.2.2. Use Case Specification




USE CASE- Connection SPECIFICATION




Use-case No.                 UC002                Use-case Version     1.0

Use-case Name                Connection with PC

Author                       ChungBT

Date                         01/06/2011           Priority    Normal

Actor:
        Mobile user


                                                                                    Page 47/244
                                                                                 KA Plus - Karaoke Android Plus

Summary:
         This use case allows the actor add server Hostname or IP and Port to connect with PC
Goal:
         Connected
Triggers
         Click to “Browser or List” button in the Home page
Preconditions:
        User is in the home page.
Post Conditions:
        Display home page
Main Success Scenario:

 Step     Actor Action                                   System Response

 1        User click to “Menu, Browser or List” button   System displays the PickServer page
 2        Click button “Add server”                      System displays the Add server page to request
                                                         user adding server Hostname or IP and Port
 3        User enter Hostname or IP address and Port
          in the textbox
 4        Click button “OK”                              Redirect to Home page


Alternative Scenario:

 Step     Actor Action                                   System Response

 1        User click to “Menu, Browser or List” button   System displays the PickServer page
 2        Click button “Add server”                      System displays the Add server page to request
                                                         user adding server Hostname or IP and Port
 3        User enter Hostname or IP address and Port
          in the textbox
 4        Click button “Cancel”                          Redirect to PickServer page


Exceptions:
None
Relationships:


Business Rules:
None

Description:
 When users want to use KA Plus, they need create connection to mobile phone with PC. Connect via IP
address or Hostname and Port. User need click “Menu, Browser or List” button to connect with PC. In order
create connection , users need enter IP address or Hostname and Port.
IP Address or Hostname : required


                                                                                                    Page 48/244
                                                                                     KA Plus - Karaoke Android Plus

Port : required
 When users click “OK” button, the system will create connection and redirect Home page. By click “Cancel”
button, the system redirect to PickServer page.




       2.3. Play a list song available

  2.3.1. Use Case Diagram




                                                     System




                                         Picture 2.3. Play a playlist available


  2.3.2. Use Case Specification




USE CASE- Play List song SPECIFICATION




Use-case No.                     UC003                             Use-case Version        1.0

Use-case Name                    “Chủ đề”

Author                           ChungBT

Date                             01/06/2011                        Priority       Normal

Actor:
         Mobile user
Summary:
         This use case allows user choose a playlist available and play all songs of list.
Goal:
         Display and play lists songs
Triggers


                                                                                                        Page 49/244
                                                                                    KA Plus - Karaoke Android Plus

         Click to “Chủ đề” button in the Home page
Preconditions:
         User is in the home page and connected with PC
Post Conditions:
         Display list view page
Main Success Scenario:

 Step     Actor Action                                   System Response

 1        User click to “Chủ đề” button                  System displays the list view of list song with
                                                         different topic music, choose a list song and
                                                         play them.
 2        Click a list songs                             System send request to VLC Player to open list
                                                         or song.


Exceptions:
When mobile phone and PC isn’t connection

 Step     Actor Action                                   System Response

 1        User click to “Chủ đề” button                  System send error message on the list view
                                                         page


Relationships:
         This   case relates to “Connection” use case
Business Rules:
         None

Description:
When users want open list or song to sing, they need click “Chủ đề” button to find and choose list or song.
User click “Browser” button, system open driver on PC where contain lists songs. These lists can available or
created by users. When users double touch in list, it will be open on VLC Player.




     2.4. List playing songs

2.4.1 Use Case Diagram




                                                                                                       Page 50/244
                                                                                    KA Plus - Karaoke Android Plus




                                                     System




                                             Picture 2.4 List playing songs


2.4.2 Use Case Specification




USE CASE- List Playing SPECIFICATION




Use-case No.                       UC004                             Use-case Version
                                                                                             1.0

Use-case Name                      List all list of VLC Player use

Author                             ChungBT

Date                               01/06/2011                        Priority    Normal

Actor:
         Mobile user
Summary:
           This use case allows the actor view all lists and songs used by VLC Player. User can remove song
            in lists or play any song in lists.
Goal:
         View the song is playing and will play. And can select another or delete songs.
Triggers
         Click to “Đang chạy” button in the Home page
Preconditions:
         User is in the home page and connected with PC
Post Conditions:


                                                                                                       Page 51/244
                                                                                 KA Plus - Karaoke Android Plus

        Display List page
Main Success Scenario:

 Step     Actor Action                                   System Response

 1        User click to “Đang chạy” button               System displays the current play songs and
                                                         other song selected




Exceptions:
When mobile phone and PC isn’t connection

 Step     Actor Action                                   System Response

 1        User click to “Đang chạy” button               System send error message on the List page
                                                         and screen have a message: “Playlist is empty”
Relationships:
         This   case relates to “Connection” use case
Business Rules:
None

Description:
When user want view all lists and songs opened and list and songs play, they can click “List” button. User can
remove a song or many songs on list by touch this song about 3 second and choose remove this. User can
play any song on this list when double touch on this song.




       2.5. Remote VLC (Video LAN Media Player)

2.5.1. Use Case Diagram




                                                  System



                                             Picture 2.5 Remote VLC


2.5.2. Use Case Specification

                                                                                                      Page 52/244
                                                                                   KA Plus - Karaoke Android Plus




USE CASE- Control SPECIFICATION




Use-case No.                     UC005                             Use-case Version     1.0

Use-case Name                    Remote VLC with functions: Play, Pause, Next, Preview song in the list song,
                                 control volume and full screen.

Author                           ChungBT

Date                             01/06/2011                        Priority    Normal

Actor:
         Mobile user
Summary:
         This use case allows the actor add control PC. Sample: Play, Pause, Next, Preview song in the list
            song, control volume and Full screen.
Goal:
         Control VLC Player running on PC by mobile phone
Triggers
         Click to “Play, Next, Preview, volume and Full screen” button in the Home page
Preconditions:
         User is in the home page and connected with PC
Post Conditions:
         Display home page
Main Success Scenario:

 Step     Actor Action                                    System Response

 1        User click to “Play, Next, Preview, volume      System send request to PC and implementation
          and Full screen” button                         request control VLC Player


Exceptions:
         None
Relationships:
         This   case relates to “Connection” use case
Business Rules:
None

Description:
Users want control VLC Player, they need use “Play, Pause, Next, Preview, volume and Fullscreen” buttons.
“Play” button which play a song in list, when users touch on “Play” button, a song will play and status of button

                                                                                                      Page 53/244
                                                                                  KA Plus - Karaoke Android Plus

change “Pause” button. When users touch on “Pause” button, song will pause and status of button change
“Play”. “Next” and “Preview” button used change song which will play in the list. “Volume” button change
volume and “Fullscreen” button used watching full screen.




       2.6 Search songs

2.6.1. Use Case Diagram




                                                     System
                                                     mm




                                                Picture 2.6 Search songs
2.6.2. Use Case Specification




USE CASE- Search SPECIFICATION




Use-case No.                       UC006                          Use-case Version     1.0

Use-case Name                      Search song

Author                             NgocDM

Date                               01/06/2011                     Priority    Normal

Actor:
         Mobile User
Summary:
         This is one of the main functions of the system. This use case allows the actor can search a song
            from list to add to playlist or favorites.
Goal:



                                                                                                     Page 54/244
                                                                                     KA Plus - Karaoke Android Plus

         Search for songs
Triggers
         Enter a word or more into EditText in tab Search
Preconditions:
         User is in the tab Search.
Post Conditions:
         The page navigates to search result screen with the result displayed
Main Success Scenario:
 Step     Actor Action                                     System Response

 1        User click to tab Search                         System displays the Search screen

 2        Click EditText                                   System displays the virtual keyboard

 3        User enter character string into EditText        The system displays suggestions which have
                                                           similar spellings with the text entered




Alternative Scenario – No result

 Step     Actor Action                                     System Response


 1        Enter category which has no place belong to      Display “Không tìm thấy bài hát nào!”



Exceptions:
 None
Relationships:
         This case relates case “Connection”
Business Rules:
 None

Description:
When users want to sing a song, they need find song and send request to server. User touch tab “Search” to
view list of song. In order search song, users need enter characters in name of song.
A song is included in the search result if it matches all the search criteria. For example, if a user enters “ha
noi” as the name of song, then all song have name include “ha noi” will in the search result, example: “Hà Nội
ngày trở về”, “Hà Nội niềm tin và hi vọng”…




     2.7. Add a song to Favourite

2.7.1. Use Case Diagram




                                                                                                         Page 55/244
                                                                                     KA Plus - Karaoke Android Plus




                                         Picture 2.7 Add song to Favorite
2.7.2. Use Case Specification




USE CASE- Add Favorites SPECIFICATION




Use-case No.                     UC007                           Use-case Version         1.0

Use-case Name                    Add a song to favorites

Author                           NgocDM

Date                             01/06/2011                      Priority       Normal

Actor:
         Mobile User
Summary:
         After have result of search a song, the actor can to add a song to favorites to reuse for next time.
Goal:
         Add a song to favorites tab to easy find my favorite songs
Triggers:
         Touch on a song
Preconditions:
         User is in the tab Search.
Post Conditions:
         The screen displays a symbol to demonstrate that the song added into favorites. And song have
            added must display on tab favorites.




Main Success Scenario:

                                                                                                         Page 56/244
                                                                                KA Plus - Karaoke Android Plus

 Step     Actor Action                                  System Response

 1        User touch on a song                          System displays the confirm option

 2        Touch OK button                               Confirm option close. System displays the
                                                        message: “Đã thêm vào yêu thích”
                                                        And


Alternative Scenario – No result

 Step     Actor Action                                  System Response

 1        User touch on a song                          System displays the confirm option



 2        Touch Cancel button                           Confirm option close.




Exceptions:
         None
Relationships:
         “Search song” and “connection” use case
Business Rules:
         None

Description:
After users found a song, they want to save that song to reuse for next time. The user only need touch on the
song, then a confirm option will display and user choose OK to add or Cancel to cancel.


      2.8. Add a song to Playing list

     2.8.1. Use Case Diagram




2.8.2. Use Case Specification

                                                                                                    Page 57/244
                                                                                      KA Plus - Karaoke Android Plus




USE CASE- Add Playlist SPECIFICATION




Use-case No.                       UC008                          Use-case Version         1.0

Use-case Name                      Add a song to Playlist

Author                             NgocDM

Date                               01/06/2011                     Priority       Normal

Actor:
         Mobile User
Summary:
         After have result of search a song, the actor can to add a song to Playlist.
Goal:
         Add a song to Playlist
Triggers
         Long touch about 3 seconds on a song
Preconditions:
         User is in the tab Search.
Post Conditions:
         The screen displays a message to demonstrate that the song added into Playlist. And song have
            added must display on tab Playlist.




Main Success Scenario:

 Step     Actor Action                                      System Response

 1        User long touch about 3 seconds on a song         System displays the confirm option

 2        Touch OK button                                   Confirm option close. System displays the
                                                            message: “Đã thêm vào danh sách”. “Đang
                                                            chạy” tab has just added the last of playing list a
                                                            new song .


Alternative Scenario – No result

 Step     Actor Action                                      System Response




                                                                                                          Page 58/244
                                                                                KA Plus - Karaoke Android Plus

 1       User long touch about 3 seconds on a song      System displays the confirm option



 2       Touch Cancel button                            Confirm option close.




Exceptions:
None
Relationships:
        “Search song” and “connection” use case
Business Rules:
        None

Description:
After users found a song, they want to save that song to Playlist. The user only need long touch on the song,
then a confirm option will display and user choose OK to add or Cancel to cancel.




       2.9. Remove a song from Playing list

2.9.1. Use Case Diagram




                                  Picture 2.9 Remove song from Playing list
2.9.2. Use Case Specification




                                                                                                   Page 59/244
                                                                                   KA Plus - Karaoke Android Plus




USE CASE- Remove Playlist SPECIFICATION




Use-case No.                       UC009                         Use-case Version       1.0

Use-case Name                      Remove a song from Playlist

Author                             NgocDM

Date                               01/06/2011                    Priority     Normal

Actor:
         Mobile User
Summary:
         The actor can to remove a song from Playing list.
Goal:
         Remove a song from Playing list
Triggers
         Touch on a song
Preconditions:
         User is in the tab Playing list.
Post Conditions:
         The song has removed from Playing list




Main Success Scenario:

 Step     Actor Action                                    System Response

 1        Touch on a song                                 System displays the confirm option

 2        Touch Remove button                             Confirm option close. System don’t displays the
                                                          song that have removed and display a
                                                          notification : “Đã xóa khỏi danh sách”


Alternative Scenario – No result

 Step     Actor Action                                    System Response

 1        Touch on a song                                 System displays the confirm option




                                                                                                      Page 60/244
                                                                                KA Plus - Karaoke Android Plus

 2      Touch Cancel button                             Confirm option close.




Exceptions:
       None
Relationships:
       This case relates to “connection” and “List playing song” use case.
Business Rules:
       None

Description:
When user want to remove a song from Playing list. The user only need touch on the tab Playing list and
touch on the song, then a confirm option will display and user choose Remove to remove or Cancel to cancel.




     2.10. Remove a song to Favourites

2.10.1. Use Case Diagram




                     Picture 2.10 Remove a song from Favorite Songs (“Yêu thích” tab)


2.10.2. Use Case Specification




USE CASE- Remove Favorites SPECIFICATION




                                                                                                   Page 61/244
                                                                                   KA Plus - Karaoke Android Plus

Use-case No.                       UC010                          Use-case Version       1.0

Use-case Name                      Remove a song from favorites

Author                             NgocDM

Date                               01/06/2011                     Priority     Normal

Actor:
         Mobile User
Summary:
         The user can to remove a song from favorites.
Goal:
         Remove a song from favorites
Triggers
         Touch on a song
Preconditions:
         User is in the tab favorites.
Post Conditions:
         The song has removed from favorites


Main Success Scenario:
 Step     Actor Action                                    System Response

 1        Touch on a song                                 System displays the confirm option

 2        Touch Remove button                             Confirm option close. System don’t displays the
                                                          song that have removed and display a
                                                          notification : “Đã xóa khỏi yêu thích”


Alternative Scenario – No result

 Step     Actor Action                                    System Response

 1        Touch on a song                                 System displays the confirm option



 2        Touch Cancel button                             Confirm option close.




Exceptions:
None
Relationships:
         Relate to “connection” and “Add song to Favorite”
Business Rules:
 None


                                                                                                      Page 62/244
                                                                               KA Plus - Karaoke Android Plus

Description:
When user want to remove a song from favorites. The user only need touch on the tab favorites and touch on
the song, then a confirm option will display and user choose Remove to remove or Cancel to cancel.




       2.11. (Admin) Collect karaoke song’s information

2.11.1. Use Case Diagram




2.11.2. Use Case Specification




USE CASE- Collect karaoke song’s information




Use-case No.                   UC011                         Use-case Version       1.0

Use-case Name                  Collect karaoke song’s information

Author                         VinhTD

Date                           06/06/2011                    Priority     Normal

Actor:
         Admin User
Summary:
         When have karaoke song or media on Server PC , admin can collect songs into database
Goal:



                                                                                                  Page 63/244
                                                                                 KA Plus - Karaoke Android Plus

         Add songs into database and display
Triggers
         Long touch on a song.
Preconditions:
         User is in the KAP-SS screen
Post Conditions:
         Song has been added into database and display in All-Playlist screen
Main Success Scenario:
 Step     Actor Action                                   System Response

 1        In command bar , choose Song/Add Folder        System displays GUIs to choose folder in
                                                         computer to add
 2        Choose the media folder to add                 System displays songs in this folder

 3        Click “Select this folder”                     System close choosing folder GUI .All songs in
                                                         this folder displayed on main screen


Alternative Scenario – No result

 Step     Actor Action                                   System Response

 1        In command bar , choose Song/Add Folder        System displays GUIs to choose folder in
                                                         computer to add

 2        Choose the media folder to add                 System displays songs in this folder



 3        Click “Cancel”                                 No song has displayed , return to main screen




Exceptions:
         None
Relationships:
         None
Business Rules:
         None

Description:
When user want to collect song for database, user use KAP-SS to choose folder which contains songs they
want and add them into database. Song was added will displayed in All-Playlist on screen.


     2.12. (Admin) Edit karaoke song’s information

2.12.1. Use Case Diagram




                                                                                                    Page 64/244
                                                                                KA Plus - Karaoke Android Plus




2.12.2. Use Case Specification




USE CASE- Edit karaoke song’s information




Use-case No.                     UC012                           Use-case Version     1.0

Use-case Name                    Edit karaoke song’s information

Author                           VinhTD

Date                             06/06/2011                      Priority    Normal

Actor:
         Admin User
Summary:
         When have a list of song in database, user can edit information
Goal:
         Edit information of each song.
Triggers
         Click Edit button.
Preconditions:
         User is in the main screen and playlist display this song.
Post Conditions:
         The information of song was changed and display in playlist.
Main Success Scenario:


                                                                                                   Page 65/244
                                                                                 KA Plus - Karaoke Android Plus

 Step    Actor Action                                   System Response

 1       Click “Edit” button in the Left of song’s      System displays edit window with song
         information line                               information and text box to edit
 2       Edit information in each text box              System displays old information and change
                                                        information while editing.
 3       Click “Update” button                          Edit window closed. New song’s information
                                                        display in playlist.


Alternative Scenario – No result

 Step    Actor Action                                   System Response

 1       Click “Edit” button in the Left of song’s      System displays edit window with song
         information line                               information and text box to edit

 2       Edit information in each text box              System displays old information and change
                                                        information while editing.

 3       Click “Cancel” button                          Edit window closed. Old song’s information
                                                        displays in playlist.



Exceptions:
         None
Relationships:
         None
Business Rules:
         None

Description:
When Admin User wants to edit information of a song on database (title, lyric, author, singer…). Admin User
use KAP-SS to edit them. Admin User click “Edit” button at left of each information row (each row display one
song’s information).Then Admin User edit information on Edit window. Finish, Admin User confirm action by
“Update” or “Cancel” button , Song’s information has changed or keep on database and display in playlist.




     2.13. (Admin) Create All-Playlist

2.13.1. Use Case Diagram




                                                                                                     Page 66/244
                                                                                  KA Plus - Karaoke Android Plus




2.13.2. Use Case Specification




USE CASE- Remove Playing List SPECIFICATION




Use-case No.                    UC010                          Use-case Version         1.0

Use-case Name                   Remove a song from Playing List

Author                          NgocDM

Date                            01/06/2011                     Priority       Normal

Actor:
Admin User
Summary:
           When have a list of song is playing, user can to remove a song from that.
Goal:
           Remove a song from Playing List.
Triggers
              Long touch on a song.
Preconditions:
              User is in the screen Playing List.
Post Conditions:
              The song has removed from Playing List.
Main Success Scenario:


                                                                                                     Page 67/244
                                                                                KA Plus - Karaoke Android Plus

 Step    Actor Action                                  System Response

 1       Long touch on Playing button                  System displays all song is playing

 2       Long touch on a song                          System displays the confirm option

 3       Touch Remove button                           Confirm option close. List will refresh and don’t
                                                       display the song that has removed.


Alternative Scenario – No result

 Step    Actor Action                                  System Response

 1       Long touch on Playing button                  System displays all song is playing



 1       Touch on a song                               System displays the confirm option



 2       Touch Cancel button                           Confirm option close.




Exceptions:
         None
Relationships:
         None
Business Rules:
         None

Description:
When user want to remove a song from list song is playing. The user only need touch on the Playing button.
A screen will display and user touch on the song, then a confirm option will display and user choose Remove
to remove or Cancel to cancel.


     2.14. (Admin) Create Suggested-playlist

2.14.1. Use Case Diagram




                                                                                                    Page 68/244
                                                                            KA Plus - Karaoke Android Plus




2.14.2. Use Case Specification




USE CASE- Create Suggested-playlist SPECIFICATION




Use-case No.                     UC014                       Use-case Version     1.0

Use-case Name                    Create Suggested-playlist

Author                           VinhTD

Date                             06/06/2011                  Priority    Normal

Actor:
         Admin User
Summary:
           When Admin User do creating Playlist for each Karaoke room
Goal:
           Creating All-Playlist and Suggested-Playlist
Triggers
              Choose Playlist Creating command
Preconditions:
              User is in the main KAP-SS window
Post Conditions:
              Create all Playlists done!
Main Success Scenario:


                                                                                               Page 69/244
                                                                                   KA Plus - Karaoke Android Plus

 Step     Actor Action                                   System Response

 1        Choose “Creating Playlist” button              System displays process windows

 2        Click “OK”                                     Process window closed. Main window display
                                                         notice that action done “Create all Playlists
                                                         done!”


Alternative Scenario – No result

 Step     Actor Action                                   System Response

 1        Choose “Creating Playlist” button              System displays process windows



 2        Click “Undo”                                   Process window closed. Main window displays
                                                         notice that action has been undoing “No
                                                         Playlists created!”


Exceptions:
         None
Relationships:
         None
Business Rules:
         None

Description:
When Admin User want to creating all kind of playlist(update all current playlist).Admin User choose “Creating
Playlist” button , wait and watch process and confirm creating by click “OK” or “Undo” to undo creating playlist
action.


     2.15. (Admin) Schedule creating playlists

2.15.1. Use Case Diagram




                                                                                                         Page 70/244
                                                                               KA Plus - Karaoke Android Plus




2.15.2 .Use Case Specification




USE CASE- Schedule creating playlists SPECIFICATION




Use-case No.                    UC015                           Use-case Version     1.0

Use-case Name                   Schedule creating playlists

Author                          VinhTD

Date                            06/06/2011                      Priority    Normal

Actor:
         Admin User
Summary:
           When Admin User schedule for creating Suggested-Playlist for each Karaoke room
Goal:
           Creating Suggested-Playlist automatic by schedule
Triggers
              Choose Schedule command
Preconditions:
              User is in the main KAP-SS window
Post Conditions:
              Schedule is changed and display next schedule on main window screen
Main Success Scenario:


                                                                                                  Page 71/244
                                                                                  KA Plus - Karaoke Android Plus

 Step    Actor Action                                    System Response

 1       Choose “Schedule” in command bar                System displays Schedule window

 2       Stick on closed-option (“Every month” ,”        Option was choose will display ticked sign. If
         Every three months”, “At that time:”, “Don’t    Admin
         schedule”)                                      User choose At that time , Text box for insert
                                                         date time displayed
 3       Edit time on option “At that time” (If choose   Option was choose will display ticked sign. If
         this option)                                    Admin
                                                         User choose At that time , Text box for insert
                                                         date time displayed
 4       Click “OK” Button                               Schedule window closed, Time for next running
                                                         creating Suggest-Playlist display on Main
                                                         window.


Alternative Scenario – No result

 Step    Actor Action                                    System Response

 1       Choose “Schedule” in command bar                System displays Schedule window



 2       Stick on closed-option (“Every month” ,”        Option was choose will display ticked sign. If
         Every three months”, “At that time:”, “Don’t    Admin
         schedule”)                                      User choose At that time , Text box for insert
                                                         date time displayed
 3       Edit time on option “At that time” (If choose   Option was choose will display ticked sign. If
         this option)                                    Admin
                                                         User choose At that time , Text box for insert
                                                         date time displayed
 4       Click “Cancel” Button                           Schedule window closed, current state of
                                                         schedule display on Main window



Exceptions:
         None
Relationships:
         None
Business Rules:
         None

Description:
When Admin User want to creating Suggested-Playlist automatically by scheduling time. Admin User
chooses schedule by Schedule command on command bar. Set schedule and confirm setting in Schedule


                                                                                                      Page 72/244
                                                                               KA Plus - Karaoke Android Plus

window. The schedule time will display on Main window.


IV - Software System Attributes
1. Reliability

           The system will be designed, and tested in the laboratory with the objective of
              determining its feasibility for use in the real world. As a result, a major factor that will
              contribute to the success of the project will be the reliability of the system developed.
           The level of security provided should be higher than that provided by conventional
              security systems in use today. This fact should be emphasized in the design of the
              security policy if the system is to be considered for commercial use.
           While keeping all the above factors in mind the system should be relatively so fast as to
              be feasible.
           Data collected and calculate correctly.
           System is capable to deal with unusually situation.
           The database has continuous back up and can be recovering if necessary.
           Software         compatible   with   the     operating   system,    running     smoothly      on
              Android phone.
           Not conflict with other software.

2. Availability

           Systems have to run 24/7
           Can be turned off when upgrading
           System is capable to deal with unusually situation.
           The database has continuous back up and can be recovering if necessary
           Percentage of time available is about 95-97%. Because the system is used client/server
              protocol through LAN network, we cannot control case of force majeure such as power
              failure, disconnected network…

3. Security

           The system will authenticate users via their mobile. The information contains the name
              of the user, phone number and mobile agent.
           The server system will also generate application key for each mobile download client
              application.
           The system will use payment system to help user use safe service.


                                                                                                  Page 73/244
                                                                             KA Plus - Karaoke Android Plus

             The procedure for user authentication is shown in the system overview above. All users
              will be authenticated using this procedure. Users will be revoked if they fail to
              authenticate themselves a certain fixed number of times. When this happens, the system
              administrator will need to reinitialize that particular us.
             Check data integrity for critical variables.
             Keep specific log or history data sets.

4. Maintainability

             The system will require little maintenance apart from that needed by the normal wear
              and tear of the individual components or by environmental factors if any. Other
              information in the system will need to be constantly updated for the addition of new
              users, cancellation of users, and changing personal details.
             System can be maintaining any data access layer.
             Can be combined with available systems.
             The system is designed based on separated modules, so it is easy to maintain or
              implement new version with many new functions.

5. Portability

             The process of system must be easily for teacher and Mobile users who do not have too
              much technical knowledge.

6. Performance

             The main criteria for grading the performance of the system are:
               - The verification process should be efficient and take less than 1 - 3 seconds to
                 complete.
             System can deployment at different mobile operation system
             Content will display and done after less than 6 seconds.

V. Reference
[1] Wikipedia, 2011, 'Use case', 8 February, viewed 10 February 2011
<http://en.wikipedia.org/wiki/Use_case>




                                                                                                Page 74/244
                                                                           KA Plus - Karaoke Android Plus

D. Software design description
I. Design Overview
        KAP - Karaoke Android Plus is a mobile application working with service support
application running on PC named KAP-SS (Karaoke Android Plus - Server Service). The main
application is KAP application run in mobile device can remote karaoke process and can choose
songs to play from KAP-SS playlist sources via third application is VLC media player. VLC media
player is a free and open source media player and multimedia framework written by the VideoLAN
project. It will used to play karaoke songs and will remote by KAP.
        This document describes the technical and UI design of the KAP system. It contains the
architectural design and the detailed design of common functions and business functions. It also
includes the design of database model, and overall design of user interface.
        The architectural design describes the overall architecture of the system, and the architecture
of each main component and subsystem. It will describe the patterns be used, the role of each
component and the role of the applications in the working environments.
        KAP detailed design and KAP-SS detailed design describe static and dynamic structure for
each component and function of KAP and KAP-SS. It includes class diagrams, class explanations,
and sequence diagrams of the main use cases. The detailed design uses notations of .NET framework
4.0 and C# 4.0 as they are the framework and language for developing KAP-SS.
        The database design describes the relationship between entities, and details of each entity. It
uses notations of Microsoft Access, as it is the database server for developing KAP-SS and SQL-Lite
for developing KAP.
        The user interface design describes the layout of applications, and some alternative design for
the user interface.
        Creating this document is the most important phase to implement our project and make is
real. Therefore, well done this document will make our team can do coding phase easier and unity.
However, it is over scope of this document.




                                                                                              Page 75/244
                                                                          KA Plus - Karaoke Android Plus

II. System Architectural Design
1. Choice of System Architecture

       A system architecture or systems architecture is the conceptual model that defines the
structure, behavior, and more views of a system. An architecture description is a formal description
and representation of a system, organized in a way that supports reasoning about the structure of the
system which comprises system components, the externally visible properties of those components,
the relationships (e.g. the behavior) between them, and provides a plan from which products can be
procured, and systems developed, that will work together to implement the overall system.
The software architecture of a system is the set of structures needed to reason about the system,
which comprise software elements, relations among them, and properties of both. In this KA Plus
project, our team use two main architecture is Client-Server and Interaction-Oriented Software
Architectures (Model-View-Controller (MVC) and Presentation-Abstraction-Control (PAC))
Before read and make requirement clear, our team found that KAP has these attribute :
    The database from mobile application and database from computer must be independence.

    In KAP system have a connection among agent in two different devices (mobile and
       computer).

    Data was multi taking and multi viewing.

    Use HTTP protocol to connect

Therefore, KAP system will be designed base on Client-Server and Interaction-Oriented
architectures, which can satisfy requirement and technical.




                                                                                             Page 76/244
                                                                   KA Plus - Karaoke Android Plus
In order to understand KAP architecture, please see our diagram:




                        Picture F.II.1 System Architecture




2. System Interface




                                                                                      Page 77/244
                                                                          KA Plus - Karaoke Android Plus

     2.1 PC-Server Interface

        KAP-Server Service: A program with Graphic User Interface creates playlist for KAPlus
make database. User can add, edit, and create many type of playlist.

     2.2 PCs-Client Interface

        VLC media player: A video player plays video, receive request and sent status for KAPlus.
          KAP-Client: A program help KAPlus find and get database.

     2.3Mobile Interface

        KAPlus: A mobile application with Graphic User Interface, user can remote karaoke process,
selects songs and manager playlist.

III. Component
        KAP system will have three main components: KAP-SS, KAPlus and KAP-Client.

1. KAP-SS

        KAP-SS run at PC Server, collect all song PC-Server contain to make database for KAP-SS
via Playlist file.

2. KAPlus

        KAPlus run at mobile, it use playlist file from KAP-SS create to make it own database. It
connects with PC-Client via VLC media player and KAP-Client. This is main component of this
system.

3. KAP-Client

        KAP-Client plays a role like a service program to help KAPlus update database and display
mark via request.




IV. KAP Detailed Design
1. Mobile




                                                                                             Page 78/244
                                                                       KA Plus - Karaoke Android Plus

    1.1 Connection

       1.1.1 Class Diagram




       1.1.2 Class Explanations

Class diagram has responsibility about connection between mobile and PC client.

                                                                                          Page 79/244
                            KA Plus - Karaoke Android Plus

   1.1.3 Sequence Diagram




1.2 Play Control

1.2.1 Class Diagram




                                               Page 80/244
                                                                     KA Plus - Karaoke Android Plus




1.2.2 Class Explanations

  Class diagram has responsibility about play a song in list song.

1.2.3 Sequence Diagram




                                                                                        Page 81/244
                      KA Plus - Karaoke Android Plus




1.3 Pause Control

1.3.1 Class Diagram




                                         Page 82/244
                                                                    KA Plus - Karaoke Android Plus




1.3.2 Class Explanations

    Class diagram has responsibility about pause a song when song is playing.


1.3.3 Sequence Diagram




                                                                                       Page 83/244
KA Plus - Karaoke Android Plus




                   Page 84/244
                                                                          KA Plus - Karaoke Android Plus

    1.4 Next Control

        1.4.1 Class Diagram




        1.4.2 Class Explanations

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




                                                                                             Page 85/244
                         KA Plus - Karaoke Android Plus

1.4.3 Sequence Diagram




                                            Page 86/244
                                                                     KA Plus - Karaoke Android Plus

1.5 Previous Control

   1.5.1 Class Diagram




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




                                                                                        Page 87/244
                         KA Plus - Karaoke Android Plus

1.5.3 Sequence Diagram




                                            Page 88/244
                                                                      KA Plus - Karaoke Android Plus

1.6 Full screen Control

   1.6.1 Class Diagram




   1.6.2 Class Explanations

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




                                                                                         Page 89/244
                         KA Plus - Karaoke Android Plus




1.6.3 Sequence Diagram




                                            Page 90/244
                                                            KA Plus - Karaoke Android Plus

1.7 Search song

  1.7.1Class Diagram




  1.7.2 Class Explanations

      Class diagram has responsibility about search song.




                                                                               Page 91/244
                         KA Plus - Karaoke Android Plus




1.7.3 Sequence Diagram




                                            Page 92/244
                            KA Plus - Karaoke Android Plus




1.8 Add song to play list

1.8.1 Class Diagram




                                               Page 93/244
                                                                 KA Plus - Karaoke Android Plus

   1.8.2 Class Explanations

Class diagram has responsibility about add a song to Playlist.




   1.8.3 Sequence Diagram




                                                                                    Page 94/244
                             KA Plus - Karaoke Android Plus




1.9 Play a song

       1.9.1 Class Diagram




                                                Page 95/244
                                                                       KA Plus - Karaoke Android Plus




           1.9.2 Class Explanations

Class diagram has responsibility about play a song in Search screen.




                                                                                          Page 96/244
                         KA Plus - Karaoke Android Plus




1.9.3 Sequence Diagram




                                            Page 97/244
                             KA Plus - Karaoke Android Plus




1.10 Add song to Favorites

      1.10.1 Class Diagram




                                                Page 98/244
                                                                  KA Plus - Karaoke Android Plus




        1.10.2 Class Explanations

Class diagram has responsibility about add a song to Favorites.




        1.10.3 Sequence Diagram




                                                                                     Page 99/244
                               KA Plus - Karaoke Android Plus




1.11       Playing List Song
       1.11.1 Class Diagram




                                                 Page 100/244
                                                                           KA Plus - Karaoke Android Plus




  1.11.2 Class Explanations
Class diagram has responsibility about manipulate songs in Playlist: play, remove a song or all.
  1.11.3 Sequence Diagram
    Play a song in list




                                                                                             Page 101/244
                  KA Plus - Karaoke Android Plus




 Remove a song




                                    Page 102/244
                              KA Plus - Karaoke Android Plus
 Remove all songs




1.12       Suggest Playlist
       1.12.1 Class Diagram




                                                Page 103/244
                                                                      KA Plus - Karaoke Android Plus



  1.12.2 Class Explanations

Class diagram has responsibility about suggest list song for users.




  1.12.3 Sequence Diagram




                                                                                        Page 104/244
                                                                           KA Plus - Karaoke Android Plus




1.13 Update Playlist
  1.13.1 Class Diagram




  1.13.2 Class Explanations

Class diagram has responsibility about update list all song from server.




                                                                                             Page 105/244
                            KA Plus - Karaoke Android Plus




  1.13.3 Sequence Diagram




2. KAP-Client
                                              Page 106/244
                                                                  KA Plus - Karaoke Android Plus

 2.1Class Diagram




 2.2 Class Explanations

   Class diagram has responsibility about get information from server to send to mobile and
upstream.




                                                                                    Page 107/244
                            KA Plus - Karaoke Android Plus




 2.3 Sequence Diagram




V. KAP-SS Detailed Design
1. Overview




                                              Page 108/244
                                  KA Plus - Karaoke Android Plus




1.1 Class Diagram Overview




1.2 Class Dependencies Overview




                                                    Page 109/244
                                      KA Plus - Karaoke Android Plus




 1.3 Assembly Dependencies Overview




2. Add song

 2.1 Class Diagram



                                                        Page 110/244
                        KA Plus - Karaoke Android Plus




2.2 Class Explanation




                                          Page 111/244
                                                                                 KA Plus - Karaoke Android Plus




Add song button click -> open file dialog -> get directory -> display AddSong form -> set song information ->
add song to database -> message show




 2.3 Sequence Diagram




                                                                                                    Page 112/244
                                                                                                      KA Plus - Karaoke Android Plus




                                  ̀   ́   ̀   ̀
               MessageBox.Show("Bai hat nay la bai sô " + getNo + " trong kho bai hat!", "Thông bao!", MessageBoxButtons.OK)
                                                ̀   ́                          ̀    ́            ́




3. Add multi songs


                                                                                                                               Page 113/244
                    KA Plus - Karaoke Android Plus

3.1 Class Diagram




                                      Page 114/244
                                                                                    KA Plus - Karaoke Android Plus

    3.2 Class Explanation




Add multi songs start -> open folder dialog display -> get folder directory -> colect all correct songs -> delete
current tempotary table -> add to tempotary table -> open AddMultiSongs form -> edit song , song’s
information -> update tempotary table -> copy data from tempotary table to main table.




                                                                                                       Page 115/244
                                                                                                                                             KA Plus - Karaoke Android Plus

   3.3 Sequence Diagram




                                                      ̣   ̣   ̣   ́       ̣
                        MessageBox. Show("Trong thư muc ban chon co thư muc bi câm truy câp. \nTim trong thư muc khac , tư ng thư m. . .
                                                                             ̣   ́        ̣      ̀            ̣     ́    ̀




    [if (Message. . .




                                                                                   ̃                                 ̀       ̀   ́
                                                               MessageBox. Show("Đa thêm " + count. ToString() + " vao kho bai hat !". . .




                                                                                         ́   ̀   ́   ́
                                                                MessageBox. Show("Không co bai hat mơi nao đê thêm vao kho bai hat !")
                                                                                                         ̀   ̉       ̀       ̀   ́




4. Create All Playlist




                                                                                                                                                               Page 116/244
                    KA Plus - Karaoke Android Plus

4.1 Class Diagram




                                      Page 117/244
                                                                                 KA Plus - Karaoke Android Plus

    4.2 Class Explanation




Start create AllPlaylist(btnCreateAllList_Click) -> get data from database -> write XSPF file -> Message show




4.3 Sequence Diagram




                                                                                                   Page 118/244
                                                                                 KA Plus - Karaoke Android Plus




                                           ̣        ́    ́   ̉ ́    ̀   ̀
                        MessageBox.Show("Tao danh sach tât ca cac bai thanh công !")




5. Create Suggest Playlists

5.1 Class Diagram




                                                                                                   Page 119/244
                        KA Plus - Karaoke Android Plus




5.2 Class Explanation




                                          Page 120/244
                                                                                      KA Plus - Karaoke Android Plus




Start Create Suggest Playlist(btnSuggestList_click) -> get data from database -> get type of suggest playlist -
> delete old Hit Playlist -> create Hit Playlist -> delete old custom Playlist -> create custom Playlist ->
Message show




5.3 Sequence Diagram




                                                                                                         Page 121/244
                                                                                              KA Plus - Karaoke Android Plus




                             ́
[if (MessageBox.Show("Danh sac...




                            ́
[if (MessageBox.Show("Danh sac...




                                                      ̣    ́       ́     ̣ ́    ̀
                                    MessageBox.Show("Tao cac danh sach gơi y thanh công !")




                                                                                                                Page 122/244
                                KA Plus - Karaoke Android Plus



6. Make Auto Create Playlists

6.1 Class Diagram




6.2 Class Explaination


                                                  Page 123/244
                                                                                       KA Plus - Karaoke Android Plus




Start auto create playlist (checked checkbox in ScheduleDbForm) -> set time -> Message show
At set time , timer1_Tick run -> create playlists -> set again time for next running




                                                                                                         Page 124/244
                       KA Plus - Karaoke Android Plus




6.3 Sequence Diagram




                                         Page 125/244
                          KA Plus - Karaoke Android Plus




7. Program Auto StartUp

7.1 Class Diagram




                                            Page 126/244
                        KA Plus - Karaoke Android Plus




7.2 Class Explanation




                                          Page 127/244
                                                                                KA Plus - Karaoke Android Plus




checkBoxStartOption set cheked -> set auto start up by write windows registry key -> save state for next time
when program close




                                                                                                  Page 128/244
                       KA Plus - Karaoke Android Plus




7.3 Sequence Diagram




                                         Page 129/244
                         KA Plus - Karaoke Android Plus




8. Count Played-Time

8.1 Class Diagram




8.2 Class Explaination

                                           Page 130/244
                                                                              KA Plus - Karaoke Android Plus




checkBoxPlayingCouter checked -> enable fileSystemWacher1 -> when event last access time raise ->
compare with database -> add 1 to played time for this song make event -> update databse -> display




8.3 Sequence Diagram




                                                                                                Page 131/244
                                   KA Plus - Karaoke Android Plus




9. Set type of Suggest-Playlists

9.1 Class Diagram




                                                     Page 132/244
                         KA Plus - Karaoke Android Plus




9.2 Class Explaination




                                           Page 133/244
                                                                                 KA Plus - Karaoke Android Plus




Menu typeOfSuggetPlaylist click -> SuggestPlaylist form display -> enter album which want to create playlist -
> confirm choice -> save setting




9.3 Sequence Diagram




                                                                                                   Page 134/244
                     KA Plus - Karaoke Android Plus




10. Edit Data

10.1 Class Diagram




                                       Page 135/244
                          KA Plus - Karaoke Android Plus




10.2 Class Explaination




                                            Page 136/244
                                                                     KA Plus - Karaoke Android Plus




Edit data in gridview -> validate input data -> update to database




10.3 Sequence Diagram




                                                                                       Page 137/244
                                             KA Plus - Karaoke Android Plus




                             ̣  ́    ̉
          MessageBox.Show("Ban co thê ...




                             ̣  ́    ̉
          MessageBox.Show("Ban co thê ...




                             ̣ ̀ ̀
           MessageBox.Show("Đô dai bai ...




11. Display Data

11.1 Class Diagram




                                                               Page 138/244
                          KA Plus - Karaoke Android Plus




11.2 Class Explaination




                                            Page 139/244
                                                                                KA Plus - Karaoke Android Plus
Start display all data(btnShow_Click) -> get data from database -> display to main form




11.3 Sequence Diagram




VI. Database Design
1. KAPlus database

      1.1 Database Overview

- Using SQLite

                                                                                                  Page 140/244
                                                                      KA Plus - Karaoke Android Plus
- Database name: Kaplus
- Tables: Song

        1.2 Database Detailed Design

Song Table
Column            Data Type      Null Option   Is FK          Is PK            Note
id                int            No            No             Yes
location          varchar        No            No             No
title             varchar        No            No             No
title_simple      varchar        No            No             No
favourite         varchar        Yes           No             No
lyric             varchar        Yes           No             No
source            varchar        Yes           No             No


2. KAP-SS database

        2.1 Database Overview

- Using Microsoft Access
- Database type: OLE DB .NET Data Provider
- Database name: KAPlus
- Connection name: KAPlusConnectionString
- Connection String: Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=|DataDirectory|\KAPlus.accdb
- DataSet: KAPlusDataSet
- Tables: Video, TempVideo
- TabeAdapter: VideoTableAdapter, TempVideoTableAdapter, CreateListTableAdapter




                                                                                        Page 141/244
                                                                                        KA Plus - Karaoke Android Plus

         2.2 Database Detailed Design




6.2.2.1 Video Table
Name               Video
Description        Main table, Store all songs information
Select Command     SELECT         [No], Title, Duration, Artist, Description, Album, PlayedTime, URI
                   FROM           Video
Table Adapter      VideoTableAdapter


Column             Data Type              Null Option        Is FK              Is PK                  Note
No                 Text                   No                 No                 Yes
Title              Memo                   No                 No                 No
Duration           Text                   Yes                No                 No
Artist             Text                   Yes                No                 No
Description        Memo                   Yes                No                 No
Album              Memo                   Yes                No                 No
PlayedTime         Number                 Yes                No                 No
URI                Memo                   No                 No                 No




6.2.2.1 TempVideo Table
Name               TempVideo
Description        Temporary table, store song’s information preparing insert into Video table when add multi songs at
                   a same time.
Select Command     SELECT         [No], Title, Duration, Artist, Description, Album, PlayedTime, URI
                   FROM           TempVideo
Table Adapter      TempVideoTableAdapter


Column             Data Type              Null Option        Is FK              Is PK                  Note

                                                                                                              Page 142/244
                                                                          KA Plus - Karaoke Android Plus
No                  Text           No               No              Yes
Title               Memo           No               No              No
Duration            Text           Yes              No              No
Artist              Text           Yes              No              No
Description         Memo           Yes              No              No
Album               Memo           Yes              No              No
PlayedTime          Number         Yes              No              No
URI                 Memo           No               No              No




VII. User Interface Design
1 KAPlus

         1.1 Start up Screen

       Screen Image




       Objects and Actions
            Welcome screen: After click icon KAPlus application on your mobile

         1.2 Control Screen

       Screen Image




                                                                                            Page 143/244
                                                   KA Plus - Karaoke Android Plus




 Objects and Actions
   From here, user can control other activities.

 1.3 Suggest Playlist Screen

 Screen Image




 Objects and Actions
   User can play list for follow album.

 1.4 Current Playlist Screen

 Screen Image




                                                                     Page 144/244
                                                                              KA Plus - Karaoke Android Plus




    Objects and Actions
       Show playlist is playing. From here user can play, remove, play random, repeat.

     1.5 Search Screen

    Screen Image




    Objects and Actions
       This screen have a Edit text and a list song, user enter text into edit text to search song. List
song auto-change follow information that user enter.
       From here user can play, add to favorites, add to playlist, update list form server.




                                                                                                Page 145/244
                                                           KA Plus - Karaoke Android Plus

 1.6 Favorite Screen

 Screen Image




 Objects and Actions
   Show all song in favorites of user.
   From here user can play, remove, and add to playlist.

 1.7 Singer Evaluate Screen

 Screen Image.




                                                                             Page 146/244
                                                                          KA Plus - Karaoke Android Plus
    Objects and Actions
      User enters a message or a mark into Edit text to send to server display.

2. KAP-SS

     2.1 Main Screen

    Screen Image




    Objects and Actions
      Main screen display when start KAP-SS, it contain menu bar , button , setting and display
database

     2.2 Add Song Screen

    Screen Image




                                                                                            Page 147/244
                                                                          KA Plus - Karaoke Android Plus




    Objects and Actions
        User enter or edit song’s information when add to database

       2.3 Add Multi Songs Screen

    Screen Image




    Objects and Actions
        User use when add multi songs to database, user can enter, edit individual song’s information
and remove prepare song.



       2.4 Schedule Screen

       Screen Image




                                                                                            Page 148/244
                                                                    KA Plus - Karaoke Android Plus




    Objects and Actions
      User setting time to run create playlists automatically.




3. KAP-Client

    3.1 Startup Screen

    Screen Image




    Objects and Actions
      Welcome screen, click button “Tìm” will go to browse screen




                                                                                      Page 149/244
                                                                   KA Plus - Karaoke Android Plus

 3.2 Running Screen

 Screen image




 Objects and Actions
   KAP-Client is running: send, receive information from server to mobile and upstream

 3.3 Point Screen

 Screen image




 Objects and Actions
   Show point or message when user estimate.




                                                                                     Page 150/244
                                                                          KA Plus - Karaoke Android Plus




     `


E. Software Test Documentation (STD)
I. Introduction
1. System Overview

    Our main system is an application run on android mobile.
    And a sub-system run on server, it is software can create the playlist to provide for mobile.
     The main system run on mobile will provide the following main feature in front-end:

            User can search the songs they want
            See top selected songs in this karaoke bar
            Add the new songs just selected to the bottom of current playlist
            The current playlist can modify such as swapping the positions, delete, update...
            Users can play the selected playlist.
            Can use media button such as: pause ,stop ,next, volume.... to remote to the computer

                                                                                            Page 151/244
                                                                             KA Plus - Karaoke Android Plus

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

       The back-end will allow the administrators to storage and manage the songs
       The system under development of this Capstone Project will include:
               A complete application run on android mobile can connect to pc client via wifi.
               A software run on server can manage many functions
               All the process documents involved

II. Test Plan
1. Features to be tested:
             Test server KAP-SS
                   o Test GUI and Function: “Thêm từng bài”
                   o Test GUI and Function: “Thêm nhiều bài hát”
                   o Test GUI and Function: “Tạo danh sách tất cả các bài”
                   o Test GUI and Function: “Tạo danh sách tham khảo”
                   o Test GUI and Function: “Chọn nơi lưu trữ bài hát”
                   o Test GUI and Function of main screen
             Test on Emulator Android Mobile
                   o Test GUI and Function of main screen
                   o Follow each button on main screen and test GUI & Function
             Test on Android Mobile: LG-P500
                   o Test GUI and Function of main screen
                   o Follow each button on main screen and test GUI & Function
2. Features not to be tested: N/A

Performance test

To determine or validate speed, scalability, and/or stability.

      A performance test is a technical investigation done to determine or validate the
       responsiveness, speed, scalability, and/or stability characteristics of the product under test.

Load test

To verify application behavior under normal and peak load conditions.



                                                                                               Page 152/244
                                                                            KA Plus - Karaoke Android Plus
      Load testing is conducted to verify that your application can meet your desired performance
       objectives; these performance objectives are often specified in a service level agreement
       (SLA). A load test enables you to measure response times, throughput rates, and resource-
       utilization levels, and to identify your application’s breaking point, assuming that the
       breaking point occurs below the peak load condition.
      Endurance testing is a subset of load testing. An endurance test is a type of performance test
       focused on determining or validating the performance characteristics of the product under test
       when subjected to workload models and load volumes anticipated during production
       operations over an extended period of time.
      Endurance testing may be used to calculate Mean Time Between Failure (MTBF), Mean
       Time To Failure (MTTF), and similar metrics.

Stress test

To determine or validate an application’s behavior when it is pushed beyond normal or peak load
conditions.

      The goal of stress testing is to reveal application bugs that surface only under high load
       conditions. These bugs can include such things as synchronization issues, race conditions,
       and memory leaks. Stress testing enables you to identify your application’s weak points, and
       shows how the application behaves under extreme load conditions.
      Spike testing is a subset of stress testing. A spike test is a type of performance test focused
       on determining or validating the performance characteristics of the product under test when
       subjected to workload models and load volumes that repeatedly increase beyond anticipated
       production operations for short periods of time.

Capacity test

To determine how many users and/or transactions a given system will support and still meet
performance goals.

      Capacity testing is conducted in conjunction with capacity planning, which you use to plan
       for future growth, such as an increased user base or increased volume of data. For example,
       to accommodate future loads, you need to know how many additional resources (such as
       processor capacity, memory usage, disk capacity, or network bandwidth) are necessary to
       support future usage levels.


                                                                                              Page 153/244
                                                                            KA Plus - Karaoke Android Plus
        Capacity testing helps you to identify a scaling strategy in order to determine whether you
         should scale up or scale out.

         2.3 Testing Tools and Environment: Test KAP-SS on the real mobile: LG-P500, SS-Galaxy
         5801



III. Test Cases
1. KAP-SS GUI

Case 1
ID          Purpose                 Test Procedure         Expected Output                          Result
KAP_1 Menu “Thêm bài                -Verify “Thêm bài      - Menu.
            hát”                    hát” field.            -Values: “Từng bài Alt + T”,
                                                           “Nhiều bài Alt + N”




Case 2
ID          Purpose                 Test Procedure         Expected Output                          Result
KAP_2 Menu “Thiết lập”              -Verify “Thiết lập”    - Menu
                                    field.                 - Values: “Các loại danh sách gợi
                                                           ý”, “Tự động tạo các danh sách”,
                                                           “Nơi lưu trữ các danh sách”


Case 3
ID          Purpose                 Test Procedure         Expected Output                          Result
KAP_3 Menu “Trợ giúp”               Verify “Trợ giúp”      - Menu
                                                           - Values: “Hướng dẫn sử dụng”,
                                                           “Về KAP-SS”, “Liên hệ”


Case 4
ID          Purpose                 Test Procedure         Expected Output                          Result
KAP_4 Control button                Verify number of       There are 5 buttons: “Tạo danh sách
                                    buttons.               tất cả các bài”, “Tạo các danh sách
                                                           tham khảo”, “Chọn”, “Hiện toàn


                                                                                              Page 154/244
                                                                    KA Plus - Karaoke Android Plus

                                                    bộ”. “Lưu cập nhật”.



Case 5
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_5 Nơi lưu trữ các danh   Verify “Nơi lưu trữ    - Text box
          sách               các danh sách” field   - Default value: Blank




Case 6
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_6 Tổng số bài hiện có    Verify “Tổng số bài    - Text box
                             hiện có” field         - Default value: Blank


Case 7
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_7 Lưu trữ trong          Verify “Lưu trữ        - Text box
                             trong” field           - Default value: Blank


Case 8
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_8 Theo dõi số lần hát    Verify “Theo dõi số    - Check box
                             lần hát” field         - Default value: Blank




Case 9
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_9 Khởi động cùng         Verify “Khởi động      - Check box
          window             cùng window” field     - Default value: Blank


Case 10
ID         Purpose           Test Procedure         Expected Output                         Result
KAP_10 Control Data grid     Verify number of       - There are 8 columns of Data grid
           view              column of Data grid    view: No, Tên bài, Độ dài, Nghệ sĩ,


                                                                                      Page 155/244
                                                                         KA Plus - Karaoke Android Plus

                                   view                 Mô tả & Lời bài hát, Thể loại, số
                                                        lần hát, Vị trí trên máy tính
                                                        - Default value: Blank


     2. KAP-SS Functions

Case 11
ID         Purpose                 Test Procedure       Expected Output                          Result
KAP_11 “Thêm bài hát” with         1. On KAP-SS page    1. On KAP-SS page
           select “Từng bài        - Click on “Thêm     - A menu is displayed with 2
           Alt+T” successful       bài hát” menu.       values: “Từng bài Alt+T” and
                                     - Choose “Từng     “Nhiều bài Alt+N”.
                                   bài Alt + T”.        - An open page is displayed.
                                   2. Choose one song   2. An “AddSong” page is displayed




Case 12
ID         Purpose                 Test Procedure       Expected Output                          Result
KAP_12 “Thêm bài hát” with         1. On KAP-SS page    1. On KAP-SS page
           select “Nhiều bài       - Click on “Thêm     - A menu is displayed with 2
           Alt+N” successful       bài hát” menu.       values: “Từng bài Alt+T” and
                                     - Choose “Nhiều    “Nhiều bài Alt+N”.
                                   bài Alt + N”.        - A “Browse for folder” page is
                                   2. Choose folder     displayed.
                                   song to add          2. A “Thêm nhiều bài hát” page is
                                                        displayed


Case 13
ID         Purpose                 Test Procedure       Expected Output                          Result
KAP_13 “Thiết lập” with            1. On KAP-SS page    1. On KAP-SS page:
           select “Các loại danh   - Click on “Thiết    - A menu is displayed with 3
           sách gợi ý”             lập” menu            values: “Các loại danh sách gợi ý”,
                                   - Choose “Các loại   “Tự động tạo các danh sách”, “Nơi
                                   danh sách gợi ý”     lưu trữ các bài hát”
                                                        - A “Danh sách gợi ý” page is

                                                                                           Page 156/244
                                                                     KA Plus - Karaoke Android Plus

                                                     displayed.




Case 14
ID        Purpose               Test Procedure       Expected Output                         Result
KAP_14 “Thiết lập” with         1. On KAP-SS page    1. On KAP-SS page:
          select “Tự động tạo   - Click on “Thiết    - A menu is displayed with 3
          các danh sách”        lập” menu            values: “Các loại danh sách gợi ý”,
                                - Choose “Tự động    “Tự động tạo các danh sách”, “Nơi
                                tạo các danh sách”   lưu trữ các bài hát”
                                                     - A “Lên lịch” page is displayed.


Case 15
ID        Purpose               Test Procedure       Expected Output                         Result
KAP_15 “Thiết lập” with                              1. On KAP-SS page:
                                1. On KAP-SS page
          select “Nơi lưu trữ                        - A menu is displayed with 3
                                - Click on “Thiết
          các bài hát”                               values: “Các loại danh sách gợi ý”,
                                lập” menu
                                                     “Tự động tạo các danh sách”, “Nơi
                                - Choose “Nơi lưu
                                                     lưu trữ các bài hát”
                                trữ các bài hát”
                                                     - A “Browse for folder” page is
                                                     displayed.


Case 16
ID        Purpose               Test Procedure       Expected Output                         Result
KAP_16 “Trợ giúp” with          1. On KAP-SS page
          select “Hướng dẫn     - Click on “Trợ
          sử dụng”              giúp” menu
                                - Choose “Hướng
                                dẫn sử dụng”




Case 17
                                                                                       Page 157/244
                                                                        KA Plus - Karaoke Android Plus

ID        Purpose                Test Procedure         Expected Output                         Result
KAP_17 “Trợ giúp” with           1. On KAP-SS page
          select “Về KAP-SS”     - Click on “Trợ
                                 giúp” menu
                                 - Choose “Về
                                 KAP-SS”




Case 18
ID        Purpose                Test Procedure         Expected Output                         Result
KAP_18 “Trợ giúp” with           1. On KAP-SS page
          select “Liên hệ”       - Click on “Trợ
                                 giúp” menu
                                 - Choose “Liên hệ”




Case 19
ID        Purpose                Test Procedure         Expected Output                         Result
KAP_19 Check “Tạo danh           1. On KAP-SS page      A note is displayed: “Bạn chưa
          sách tất cả các bài”   - Click on “Tạo        chọn nơi lưu trữ hoặc nơi lưu trữ
          button                 danh sách tất cả các   không hợp lệ”
                                 bài” button.


Case 20
ID        Purpose                Test Procedure         Expected Output                         Result
KAP_20 Check “Tạo các            1. On KAP-SS page      A note is displayed: “Bạn chưa
          danh sách tham         - Click on “Tạo các    chọn nơi lưu trữ hoặc nơi lưu trữ
          khảo” button           danh sách tham         không hợp lệ”
                                 khảo” button.


Case 21
ID        Purpose                Test Procedure         Expected Output                         Result



                                                                                          Page 158/244
                                                                  KA Plus - Karaoke Android Plus

KAP_21 Check “Chọn”           1. On KAP-SS page   1. On KAP-SS page:
           button             - Click on “Chọn”   - A “Browse for folder” page is
                              button.             displayed


Case 22
ID         Purpose            Test Procedure      Expected Output                         Result
KAP_22 Check “Hiện toàn       1. On KAP-SS page   All songs are displayed on the
           bộ” button         - Click on “Hiện    KAP-SS page
                              toàn bộ” button.


Case 23
ID         Purpose            Test Procedure      Expected Output                         Result
KAP_23 Check “Lưu cập         1. On KAP-SS page   All edited details of song are saved
           nhật” button       - Click on “ Lưu
                              cập nhật” button.



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

Case 24
ID         Purpose            Test Procedure      Expected Output                         Result
KAP_24 Thứ tự                                     Textbox, disable to edit
                              Verify “Thứ tự”
                                                  Default value: The number order of
                              field
                                                  song.


Case 25
ID         Purpose            Test Procedure      Expected Output                         Result
KAP_25 Tên bài                                    Textbox
                              Verify “Tên bài”    Default value: The name of song
                              field               that you have create before in
                                                  computer




Case 26
ID         Purpose            Test Procedure      Expected Output                         Result


                                                                                    Page 159/244
                                                                        KA Plus - Karaoke Android Plus

KAP_26 Độ dài                 Verify “Độ dài”        Textbox
                              field                  Default value: 0


Case 27
ID        Purpose             Test Procedure         Expected Output                            Result
KAP_27 Nghệ sĩ                Verify “Nghệ sĩ”       Textbox
                              field                  Default value: unknow


Case 28
ID        Purpose             Test Procedure         Expected Output                            Result
KAP_28 Mô tả                                         Textbox
                              Verify “Mô tả” field
                                                     Default value: unknow


Case 29
ID        Purpose             Test Procedure         Expected Output                            Result
KAP_29 Thể loại               Verify “Thể loại”      Textbox
                              field                  Default value: unknow


Case 30
ID        Purpose             Test Procedure         Expected Output                            Result
KAP_30 Control                Verify numbers of      There are two buttons: “Thêm” and
                              button                 “Quay lại”



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

Case 31
ID        Purpose             Test Procedure         Expected Output                            Result
KAP_31 Check “Tên bài”        1.On “Thêm từng        1.“Tên bài” is edited
          field with 0-255    bài” page:             2a. That song is added successfully.
          character           - Edit “Tên bài”       2b. Back to main screen.
                              field that contains
                              0-255 characters
                              2a. Click “Thêm”
                              buttons

                                                                                          Page 160/244
                                                                   KA Plus - Karaoke Android Plus

                             2b. Click “Quay lại
                             button”


Case 32
ID        Purpose            Test Procedure        Expected Output                         Result
KAP_32 Check “Tên bài”       1.On “Thêm từng       1.“Tên bài” is edited
          field with > 255   bài” page:            2a. Note is displayed: “Tên bài dài
          characters         - Edit “Tên bài”      quá độ dài cho phép”
                             field that >255       2b. Note is displayed: “Tên bài dài
                             characters            quá độ dài cho phép”
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại
                             button”




Case 33
ID        Purpose            Test Procedure        Expected Output                         Result
KAP_33 Check “Tên bài”       1.On “Thêm từng       1.“Tên bài” is edited
          with special       bài” page:            2a. That song is added successfully.
          characters         - Edit “Tên bài”      2b. Back to main screen.
                             field that contains
                             special characters:
                             @#$%^&*!
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại
                             button”


Case 34
ID        Purpose            Test Procedure        Expected Output                         Result
KAP_34 Check “Tên bài”       1.On “Thêm từng       1.“Tên bài” is edited
          with HTML tag      bài” page:            2a. That song is added successfully.


                                                                                     Page 161/244
                                                                   KA Plus - Karaoke Android Plus

                             - Edit “Tên bài”      2b. Back to main screen.
                             field that contains
                             HTML tag:
                             <table>…\<table>
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại
                             button”


Case 35
ID        Purpose            Test Procedure        Expected Output                         Result
KAP_35 Check “Tên bài”       1.On “Thêm từng       1.“Tên bài” is edited
          with blank         bài” page:            2a. That song is added successfully.
                             - Edit “Tên bài”      2b. Back to main screen.
                             field that become
                             blank
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại
                             button”


Case 36
ID        Purpose            Test Procedure        Expected Output                         Result
KAP_36 Check “Độ dài” with   1.On “Thêm từng       1.”Độ dài” is edited
          blank              bài” page:            2a.A note is displayed: “Độ dài bạn
                             - Edit “Độ dài” field nhập không đúng”.
                             that become blank     2b.Back to main screen
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại
                             button”




                                                                                     Page 162/244
                                                                        KA Plus - Karaoke Android Plus



Case 37
ID        Purpose               Test Procedure          Expected Output                         Result
KAP_37 Check “Độ dài” with      1.On “Thêm từng         1.”Độ dài” is edited
          contain number: 0-    bài” page:              2a.A note is displayed: “Độ dài bạn
          999999999             - Edit “Độ dài” field nhập không đúng”.
                                that contain number     2b.Back to main screen
                                0-999999999
                                2a. Click “Thêm”
                                buttons
                                2b. Click “Quay lại
                                button”


Case 38
ID        Purpose               Test Procedure          Expected Output                         Result
KAP_38 Check “Độ dài” with      1.On “Thêm từng         1.”Độ dài” is edited
          contain number that   bài” page:              2a.A note is displayed: “Độ dài bạn
          > 999999999           - Edit “Độ dài” field nhập không đúng”.
                                that contain number     2b.Back to main screen
                                that > 999999999
                                2a. Click “Thêm”
                                buttons
                                2b. Click “Quay lại
                                button”


Case 39
ID        Purpose               Test Procedure          Expected Output                         Result
KAP_39 Check “Độ dài” with      1.On “Thêm từng         1.”Độ dài” is edited
          contain special       bài” page:              2a.A note is displayed: “Độ dài bạn
          characters            - Edit “Độ dài” field   nhập không đúng”.
                                that contain special    2b.Back to main screen
                                characters:
                                !@#$%^&*
                                2a. Click “Thêm”


                                                                                          Page 163/244
                                                                     KA Plus - Karaoke Android Plus

                             buttons
                             2b. Click “Quay lại
                             button”


Case 40
ID        Purpose            Test Procedure          Expected Output                         Result
KAP_40 Check “Độ dài” with   1.On “Thêm từng         1.”Độ dài” is edited
          contain world      bài” page:              2a.A note is displayed: “Độ dài bạn
          characters         - Edit “Độ dài” field nhập không đúng”.
                             that contain world      2b.Back to main screen
                             characters
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại
                             button”




Case 41
ID        Purpose            Test Procedure          Expected Output                         Result
KAP_41 Check “Độ dài” with 1.On “Thêm từng           1.”Độ dài” is edited
          contain HTML tag   bài” page:              2a.A note is displayed: “Độ dài bạn
                             - Edit “Độ dài” field   nhập không đúng”.
                             that contain HTML       2b.Back to main screen
                             tag:
                             <tabble>…\<table>
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại
                             button”


Case 42
ID        Purpose            Test Procedure          Expected Output                         Result
KAP_42 Check “Nghệ sĩ”       1.On “Thêm từng         1.”Nghệ sĩ” is edited
          field with 0-50    bài” page:              2a. That song is added successfully


                                                                                       Page 164/244
                                                                  KA Plus - Karaoke Android Plus

          character        - Edit “Nghệ sĩ”       2b. Back to main screen
                           field that contains
                           0-50 characters
                           2a. Click “Thêm”
                           buttons
                           2b. Click “Quay lại”
                           button


Case 43
ID        Purpose          Test Procedure         Expected Output                         Result
KAP_43 Check “Nghệ sĩ”     1.On “Thêm từng        1.”Nghệ sĩ” is edited
          field with >50   bài” page:             2a. Note is displayed: “Nghệ sĩ dài
          character        - Edit “Nghệ sĩ”       quá độ dài cho phép”
                           field that >50         2b. Note is displayed: “Nghệ sĩ dài
                           characters             quá độ dài cho phép”
                           2a. Click “Thêm”
                           buttons
                           2b. Click “Quay lại”
                           button




Case 44
ID        Purpose          Test Procedure         Expected Output                         Result
KAP_44 Check “Nghệ sĩ”     1.On “Thêm từng        1.”Nghệ sĩ” is edited
          with special     bài” page:             2a. That song is added successfully
          characters       - Edit “Nghệ sĩ”       2b. Back to main screen
                           field that contains
                           special characters:
                           @#$%^&*!
                           2a. Click “Thêm”
                           buttons


                                                                                    Page 165/244
                                                                    KA Plus - Karaoke Android Plus

                             2b. Click “Quay lại”
                             button


Case 45
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_45 Check “Nghệ sĩ”       1.On “Thêm từng        1.”Nghệ sĩ” is edited
          with HTML tag      bài” page:             2a. That song is added successfully
                             - Edit “Nghệ sĩ”       2b. Back to main screen
                             field that contains
                             HTML tag:
                             <table>…\<table>
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại”
                             button


Case 46
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_46 Check “Nghệ sĩ”       1.On “Thêm từng        1.”Nghệ sĩ” is edited
          with blank         bài” page:             2a. That song is added successfully
                             - Edit “Nghệ sĩ”       2b. Back to main screen
                             field that become
                             blank
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay
                             lại” button


Case 47
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_47 Check “Mô tả” field   1.On “Thêm từng        1.”Mô tả” is edited
          with 0-536870910   bài” page:             2a. That song is added successfully
          character          - Edit “Mô tả” field   2b. Back to main screen
                             that contains 0-


                                                                                      Page 166/244
                                                                       KA Plus - Karaoke Android Plus

                               536870910
                               characters
                               2a. Click “Thêm”
                               buttons
                               2b. Click “Quay
                               lại” button


Case 48
ID        Purpose              Test Procedure          Expected Output                         Result
KAP_48 Check “Tên bài”         1.On “Thêm từng         1.“Tên bài” is edited
          field with >         bài” page:              2a. Note is displayed: “Mô tả dài
          536870910            - Edit “Mô tả” field    quá độ dài cho phép”
          characters           that >536870910         2b. Note is displayed: “Mô tả dài
                               characters              quá độ dài cho phép”
                               2a. Click “Thêm”
                               buttons
                               2b. Click “Quay lại
                               button”




Case 49
ID        Purpose              Test Procedure          Expected Output                         Result
KAP_49 Check “Mô tả” with      1.On “Thêm từng         1.”Mô tả” is edited
          special characters   bài” page:              2a. That song is added successfully
                               - Edit “Mô tả” field    2b. Back to main screen
                               that contains special
                               characters:
                               @#$%^&*!
                               2a. Click “Thêm”
                               buttons
                               2b. Click “Quay lại”
                               button


Case 50


                                                                                         Page 167/244
                                                                    KA Plus - Karaoke Android Plus

ID        Purpose            Test Procedure         Expected Output                         Result
KAP_50 Check “Mô tả” with    1.On “Thêm từng        1.”Mô tả” is edited
          HTML tag           bài” page:             2a. That song is added successfully
                             - Edit “Mô tả” field   2b. Back to main screen
                             that contains HTML
                             tag:
                             <table>…\<table>
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại”
                             button


Case 51
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_51 Check “Mô tả” with    1.On “Thêm từng        1.”Mô tả” is edited
          blank              bài” page:             2a. That song is added successfully
                             - Edit “Mô tả” field   2b. Back to main screen
                             that become blank
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay
                             lại” button


Case 52
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_52 Check “Thể loại”      1.On “Thêm từng        1”Thể loại” is edited.
          field with 0-255   bài” page:             2a.That song is added successfully
          character          - Edit “Thể loại”      2b. Back to main screen
                             field that contains
                             0-255 characters
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại”
                             button


                                                                                      Page 168/244
                                                                    KA Plus - Karaoke Android Plus

Case 53
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_53 Check “Thể loại”      1.On “Thêm từng        1.“Tên bài” is edited
          field with > 255   bài” page:             2a. Note is displayed: “Thể loại dài
          characters         - Edit “Mô tả” field   quá độ dài cho phép”
                             that >255              2b. Note is displayed: “Thể loại dài
                             characters             quá độ dài cho phép”
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại
                             button”


Case 54
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_54 Check “Thể loại”      1.On “Thêm từng        1”Thể loại” is edited.
          with special       bài” page:             2a.That song is added successfully
          characters         - Edit “Thể loại”      2b. Back to main screen
                             field that contains
                             special characters:
                             @#$%^&*!
                             2a. Click “Thêm”
                             buttons
                             2b. Click “Quay lại”
                             button




Case 55
ID        Purpose            Test Procedure         Expected Output                         Result
KAP_55 Check “Thể loại”      1.On “Thêm từng        1”Thể loại” is edited.
          with HTML tag      bài” page:             2a.That song is added successfully
                             - Edit “Thể loại”      2b. Back to main screen
                             field that contains
                             HTML tag:
                             <table>…\<table>


                                                                                      Page 169/244
                                                                       KA Plus - Karaoke Android Plus

                                2a. Click “Thêm”
                                buttons
                                2b. Click “Quay lại”
                                button


Case 56
ID        Purpose               Test Procedure         Expected Output                         Result
KAP_56 Check “Thể loại”         1.On “Thêm từng        1.”Thể loại” is edited.
          with blank            bài” page:             2a.That song is added successfully
                                - Edit “Thể loại”      2b. Back to main screen
                                field that become
                                blank
                                2a. Click “Thêm”
                                buttons
                                2b. Click “Quay
                                lại” button


Case 57
ID        Purpose               Test Procedure         Expected Output                         Result
KAP_57 “Thêm từng bài”          1.On “Thêm từng        1.A song is choosed.
          with duplicate name   bài” page:             2a.Note is displayed: “Bài hát này
          of the song           - Choose a song        là bài số … trong kho bài hát”
                                having name is the     2b. Back to main screen
                                same with added
                                song
                                2a. Click “Thêm”
                                buttons
                                2b. Click “Quay lại”
                                button


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

Case 58
ID        Purpose               Test Procedure         Expected Output                         Result


                                                                                         Page 170/244
                                                                       KA Plus - Karaoke Android Plus

KAP_58 Chọn bài hát và sửa      Verify “Chọn bài       Textbox
          thông tin trước khi   hát và sửa thông tin   Default value: All name of songs
          đưa vào kho bài hát   trước khi đưa vào      that just choosed
                                kho bài hát” field


Case 59
ID        Purpose               Test Procedure         Expected Output                         Result
KAP_59 Thứ tự                   Verify “Thứ tự”        Textbox, disable to edit
                                field                  Default value: blank


Case 60
ID        Purpose               Test Procedure         Expected Output                         Result
KAP_58 Tên bài                  Verify “Tên bài”       Textbox
                                field                  Default value: Blank




Case 61
ID        Purpose               Test Procedure         Expected Output                         Result
KAP_61 Độ dài                   Verify “Độ dài”        Textbox
                                field                  Default value: Blank


Case 62
ID        Purpose               Test Procedure         Expected Output                         Result
KAP_62 Nghệ sĩ                  Verify “Nghệ sĩ”       Textbox
                                field                  Default value: Blank


Case 63
ID        Purpose               Test Procedure         Expected Output                         Result
KAP_63 Mô tả                                           Textbox
                                Verify “Mô tả” field
                                                       Default value: Blank

                                                                                         Page 171/244
                                                                   KA Plus - Karaoke Android Plus



Case 64
ID        Purpose            Test Procedure       Expected Output                          Result
KAP_64 Control                                    There are five buttons: “Sửa thông
                             Verify number of     tin”, “Lưu chỉnh sửa”, “Xóa khỏi
                             buttons              danh sách”, “Lưu vào kho bài hát”,
                                                  “Hủy thao tác”


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

Case 65
ID        Purpose            Test Procedure       Expected Output                          Result
KAP_65 Choose song           1.On “Thêm nhiều     1.A song is choosed.
                             bài hát” page:       2.
                             - Choose a song in   - Thứ tự: Default value: Order
                             the “Chọn bài hát    number of song if it is added
                             và sửa thông tin     successfully.
                             trước khi đưa vào    - Tên bài: Name of song that just
                             kho bài hát” textbox has choosen.
                             2. Verify all        - Độ dài: 0
                             textbox:             - Nghệ sĩ: Unknow
                             - Thứ tự             - Mô tả: Unknow
                             - Tên bài            - Thể loại: Unknow
                             - Độ dài
                             - Nghệ sĩ
                             - Mô tả
                             - Thể loại




Case 66

                                                                                     Page 172/244
                                                                   KA Plus - Karaoke Android Plus

ID        Purpose            Test Procedure        Expected Output                          Result
KAP_66 Check “Tên bài”                             1.“Tên bài” is edited
          field with 0-255   1.On “Thêm từng       2a. The song is saved with new
          character          bài” page:            “Tên bài”.
                             - Edit “Tên bài”      2b. That song is save with other
                             field that contains   songs which choosed before. Note
                             0-255 characters      is displayed: “Bạn vừa lưu… bài
                             2a. Click “Lưu        vào kho bài hát”.
                             chỉnh sửa” buttons    2c. That song is deleted
                             2b. Click “Lưu vào    2d. Note is displayed: “Các bài này
                             kho bài hát” button   sẽ không được lưu vào kho bài
                             2c. Click “Xóa khỏi   hát”
                             danh sách bài hát”    -If click “OK” button, back to
                             2d. Click “Hủy bỏ     main screen.
                             thao tác”             If click “No” button, back to “Thêm
                                                   nhiều bài hát” screen


Case 67
ID        Purpose            Test Procedure        Expected Output                          Result
KAP_67 Check “Tên bài”                             1.“Tên bài” is edited
                             1.On “Thêm từng
          with special                             2a. The song is saved with new
                             bài” page:
          characters                               “Tên bài”.
                             - Edit “Tên bài”
                                                   2b. That song is save with other
                             field that contains
                                                   songs which choosed before. Note
                             special characters:
                                                   is displayed: “Bạn vừa lưu… bài
                             @#$%^&*!
                                                   vào kho bài hát”.
                             2a. Click “Lưu
                                                   2c. That song is deleted
                             chỉnh sửa” buttons
                                                   2d. Note is displayed: “Các bài này
                             2b. Click “Lưu vào
                                                   sẽ không được lưu vào kho bài
                             kho bài hát” button
                                                   hát”
                             2c. Click “Xóa khỏi
                                                   -If click “OK” button, back to
                             danh sách bài hát”
                                                   main screen.
                             2d. Click “Hủy bỏ
                                                   If click “No” button, back to
                             thao tác”
                                                   “Thêm nhiều bài hát” screen


                                                                                      Page 173/244
                                                                 KA Plus - Karaoke Android Plus

Case 68
ID        Purpose         Test Procedure         Expected Output                          Result
KAP_68 Check “Tên bài”                           1.“Tên bài” is edited
                          1.On “Thêm từng
          with HTML tag                          2a. The song is saved with new
                          bài” page:
                                                 “Tên bài”.
                          - Edit “Tên bài”
                                                 2b. That song is save with other
                          field that contains
                                                 songs which choosed before. Note
                          HTML tag:
                                                 is displayed: “Bạn vừa lưu… bài
                          <table>…\<table>
                                                 vào kho bài hát”.
                          2a. Click “Lưu chỉnh
                                                 2c. That song is deleted
                          sửa” buttons
                                                 2d. Note is displayed: “Các bài
                          2b. Click “Lưu vào
                                                 này sẽ không được lưu vào kho bài
                          kho bài hát” button
                                                 hát”
                          2c. Click “Xóa khỏi
                                                 -If click “OK” button, back to
                          danh sách bài hát”
                                                 main screen.
                          2d. Click “Hủy bỏ
                                                 If click “No” button, back to
                          thao tác”
                                                 “Thêm nhiều bài hát” screen


Case 69
ID        Purpose         Test Procedure         Expected Output                          Result
KAP_69 Check “Tên bài”                           1.“Tên bài” is edited
                          1.On “Thêm từng
          with blank                             2a. The song is saved with new
                          bài” page:
                                                 “Tên bài”.
                          - Edit “Tên bài”
                                                 2b. That song is save with other
                          field that become
                                                 songs which choosed before. Note
                          blank
                                                 is displayed: “Bạn vừa lưu… bài
                          2a. Click “Lưu
                                                 vào kho bài hát”.
                          chỉnh sửa” buttons
                                                 2c. That song is deleted
                          2b. Click “Lưu vào
                                                 2d. Note is displayed: “Các bài này
                          kho bài hát” button
                                                 sẽ không được lưu vào kho bài hát”
                          2c. Click “Xóa khỏi
                                                 -If click “OK” button, back to main
                          danh sách bài hát”
                                                 screen.
                          2d. Click “Hủy bỏ
                                                 If click “No” button, back to “Thêm
                          thao tác”
                                                 nhiều bài hát” screen


                                                                                    Page 174/244
                                                                  KA Plus - Karaoke Android Plus

Case 70
ID        Purpose           Test Procedure        Expected Output                          Result
KAP_70 Check “Nghệ sĩ”                            1.”Nghệ sĩ” is edited
                            1.On “Thêm từng
          field with 0-35                         2a. The song is saved.
                            bài” page:
          character                               2b. That song is save with other
                            - Edit “Nghệ sĩ”
                                                  songs which choosed before. Note
                            field that contains
                                                  is displayed: “Bạn vừa lưu… bài
                            0-255 characters
                                                  vào kho bài hát”.
                            2a. Click “Lưu
                                                  2c. That song is deleted
                            chỉnh sửa” buttons
                                                  2d. Note is displayed: “Các bài này
                            2b. Click “Lưu vào
                                                  sẽ không được lưu vào kho bài
                            kho bài hát” button
                                                  hát”
                            2c. Click “Xóa khỏi
                                                  -If click “OK” button, back to
                            danh sách bài hát”
                                                  main screen.
                            2d. Click “Hủy bỏ
                                                  If click “No” button, back to “Thêm
                            thao tác”
                                                  nhiều bài hát” screen




Case 71
ID        Purpose           Test Procedure        Expected Output                          Result
KAP_71 Check “Nghệ sĩ”      1.On “Thêm từng       1.”Nghệ sĩ” is edited
          with special      bài” page:            2a. The song is saved.
          characters        - Edit “Nghệ sĩ”      2b. That song is save with other
                            field that contains   songs which choosed before. Note
                            special characters:   is displayed: “Bạn vừa lưu… bài
                            @#$%^&*!              vào kho bài hát”.
                            2a. Click “Lưu        2c. That song is deleted
                            chỉnh sửa” buttons    2d. Note is displayed: “Các bài này
                            2b. Click “Lưu vào    sẽ không được lưu vào kho bài
                            kho bài hát” button   hát”
                            2c. Click “Xóa khỏi   -If click “OK” button, back to
                            danh sách bài hát”    main screen.
                            2d. Click “Hủy bỏ     If click “No” button, back to
                            thao tác”             “Thêm nhiều bài hát” screen


                                                                                     Page 175/244
                                                                KA Plus - Karaoke Android Plus

Case 72
ID        Purpose         Test Procedure        Expected Output                          Result
KAP_72 Check “Nghệ sĩ”    1.On “Thêm từng       1.”Nghệ sĩ” is edited
          with HTML tag   bài” page:            2a. The song is saved.
                          - Edit “Nghệ sĩ”      2b. That song is save with other
                          field that contains   songs which choosed before. Note
                          HTML tag:             is displayed: “Bạn vừa lưu… bài
                          <table>…\<table>      vào kho bài hát”.
                          2a. Click “Lưu chỉnh 2c. That song is deleted
                          sửa” buttons          2d. Note is displayed: “Các bài
                          2b. Click “Lưu vào    này sẽ không được lưu vào kho bài
                          kho bài hát” button   hát”
                          2c. Click “Xóa khỏi   -If click “OK” button, back to
                          danh sách bài hát”    main screen.
                          2d. Click “Hủy bỏ     If click “No” button, back to
                          thao tác”             “Thêm nhiều bài hát” screen


Case 73
ID        Purpose         Test Procedure        Expected Output                          Result
KAP_73 Check “Nghệ sĩ”    1.On “Thêm từng       1.”Nghệ sĩ” is blank
          with blank      bài” page:            2a. The song is saved.
                          - Edit “Nghệ sĩ”      2b. That song is save with other
                          field that become     songs which choosed before. Note
                          blank                 is displayed: “Bạn vừa lưu… bài
                          2a. Click “Lưu        vào kho bài hát”.
                          chỉnh sửa” buttons    2c. That song is deleted
                          2b. Click “Lưu vào    2d. Note is displayed: “Các bài này
                          kho bài hát” button   sẽ không được lưu vào kho bài hát”
                          2c. Click “Xóa khỏi   -If click “OK” button, back to main
                          danh sách bài hát”    screen.
                          2d. Click “Hủy bỏ     If click “No” button, back to “Thêm
                          thao tác”             nhiều bài hát” screen


Case 74


                                                                                   Page 176/244
                                                                         KA Plus - Karaoke Android Plus

ID        Purpose                Test Procedure          Expected Output                          Result
KAP_74 Check “Mô tả” field                               1.”Mô tả” is edited
                                 1.On “Thêm từng
          with 0-255 character                           2a. The song is saved.
                                 bài” page:
                                                         2b. That song is save with other
                                 - Edit “Mô tả” field
                                                         songs which choosed before. Note
                                 that contains 0-255
                                                         is displayed: “Bạn vừa lưu… bài
                                 characters
                                                         vào kho bài hát”.
                                 2a. Click “Lưu
                                                         2c. That song is deleted
                                 chỉnh sửa” buttons
                                                         2d. Note is displayed: “Các bài này
                                 2b. Click “Lưu vào
                                                         sẽ không được lưu vào kho bài
                                 kho bài hát” button
                                                         hát”
                                 2c. Click “Xóa khỏi
                                                         -If click “OK” button, back to
                                 danh sách bài hát”
                                                         main screen.
                                 2d. Click “Hủy bỏ
                                                         If click “No” button, back to “Thêm
                                 thao tác”
                                                         nhiều bài hát” screen


Case 75
ID        Purpose                Test Procedure          Expected Output                          Result
KAP_75 Check “Mô tả” with        1.On “Thêm từng         1.”Mô tả” is edited
          special characters     bài” page:              2a. The song is saved.
                                 - Edit “Mô tả” field    2b. That song is save with other
                                 that contains special   songs which choosed before. Note
                                 characters:             is displayed: “Bạn vừa lưu… bài
                                 @#$%^&*!                vào kho bài hát”.
                                 2a. Click “Lưu          2c. That song is deleted
                                 chỉnh sửa” buttons      2d. Note is displayed: “Các bài này
                                 2b. Click “Lưu vào      sẽ không được lưu vào kho bài
                                 kho bài hát” button     hát”
                                 2c. Click “Xóa khỏi     -If click “OK” button, back to
                                 danh sách bài hát”      main screen.
                                 2d. Click “Hủy bỏ       If click “No” button, back to
                                 thao tác”               “Thêm nhiều bài hát” screen


Case 76


                                                                                            Page 177/244
                                                                   KA Plus - Karaoke Android Plus

ID        Purpose           Test Procedure         Expected Output                          Result
KAP_76 Check “Mô tả” with   1.On “Thêm từng        1.”Mô tả” is edited
          HTML tag          bài” page:             2a. The song is saved.
                            - Edit “Mô tả” field   2b. That song is save with other
                            that contains HTML     songs which choosed before. Note
                            tag:                   is displayed: “Bạn vừa lưu… bài
                            <table>…\<table>       vào kho bài hát”.
                            2a. Click “Lưu chỉnh 2c. That song is deleted
                            sửa” buttons           2d. Note is displayed: “Các bài
                            2b. Click “Lưu vào     này sẽ không được lưu vào kho bài
                            kho bài hát” button    hát”
                            2c. Click “Xóa khỏi    -If click “OK” button, back to
                            danh sách bài hát”     main screen.
                            2d. Click “Hủy bỏ      If click “No” button, back to
                            thao tác”              “Thêm nhiều bài hát” screen


Case 77
ID        Purpose           Test Procedure         Expected Output                          Result
KAP_77 Check “Mô tả” with                          1.”Mô tả” is blank
                            1.On “Thêm từng
          blank                                    2a. The song is saved.
                            bài” page:
                                                   2b. That song is save with other
                            - Edit “Mô tả” field
                                                   songs which choosed before. Note
                            that become blank
                                                   is displayed: “Bạn vừa lưu… bài
                            2a. Click “Lưu
                                                   vào kho bài hát”.
                            chỉnh sửa” buttons
                                                   2c. That song is deleted
                            2b. Click “Lưu vào
                                                   2d. Note is displayed: “Các bài này
                            kho bài hát” button
                                                   sẽ không được lưu vào kho bài hát”
                            2c. Click “Xóa khỏi
                                                   -If click “OK” button, back to main
                            danh sách bài hát”
                                                   screen.
                            2d. Click “Hủy bỏ
                                                   If click “No” button, back to “Thêm
                            thao tác”
                                                   nhiều bài hát” screen


Case 78
ID        Purpose           Test Procedure         Expected Output                          Result


                                                                                      Page 178/244
                                                                  KA Plus - Karaoke Android Plus

KAP_78 Check “Thể loại”                           1”Thể loại” is edited.
                            1.On “Thêm từng
          field with 0-35                         2a. The song is saved.
                            bài” page:
          character                               2b. That song is save with other
                            - Edit “Thể loại”
                                                  songs which choosed before. Note
                            field that contains
                                                  is displayed: “Bạn vừa lưu… bài
                            0-35 characters
                                                  vào kho bài hát”.
                            2a. Click “Lưu
                                                  2c. That song is deleted
                            chỉnh sửa” buttons
                                                  2d. Note is displayed: “Các bài này
                            2b. Click “Lưu vào
                                                  sẽ không được lưu vào kho bài
                            kho bài hát” button
                                                  hát”
                            2c. Click “Xóa khỏi
                                                  -If click “OK” button, back to
                            danh sách bài hát”
                                                  main screen.
                            2d. Click “Hủy bỏ
                                                  If click “No” button, back to “Thêm
                            thao tác”
                                                  nhiều bài hát” screen


Case 79
ID        Purpose           Test Procedure        Expected Output                          Result
KAP_79 Check “Thể loại”     1.On “Thêm từng       1”Thể loại” is edited.
          with special      bài” page:            2a. The song is saved.
          characters        - Edit “Thể loại”     2b. That song is save with other
                            field that contains   songs which choosed before. Note
                            special characters:   is displayed: “Bạn vừa lưu… bài
                            @#$%^&*!              vào kho bài hát”.
                            2a. Click “Lưu        2c. That song is deleted
                            chỉnh sửa” buttons    2d. Note is displayed: “Các bài này
                            2b. Click “Lưu vào    sẽ không được lưu vào kho bài
                            kho bài hát” button   hát”
                            2c. Click “Xóa khỏi   -If click “OK” button, back to
                            danh sách bài hát”    main screen.
                            2d. Click “Hủy bỏ     If click “No” button, back to
                            thao tác”             “Thêm nhiều bài hát” screen


Case 80
ID        Purpose           Test Procedure        Expected Output                          Result


                                                                                     Page 179/244
                                                                KA Plus - Karaoke Android Plus

KAP_80 Check “Thể loại”   1.On “Thêm từng       1”Thể loại” is edited.
          with HTML tag   bài” page:            2a. The song is saved.
                          - Edit “Thể loại”     2b. That song is save with other
                          field that contains   songs which choosed before. Note
                          HTML tag:             is displayed: “Bạn vừa lưu… bài
                          <table>…\<table>      vào kho bài hát”.
                          2a. Click “Lưu        2c. That song is deleted
                          chỉnh sửa” buttons    2d. Note is displayed: “Các bài này
                          2b. Click “Lưu vào    sẽ không được lưu vào kho bài
                          kho bài hát” button   hát”
                          2c. Click “Xóa khỏi   -If click “OK” button, back to
                          danh sách bài hát”    main screen.
                          2d. Click “Hủy bỏ     If click “No” button, back to
                          thao tác”             “Thêm nhiều bài hát” screen


Case 81
ID        Purpose         Test Procedure        Expected Output                          Result
KAP_81 Check “Thể loại”   1.On “Thêm từng       1.”Thể loại” is blank
          with blank      bài” page:            2a. The song is saved.
                          - Edit “Thể loại”     2b. That song is save with other
                          field that become     songs which choosed before. Note
                          blank                 is displayed: “Bạn vừa lưu… bài
                          2a. Click “Lưu        vào kho bài hát”.
                          chỉnh sửa” buttons    2c. That song is deleted
                          2b. Click “Lưu vào    2d. Note is displayed: “Các bài này
                          kho bài hát” button   sẽ không được lưu vào kho bài hát”
                          2c. Click “Xóa khỏi   -If click “OK” button, back to main
                          danh sách bài hát”    screen.
                          2d. Click “Hủy bỏ     If click “No” button, back to “Thêm
                          thao tác”             nhiều bài hát” screen


Case 82
ID        Purpose         Test Procedure        Expected Output                          Result




                                                                                   Page 180/244
                                                                          KA Plus - Karaoke Android Plus

KAP_82 “Thêm nhiều bài            1.On “Thêm từng         All songs are saved successfully
          hát” with no editting   bài” page:
                                  -Click on “Lưu vào
                                  kho bài hát” button.




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

Case 83
ID        Purpose                 Test Procedure          Expected Output                          Result
KAP_83 “Nhập vào chính xác        Verify “Nhập vào        -Text box.
          các thể loại bài hát    chính xác các thể       -Default value: blank.
          để tạo các danh sách    loại bài hát để tạo
          gợi ý. Các thẻ loại     các danh sách gợi ý.
          cách nhau bới dấu       Các thẻ loại cách
          chấm phẩy!”             nhau bới dấu chấm
                                  phẩy!” field.


Case 84
ID        Purpose                 Test Procedure          Expected Output                          Result
KAP_84 Control                    Verify number of        There are two buttons: “Xác nhận”
                                  button                  and “Trở về”




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



Case 85
ID        Purpose                 Test Procedure          Expected Output                          Result
KAP_85 Check “Nhập vào            1.On “Danh sách         1.Text box is filled data
          chính xác các thể       gợi ý” page:            2a. “Danh sách gợi ý” is created.
          loại bài hát để tạo     - Fill into that text   2b. Back to main screen.
          các danh sách gợi ý.    box some name of


                                                                                             Page 181/244
                                                                       KA Plus - Karaoke Android Plus

          Các thẻ loại cách      “Thể loại”, devided
          nhau bới dấu chấm      by “;”
          phẩy!” field with 0-   2a. Click “Xác
          255 character          nhận” buttons
                                 2b. Click “Trở về”
                                 button


Case 86
ID        Purpose                Test Procedure        Expected Output                         Result
KAP_86 Check “Nhập vào           1.On “Thêm từng       1.Text box is filled data
          chính xác các thể      bài” page:            2a. “Danh sách gợi ý” is created.
          loại bài hát để tạo    - Edit “Tên bài”      2b. Back to main screen.
          các danh sách gợi ý.   field that contains
          Các thẻ loại cách      special characters:
          nhau bới dấu chấm      @#$%^&*!
          phẩy!” field with      2a. Click “Xác
          special characters     nhận” buttons
                                 2b. Click “Trở về”
                                 button


Case 87
ID        Purpose                Test Procedure        Expected Output                         Result
KAP_87 Check “Nhập vào           1.On “Thêm từng       1.Text box is filled data
          chính xác các thể      bài” page:            2a. “Danh sách gợi ý” is created.
          loại bài hát để tạo    - Edit “Tên bài”      2b. Back to main screen.
          các danh sách gợi ý.   field that contains
          Các thẻ loại cách      HTML tag:
          nhau bới dấu chấm      <table>…\<table>
          phẩy!” field with      2a. Click “Xác
          HTML tag               nhận” buttons
                                 2b. Click “Trở về”
                                 button buttons
                                 2b. Click “Quay lại
                                 button”


                                                                                         Page 182/244
                                                                          KA Plus - Karaoke Android Plus

Case 88
ID        Purpose               Test Procedure         Expected Output                            Result
KAP_88 Check “Tên bài”          1.On “Thêm từng        1.Text box is filled data
          with blank            bài” page:             2a. “Danh sách gợi ý” is created.
                                - Edit “Tên bài”       2b. Back to main screen.
                                field that become
                                blank
                                2a. Click “Xác
                                nhận” buttons
                                2b. Click “Trở về”
                                button buttons
                                2b. Click “Quay lại
                                button”


Case 89
ID        Purpose               Test Procedure         Expected Output                            Result
KAP_89 Create “Danh sách        1.On KAP-SS page:      1.
          gợi ý” successfully   -Click on “Thiết       -Menu “”Thiết lập” is displayed.
                                lập” menu              -“Nhập vào chính xác các thể loại
                                -Select “Các loại      bài hát để tạo các danh sách gợi ý.
                                danh sách gợi ý”       Các thẻ loại cách nhau bới dấu
                                -Fill data right and   chấm phẩy!” textbox is displayed.
                                full                   -Data is filled.
                                -Click “Xác nhận”      -Category is confirmtable
                                button,                2.
                                2. On KAP-SS           -A “browse for folder” page is
                                page:                  displayed
                                -Click “Chọn”          -Location is confirm
                                button                 -Note is displayed: “Tạo các danh
                                -Select location       sách tham khảo thành công”
                                -Click on “Tạo các
                                danh sách tham
                                khảo” button.




                                                                                            Page 183/244
                                                                         KA Plus - Karaoke Android Plus
9. “Tạo danh sách tất cả các bài”_Function

Case 90
ID        Purpose               Test Procedure           Expected Output                          Result
KAP_90 “”Tạo danh sách tất      1.On KAP-SS page:        1.
          cả các bài”           -Click on “Thiết         -Menu “”Thiết lập” is displayed.
          successfully          lập” menu                -A “Browse for folder” page
                                -Select “Nơi lưu trữ     displayed.
                                các bài hát”             -Location is confirm.
                                -Choose location         -Location is choosed
                                -Click “OK” button, 2.
                                2. On KAP-SS             -Note is displayed: “Tạo danh sách
                                page:                    các bài thành công”
                                -Click on “Tạo danh -way to folder that save all song is
                                sách tất cả các bài”     displayed in the “Lưu trữ trong”
                                button.                  textbox




10. KAPlus GUI (Emulator)

Case 91
ID          Purpose               Test Procedure          Expected Output                         Result
KAPlus_91 Control                                         1. There are 9 buttons on the
                                                          KAPlus page: “Chấm điểm”,
                                  1.Verify all buttons    “Đang chạy”, “Tìm kiếm”, “Yêu
                                  on the KAPlus           thích”, “Chấm điểm”, “Màn
                                  screen
                                                          hình”,         button,


                                                          button,         button


Case 92
ID          Purpose      Test             Expected Output                                          Result
                         Procedure




                                                                                            Page 184/244
                                                                        KA Plus - Karaoke Android Plus

KAPlus_92 Adjustment 1.Verify            This is as display of Adjustment
            listening    Adjustment
                                         bar
            bar          bar that
                         control
                         listening
                         time of
                         song




Case 93
ID          Purpose      Test            Expected Output
                         Procedure
KAPlus_93 Adjustment 1.Verify            This is as display of Adjustment
            volume bar   Adjustment
                         bar that
                                         bar
                         control
                         volume




11. KAPlus Function (Emulator)

Case 94
ID          Purpose                  Test Procedure       Expected Output                       Result
KAPlus_94 Check “Chủ đề”             1. On KAPlus         A new screen is displayed
            button                   screen
                                     - Click on “Chủ
                                     đề” button


Case 95
ID          Purpose                  Test Procedure       Expected Output                       Result
KAPlus_95 Check “Đang chạy”          1. On KAPlus         A new screen is displayed
            button                   screen
                                     - Click on “Đang
                                     chạy” button



                                                                                          Page 185/244
                                                              KA Plus - Karaoke Android Plus

Case 96
ID         Purpose            Test Procedure     Expected Output                      Result
KAPlus_96 Check “Tìm kiếm”    1. On KAPlus       A new screen is displayed
           button             screen
                              - Click on “Tìm
                              kiếm” button


Case 97
ID         Purpose            Test Procedure     Expected Output                      Result
KAPlus_97 Check “Yêu thích”   1. On KAPlus       A new screen is displayed
           button             screen
                              - Click on “Yêu
                              thích” button


Case 98
ID         Purpose            Test Procedure     Expected Output                      Result
KAPlus_98 Check “Chấm         1. On KAPlus       A new screen is displayed
           điểm” button       screen
                              - Click on “Chấm
                              điểm” button


Case 99
ID         Purpose            Test Procedure     Expected Output                      Result
KAPlus_99 Check “Màn hình”    1. On KAPlus       A new screen is displayed
           button             screen
                              - Click on “Màn
                              hình” button


Case 100
ID          Purpose           Test Procedure     Expected Output                      Result
KAPlus_100 Check Connect      On KAPlus screen   1. A screen “Kết nối” is
                              1. Click on “Menu” displayed
                              button.            2. A screen “Kết nối máy chủ” is
                              2. Click on “Kết   displayed


                                                                                Page 186/244
                                                                     KA Plus - Karaoke Android Plus

                                 nối”                 3. A screen “Thêm máy chủ” is
                                 3. Click on “Thêm    displayed
                                 máy chủ”             4. Data is filled
                                 4. Fill right and full 5a. Back to KAPlus screen.
                                 data on “Địa chỉ     5b. Back to “Kết nối máy chủ”
                                 IP” text box         screen
                                 5a. Click “OK”
                                 button
                                 5b. Click “Cancel”
                                 button


Case 101
ID         Purpose               Test Procedure       Expected Output                        Result
KAPlus_101 Check Connect                              1.A new page is displayed:
           successfull           On KAPlus screen     - If that new page contains many
                                 1. Click on “Chủ     folder, “Kết nối” is successful.
                                 đề” button           -If that new page blank. “Kết
                                                      nối” is unsuccessfull




Case 102
ID         Purpose               Test Procedure       Expected Output                        Result
KAPlus_102 Check play            On KAPlus screen     1. A screen show all suggetlist is
           suggestlist           1. Click on “Chủ     displayed
           successful by click   đề” button.          2. Back to KAPlus screen, sever
                                 2. Click on a        play suggestlist.
                                 suggestlist




Case 103
ID         Purpose               Test Procedure       Expected Output                        Result
KAPlus_103 Check play            On KAPlus screen     1. A screen show all suggetlist is
           suggestlist           1. Click on “Chủ     displayed
           successful by         đề” button.          2. A menu is displayed


                                                                                       Page 187/244
                                                                     KA Plus - Karaoke Android Plus

            longclick            2. Long Click on a   3. Back to KAPlus screen, sever
                                 suggestlist          play suggestlist.
                                 3. Click “chạy”
                                 item




Case 104
ID          Purpose              Test Procedure       Expected Output                        Result
KAPlus_106 Check add             On KAPlus screen     1. A screen show all suggetlist is
            suggestlist to       1. Click on “Chủ     displayed
            current playlist     đề” button.          2. A menu is displayed
            successful           2. Long Click on a   3. Back to KAPlus screen, sever
                                 suggestlist          add all song in suggestlist into
                                 3. Click “Thêm       currentlist.
                                 vào đang chạy”
                                 item




Case 105
ID          Purpose              Test Procedure       Expected Output                        Result
KAPlus_105 Check play a song     On KAPlus screen     1. A screen show all song in
            in “Đang chạy”       1. Click on “Đang    playlist is displayed
            screen successful by chạy” button.        2. Back to KAPlus screen, sever
            click                2. Click on a song   play song has been chosen




Case 106
ID          Purpose              Test Procedure       Expected Output                        Result
KAPlus_106 Check play a song     On KAPlus screen     1. A screen show all song in
            in “Đang chạy”       1. Click on “Đang    playlist is displayed
            screen successful by chạy” button.        2. A menu is displayed
            long click           2. Long Click on a   3. Back to KAPlus screen, sever
                                 song                 play song has been chosen
                                 3. Click “Chạy”


                                                                                       Page 188/244
                                                                 KA Plus - Karaoke Android Plus

                              item




Case 107
ID          Purpose           Test Procedure       Expected Output                       Result
KAPlus_107 Check remove a     On KAPlus screen     1. A screen show all song in
            song in “Đang     1. Click on “Đang    playlist is displayed
            chạy” screen      chạy” button.        2. A menu is displayed
            successful        2. Long Click on a   3. Newly selected song is deleted
                              song                 from the playlist
                              3. Click “Xóa khỏi
                              danh sách” item




Case 108
ID          Purpose           Test Procedure       Expected Output                       Result
KAPlus_108 Check remove all   On KAPlus screen     1. A screen show all song in
            song in “Đang     1. Click on “Đang    playlist is displayed
            chạy” screen      chạy” button.        2. A menu is displayed
            successful        2. Click “Menu”      3. All songs are deleted, screen
                              button               show message “Danh sách trống”
                              3. Click “Xóa tất
                              cả”




Case 109
ID          Purpose           Test Procedure       Expected Output                       Result
KAPlus_109 Check play random On KAPlus screen      1. A screen show all song in
            a song in “Đang   1. Click on “Đang    playlist is displayed
            chạy” screen      chạy” button.        2. Button change to
            successful        2. Click             “           ”, KAP play a

                                                                                   Page 189/244
                                                                        KA Plus - Karaoke Android Plus

                                 “            ” button random song in currentlist




Case 110
ID          Purpose              Test Procedure          Expected Output                        Result
KAPlus_110 Check play repeat     On KAPlus screen        1. A screen show all song in
            a song in “Đang      1. Click on “Đang       playlist is displayed
            chạy” screen         chạy” button.           2. Button change to “             ”,
            successful           2. Click                KAP only play a song in
                                 “            ” button   currentlist and repeat




Case 111
ID          Purpose              Test Procedure          Expected Output                        Result
KAPlus_111 Check search a        On KAPlus screen        1. A screen show a edittext and
            song in “Tìm kiếm”   1. Click on “Tìm        list all song is displayed
            screen successful    kiếm” button.           2. List song reduce auto when
                                 2. Enter name of        user enter text
                                 song into edittext


Case 112
ID          Purpose              Test Procedure          Expected Output                        Result
KAPlus_112 Check clear           On KAPlus screen        1. A screen show a edittext and
            edittext in “Tìm     1. Click on “Tìm        list all song is displayed
            kiếm” screen         kiếm” button.           2. List song reduce auto when
            successful           2. Enter name of        user enter text
                                 song into edittext      3. Edittext is blank and all songs
                                                         is displayed
                                 3. Click “      ”
                                 button




Case 113
ID          Purpose              Test Procedure          Expected Output                        Result


                                                                                          Page 190/244
                                                                     KA Plus - Karaoke Android Plus

KAPlus_113 Check play a song      On KAPlus screen     1. A screen show a edittext and
            after search in       1. Click on “Tìm     list all song is displayed
            “Tìm kiếm” screen     kiếm” button.        2. List song reduce auto when
            by click successful   2. Enter name of     user enter text
                                  song into edittext   3. Back to KAPlus screen, sever
                                  3. Click a song      play song has been chosen




Case 114
ID          Purpose               Test Procedure       Expected Output                       Result
KAPlus_114 Check play a song      On KAPlus screen     1. A screen show a edittext and
            after search in       1. Click on “Tìm     list all song is displayed
            “Tìm kiếm” screen     kiếm” button.        2. List song reduce auto when
            by long click         2. Enter name of     user enter text
            successful            song into edittext   3. A menu is displayed
                                  3. Long Click a      4. Back to KAPlus screen, sever
                                  song                 play song has been chosen
                                  4. Click “Chạy”
                                  item




Case 115
ID          Purpose               Test Procedure       Expected Output                       Result
KAPlus_115 Check add a song       On KAPlus screen     1. A screen show a edittext and
            after search into     1. Click on “Tìm     list all song is displayed
            current playlist in   kiếm” button.        2. List song reduce auto when
            “Tìm kiếm” screen     2. Enter name of     user enter text
            successful            song into edittext   3. A menu is displayed
                                  3. Long Click a      4. Back to KAPlus screen
                                  song                 5. “Đang chạy” screen is
                                  4. Click “Thêm vào displayed and the song has been
                                  đang chạy” item      chosen at the final of list
                                  5. Click on “Đang
                                  chạy” button


                                                                                       Page 191/244
                                                                      KA Plus - Karaoke Android Plus




Case 116
ID           Purpose              Test Procedure        Expected Output                        Result
KAPlus_116 Check add a song       On KAPlus screen      1. A screen show a edittext and
             after search into    1. Click on “Tìm      list all song is displayed
             favourites list in   kiếm” button.         2. List song reduce auto when
             “Tìm kiếm” screen    2. Enter name of      user enter text
             successful           song into edittext    3. A menu is displayed
                                  3. Long Click a       4. Icon of that song change from
                                  song                  “    ” to “    ”
                                  4. Click “Thêm
                                  vào yêu thích” item




Case 117
ID           Purpose              Test Procedure        Expected Output                        Result
KAPlus_117 Check update list      On KAPlus screen      1. A screen show a edittext and
             all song in “Tìm     1. Click on “Tìm      list all song is displayed
             kiếm” screen         kiếm” button.         2. A menu is displayed
             successful           2. Click Menu         3. Screen show all songs after
                                  button                update and a message ”Không có
                                  3. Click “Cập nhật    dữ liệu mới” if haven’t new song
                                  danh sách” item       or “Danh sách đã được cập nhật”
                                                        if have new song.


Case 118
ID           Purpose              Test Procedure        Expected Output                        Result
KAPlus_118 Check play a song      On KAPlus screen      1. A screen show all song in
             in “Yêu thích”       1. Click on “Yêu      favourites list is displayed
             screen successful by thích” button.        2. A menu is displayed
             long click           2. Long Click on a    3. Back to KAPlus screen, sever

                                                                                         Page 192/244
                                                                       KA Plus - Karaoke Android Plus

                                    song                 play song has been chosen
                                    3. Click “Chạy”
                                    item




Case 119
ID          Purpose                 Test Procedure       Expected Output                       Result
KAPlus_119 Check play a song        On KAPlus screen     1. A screen show all song in
            in “Yêu thích”          1. Click on “Yêu     favourites list is displayed
            screen successful by thích” button.          2. Back to KAPlus screen, sever
            click                   2. Click on a song   play song has been chosen




Case 120
ID          Purpose                 Test Procedure       Expected Output                       Result
KAPlus_120 Check add a song         On KAPlus screen     1. A screen show list all song is
            into current playlist   1. Click on “Yêu     displayed
            in “Yêu thích”          thích” button.       2. A menu is displayed
            screen successful       2. Long Click a      3. Back to KAPlus screen
                                    song                 4. “Đang chạy” screen is
                                    3. Click “Thêm vào displayed and the song has been
                                    đang chạy” item      chosen at the final of list
                                    4. Click on “Đang
                                    chạy” button




Case 121
ID          Purpose                 Test Procedure       Expected Output                       Result
KAPlus_121 Check remove a           On KAPlus screen     1. A screen show list all song is
            song in “Yêu thích”     1. Click on “Yêu     displayed
            screen successful       thích” button.       2. A menu is displayed
                                    2. Long Click a      3. Newly selected song is deleted
                                    song                 from the favourites list


                                                                                         Page 193/244
                                                                     KA Plus - Karaoke Android Plus

                                  3. Click “Xóa khỏi
                                  yêu thích” item




Case 122
ID          Purpose               Test Procedure       Expected Output                          Result
KAPlus_122 Check play                                  1. A screen show list all song is
                                  On KAPlus screen
            favourites list in                         displayed
                                  1. Click on “Yêu
            “Yêu thích” screen                         2. A menu is displayed
                                  thích” button.
            successful                                 3. Back to KAPlus screen, KAP
                                  2. Click Menu
                                                       play all song in favourites list
                                  button
                                                       and start with the first song in
                                  3. Click “Chạy tất
                                                       list.
                                  cả” item




Case 123
ID          Purpose               Test Procedure       Expected Output                          Result
KAPlus_123 Check remove all       On KAPlus screen     1. A screen show list all song is
            song in favourites    1. Click on “Yêu     displayed
            list in “Yêu thích”   thích” button.       2. A menu is displayed
            screen successful     2. Click Menu        3. All songs are deleted, screen
                                  button               show message “Yêu thích trống”.
                                  3. Click “Xóa tất
                                  cả” item




Case 124
ID          Purpose               Test Procedure       Expected Output                          Result
KAPlus_124 Check “Màn hình”       On KAPlus screen     1. Screen of media player is
            button                1. Click on “Màn     display full and reverse on PC-
                                  hình” button.        Client.




                                                                                          Page 194/244
                                                                 KA Plus - Karaoke Android Plus




Case 125
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_125 Check 1 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “1” button in      1. Click on “Chấm   displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “1”
            screen             2. Click on “1”     3.PC-Client Screen show
                               button              message “Hát chán quá” and “1
                               3. Click “Chấm      điểm”.
                               điểm” button




Case 126
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_126 Check 2 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “2” button in      1. Click on “Chấm   displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “2”
            screen             2. Click on “2”     3.PC-Client Screen show
                               button              message “Hát chán quá” and “2
                               3. Click “Chấm      điểm”.
                               điểm” button




Case 127
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_127 Check 3 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “3” button in      1. Click on “Chấm   displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “3”
            screen             2. Click on “3”     3.PC-Client Screen show
                               button              message “Hát chán quá” and “3
                               3. Click “Chấm      điểm”.
                               điểm” button


                                                                                   Page 195/244
                                                                 KA Plus - Karaoke Android Plus




Case 128
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_128 Check 4 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “4” button in      1. Click on “Chấm   displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “4”
            screen             2. Click on “4”     3.PC-Client Screen show
                               button              message “Hát chán quá” and “4
                               3. Click “Chấm      điểm”.
                               điểm” button




Case 129
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_129 Check 5 mark with                       1. “Chấm điểm” screen is
                               On KAPlus screen
            “5” button in                          displayed
                               1. Click on “Chấm
            “Chấm điểm”                            2. Edittext display value “5”
                               điểm” button.
            screen                                 3.PC-Client Screen show
                               2. Click on “5”
                                                   message “Rất có triển vọng” and
                               button
                                                   “5 điểm”.
                               3. Click “Chấm
                               điểm” button



Case 130
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_130 Check 6 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “6” button in      1. Click on “Chấm   displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “6”
            screen             2. Click on “6”     3. PC-Client Screen show
                               button              message “Rất có triển vọng” and
                               3. Click “Chấm      “6 điểm”.
                               điểm” button

                                                                                   Page 196/244
                                                                 KA Plus - Karaoke Android Plus




Case 131
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_131 Check 7 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “7” button in      1. Click on “Chấm   displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “7”
            screen             2. Click on “7”     3.PC-Client Screen show
                               button              message “Hát rất hay” and “7
                               3. Click “Chấm      điểm”.
                               điểm” button




Case 132
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_132 Check 8 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “8” button in      1. Click on “Chấm   displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “8”
            screen             2. Click on “8”     3.PC-Client Screen show
                               button              message “Hát tuyệt vời” and “8
                               3. Click “Chấm      điểm”.
                               điểm” button




Case 133
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_133 Check 9 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “9” button in      1. Click on “Chấm   displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “9”
            screen             2. Click on “9”     3.PC-Client Screen show
                               button              message “Hát tuyệt vời” and “9
                               3. Click “Chấm      điểm”.
                               điểm” button

                                                                                   Page 197/244
                                                                    KA Plus - Karaoke Android Plus




Case 134
ID          Purpose               Test Procedure      Expected Output                        Result
KAPlus_134 Check 10 mark          On KAPlus screen    1. “Chấm điểm” screen is
            with “10” button in   1. Click on “Chấm   displayed
            “Chấm điểm”           điểm” button.       2. Edittext display value “10”
            screen                2. Click on “10”    3.PC-Client Screen show
                                  button              message “Hát tuyệt vời” and “10
                                  3. Click “Chấm      điểm”.
                                  điểm” button




Case 135
ID          Purpose               Test Procedure      Expected Output                        Result
KAPlus_135 Check 10+ mark         On KAPlus screen    1. “Chấm điểm” screen is
            with “10+” button     1. Click on “Chấm   displayed
            in “Chấm điểm”        điểm” button.       2. Edittext display value “10+”
            screen                2. Click on “10+”   3.PC-Client Screen show
                                  button              message “Trên cả tuyệt vời” and
                                  3. Click “Chấm      “10+ điểm”.
                                  điểm” button




Case 136
ID          Purpose               Test Procedure      Expected Output                        Result
KAPlus_136 Check Edittext not     On KAPlus screen    1. “Chấm điểm” screen is
            bank in “Chấm         1. Click on “Chấm   displayed
            điểm” screen          điểm” button.       2. Screen show message “Phải
                                  2. Click “Chấm      nhập điểm hoặc cảm nhận”
                                  điểm” button

                                                                                       Page 198/244
                                                                          KA Plus - Karaoke Android Plus




Case 137
ID           Purpose                 Test Procedure         Expected Output                       Result
KAPlus_137 Check “Xóa”               On KAPlus screen       1. “Chấm điểm” screen is
             button in “Chấm         1. Click on “Chấm      displayed
             điểm” screen            điểm” button.          2. Edittext is blank
                                     2. Click “Xóa”
                                     button




Case 138
ID           Purpose                 Test Procedure         Expected Output                       Result
KAPlus_138 Check enter custom        On KAPlus screen       1. “Chấm điểm” screen is
             text into Edittext in   1. Click on “Chấm      displayed
             “Chấm điểm”             điểm” button.          2. PC-Client Screen show
             screen                  2. Enter “Good”        message “Good”
                                     into Edittext, Click
                                     “Chấm điểm”
                                     button




Case 139
ID           Purpose                 Test Procedure         Expected Output                       Result
KAPlus_139                           On KAPlus screen       1. KAP play previous song in
             Check “        ”
                                                            current playlist
             button in “KAPlus”      1. Click on “     ”
             screen                  button.




Case 140
ID           Purpose                 Test Procedure         Expected Output                       Result




                                                                                            Page 199/244
                                                                        KA Plus - Karaoke Android Plus

KAPlus_140                           On KAPlus screen     1. KAP play continuouss song in
             Check “    ”
                                                          current playlist
             button in “KAPlus”      1. Click on “    ”
             screen                  button.




Case 141
ID           Purpose                 Test Procedure       Expected Output                            Result
KAPlus_141                           On KAPlus screen     1. KAP pause current song in
             Check “    ”
             button in “KAPlus”      1. Click on “    ”   current playlist, “     ” button
             screen                  button.              change to “        ” button




Case 142
ID           Purpose                 Test Procedure       Expected Output                            Result
KAPlus_142 Check “      ”            On KAPlus screen     1. KAP play current song in

             button in “KAPlus”      1. Click on “    ”   current playlist, “     ” button
             screen                  button.              change to “        ” button




Case 143
ID           Purpose     Test Procedure                                            Expected          Result
                                                                                   Output
KAPlus_143 Check         On KAPlus screen                                          1. Media
             seek sound 1. Click on                                                player is
             in                                                                    the sound
             “KAPlus”                                                              of change
                         and pull.
             screen



Case 144
ID           Purpose        Test Procedure                                        Expected           Result
                                                                                  Output



                                                                                               Page 200/244
                                                                            KA Plus - Karaoke Android Plus

KAPlus_144 Check skip                                                                 1. Media
             over a       On KAPlus screen                                            player also
             passage in   1. Click on                                                 varies
             current
             song in      and pull.
             “KAPlus”
             screen


712. KAPlus GUI (Real mobile)

Case 145
ID           Purpose                  Test Procedure          Expected Output                          Result
KAPlus_145 Control                                            1. There are 9 buttons on the
                                                              KAPlus page: “Chấm điểm”,
                                      1.Verify all buttons “Đang chạy”, “Tìm kiếm”, “Yêu
                                      on the KAPlus           thích”, “Chấm điểm”, “Màn
                                      screen
                                                              hình”,         button,


                                                              button,         button


 Case 146
ID           Purpose      Test                 Expected Output                                         Result
                          Procedure
KAPlus_146 Adjustment     1.Verify             This is as display of Adjustment bar
             listening    Adjustment
             bar          bar that
                          control
                          listening
                          time of
                          song




Case 147
ID           Purpose      Test             Expected Output                                             Result

                                                                                                 Page 201/244
                                                                             KA Plus - Karaoke Android Plus

                              Procedure
KAPlus_147 Adjustment         1.Verify          This is as display of Adjustment bar
             volume bar       Adjustment
                              bar that
                              control
                              volume




      5.3.13: KAPlus_Function (Real Mobile)
Case 148
ID           Purpose                     Test Procedure        Expected Output                       Result
KAPlus_148 Check play                    On KAPlus screen      1. A screen show all suggetlist is
             suggestlist                 1. Touch on “Chủ      displayed
             successful by touch         đề” button.           2. Back to KAPlus screen, sever
                                         2. Touch on a         play suggestlist.
                                         suggestlist




Case 149
ID           Purpose                     Test Procedure        Expected Output                       Result
KAPlus_149 Check play                    On KAPlus screen      1. A screen show all suggetlist is
             suggestlist                 1. Touch on “Chủ      displayed
             successful by               đề” button.           2. A menu is displayed
             longtouch                   2. Long Touch on a 3. Back to KAPlus screen, sever
                                         suggestlist           play suggestlist.
                                         3. Touch “chạy”
                                         item




Case 150
ID           Purpose                     Test Procedure        Expected Output                       Result
KAPlus_150 Check add                     On KAPlus screen      1. A screen show all suggetlist is
             suggestlist to              1. Touch on “Chủ      displayed
             current playlist            đề” button.           2. A menu is displayed


                                                                                               Page 202/244
                                                                     KA Plus - Karaoke Android Plus

            successful           2. Long Touch on a 3. Back to KAPlus screen, sever
                                 suggestlist          add all song in suggestlist into
                                 3. Touch “Thêm       currentlist.
                                 vào đang chạy”
                                 item




Case 151
ID          Purpose              Test Procedure       Expected Output                        Result
KAPlus_151 Check play a song     On KAPlus screen     1. A screen show all song in
            in “Đang chạy”       1. Touch on “Đang    playlist is displayed
            screen successful by chạy” button.        2. Back to KAPlus screen, sever
            touch                2. Touch on a song   play song has been chosen




Case 152
ID          Purpose              Test Procedure       Expected Output                        Result
KAPlus_152 Check play a song     On KAPlus screen     1. A screen show all song in
            in “Đang chạy”       1. Touch on “Đang    playlist is displayed
            screen successful by chạy” button.        2. A menu is displayed
            long touch           2. Long Touch on a 3. Back to KAPlus screen, sever
                                 song                 play song has been chosen
                                 3. Touch “Chạy”
                                 item




Case 153
ID          Purpose              Test Procedure       Expected Output                        Result
KAPlus_153 Check remove a        On KAPlus screen     1. A screen show all song in
            song in “Đang        1. Touch on “Đang    playlist is displayed
            chạy” screen         chạy” button.        2. A menu is displayed
            successful           2. Long Touch on a 3. Newly selected song is deleted
                                 song                 from the playlist
                                 3. Touch “Xóa


                                                                                       Page 203/244
                                                                   KA Plus - Karaoke Android Plus

                               khỏi danh sách”
                               item




Case 154
ID          Purpose            Test Procedure        Expected Output                         Result
KAPlus_154 Check remove all    On KAPlus screen      1. A screen show all song in
            song in “Đang      1. Touch on “Đang     playlist is displayed
            chạy” screen       chạy” button.         2. A menu is displayed
            successful         2. Touch “Menu”       3. All songs are deleted, screen
                               button                show message “Danh sách trống”
                               3. Touch “Xóa tất
                               cả”




Case 155
ID          Purpose            Test Procedure        Expected Output                         Result
KAPlus_155 Check play random On KAPlus screen        1. A screen show all song in
            a song in “Đang    1. Touch on “Đang     playlist is displayed
            chạy” screen       chạy” button.         2. Button change to
            successful         2. Touch              “           ”, KAP play a
                               “          ” button random song in currentlist




Case 156
ID          Purpose            Test Procedure        Expected Output                         Result
KAPlus_156 Check play repeat   On KAPlus screen      1. A screen show all song in
            a song in “Đang    1. Touch on “Đang     playlist is displayed
            chạy” screen       chạy” button.         2. Button change to “              ”,
            successful         2. Touch              KAP only play a song in
                               “          ” button   currentlist and repeat




Case 157

                                                                                     Page 204/244
                                                                      KA Plus - Karaoke Android Plus

ID          Purpose               Test Procedure       Expected Output                        Result
KAPlus_157 Check search a         On KAPlus screen     1. A screen show a edittext and
            song in “Tìm kiếm”    1. Touch on “Tìm     list all song is displayed
            screen successful     kiếm” button.        2. List song reduce auto when
                                  2. Enter name of     user enter text
                                  song into edittext




Case 158
ID          Purpose               Test Procedure       Expected Output                        Result
KAPlus_158 Check clear            On KAPlus screen     1. A screen show a edittext and
            edittext in “Tìm      1. Touch on “Tìm     list all song is displayed
            kiếm” screen          kiếm” button.        2. List song reduce auto when
            successful            2. Enter name of     user enter text
                                  song into edittext   3. Edittext is blank and all songs
                                                       is displayed
                                  3. Touch “      ”
                                  button




Case 159
ID          Purpose               Test Procedure       Expected Output                        Result
KAPlus_159 Check play a song      On KAPlus screen     1. A screen show a edittext and
            after search in       1. Touch on “Tìm     list all song is displayed
            “Tìm kiếm” screen     kiếm” button.        2. List song reduce auto when
            by touch successful   2. Enter name of     user enter text
                                  song into edittext   3. Back to KAPlus screen, sever
                                  3. Touch a song      play song has been chosen




Case 160
ID          Purpose               Test Procedure       Expected Output                        Result
KAPlus_160 Check play a song      On KAPlus screen     1. A screen show a edittext and
            after search in       1. Touch on “Tìm     list all song is displayed
            “Tìm kiếm” screen     kiếm” button.        2. List song reduce auto when

                                                                                        Page 205/244
                                                                     KA Plus - Karaoke Android Plus

            by long touch         2. Enter name of     user enter text
            successful            song into edittext   3. A menu is displayed
                                  3. Long Touch a      4. Back to KAPlus screen, sever
                                  song                 play song has been chosen
                                  4. Touch “Chạy”
                                  item




Case 161
ID          Purpose               Test Procedure       Expected Output                       Result
KAPlus_161 Check add a song       On KAPlus screen     1. A screen show a edittext and
            after search into     1. Touch on “Tìm     list all song is displayed
            current playlist in   kiếm” button.        2. List song reduce auto when
            “Tìm kiếm” screen     2. Enter name of     user enter text
            successful            song into edittext   3. A menu is displayed
                                  3. Long Touch a      4. Back to KAPlus screen
                                  song                 5. “Đang chạy” screen is
                                  4. Touch “Thêm       displayed and the song has been
                                  vào đang chạy”       chosen at the final of list
                                  item
                                  5. Touch on “Đang
                                  chạy” button




Case 162
ID          Purpose               Test Procedure       Expected Output                       Result
KAPlus_162 Check add a song       On KAPlus screen     1. A screen show a edittext and
            after search into     1. Touch on “Tìm     list all song is displayed
            favourites list in    kiếm” button.        2. List song reduce auto when
            “Tìm kiếm” screen     2. Enter name of     user enter text
            successful            song into edittext   3. A menu is displayed
                                  3. Long Touch a      4. Icon of that song change from
                                  song                 “    ” to “    ”


                                                                                       Page 206/244
                                                                      KA Plus - Karaoke Android Plus

                                  4. Touch “Thêm
                                  vào yêu thích” item




Case 163
ID           Purpose              Test Procedure        Expected Output                        Result
KAPlus_163 Check update list      On KAPlus screen      1. A screen show a edittext and
             all song in “Tìm     1. Touch on “Tìm      list all song is displayed
             kiếm” screen         kiếm” button.         2. A menu is displayed
             successful           2. Touch Menu         3. Screen show all songs after
                                  button                update and a message ”Không có
                                  3. Touch “Cập nhật dữ liệu mới” if haven’t new song
                                  danh sách” item       or “Danh sách đã được cập nhật”
                                                        if have new song.


Case 164
ID           Purpose              Test Procedure        Expected Output                        Result
KAPlus_164 Check play a song      On KAPlus screen      1. A screen show all song in
             in “Yêu thích”       1. Touch on “Yêu      favourites list is displayed
             screen successful by thích” button.        2. A menu is displayed
             long touch           2. Long Touch on a 3. Back to KAPlus screen, sever
                                  song                  play song has been chosen
                                  3. Touch “Chạy”
                                  item




Case 165
ID           Purpose              Test Procedure        Expected Output                        Result
KAPlus_165 Check play a song      On KAPlus screen      1. A screen show all song in
             in “Yêu thích”       1. Touch on “Yêu      favourites list is displayed
             screen successful by thích” button.        2. Back to KAPlus screen, sever
             touch                2. Touch on a song    play song has been chosen




                                                                                         Page 207/244
                                                                       KA Plus - Karaoke Android Plus

Case 166
ID          Purpose                 Test Procedure       Expected Output                          Result
KAPlus_166 Check add a song         On KAPlus screen     1. A screen show list all song is
            into current playlist   1. Touch on “Yêu     displayed
            in “Yêu thích”          thích” button.       2. A menu is displayed
            screen successful       2. Long Touch a      3. Back to KAPlus screen
                                    song                 4. “Đang chạy” screen is
                                    3. Touch “Thêm       displayed and the song has been
                                    vào đang chạy”       chosen at the final of list
                                    item
                                    4. Touch on “Đang
                                    chạy” button




Case 167
ID          Purpose                 Test Procedure       Expected Output                          Result
KAPlus_167 Check remove a           On KAPlus screen     1. A screen show list all song is
            song in “Yêu thích”     1. Touch on “Yêu     displayed
            screen successful       thích” button.       2. A menu is displayed
                                    2. Long Touch a      3. Newly selected song is deleted
                                    song                 from the favourites list
                                    3. Touch “Xóa
                                    khỏi yêu thích”
                                    item




Case 168
ID          Purpose                 Test Procedure       Expected Output                          Result
KAPlus_168 Check play               On KAPlus screen     1. A screen show list all song is
            favourites list in      1. Touch on “Yêu     displayed
            “Yêu thích” screen      thích” button.       2. A menu is displayed
            successful              2. Touch Menu        3. Back to KAPlus screen, KAP
                                    button               play all song in favourites list
                                    3. Touch “Chạy tất   and start with the first song in


                                                                                            Page 208/244
                                                                    KA Plus - Karaoke Android Plus

                                  cả” item            list.




Case 169
ID          Purpose               Test Procedure      Expected Output                       Result
KAPlus_169 Check remove all       On KAPlus screen    1. A screen show list all song is
            song in favourites    1. Touch on “Yêu    displayed
            list in “Yêu thích”   thích” button.      2. A menu is displayed
            screen successful     2. Touch Menu       3. All songs are deleted, screen
                                  button              show message “Yêu thích trống”.
                                  3. Touch “Xóa tất
                                  cả” item




Case 170
ID          Purpose               Test Procedure      Expected Output                       Result
KAPlus_170 Check “Màn hình”       On KAPlus screen    1. Screen of media player is
            button                1. Touch on “Màn    display full and reverse on PC-
                                  hình” button.       Client.




Case 171
ID          Purpose               Test Procedure      Expected Output                       Result
KAPlus_171 Check 1 mark with      On KAPlus screen    1. “Chấm điểm” screen is
            “1” button in         1. Touch on “Chấm displayed
            “Chấm điểm”           điểm” button.       2. Edittext display value “1”
            screen                2. Touch on “1”     3.PC-Client Screen show
                                  button              message “Hát chán quá” and “1
                                  3. Touch “Chấm      điểm”.
                                  điểm” button



                                                                                      Page 209/244
                                                                KA Plus - Karaoke Android Plus

Case 172
ID          Purpose            Test Procedure     Expected Output                       Result
KAPlus_172 Check 2 mark with   On KAPlus screen   1. “Chấm điểm” screen is
            “2” button in      1. Touch on “Chấm displayed
            “Chấm điểm”        điểm” button.      2. Edittext display value “2”
            screen             2. Touch on “2”    3.PC-Client Screen show
                               button             message “Hát chán quá” and “2
                               3. Touch “Chấm     điểm”.
                               điểm” button




Case 173
ID          Purpose            Test Procedure     Expected Output                       Result
KAPlus_173 Check 3 mark with   On KAPlus screen   1. “Chấm điểm” screen is
            “3” button in      1. Touch on “Chấm displayed
            “Chấm điểm”        điểm” button.      2. Edittext display value “3”
            screen             2. Touch on “3”    3.PC-Client Screen show
                               button             message “Hát chán quá” and “3
                               3. Touch “Chấm     điểm”.
                               điểm” button




Case 174
ID          Purpose            Test Procedure     Expected Output                       Result
KAPlus_174 Check 4 mark with   On KAPlus screen   1. “Chấm điểm” screen is
            “4” button in      1. Touch on “Chấm displayed
            “Chấm điểm”        điểm” button.      2. Edittext display value “4”
            screen             2. Touch on “4”    3.PC-Client Screen show
                               button             message “Hát chán quá” and “4
                               3. Touch “Chấm     điểm”.
                               điểm” button




Case 175
                                                                                  Page 210/244
                                                                 KA Plus - Karaoke Android Plus

ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_175 Check 5 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “5” button in      1. Touch on “Chấm displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “5”
            screen             2. Touch on “5”     3.PC-Client Screen show
                               button              message “Rất có triển vọng” and
                               3. Touch “Chấm      “5 điểm”.
                               điểm” button




Case 176
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_176 Check 6 mark with                       1. “Chấm điểm” screen is
                               On KAPlus screen
            “6” button in                          displayed
                               1. Touch on “Chấm
            “Chấm điểm”                            2. Edittext display value “6”
                               điểm” button.
            screen                                 3. PC-Client Screen show
                               2. Touch on “6”
                                                   message “Rất có triển vọng” and
                               button
                                                   “6 điểm”.
                               3. Touch “Chấm
                               điểm” button



Case 177
ID          Purpose            Test Procedure      Expected Output                       Result
KAPlus_177 Check 7 mark with   On KAPlus screen    1. “Chấm điểm” screen is
            “7” button in      1. Touch on “Chấm displayed
            “Chấm điểm”        điểm” button.       2. Edittext display value “7”
            screen             2. Touch on “7”     3.PC-Client Screen show
                               button              message “Hát rất hay” and “7
                               3. Touch “Chấm      điểm”.
                               điểm” button




Case 178
ID          Purpose            Test Procedure      Expected Output                       Result


                                                                                   Page 211/244
                                                                   KA Plus - Karaoke Android Plus

KAPlus_178 Check 8 mark with      On KAPlus screen   1. “Chấm điểm” screen is
            “8” button in         1. Touch on “Chấm displayed
            “Chấm điểm”           điểm” button.      2. Edittext display value “8”
            screen                2. Touch on “8”    3.PC-Client Screen show
                                  button             message “Hát tuyệt vời” and “8
                                  3. Touch “Chấm     điểm”.
                                  điểm” button




Case 179
ID          Purpose               Test Procedure     Expected Output                        Result
KAPlus_179 Check 9 mark with      On KAPlus screen   1. “Chấm điểm” screen is
            “9” button in         1. Touch on “Chấm displayed
            “Chấm điểm”           điểm” button.      2. Edittext display value “9”
            screen                2. Touch on “9”    3.PC-Client Screen show
                                  button             message “Hát tuyệt vời” and “9
                                  3. Touch “Chấm     điểm”.
                                  điểm” button




Case 180
ID          Purpose               Test Procedure     Expected Output                        Result
KAPlus_180 Check 10 mark          On KAPlus screen   1. “Chấm điểm” screen is
            with “10” button in   1. Touch on “Chấm displayed
            “Chấm điểm”           điểm” button.      2. Edittext display value “10”
            screen                2. Touch on “10”   3.PC-Client Screen show
                                  button             message “Hát tuyệt vời” and “10
                                  3. Touch “Chấm     điểm”.
                                  điểm” button




Case 181
ID          Purpose               Test Procedure     Expected Output                        Result


                                                                                      Page 212/244
                                                                      KA Plus - Karaoke Android Plus

KAPlus_181 Check 10+ mark           On KAPlus screen    1. “Chấm điểm” screen is
            with “10+” button       1. Touch on “Chấm displayed
            in “Chấm điểm”          điểm” button.       2. Edittext display value “10+”
            screen                  2. Touch on “10+”   3.PC-Client Screen show
                                    button              message “Trên cả tuyệt vời” and
                                    3. Touch “Chấm      “10+ điểm”.
                                    điểm” button




Case 182
ID          Purpose                 Test Procedure      Expected Output                       Result
KAPlus_182 Check Edittext not       On KAPlus screen    1. “Chấm điểm” screen is
            bank in “Chấm           1. Touch on “Chấm displayed
            điểm” screen            điểm” button.       2. Screen show message “Phải
                                    2. Touch “Chấm      nhập điểm hoặc cảm nhận”
                                    điểm” button




Case 183
ID          Purpose                 Test Procedure      Expected Output                       Result
KAPlus_183 Check “Xóa”              On KAPlus screen    1. “Chấm điểm” screen is
            button in “Chấm         1. Touch on “Chấm displayed
            điểm” screen            điểm” button.       2. Edittext is blank
                                    2. Touch “Xóa”
                                    button




Case 184
ID          Purpose                 Test Procedure      Expected Output                       Result
KAPlus_184 Check enter custom       On KAPlus screen    1. “Chấm điểm” screen is
            text into Edittext in   1. Touch on “Chấm displayed
            “Chấm điểm”             điểm” button.       2. PC-Client Screen show
            screen                  2. Enter “Good”     message “Good”
                                    into Edittext,


                                                                                        Page 213/244
                                                                      KA Plus - Karaoke Android Plus

                                  Touch “Chấm
                                  điểm” button




Case 185
ID           Purpose              Test Procedure        Expected Output                          Result
KAPlus_185                        On KAPlus screen      1. KAP play previous song in
             Check “    ”
                                  1. Touch on           current playlist
             button in “KAPlus”
             screen               “     ” button.




Case 186
ID           Purpose              Test Procedure        Expected Output                          Result
KAPlus_186                        On KAPlus screen      1. KAP play continuouss song in
             Check “    ”
                                  1. Touch on           current playlist
             button in “KAPlus”
             screen               “    ” button.




Case 187
ID           Purpose              Test Procedure        Expected Output                          Result
KAPlus_187                        On KAPlus screen      1. KAP pause current song in
             Check “    ”
             button in “KAPlus”   1. Touch on “     ”   current playlist, “     ” button
             screen               button.               change to “        ” button




Case 188
ID           Purpose              Test Procedure        Expected Output                          Result
KAPlus_188 Check “      ”         On KAPlus screen      1. KAP play current song in

             button in “KAPlus”   1. Touch on “     ”   current playlist, “     ” button
             screen               button.               change to “        ” button



                                                                                           Page 214/244
                                                                            KA Plus - Karaoke Android Plus



    Case 189
    ID             Purpose       Test Procedure                                      Expected          Result
                                                                                     Output
    KAPlus_189 Check             On KAPlus screen                                    1. Media
                   seek sound 1. Touch on                                            player is
                   in                                                                the sound
                   “KAPlus”                                                          of change
                                 and pull.
                   screen



    Case 190
    ID             Purpose       Test Procedure                                      Expected          Result
                                                                                     Output
    KAPlus_190 Check skip                                                            1. Media
                   over a        On KAPlus screen                                    player also
                   passage in    1. Touch on                                         varies
                   current
                   song in       and pull.
                   “KAPlus”
                   screen



    IV. Detail Plan


    V. Check list
         1. Checklists of code


I - CHECK JAVA CODE
#                                                                                         Yes No NA
1
     DID YOU VERIFY YOUR CODE WITH CHECK STYLE AND FINDBUG?
2    Does the code correctly implement the design?
3    Does the code implement meet customer's requirement?
4    Are it use descriptive variable and constant names used in accord with naming

                                                                                                 Page 215/244
                                                                             KA Plus - Karaoke Android Plus
    conventions?
5   Are there variables with confusingly similar names?
6   Is it defining variables properly with meaningful, consistent, and clear names?
7   Did you remove all System.out.println()?
8   Did you remove unnecessary log information?
9   Check variables before use. Make sure that variables are not null.
10 Make sure that you have write java doc for class, method and complex source.

    2. Case and Requirement Mapping Review Checklist

Question                                                      Yes No      PASS Note               Priority
DOCUMENT CONTROL
Does test case apply correct template?                        x                       OK          High
Does the naming convention follow CM Plan?                    x                       OK          High
Verify whether document control procedures have been
followed by checking for the following:                                                           High
Is it describes clearly modification history in [Records]                             OK
sheet?                                                        x                                   High
Does it mention the corresponding version of Requirement                              OK
in [Requirement Mapping] sheet?                               x                                   High
Is the document checked Spelling and Grammar in MS                                    OK
Excel tool (F7)                                               x                                   Low
REQUIREMENT MAPPING REVIEW CHECKLIST
Do the requirement items cover all sections of the relevant                           OK
Functional Spec? (Use Cases, Views, Role & Permission,
Look & Feel, Workflow, Interface to other system)             x                                   High
Are there requirement items for app data migration?                 x                 OK          High
Are there requirement items for app performance?              x                       OK          High
Are test case reference listed out?                                 x                 OK          Medium
Are test case number filled?                                  x                       OK          Medium
TEST CASE REVIEW CHECKLIST
Requirement coverage
Is there at least one-1st priority test case for each                                 OK
requirement item in the Requirement Mapping?                  x                                   High
Is there test case for the app's general look & feel?         x                       OK          High


                                                                                               Page 216/244
                                                                      KA Plus - Karaoke Android Plus

Is there test case for the app GUI navigation?                x            OK              High
Are the test cases for each use case following the rule
below? If No, please explain the reason in Notes column                                    High
Field validation test cases for each field data type of the                OK
relevant form.                                                x                            High
You have enough functional test cases for each business                    OK
rule of the use case.                                         x                            High
Is there one security test case for each role of the system                OK
and the test case consists of functions that the role can
perform?                                                      x                            High
Do all mandatory columns are filled data?                                                  High
Requirement ID                                                x            OK              High
Test case ID                                                  x            OK              High
Test case Title                                               x            OK              High
Test Procedure                                                x            OK              High
Expected Result                                               x            OK              High
Priority                                                      x            OK              High
Type                                                          x            OK              High
Does title of test cases briefly and easy understand?         x            OK              Medium
Are common test cases (if they are used) included in the                   OK
[Comment Case] sheet?                                             x                        Low
Do the data migration test cases cover the followings:                                     High
Test case selection
Does the test case consider the cases, where a user has
several roles?                                                x                            High
Do function test cases consist of both successful and                      OK
unsuccessful cases?                                           x                            High
Other
Are you prioritizing the test cases?                                       OK              Medium
TEST DATA REVIEW CHECKLIST
Is test data prepared and baseline? If no, please give your                OK
explain in Note column                                        x                            High
Are many users for each role prepared for testing?            x            OK              High



                                                                                        Page 217/244
                                                                            KA Plus - Karaoke Android Plus
5.5. Other material (if any) (including appendix A)
APPENDIX A. TEST LOGS
A.n Log for test n
A.n.1 Test Results
A.n.2 Incident Report




F. Software User Manual
I. Installation Guide
1. Setup Server Environment

    Install Microsoft Windows 7(recommended)
    Installing follow MS Windows 7 guide
    Enable Sharing Feature:
Step 1: Enable sharing
              Right-click a drive or folder, click Share with, and then click Advanced sharing.
              In the dialog box that appears, click Advanced Sharing. If you are prompted for an
               administrator password or confirmation, type the password or provide confirmation.
              In the Advanced Sharing dialog box, select the Share this folder check box.
              To specify users or change permissions, click Permissions.
              Click Add or Remove to add or remove users or groups.
              Select each user or group, select the check boxes for the permissions you want to
               assign for that user or group, and then click OK.
              When you have finished, click OK.
Step 2: Setting Sharing
              To turn password-protected sharing on or off: By turning on password-protect sharing
               in Control Panel, you can limit Public folder access to people with a user account and
               password on your computer.
              Click to open advanced sharing settings.
              Click the chevron to expand your current network profile.
              Under Password protected sharing, select one of the following options:
              Turn on password protected sharing
              Turn off password protected sharing



                                                                                              Page 218/244
                                                                              KA Plus - Karaoke Android Plus

              Click Save changes. If you are prompted for an administrator password or confirmation, type
               the password or provide confirmation.
              Connecting Local Area Network
              Connecting to PC-clients via LAN by cable and switcher (recommended) or WLAN
               (not recommended because of speed and stable)
    Enable Last Access Updating
Solution 1:
       Open the Registry Editor (Regedit.exe).
       Browse to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem.
Look for NtfsDisableLastAccessUpdate. If it does not exist, add this DWORD and set its value to
zero, which will enable the process.
       Close the Registry Editor, and reboot the Server PC.
Solution 2: (fastest)
       Run reg key in installation package (Enable_Last_Access_Updating.reg).
       Click Yes to run registry process.
       Reboot the Server PC.

2. KAP-SS (Server Application)

       2.1. Installing KAP-SS

            Step 1: Extract KAP Installation Package to your Hard Disk Driver

            Step 2: Open KAP Installation/KAP-SS/Setup.exe , Setup Wizard will display




                                                                                                Page 219/244
                                                                 KA Plus - Karaoke Android Plus



 Step 3: Click Next to continue , Select Installation Folder display.

-   To install in defaut folder click “Next”.To install to a different folder , enter it below
    or click “Browse”.

-   Tick “Everyone” to install KAP-SS for everyone who use Server PC or “Just me” to
    install for only current user.

-   Click “Next” to next step or Back to return previous step.




 Step 4: Installation will check programe need to run KAP-SS , if need , install them
    and then click “Next” to complete process.

 Step 5: After finish installation , click “Close” to exit.




                                                                                   Page 220/244
                                                                   KA Plus - Karaoke Android Plus




2.2. Setting KAP-SS

 In order to make KAP-SS work well, after install KAP-SS, set Compatibility for KAP-SS:
     Step 1: Open KAP-SS properties: Right click to KAP-SS.exe (install folder or
        desktop), click “Properties”. “KAP-SS Properties” will display.

     Step 2: In “Compatibility” tab , tick option “Run this program as an administrator” .

     Step 3 : Click “OK” to apply this setting.




                                                                                     Page 221/244
                                                                       KA Plus - Karaoke Android Plus




3.KAPlus ( Mobile Application)

     3.1 Installing KAPlus

Solution 1 :


Step 1: Copy KAPLus Installation(KAPlus.jar) to user’s android mobile via Bluetooth , Hard Disk
transfer to Mobile Memory.
Step 2: Install KAPlus by click KAPlus.jar.
Step 3: Run KAPlus in mobile program manager.


Solution 2:
                                                                                         Page 222/244
                                                                        KA Plus - Karaoke Android Plus
Step 1 : Use Mobile Manufacture Manager Application to install KAP-SS , follow by mobile type.
Step 2: Run KAPlus in mobile program manager.
               Setting KAPlus
To use KAPlus user must connect user’s mobile to PC Client via WLAN first.

4. PC Client

       4.1 Install VLC media player

Step 1 : Install VLC media player use VLC setup package from KAP Installation Package step by
step
Step 2: Setting VLC for remote function:
Open VLC and click on Tools > Preferences. Next, select All under Show settings.




This launches VLC’s advanced settings. Now select, Interface > Main interfaces. In the Main
interfaces window select “HTTP remote control interface.”




                                                                                          Page 223/244
                                                                                 KA Plus - Karaoke Android Plus




.
    Next, launch VLC Remote on your phone. If it is able to detect your computer, the app will
automatically pick up the name of the video file that is being played. However, in my experience it
has never automatically detected my computer and I must add my IP address manually.



        4.2.Install KAP-Client

    No installation for this component.


II.User’s Guide
1. KAPlus-Server Service (KAP-SS)

        1.1. Overview

KAP-SS is a program run at server computer to create playlist for mobile application.
User can run KAP-SS by double click KAP-SS.exe icon (in folder install or desktop) .




The Main Interface



                                                                                                   Page 224/244
                                                                      KA Plus - Karaoke Android Plus




Minimized window




        1.2 Add song

Add single song to database
Step 1: From Main window , click “Thêm bài hát” then click “Từng bài” or press Alt + T combo
keys.




                                                                                        Page 225/244
                                                                              KA Plus - Karaoke Android Plus




Step 2:         Open file dialog display to choose video file to open.
- Choose “Video Files” to display all support file extension or All Files to display all files.
- Choose video file to open then click “Open” to continue or “Cancel” to cancel action.
- If video file exist in database, message box will display and action will be canceled.




Step 3 : Enter song’s information
- “Thêm từng bài” window display to enter or edit song ‘information(title , album , duration ,
description ,artist).
- Field duration “Độ dài” just be edited when it has zero value.
- “Tên Bài” cell can enter string which max length is 255.
- “Độ dài” cell can enter numeric and max length is 10 , value greater than 0 and less than
999999999.
- “Nghệ Sĩ” cell can enter string which max length is 50.
- “Mô Tả & Lời Bài Hát” cell can enter string which max length is 536870910.
                                                                                                  Page 226/244
                                                                          KA Plus - Karaoke Android Plus
-- “Thể Loại” cell can enter string which max length is 255.




Step 4: Click “Thêm” button to add this song to database or click ”Quay lại” to cancel add song.
- If action comple sucsessfully , the new song added will display below gridview place.

        1.3 Add multi songs


Step 1: From Main window , click “Thêm bài hát” then click “Nhiều bài” or press Alt + N combo
keys.




Step 2:         Browse For Folder dialog display to choose video folder to open.
- Choose folder contain songs to add.
- Click “Ok” to continue.
- Click “Cancel” to cancel action.




                                                                                            Page 227/244
                                                                                    KA Plus - Karaoke Android Plus




Step 3 : Enter individual song’s information.
- “Thêm nhiều bài hát” window display to enter or edit song’s information (title , album , duration , description
,artist).
- “Tên Bài” cell can enter string which max length is 255.
- “Độ dài” cell can enter numeric and max length is 10 , value greater than 0 and less than 999999999.
- “Nghệ Sĩ” cell can enter string which max length is 50.
- “Mô Tả & Lời Bài Hát” cell can enter string which max length is 536870910.
- “Thể Loại” cell can enter string which max length is 255.
- Select song which need to enter or modify information, click “Sửa thông tin” to start edit.
- Field duration “Độ dài” just be edited when it has zero value, another fields can be edited by validating rule.
- After editing information, click “Lưu chỉnh sửa” to save information.
- Click “Xóa khỏi danh sách” to remove selected song from add multi songs.




                                                                                                       Page 228/244
                                                                                  KA Plus - Karaoke Android Plus




Step 4: - Click “Lưu vào kho bài hát” to add all current songs to database ,click “Hủy thao tác” to cancel add
multi songs action.
- If action comple sucsessfully , the new songs added will display below gridview place.



      1.4 Enabe Auto Start Up




Tick check box “Khởi động cùng Windows” to enable or disable Auto Start Up Option.
When function was enable , when Server start , KAP-SS will auto start.



      1.5 Enable Played-Time Fuction




                                                                                                     Page 229/244
                                                                                     KA Plus - Karaoke Android Plus
Tick check box “Theo dõi số lần hát” to enable or disable played time count.
When function was enable , all added songs which store in database will be count when they played
Note: User must choose hard disk correctly, which store songs in “Thiết lập” menu bar.


       1.6 Edit Database




Step 1: Click “Hiện toàn bộ” , all songs with their information will display at main window.


Step 2: Double click to cell contain information, which need to edit to start edit. The editing process will control
by field validation:
- User can only edit “Tên Bài” ,”Nghệ Sĩ”,”Mô Tả & Lời Bài Hát” and ”Thể Loại” column.
- “Tên Bài” cell can enter string which max length is 255.
- “Độ dài” cell can enter numeric and max length is 10, value greater than 0 and less than 999999999.
- “Nghệ Sĩ” cell can enter string which max length is 50.
- “Mô Tả & Lời Bài Hát” cell can enter string which max length is 536870910.
-- “Thể Loại” cell can enter string which max length is 255.
If user enter uncorrect value, message box will shown and user must re-enter value.


Step 3: Click “Lưu cập nhật” to finish edit database or “Hiện toàn bộ” to cancel action.



       1.7 Change Config

Place to store created-playlists:




Step 1: click “Chọn” , Browse For Folder dialog will be shown.




                                                                                                        Page 230/244
                                                                                      KA Plus - Karaoke Android Plus




Step 2: Select folder to store playlists.


Step 3: Click “OK” to finish or “Cancel” to cancel action.If action finish successul , the result will displayed in
“Nơi lưu trữ các danh sách” text box.
Place to store songs




Step 1: Click “Thiết lập” , click “Nơi lưu trữ các bài hát”, Browse For Folder dialog will be shown.




Step 2: Select hard disk driver or folder where song stored.




                                                                                                         Page 231/244
                                                                                       KA Plus - Karaoke Android Plus
Step 3: Click “OK” to finish or “Cancel” to cancel action. If action finish successful , the result will displayed in
“Lưu trữ trong” text box.


Suggest Playlists Type




Step 1: Click “Thiết lập” , click “Các loại danh sách gợi ý”, “Danh sách gợi ý” window will be shown.




Step 2: Enter album name correctly to identify type of suggest playlist, each album separate by “;” sight.
Step 3: Click “Xác nhận” to update type of suggest playlists or click “Trở về” to cancel this action.


      1.8 Create All Playlist

Step 1: click “Tạo danh sách tất cả các bài”, All Playlist will be created in folder which user configure (see
Place to store created-playlists).


Step 2: If All Playlist creates successful,”ALL_PLAYLIST.xspf” file will be create in configure folder and “Tạo
danh sách tất cả các bài thành công!” message box will shown.




Step 3: If creating All Playlist false , warning message box will shown , user must check again and re run this
action.




                                                                                                          Page 232/244
                                                                                     KA Plus - Karaoke Android Plus




      1.9 Create Suggest Playlists

Step 1: click “Tạo danh sách tham khảo” , Suggest Playlists will be created in folder which user configure (see
Place to store created-playlists).


Step 2: If suggest playlists create successful,”SP_xxx.xspf” files will be create in config folder with xxx are
album name configure in “Suggest Playlists Type” Option and “Tạo danh sách gợi ý thành công !” Message
box will show.




Step 3: If creating suggest playlists false , warning message box will shown , user must check again and re
run this action.


      1.10 Auto Create Playlists

Step 1: Click “Thiết lập” , click “Nơi lưu trữ các bài hát”, “Lên lịch” window will be shown.




Step 2: Tick “Đặt thời gian tạo Playlist” Check box to enable this function.
- Choose number of day to rerun (from 1 to 30 days) at “Tạo sau”.
- Choose time to run this function at “Đặt lại”.
- “Vào lúc” text box display current setting time.




                                                                                                        Page 233/244
                                                                                       KA Plus - Karaoke Android Plus




Step 3: Click “Xác nhận” to finish config , after click , message box will display the first time it will be run.Click
“Quay về” to cancel this action.




      1.11 Exit application

Step 1 : Click “Window Close” box at Main Window or right click to KAP-SS icon at Notification Area , click
“THOAT” menu option.




Step 2: Confirm message box will display to confirm your exit , click “Yes” to exit KAP-SS , or “No” to cancel
this action.




                                                                                                           Page 234/244
                                                                         KA Plus - Karaoke Android Plus




Note:


User can minimize KAP-SS to Notification Area by click Minimize Box at KAP-SS Main Window.
In order to restore KAP-SS , right click to KAP-SS icon at Notification Area , click “HIEN” or
double click to this icon.
When KAP-SS exit or stop working, Auto Create Playlist and Count Played Time will not working.
Re-run KAP-SS to continue these function.




2. KAPlus (Mobile Application)

        2.1 Overview


KAPlus is application that runs at user’s mobile.




                                                                                           Page 235/244
                                                                          KA Plus - Karaoke Android Plus




KAPlus main interface and Icon

        2.2 Conecting

Step 1: At main interface, press menu button, connection and exit icon will display, touch “Kết nối”
icon.




Step 2: “Kết nối máy chủ” interface display, touch “Thêm máy chủ”.


Step 3 : Enter IP ,port of this PC-Client which are connecting and touch “OK” to finish or touch
“Cancel” to back to “Kết nối máy chủ” interface.




                                                                                            Page 236/244
                                                                             KA Plus - Karaoke Android Plus

      2.3 Update mobile song database

Step 1: Touch “Tìm kiếm” icon at main interface, searching song interface will display.


Step 2: Press “Menu”, option to update all playlist will display below screen.




Step 3: Touch “Cập nhật danh sách” , if current user database is updated , message “Không có danh
sách mới” will display to notice , if current user’s database is not updated , updating will
process.Please wait few seconds until message “Danh sách đã được cập nhật” display.

      2.4 Search songs and add to playlist

Step 1: Touch “Tìm kiếm” icon at main interface, searching song interface will display.


Step 2: Select song by enter search key into “Nhập thông tin bài hát” text box, if match search,
needed song will display below. When enter search key, user can clear search key by touch “Clear”
button.




Step 3: When selected song was found, touch to play it immediately or touch and keep touching
until command menu display. If user want add selected song into playlist, ignore this step, next to
step 4.




                                                                                               Page 237/244
                                                                            KA Plus - Karaoke Android Plus




Step 4: Touch “Chạy” to play selected song, touch “Thêm vào đang chạy” to add to current playlist
or “Thêm vào yêu thích” to add selected song to user favorite playlist. Press “Back” button to cancel
this action.



      2.5 Control Playing




Control 1 : In order to change song : play previous song or next song in current playlist , user can
touch “Previous” or “Next” button.


Control 2: In order to change state of current playing song: touch “Pause”/”Play” button to pause or
continue playing current song, move seek bar to seek current playing song and move volume bar to
adjust sound volume.



                                                                                              Page 238/244
                                                                             KA Plus - Karaoke Android Plus

      2.6 Control Current Playlist




Step 1: Touch current playlist “Đang chạy” icon, current playlist interface will display. The current
playing song was signed by micro sign.


Step 2: In order to change playing mode (random or song by song) , touch the match icon.


Step 3: In order to play a selected song, touch this song in this playlist or touch and keep this song,
command menu will display , touch “Chạy”.


Step 4: In order to remove a song from this current playlist, touch and keep this song, command
menu will display, touch “Xóa khỏi danh sách”, the removed song will be removed from current
playlist.




                                                                                               Page 239/244
                                                                             KA Plus - Karaoke Android Plus




Step 5: In order to remove all songs from this current playlist, press “Menu” key, command menu
will display, touch “Xóa tất cả”, all songs will be removed from current playlist.




      2.7 Using Favorite Playlist

Step 1: Touch favorite playlist “Yêu thích” icon, favorite playlist interface will display.


Step 2: In order to play a selected song, touch this song in this playlist or touch and keep this song ,
command menu will display , touch “Chạy”




                                                                                               Page 240/244
                                                                              KA Plus - Karaoke Android Plus




Step 3: In order to add a song from this favorite playlist into current playlist , touch and keep this
song , command menu will display , touch “Thêm vào đang chạy” , the selected song will be add to
current playlist.


Step 4: In order to remove a song from favorite playlist, touch and keep this song, command menu
will display, touch “Xóa khỏi yêu thích” , the removed song will be removed from favorite playlist.


Step 5: In order to remove all songs from this current playlist, press “Menu” key, command menu
will display, touch “Xóa tất cả” , all songs will be removed from current playlist.




Step7: In order to play all song in favorite playlist , press “Menu” key , command menu will display
, touch “Chạy tất cả” , all songs will be played




                                                                                                Page 241/244
                                                                            KA Plus - Karaoke Android Plus

     2.8 Using Suggest Playlist

Step 1: Touch suggest playlist “Chủ đề” icon at main interface, suggest playlist interface will
display.
Step 2: Touch playlist want to song, this playlist will be play song by song.




     2.9 Using Singer Evaluate

Step 1: Touch singer evaluate “Chấm điểm” icon at main interface, singer evaluate interface will
display.




Step 2: select mark to evaluate singer or enter comment to textbox then touch evaluate “Chấm
Điểm” button, mark and match comment or comment will display at karaoke screen.



     2.10 Control Screen (not recommended)




                                                                                              Page 242/244
                                                                           KA Plus - Karaoke Android Plus
Touch full screen “Màn hình” icon to display full screen or minimize screen. This function is
recommended using when playing not play at full screen mode.




3. KAP-Client

     3.1 Overview

KAP-Client use to be a service at PC Client to get All-Playlist files from KAP-SS and display mark
when user uses Singer Evaluate function. Because of that, KAP-Client must run if user wants to
update database of KAPlus from KAP-SS and use Singer Evaluate function. User must configure
KAP-Client one time and just need running this application.




     3.2 Find All-Playlist file

Step 1 : Run KAP-Client by double click “KAP-Client.jar”


Step 2 : Click “Tìm” button , open file dialog will display to find All-Playlist.xspf file which KAP-
SS created.



     3.3 Running KAP-Client

Step 1: Before config file path for KAP-Client , run KAP-Client


Step 2: Click “Chạy” to run this servive program , click “Dừng” to stop running this service program




                                                                                             Page 243/244
                                                                          KA Plus - Karaoke Android Plus

   3.4 Other

- Install VLC
      Obtain VLC from its homepage: www.videolan.org/vlc.
      For Windows:
       o Download the installation file to somewhere you can find on your hard drive.
       o While installing, take care during the "Choose Components" part of the installation. Its
           default is to take over displaying all of your sound and video files, which you probably do
           not want. So, when the Choose Components dialog box appears during the installation,
           scroll down to File Type Associations and uncheck it (see below).




  Double-clicking the file you downloaded will start the VLC installation process.




                                                                                            Page 244/244

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:40
posted:5/24/2012
language:
pages:244
suchufp suchufp http://
About