SRS Example



Software Requirements Specification

Version 1.0

April 12, 2014

CRE-8 BIT

Enoch Ng (301166780)

Lily Lee (301154565)

Jun Won Lee (301182831)

Table of Contents

Table of Contents………………………………………………………………………..ii

List of Figures……………………………………………..…………………………….iii

1.0. Introduction……………………………………….………..……………………….1

1.1. Purpose………………………………………………………….………………….1

1.2. Scope of Project……………………………………………………………………1

1.3. Glossary…………………………………………………………………………….2

1.4. References………………………………………………………….………………3

1.5. Overview of Document……………………………………………….……………3

2.0. Overall Description………………………………………………….…..………4

2.1 System Environment……………………………………………………………4

2.2 Functional Requirements Specification…………………………….…………5

2.2.1 ID1 - Design Character Variation…………………………………….………..5

2.2.2 ID2 - Test Color Scheme............................................................................6

2.2.3 ID3 - Generate Random Character Variation……………………..…………7

2.2.4 ID4 - Generate Animation with Auto Tween…………………………………8

2.2.5 ID5 - Create Animation Frame By Frame ……………………………………9

2.2.6 ID6 - Review Animation…………………………………………………….…10

2.3 User Characteristics……………………………………………...……………11

2.4 Non-Functional Requirements………………………………..………………11

3.0. Requirements Specification…………………………………..………………12

3.1 Class Diagram…………………………………………………………….……12

3.2 The Scenarios Based on Task Analysis…………………………..…………13

3.2.1 Editing a Character………………………………………………………….…13

3.2.2 New Image for a Character Pose……………………………….……………13

3.2.3 Converting a Character……………………………………………….………14

3.2.4 Different Character Variation…………………………………………………14

3.2.5 Character Library………………………………………………………………15

3.2.6 Character Variations……………………………………………………..……15

3.3 Prototype Explanation…………………………………...………………………16

3.3.1 Character Creation……………………………………………..…………….16

3.3.2 Animation Creation…………………………………………………..……….20

3.4 Detailed Non-Functional Requirements……………………………………..22

3.4.1 Logical Structure of the Data…………………………………………………22

3.4.2 Security…………………………………………………………………………23

List of Figures

Figure 1 - System Environment………………………………………………………4

Figure 2.1 Character in CRE-8BIT………………………………………….………16

Figure 2.2 3D View in CRE-8BIT……………………………………………………16

Figure 2.3 Lock and Unlock in CRE-8BIT…………………………….……………17

Figure 2.4 Multiple Variations…………………………………………………….…17

Figure 2.5 HSV color change………………………………………………….……18

Figure 2.6 Parallel Object Randomizer………………………………….…………18

Figure 2.7 Parallel Object Randomizer Usage 1………………………….………19

Figure 2.8 Parallel Object Randomizer Usage 2…………………………..………19

Figure 3.1 Animation Panel…………………………………………………….……20

Figure 3.2 Animation Play……………………………………………………………20

Figure 3.3 Tween Key Point…………………………………………………….……21

Figure 3.4 Tween Key Point Execution………………………………………..……21

Figure 4 - Logical Structure of the Article Manager Data.…………………………22

1.0. Introduction

1.1. Purpose

The purpose of the document is to present a detailed description of the 8 bit style character art system. It will explain the purpose and features of the system including the interfaces, what the system will do, the constraints under which it must operate and how the system will react to external stimuli.

1.2. Scope of Project

This software system is called CRE-8 BIT, which is a tool for artists and animators to develop 8 bit style character art assets for game development. This system is designed to maximize the user’s productivity by providing tools to assist such as parallel editing and randomizing objects, which other programs don’t provide. By maximizing the user’s work efficiency and production, the system meet the user’s needs while remaining easy to understand and use.

More specifically, this system is designed to allow a user to create and edit pixel 8 bit character images with special tools. The examples of tools in CRE-8BIT are parallel editing, HSV color change, layer visualization and tween animation which can help creating pixel based 2d characters and animation.

1.3. Glossary

|Term |Definition |

|Parallel Editing |Canvases can be locked or unlocked. Unlocked means that when the artist makes changes in|

