COMP 3663 X2 - Acadia University



COMP 3663 X2

S1:

Software Requirements Specification

OutSource Inc. (Group A)

Mallinson, Mike 100071936

Logan, Billy 100059371

Peters, Richard 100071545

Table of Contents

COMP 3663 X2 1

S1: 1

Software Requirements Specification 1

Table of Contents 2

Introduction 5

1 Introduction 6

1.1 Purpose 6

1.2 Scope 6

1.3 Definitions, acronyms & abbreviations 6

1.4 References 6

1.5 Overview 6

2 Overall description 7

2.1 Product perspective 7

2.1.1 System interfaces 7

2.1.1.1 Concept of Operations 7

2.1.2 User Interfaces 8

2.1.2.1 Introduction Window Concept 8

2.1.2.2 Select Difficulty Screen 9

2.1.2.3 Create new Character Window Concept 10

2.1.2.4 Load Character Window Concept 11

2.1.2.5 Dungeon Window Concept 12

2.1.2.6 Select Stats Window Concept 13

2.1.2.7 Map Window Concept 13

2.1.3 Hardware interfaces 14

2.1.4 Software Interfaces 14

2.1.5 Java Virtual Machine 14

2.1.6 Communications Interfaces 14

2.1.7 Memory Constraints 14

2.1.8 Operations 14

2.1.9 Site Adaptation Requirements 15

2.2 Product Functions 16

2.2.1 “Creating a Character” Use Case 16

2.2.2 “Traveling to Adjacent Grid Location” Use Case 16

2.2.3 “Obtaining Item” Use Case 17

2.2.4 “Travel to New Location” Use Case 17

2.2.5 “Initiate Battle” Use Case 17

2.2.6 “Attack” Use Case 18

2.2.7 “Berserker” Use Case 18

2.2.8 “Use Item” Use Case 19

2.2.9 “Flee” Use Case 19

2.2.10 “Defend” Use Case 20

2.2.11 “Save” Use Case 20

2.2.12 “Load” Use Case 20

2.3 User Characteristics 20

2.4 Constraints 21

2.5 Assumptions and Dependencies 21

2.6 Apportioning of Requirements 21

2.6.1 Basic Functional Requirements 21

2.6.2 Human Interface Requirements 24

2.6.3 Undesirable Characteristics 26

2.6.4 Basic Non-functional Requirements 26

2.6.5 Cost and Time Constraints 26

3. Specific Requirements 27

3.1 External interface requirements 27

3.1.1 User interfaces 27

3.1.1.1 Title Screen 27

3.1.1.2 Character Creation 27

3.1.1.3 Dungeon Window 27

3.1.1.4 Battle Window 27

3.1.2 Hardware Interfaces 28

3.1.3 Software Interfaces 28

3.1.4 Communication Interfaces 28

3.2 Classes/Objects 28

3.2.1 Character 28

3.2.1.1 Face 28

3.2.1.2 Status Points 28

3.2.1.3 Attributes 28

3.2.1.4 Experience 28

3.2.1.5 Level 28

3.2.1.6 Life Tokens 28

3.2.2 Area 29

3.2.2.1 Room 29

3.2.2.1.1 Maze 29

3.2.2.2 Door 29

3.2.2.3 Map 29

3.2.3 Encounter 29

3.2.3.1 Hostile Unit 29

3.2.3.1.1 Enemy 29

3.2.3.1.2 Boss 29

3.2.4 Item 29

3.2.4.1 Room Key 29

3.2.4.2 Boss Key 30

3.2.4.3 Treasure Chest 30

3.2.4.4 Gear 30

3.2.4.4.1 Weapon 30

3.2.4.4.2 Armor 30

3.2.4.5 Potion 30

3.3 Performance Requirements 30

3.4 Design Constraints 30

3.5 Software System Attributes 30

3.5.1 Reliability 30

3.5.2 Availability 31

3.5.3 Security 31

3.5.4 Maintainability 31

3.6 Other Requirements 31

4 Project Management Plan 32

4.1 Introduction 32

4.1.1 Project Overview 32

4.1.2 Project Deliverables 32

4.1.3 Evolution Of The SPMP 32

4.1.4 Reference Materials 32

4.1.5 Definitions And Acronyms 32

4.2 Project Organization 32

4.2.1 Process Model 32

4.2.2 Organizational Structure 33

4.2.3 Organizational Boundaries and Interfaces 33

