Вы находитесь на странице: 1из 41

BITPHOTO www.bitphoto.

com

Created by Tong Tat Ming and Tam Wing Page 1 of 41

BITPHOTO Requirements Specification

by

Tong Tat Ming 03011887 Tam Wing 03011879 (Group 6) COMP2221 Lecturer : Prof. Jimming Liu October 25, 2004

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 2 of 41

Software Requirements Specification


Table of Content
1 Graphical Notions Used..............................................................................................3 2 Introduction.................................................................................................................4 2.1 Goals and Objectives........................................................................................4 2.2 System Statement of Scope..............................................................................4 2.2.1 General Requirements...........................................................................4 2.2.2 Major inputs..........................................................................................5 2.2.3 Major outputs........................................................................................5 2.3 System Context................................................................................................5 2.4 Major Constraints.............................................................................................6 2.5 Usage Scenario.................................................................................................7 2.5.1 User Profiles..........................................................................................7 2.5.2 Use-cases...............................................................................................7 3 Data Model and Description.......................................................................................8 3.1 Data object........................................................................................................8 3.2 Relationships Diagram...................................................................................13 4 Functional model and Description............................................................................14 4.1 Subsystem Flow Diagrams.............................................................................14 4.1.1 Main System........................................................................................14 4.1.2 Add picture..........................................................................................15 4.1.3 Change ratio........................................................................................16 4.1.4 Resize..................................................................................................17 4.1.5 Change brightness...............................................................................18 4.1.6 Add text...............................................................................................19 4.1.7 Color pen.............................................................................................20 4.1.8 Add date...............................................................................................21 4.1.9 Watermark...........................................................................................22 4.1.10 Add frame..........................................................................................23 4.1.11 Printing..............................................................................................24 4.2 State Diagram.................................................................................................25 4.3 Interface Description......................................................................................26 4.3.1 Software Interface...............................................................................26 4.3.2 Software interface prototype ..............................................................29 4.3.3 External machine interfaces................................................................30 4.3.4 External System Interface...................................................................30 5 Restrictions, Limitations and Constraints.................................................................31

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 3 of 41

6 Validation Criteria.....................................................................................................32 7 Appendixes................................................................................................................34 7.1 Data dictionary...............................................................................................34 7.2 Software mind map........................................................................................36 7.3 Win condition.................................................................................................41

1 Graphical Notions Used


The following diagram defines the graphical notation used to document the business rules for automation of the Inspection to Compliance Process.

START

The starting point for the automated process

END

The ending point for the automated process

Computer Operation

The results of work performed by the computer

Human Operation

The work that a human must perform to interact with the computer

Secondary Memory

Data read from /write to the secondary memory

Print

Data output to the printer for printing process

Human Decision

A decision that a human must make to direct the computer to perform the proper function

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 4 of 41

2 Introduction
2.1 Goals and Objectives

The main purpose of BITPHOTO is to provide a fast and easy way for basic photo editing and label machine function. The goals of BITPHOTO are: 1 2 3 To provide a basic photo editing function To modify common deficiency in digital photo To provide a light-photo editor which minimize usage of computer resources. E.g. memory, hard disk, operation time etc. To provide an easy use photo editor to user by user-friendly interface, icons and eliminate those not common used functions. To provide label machine function which user can decorate the photo and print out as photo label.

2.2

System Statement of Scope General Requirements

2.2.1

The following general requirements were laid out for our project named BITPHOTO: i A way to output the files by printing for different ways and size. ii A way to provide basic function. E.g. save, print, help, open, undo etc..

iii A way to editing the photo. E.g. resize, change ratio, rotation, add text date add, watermark add. iv v A way to create and edit label photos. A way to decorate photo as a label photo machine.

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 5 of 41

2.2.2
i ii

Major inputs

Source photos in JPEG format from digital camera Source photos in JPEG format from the secondary memory.

2.2.3

Major outputs

i Softcopy of resulting image as an image file in JPEG format. ii Hardcopy of resulting image as poster. iii Hardcopy of resulting image as photo label.

2.3

System Context

Own a digital camera is popular nowadays .High pressure to our old machine was brought by large amount of image files exchange and processing. Bitphoto provide a light version of photo editor and label machine function. To minimized resources and provide basic editing function is our main target. Label photo machine is a brand new function to youngsters. Different to Photoshop ,Photoimpact , ACDsee , simple , basic and effectiveness is our main concerns. Bitphoto help to overcome the revolution constraint on releasing photo to the internet, which provide a much convenience way to share the photos.

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 6 of 41

