Академический Документы
Профессиональный Документы
Культура Документы
ACKNOWLEDGEMENT
The project has been benefited from the joint efforts of many individuals. It has been
a pleasure for us to acknowledge the assistance and contributions that were very
important and supportive throughout the project. We would like to extend our sincere
thanks to all of them.
We owe special thanks to a number of people who has devoted much of their time and
expertise without which it would have been very difficult for us to complete our
project entitled “Android Card Game”.
We would like to provide our special thanks to Dr. Roshan Chitrakar, for providing
technical support with enormous suggestions which helped us to coordinate our
project.. We would also like to thank Er. Birendra Bista, Head of Department of
Software Engineering for his valuable guidance throughout the project development
period. A special thanks goes to Nipesh Shrestha for helping in the making of App
Logo and Er. Rabindra Acharya for giving valuable suggestions for our project.
Sanjay Adhikari
Ruman Dangol
I
Android Card Game
ABSTRACT
In the fast growing field of software engineering and development and even more
rapidly growing sector of game development the future is hard to predict. We are
working with this game as our college project which is a 1 credit course and as part of
our degree we choose this type of work for doing better with development cycle,
development period, graphics, scripting, adopting new technology, animation.
In a game project, the product is a game. But and here comes the point: A game is
much more than just its software. It has to provide content to become enjoyable. Just
like a web server: without content the server is useless, and the quality cannot be
measured. This has an important effect on the game project as a whole. The software
part of the project is not the only one, and it must be considered in connection to all
other parts: The environment of the game, the story, characters, game plays, the
artwork, and so on.
Teen Patti [Show Flush] is a card game based on Android Platform which is specially
designed for the people who can utilize few minutes of their leisure time In this
project, we have used different tools like Android Studio, By this project, we will be
helping people to spend some time in game. This project will help to connect with
other people through entertainment. It can help people to play TeenPatti without
having to buy deck of cards. Furthermore, it can be played without having real
friends. It serves 4 players [android itself].
II
Android Card Game
LIST OF ABBREVIATIONS
API Application Program Interface
ER Entity Relationship
Fig Figure
FP Function Point
III
Android Card Game
Table of Contents
1 INTRODUCTION ................................................................. - 1 -
1.1 Problem Statement ..................................................................................... - 1 -
2 METHODOLOGY................................................................ - 4 -
2.1 Software Development Life Cycle: ............................................................ - 4 -
6 REQUIREMENT ................................................................ - 12 -
IV
Android Card Game
8 Testing .................................................................................. - 37 -
8.1 Testing Methods Used .............................................................................. - 37 -
V
Android Card Game
10 Conclusion ............................................................................ - 42 -
12 Bibliography ........................................................................ - 44 -
APPENDIX................................................................................. - 45 -
APPENDIX B ............................................................................. - 48 -
VI
Android Card Game
List of Figure
Figure 1: Incremental Model .................................................................................... - 4 -
VII
Android Card Game
List of Tables
Table 1: Required tools ............................................................................................. - 6 -
VIII
Android Card Game
1 INTRODUCTION
Teen Patti[1] (तीन पत्ती), meaning 'three cards' in English) (also known as flash or
flush) is a gambling card game that originated in the Indian sub continent The game,
which is actually a simplified version of poker is popular throughout south Asia.
Boats out of India call it "flush" to escape any legal negativity surrounding the game
where it is played legally.
People in order to play Teen Patti use traditional style by buying the cards and
finding the players. This type of traditional system is burdensome and takes more time
and cost. So there must be a easier system which must help us to play. So we figured
out a way to eliminate the traditional system with digital, portable, easier and simple
way to play teen Patti, our Android application called Android Card Game
(TeenPatti).
There are many android based Teen Patti games available in android play store. The
android based application lacks features regarding betting and user interaction with
the important yet unavailable to play offline.
In order to meet customer requirement, the android game should be able to support in
low space memory. And also, the interface between user and the game should be
comfortable. Android is widely used because of open source. The users can change
the system as their wish. So, game should also not be restricted.
Our project, Android Card Game (Teen Patti) is a android-based game which main
motive is to provide the entertainment and fun which allows user to spend times. This
game also provides facts about cards including tricks and history. This documentation
provides the scope and context of the project to be undertaken. It also provides a
-1-
Android Card Game
schedule for the completion of this project, including a list of all the deliverables and
presentations required.
The aim and objective of the project is to provide the good interface to play card game
as we are playing in real world. The Main goal of this project is to provide fun. After
the investigation of the data collection about the Teen Patti game, the core objective
of this projects are:
This Report describes all the requirements for the project. The purpose of this
research is to provide a virtual image for the combination of both structured and
unstructured information of our project “TeenPatti”. TeenPatti is a single-player
strategy game on the Android platform. The player will progress through levels which
require precise manipulation of the environment.
-2-
Android Card Game
The study investigates the need of a system ie. Android based Teen Patti which offers
facilities to play game similar as real world. We have tried to design the project in
such a way that user may not have any difficulty in using this application (game)
without much effort. This game can be really used by end users who have android
running devices with minimum SDK version 15. That language we use to develop this
game is mainly Java, XML for designed and SQLite for database.
-3-
Android Card Game
2 METHODOLOGY
We have planned to work following these methodologies for the application of
knowledge, skills, tools and techniques to a broad range of activities in order to meet
the requirements of our project, Android Card Game “Teen Patti”.
In this phase, analysis will be performed in order to find out the requirements of the
system. The outcome of this phase would be a SRS which is an acronym for “System
Requirement Specifications”.
-4-
Android Card Game
In this phase the SRS would be translated into the system’s design. Context Diagram,
DFD, ER – Diagram, Use Case Diagram and Class Diagram will be developed.
In this phase, coding will be done according to the design and a working system will
be developed by the end of this process. Implementation of project is done.
In this phase, the system will be tested. With each testing a list of changes to the
system developed, is suggested and the changes will be applied to the software and
the software would be delivered as a successive increment until a satisfying system is
achieved.
-5-
Android Card Game
During the development of the system, we required various tools essential for the
project. Our projected could not have been completed without these tools. Here are
some list of tools used in the project.
Tools Purpose
-6-
Android Card Game
In a game project, the product is a game. But and here comes the point: A game is
much more than just its software. It has to provide content to become enjoyable.
In the world driven by technology, Having a deck cards is not always available. Even
more, we cannot play Teen Patti alone in real life. So considering this we built a
android game to provide a infinite fun and entertainment with ease UI.
-7-
Android Card Game
3 LITERATURE REVIEW
This section consist the literature study on the Android Card game. Our project is
looking forward to entertain the user so that they can spend their time for their own.
We found various similar products that have already been developed in the Play Store.
Unlike those entire products, Our TeenPatti app provides many unique features like
taking screen shot, reading the facts about card and teenpatti itself. This app provides
the way to play game.
3.1 Review
With the improving devices and technology, Android has become very useful day by
day which is obviously going to add more expectations to the services provided by
them in the future. Even though some services might seem overwhelming and some
might seem insufficient, there will always be some areas for improvement. Hence our
project is looking forward to define all the possible services so that the user can have
good experience.
Android Studio was in early access preview stage starting from version 0.1 in May
2013, then entered beta stage starting from version 0.8 which was released in June
2014.The first stable build was released in December 2014, starting from version 1.0.
Based on Jet Brains IntelliJ IDEA software, Android Studio is designed specifically
for Android development. It is available for download on Windows, Mac OS X and
Linux and replaced Eclipse Android Development Tools (ADT) as Google's primary
IDE for native Android application development.
-8-
Android Card Game
On comparing our project with other similar games, we came to conclude with the
flowing features:
Notification Yes No No
-9-
Android Card Game
4 PROPOSED RESULT
Android Card Game “Teen Patti” will be able to provide users with the services to
play games in their own mobile. The end product will have the following end results:
- 10 -
Android Card Game
- 11 -
Android Card Game
6 REQUIREMENT
Provides user to play Teen Patti game with real world environment.
Provides user to share their best hands[cards they got] with their friends.
Provides user to view and set their own profile.
Guides user with frequently asked questions to play and learn games.
- 12 -
Android Card Game
Output to user
Soft Output Requirements
a. Winner Declaration
b. Screen shot
Interface required
Users are provided with a android interface which includes all the navigation
of the game on the main page. They can choose to play the new game and get
a real world environment like other players with certain bid amount and deck
of cards on the table and on assistant to keep their records. They can choose
either to continue play [in game it is called Chaal] or fold the cards However
User first need to provide their profile name so that it is easier to call player
with his/her name.
The user would be working with the following windows, Their functions are
also listed below:
o Game Panel
This is the main page of Game which provides the real world
environment. This layout presents the poker table and poker table
includes :
a. Assistant
b. Names of each players
c. Total pot they can used at most
d. Avatar of each players
e. 3 set of Cards for each player
f. special image to represent blind players
g. Option to fold
h. Option to choose single Chaal
i. Option to take screen shot
j. Option to show own cards
- 13 -
Android Card Game
showing the avatar [user profile image] of user along with the level and
percentage of progress to reach next level.
o About us window
It contains all the information regarding the developers and designers
of the website and is beneficial for business deals or short overview of
the creators.
User or players are first forced to provide their valid name so that it is easier to call
them. At first, players are provided 5000 bid and regularly added 50 bid per hour The
system ensure that no bid loss when playing game. Therefore each player have been
given their account with their name and avatar. Name and Bid are saved in databases
and Level and Progress are stored as cache in Shared Preferences. This will kept the
information safe from intruders as well as those who are authorized to manage
database only.
Well This project is android based games so that the first hardware requirement is the
user must have an android device. This is low space game so higher specification of
hardware is not a compulsory/
a. Processing Speed:
b. Memory:–MB or Higher and 10 MB free Space
c. input: Virtual Keyboard and touch panel or stylus
d. Output: Android device itself
e. Display: 256 SVGA display with some basic animation
- 14 -
Android Card Game
These are the minimum requirements for running the game in one’s personal android
device.
- 15 -
Android Card Game
7 System Design
Upon using the application user are provided with mainly three options namely – New
Game, Leader Board and Exit. Other than this, Use can navigate to different activity
namely: Setting, Guide, Facts, FAQ and About app. The user provide their name and
one avatar to represent the profile image. These data would be saved onto database
and game setting stored into Shared Preferences.
The saved data can later be altered if the users want to do so. Altering here means
changing names. or avatar and changing setting ie music and sound. Other than this,
The saved data like user level, user progress would not be altered by the users. They
are updated through system itself.
The descriptions of the data type that will be used in the new system are as below.
The data types are identified as following:
Integer 4 bytes
Long Standard
Double Standard
String Standard
- 16 -
Android Card Game
When any user first launches the app. S/he should have to register their profile, in
order to store these data, we have used SQLite data which is available on the android
phone, it doesnot need any external libraries.
Change Profle
SQLite SQLite
User
(Device) (Device)
Update Bid
- 17 -
Android Card Game
Use case is a list of steps, typically defining interactions between a role and a system,
to achieve a goal. The following figure shows the interactions between the roles
involved and the TeenPatti
- 18 -
Android Card Game
Stakeholders:
Alternate Flow
*a At any time System fails: (User restarts the game and send crash report)
- 19 -
Android Card Game
Stakeholders:
-User: wants to see user total bids, avatar, level, progress to reach next level
Preconditions:
Alternate Flow
*a At any time System fails: (User restarts the game and send crash report)
1. Notify User
- 20 -
Android Card Game
Stakeholders:
Preconditions:
Alternate Flow
*a At any time System fails: (User restarts the game and send crash report)
1. Notify User
- 21 -
Android Card Game
Stakeholders:
Preconditions:
Post conditions: User must have bid more that 250 bid
Alternate Flow
*a At any time System fails: (User restarts the game and send crash report)
1. Notify User
2. close the dialog box
- 22 -
Android Card Game
Stakeholders:
Preconditions:
Alternate Flow
*a At any time System fails: (User restarts the game and send crash report)
3. Notify User
4. close the app
- 23 -
Android Card Game
Stakeholders:
Alternate Flow
*a At any time System fails: (User restarts the game and send crash report)
- 24 -
Android Card Game
Stakeholders:
Alternate Flow
*a At any time System fails: (User restarts the game and send crash report)
- 25 -
Android Card Game
Stakeholders:
Alternate Flow
*a At any time System fails: (User restarts the game and send crash report)
- 26 -
Android Card Game
Stakeholders:
-System wants to keep track of user level and update it as rule of game
Alternate Flow
*a. At any time System fails: (User restarts the game and send crash report)
- 27 -
Android Card Game
A system sequence diagram (SSD) is a fast and easily created artifact that illustrates
input and output events related to the systems under discussion. An SSD shows the
particular course of events within a use case, the external actor that interact with the
system, the system acts as a black box and the system events that the actor generates.
Play game
- 28 -
Android Card Game
Change Setting
- 29 -
Android Card Game
Change Name
Change Avatar
- 30 -
Android Card Game
Capture Screen
Exit Application
- 31 -
Android Card Game
A Sequence diagram is an interaction diagram that shows how processes operate with
one another and in what order. A sequence diagram shows object interactions
arranged in time sequence. Sequence diagrams are typically associated with use case
realizations in the Logical View of the system under development. A sequence
diagram shows, as parallel vertical lines (lifelines), different processes or objects that
live simultaneously, and, as horizontal arrows, the messages exchanged between
them, in the order in which they occur.
- 32 -
Android Card Game
- 33 -
Android Card Game
- 34 -
Android Card Game
- 35 -
Android Card Game
- 36 -
Android Card Game
8 Testing
We wanted to make sure that all the elements of the developed worked functioned
properly. For this, we created a test plan for our work, in which elements such as
validation, reliability and user acceptance will be tested. The system will be tested for
normal condition, primarily.
Also the testing was carried out on different levels for a proper integration and better
functionality of the product. The different testing levels used are discussed below
- 37 -
Android Card Game
Unit testing, also known as component testing refers to tests that verify the
functionality of a specific section of code, usually at the function level. In an object-
oriented environment, this is usually at the class level, and the minimal unit tests
include the constructors and destructors. Developers usually write these types of tests
as they work on code (white-box style), to ensure that the specific function is working
as expected. One function might have multiple tests, to catch corner cases or other
branches in the code. Unit testing alone cannot verify the functionality of a piece of
software, but rather is used to ensure that the building blocks of the software work
independently from each other.
Integration testing is any type of software testing that seeks to verify the interfaces
between components against a software design. Integration testing works to expose
defects in the interfaces and interaction between integrated components (modules).
Progressively larger groups of tested software components corresponding to elements
of the architectural design are integrated and tested until the software works as a
system.
The practice of component interface testing can be used to check the handling of data
passed between various units, or subsystem components, beyond full integration
testing between those units. The data being passed and the range or data types can be
checked, for data generated from one unit, and tested for validity before being passed
into another unit. One option for interface testing is to keep a separate log file of data
items being passed, often with a timestamp logged to allow analysis of thousands of
cases of data passed between units for days or weeks. Tests can include checking the
handling of some extreme data values while other interface variables are passed as
normal values. Unusual data values in an interface can help explain unexpected
performance in the next unit. Component interface testing is a variation of black-box
testing, with the focus on the data values beyond just the related actions of a
subsystem component.
- 38 -
Android Card Game
This refers to testing for the better support of the web application to the system
specified and performance on the different systems and hardwares. This helps to get
an insight on the hardware specifications that were specified in the requirement
analysis of the project. The different testing methods and levels assure that the
quality of the product is maintained with a better performance and best level of data
security and integrity.
- 39 -
Android Card Game
- 40 -
Android Card Game
- 41 -
Android Card Game
10 Conclusion
Android Card Game “Teen Patti” is looking forward to entertain the user. Android
Card Game “Teen Patti” has interactive UI/UX. The user can use it smoothly.
Android Card Game “Teen Patti” is game made for fun. It is designed to check the
luck of the user. Android Card Game “Teen Patti” provides user to select avatar
which entertain the user.
- 42 -
Android Card Game
11 Further Extension
With some minor change to be done in the project, it will be completed in one month
with documentation and made available to the users. The future extensions for the
project are:
- 43 -
Android Card Game
12 Bibliography
[1] “Introduction of Teen Patti” [Online]. Available
https://en.wikipedia.org/wiki/Teen_patti [Accessed: 10-Oct -2016]
[3] Larman, C. (2008). Applying UML and Patterns. Pearson Education, Inc.
[Book][Accessed: 1 -Sept-2016]
[5] “Teen patti Rules and strategy to play” [Accessed on 15 Sept 2016]
http://www.octroteenpatti.com/learn-teen-patti/index.html
https://developer.android.com/training/animation/index.html
- 44 -
Android Card Game
APPENDIX A
USER INTERFACE
- 45 -
Android Card Game
- 46 -
Android Card Game
- 47 -
Android Card Game
APPENDIX B
Implementation
- 48 -
Android Card Game
bot3Run);
}
- 49 -