4.2.4 Project Responsibilities 33

4.3 Managerial Process 34

4.3.1 Managerial Objectives and Priorities 34

4.3.2 Assumptions, Dependencies, and Constraints 34

4.3.3 Risk Management 34

4.3.4 Monitoring and Controlling Mechanisms 34

4.3.5 Staffing Plan 35

4.4 Technical Process 35

4.4.1 Methods, Tools, and Techniques 35

4.4.2 Software Documentation 35

4.4.3 Project Support Functions 35

4.5 Work Packages, Schedule, and Budget 35

4.5.1 Work Packages 35

4.5.2 Dependencies 35

4.5.3 Resource Requirements 35

4.5.4 Budget and Resource Allocation 36

4.5.5 Schedule 36

Appendix A – Glossary of Terms 37

Appendix B – Sequence Diagrams for Use Cases 38

Introduction

OutSource Inc. is a PC videogame developer and designer company. Our goal is to provide customers with an enjoyable and attractive gaming experience, Conan. With over 10 years experience in the IT industry, our designers will provide a gaming experience that will keep you coming back for more.

For this product, OutSource Inc. will be partnered with Initech. We are developing a game called Conan, in which Conan the barbarian must fight his way through a dungeon to survive.

This report contains important requirements and information about the game Conan. Section 2 of this report illustrates the game menus, maps and dungeon screens. Section 3 is a listing of the technical specifications.

OutSource Inc. would like to thank Initech for allowing us to have this experience and we expect to exceed Initech’s initial expectations on the game.

Sincerely,

The OutSource Inc. Team

1. Introduction

1. Purpose

The purpose of this report is to provide the supplier and customer with a composed guideline concerning the Conan computer game. Section 1 will describe the basic aspects of the game while Section 2 will illustrate a basic graphical implementation providing a glimpse of the game’s appearance, the game’s functions and behavior. Section 3 is mainly for software engineers.

2. Scope

This component covers the customer deliverable for a Conan computer game. This will allow developers to mold the game to fulfill the requirements and present a template for the game’s layout.

3. Definitions, acronyms & abbreviations

See Appendix A – Glossary of Terms.

4. References

• Braude, E. J. (2001). Software Engineering: An Object-Oriented Perspective. John Wiley and Sons.

• Silver, D. (2006). Course Web Page: Comp 3663 X2 – Software Engineering. Retrieved January 28, 2007 from the World Wide Web:

5. Overview

Conan is a role playing computer game devised by Initech and developed by OutSource Inc. The game will provide entertainment for gamers ages 14+ as the user will be participating in violent endeavors. The game will not be complicated and the controls will be simple making the game appealing for all gamers.

2. Overall description

1. Product perspective

1. System interfaces

1. Concept of Operations

Conan can be in any of the following states:

• Initialize – the user creates a player and starts the game.

• Dungeon: First room – the user has to reach the first room before he/she can continue, quit, save or win the game.

o If the door is locked; Conan cannot open the door without the key.

• Waiting – Conan may move and encounter enemies

o Player can quit or save the game.

o The user proceeds to the next room.

• Encounter – User begins a battle, if the user wins the battle continues. Otherwise the game is over.

2. User Interfaces

1. Introduction Window Concept

This is the Main menu for Conan. The user has the option to start a new game or load a saved game.

2. Select Difficulty Screen

Using this menu, the user chooses a difficulty. The user has the following options Easy, Medium or Hard.

3. Create new Character Window Concept

Using this menu, the user creates a new character.

4. Load Character Window Concept

Using this menu, the user loads a previously played character.

5. Dungeon Window Concept

This is the basic game screen. The game messages and dialog will appear at the bottom of the screen. The character attributes are in the top right corner, the inventory in the right middle and the action keys in the bottom right corner.

6. Select Stats Window Concept

This is the screen where the user chooses the initial attributes for his/her character.

7. Map Window Concept

This is the map screen showing a detailed layout of the dungeon. The map shows Conan’s position relative to the other rooms in the dungeon.

3. Hardware interfaces

A mouse and keyboard will be used.

4. Software Interfaces

Used to store data of individual areas.

5. Java Virtual Machine

Required to run the game.

6. Communications Interfaces

None, this is a single-player offline game.

7. Memory Constraints

The game is required to run on the Acadia Advantage laptops, so no more than 512MB of RAM will be used. The game content will use no more than 50 MB of hard drive space.

