Loading...
Flash Player 9 (or above) is needed to view slideshows. We have detected that you do not have it on your computer.To install it, go here
-
-
malger favorited this 1 month ago
-
Software engineering documents
Design of Online Photo Processing System using
Unified Modeling Language(UML)
1453 views | comments | 3 favorites | 0 downloads | 0 embeds (Stats)
More Info
This slideshow is Public
Total Views: 1453 on Slideshare: 1453 from embeds: 0
Slideshow Transcript
- Slide 1: Politecnico Di Milano
PROJECT ON LABORATORY OF SOFTWARE ENGINEERING 2
2006-2007
Design of Online Photo Processing System
using
Unified Modeling Language(UML)
Instructor: Prof. Luigi Casalegno
Submission Date: 25/1/2007
Submitted By
Ferdous Md. Jannatul 707241
Islam Muhammad Nazrul 681918
Mahmood Md Iqbal 707243
Shill Pintu Chandra 707775
Ziaur Rahman Syed 707242
- Slide 2: Modification History
Date Modified by Summery
Version
17 -12 - 2006 Mohammad Jannatul Create Document
1.0.0.1
Ferdous including Index and
use case Diagram
and all top level
diagrams
27-12-2006 Pintu Chandro Shill Activity, sub activity
1.0.0.2
Diagram, & Class
Diagram
28-12-2006 Syed Ziaur Rahman Deployment
1.0.0.3
Diagram & Vison
and Scope
29-12-2006 Iqbal Mahmood Class Diagram &
1.0.0.4
State Chart Diagram
03 - 01 - 2007 Muhammad Nazrul Use Case Diagram
1.0.0.5
Islam Description and
Decompose use case
04 – 01 - 2007 Mohammad Jannatul Include Prototype
1.0.0.6
Ferdous screen shot
06-01-2007 Muhammad Nazrul Marge all and
1.1.0.1
Islam organize
10-01-2007 Mohammad Jannatul Pre-Release Version
1.2.0.1
Ferdous & with final touch
Muhammad Nazrul
Islam
22-01-2007 Mohammad Jannatul Integrate Sequence
1.3.0.1
Ferdous Diagram & finalize
the whole document
24-01-2007 All participants Release version
1.5.0.2
-2-
- Slide 3: Table of Contents
1. Documents of Vision and Scope 5
1.1 Introduction 5
1.1.1 Definition, Acronyms, and Abbreviations 5
1.2 Specifications of vision and context 6
1.3 Specifications of system architecture 7
1.3.1 Hardware 7
1.3.2 Software 8
1.4 Development environment documents 9
1.4.1 Deployment diagram 9
1.4.2 Description 10
1.5 User requirement summery 11
1.5.1 Use case diagram (top level) 11
1.5.2 Description 12
1.6 Framework of the development 14
1.6.1 Logical architectural diagram 14
1.6.2 IDE and tools 15
2. Documents of user requirement specifications 16
2.1 Documents of main use cases structure 16
2.1.1 Use case structure of ‘checking image quality’ 16
2.1.2 Use case structure of ‘upload picture’ 18
2.1.3 Use case structure of ‘process printing’ 20
2.1.4 Use case structure of ‘shipment order’ 22
2.1.5 Use case structure of ‘receive payment’ 24
2.2 Activity diagrams construction 27
2.2.1 Activity diagram (top level) 27
2.2.2 Description
2.2.3 Decomposed Activity diagrams
3. Documents of software requirement specification 42
3.1 Class diagram construction 42
3.1.1 Class diagram 42
3.1.2 Description of key Classes of the system 43
3.1.2.1 Person 43
-3-
- Slide 4: 3.1.2.2 Customer 44
3.1.2.3 Customer details 44
3.1.2.4 Order 44
3.1.2.5 Order details 45
3.1.2.6 Login class 45
3.1.2.7 Pricing Class 46
3.1.2.8 Picture Class 46
3.1.2.9 Album Class 46
3.1.2.10 Picture_Details Class 47
3.1.2.11 Upload_Picture Class 47
3.2 State chart diagram construction 48
3.2.1 State chart diagram 48
3.2.2 Description 49
3.3 Sequence diagram construction 50
3.3.1 Sequence diagram of complete order 50
3.3.2 Description 50
4. Prototype of the System 51
5. Reference and Bibliography 65
Appendix A (Project Plan) 66
-4-
- Slide 5: 1. Documents of Vision and Scope
1.1 Introduction
Online photo processing system software is a commercial product for the normal user to
get digital photo printing service. This document is provided for the requirement and
design specification so that developer can get the clear idea of the system and also the
design specification of the system. It contains also prototype UI which is very useful for
the customer to know about front-end view.
1.1.1 Definition, Acronyms, and Abbreviations
OPPS (Online photo processing system): This is the root name of our system. The
product name will be <company name> + system.
i.e.: Qavi + system name = Qavi Online photo processing system
GUI (Graphical user interface): It uses to represent the front-end of the system which is
the viewable part for the user.
RDBMS (Relational database management system): Database server contains different
types of RDBMS.
SOAP (Service oriented access protocol): This protocol has been used to access Web
service.
LAN (Local Area Network): It uses to make a network between workstation and server.
DAL (Data Access Layer): It is a logical layer to access data from Database
-5-
- Slide 6: 1.2 Specifications of vision and context
Vision:
Printing digital photos through online print shops is significantly gaining market.
Typically, print shops only offer payment via credit card and automatically apply
standard picture settings that not always produce acceptable results. Our vision to
guarantee professional service, higher quality and flexible payment options by
developing an automated system. It will be user friendly and secure application for all
type of user interactions. People are very much optimized in case of spending their time
and they want to access any thing from the internet world by few clicks. So our main
target will be satisfied by developing the following context.
Context:
A user starts the processing by logging (user name and password) in the system. If the
user is new then he/she has to be register to enter in the system. After that, user will place
a new print order by uploading his/her picture files and by specifying the desired print
sizes and qualities. Immediately, the system checks whether the uploaded files are
compatible picture files and whether the pictures' resolutions are suited to the specified
print sizes. In case of problems, the user is asked to modify his order. This procedure
goes on until no further problems can be detected, in which case the order is forwarded to
a photo editing expert, which is in charge of checking the aesthetic quality of the pictures.
If the expert has some comments, he/she fills in a form with appropriate feedback and (if
required) suggests possible editing operations. After that, the user can comment the
provided feedback via the shop's Web site and accept/deny the suggestions. Based on the
user's decisions, the expert applies the accepted modifications and fixes the final cost. If
the expert has no additional comment, he/she just fixes the cost according to the price list.
Once the cost of the order is known, the system sends an email with the required payment
instructions to the user and, also, forwards the pictures to the print department. The user
can choose between online payment via credit card, money order or bank transfer. Credit
card payments are directly supported and processed by the shop's Web site, while the two
other options are not under control of the system, which thus keeps waiting until the
payment occurs. After completing the payment terms, system will ask for the shipment
address. In the meantime, the print department prints the pictures and prepares them for
shipment. Once the payment has arrived, the prints are shipped, and the user has one
month to provide his feedback (and to close the order) before the process terminates
automatically.
-6-
- Slide 7: 1.3 Specifications of system architecture
To implement the on line photo printing system we need some hardware as well as some
software. Here the list of Hardware & Software along with their scope is given.
1.3.1 Hardware
Web Server: Web server will be used to run the application on the web. It will host a
web application. Clients will access the site to put their orders. They can also use the site
for tracking their order and to contact the online photo processing system.
Application Server: Application server serves the customers with the business logic and
data access layer. It is preinstalled with our Online Photo Printing System. All the
business logic is processed here.
Database Server: Database server serves Application Server with data. Data are stored
in Database Server.
Mail (Exchange) Server: System users and the system have to send email to users
through this server. Thus a mail exchange has become an integral part of our system.
LAN/DNS Server: As we are going to take some human intervention about the image
processing, we need some imaging experts working with our system. For computer aided
image processing the experts need computers connected to our system. Thus need for a
LAN in every shop immerges. To connect more than one shop we need WAN/MAN. But
even we think about at least one shop LAN is a must. Therefore, a DNS server is good
enough to maintain such network.
Workstations: For computer aided image processing the experts need computers
connected to our system. Thus need for a LAN immerges. We need some workstations
enriched with some graphic editing software to maintain the workflow of image
processing which will be connected to the LAN.
Scanner: We may face such situation where people are asking to process their printed
photo which doesn’t have a digital copy. Again they may come with some negatives
which are old enough and needs some editing. So we like to keep an option for digitizing
analog images which has a great historical value. For professional quality we must select
a high range scanner.
Printer: For the purpose of office work and printing invoice we need ordinary printer.
Photo Printer: We need to have more than one high quality photo printer. These are the
main hardware which will earn the revenue. We must consider the output quality and
quantity of each of them. The duty cycle of the printers must be enough to mach the
demand of the maximum estimated users.
-7-
- Slide 8: Network Switch: This device is essential to connect all the servers and workstations.
Rack: It is necessary to mount the switch, router and modem used for the network
connections.
Router / Modem: These devices are used as the interface to other networks and internet
work.
1.3.2 Software
Server Operating System: MS Windows 2003 Server with SP1
Application Development Tool: MS Visual Studio .NET 2005
Database Server System: MS SQL 2005 Server
Mail Server System: MS Exchange Server 2003
Workstation Operating System: MS Windows XP with SP2
Office Automation System: MS Office 2003
Mail Client System: MS Outlook Express 2003
Photo analyzer: Embedded Software
Application software: Online Photo Processing System software
Image Processing Software: Adobe Photoshop, Macromedia Fireworks, CorelDraw,
Adobe Illustrator and MS Photo Editor
-8-
- Slide 9: 1.4 Development Environment documents
1.4.1 Deployment diagram
Version: 1.0.0.1
Created: 16/12/06
Revised: 17/12/06
Thin Client
GUI
FAT Client
GUI
0..*
1 <<LAN>>
Web Server
OPPS Application 1
OPPS Application 2
1 .. *
<<Internet>>
1
Server
Application Server
Web service 1 (Image Processing)
Business Logic
Data Access Layer
Web Service 2 (Credit Card Validation)
1
<<SOAP>>
<<LAN>>
1 .. *
Database Server
RDBMS (Sql Server 2005)
Figure 1: Deployment diagram of Online photo processing system
-9-
- Slide 10: 1.4.2 Description
The Deployment Diagram shoes the overall setup of the Online Photo printing System.
The operators or imaging experts in our shops use the online photo printing system on
LAN. They are treated as the FAT Client. The customers or the users of the system
access the online photo printing system through web server. They are treated as the Thin
Client. Web server has the web service for the Thin Client. Application Server serves the
clients with business logics and DB Server with Data. Web services are used for Image
Processing and Credit Card validation. Database Server stores the data and serves Web
Server and Application Server with necessary Data.
- 10 -
- Slide 11: 1.5 User requirement summery
1.5.1 Use case diagram (top level)
On-line Photo Processing System
Version: 1.0.0.1
Created: 16/12/06
New user
Revised: 25/12/06
registeration User Added
Login
Authentication
Place an order
Asked picture
Database Server
Upload picture
Check pictures
«uses»
Update picturs «uses»
«uses» Checking image
quality
Expert Comments
Customer
«uses»
Accept Comments
Fix the final cost
Web Server
Deny sugession
Automated Email
Receive email
System Operator
«extends»
Reply acceptence Process Printing
Operator
«extends»
Photo Printer
Shipping Address
Payment terms
complete Print-out photos
Administrator
Receive payment Shipment order
Receive order
Delete Order
Figure 2: Use case diagram of Online photo processing system
- 11 -
- Slide 12: 1.5.2 Description
The Use case diagram of the online digital photo processing system contains the scope of
the system, the list of system functionalities and the total vision of the possible
interactions between the system and the actors of this system. The main actors identifying
here are:
i) Customer: Customer represents as the primary actor for this system. The
printing company offers the digital photo printing service online for the
customer in different location. The system responds to a request coming from
customer. In this system customer initiates an interaction with the system to
reach an objective or goal.
ii) System operator: The general operator and the administrator are the two
actors and these are the generalizations of system actor.
General Operator: This type of actor supports the system to complete the
main flow of events to achieve the goal. It takes care to delivery the shipment
order to the requested customer.
Administrator: Administrator of the system is responsible to several
interactions with the system to reach the objectives. As an example
administrator can delete the customer order at any time with proper reasoning.
iii) Database Server: A Database server act to store the customer authentications
information and it’s also added the new customer’s information when a new
customer-user registration occurs.
iv) Web Server: This actor is responsible for almost all of the responses to the
customer request to reach the success level and fulfill the customer
satisfaction. Web server take care of new user registration, user
authentication, ask picture, check picture, checking image quality, fix the final
cost, automated email and collecting shipping address.
v) Photo Printer: Printer is responsible for process printing and prints out photo
to delivery this to the requested customer.
Based on the above use case diagram we can identify the following groups of main types
of activities:
i. Customer starts the processing by logging in the system. In case of a new
customer, he/she has to be register to enter in the system.
ii. Customer will place a new print order by uploading his/her picture files with
specifying the desired print sizes and qualities.
- 12 -
- Slide 13: iii. The system checks the picture files with respect of compatibility and resolution
suited to specific print size. In case of problems, the user is asked to modify his
order. This procedure goes on until no further problems can be detected.
iv. The order is forwarded to a photo editing expert to check the aesthetic quality of
the pictures. If the expert has some comments, he/she fills in a form with
appropriate feedback and suggests possible editing operations.
v. The user can comment the provided feedback via the shop's Web site and
accept/deny the suggestions.
vi. The expert applies the accepted modifications and fixes the final cost.
vii. The system sends an email with the required payment instructions to the user
and forwards the pictures to the print department.
viii. Credit card payments are directly supported and processed by the shop's Web
site.
ix. After completing the payment terms, shipment address will be collected. The
print department prints the pictures and prepares them for shipment.
x. Once the payment has arrived, the prints are shipped, and the user has one
month to provide his feedback and after that the process terminates
automatically.
- 13 -
- Slide 14: 1.6 Framework of the development
1.6.1 Logical architectural diagram
Figure 3 : Logical architectural diagram
It is basically the coding layer of our application. There are there layers between User
Interface (UI) and Database. Those are:
Façade Layer: It contains the all methods/ function of the application to update, delete
and insert in to database. It is directly connected to the User interface and also business
layer. Sometimes it access Data Access Layer (DAL) directly if the functionality does not
require any business logic.
Business Layer: It contains the whole business logic of the system. If developer requires
any changes in the business logic after develop the software then they will only change
on this layer. They do not need to change the whole application. BL connected with DAL
and Façade Layer.
Data Access Layer: It is used to access data from Database and only know the query or
stored procedure of the database to retrieve, modify data like SELECT, UPDATE.
- 14 -
- Slide 15: Base Layer: It contains the all configuration setup of the system and base class of the
different layers.
1.6.2 IDE and tools
Visual Studio.Net 2005: We have used Visual Studio.Net 2005 as an Integrated
Development Environment (IDE) to develop our prototype.
Visio 2003 & UML 2.0: We have used Visio 2003 to draw all design with UML2.0
notation.
SQL Server 2005: We have stored our sample database in to SQL Server 2005 Express
Edition
- 15 -
- Slide 16: 2. Documents of User requirement specifications
2.1 Documents of main use cases structure
We are describing some of the use cases from the above diagram to understand deeply:
2.1.1 Use case structure of ‘checking image quality’
Use Case Name
‘Checking image quality’ of the uploaded picture
Brief Description
The use case shows how the system interacts with the uploaded pictures by the
customer to print. It performs a general checking on the image quality to further
proceed with providing comment to the customer or fixing the final cost.
Design Scope
The scope of this specific focuses only on the uploaded pictures image or
aesthetic quality and not on the entire online digital photo processing system.
Level
User goal.
Primary Actor
The customer.
Stakeholders and Interests
The customer:
● Get feedback about the image quality before printing the photo to
modify according to their suggestions.
● Get better service.
The owner (system):
● Improve service quality by providing better quality printed photo.
● Improve customer satisfaction.
Pre-conditions
● On-line connection availability
● Already available in registered customer’s database
● Upload pictures to print.
- 16 -
- Slide 17: ● Adjust pictures to better suited with printing resolution and file compatibility.
Minimal Guarantee
The system checks the image quality for the uploaded photos.
Success Guarantee
The customer gets a feedback from the system with suggestions to modify the
uploaded photos and the system successfully checks the image quality to improve
the printing quality to provide better service for the customer.
Trigger
The customer wants to print digital photo.
Main Success Scenario
1. The customer accesses the web-site
2. The new customer performs registration
3. The system recognizes the authenticated customer.
4. The customer uploads the picture with print sizes and quantity.
5. The system checks the uploaded pictures for file compatibility and
resolution suited to specific print sizes.
6. The system ask customer to modify his order.
7. Repeat the steps 4 and 5 until no further problems can be detected.
8. Editing expert check the aesthetic quality of the pictures. If the expert has
some comments, he/she fills in a form with appropriate feedback and
suggests possible editing operations.
9. The expert applies the accepted modifications and fixes the final cost.
Alternatives
*.A.1 The customer can cancel the printing order whenever he wants
2.A.1 The customer is new: he has to insert his data
6.A.1 The customer has to modify according to the suggestions.
Exceptions
*.A.1 The system alerts the user if there are technical problems or system failure.
3.A.1 The system alerts the customer if it cannot verify the authenticate user and
refer to the step 2 to register again.
- 17 -
- Slide 18: Technology and Data variation
The logon falls automatically after 10 minute if it does not come to carry out some
actions from the customers.
2.1.2 Use case structure of ‘upload picture’
Use Case Name
‘Upload picture’ to print digital photo.
Brief Description
The use case shows how the system interacts with the customer to upload the
digital pictures that he/she wants to print. When a customer log in to the system
and place order for printing digital photo than the system ask him/her to upload
the pictures to further proceed with performing a checking on image quality to
print the uploaded pictures.
Design Scope
The scope of this specific focuses only on the customer’s who log on to print
pictures and requested to upload desired pictures to further process before final
print and not on the entire online digital photo processing system.
Level
Customers goal with uploading the desired pictures..
Primary Actor
The customer.
Stakeholders and Interests
The customer:
● Uploaded the desired pictures and getting feedback about the uploaded
image quality as well as file compatibility.
● Get better service.
The owner (system):
● Improve service quality by providing better quality printed photo.
● Improve customer satisfaction.
Pre-conditions
● On-line connection availability
● Already available in registered customer’s database
● Customer log on to the system
- 18 -
- Slide 19: ● Customer place an order to print.
Minimal Guarantee
The system uploaded the customers pictures.
Success Guarantee
The system uploaded the pictures and perform a checking on the uploaded
pictures to provide a feedback from the system with suggestions to modify the
uploaded photos and the system successfully uploaded and checks the image
quality to improve the printing quality to provide better service for the customer.
Trigger
The customer wants to print digital photo.
Main Success Scenario
1. The customer accesses the web-site
2. The new customer performs registration
3. The system recognizes the authenticated customer.
4. The customer places an order to print digital photo.
5. The customer uploads the picture with print sizes and quantity.
6. The system checks the uploaded pictures for file compatibility and resolution
suited to specific print sizes.
Alternatives
*.A.1 The customer can cancel the printing order whenever he wants
2.A.1 The customer is new: he has to insert his data
Exceptions
*.A.1 The system alerts the user if there are technical problems or system failure.
3.A.1 The system alerts the customer if it cannot verify the authenticate user and
refer to the step 2 to register again.
Technology and Data variation
The logon falls automatically after 10 minute if it does not come to carry out some
actions from the customers.
- 19 -
- Slide 20: 2.1.3 Use case structure of ‘process printing’
Use Case Name
‘Process printing’ of the uploaded picture
Brief Description
The use case shows how the system interacts with printer to print the digital photo
after getting acceptance email from the customer to finalize the modification of
the uploaded pictures. It performs the process the printing photo to further
proceed with printout photo and delivery the printed photo to the customer.
Design Scope
The scope of this specific focuses only on the finalized pictures to process
printing interacts with printer and not on the entire online digital photo processing
system.
Level
User goal.
Primary Actor
The customer.
Stakeholders and Interests
The customer:
● Get better service.
The owner (system):
● finalize the uploaded pictures and pass to printer to process for printing.
● Improve service quality by providing better quality printed photo.
● Improve customer satisfaction.
Pre-conditions
● On-line connection availability
● Already available in registered customer’s database
● Upload pictures to print.
● Adjust pictures to better suited with printing resolution and file compatibility.
● Customer accept the final cost.
● Customer send email to accepted the picture finally after all modification and
aware about cost.
- 20 -
- Slide 21: Minimal Guarantee
The system receives the acceptance email from the customer and sends the
pictures to printer to print.
Success Guarantee
The system gets a feedback from the customer with acceptance of the uploaded
photos and the system sends these pictures to printer to process printing for
improving the printing quality to provide better service for the customer.
Trigger
The system gets acceptance email from the customer.
Main Success Scenario
1. The customer accesses the web-site
2. The new customer performs registration.
3. The system recognizes the authenticated customer.
4. The customer uploads the picture with print sizes and quantity.
5. The system checks the uploaded pictures for file compatibility and resolution
suited to specific print sizes.
6. The system ask customer to modify his order.
7. Repeat the steps 4 and 5 until no further problems can be detected.
8. Editing expert check the aesthetic quality of the pictures. If the expert has
some comments, he/she fills in a form with appropriate feedback and
suggests possible editing operations.
9. The expert applies the accepted modifications and fixes the final cost.
10. The system sends an email with the required payment instructions to the user
11. The customer aware about printing cost and payment method and conform
about printing acceptance.
12. The system forwards the pictures to the print department.
13. The printer processes the pictures to print out the pictures.
Alternatives
*.A.1 The customer can cancel the printing order whenever he wants
2.A.1 The customer is new: he has to insert his data
6.A.1 The customer has to modify according to the suggestions.
Exceptions
*.A.1 The system alerts the user if there are technical problems or system failure.
- 21 -
- Slide 22: 3.A.1 The system alerts the customer if it cannot verify the authenticate user and
refer to the step 2 to register again.
10.A.1 The customer reply to the automated email to the system to deny the
pictures than the system will cancel the further processing to print the uploaded
pictures and the order will be cancel.
Technology and Data variation
The logon falls automatically after 10 minute if it does not come to carry out some
actions from the customers.
2.1.4 Use case structure of ‘shipment order’
Use Case Name
‘Shipment order’ of the ordered pictures.
Brief Description
The use case shows how the system interacts with the customer to delivery the
printed pictures after getting acceptance email from the customer to finalize the
modification of the uploaded pictures as well as completion the payment. It
performs the delivering the printing photo to the customer to further proceed with
getting receivable feed back from the customer and stop the process.
Design Scope
The scope of this specific focuses only on the delivering the printed pictures to the
customers and not on the entire online digital photo processing system.
Level
User goal.
Primary Actor
The customer.
Stakeholders and Interests
The customer:
● Get better service.
The owner (system):
● Print out the ordered pictures and delivery to the customers.
● Improve service quality by providing better quality printed photo.
● Improve customer satisfaction.
- 22 -
- Slide 23: Pre-conditions
● On-line connection availability
● Already available in registered customer’s database
● Upload pictures to print.
● Adjust pictures to better suited with printing resolution and file compatibility.
● Customer accept the final cost.
● Customer send email to accepted the picture finally after all modification and
aware about cost.
● Customer are asked for delivery address and collect the shipping address.
● Customer complete the payment for printing.
● The printer printout the ordered pictures to delivery.
Minimal Guarantee
The customer receives the printed photo after completion the payment.
Success Guarantee
After completing the payment the system sends the printed pictures to the
customer to provide better service for the customer and when the customer
receives the printed pictures, the system gets a feedback from the customer for
receiving the shipping pictures of the ordered photos.
Trigger
The system gets acceptance email from the customer and completion the payment.
Main Success Scenario
1. The customer accesses the web-site
2. The new customer performs registration.
3. The system recognizes the authenticated customer.
4. The customer uploads the picture with print sizes and quantity.
5. The system checks the uploaded pictures for file compatibility and resolution
suited to specific print sizes.
6. The system ask customer to modify his order.
7. Repeat the steps 4 and 5 until no further problems can be detected.
8. Editing expert check the aesthetic quality of the pictures. If the expert has
some comments, he/she fills in a form with appropriate feedback and suggests
possible editing operations.
9. The expert applies the accepted modifications and fixes the final cost.
10. The system sends an email with the required payment instructions to the user
11. The customer aware about printing cost and payment method and conform
about printing acceptance.
12. The system forwards the pictures to the print department.
- 23 -
- Slide 24: 13. The printer processes the pictures to print out the pictures.
14. Customer is asked for delivery address and collects the shipping address.
15. Customer completes the payment for printing.
16. The printer printout the ordered pictures to delivery.
17. The system gets feed back from the customer for receiving the shipping
printed photos and stop the process.
Alternatives
*.A.1 The customer can cancel the printing order whenever he wants
2.A.1 The customer is new: he has to insert his data
6.A.1 The customer has to modify according to the suggestions.
Exceptions
*.A.1 The system alerts the user if there are technical problems or system failure.
3.A.1 The system alerts the customer if it cannot verify the authenticate user and
refer to the step 2 to register again.
10.A.1 The customer reply to the automated email to the system to deny the
pictures than the system will cancel the further processing to print the uploaded
pictures and the order will be cancel.
Technology and Data variation
The logon falls automatically after 10 minute if it does not come to carry out some
actions from the customers.
2.1.5 Use case structure of ‘receive payment’
Use Case Name
‘receive payment’ to print the ordered pictures.
Brief Description
The use case shows how the system interacts with the customer to receive the
payment to print. It performs a general consideration on payment to further
proceed with shipment order as well as receive order and finally stop the process.
- 24 -
- Slide 25: Design Scope
The scope of this specific focuses only on the payment to print the ordered
pictures and not on the entire online digital photo processing system.
Level
System (owner) level
Primary Actor
The customer.
Stakeholders and Interests
The customer:
● Pay for the printing.
● Get better service.
The owner (system):
● Improve service quality by providing better quality printed photo.
● Verify about payment status.
● Improve customer satisfaction by delivering the printed photos to the
customer as soon as possible.
Pre-conditions
● On-line connection availability
● Already available in registered customer’s database
● Upload pictures to print.
● Adjust pictures to better suited with printing resolution and file compatibility.
● Customer accept the final cost.
● Customer send email to accepted the picture finally after all modification and
aware about cost.
Minimal Guarantee
The customer receives the printed photo after completion the payment.
Success Guarantee
After completing the payment the system sends the printed pictures to the
customer to provide better service for the customer and when the customer
receives the printed pictures, the system gets a feedback from the customer for
receiving the shipping pictures of the ordered photos.
Trigger
The customer completes the payment.
- 25 -
- Slide 26: Main Success Scenario
1. The customer accesses the web-site
2. The new customer performs registration.
3. The system recognizes the authenticated customer.
4. The customer uploads the picture with print sizes and quantity.
5. The system checks the uploaded pictures for file compatibility and resolution
suited to specific print sizes.
6. The system ask customer to modify his order.
7. Repeat the steps 4 and 5 until no further problems can be detected.
8. Editing expert check the aesthetic quality of the pictures. If the expert has
some comments, he/she fills in a form with appropriate feedback and suggests
possible editing operations.
9. The expert applies the accepted modifications and fixes the final cost.
10. The system sends an email with the required payment instructions to the user
11. The customer aware about printing cost and payment method and conform
about printing acceptance.
12. The system forwards the pictures to the print department.
13. The printer processes the pictures to print out the pictures.
14. Customer is asked for delivery address and collects the shipping address.
15. Customer completes the payment for printing.
16. The printer printout the ordered pictures to delivery and the system gets feed
back from the customer for receiving the shipping printed photos and stop the
process.
Alternatives
*.A.1 The customer can cancel the printing order whenever he wants
2.A.1 The customer is new: he has to insert his data
6.A.1 The customer has to modify according to the suggestions.
Exceptions
*.A.1 The system alerts the user if there are technical problems or system failure.
3.A.1 The system alerts the customer if it cannot verify the authenticate user and
refer to the step 2 to register again.
10.A.1 The customer reply to the automated email to the system to deny the
pictures than the system will cancel the further processing to print the uploaded
pictures and the order will be cancel.
Technology and Data variation
The logon falls automatically after 10 minute if it does not come to carry out some
actions from the customers.
- 26 -
- Slide 27: 2.2 Activity Diagrams construction
2.2.1 Activity Diagram (Top level)
Figure 4: Activity diagram of Online photo processing system
- 27 -
- Slide 28: In Online photo processing system, the front view of activity diagram is shown in the
above figure. The activity diagram are composed of several activities and there
relationship between these activities. In the On line photo processing system, activities
are the following:
Login authenticate user
Place order
Upload picture to print
Check Picture type
Modify Picture
Processing picture
Receive feedback
Deny Order
Accept Order
Prepare final cost
Provide shipment address
Choose payment terms
Process Printing
Receive payment
Print photos
Shipment order
Receive packet
Close order
Descriptions of these activities are given in below -
Login authenticate user:
In online photo processing system, only old customers are interact to the system and
place their order to the system by using login. In order to login in the system, user must
have a user name and password. System uses these user name and password to
authenticate that the user is valid or not. New customers are registered at first and collect
user name and password and interact to the system same as old customer.
Place order:
The main function of place order activity is that when a customer login in the system then
customer place order in the system to process.
Upload picture to print:
In Upload picture to print activity, users upload pictures and these pictures are process
and print.
- 28 -
- Slide 29: Check Picture type:
The functions of the Check picture type activity are to check the picture type i.e. jpg, bmp
etc., to check the resolution of the picture in bpp, and the appropriate size of the picture to
print.
Modify Picture:
On line photo processing system supports appropriate size, resolution and type of picture
to process and print. If customers uploaded pictures are not satisfy the system
requirements pictures then uploaded pictures are to be modified. In order to satisfy the
system requirement Modify picture activity modifies the picture resolution, size and type.
Processing picture:
Processing picture activity is to select pictures which are to send in printing section to
print and process.
Receive feedback:
Pictures processing completed for print then system send a message to the customer and
wait for an acknowledgement that the customer Deny order or Accept order. If the
customer deny order then system goes to the end state otherwise system goes to the
prepare final cost activity.
Deny Order:
It is the customer acknowledgement for printing a picture. Customers deny order then the
system goes to the end state.
Accept Order:
It is the customer acknowledgement for processing an order. Customer accept order then
the system goes to the prepare final cost activity.
Prepare final cost:
The functions of prepare final cost activity is that customer accept order and system
calculates total cost of that order.
- 29 -
- Slide 30: Provide shipment address:
Customer provides shipment address to the system that the order and necessary
documents are delivered to the customers address. After provide shipment address
customer choose payment terms to pay bill.
Choose payment terms:
In online photo processing system customer choose different types of payment system.
Choose payment terms activity provide these payment system. Payment terms are online
credit card, direct pay, and banking system.
Process Printing:
This is the main activity of the sales section. The main function of the process printing
activity is that select picture and send order file to the photo printing section of the
system.
Receive payment:
Receive payment is the actions of finance section in sales department. Finance section
received payment from the customer.
Print photos:
Actions of print photos activity are to print customer ordered photos.
Shipment order:
The main function of shipment order activity is to deliver customers order in their
respective shipment address.
Receive packet:
The action of Receive packet is that customers receive their ordered packet.
Close order:
The function of close order action state is to close customer order which order
respective works are finished.
- 30 -
- Slide 31: Customer System
Version: 1.0.0.1
Created: 26/12/06
Revised: 26/12/06
Place order request
Request to select or create album
Select or create new album
Select photo
Click upload
Check picture type
Change picture
Request to upload new picture
Select new picture
Picture uploaded
Figure 5: Activity diagram for upload picture to print
- 31 -
- Slide 32: The activity Upload Picture to print is decomposed in the following sub activity:
Place order request.
o
Request to select or create album.
o
Select or create new album.
o
Select photo.
o
Click upload.
o
Check picture type.
o
Change picture.
o
Request to upload new picture.
o
Select new picture.
o
Picture uploaded.
o
Description of these sub activities are the following:
Place order request:
Customer places an order request to the system. System performs some actions under this
request.
Request to select or create album:
The functions of Request to select or create album sub-activity are customer request to
select or create album to store the uploaded picture.
Select photo:
The action of select photo sub-activity is selected a picture which is upload and store in
album.
Click upload:
The action of click upload sub-activity is when customer selects a picture to upload and
click upload button to store the selected picture in album.
Check picture type:
The function of check picture type is to check the uploaded picture type i.e, jpg, bmb etc.
because system supports specific picture.
Change picture:
The action of change picture sub-activity is change picture which picture is not
satisfying the picture requirement of the system. Picture requirements mean the type,
size and the resolution of the picture.
- 32 -
- Slide 33: Request to upload new picture:
The function of Request to upload new picture is system request a customer to upload
new picture instead of the old picture because the old picture is not satisfy the system
requirement picture.
Select new picture:
The sub-activity select new picture is to select a new picture to upload instead of the
old picture which is not satisfy the system requirement picture.
Picture uploaded:
The action of picture uploaded sub-activity is to upload new picture and store this
picture in the album.
- 33 -
- Slide 34: Customer System
Version: 1.0.0.0
Created: 26/12/06
Revised: 26/12/06
Select picture
Verity picture quality to print
Check picture pixel and format
Check requested size
Send to analyzer
Receive expart comments
Figure 6: Activity diagram for processing picture
The activity Processing picture is decomposed in the following sub activity:
Select picture.
o
Verify picture quality to print.
o
Check requested size.
o
Check picture pixel and format.
o
Send to analyzer.
o
Receive expert comments.
o
- 34 -
- Slide 35: Description of these sub activities are the following:
Select picture:
The function of select picture sub-activity is to select picture which picture is
processed to print.
Verify picture quality to print:
The action of verify picture quality to print sub-activity is verify the selected picture
quality i.e, the requested size and pixel and format of the picture. This sub-activity is
decomposed into two sub-activity check requested size and check picture pixel and
format.
Check requested size:
The function of requested size sub-activity is to process the requested size and check
the picture size to meet the system requirement picture.
Check picture pixel and format:
The action of Check picture pixel and format is to check the picture pixel in bpp and the
format of the selected picture.
Send to analyzer:
The function of send to analyzer sub-activity is to send processed picture to the analyzers
who analyze the picture size, picture pixel and format of the processed picture.
Receive expert comments:
Expert prepares a comment to the selected picture and sends it to the customer and
customer receives the expert comments.
- 35 -
- Slide 36: Version: 1.0.0.0
Created: 26/12/06
Revised: 26/12/06
System
Customer
Ger acceptence
Ask payment terms
Choose payment Type
Not valid
Provide check details Provide credit card details
verify check or card validaty
[Valid]
Figure 7: Activity diagram for choose payment terms
The activity Choose payment terms is decomposed in the following sub activity:
o Get acceptance.
o Ask payment terms.
o Choose payment type.
- 36 -
- Slide 37: o Provide check details.
o Provide credit card details.
o Verify check or card validity.
Description of these sub activities are the following:
Get acceptance:
System receives a acknowledgment to accept order from customer. After getting the
acceptance systems provide customer different type of payment terms.
Ask payment terms:
The action of ask payment terms sub-activity is System ask customer about a
payment terms which is choice by customer.
Choose payment type:
The function of Choose payment type sub-activity is to choice payment type to pay bill.
This sub-activity is divided into two sub-activity provide check details and provide credit
card details.
Provide check details:
The function of provide check details sub-activity is to if customer select the payment
term is bank check then customer provide check details to the system.
Provide credit card details:
The function of provide check details sub-activity is to if customer select the payment
term is credit card then customer provide credit card details to the system.
Verify check or card validity:
The action of the verify check or card validity sub-activity is to check validity of
credit card and check details.
- 37 -
- Slide 38: Sales
Version: 1.0.0.0
Created: 26/12/06
Revised: 26/12/06
Select order
Check order status
Send to printer
Receive payment
Packet print-out photos
Figure 8: Activity diagram for process printing
The activity process printing is decomposed in the following sub activity:
Select order.
o
Check order status.
o
Receive payment.
o
Send to Printer.
o
Packet print-out photos.
o
- 38 -
- Slide 39: Description of these sub activities are the following:
Select order:
Select order sub-activity selects the order which order is to be accepted by the
customer. The main function of select order sub-activity is the customer accepted is
going to be processed to print.
Check order status:
The main action of the check order status is to check the current position of the
customer order. The current position of the order is divided into two sub-activities i.e,
receive payment and send to printer.
Receive payment:
The function of the Receive payment sub-activity is to receive bill from customer. It
is one of the customer order status.
Send to Printer:
The function of Send to Printer sub-activity is to send the customer processed order to
the printing section in on line photo processing system.
Packet print-out photos:
Packet print-out photos sub-activity is to packet all photos which packet is to be
delivered to the customer shipment address.
- 39 -
- Slide 40: Sales
Version: 1.0.0.0
Created: 26/12/06
Revised: 26/12/06
Select printed photos
Check photos with order request
Create Invoice
Paketing photos to shipment
Post it to the shipment adddress
Figure 9: Activity diagram for shipment order
The activity process printing is decomposed in the following sub activity:
o Select printed photos.
o Checking photos with order request.
o Packing photos to shipment.
o Create invoice.
o Post it to the shipment address.
- 40 -
- Slide 41: Description of these sub activities are the following:
Select printed photos:
Select printed photos sub-activity is to select printed photos which photos are to be
delivered to the customer shipment address.
Checking photos with order request:
The function of Checking photos with order request sub-activity is to check photos
with customer order to meet the customer requirement.
Packing photos to shipmen:
Packing photos to shipment sub-activity is to packet all photos which packet is to be
delivered to the customer shipment address.
Create invoice:
Create invoice sub-activity is to prepare invoice which mention all details price and
items information in customer order.
Post it to the shipment address:
The action of Post it to the shipment address sub-activity is post customer printed
photos packet with invoice to the customer shipment address.
- 41 -
- Slide 42: 3. Documents of Software requirement specification
3.1 Class Diagram construction
3.1.1 Class Diagram
Person {Abstruct}
-id : long
-firstName : string
-lastName : string
Login
-getEmail {Abstruct}() : string
-customer : Customer
-getPass {Abstruct}() : string
+validUser(in user : string, in pass : string) : bool
+isAlreadyLogin(in user)
1
Customer_Details
Customer -customer : Customer
+address : string
-e_mail : string
+phone : string
-pass : string 1
+shippment Adress : string
+changePassword() : bool
+paymentTypeID : long
+getEmail() : string
+getDetails() : Customer_Details
+getPass() : string 1 1 +updateDetails()
1
1..*
Order
Order_Status
-orderID : long
-statusID : long
-customer : Customer
-name : string 1..*
-orderDate : object
0..*
1 1
+changeStatus() : bool
-statusID : long
-isDelevered : bool Order_Details
1
+addOrder() -picture : Picture
+updateOrder() -quantity : long
+getOrder() : Order
1 -size : string
+printOrder() -type : string
-priceId : long
Order_Preview
+getOrderDetails() : Order_Details
-order : Order Album
0..* +updateDetails()
Pricing
+getOrder() : Order -albumID : long
-priceId : long
+showOrder() -albumName : string
1..*
-oldPrice : double
-picture : Picture
-newPrice : double
+createAlbum(in name)
-lastModified : object
+updateAlbum()
1
+getPricebyID() : Pricing
+updatePrice() 1..*
1..*
1..*
+deletePrice()
1
Picture
-pID
1
-pictureTitle Picture_Details
+getPicturesDetails() : Picture -picture : Picture
Upload_Picture
-title : string
-picture : Picture
-description : string
1
-albumId : long
+getDetails() : Picture_Details
+upload() : bool
+updatePicture()
1
+checkImageType() : bool
+writeToDB(in pic : Picture)
Figure 10: Class diagram for on-line photo processing system
- 42 -
- Slide 43: 3.1.2 Description of key Classes of the system
Using the above class diagram we represent the vocabulary of our online photo
processing system. It is built and refined when system is developed. Each class
description consists of a class name, state variables, reference variables and methods. We
make a clear distinction between variables containing the state of an object and variables
that express which other objects a given object knows. A class description defines the
types of each variable as well as a signature for each method.
The objectives of class diagram are.
Names and models concepts existing in the system.
Specifies collaboration paths.
Specifies the basic logical schema.
In On line photo processing system, the front view of class diagram is shown in the above
figure. The class diagram are composed of several classes and there relationship between
these classes. In the On line photo processing system, classes are the following:
Person
Customer
Customer_Details
Login
Order
Order_Details
Order_Preview
Order_Status
Pricing
Album
Picture
Picture_Details
Upload_Picture
To understand better, we explain these classes in datival in below –
3.1.2.1 Class Name Person
The class represents a person who interacts with the online photo processing system. It
contains all the relative data and methods to the management of a person. It is an abstract
class which contains three public attributes id, firstName and lastName. Among These
attributes id is long type and firstName and lastName are string type. In the second part
of this class has two methods, one method is getEmail() and another is getPass(). These
two methods defined as the interface of the class Person. Attribute id represents person
identifier, firstName relates to the person first name and lastName relates to the persons
last name. Functions of the getEmail() method is to get a email id from person which is a
string type.
- 43 -
- Slide 44: 3.1.2.2 Customer:
The class represents a customer who has st