Software Requirements Specification (FINAL SRS) Project: Flash Maze Game Student Name Student ID Sudhir Joshi 30101044 Chandan Plaha 30096799 2013 Table of Contents 1.0 INTRODUCTION ....................................................................................................................................... 4 2.0 PROJECT OVERVIEW................................................................................................................................ 4 2.1 PURPOSE ............................................................................................................................................. 4 2.2 CLIENT ........................................................................................................................................... 4 2.3 BUSINESS CONTEXT....................................................................................................................... 4 2.4 SCOPE .................................................................................................................................................. 5 2.5 User Characteristics ............................................................................................................................ 5 3.0 Assumption, Dependencies, Constraints .......................................................................................... 6 3.1 Dependencies...................................................................................................................................... 6 3.2 Constraints .................................................................................................................................... 6 3.3 Assumptions .................................................................................................................................. 6 4.0 Abbreviations .................................................................................................................................... 7 5.0 HIGH CONCEPT STATEMENT ............................................................................................................. 8 5.1 Features ........................................................................................................................................ 8 5.2 Overview ....................................................................................................................................... 9 Player Motivation.................................................................................................................................. 9 Genre..................................................................................................................................................... 9 Target market........................................................................................................................................ 9 Competition .......................................................................................................................................... 9 Unique Selling Points ............................................................................................................................ 9 Target Hardware ................................................................................................................................... 9 Design Goals ........................................................................................................................................ 10 Visibility ............................................................................................................................................... 10 Simplicity ............................................................................................................................................. 10 Further Information ............................................................................................................................ 10 Sales pitch ........................................................................................................................................... 10 6.0 6.1 Personnel .................................................................................................................................. 11 Development Team ................................................................................................................. 11 1 6.2 Client ....................................................................................................................................... 11 6.3 Supervisor ............................................................................................................................... 11 7.0 Core storyline .................................................................................................................................. 12 8.0 Use Case Diagram ........................................................................................................................... 12 8.1 UC – 1 Login ...................................................................................................................................... 13 8.2 UC-2 Instruction ................................................................................................................................ 14 8.3 UC-3: Welcome Message ................................................................................................................. 15 8.4 UC-4: play game ................................................................................................................................ 16 8.5 UC-5: sound....................................................................................................................................... 17 8.6 UC-6: contact us form ....................................................................................................................... 18 8.7 UC-7 Up Button ................................................................................................................................. 19 8.8 UC-8 Down Button ............................................................................................................................ 20 8.9 Use case-9 Left Button ...................................................................................................................... 21 8.10 UC- 10 Right Button ........................................................................................................................ 22 8.11 Use case-11 Score ........................................................................................................................... 23 8.12 Use case-12 Timer ........................................................................................................................... 23 8.13 Use case-13 Pick Jewels .................................................................................................................. 24 9.0 FUNCTIONAL REQUIREMENTS ........................................................................................................ 25 9.1 Detailed Description of Functional Requirements ............................................................................ 25 10.0 Non-Functional Requirements ........................................................................................................ 27 10.1 Performance Requirements ........................................................................................................ 27 10.2 Logical Data Requirements ......................................................................................................... 28 10.3 User Requirements ..................................................................................................................... 28 10.4 Information Management Requirements ................................................................................... 28 10.5 Systems Requirements................................................................................................................ 28 Performance Requirement ................................................................................................................. 28 Quality Requirements ......................................................................................................................... 28 Interfaces ............................................................................................................................................ 28 External Interface Requirements ........................................................................................................ 28 2 10.6 Software Requirements ................................................................................................................. 29 Client-side ........................................................................................................................................... 29 Server-side .......................................................................................................................................... 29 10.7 Database Requirements: ................................................................................................................ 29 11.0 Data descriptions ............................................................................................................................ 30 11.1 Data flow diagram (DFD-0) ......................................................................................................... 30 11.2 Data flow diagram (DFD-1) ......................................................................................................... 30 11.3 Data flow diagram (DFD-2) ......................................................................................................... 31 Software Requirements .......................................................................................................................... 31 Client-side ........................................................................................................................................... 31 Server-side .......................................................................................................................................... 32 11.4 12.0 Database Requirements:.............................................................................................................. 32 Acceptance criteria ......................................................................................................................... 32 13.0 Description of textures ....................................................................................................................... 32 14.0 Appendix ......................................................................................................................................... 33 14.1 GAME CHARACTERS ........................................................................................................................ 33 14.2 MAIN MENU VIEW .......................................................................................................................... 33 14.3 BASIC GAME DESIGN ....................................................................................................................... 34 14.4 LOGIN PAGE .................................................................................................................................... 35 14.5 Instruction Page .............................................................................................................................. 36 14.6 ENTERING THE GAME ..................................................................................................................... 37 14.7 ER Diagram ...................................................................................................................................... 38 15.0 Reference ........................................................................................................................................ 39 16.0 Revision History .............................................................................................................................. 40 3 1.0 INTRODUCTION The purpose of the project is to create a Flash maze game for kids, where in the idea is to provide personalized timetables to the students .As of now there will be three stages in game and before starting game player has to input their Names so that score will be stored .The game shall provide different facilities to the Player. User have three level which they can choose by themselves or else user has to complete easy level and will moved to medium level and the final hard level. There will be time frame in which they have to complete. As game is based for kids, so the character we will be using will be cartoons. Main objective of game is to find the way out or else we can say have to reach final point from start on given time without crashing with any obstacles. 2.0 PROJECT OVERVIEW 2.1 PURPOSE The purpose of this Software Requirements Specification (SRS) is to provide a design of Flash maze game for kids. This document will provide the Client and the user with a basic understanding about the game’s performance and its goals. 2.2 CLIENT The audience of this document will be the client (Hari Kiran Vege) and its user (gamers). Hari Kiran Vege , IT department of Australian Technical and Management College (ATMC) who have wide experience of Programming, Database and all. 2.3 BUSINESS CONTEXT The development of this game is for the first project in Project 1 class at ATMC Melbourne (University of Ballarat) 4 2.4 SCOPE The application will be the Maze game for Kids but no doubt it can be played by any age group. The project is based on Cartoon named Family Guy. Where one of the characters has to find his way through the different level of mazes where there will be different kinds of obstacles which player has to overcome. This game is customer based and the target audience are kids, so the user can choose different levels, can change the character, turn sound ON/OFF as requirement, Able to enter the Name so that scores can be stored, Can send email to developer about the feedbacks and can also view the webpage of the developer by clicking the link in the game. In the system all the history of the user played and score obtained will be stored in the database. The project will be developed using Flash CSS using AS3.We are going to program character to move through the mazes in the game. Our final product will deliver requirement, design documents and user document, codes and an executable file. 2.5 User Characteristics Devices: Keyboard Game Mode: Single Player Mode. Action: Walk, Win/Loose, Collect Gems, Hit and fail Location: Maze 5 3.0 Assumption, Dependencies, Constraints 3.1 Dependencies The speed of game will vary upon different CPU Flash player or its plugins is necessary 3.2 Constraints A prototype presentation of the complete application must be delivered and operational at the end of the semester (week 12) Time frame :- different schedule timings and availability of team members constraints the given task Technical constraints :- technical constraints related to project development is also an constraint 3.3 Assumptions Our team have made certain assumptions while initiating and preceding the project, we have made several assumptions on the elements. Effort: The estimated tasks and activities required to manage the project and produce deliverables. Our team have assumed that all the team members will put an equal effort in completing the project Schedule: The estimated tasks and events needed to complete the project, organized into a structured sequence to meet a specified project end date. Every team member will complete the given task in a given time frame and each of the team members will contribute a common allocated time frame for group meetings and supervisor meeting. Resources: The estimated resources given to group needed to complete the project, according to number, type, work hours, and skills. Budget: The estimated cost of the project, allocated to tasks, resources will be null. 6 4.0 SRS PM SCD DFD ERD UC FR NFR Abbreviations System Requirement Specifications Project Manager System Context Diagram Data Flow Diagram Entity Relationship Diagram Use Case Functional Requirements Non Functional Requirements 7 5.0 HIGH CONCEPT STATEMENT Family guy maze game is a challenging and addictive puzzler game that teases everybody’s brain. Strategically pop the character to find out a way through the maze, each character passes the level add one point. The strategy is complete given maze in the given time to compete in the next level. 5.1 Features Family guy is a puzzle single player game that gives every player the thrill of creating a strategy in order to complete all the three levels • The game has a pleasant view, as bright colors have been used • It has 3 levels, with increased difficulty (demo version) • The game starts with by entering a name of the player. • If a given time frame finishes game finishes and player looses • Game can be played with a keyboard and also have mouse pointer interface • The strategy is very important in order to finish all the three levels • The player gains score after collecting jewels in the game • User can choose any level and can finish • if player loses at any level game starts from same level • Home screen features cartoon jpeg images • User can contact us through the from provided in contact us form, where all the filled information will be sent out to the specific person who handles • User can visit developer website by clicking the link given which will directs user to the developer website. 8 5.2 Overview Player Motivation The player has to develop the right strategy in order to advance to the next level. As every level increase game time frame will be cut down. Player will be motivated by giving those scores. Genre Family guy game will be classified as a puzzle game, falling under the maze-logic subgenre, As it is a brainteaser for every player. The game can be played by only one person at a Time, and it is designed, like any other puzzle games, to fill the bits of free time from People’s schedule (i.e. Commuting, breaks). Target market The target market for this game is very wide. It can be played by adults as well as by Children’s, no matter their motor and cognitive skills, attention spans, or linguistic Abilities. It targets any individual that enjoys playing this genre of game but it is mainly focused for the kids as this game is based on cartoon named Family Guy. Competition Family guy gives competition to same level flash games Unique Selling Points Version 1 will be free Small size game Even age level between 4 -6 can also play the game Target Hardware This game been developed mainly for windows which require flash plugins to play the game. 9 Design Goals The graphic elements are made out of bright colors that can appeal to any age category (children and adults).On each level the player is welcomed by new scenery. The three cartoon images will include in the background of all three levels. Visibility The camera model, players being able to view the entire window. The graphical elements, specific to level they are playing, in the same frame. Simplicity Very simple control system, players need to touch the keyboard arrow they wish to move, making this an easy game to learn and play. Further Information Family guy Maze game is a linear, objective driven type of game. The player is lead through a fixed route, in which progress becomes harder and harder. Sales pitch First version of game will be free Designed for kids Brain exercise 10 6.0 Personnel This section gives the contact details for all the people involved in the development of Maze game. 6.1 Development Team The developers of Maze game are Group 3, consisting of: Name 6.2 Mobile No Chandan Plah 0449058786 Sudhir Joshi 0430478630 Client The client for Maze game is: Hari Kiran Vege IT department ATMC Melbourne (University of Ballarat) Email: hvege@atmc.vic.edu.au 6.3 Supervisor The supervisor of Maze game is: Shreyash Patel ATMC Melbourne (University of Ballarat) Email: spatel@atmc.vic.edu.au 11 7.0 Core storyline Peter and his Griffin family who moved into a new town, griffin family has to face lots of obstacles to adjust in to new town. Griffin family has to find a way to home by going through series of maze (zigzag) with lots of obstacles and grabbing jewels. 8.0 Use Case Diagram <<Extends>> <<Extends>> <<Extends>> <<Includes>> >> Turn left Turn Right Turn up Turn down Score Pick Item s Timer 12 8.1 UC – 1 Login Login and manage profile Name UC-1: Login Summary Player can Input their name or play as a guest without entering the Name Actor All Users Pre-Condition User must press enter or click enter with or without entering the name to go to menu Basic course of 1. User opens the game in the flash player 2. The system displays enter the name box Event 3. User will input the necessary data into the box. 4. System will forward to main menu. Post- Condition User receives the notification that he has entered in the game User who doesn’t input their names record won’t be saved. Enter the name user 13 8.2 UC-2 Instruction Instructions Name UC-2: Instruction box Summary User can look for the instructions how to play by clicking instruction button Actor User Pre-Condition Instruction box will be displayed Basic course of 1. User move mouse in the image and get detailed information about how the game is played. Event 2. User can go back to enter the name box by clicking back button Post- Condition Clicking on back button player will be left onto enter the name page. Instructions provided User 14 8.3 UC-3: Welcome Message Game menu and welcome message Name UC-3:welcome message and game menu Summary Player can check his profile name and game menu( image no-001 in appendix) will be displayed Actor Game Pre-Condition Player must choose the game level to play the game Basic course of 1. The system displays GUI for the game menu 2. Player clicks on the game levels and start playing. Event 3. System will show all the game menu and options Post- Condition Result successfully shown to player Game will be loaded as level clicked by user Profile name & Menu User 15 Game Levels 8.4 UC-4: play game Name UC-4: game levels Summary Player can compete in any level Rationale Player wants to complete given level Actor Player and a game itself Pre-Condition Player clicks the play button Basic course of 1. User access the required level to play the game. 2. System will show the appropriate time frames and scores. Event 3. Player must compete in a given condition. 4. System will save the scores. Post- Condition If user wins winner logo will appear if not can looser logo will appear and can retry again Game play User 16 8.5 UC-5: sound Name UC-5: sound Summary Player can change the sound settings. Rationale If sounds will be turn off game must turn off the sound and vice versa Actor Player Pre-Condition There must be a sound options button in main menu Basic course of 1. Player can turn on the sound Event 2. Player can turn off the sound 3. System must respond Post- Condition Sound setting will becomes effective Sounds User 17 8.6 UC-6: contact us form Name UC-6: contact us Summary Player can contact developers via contact us form Actor Player Pre-Condition Player must enter a valid email address, name and message Basic course of 1. The user must open a contact us form 2. Must enter a valid email address , name and message Event 3. System will show the delivery status as message sent Post- Condition Information provided by the user will be sent to the relevant person Contact us form User 18 8.7 UC-7 Up Button Name Up Button Summary User press Up in keyboard to move character Actor User Pre-Condition User must press Up arrow in keyboard Basic course of 1-User press up arrow 2-Application recognize the input Event 3-Character move upwards Post- Condition Character is moved upwards Up Arrow User 19 8.8 UC-8 Down Button Name Down Button Summary User press Down in keyboard to move character downwards Actor User Pre-Condition User must press Down arrow in keyboard Basic course Event of 1-User press down arrow 2-Application recognize the input 3-Character move downwards Post- Condition Character is moved downwards Down Arrow User 20 8.9 Use case-9 Left Button Name Left Button Summary User press Left in keyboard to move character left side Actor User Pre-Condition User must press Left arrow in keyboard Basic course Event of 1-User press Left arrow 2-Application recognize the input 3-Character move Left side Post- Condition Character is moved Left Side Left Arrow User 21 8.10 UC- 10 Right Button Name Right Button Summary User press Right arrow in keyboard to move character Actor User Pre-Condition User must press Right arrow in keyboard Basic course of 1-User press Right arrow 2-Application recognize the input Event 3-Character move right side Post- Condition Character is moved right side Right Arrow User 22 8.11 Use case-11 Score Name Score Summary Score will be displayed when user character grab jewels Actor User Pre-Condition User must grab jewels to get more score Basic course 1-User character move towards jewels of 2-Application recognize the event Event 3-Score will be added as more jewels grabbed Score is recorded on the top of the game Post- Condition 8.12 Use case-12 Timer Name Timer Summary Score will be displayed on top of game Actor application Pre-Condition User must complete the maze game in given time Basic course Event of 1-Allocated timer starts 2-Time starts decreasing as game starts 3-If maze is completed on time it will direct to winner page or else to looser page. Post- Condition Timer Keeps decreasing 23 8.13 Use case-13 Pick Jewels Name Pick Jewels Summary Increase score by picking the jewels Actor User Pre-Condition User must collect more jewels to get high score Basic course 1-User moves character towards jewels of 2-Jewels get disappeared and score will be added Event Post- Condition System recognises the character touching jewels and gets disappeared and score added. 24 9.0 FUNCTIONAL REQUIREMENTS 9.1 Detailed Description of Functional Requirements Functional Requirement Id FR001 Functional Name Functional Description Functional Priority Enter your name Optional FR002 Name entered or name not entered The game will provide the user to enter the name to start the game If user will enter the name .user name will displayed in the welcome message otherwise friend will displayed as a welcome message FR003 Instruction Essential FR004 Next FR005 Home FR006 Choose level FR007 Easy level FR008 Level easy game User must click on instruction link so that he can look at the keyboard controls Player must click on next link so that he can enter the main game site and menu. After logging into the game. game must show user his name if he entered his name in functional id FR01 otherwise Hello, My friend, welcome to the Game Menu, Please choose one of the level and HAVE FUN! Will be displayed with game menu. User must choose one of the levels from easy –medium-hard from a game menu User must enter the game level easy to play the easy level game Player will be given 90 seconds time to compete in a level and will be given scores Essential Essential Essential Essential Essential Essential 25 FR009 Level easy complete FR010 Medium level FR011 Level medium game FR012 Level easy complete FR013 Hard level FR014 Hard level game FR015 Hard level completes FR016 Retry FR017 Sound Options FR018 Contact us form FR019 Submit button FR020 Submit button clicked FR021 Email a friend If player complete level easy you winner will be displayed otherwise you looser will be displayed User must enter the game level medium to play the easy level game Player will be given 60 seconds time to compete in a level and will be given scores If player complete level medium you winner will be displayed otherwise you looser will be displayed User must enter the game level hard to play the easy level game Player will be given 45 seconds time to compete in a level and will be given scores If player complete level hard you winner will be displayed otherwise you looser will be displayed If player completes or not any level ,he can retry each level at the end of the game when looser is appeared Player can on/off sound settings by going into options menu User can any time login into contact us menu and access to message via email to save scores Player must click on submit button to send the email or message Game must notify user by displaying message of message sent confirming Player can also email a friend his or her high scores Essential Essential Essential Essential Essential Essential Essential Optional optional Optional Essential Essential Optional 26 FR 22 Click on webpage Link visitusathttp://webanimators. weebly.com/ Player can visit the developer website to know more details about developers Optional 10.0 Non-Functional Requirements Non-functional requirements are defined as non-core requirements of the system. Non-Functional Non-Functional Requirement ID Requirement Title Detail of requirement Priority NFR001 Usability Due to the nature of the players, the game needs to be as simply as be Essential NFR002 Aesthetics The look of the game should be simple and use highly contrasting colours for text. The game should be more innovative by looks. Essential NFR003 Load time Flash should be up to date and it any other system should play swf. files Essential NFR004 Security The system should be fully secured to keep data safe. Essential NFR005 Privacy Privacy will not be at highest priority as Not essential profile name and scores will be displayed to other users NFR006 Ethics The game should meet all the ethical requirements. 10.1 Essential Performance Requirements No specified knowledge required Only built for flash and is supported by web browsers like Google Chrome 27 10.2 Logical Data Requirements Logical Data requirements are AS3 programming, boundary check, hit check and collision check. 10.3 User Requirements Internet Explorer 5.0 or higher is required. Mozilla Firefox 2.0/Google chrome Flash plug-in version 8.2. 128 MB cache memory. High Speed Broadband connection 10.4 Information Management Requirements Management requirements are Time count. 10.5 Systems Requirements Performance Requirement Reliable CPU above Pentium 4. CPU with flash player or flash plugins. Must run on Window platform Wi-Fi /Modem Quality Requirements Describe requirements for the quality characteristics of the software Interfaces Flash Player application. External Interface Requirements Mouse Keyboard 28 Direct X Windows Network adapter 10.6 Software Requirements Client-side Any flash player capable of supporting flash swf files. Server-side As the Server environment is already determined the software requirements listed are for versions of programs already being used by the hosting environment. Adobe Flash css. MySQL is needed to store all data. PHP 10.7 Database Requirements: The main requirements of the database is to save all the scores and profile names. See Appendix 14.7 29 11.0 Data descriptions 11.1 Data flow diagram (DFD-0) Context Diagram Level 0 11.2Data flow diagram (DFD-1) Data flow diagram at level -1 when player enters a game 30 11.3Data flow diagram (DFD-2) Data flow diagram of complete system Software Requirements Client-side Any Web Browser capable of supporting common web standards, e.g. CSS. This includes, but is not limited to: Mozilla Firefox, Microsoft Internet Explorer, Safari, Netscape and Opera. 31 Server-side As the Server environment is already determined the software requirements listed are for versions of programs already being used by the hosting environment. PHP v4.3.1 is needed to process all PHP script for the system. MySQL is needed to store all data. Firewall To protect the application from illegal activities. 11.4 Database Requirements: The main requirements of the database are to have all the entities and a place to store data. These can be further will be explained by the ER diagrams and data scheme etc. 12.0 Acceptance criteria The final product will be accepted and deemed a success if: 1. All core Functional and Non-Functional Requirements as stated in section 9 and 10 of this document have been implemented. 2. A working Flash Maze game has been provide to the Client, where working is defined as functioning as per the requirements detailed in this document. 3. All deliverables have been delivered. 13.0 Description of textures A texture map is applied to develop this game, to the surface. Multi texturing is the use of more than one texture at a time in a flash css. In conventional Flash games, in most of the time we use the PNG format for their textures, or JPG if they don't need transparency. In maze game you can use those as well, of course. Through further stage, however, aft texture offers a great alternative to those formats: ATF textures. Compared to conventional file formats, they have several powerful advantages. 32 14.0 Appendix 14.1 GAME CHARACTERS Character 1 Character 2 Character 3 Chris Griffin is a character from the animated television series Family Guy. He is the son and middle child of Peter and Lois Griffin Peter Griffin is the main character of the American animated Family Guy. Brian Griffin is a fictional character from the animated television series Family Guy. An anthropomorphic dog All the images are copyright to Family guy cartoon network 14.2 MAIN MENU VIEW 33 14.3 BASIC GAME DESIGN 34 14.4 LOGIN PAGE 35 14.5 Instruction Page 36 14.6 ENTERING THE GAME 37 14.7 ER Diagram Score ScoreID GamerID HighScore Gamer GamerID GamerName RELATIONAL DATABASE SCHEMA Table Name Field Type Description Gamer GamerID GamerName int(7) int(30) Primary key Score ScoreID GamerID int(7) int(7) Primary key primary key; foreign key reference to Gamer.GamerID Highscore int(30) 38 15.0 Reference Donn Le Vie, J. (2010, August 20). Writing Software Requirements Specifications (SRS). Retrieved 08 25, 2013, from 20 years tech whirl: http://techwhirl.com/writing-software-requirementsspecifications/ John W. Satzinger, Robert B. Jackson, Stephen D. Burd (2004). System Analysis and Design in a Changing World (3rd ed.), Thomson Cource Technology, Boston, Massachusetts, USA. Ludwig Consulting (2013). Templates and Guidance. Retrieved September 13, 2013, from http://www.jiludwig.com/Template_Guidance.html Schwalbe, K. (2006). Information technology project management, (4th Ed.). Cambridge, MA: Course Technology. 39 16.0 Revision History Identify changes to the SRS. Version Date Name Description 1.0 18/09/2013 SRS Requirement update 2.0 19/09/2013 SRS Use case and assumption updated 3.0 24/09/2013 SRS Functional Requirements Updated, ER diagram updated 40