8. Operations

The user will be able to save and load the game.

9. Site Adaptation Requirements

None.

2. Product Functions

This section gives a brief explanation of the functionality of the game. Greater detail is given in Section 3.

1. “Creating a Character” Use Case

2. “Traveling to Adjacent Grid Location” Use Case

3. “Obtaining Item” Use Case

4. “Travel to New Location” Use Case

5. “Initiate Battle” Use Case

6. “Attack” Use Case

7. “Berserker” Use Case

8. “Use Item” Use Case

9. “Flee” Use Case

10. “Defend” Use Case

11. “Save” Use Case

12. “Load” Use Case

3. User Characteristics

This game is aimed towards young adults.

4. Constraints

• Deliverables must be received on time. No deliverable can be accepted before a previous deliverable has been received and approved.

• The entire project must cost no more than 35 man-days (at 8 hours/day).

• Must run on any Acadia Advantage laptop under Windows XP.

• Implemented in Java.

• Can be downloaded and installed from a web homepage.

5. Assumptions and Dependencies

• System assumes save files are valid and not tampered with.

• System assumes that XML room descriptions are valid.

6. Apportioning of Requirements

1. Basic Functional Requirements

1- Each play of the game has a limited time frame.  The player can set this.

2- Provides a castle with interconnected areas.

3- There is one area from which the game begins

4- Each area must have a name, a unique graphical image and its own set of no less than 3 environmental variables such as the number of monsters in the room, and type of monsters, the items in the room, etc.

5- Each area has connections to one or more other areas.

6- Areas contain monsters and items with which to interact with.

7- Must allow the creation and maintenance of various game characters.  Each character has a unique name and image and a set of qualities such as life points, strength, defense (optional), attack rating, and attack power that can be assigned points by the player outside of battle. The system must allow the player to create these characters, define the qualities and select a character image.

8- Must allow the main character to be designated.  The objective is to save the princess.

9- No more than two characters can be at the same location in the room at one time

10- When two characters meet at a position in the room they battle.

11- Once battle is complete the main character, if s/he still exists and has the remaining qualities to do so, can move to a new location based on the player’s choice of direction. Moves deplete resources – so characters cannot simply just move for ever without having their qualities replenished in one form or another

12- Must allow users to query for (and potentially print) a report of current character and area status by showing all quality and environmental variable values

13- Must alert the player when main character quality values are reaching critical levels

14- Must generate a game summary report showing overall performance through the game

15- Must provide a method of saving and restoring the characters as a set.

16- Should have a method of saving and restoring the current game state so that a game can be stopped and started at a later time.

17- The above functions should be integrated as a single system that shares the appropriate data structures. Note that the use of a DBMS is possible but discouraged.

Plot Requirements

18- “Conan: Rescue the Princess” (hereon referred to as the game). Is a fairly straightforward game largely described in the title.

19- Conan (our main character) is sent to a run down castle to rescue a Princess.

20- Conan must fight his way through several rooms to get to the princess, and have her follow him out again.

21- In each room there is a key for the exit that is locked. Key disappears after use.

22- Final Fantasy style top-down turn-based RPG.

23- Enemies encountered randomly when a player moves, and a battle sequence is activated. The difficulty setting decides the number of enemies in a room. For each move the character makes there is a 'dice roll' and if the certain number hits the battle starts. For each move you make, the number on the 'dice' reduces by one so eventually you do get into a battle.

24- While exploring the castle Conan will uncover chests, and other appropriate containers that will contain items.

25- After completing 25% of the castle Conan will fight a boss, after defeating said boss the player is given some new armor and a new weapon.

26- Before Conan rescues the princess he must fight the King of Swords. After defeating the King you receive his sword.

27- After the King is defeated the Prince shows up and swears a vendetta (“you’ll never make it out alive”) and runs out of the castle.

28- When Conan enters the next room on his way out (princess in tow) he encounters the captain of the guard – defeat the captain and get his armor.

29- When the princess is with you she won’t be attacked very frequently (10% of the time) but the possibility is there. She is a healer (no offensive attacks, but able to issue potions to herself and Conan).

30- After a battle experience is gained allowing Conan to raise his level. At the end of a battle there should be a chance to gain items as well. 1/4 chance of getting a potion and a 1/20 chance of gaining a revive token.