| |one of the canvases, changes will also appear in any other unlocked canvas. Locked |

| |canvases will not have the changes applied to them. |

|HSV Color Change |The color of pixels on a layer can be changed to a different hue, saturation, or value. |

| |The color change can be applied to only the layer in the currently selected canvas or be|

| |spread to other canvases in the parallel editing mode with the same layer. |

|Layer Visualization |To see how the different layers interact with each other, there is a 3d view of layers |

| |for each canvas. This can make it easier to select layers based on what content is |

| |contained within them. |

|Tween Animation |Similar to what occurs in 3d animation workflows, a skeleton can be created for the |

| |character by marking where the joints are. The joints can be moved and the character |

| |image will distort to follow. With key frames, an animation is created with tween. |

|Exporting |Characters and variations of them can be exported as separate images in popular image |

| |formats like PNG or GIF. For animations, it is also possible to generate a sprite sheet |

| |or an animated GIF. |

|8 Bit Characters |The characters which are generated in pixel based graphics. |

|Developers / Users |Developers / Users who use CRE-8bit to create 2d characters include younger crowd, who |

| |are beginning to experiment with game making and want to have create their own fully |

| |polished 8 bit game, and professional game developers/designers, who will use it as a |

| |prototyping tool for more advanced game. |

1.4. References

Street Fighter 8 Bit Character Images. [Digital Images]. Image retrieved from



Mega man 8 Bit Character Images. [Digital Images]. Image retrieved from

gallery/

A Sample of 8 Bit Game Maker. [Digital Images]. Image retrieved from



1.5. Overview of Document

The next chapter, the Overall Description section, of this document gives an overview of the functionality of the product. It describes the informal requirements and is used to establish a context for the technical requirements specification in the next chapter.

The third chapter, Requirements Specification section, of this document is written primarily for the developers and describes in technical terms the details of the functionality of the product.

Both sections of the document describe the same software product in its entirety, but are intended for different audiences and thus use different language.

2.0. Overall Description

2.1 System Environment

[pic]

Figure 1 - System Environment

CRE-8bit is an offline platform, which has one actor and one cooperating system. The actor, as known as a developer, works alone or share files with other developers. The developer who is the original author of a project can protect files with password protection in order to prevent other developers copy his or her works.

2.2 Functional Requirements Specification

There are six use cases, which are necessary during the project. The uses cases are design character variation, test color scheme alternative, generate random character variation, generate animation with auto tween, create animation frame by frame and review animation.

2.2.1 ID1 - Design Character Variation

Diagram:

[pic]

|Use case: Design Character Variation |

|ID: 1 |

|Brief Description: Basically, with the Parallel Edit function, the 8-Bit Character Designer is able to generate a base design across |

|multiple canvases. Once the base design has been implemented, the designer can continue to make basic tweaks to the character to create |

|multiple character variations. |

|Primary Actors: 8-Bit Character Designer |

|Secondary Actors: |

|Preconditions: 8-Bit Character Designer must have a basic idea of the character he wants to design. |

|Main Flow: |

|1) Designer decides the number of character variations to create in order to set the number of canvases. . |

|2) Designer enables the Parallel Edit function. |

|3) Designer creates a base character model design - a design encompassing all attributes that are the same across character variations. |

|4) Designer disables the Parallel Edit function. |

|5) Designer continues to design, add to and alter each individual design to create multiple character variations. |

|Postconditions: |

|Alternative Flows: |

2.2.2 ID2 - Test Color Scheme Alternative

Diagram:

[pic]

|Use case: Test Colour Scheme Alternative |

|ID: 2 |

|Brief Description: With the Parallel edit function, the 8-bit character designer is able to edit the HSV values of each layer to edit color|

|differences and test color alternatives |

|Primary Actors: 8-Bit Character Designer |

|Secondary Actors: |

|Preconditions: |

|Main Flow: |

|1) Designer enables the Parallel Edit function. |

|2) Designer changes the Hue, Saturation and Value of the layer that he/she wants to see variations in terms of colors schemes. |

|4) Designer disables the Parallel Edit function. |

|5) Designer compares and choose the best alternative. |

|Postconditions: |

|Alternative Flows: |