2.4
i

Major Constraints
Operation Time For learning a new programming language and develop a software within few months. It seems too hash to develop a perfect works , we do try our best but what we concern is the operation time of the software .We want to provide more functions and better interface ,but on the other hand ,the operation time may slow down. Image Type As we know that the user may have different types and formats, sizes of source images, so it is a great challenge to us to overcome we have a lot of ideas but cannot implement them due some programming constraints.

ii

iii Hardware Support Input and output of the images need connecting pc and many hardware devices such as digital camera and printer. In order to widen the compatibility of our software we need to overcome the protocol and other constraints of the image formation. iv Computer Resource As our target of software is to provide a light version of photo editor, thus the program size and the main memory occupation must be minimized. To be balance stability and resource occupation is our main constraint. User Ability Youngsters and junior computer user are our target user .We must keep track with their requirements and computer using ability, knowledge. The variety skill level of end users is a great constraint for the user graphic interface and functions design.

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 7 of 41

2.5

Usage Scenario User Profiles

2.5.1

All function will be open to every end user, our main target user is youngster who are sensitive to the trend.

2.5.2

Use-cases

User The user (mainly teenagers) may use all functions provided, such as basic image modifying function, and label machine function to make fun. Label machine is main target to them as most of the youngsters like to share the funny photo with their friends on the internet.

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 8 of 41

3 Data Model and Description


3.1 Data object
Photo 1 Name
Type Value Description Constraint String Any String The file name of the photo Not Null

Width Type Value Description Constraint Height Type Value Description Constraint

integer 800 - 5000 (in pixel) The file name of the photo Not Null

integer 800 5000 (in pixel) The file name of the photo Not Null

Revolution Type integer Value 800*800 5000*5000(in pixel) Description The total number of pixel on the picture. Constraint Not Null

Pixel 1

X value Type Value Description

integer 0-5000 The pixel horizontal position on the image

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 9 of 41

Constraint

(left: min right: max) Not Null

Y value Type Value Description Constraint

integer 0-5000 The pixel horizontal position on the image (up: min low: max) Not Null

RGB value Type Integer Value 000000-FFFFFF(hexadecimal) Description The red, green and blue brightness value on each pixel Constraint Not Null

RGB intensity 1 Red


Type Value Description Constraint integer 00-FF(hexadecimal) The brightness intensity of red component on a pixel Not Null

Green Type Value Description Constraint

integer 00-FF(hexadecimal) The brightness intensity of green component on a pixel Not Null

Blue Type Value Description Constraint

integer 00-FF(hexadecimal) The brightness intensity of blue component on a pixel Not Null

Picture 1 Name

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 10 of 41

Type Value Description Constraint

String Any string The file name of the picture Not Null

Picture group Type integer Value Positive integer Description The group_id of the picture belonging to Constraint Not Null Revolution Type integer Value 10*10 -2500*2500 (in pixel) Description The total number of pixel on the picture Constraint Not Null

Picture Group 1 Name


Type Value Description Constraint String Any string The group name of the picture Not Null

Group_id Type Value Description Constraint

Integer Positive integer The index of the picture group Not Null

Frame 1 Name
Type Value Description Constraint String Any string The file name of the frame Not Null

Width

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 11 of 41

Type Value Description Constraint

Integer 5100 (in pixel) The width of the frame in number of pixel Not Null

Height Type Value Description Constraint

Integer 5100 (in pixel) The height of the frame in number of pixel Not Null

Date 1

Day Type Value Description Constraint

Integer 1-31 The field to store the day value Not Null

Month Type Value Description Constraint Year Type Value Description Constraint

Integer 1-12 The field to store the month value Not Null

Integer 1900-2100 The field to store the year value Not Null

Mouse position 1 X value


Type Value Description Constraint Integer Positive integer The mouse horizontal position Not Null

Y value

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 12 of 41

Type Value Description Constraint

Integer Positive integer The mouse vertical position Not Null

Text 1
String Type Value Description Constraint String Any String The words contain in the text Not Null

Font Type Value Description Constraint Size Type Value Description Constraint Style Type Value Description

String The name of the valid font The display font of the text Not Null

Integer 0-96 The display size of the text Not Null

