TREASURE HUNT by yaoyufang


									         Treasure Hunt

          Developed for

        Dr Richard Schoech

       School of social work,

The University of Texas at Arlington

          Software team

            Parth Bhave

       Aniruddha Deshpande

        Chirayush Agarwal

           Sohil Bhayani

        Prathamesh Bongale
1) Requirements gathering
  Meeting 1 – 10/20/2006

 Stakeholder interview with Dr. Schoech

1) What is the purpose of this game?

 To go beyond imparting knowledge about substance abuse and inculcate an attitude
against substance abuse among users.

2) Can you describe the user profile?

13 to15 years and 16-18 years age.

3) Can you please describe your ideas for such a game?

We want a website based game. We have some previous games developed in Flash. (Dr
Schoech gave us a few sample game format from his project website. We were told that
we could come up with our own format.)

4) Can you show us some sample games?

We were shown a game from the existing website After choosing the
age group, sex and theme, the game flashed a sequence of questions and scored the

5) Where do the questions come from? Do we have to generate them?

We have a database of relevant questions. You do not have to generate the questions.

6) Which database is it? Can you give us a sample of the database?

We are using MS Access.

7) Can we talk to anyone else regarding technical issues?

You can talk to my GRAs Gokul and Sagar. (They were both present for the meeting).


Gokul –
Sagar –
7) Any other things about the database?

We want it to be a “shell”. We must be able to add, delete or modify questions without
changes to the game format. We have used Java or Flash for previous games. Gokul
added that the database has to use ASP.

8) Should it be a downloadable game?

No. It should be played directly on the website.

9) Should it be multi player?

We would be fine with single player game.

10) Any other issues to discuss?

Dr Schoech wanted net IDs of our team members to allocate us a sub web (web space) on
his project website.

11) When can we meet next?

Preferably, you should contact me or my GRA by email.

Decisions taken and tasks to follow

1) We will follow an incremental model. Solicit among team members nature of model
(period and deliverables) and explain to customer.

2) Develop a game idea

3) Follow up on acquiring connectivity code

4) Examine the sample database

5) Send netIDs to Dr Schoech
2) Game idea
 The game will have a treasure-hunt theme. Initially, a world map will appear. A
scrambled geographical clue will be shown alongside. If the user answers the question
right, the clue gets unscrambled and the map will change to show a lower level of
abstraction (continent, for the first question) For every question answered correctly, the
map will show a subsequent lower level (the lowest being a country with a few dots
representing main cities within it - one of the cities has the treasure The geographic clue
is unscrambled if the player answers the question right - this will ensure that the player's
knowledge of geography is not tested but his theme related skills (for e.g., refusal skills
are tested). The game will continue until the user has reached the city with the treasure -
this happens when all clues are unscrambled to finally give the correct city. Alternatively,
the user can quit the game anytime by closing the browser window or going to some
other page.

Initially the user will be given three lives i.e. on answering the question wrong, he will be
asked another question and he is allowed to answer at most three questions wrong.

 If the player reaches the city with the treasure he will have an opportunity to print a
certificate with his nickname on it.
3) Requirements specification
Date – Nov 3 2006

The game format was presented to Dr Schoech. Changes suggested and agreed upon are
documented below:

1) Clues can be related to any subject – not only geography.

The clues will be developed by the customer except for those required for test purposes.