|5b) Designer dislikes all variations and may continue to change the HSV to test our new color alternatives. |

2.2.3 ID3 - Generate Random Character Variation

Diagram:

[pic]

|Use case: Generate Random Character Variation |

|ID: 3 |

|Brief Description: The 8-bit character designer is able to use the Parallel Edit function and the random generator function to create |

|shapes which will then be generated randomly across canvases. |

|Primary Actors: 8-Bit Character Designer |

|Secondary Actors: |

|Preconditions: |

|Main Flow: |

|1) Designer enables Random Shape Generater. |

|2) Designer creates shape with vector points. |

|3) Designer specifies range of the vector points that can be generated out. |

|4) Designer specifies range of the size of the shape. |

|5) Designer paints out the shape with a brush. |

|6) System will output a similar shape across canvases with the specifics that designer provided. |

|Postconditions: |

|Alternative Flows: |

2.2.4 ID4 - Generate Animation with Auto Tween

Diagram:

[pic]

|Use case: Generate Animation With Auto Tween |

|ID: 4 |

|Brief Description: |

|Animator marks points on the character and uses it to create an animation using auto tweening. |

|Primary Actors: |

|Animator |

|Secondary Actors: |

|None |

|Preconditions: |

|Character design must be completed. |

|Main Flow: |

|Animator enables animation functionality. |

|System presents a tool and the animator uses it to mark points on their character. |

|Animator creates a keyframe with the character. |

|Animator moves the points on the character to alter its pose. |

|Animator creates a keyframe with the the new character pose. |

|Postconditions: |

|A new animation clip has been created. |

|Alternative Flows: |

|None |

2.2.5 ID5 - Create Animation Frame By Frame

Diagram:

[pic]

|Use case: Create Animation Frame By Frame |

|ID: 5 |

|Brief Description: |

|Animator creates an animation by using parallel editing to create each frame. |

|Primary Actors: |

|Animator |

|Secondary Actors: |

|None. |

|Preconditions: |

|Character design must be completed. |

|Main Flow: |

|Animator enables animation functionality and makes new animation clip. |

|Animator creates animation frames using parallel editing in editing mode. |

|Animator selects a canvas and adds it to the animation timeline as a new keyframe and repeats for each frame they created. |

|Postconditions: |

|A new animation clip has been created. |

|Alternative Flows: |

|None. |

2.2.6 ID6 - Review Animation

Diagram:

[pic]

|Use case: Review Animation |

|ID: 6 |

|Brief Description: |

|After completing an animation clip, the animator reviews it. |

|Primary Actors: |

|Animator |

|Secondary Actors: |

|None. |

|Preconditions: |

|Animation clip has to be created. |

|Main Flow: |

|Animator opens animation function. |

|System displays it. |

|Animator selects an animation clip to review. |

|Animator plays the animation clip. |

|Postconditions: |

|None. |

|Alternative Flows: |

|None |

2.3 User Characteristics

The users are younger crowd, beginning at aged 12, who are beginning to experiment with game making and want to have create their own fully polished 8 bit game. In addition, professional game developers/designers who will use it as a prototyping tool for more advanced game. Based on the characteristics of the users, the program supports user friendly and straight forward development environments, which are ready to use without any training.

2.4 Non-Functional Requirements

CRE-8bit provides great efficiency for user. Users can generate random shape to create image patterns. Parallel editing mode provides multiple editing for copying similar patterns. HSV color penal provides quick color changes for multiple images.

The program is easy to be accessible from lay users, who are not familiar with design tools to professional users. The CRE-8bit runs on both Mac and PC environment.

3.0. Requirements Specification

3.1 Class Diagram

[pic]

3.2 The Scenarios Based on Tak Analysis

3.2.1 Editing a Character

Editing the character parts such as hair style or face means the designer has to change details by editing each pixel in an image editing application such as Photoshop.

[pic]

3.2.2 New Image for a Character Pose

Designer has to make new images for each character pose or mode by referencing existing base and making changes by redrawing parts.

[pic]

3.2.3 Converting a Character

Converting a character design to 8 bit style requires the designer to create the character by tracing the image pixel by pixel to convert it to 8 bit style.