Constraint

Integer Positive integer which contain only 1 and 0 (3 bit) The display style of the text bit 0 bold bit 1 italic bit 2 - underline Not Null

Color Type Value Description Constraint

Integer 000000-FFFFFF(hexadecimal) The display color of the text Not Null

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 13 of 41

3.2 Relationships Diagram


Text

Preprocess photo

String Font Size Style Color

Date Process photo Photo Day Month Year

Name Width Height Revolution Image

Before least process photo

pixel

X value Y value RGB value

Picture

Picture group

RGB intensity

Name Picture group Revolution

Name Group_id

Red Green Blue

Frame

Name Width Height

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 14 of 41

4 Functional model and Description


4.1 Subsystem Flow Diagrams 4.1.1 Main System
start

Load GUI

user input the photo storage position

Get image from the source

Another edit

User choose photo edit functions

undo

print

save

NO Exit confirm YES Remove the temporary file

End

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 15 of 41

4.1.2

Add picture

Process photo

Choose picture

Choose size

Remove the picture

Choose position by mouse position

Add the picture on the photo

Confirm YES

NO

Save the result to the process photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 16 of 41

4.1.3

Change ratio

Get the photo revolution

Display a rectangle in 3:2

Choose rectangle position

Confirm

NO

YES

Save the result to the process photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 17 of 41

4.1.4

Resize

Get the photo revolution

Input the revolution want Cancel the resize Resize the photo

Confirm

NO

YES

Save the result to the process photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 18 of 41

4.1.5

Change brightness

Get the photo pixel value

Input the brightness want

Change the photo

Remove the change

Confirm

NO

YES

Save the result to the process photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 19 of 41

4.1.6

Add text

Process photo

Choose font ,size, style ,color

Choose position by mouse Remove the text Input text

Put the text on the photo

NO Confirm YES

Save the result to the process photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 20 of 41

4.1.7

Color pen

Process photo INPUT

Choose the pen color

Choose the pen Size

Remove drawing

NO RESPON

Get Mouse Position

Release NO Confirm

Press/keep press Put color to the pixel

YES Save the result to the process photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 21 of 41

4.1.8

Add date

Process photo

Choose Format

Remove the date

Input date (from clock or user input )

Put the date on the photo

No

Confirm

Yes

Save the result to the process photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 22 of 41

4.1.9

Watermark

Process photo

Choose position

Input text

remove the watermark

Put the watermark on the photo

Confirm

NO

YES

Save the result to the process photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 23 of 41

4.1.10 Add frame

Process photo

Choose Frame

Choose frame width

Remove the frame

Put the photo on the frame

Resize the result photo

CONFIRM YES

NO

Save the result to the process photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 24 of 41

4.1.11 Printing

Process photo

Choose Print Format label poster

Choose Choose label label paper paper

Choose Choose Size Size

CONFIRM

NO

Close the print information page

YES

Print

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 25 of 41

4.2 State Diagram

Ready state

Available input photo

Function Available

Select input photo state

Correct format

Select edit/modify function state


Reselect function

Specify on the chosen function state

Quit state

unsave

Select save/ unsave state

Execute function state

le ab ail av e av

Save state

Save available

Print state

Print Available

Check confirm state

Save available

Modify the photo

Quit the system

Quit available

User input the value


s he it t Qu em yst

Wrong image format/error message

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 26 of 41

4.3 Interface Description 4.3.1 Software Interface

As one of the objective is to giving a user friendly interface. The BitPhoto interface will be simple and using icon instant of words. Once the software is launched, the software will ask the user to open a JPEG photo. Error message will be presented if the image is not in JPEG format. After open the photo successfully, there are six items on the menu bar place at the top of the main display screen. The six items are File, edit, picture, text, effect and Help. Below the menu bar, there is some basic function icons, e.g. open photo, save, save as, undo, redo, print and help. If open photo icon is clicked, there will popup a box to let the user choose their photo. After choose the photo, the photo will show on the right hand side below the menu bar. If save as icon is clicked, there will popup a box to let the user input the new file name and choose the position to save the photo. If undo icon is clicked, the photo will go back to the state of last confirm. If redo icon is clicked, the photo will go back to the state of last undo. If print icon is clicked, there will be a print information page show. User can choose to print out label or poster at there.