There are two types of answers in this game as explained below

   a) Answers to game questions. Any such answer is selected (only one choice is to be
      selected from among 5 choices given for each question) by the game player. The
      question here refers to an addiction related or any other social work related
      question through which the customer wants to impart knowledge to the player.
      Each instance of a game play will have 10 questions. The questions flashed will
      be related to the game theme itself, for example “refusal skills” is a theme. The
      player will be allowed to choose the theme at the start of the game from among
      the options (how many) given. Each question will have multiple choice answers
      (5 choices) – one of which must be chosen. The customer may modify the content
      (not schema) of the database in order to make content changes, that is, insert,
      delete or modify questions or answers. Any tool for making database
      modifications will not be developed by this software team. The game must work
      independent of any content changes made to the database content.

       These questions and their multiple choices for respective answers will be
       developed by the customer except for those required for test purposes. The
       questions and their multiple choice answers will be stored in an MS Access
       database which will be developed and provided by the customer.

   b) There will be a series of 10 clues for each instance of a game play. Each clue is
      linked to (related to the subject of – the name or a description of the subject to
      which a clue belongs need not be stored) a particular “answer” and consists of a
      text and a picture. The answer here is different from that defined in a). An answer
      of this kind would be “cat”. Related clues could be

   - a picture of green eyes of a cat with the text “eyes of the animal”

   - a picture of the tail of a cat with the text “tail of the animal”

   There would be 10 such clues for every answer (answer as defined here in b)). These
   clues would logically lead to the answer (as defined here in b). In the above example,
   the eyes, tail and other aspects related to a cat form the 10 clues. By looking at them
   in a sequence, the player may be able to guess the answer “cat” depending on the
   player‟s intelligence and knowledge.

   This answer, if and when guessed correctly by the player, will mean that he wins the
   game without answering any further (question defined in a)). This answer will be
   chosen randomly by the game software at the beginning of the instance of the game
   play and will be unknown to the player till either he guesses it correctly or it is
   displayed after all (questions as defined in a)) have been answered correctly.

   The picture dimensions for every clue are fixed (150X150 pixels) and the same for
   every clue. The answer as defined here in b) is a string – may have multiple words
   consisting of alphabets – may include both upper and lower case – words may be
   separated by spaces – the maximum number of characters is 30.

   When the game starts, each correctly answered question (question and answer as
   defined in a) pops up a new clue and a new question (as defined in a). When the
   sequence of (all 10) clues for the answer (as defined here in b) is exhausted, the
   answer (as defined here in b) is displayed and the game ends. The answer and clues
   (as defined here in b)) will be developed by the customer except for those required for
   test purposes and will be provided to the software team in an MS Access database.

2) Throughout the game, there will be a text field on the screen, which will allow the
player to type in a guess for the answer (defined in b) in 1)), based on clues displayed or
otherwise. If the answer is guessed right, the game ends with the player winning. The text
field will restrict the user to enter the answer in the format for the answer defined in 1) b)

3) The player is given 3 lives at the start of the game – he is playing one of the lives –
so he has 2 extra lives. Whenever a question is answered wrong, one life is deducted and
a new (extra) question is flashed. Whenever all 3 lives are exhausted, the player loses the
game. Hence, when the 3rd life is exhausted, no extra question will be flashed – the game
will be lost. Hence the player can get at the most, 2 extra questions.

 4) The clues will be related to the answer that will end the game. This answer is
different from the answer that the player selects from among multiple choices for each
question. An example of this answer is “cat” as explained in b in 1)

 5) The game starts with asking the player for a nickname, his age group (one among
13-15 or 16-18) and sex. Nickname can be a string – may have multiple words consisting
of alphabets – may include both upper and lower case – words may be separated by
spaces – the maximum number of characters is 30. The nickname will be processed to
ensure that it is not among any of the words in the database of profane words. The
profane words database will be provided by the customer in MS Access format. The age
group and sex determine the questions being flashed. The nickname will be stored if the
user makes a high score, along with the high score in an MS Access database. Along with
the nickname, age group and sex, the user will also be asked to choose one from among ?
themes. The questions flashed will only be those for that game theme. The game theme to
which a question belongs, will be stored by the question – answer database as defined in
1), by the customer and will be provided to the software team in an MS Access database.

 6) The top 10 high scores and the nicknames of the players who scored them will be
stored in an MS Access database by the game software.

7) A certificate will be displayed for the user on the screen if he wins the game. The
   nickname will be displayed in the certificate and the user will be allowed to print the
   certificate. Further, the certificate will also include the score made by the player in the
   game for which the certificate is being displayed. If the player has made a score
   greater than the lowest score in the list of high scorers at that time (stored in an MS
   Access database), the rank of the player in the highest scorers list will also be
   displayed in the certificate.

8) The scoring mechanism will work as follows. At the start of the game play instance, a
score of 3000 will be stored. For every question answered wrong, 1 life will be used up
and the score will reduce by 1000. The score will be reduced by 100 for every question
answered. Thus, if the player guesses the answer (as defined in 1) b)) correctly after
answering n questions right, his score = 3000 – (100 * n). A player who guesses the
answer (as defined in 1) b)) will have a score of 3000.

9) The game must work in the Internet Explorer 6 or higher browser on a screen
resolution of 800 * 600 on an Intel Pentium 4 processor based PC or equivalent with at
least 128 mega bytes of RAM. With the above configuration, the game (flash movie
screen) must be displayed within a single window of the browser within a single screen
assuming the presence of only the menu bar, the address bar and a single line of browser
tabs or equivalent space occupied at the top and space for scroll bars at the left and
4) Requirements analysis and design

