com
by
Tong Tat Ming 03011887 Tam Wing 03011879 (Group 6) COMP2221 Lecturer : Prof. Jimming Liu October 25, 2004
BITPHOTO www.bitphoto.com
BITPHOTO www.bitphoto.com
6 Validation Criteria.....................................................................................................32 7 Appendixes................................................................................................................34 7.1 Data dictionary...............................................................................................34 7.2 Software mind map........................................................................................36 7.3 Win condition.................................................................................................41
START
END
Computer Operation
Human Operation
The work that a human must perform to interact with the computer
Secondary Memory
Human Decision
A decision that a human must make to direct the computer to perform the proper function
BITPHOTO www.bitphoto.com
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
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
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
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
2.5
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
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
BITPHOTO www.bitphoto.com
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
integer 00-FF(hexadecimal) The brightness intensity of green component on a pixel Not Null
integer 00-FF(hexadecimal) The brightness intensity of blue component on a pixel Not Null
Picture 1 Name
BITPHOTO www.bitphoto.com
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
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
Integer 5100 (in pixel) The width of the frame in number of pixel Not Null
Integer 5100 (in pixel) The height of the frame in number of pixel Not Null
Date 1
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
Y value
BITPHOTO www.bitphoto.com
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
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
BITPHOTO www.bitphoto.com
Preprocess photo
pixel
Picture
Picture group
RGB intensity
Name Group_id
Frame
BITPHOTO www.bitphoto.com
Load GUI
Another edit
undo
save
End
BITPHOTO www.bitphoto.com
4.1.2
Add picture
Process photo
Choose picture
Choose size
Confirm YES
NO
BITPHOTO www.bitphoto.com
4.1.3
Change ratio
Confirm
NO
YES
BITPHOTO www.bitphoto.com
4.1.4
Resize
Input the revolution want Cancel the resize Resize the photo
Confirm
NO
YES
BITPHOTO www.bitphoto.com
4.1.5
Change brightness
Confirm
NO
YES
BITPHOTO www.bitphoto.com
4.1.6
Add text
Process photo
NO Confirm YES
BITPHOTO www.bitphoto.com
4.1.7
Color pen
Remove drawing
NO RESPON
Release NO Confirm
BITPHOTO www.bitphoto.com
4.1.8
Add date
Process photo
Choose Format
No
Confirm
Yes
BITPHOTO www.bitphoto.com
4.1.9
Watermark
Process photo
Choose position
Input text
Confirm
NO
YES
BITPHOTO www.bitphoto.com
Process photo
Choose Frame
CONFIRM YES
NO
BITPHOTO www.bitphoto.com
4.1.11 Printing
Process photo
CONFIRM
NO
YES
BITPHOTO www.bitphoto.com
Ready state
Function Available
Correct format
Quit state
unsave
le ab ail av e av
Save state
Save available
Print state
Print Available
Save available
Quit available
BITPHOTO www.bitphoto.com
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
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
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
4.3.2
Ready state
Menu bar
BITPHOTO
file edit picture text effect help
Photo na :XXX me
BITPHOTO www.bitphoto.com
BITPHOTO
file edit picture text effect help
4.3.3
1
IBM-compatible Personal Computer -Central Processing Unit Pentium III 500MHz -Random Access Memory 128MB -Keyboard and Mouse Color printer
4.3.4
1 2
BITPHOTO www.bitphoto.com
BITPHOTO www.bitphoto.com
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
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
7 Appendixes
7.1 Data dictionary
1
Image Type Description Photo Type Description
JPEG the digital image include the picture, photo and frame
preprocess photo Type JPEG Description process photo Type JPEG Description
before least process photo Type JPEG Description a backup photo for undo picture Type Description frame Type Description
Date value (DD/MM/YYYY) the date that took the photo and display on the photo
BITPHOTO www.bitphoto.com
10 text
Type Description String the string that will display on the photo
BITPHOTO www.bitphoto.com
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
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
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
BITPHOTO www.bitphoto.com
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
BITPHOTO www.bitphoto.com