If the help icon is clicked, there will show the index of help list to teach the user how to use the software.

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 27 of 41

On the left upper corner, there is the function icon: add frame, add picture (shape, hat, plant, face impress, symbol, face part), color pen, add text, resize, output develop photo ratio, change brightness, change direction, add date and add watermark. Click the different icon will give out different little control panel at the left bottom corner. If add frame icon is clicked, the control panel will show several choice of frame to let the user to choose and input the width wanted. After choose the frame, the frame will appear on the photo and the whole photo will resize. Also there will be a tick and cross icon on the upper right corner to check confirm of the modification. If add picture icon is clicked, the control panel will show a list of icon represent different picture group: shape, hat, plant, face impress, symbol, and face part. After choose the picture group. The choice of relative pictures will be show below. Also there will be a tick and cross icon on the upper right concern to check confirm of the modification. If color pen icon is clicked, the control panel will show the choice of color and pen size .When the user move the cursor over the photo, the cursor will change to a pen user can press the mouse to draw. Also the will be a tick and cross icon on the upper right concern to check confirm of the modification. If add text icon is clicked, the control panel will show the choice of the text font, size, color, and there will be button of bold, italics and underline. When the use move the cursor over the photo, the cursor will change to a T .After the user press on the photo, there will show a area to let the user input the text. Also the will be a tick and cross icon on the upper right concern to check confirm of the modification. If resize icon is clicked, the control panel will show a blank to input the revolution want and the revolution will change by ratio .Also the will be a tick and cross icon on the upper right concern to check confirm of the modification. If output develop photo ratio icon is clicked, there will be a 3:2 rectangle will show, user can use mouse to move the rectangle to

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 28 of 41

choose the area remained .Also the will be a tick and cross icon on the upper right concern to check confirm of the modification. If change brightness icon is clicked, the control panel will show a slider to change the brightness value of the photo .Also the will be a tick and cross icon on the upper right concern to check confirm of the modification. If change direction icon is clicked, the control panel will show 2 buttons. One is turn right and one is turn left. Also the will be a tick and cross icon on the upper right concern to check confirm of the modification. If add data icon is clicked, the control panel will show a text field to let the user input the date. And there will be two button to let the user input the instant day and choose the date format .Also the will be a tick and cross icon on the upper right concern to check confirm of the modification. If add watermark icon is clicked, the control panel will show a text field to let the user input the word use on the watermark .And there will be 5 button to let the user choose the position of the watermark (4 corner and center).Also the will be a tick and cross icon on the upper right concern to check confirm of the modification.

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 29 of 41

4.3.2

Software interface prototype

Ready state
Menu bar

BITPHOTO
file edit picture text effect help

The function icon

Select function state


The edit/modify function button
BITPHOTO
file edit picture text effect help

Photo na :XXX me

Specify on the chosen function state

The area to display the photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 30 of 41

Button use to confirm the change

Not confirm the change

BITPHOTO
file edit picture text effect help

Specify the function

Cha brightne nge ss Slider to change the brightness value

4.3.3
1

Photo na :XXX me External machine interfaces

IBM-compatible Personal Computer -Central Processing Unit Pentium III 500MHz -Random Access Memory 128MB -Keyboard and Mouse Color printer

4.3.4
1 2

External System Interface

Operating System Microsoft Windows 95/98/ME/NT 4/2000 .Net Framework installed

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 31 of 41

5 Restrictions, Limitations and Constraints


i Image Format JPEG is the only image format that we support, as we know, supporting multi-format bring us great technical problem. Feasibility is our main concern, that why, we will seriously considerate the feasibility to add other formats at the end of this project. ii Image Size The input pictures are controlled from 600 x 600 to 5000 x 5000 revolution to maintain the feasibility for our editing and label machine processes. iii Label Machine Function The label image machine needs to determinate the size and the pixel of the resulting image. Moreover, to make a photo in the frame centre is a great effort.

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 32 of 41