4.1) Data flow diagrams

                      Level 0: DFD
Level 1 : DFD
Level 2: DFD
4.2) Process specifications

 1.1 Get Data and Command: This process will take in user data.

 1.2 Process User profile: This process takes in the data (nickname, age group and sex)
  entered by the user and interacts with the profane words database to ensure that the
  data does not contain profane words. It will then send this status to process 1.3.

 1.3 Process Status & Command: This will store the profile of the user in the database
  depending upon the status input from process 1.2. Also, it processes commands
  coming from 1.1

  2.1 Game Engine: It accepts all the processed data and command from process 1.3
  and depending upon the inputs will invoke processes (the description of which
  follows) to :

    a. Ask questions to the user

    b. Validate the answer given by the user.

    c. Depending on the status give next clue.

    d. Make any changes in the display

 2.2 Ask Questions: It gets random questions from the database and sends them to 2.1.

 2.3 Give Clues: Whenever called by the process 2.1, it will request a new clue from
  the database and give it to the process 2.1. The clues will belong to a common theme
  that is chosen randomly at the start of the game. (For eg, "a cat").

 2.4 Validate Answer: This will take in answers from process 2.1 and will compare
  them with the database to check the answer is correct and will return its status back.

 3.0 Display: This will take in the signals from the process 2.1 and displays it on the
5) Initial interface design
6) Architectural design


   P 1.1             P 1.2                  P 1.3      P 2.1

  READ              READ PLAYER
  PROFANE           & GAME

           P 2.2             P 2.3             P 2.4    P3

      READ QUES &            READ
      ANS                    CLUES
      DATABASE               DATABASE
7) Test cases

Test Case 1 – Game Start (Checks requirement no. 5)

Step Procedure                      Success Criteria                      Outcome
1.   Check if asking for nickname   Textbox appears which asks for
2.    Check if asking for age-group There is drop down menu with the
                                    options of age-group „13-15‟ and „16-
3.    Check if asking for sex       There will be a drop down menu with
                                    the options of „male‟ and „female‟
4.    Check the database whether it The database should store the above
      stores the above variables    variables.
5.    Check what kind of questions The questions should be asked for
      are asked                     that particular age-group and sex.

Test Case 2 – Lives (Checks requirement no. 3)

Step Procedure                        Success Criteria                         Outcome
1.   Check if initially 3 lives are   On the top right of the screen whether 3
     given                            lives are shown.
2.   Check to see whether lives       For every wrong answer, lives should
     are properly calculated          be reduced by 1.
3.   Check to see whether only 3      When the lives shows 0, the game
     lives given.                     should end and show that the player has

Test Case 3 – Guessing Text field (Checks requirement no.2)

Step Procedure                  Success Criteria                             Outcome
1.   Check whether text         Play the complete game and check if the text
     field     is      there    box remains
     throughout the game.
2.   Check whether it works   At any point in the game give the right
                              answer and check if the game ends
3.    Check      for    wrong Now try giving the wrong answer at any
      answer                  point in the game. It should show wrong
                              answer and the game should continue
Test Case 4 – Question Rolling (Checks requirement no.1)

Step Procedure      Success Criteria                                 Outcome
1.   Give the right A new clue and a new question should be shown.
     answer         With each new clue a picture of fixed dimensions
                    should be shown.
2.   Give the wrong No new clue but new question should be shown and
     answer         lives should be subtracted by 1.

Test Case 5 – End of game (Check requirement no. 5 and 6)

Step Procedure                     Success Criteria                          Outcome
1.   Check after you‟ve lost the   After the game has been lost show
     game                          “Game lost – Try Again”
2.   Check after you‟ve won        After the game is won, show a certificate
     the game                      with the nickname of the person printed
                                   on it.
3.    After the game is over, The players database should be stored in
      check database of statistics the file.

Test Case 6 – Scoring of the game (Checking requirement no. 8)

Step Procedure                          Success Criteria                 Outcome
1.   Start the game and play the game   Check if the score is reduced by
     giving the right answers.          100 for every right answer.
2.   Give a wrong answer and then       Score should be reduced by 1000

Test Case 7 – Configuration of the game (Checking requirement no. 9)

Step Procedure                      Success Criteria               Outcome
1.   Open Internet Explorer 6 and a All the above functions should
     resolution of 800 * 600.       work properly.

To top