Background
Background
Background
Introduction
The purpose of this project is to create an interactive tool using the Visual Basic toolkit. The
report will contain background information, which summarizes the literature associated with the
application and within the area of intelligent multimedia as a whole. The analysis section of the
report will describe the user requirements, functional requirements and nonfunctional
requirements of the system and an analysis of other similar systems. This section will also
contain details of the hardware and software requirements of the system. The design section will
contain an explanation of the system architecture, storyboards of the system, which will include
all features and relevant Unified Modeling Language models. The implementation and testing
section will give a detailed explanation of how the Visual Basic toolkit was used to implement
the system and relevant testing documentation. The final part of the report contains a conclusion
which summaries the report and gives a critical analysis of the system and how it could be
developed further.
2. Background
“IntelliMedia, which involves the computer processing and understanding of perceptual input
fromat least speech, text and visual images and then reacting to it, is complex and involves
signal and symbol processing techniques from not just engineering and computer science but
The field of intelligent multimedia is concerned with the interaction between humans and
working systems. Humans can interact with systems via spoken language, movement and
1
keyboard input. Intelligent multimedia attempts to understand the context of the interaction,
Intelligent multimedia focuses on the computer processing and understanding of signal and
symbol input from at least speech, text and visual images in terms of semantic representations.
communication, auditory (words, dialogue acts, rhetorical structure) and visual (gesture, posture,
graphics). A multimodal interface is the natural extension of spoken dialogue systems where the
user can communicate with speech and gesture and in return gets multimodal output.
Visual Basic is one very powerful programming system that helps one develop sophisticated ,
graphical applications that can be run on Microsoft windows environment. Visual Basic is
actually BASIC language, which is visual in its nature. In general, Visual is the method used to
create GUI applications i.e., visual programming style involves a lot of illustrations ( graphic
entities ), rather than writing numerous lines of code to describe the appearance , functioning etc,
VB programming environment provides all the features that are required to develop a GUI
(graphical user interface ) as ready to use components . In developing such an interface, the
programmer, employees user- friendly components such as windows , menus, buttons, list boxes
etc. And the amazing thing is that the programmer does not have to write code to create and
display these components. VB 6.0 provides many more powerful features . Some prominent ones
2
It is successor of BASIC language.
Quick Development: VB offers many tools that provide a quick and easy way to develop
application.
Wizards: VB also provides many wizards that can automate tasks or even automate
coding.
ActiveX document enables the application to install and run from a web browser such as
MS Internet Explorer or Netscape Navigator. Thus, even if applications that can be run
N-Tier Architecture: A traditional client/ server model has 2 layers i.e. two tiers of
application- the client application, which requests for something and the server
application, which servers that requests , e.g.- the client application may request the
print out of report stored on disk and the server application ensures its execution.
Quick Error Detection /Correction: The VB development environment provides tools for
The Event driven model: In an event driven application, the code doesn’t follow a predetermined
path rather it executes different code section in response to events. Events can be triggered by the
user’s actions, by messages from the system or other applications, or even from the applications
itself. The sequence of these events determines the sequence in which the code executes, thus the
3
path through the application’s code or the sequence of execution differs each time the program
runs.
Interactive Environment: The application development process can be broken into 3 distinct
parts:
i) Writing.
ii) Compiling.
Unlike , traditional languages , Visual Basic uses an interactive approach to development that
With most of the languages , if you make mistake in writing your code, the error is caught by the
compiler when you compile your application. You must then find and fix the error and begin the
compile cycle again, repeating the process for each error found. Visual Basic interprets your
code as you enter it, catching and highlighting most syntax or spelling errors there and then. It’s
almost like having an expert watching over your shoulder as you enter your code.
In addition to catching error on the fly, Visual Basic also partially compiles the code as it is
entered. If the compiler finds an error , it is highlighted in your code. You can fix the error
Because of the interactive nature of Visual Basic, we will find our self running our application
frequently as we develop it. This way you can test the effects of your code as you work rather
4
2.3. “Kaun Banega Crorepati?”
The “Kaun Banega Crorepati” game show was first introduced in October 2000. The show is
currently on its fourth series.The game begins with 10 contestants who participate in the “fastest
finger first” round competing to answer a question in the quickest. The winner then goes on to
play for the Rs. 10,000,000 trying to answer 15 questions successfully, with each correct answer
giving an increase in the amount of money won. To aid the contestant with the question answers,
4 help facilities are provided known as “life lines”. These “life lines” include; “phone a friend”,
the contestant can phone a pre-selected friend to assist with the question answer, “ask the
audience”, the studio audience help by voting for the correct answer, “fifty fifty” two wrong
answers get removed; “flip a question” ;contestant can get another question in lieu of the present
question if he is not able to answer the present question . When a contestant answers a question
incorrectly they return to the last “safe zone”. The game has 2 safe zones, amounts that a
contestant can get to were the money won to that stage is banked and cannot be lost. The safe
zones are Rs. 10,000 and Rs. 3,20,000. The game concludes with the contest answering all
There is a tendency to sale and collection to the solution, even before the problem is understood.
This often leads to a software solution a wrong problem. To overcome this approach of software
development we spent a good amount of time to understand the problem.. In fact we identified
and listed all the tasks performed manually, and sorted out the tasks which can be accommodated
5
Step 1: Developing prototypes that enable a user to understand how human machine interaction
will occur:
Since the perception of the quality of software based on the perception of the friendliness of the
interface, prototyping is highly recommended. This project is basically developed for recrational
purpose not for any commercial purpose, and it has to be completed within very limited
resources and time. Moreover the need to build any prototype would have cost extra effort and
time. Moreover the need to build a prototype was not felt necessary, because we were going to
use visual basic-6 as our front end development tool which can create a user friendly
environment same as the any Windows based application and it will support all the function and
shortcut key commands supported by any other Windows based application such as Ms-Word or
Ms-Excel.
Step 2: Record the origin of and the reason for every requirement:
This is the first step in establishing trace ability back to the customer. To accomplish this task
we traced down the work flow of various activity of F&A section and interrelation between
different activities. We can summarize our findings in following flow charts which depicts the
Building data function and behaviors models provide the software engineer with three different
views. This reduces the likelihood that something will be missed and increases the inconsistency
will be recognized.
The data dictionary is a repository that contains description of all data objects consumed or
6
produced by the software. Three different diagrams surround the core. The entity relationship
diagram (ERD) depicts relationship between data object. The ERD is the notation that is used to
conduct the data modeling activity. The attributes of each data object noted in the ERD can be
described using a data object description. The dataflow diagram (DFD) serves two purposes (1)to
provide an indication of how data are transformed as they move through the system, and (2)to
depict the functions(and sub functions) that transform the data flow. The DFD provides the
additional information domain and serves as a basis for the modeling of function. A description
of each function presented in the DFD is contained in a process specification (PSPEC). Various
The state transition diagram (STD) includes how the system behaves as a consequence of
external event. To accomplish this, the STD represents the various modes of behavior (called
states) of the system and the manner in which transactions are made from state to state. The STD
serves as the basis for behavioral modeling. Additional information about I control aspects of the
software is contained in the control specification (CSPEC). Our project deals mainly with
RDBMS and does not interact much with external events, so the control aspect of our project is
not significant. We have not paid much attention to the behavioral model and have not prepared
Tight deadline may preclude the implementation of every software requirement. But there were
no such constraints in our project so we have not decided that we will implement our final
software product in one piece. It was not possible to divide the various functions in different
categories such as vital functions, essential functions, desirable functions etc. so there was no
7
prioritization of requirement in our project.
4. Analysis:
User requirements are processes that the user of the application should be able to carry out. They
are also contributing factors that are not related to application functionality like cost, time, safety
and standards. User requirements can be split into two distinct subcategories these are functional
and non-functional.
Functional requirements for the user should describe the services which the system should
provide in a general way. They should be explained in a plain language so the user can
understand them as well as the technical expert. They should include all the services the system
needs to carry out for the user and this should be down in a consistent and non – ambiguous
manner.
Non Functional requirements for the user are not directly concerned with the specific functions
of the system. Below are the requirements which our group has defined for the “Who Wants to
be a Millionaire system”.
• The user should be able to log into the system using a username.
• The user should be able to answer the question displayed by voice input in a multiple of ways.
They may answer by speaking the letter associated with the actual answer or by speaking the
answer itself.
• The user should be able to choose a life line to help them answer a question.
8
• If a user has already selected a life line they will be unable to select it again.
• The user should be able to retire with their winnings at any given time during the
game.
System requirements will describe the functionality of the system in a detailed and technical
way. System requirements should outline exactly what functional process the system must do
and detail these processes logical and highly detailed manner. System requirements can be sub-
Functional requirements for the system should describe the services which the system should
provide in a technical way. They should include all the services the system needs to carry out and
Non Functional requirements for the system are not directly concerned with the specific
9
• The system should notify the user if they answered a question correctly or incorrectly.
• The system should provide the user with three help facilities to aid them in answering the
question correctly.
• The system should generate a results report. This should be an image or a voice response which
• The system should be intelligently aware if a user answers a question wrong they will return to
the minimum amount. If a user is on any amount and answers a question incorrectly they will
return to the limit relevant to them. These are Rs.10,000 or Rs. 3,20,000.
10
11
SOFTWARE AND HARDWARE REQUIREMENT
SPECIFICATIONS:
HARDWARE:
The hardware details include the basic configuration of the computer system (i.e. all the devices
are interconnected to form a system) as well as details about the network connection, if any. The
system, on which this project has been designed, is a personal computer to the internet or the
web, as it is better known. Following are the grass root details of the system configuration: -
Personal Computer
Hardware
CPU P-IV
Keyboard Logitech
UPS 600 VA
12
SOFTWARE
During the development of the project, we need WINDOWS XP with the
following software utilities:
MS – Office.
5. Design:
Design describes the way in which a system is to be developed according to its requirements.
Preece (1994) states that “’design’ refers to both the process of developing a product, artifact or
system and to the various representations (simulations or models) of the product that are
The design stage incorporates a lot of different representations of the system that would be
particularly suitable for the specific stage. It is important for designers to remember this in that
they must understand and know how functions are available at various different stages of design.
The interface to the “Kaun Banega Crorepati” game will be designed using the VB 6.0. Graphics
and images for the game will be downloaded from the official “Kaun Banega Crorepati” game
website on the internet. The images will be imported into the VB 6.0 toolkit to create the
13
interface so the game is as realistic as possible. The images will include the question tables, the
winnings table and the life line table. All of these will be incorporated to provide a fully
functional system.
The Data Management Layer is concerned with the design and development of the game using
the VB 6.0 toolkit. The game will be programmed using VB 6.0. Through this language the game
can be manipulated to display the questions to the user and then prompting the consecutive
result.
The processing layer is the combination of the data management layer and the presentation layer
showing how these two layers interact with each other to provide a working system. The VB 6.0
toolkit was chosen as the software to develop and implement the “Kaun Banega Crorepati
game”. The game will be designed following HCI guidelines to ensure that the interface is
Through the VB 6.0 toolkit the user can request to play the game. The user can choose to either
answer the question or not or to choose a life line to aid them in answering the displayed
question. The system will display these options promptly to the user. The user will interact with
14
5.2. HCI Guidelines:
The user interface design should be one that relates to all types of users, that being novices and
knowledgeable users. A good human-computer interface should provide a good structure for
The term human-computer interaction (HCI) refers to how the user interacts with the system and
the design behind it. The central aim of HCI is to maximise performance of humans and
computers together as a system. This system is solely dependant on users so the interface has to
It is very important to abide by the HCI guidelines when designing a system. Below, each
guideline is discussed in detail and how they are implemented into this system:
• Consistency
Consistency relates to the likeness in behaviour arising from similar situations or similar task
objectives. Consistency is probably the most widely mentioned principle in the literature on user
interface design (Dix, 1998). Use of consistency will ensure that the learning will be reduced if
objects with similar functions look and behave the same. The application is laid out in a manner
that is consistent so that the user can freely and easily navigate it.
The main aim of this application was to develop an interface which allows a user to select a
contestants name and to answer as many questions as possible correctly. The dialogue used
throughout the interface is simple and natural. The application uses WYSIWYG properties. For
example, if the user wishes to select the username “Kiera” they press the appropriate button on
the screen.
15
• Flexibility and Control
Flexibility refers to the multiplicity of ways the end-user and the system exchange information.
The system is designed to be suitable for novice users as well as more advanced users. The user
decides if they want to answer a question or not, they also have the option to select a lifeline.
• Explicit Structure
Each page contains the relevant information that the user requires. This prevents “bloatware” and
promotes ease of use for the user. The interface is very easily navigated, it does not contain too
much information nor too little. Both cases would cause the user to spend considerable time
either scanning through a cluttered screen or numerous screens of information (Preece et al,
1994).
The system also contains error prevention, when the user ends the game they are asked whether
or not they wish to play the game further. If they wish to proceed they press the ‘Next Question’
button or if they decide they want to exit the application they press the ‘Exit’ button.
The system contains a well documented help file on how to use the application and the option to
6.1. INTRODUCTION:
This document aims at defining the overall software requirements for “Kaun Banega Crorepati
Game Show”. The layout and interface designed is very pleasant and care is taken to include all
16
the functionalities as close as possible. After login the contestant is asked a series of general
knowledge questions consistently rising in difficulty with every question. Each question has four
options with only one correct answer. The contestant wins a certain amount of money with each
correct answer, and may choose to give up and retain the money they have already won if they
The money won after each question is roughly doubled from the previous amount won,
exponentially increasing the amount won after each correct answer until the contestant reaches
the final question, after which they win the maximum prize.
The whole Game Show is divided into three stages and after completing a particular stage the
contestant is guaranteed to win that minimum amount which is allotted to that particular stage
even after he goes wrong for any question in the succeeding stage. Stages are divided according
to difficulty levels , the first being easiest and last being toughest. Efforts have been made to
define the requirements exhaustively and accurately. The final product will be having only
additional features, a formal change request will need to be raised and subsequently a new
6.1.1 PURPOSE:
This specification document describes the capabilities that will be provided by the software
application “Kaun Banega Crorepati”. It also states the various required constraints by which the
17
system will abide. The intended audience for this document is the development team, testing
6.1.2 SCOPE:
The software product (Game Show) “Kaun Banega Crorepati” which shows integration of login
and information display modules into one application. In this application, if the user is valid then
it enters successfully in order to play the game otherwise he can only watch the game
proceedings. The central repository of all records helps Oraganizer (administrator) to add new
questions ,delete previously asked questions easily and helps in reductions any anomalies and
redundancy.
6.1.4 REFERENCES:
6.1.5 OVERVIEW:
The rest of this SRS document describes the various system requirements, interfaces, features
The system requests that the administrator to enter his/her name, password.
18
The administrator enters his/her name, password.
The system validates the entered name, password, logs the actor into the system.
If in the basic flow, the actor enters an invalid name, password , the system displays an
error message. The actor can return to the beginning of the basic flow.
A Game Show has to be developed that can be used to conduct Kaun Banega Crorepati
Game Show.
The person who has to play the game can register himself and play.
As the game proceeds the result of the amount won by him will be continuously
19
6.2.1 PRODUCT PERSPECTIVE:
None
(i) There will be a label to display the total amount won as the game proceeds.
(ii) A login screen for entering username, user_id, password will be provided.
(iii) There will be an interface for adding new question at any specific level, deleting data
20
6.2.1.3 HARDWARE INTERFACES:
Screen resolution of at least 1024 x768- required for proper and complete viewing of screens.
CPU P-IV
Keyboard Logitech
3. MS – Office.
None
At least 64 MB RAM and 2 GB space on hard disk will be required for running the application
21
6.2.1.7 OPERATIONS :
1. Play Game
6. Exit
NONE
Accessing the questions in the database according to the level at which the game is going.
22
Naïve users can also handle the system if they are made friendly with the interface.
6.2.4 CONSTRAINTS :
Interface is in English
The login and the password is assumed to be “admin”. There is also an option for sign up.
Not required.
This section contains the software requirements to a level of detail sufficient to enable designers
Functional Requirement no 1:
Input : Question with four choices and entry for right answer by checking it.
Processing : validation checks are performed on the input question by the user like :
23
3. message box must prompt “Record Added Successfully”
After validating when submit button is pressed the data gets stored in the database .
Functional Requirement no 2:
Input : Question with four choices and entry for right answer by checking it.
Processing : validation checks are performed on the input question by the user like :
After validating when submit button is pressed the data gets stored in the database .
Functional Requirement No 3:
Input : Question with four choices and entry for right answer by checking it.
Processing : validation checks are performed on the input question by the user like :
24
2. No special symbols are allowed in questions or answers.
After validating when submit button is pressed the data gets stored in the database .
Functional Requirement No 4:
Processing : After clicking the particular record is deleted from the database.
Functional Requirement No 5:
Processing : After clicking the particular Question and associated record in answer
Functional Requirement No 6:
25
Output : End of Game
Functional Requirement No 7:
Processing : After entering the required information the various validation checks are
performed on submission of the information the updations are made to the database.
Output : The updated information is reflected in the stored database and the new
Functional Requirement 8:
Input : none.
Processing : on clicking the play game comand the system loads the game.
Functional Requirement no 9:
Introduction : AdminLogin
26
Processing : After inputting data validation checks on various fields is performed .
Output : on submission of the information the updation mode is available for the
administrator.
6.4.Performance requirements :
The system must produce correct results for all the queries made at any time.
6.6. Attributes :
It is imperative that database should be always up when put into the product. During period of
intense activities like submission and verification and updation of data, back up should be taken.
It will help to minimize downtime in case of failure. Any abnormal operations shall result in the
But as our system is standalone and does not perform complicated tasks and not much hard to
built again so its not imperative to take a backup for this small system.
6.6.2 Security:
The database should be protected physically by having server (if its not a stand alone system)
located in an enclosed and guarded facility. Virus scanning software should be installed to
protect from viruses. The server should be installed under firewall so that server only internal
27
users can access it.. There should be terms and conditions and a check on the content added by
6.6.3 Maintenance:
New additional features can be added if required and also the system components i.e. memory,
disk, drives shall be easily serviceable without much alteration in the code.
7.1. login
This use case describes how the user logs into the game show.
7.1.2. Actors
Admin, user
This use case starts when the actor wishes to login to the game.
(i) System requests that the actor enter his/her name and password.
(iii) System validates name & password, and if finds correct allow the actor to
28
If in the basic flow, the actor enters an invalid name and/or password, the system
displays an error message. The actor can choose to either return to the
beginning of the basic flow or cancel the login, at that point, the use case ends.
None
7.1.6 Post Conditions : If the use case is successful, the actor is logged into the system. If
None
7.2.2 Actors :
contestant/player
The player will provide information about his name, id, password.
29
Invalid role:If the user is registering himself for more then one time then error
7.2.6 Post-conditions :
None
This use case allows the Admin to update the database of the system
7.3.2. Actors
Admin
This use case starts when the Admin wishes to update the database. Administrator
can edit the database directly at back end and then deploy/run the application for
Invalid username/passwod
30
7.3.6. Post conditions.
None.
The actor can add question to database at run time using this use case.
7.4.2 Actor
Administrator
b. Actor fills the required fields and then submits the data.
Invalid role:
If the user is not an Administrator, then he will not be redirected to the login page.
If the administrator entered the question that already exists then the system will
If the administrator left blank the text boxes that are mandatory to be filled by
him then the system will remind to fill the respective detail through a message.
7.4.5 Precondition
31
All the fields must be appropriately filled
None
The actor can play game through the application and view his performance
through result.
7.5.2 Actor
user
a. The actor will go to the welcome page and start playing the game.
b. After giving answer to the questions, actor will submit the question and result will
be shown
Invalid username/password
32
If in the basic flow, the actor enters an invalid name and/or password, the system
displays an error message. The actor can choose to either return to the beginning
of the basic flow or cancel the login, at that point, the use case ends.
7.5.5 Precondition
None
The administrator can delete the records in which already asked questions are there. This
use case starts when the actor wishes to delete a specific question from the database.
7.6.2 Actor
Administrator
d. Actor must also delete the the corresponding answer table to that question.
33
Invalid role:
If the user is not an Administrator, then he will not be redirected to the login page.
7.6.5 Precondition
None
7.7. EXIT :
This use case allows the actor to to log out of the updation mode /playing mode in
the application.
7.7.2 Actors
There is only one actor (administrator) which interacts and participates with this
use case.
This use case starts when the actor wishes to go out of the updation mode/playing
mode.
When the user selects the exit option , the updation mode in which the
None
34
7.7.5 Special requirements
None
7.7.6 Pre-condition
7.7.7 Post-condition
If the use case was successful, the updation mode is terminated. Otherwise,the
None
Information System and also used for the visualization of the data processing. In the late 1970s
Data-flow diagrams (DFDs) were introduced and popularized for structured analysis and design
(Gane and Sarson 1979). DFDs show the flow of data from external entities into the system,
showed how the data moved from one process to another, as well as its logical storage.
Representantion of an example of a DFD is using the Gane and Sarson notation. The Data flow
Diagram shows the flow of data. It is generally made of symbols given below:
35
4. An arrow shows the data flow.
5. The DFD can be up to several levels. The 0 level DFD states the flow of data in the
6. The first level DFD show more detail, about the single process of the 0 level DFD
7. The second level DFD can show even more details and so on.
Level 0 DFD
36
37
Quiz Result
38
9.ENTITY RELATIONSHIP DIAGRAM:
three different types of information. Boxes are commonly used to represent entities. Diamonds
are normally used to represent relationships and ovals are used to represent attributes.
Examples: Consider the example of a our project “Kaun Banega Crorepati” and its database. The
ER diagram shown in the image below contains two entities -- user and Game. There is a single
"Plays" relationship. In our example there are many attributes associated with each entity. User
have user_id, user_name, passoword, game_id and game have game_id and category. In a real-
world example, each one of these would likely have many different attributes.
39
THE Entity –Relationship Diagram
1 plays
User 1
Game
Game_id User Name
Email
1
Generate
Game questions
Ques_id
Question
Question Table
Answer
Option1 Option 4
Option 2 Option 3
40
10. Use Case Diagram :
Use Cases, also called ‘user scenarios’, can provide a useful way of documenting:
In UML, use cases are represented with a Use Case diagram. Within the diagram, a Use Case is
represented by an ellipse with the name of the use case below this. A number of Use Cases are
connected with various user/actors in the diagram with an interaction arrow. These diagrams are
Enterprise Edition.
The Use Case diagram, as shown represents what actions are taken by the user within the
working system.
41
Kaun Banega Crorepati Use Case
42
43
11. Sequence Diagrams :
Sequence diagrams can be drawn at different levels of detail and also to meet different purposes
at several stages in the development life cycle. Sequence diagrams show the sequence of
interactions between objects that are arranged in a time sequence, and an actor usually initiates
these interactions.
The select contestant sequence diagram, as shown in the figure below represents what actions are
The answer question sequence diagram represents what actions are taken by the user when
answering a question.
The select life line sequence diagram represents what actions are taken by the user uses a lifeline
The terminate game sequence diagram, represents what actions are taken by the user when they
44
45
46
47
Terminate Game Sequence Diagram
The implementation phase involves translating the logical design of the system as laid down in
the design phase into an actual working “Kaun Banega Crorepati” game that should fulfill the
48
12.1. How the system was implemented :
The system was implemented using the VB 6.0 toolkit to create a version of the “Kaun Banega
Crorepati” game show. The system is comprised of images taken from the online version of the
game. The user interacts with the application via Graphical User Interface. A map of the working
The system was implemented using MS Access Database and connecting it with the application
using ADODB (Active Data Objects Database) connectivity. This contains list of the questions,
1). The application consists of a non-sequential motion whereby all the questions stored in the
49
When the application runs initially the user is prompted to register himself. After the user
successfully selects a username a message is prompted to the user welcoming them to the
system. A question screen is displayed, the system prompts to the user the three available
options; Answer a question, Quit or select a lifeline. If the user chooses to answer the question
they prompt the relevant answer choices to the application. The user will be informed if they
have answered correctly or incorrectly. If the user answers incorrectly the game will terminate, a
total winnings amount appears and they will be asked if they wish to play again. If they answer
correctly a running total is displayed and another question is asked. If the user decides not to
answer the question a total winnings amount is displayed and they leave the game. If the user
decides to use a life line an image is displayed containing the three lifelines; 50:50, phone a
friend and ask the audience. The user also has the option to answer the question and not use a life
line. If the user selects the “50:50” option the question screen is re-displayed containing only two
answers. The user then prompts the relevant answer to the system. If the user selects the “phone
a friend” option an audio recording of a telephone conversation is played. The user then prompts
If the user selects the “ask the audience” life line an image is displayed containing a bar chart of
the answers given by the audience. The user then prompts their answer to the system. It does not
need to be the answer provided by the audience. If a user uses any of the life lines provided and
they answer correctly, a running total appears and then a new question is asked, if they answer
incorrectly the game terminates, a total winnings amount is displayed and the user is asked to
leave.
50
12.2. Testing Documentation :
Testing has a dual function within a system. It is used to ascertain the presence of defects in a
system and it is used to help judge whether or not the system is usable. The testing process can
demonstrate the presence of errors but can not show that there are no errors within the system.
Within this different testing techniques will be discussed and the preferred testing method for the
Black Box
Black box testing is defined by Sommerville as “testing which relies on the specification of the
system or component which is being tested to derive test cases” (Sommerville, 2001, p.466). The
system is a ‘black box’ in that the internal workings of the item being
tested are not known to the tester. The tester will only know the inputs to the system and the
expected outcomes, but will not know how the system arrives at those outcomes.
White box testing is a method which requires the tester to have explicit knowledge of the internal
workings of a system. Sommerville cites that “the tester can analyse the code and use knowledge
(Sommerville, 2001, p.471). In this case the tests are only accurate if the tester knows what the
Unit Testing
Testing of the Kaun Banega Crorepati game was carried out following the Unit Testing
methodology. Each individual function of the system was thoroughly tested and evaluated to
ensure that the working system meets user requirements. Sommerville (2001, p.449) states that
51
“individual components are tested to ensure that they operate correctly. Each component is tested
Test Plans
The test scripts for the Kaun Banega Crorepati game are written to satisfy the unit testing
method. The aim of these scripts is to find out if the system meets its specification which is
outlined in the specification. This section will discuss the test plans that have been created, the
expected result from the test plans and the actual result achieved.
Synopsis
This document details the specific tests that are to be executed against the Kaun Banega
Purpose
To set out a strict set of tests which are to be executed against the Kaun Banega Crorepati game,
in order to ensure it functions as it should. The tests will define a structured means of unit testing
Intended Audience
Purpose
The purpose of this test plan is to provide a reference for the Kaun Banega Crorepati game or
developer when testing the Kaun Banega Crorepati game. It provides a structured set of tests that
52
Scope
This document will cover all tests that should be executed against the Kaun Banega Crorepati
game Environment. Kaun Banega Crorepati game is developed by the VB 6.0 toolkit running on
Windows 2000 Professional or Windows XP Professional. When the project is running it can be
Load Game:
Login Screen:
Ref. Purpose Test Data Expected Actual Date Comment
Result Result
1. Test Click on System As 8/12/2010
Username relevant prompts a Expected
Login username Welcome
button message
Question Screen:
Ref. Purpose Test Data Expected Actual Date Comment
Result Result
1. Test Answer System As 8/12/2010
Questions relevant displays
question Total Expected
displayed Winnings
stating A , Screen
B,C or D.
53
2. Test Answer System As 8/12/2010
Questions question displays
displayed Running Expected
stating the Totals
actual Screen
answer
displayed
LifeLine Screen:
Ref. Purpose Test Data Expected Actual Date Comment
Result Result
54
winnings question displays Expected
MsgBox correctly updated
displays total of
correctly cash won in
the running
Label
55
SCREENSHOTS
AND
CODING
56
Login Form:
57
connectdb
End Sub
58
Welcome Form
59
deletedata.Hide
iiirdlabelquestion.Hide
iindlabelquestion.Show
user.Hide
welcome.Hide
mainkbc.Hide
End Sub
60
Question 1
Coding:
Dim question1 As String
Dim a As String
Dim b As String
Dim c As String
Dim d As String
Dim n As Integer
Dim ql As Integer
Dim s1 As Integer
Dim ano As Integer
Dim ans As String
Dim amount As String
Dim counter As Integer
Dim mav As String
Dim waav As String
Dim wav As String
61
c1.Value = 0
c3.Value = 0
c4.Value = 0
End Sub
62
Case 2:
mav = "0"
waav = "1,000"
Label13.BackColor = &HFF&
Label12.BackColor = &HC0E0FF
amount = "2,000"
Case 3:
mav = "0"
waav = "2,000"
Label14.BackColor = &HFF&
Label13.BackColor = &HC0E0FF
amount = "3,000"
Case 4:
mav = "0"
waav = "3,000"
Label15.BackColor = &HFF&
Label14.BackColor = &HC0E0FF
amount = "5,000"
Case 5:
mav = "0"
waav = "5,000"
s1 = 2
Label16.BackColor = &HFF&
Label15.BackColor = &HC0E0FF
amount = "10,000"
Case 6:
Command6.Enabled = True
mav = "10,000"
waav = "10,000"
Label17.BackColor = &HFF&
Label16.BackColor = &HC0E0FF
amount = "20,000"
Case 7:
mav = "10,000"
waav = "20,000"
Label18.BackColor = &HFF&
Label17.BackColor = &HC0E0FF
amount = "40,000"
Case 8:
mav = "10,000"
waav = "40,000"
Label19.BackColor = &HFF&
Label18.BackColor = &HC0E0FF
amount = "80,000"
Case 9:
mav = "10,000"
waav = "80,000"
Label20.BackColor = &HFF&
Label19.BackColor = &HC0E0FF
amount = "1,60,000"
Case 10:
mav = "10,000"
63
waav = "1,60,000"
s1 = 3
Label21.BackColor = &HFF&
Label20.BackColor = &HC0E0FF
amount = "3,20,000"
Case 11:
mav = "3,20,000"
waav = "3,20,000"
Label22.BackColor = &HFF&
Label21.BackColor = &HC0E0FF
amount = "6,40,000"
Case 12:
mav = "3,20,000"
waav = "6,40,000"
Label23.BackColor = &HFF&
Label22.BackColor = &HC0E0FF
amount = "12,50,000"
Case 13:
mav = "3,20,000"
waav = "1,250,000"
Label24.BackColor = &HFF&
Label23.BackColor = &HC0E0FF
amount = "25,00,000"
Case 14:
mav = "3,20,000"
waav = "2,500,000"
Label25.BackColor = &HFF&
Label24.BackColor = &HC0E0FF
amount = "50,00,000"
Case 15:
mav = "3,20,000"
waav = "5,000,000"
Label25.BackColor = &HFF&
Label24.BackColor = &HC0E0FF
amount = "1,00,00,000"
Case Else
amount = 0
End Select
totallabel.Caption = amount
Text8.Text = amount
Text9.Text = ans
Text10.Text = playernamelabel.Caption
con.Execute ("insert into qans values('" + Text1.Text + "','" + Text8.Text + "','" + Text9.Text + "','" + Text10.Text +
"')")
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
c1.Value = 0
c2.Value = 0
c3.Value = 0
c4.Value = 0
64
Else
Label28.Caption = "Your Amount is: " & mav
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
Text4.Enabled = False
Text5.Enabled = False
c1.Enabled = False
c2.Enabled = False
c3.Enabled = False
c4.Enabled = False
End If
eend:
End Sub
Select Case s1
'....................Ist Lable.......................
Case 1:
Text7.Text = "Ist"
Set rs = con.Execute("select *from Istlabel")
Do While (Not rs.EOF)
Text6.Text = rs(0)
If (Text7.Text = rs(5)) Then
n=0
Set rs1 = con.Execute("select question from qans")
Do While (Not rs1.EOF)
If (Text6.Text = rs1(0)) Then
65
n=1
End If
rs1.MoveNext
Loop
If (n = 0) Then
Text1.Text = rs(0)
Text2.Text = rs(1)
Text3.Text = rs(2)
Text4.Text = rs(3)
Text5.Text = rs(4)
End If
End If
rs.MoveNext
Loop
'.............................IInd Lalel...................
Case 2:
Text7.Text = "Iind"
Set rs = con.Execute("select *from Istlabel")
Do While (Not rs.EOF)
Text6.Text = rs(0)
If (Text7.Text = rs(5)) Then
n=0
Set rs1 = con.Execute("select question from qans")
Do While (Not rs1.EOF)
If (Text6.Text = rs1(0)) Then
n=1
End If
rs1.MoveNext
Loop
If (n = 0) Then
Text1.Text = rs(0)
Text2.Text = rs(1)
Text3.Text = rs(2)
Text4.Text = rs(3)
Text5.Text = rs(4)
End If
End If
rs.MoveNext
Loop
'............................IIrd Lable....................
Case 3:
Text7.Text = "IIIrd"
Set rs = con.Execute("select *from Istlabel")
Do While (Not rs.EOF)
Text6.Text = rs(0)
If (Text7.Text = rs(5)) Then
n=0
Set rs1 = con.Execute("select question from qans")
Do While (Not rs1.EOF)
66
If (Text6.Text = rs1(0)) Then
n=1
End If
rs1.MoveNext
Loop
If (n = 0) Then
Text1.Text = rs(0)
Text2.Text = rs(1)
Text3.Text = rs(2)
Text4.Text = rs(3)
Text5.Text = rs(4)
End If
End If
rs.MoveNext
Loop
Case Else
MsgBox ("Game is Complete")
End Select
End Sub
67
If (a = "True") Then
c3.Visible = False
c2.Visible = False
Text4.Visible = False
Text3.Visible = False
End If
If (b = "True") Then
c1.Visible = False
c4.Visible = False
Text2.Visible = False
Text5.Visible = False
End If
If (c = "True") Then
c1.Visible = False
c2.Visible = False
Text2.Visible = False
Text3.Visible = True
End If
If (d = "True") Then
c3.Visible = False
c2.Visible = False
Text3.Visible = False
Text4.Visible = False
End If
End If
rs.MoveNext
Loop
Command7.Enabled = False
End Sub
End Sub
68
s1 = 1
counter = 0
Label11.BackColor = &HFF&
amount = "0"
End Sub
Question
69
Right Answer
Next Question :
70
Phone A friend
Coding:
Dim i As Integer
Private Sub Form_Load()
i=0
Label2.Caption = "Time: " & i
End Sub
End If
Label2.Caption = "Time: " & i
End Sub
Audience Poll:
71
72
Audience Poll with data:
Coding
Dim i As Integer
Fifty-fifty
73
Flip Question
Game Over:
74
Quit Game:
Add User
75
Coding:
Private Sub Command1_Click()
Dim userid As String
Set rs = con.Execute("select uid from useraccount")
While (Not rs.EOF)
If (Text2.Text = rs(0)) Then
userid = rs(0)
End If
rs.MoveNext
Wend
If (Text2.Text = userid) Then
MsgBox ("Duplicate User")
Else
con.Execute ("insert into useraccount values('" + Text1.Text + "','" + Text2.Text + "','" + Text3.Text + "')")
MsgBox "Record Added successfully", vbInformation, "KBC User"
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
End If
76
End Sub
77
Add Question At level-1
Coding
Dim a As String
Dim b As String
Dim c As String
Dim d As String
Dim ql As String
End Sub
78
End Sub
End Sub
Text1.Text = ""
79
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
c1.Value = 0
c2.Value = 0
c3.Value = 0
c4.Value = 0
End If
nn:
eend:
End Sub
End Sub
80
Add Question At Level -2
CODING :
Dim a As String
Dim b As String
Dim c As String
Dim d As String
Dim ql As String
End Sub
81
c1.Value = 0
c3.Value = 0
c4.Value = 0
End Sub
End Sub
82
MsgBox "Record Added successfully", vbInformation, "KBC IInd Label"
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
c1.Value = 0
c2.Value = 0
c3.Value = 0
c4.Value = 0
End If
nn:
eend:
End Sub
End Sub
83
Add Question At Level-3 :
CODING :
Dim a As String
Dim b As String
Dim c As String
Dim d As String
Dim ql As String
End Sub
End Sub
84
Private Sub c3_Click()
c2.Value = 0
c1.Value = 0
c4.Value = 0
End Sub
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
85
Text4.Text = ""
Text5.Text = ""
c1.Value = 0
c2.Value = 0
c3.Value = 0
c4.Value = 0
End If
nn:
eend:
End Sub
End Sub
86
13. Conclusion:
This section will detail whether initial objectives of the project were met and will suggest any
future recommendations for the system, The background section discussed the area of intelligent
multimedia and the VB 6.0 toolkit which was used to implement the system. The tool command
language was introduced and discussed as well as an introduction to the Kaun Banega Crorepati
game.To fully implement a successfully system it was necessary to find out what the system
should require. Functional and non – functional user and system requirements were detailed.
These requirements showed what the user and system should be able to do and were specified in
the requirements specification. Use case, sequence diagrams and descriptions were used to
In the design of the “Kaun Banega Crorepati” game, a storyboard was designed to show the
initial layout of the interface to be developed and the HCI guidelines which were examined.
The implementation of the “Kaun Banega Crorepati” game was carried out using the VB 6.0
Toolkit. This software was chosen as the implementation tool as the toolkit is used throughout
the Intelligent Multimedia module and is and effective tool to use to demonstrate GUI
interaction. The system was implemented with the use of images extracted from the “Kaun
Banega Crorepati” online game. Testing of the system was carried out using the Unit Testing
methodology. Each function of the system was taken in turn and tested. During the testing of the
87
14. References :
McGraw-Hill
Multimodal Systems.
88