31- If possible, there could be a 'boss key' in the game somewhere before the battle with the king. It could be in the first room in a less than obvious place or anywhere between the start and that chamber.

Character Requirements:

32- Conan starts with a basic sword and armor.

33- Conan has a simple sword attack that does damage to the enemy. He has a special berserker attack that he can use once per room. This attack hits the enemy up to 10 times in rapid succession.

34- The game should track:

• Life Points

• Defense Rating (based on armor)

• Attack Accuracy

• Attack Power (Range of damage)

• Experience

• Level

Item Requirements

35- Potion – restores 100% LP (One Time Use)

36- Life Tokens – Bring you back to life if you die (beginning of the room).

37- Keys – used to advance to the next room. (One Time Use)

38- Swords – Three types (Basic, Master, King)

39- Armor – Basic starting armor, master armor, Titan’s Chest (Captain of the Guards Armor), Helmet of Revive (Infinite life tokens), Ring of Agility (RARE ITEM, speeds up attack timer)

Map Requirements

40- The castle is a series of rooms leading from the main entrance to where the princess is held. The path of rooms should be linear however the individual rooms should contain a maze.

41- If the player enters a square that they have already passed through they may still encounter enemies.

42- The castle could be designed in 2 parts with 2 paths one for in and one for out. It could also be that Conan has to go the same way he came in but against stronger monsters.

43- Ideally the game should be written such that the maps can be adjusted easily. XML is a viable option to describe the rooms. It should be then possible to add levels to the game. (Optional Requirement)

44- If possible, the map should start darkened over so the player has to explore the map. That way there is an increased chance of running into enemies while getting lost. Show a few blocks around Conan so he can navigate.

2. Human Interface Requirements

1- Must be GUI based with efficient use of mouse point and click and menu features.

2- Must be user friendly and encourage player/game setup and interaction by providing, at minimum:

3- Cut and paste and document content copying where possible to reduce repetitive typing.

4- Intelligent display and sequencing of queries and menus.

5- User oriented error and warning messages.

6- On-line help information.

7- Optionally, allow certain aspects of displays and reports to be tailored (or personalized) to the individual user.

8- Intelligent display and sequencing of queries and menus.

9- User oriented error and warning messages.

10- On-line help information.

11- Optionally, allow certain aspects of displays and reports to be tailored (or personalized) to the individual user.

Movement Screen:

12- Shows position on the grid.

13- Shows the items in your bag, equipped items, level, life points, and experience.

Battle Screen:

14- Shows player’s timer until next turn.

15- On player’s turn a menu is presented giving options:

• Attack: This can be split into an attack submenu with attacks of various strength and accuracy, though a stronger attack should be less accurate.

• Defend: After rescuing the princess this will have a submenu asking whether you want Conan to defend himself, or the princess. Defend will decrease the damage done by an enemy attack by a percentage that increases as Conan levels.

• Item: Before rescuing the princess this will use the player’s entire turn, however after the princess is in tow selecting this will bring a submenu asking which character you want to be healed by the potion. The princess will administer the potion and Conan is still free to attack or defend afterward.

• Run: Flee from battle. The enemy you were facing will not regain Life Points, and will continue to roam the room

3. Undesirable Characteristics

1- Lengthy user manual - focus on great on-line help and reference documentation as well as innovative "getting started" tutorial. Ask yourself, how would I like to learn how to use the system.

2- Need for external components such as backup utility or DBMS that might have to be purchased by your customer (these issues can be discussed with your customer and TA).

4. Basic Non-functional Requirements

1- Must run on any Acadia Advantage laptop under Windows XP.

2- Is implemented in Java.

3- Can be downloaded and installed from a web homepage.

2 Cost and Time Constraints

1- Deliverables (by Customer and Supplier) must be received on time as per the course schedule for full marks. No deliverable can be accepted before a previous deliverable has been received and approved.

2- The entire project must cost no more than 35 man-days (at 8 hours/day).

3. Specific Requirements

1. External interface requirements

1. User interfaces

The user interface in this game will be represented by multiple graphical windows. These windows include:

1) Title screen

2) Character Creation

3) Dungeon Window

4) Battle Window

1. Title Screen

This window shows the options to create a new character, load a previously saved character, or quit the game. Creation of a new character loads the character creation window. Loading a previously saved character loads the dungeon window. Quitting the game quits the game.

2. Character Creation