6 Validation Criteria
We are creating a brand new photo editor (BitPhoto) which purposed to be user friendly and less computer resource should be used. We do concern the difficulty on using the software, and the speed of the process. We will test the editor with 10 secondary school students, within 20 min, to check whether more than half of them can learn over 50% of the function provided. Also, we will test the time of adding a frame on a 1600*1200 photo. If the software is correctly processing we should be able to do this within 5 seconds by using 1.7GHz CPU with 256mb ram PC. We concern the photo input and output functioning. Thus, we will test whether the photo editor can process the JPEG photo from different DCs in different revolution. Also, we will use another photo viewer to test the output photo is correct or not. We will create an new user interface using Visual Basic.Net. The interface allows users to modify their photo easily. The interface that we design will enable the user to use the function easier. Those tests to be carried out on these interface windows are described below. We will test if we can add frame, picture on the photo. If the software is designed correctly we should be able to do that without any problem. Also We will test if we can add text, date and watermark on the photo. If the software is designed correctly we should be able to output the correct words on the image which is in correct position, size and color. We will test the pen drawing is work or not. We will use the pen in different position with different color and size. If the software is designed correctly we should be able to do this without any troubles.

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 33 of 41

We will also test if we can resize the image in the correct ratio and revolution. If the software is designed correctly we should be able to do this without any troubles. We will also test if we can change the brightness of the image in the correct value. If the software is designed correctly we should be able to do this without any troubles. Also we will test if we can change the direction of the photo. If the software is designed correctly we should be able to output a photo with different direction. We will test for the correctness of the label generated. If the software is designed correctly we should achieve desired size without any problems. We will check the undo button to see if the user can go back to the state before the last changing of the photo without any problems when the button is selected. This should work without any problem. We will check the help button to see if the help menu is made available to the user when help button is selected. The menu should popup without any problems when help button is selected. We will check the cancel button to see if the user can exit out of the window without any problems when the button is selected. This should work without any problem. At the end will test the save button to see if the photo is correctly saved and the temporary file is removed. This should work without any troubles.

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 34 of 41

7 Appendixes
7.1 Data dictionary
1
Image Type Description Photo Type Description

JPEG the digital image include the picture, photo and frame

JPEG the JPEG image get from the DC or secondary memory

preprocess photo Type JPEG Description process photo Type JPEG Description

the original photo

the processing photo

before least process photo Type JPEG Description a backup photo for undo picture Type Description frame Type Description

JPEG the image use to decorate the photo

JPEG the image to decorate the photo edge

date Type Description

Date value (DD/MM/YYYY) the date that took the photo and display on the photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 35 of 41

mouse position Type 2D position Description

the mouse relative position on the screen

10 text
Type Description String the string that will display on the photo

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 36 of 41

7.2 Software mind map


BitPhoto(photo editor) Introduction o Goals and objectives provide image editor basic function modify common deficiency in digital photo provide a lite photo editor minimize usage of computer resource main memory hard disk time of operate

provide a easy use photo editor to youngster and junior computer user user-friendly interface eliminate not common use functions decorate the photo print out as photo label

add label machine effect

Statement of scope input JPEG Image DC photo

processing function label machine function add frame wood silver gold flower ring can choose size shape star

add picture

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 37 of 41 hat man king cap cow boy Queen lady hat heart snow moving star

woman

plant flower grass tree happy unhappy surprise ? ! $ > < mouth eyes ear nose show different color

face impression

symbol

face part

pen color width font color

add text

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 38 of 41 size style editor function output photo ratio resize by pixel brightness change direction left 90 degree 180 degree right 90 degree real date edit date choose position choose position 4:3 to 3:2 italic Bold Underline

add date

Watermark mask

basic function save open Help print on paper redo undo on normal paper on label paper basic save save as

output softcopy modified JEPG image photo label hardcopy

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 39 of 41 poster

Software context DC is popular No easy use Photo editor lot of photo editor use up lot of computer resource lack of photo editor targeted youngster and junior computer user label function is not common in image edit software release photo on internet always need to resize the image operation time image type computer resource program size main memory printer DC knowledge skill

Major constraints

hardware support

user ability

Usage scenario o o User profiles User User Label photo machine function View DC photo User friendly interface Resize photo to release on internet Add watermark on the photo Convert photos into animation Use Filter Basic modify function Help menu Autos recover the photo problem Fast operation time Use less computer resource Use-cases

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 40 of 41

BITPHOTO www.bitphoto.com

Created by Tong Tat Ming and Tam Wing Page 41 of 41

7.3 Win condition


Requirements from stakeholder during interviews: User Label photo machine function View DC photo User friendly interface Resize photo to release on internet Add watermark on the photo Convert photos into animation Use Filter Basic modify function Help menu Autos recover the photo problem Fast operation time Use less computer resource

Оценить