CS 371 Homework #1: Requirements Analysis: Use Cases

 

    The application functionality goal for this project is to successfully run and play the video game. An overview of this project's functionality is the customer who becomes the user in the game makes all the decision making and the system's services will perform other tasks that will let the user enjoy the game. For example, the user selects game start, then the system prompts the user some options, the user then selects game type. After this is done the system will load up all resources needed to start the game, once the game starts the user can then freely move and use the character in the game to accomplish the game's goals. The system by then will be handling all other operations to keep the game going until the user decides to end game.

    The computer application will look like a video game of course based on the whole group's project decision. The idea for project was that  it was going to have to be a first person shooter with weapons selections such as guns and bombs. The game will be designed with graphics in a third dimensional world. A reference to similar game play is Doom, where the user will be the main character using weapons to destroy enemies and achieving mission goals.

    In order for the game or system to be a success it must not have any complications that causes the system to fail and must meet the customer's needs. There are  problems need to be considered like bugs, so they wont make the game crash. Other things that are needed is to have good graphics and fun factor which would be the game play how good is it to keep its customer keep on playing. There are such attributes that need such as the game's usability, efficiency, reliability, maintainability, and reusability.

    The domain is a video game, we have to develop the system from scratch. We would want to fulfill the customers requirements

    Much of the terms for this domain is computer based. We will be mentioning classes, tasks, models, methods, code language and etc...

    To better understand what we must achieve, communication is very important as a major part of the project. Communication is needed between the development group members and the group with the customer. To be successful in implementing all features needed for the project everyone will have to work together so there wont be any misunderstandings that will delay the game from final development.

    In this domain the customer is the user. This person will be making all the decision making on the game, so they will be interacting with the game. The game it self is the service providing it to the user in real time.

    The tools needed for this project are software tools and hardware tools. Software tools are programs for programming the game and designing the game. Hardware tools are the access to computers, and computer parts for testing like the graphics and network cards.

    The tasks and procedures that the system performs varies on the the dependency of the user input. The system only performs output tasks such as prompting to the user information, loading maps and enemies, and other features such as graphics and the physics to keep the game moving.

    A quick overview model of the application would be

    GAME (Title not yet decided upon on)

        Game

            This is the main section where everything gets initiated.

                Classes:     Game scenario, Game type & Options

                Tasks:    Start game

      

        User / Player

            This section contains information on the player stats and movement.

                Classes:    Movement, Life, & User stats

                Tasks:    modify life

        Combat

            This section is about the action in the game, what can be done.

                Classes:    Weapons & Ammo

                Tasks:    modify ammo

        AI

            This section is the AI where it will be taking care of tasks for he system in game play.

                Classes:     System decision making

                Tasks:    search

        Environment

            This section contains where the game will be taking place.

                Classes:     Map

                Tasks:       modify environment

        Enemy      

            This section contains information about the games obstacles for the user to confront with.

                Classes:     Behavior, Life, & Enemy type

                Tasks:    modify life

    A proposed schedule for the completion of the project is divided into weeks starting from initiation as of the first class. With saying that every week we discus the project with the teacher in class and lab time. Also there can be small group meetings with team members any time when requested.

            Week 1 :    discuss project

            Week 2 :    go over project details

            Week 3:    get organized " who is doing what "

            Week 4:    work on project

            Week 5:    present achieved state of work done so far for comments from class

            Week 6:    work on project

            Week 7:    work on project

            Week 8:    present achieved state of work done so far for pointers from class

             Week N:    work on project with previous steps such as week 8 along the way till the final product.

System user case Tasks:

Name: Start game

Summary: User selects new game in game options

Steps:            Actor                                                        System

            User starts program                        The system then prompts game options   

            User the selects game type               

            User then selects new game            The System then initializes game

Name: Modify Life

Summary: User plays game and receives damage

Steps:            Actor                                                        System

            User starts game                        The system then loads scenario   

            User confronts enemy                The system engages in action against user

                                                             The System then hits user

            User receives damage                The system changes user life stat

Name: Modify Ammo

Summary: User plays game and uses weapons

Steps:            Actor                                                        System

            User starts game                        The system sets ammo full  

            User shoots weapon                    The system changes ammo stats               

            User has less ammo                    System keeps track of ammo

Name: Search

Summary: User plays game

Steps:            Actor                                                        System

            User starts game                            The system loads enemy    

            User explores map                         The enemy searches for user in map               

            User confronts enemy                     The System found user

Name: Modify Environment

Summary: User plays game and interacts with the map environment

Steps:            Actor                                                        System

            User starts game                            The system then loads map   

            User shoots wall                            The system recognizes input on wall                

                                                                 The System then changes settings on wall to create a hole

            User sees new hole on wall

 

User case Diagrams:

Game

 

In Game Diagram