This window shows the options to enter the characters name, distribute the initial status points of the character to their attributes, and choose a graphical representation of the character. Clicking the create button will load the dungeon window and initialize the game.

3. Dungeon Window

This window will show the layout of the dungeon room, the stats of the character, the inventory of the character, the controls, and the message area. This is where the movement and exploring of the dungeon occurs. Upon the start of battle, the battle window is loaded.

4. Battle Window

This window will show the character and enemy graphics, the status of the character, the status of the enemy (optional), the possible actions the character may take, a message window to output the results, and the animations used to represent battle (optional). Upon victory, or defeat with life tokens remaining, the dungeon window will be loaded. Upon defeat with no life tokens remaining, the title screen will be loaded.

2. Hardware Interfaces

This game will support the use of a mouse and keyboard as input devices. The game will be developed to run on the Acadia laptop hardware.

3. Software Interfaces

This game will require the Java 1.5 runtime environment.

4. Communication Interfaces

Network connections will not be required for this game, as it is a single-player offline role playing game.

2. Classes/Objects

1. Character

1. Face

When the user creates a character, he/she will choose a face for that character.

2. Status Points

The created character will have a limited amount of user-chosen attributes that will characterize their player.

3. Attributes

Attributes are the permanent status points which each character possesses. These can be modified when the character levels up or when the character equips different armor or weapons, these stats will change.

4. Experience

If a character wins an encounter, they will gain a set number of experience points.

5. Level

The current level of the character depends on the amount of experience points earned.

6. Life Tokens

The amount of lives the character has. Each time the character dies he/she will lose a life token. When the amount of life tokens reaches zero, it’s game over.

2. Area

1. Room

A room is essentially an area containing a maze in which the character must proceed through to continue to the next room.

1. Maze

Each room is composed of a maze and each maze is different for each room.

2. Door

In order to proceed to the next room, the character must pass through a door. Some doors are locked and some are not. In the case where the door is locked, the character must provide a key and unlock the door. Different doors lead to different rooms.

3. Map

The map is an overview of the entire dungeon. It shows a graphical representation of the dungeon’s floor plan.

3. Encounter

1. Hostile Unit

A hostile unit the character will encounter in a room.

1. Enemy

The basic non-friendly units a character comes in contact with in a room. They become progressively more difficult as the user proceeds into the dungeon.

2. Boss

A significant encounter with a much stronger hostile unit.

4. Item

1. Room Key

The basic key required to open most doors

2. Boss Key

A special key used to open doors to rooms with bosses in them.

3. Treasure Chest

A chest containing items such as keys, potions or gear.

4. Gear

1. Weapon

An object such as a sword that increase the character’s attributes depending on the quality of the weapon. A high quality sword will increase the attributes higher than a low quality sword.

2. Armor

An object such as a vest or shield that increases the character’s attributes depending on the quality of the armor. A high quality shield will increase the attributes higher than a low quality shield.

5. Potion

A vial of liquid which a character can consume to restore HP (health). If a character is already at full health, the potion will not be consumed.

3. Performance Requirements

Upon initialization the game should load and be ready to commence the game within 30 seconds. No action in the game should take longer than 10 seconds to process.

4. Design Constraints

Conan must be written such that object oriented techniques are used allowing code reuse and extendibility in the case that future versions of Conan are built. Conan must utilize Java 1.5, and be able to be downloaded and played. Conan must be compatible with Windows XP.

5. Software System Attributes

1. Reliability

Conan should not fail more than once in 100 complete plays of the game. Whenever a problem is encountered a friendly error message should be shown.

2. Availability

Conan will be able to run on any Dell D620 laptop running Windows XP.

3. Security

There will be no password protected save files in this version of Conan.

4. Maintainability

All classes should be reusable for future versions of Conan and easily extendable.

6. Other Requirements

None.

3. Project Management Plan

1. Introduction

1. Project Overview

This project has been commissioned by Initech, Group B, to OutSource Inc, Group A. The project goal is to design and implement a role playing computer game named, “Conan: Rescue the Princess”. Initech is a well known leader for innovation in the video gaming industry and expects this project to maintain that respected image. The game revolves around the main character, Conan, who must battle his way through a castle to rescue the princess trapped inside and escape with her.

2. Project Deliverables

Please refer to Table 1: Project Schedule for deliverables and their due dates.

|Deliverable |Description |Date |

|S1 |Requirements, Specifications & Management Plan |February 4, 2007 |