[pic]

3.2.4 Different Character Variation

Exploring different character design variations can be done by using layers to separate created parts and hiding/displaying them.

[pic]

3.2.5 Character Library

Using a library of reusable character parts means the designer has to import each one individually to the editing program they are using.

[pic]

3.2.6 Character Variations

After creating different images for all the character modes, a sprite sheet has to be created. The designer has to manually add all the different character variations to a single file and export it themselves.

[pic]

3.3 Prototype Explanation

3.3.1 Character Creation

[pic]

Figure 2.1 Character in CRE-8BIT

The character in CRE-8BIT program is created by brush tool and image tracing.

The character has multiple layers to separate parts such as head, right arm and body.

[pic]

Figure 2.2 3D View in CRE-8BIT

3D view allows that users to check multiple layers in one screen. Users can easily select the layer from 3D view for correction, which has problems or missing parts.

[pic]

Figure 2.3 Lock and Unlock in CRE-8BIT

A user can lock the canvas to change, the lock prevent paint brush tools and parallel editing.

[pic]

Figure 2.4 Multiple Variations

A user can reuse the basic structure of characters to create different variations.

[pic]

Figure 2.5 HSV color change

A user can quickly change the color of multiple canvas easily with HSV color scheme mode.

[pic]

Figure 2.6 Parallel Object Randomizer

Users can create random shapes with parallel object randomizer. This randomizer is useful when the users want to create random patterns for multiple characters.

[pic]

Figure 2.7 Parallel Object Randomizer Usage 1

Parallel Object Randomizer has five menu: show vector points, show point range, edit size range and edit color range and rotatable. In Figure 2.7, users can manipulate vector points and size to create spots for creating new patterns.

[pic]

Figure 2.8 Parallel Object Randomizer Usage 2

Parallel Object Randomizer can be used to create random shape of objects. This is useful when users want to create multiple hair or glass which has random shape.

3.3.2 Animation Creation

[pic]

Figure 3.1 Animation Panel

Animation panel allow users to create animation though multiple frames. Users have several choices to create animation: by drawing manually and by using tween points.

[pic]

Figure 3.2 Animation Play

Users can check the result of animation by pressing the play button.

[pic]

Figure 3.3 Tween Key Point

Users can select point to create animation. Once the points are selected, user can drag points to make variation like jelly.

[pic]

Figure 3.4 Tween Key Point Execution

The running image is created from tween key point. Users can create multiple running image sequences by moving tween key points gradually.

3.4 Detailed Non-Functional Requirements

3.4.1 Logical Structure of the Data

The program structure is given below.

[pic]

Figure 4 - Logical Structure of the CRE-8BIT

The data descriptions of each of these data entities is as follows:

Developer Data Entity

|Data Item |Type |Description |Comment |

|X and Y positions |Pointer |The X and Y positions in Canvas |The position of pixels |

|Color |Integer |The color of a single pixel |The color of pixels |

Characters Data Entity

|Data Item |Type |Description |Comment |

|Layer |Integer |The number of layers inside |Characters have multiple layers. Ex) arms and|

| | | |legs |

|Z-value |Integer |The depth of layer |Z-value prioritize some layers on the top and|

| | | |other layers on the bottom |

|HSV value |Integer |HSV modification |HSV modification provide quick color editing |

| | | |for multiple layers |

|Lock and Unlock |boolean |Lock and Unlock on and off |Developers can select lock or unlock |

| | | |characters |

|Parallel Edit |boolean |Parallel Edit on and off |Developers can draw simultaneously if the |

| | | |parallel edit mode is on |

|Character Name |Text |The name of character |Each character has unique name |

Animation Data Entity

|Data Item |Type |Description |Comment |

|Length |Double |The length of animation |The length of animation |

|Name |Text |The name of animation project |Developer can choose the name of scene ex) |

| | | |walking and running |

|Tween Animation |boolean |Tweening Animation on and off |Developers can use tween animation between |

| | | |two frames |

3.4.2 Security

The developer can set password to protect unauthorized users to write and delete modify project. There is no restriction on read access. If developer want to publish open source projects, he or she can put open source marks on the project.

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

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

Google Online Preview   Download