|S2 |System Overview Presentation |February 27, 2007 |

|S3 |Detailed Design and Test Plan |March 8, 2007 |

|S4 |User Manual |March 20, 2007 |

|S5 |Project Demo, Game and Documentation |April 3, 2007 |

|S6 |Project Evaluation |April 9, 2007 |

Table 1: Project Schedule

3. Evolution Of The SPMP

This document shall be maintained on a weekly basis by the project leader, Mike Mallinson. It is subject to configuration management by means of the SCMP. It is the project leader's responsibility to submit this document as a CI, and to keep it up to date. This SPMP mainly follows the format of IEEE 1058.1-1987.

4. Reference Materials

- Braude, Eric J. SOFTWARE ENGINEERING: An Object Oriented Perspective [2001]

- Humphrey, Watts S. Introduction to Personal Software Process [2005]

- Robillard, P & Kruchten, P. Software Engineering Process with the UPEDU [2003]

5. Definitions And Acronyms

Please see the attached glossary in Appendix 1.

2. Project Organization

1. Process Model

An iterative development cycle will be used for this project. We will progress through the following four steps of development: requirements analysis, design, implementation and testing. Upon completion of these four steps the first project iteration will be complete. Optional features and any uncompleted desired features will be completed in future iterations.

2. Organizational Structure

The project roles are Project Manager, Lead Developer, Lead Designer, Lead Requirements Analysis, Lead Documenter, Webmaster and Lead Quality Assurance. These project roles have been distributed as shown in Figure 1: Conan: Rescue the Princess Project Organization. All documents will be closely reviewed and approved by all team members before submission.

3. Organizational Boundaries and Interfaces

The project team will interact with the course professor, Dr. Silver as well as the two teaching assistants for the course, Curtis McCarthy and Chad Schrader. Communication between OutSource Inc. and Initech will take place between the project managers, Mike Mallinson for Outsource Inc. and Andrew Marshall for Initech.

4. Project Responsibilities

The project responsibilities show who is charged with ensuring that a particular deliverable is complete on time and verifying it's quality. All team members will participate in completing each deliverable. Table 2: Project Responsibilities shows which team members is responsible for each deliverable.

|Project Deliverable |Team Member Responsible |

|S1: Requirements, Specifications & Management Plan |Billy Logan |

|S2: System Overview Presentation |Mike Mallinson |

|S3: Detailed Design and Test Plan |Richard Peters |

|S4: User Manual |Billy Logan |

|S5: Project Demo, Game and Documentation |Richard Peters |

|S6: Project Evaluation |Mike Mallinson |

Table 2: Project Responsibilities

3. Managerial Process

1. Managerial Objectives and Priorities

The main priority is to ensure that all the base requirements are completed. The next priority is to complete all deliverables by their specified due dates. The next priority is to ensure the quality of all deliverables is up to our standards. The final priority is to complete as many desirable and optional features as possible in the given time restraints.

2. Assumptions, Dependencies, and Constraints

The programming language Java has been selected for use in this project and as such we are dependent and constrained by Java.

3. Risk Management

Table 3: Risk Analysis and Retirement Plan shows currently identified risks and retirement plans as well as orders them based off likelihood and impact in the RBC column.

|Risk # |Risk Title |Likelihood |Impact |RBC |Retirement Plan |Person(s) |

| | |(1 – 5) |(1 – 5) |Calculation | |Responsible |

|1 |Unable to finish |1 |5 |5 |- Plan to finish deliverables |Mike Mallinson |

| |deliverables on schedule. | | | |days in advance of scheduled | |

| | | | | |due date. | |

| | | | | |- Schedule time to complete | |

| | | | | |each deliverable | |

|2 |Deficient XML skills |3 |3 |6 |- Allow time to learn XML |Richard Peters |

| | | | | |- Propose alternative for XML | |

| | | | | | | |

Table 3: Risk Analysis and Retirement Plan

4. Monitoring and Controlling Mechanisms

Weekly team meetings have been scheduled for Fridays from 12:30 PM until 1:30 PM. These meetings will be used for team status updates, designating new tasks and discussing any problems or risks. There is also team workshop sessions scheduled for each Tuesday evening from 6:00 PM – 7:30 PM.

5. Staffing Plan

Table 4: Staffing Plan shows the main responsibilities of each team member. This section does not limit team members to their particular responsibilities; all members are expected and will participate in each deliverable.

|Team Member |Roles |Responsibilities |

|Richard Peters |Lead Designer |- Design documentation deliverable |

| |Lead Developer |- Implementation deliverable |

| | |- Assigning tasks for design and implementation stages of development |

|Billy Logan |Lead Requirements Analysis |- Requirements analysis deliverable |

| |Lead Documenter |- Assigning tasks for requirements analysis |

| | |- Ensuring documentation is complete |

| | |- Completion of the user manual |

|Mike Mallinson |Project Manager |- Overview of team progress |

| |Lead Quality Assurance |- Assisting the team leader for each stage of development |

| |Webmaster |- Quality assurance plan and system testing |

| | |- Creating and maintaining the team website. |

Table 4: Staffing Plan

4. Technical Process

1. Methods, Tools, and Techniques

For this project we will be using Java 1.5 as our implementation language. We will follow the Sun coding style and use Javadoc to document our code.

2. Software Documentation

All supporting documentation will be provided including the generated Javadoc, a user manual, and copies of the requirements analysis and design documents.

3. Project Support Functions

None

5. Work Packages, Schedule, and Budget

1. Work Packages

Work will be divided among our team members by the project manager with assistance from the leader for each deliverable. All members will participate in each deliverable and perform the tasks assigned to them.

2. Dependencies

The progress of the project will depend on OutSource Inc completing each deliverable on schedule as well as Initech reviewing the submitted deliverables in a timely manner.

3. Resource Requirements

According to the provided outline by Initech we will require a team of three for this project. Each team member will require a Dell D620 Laptop.

4. Budget and Resource Allocation

The budget for this project allows for 35 man days at 8 hours per day. This time will be spread amongst all team members equally.

5. Schedule

Please refer to Table 1: Project Schedule for deliverable due dates.

Appendix A – Glossary of Terms

• Initech – the company which OutSource Inc. is creating the game Conan for.

• Life tokens – brings you back to life if you die. You revive at the beginning of the room.

• Game Over – the player has zero life tokens remaining. The character must restart the game to continue or load a game from a previously saved game.

• Stats – the user defined attributes that characterize their player.

• HP – Hit Points – the amount of health Conan has. 1 HP = 1 unit of health.

• Str - Strength – the amount of strength Conan has.

• Level – when a character reaches a specific limit of experience, it will level up. The number of times the character has leveled up is its level.

• Player character – the character created and controlled by the user.

• Monster – the basic enemies in the game.

• Encounter – any time Conan fights a monster, he experiences an encounter.

• Boss – An overly difficult encounter with a monster.

• Chest – treasure chest(s) which may be found in each room and may contain potions, weapons, or armor.

• Inventory – a place where Conan can hold items he finds in the dungeon.

• Map – a drawing showing the dungeon in detail.

Appendix B – Sequence Diagrams for Use Cases

• Creating a Character

• Traveling to Adjacent Grid Location

• Travel to New Location

• Obtaining Item

• Initiate Battle

[pic]

• Attack

[pic]

• Berserker

[pic]

• Use Item

[pic]

• Save Game

• Load Game

• Flee

Defend

-----------------------

Door is locked

Player dies

Player wins encounter

Player enters/exits room.

Player quits/ wins

Player starts game

Initialize

Waiting

Player moves

Player moves

Dungeon: First room

Waiting

Player finds dead-end

Encounter

Player doesn’t move OR

Player moves, door locked

User

:Room

:Game

1. Enter area

2. Change area

4. Display new area

3. Update

2. Enter Name

4. Choose attributes

User

: DisplayCharacter

mainCharacter

: Character

1. Create

3. Select Face

6. Click ‘Save’ Button

5b. Display

5a. Set fields

7. Click ‘Back to game’

8. Start Game

currentGame : Game

User

1. Enter room

2a. Create

5. Update

currentCharacter: Character

2. Pushes arrow(s)

3. Moves

:Game

currentRoom: Room

[pic]

Figure 1: Conan: Rescue the Princess Project Organization

5. Picks up item

4.Choose Item

User

: Item

currentGame

:Game

currentCharacter : Character

1.Steps on item/chest

2. Create

3. Display

7. Close

6. Item in inventory

-----------------------

1

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download

To fulfill the demand for quickly locating and searching documents.

It is intelligent file search solution for home and business.

Literature Lottery

Related searches