Documente Academic
Documente Profesional
Documente Cultură
ONLINE LAUNDARY
MUSKAN KHADKA
00168817
Computing Project
Level 5 Diploma in Computing
Softwarica College of IT & E-Commerce
Kathmandu, Nepal
January 19, 2010
A web-based application has been developed for Online Laundry. The site offers people
to book the service of laundry and dry cleaning. People usually busy and doing laundry
consumes a lot of time. Online Laundry is a PHP web-based application developed in order to
manage these issues. This system is built on OOP concept. MySQL is used as its database
server. The system can register a new account for the customer and book the service. A
documentation is presented where it reports how the system can do the required functionality.
Contents
Chapter 1 – Introduction............................................................................................................. 6
1.1. Background ..................................................................................................................... 6
1.2. Features .......................................................................................................................... 6
1.3. Aims and Objectives ........................................................................................................ 7
Chapter 2 – Analysis .................................................................................................................. 8
2.1. Introduction...................................................................................................................... 8
2.2 Information Gathering Techniques .................................................................................... 8
2.3. System Requirements Specification (SRS) ...................................................................... 8
2.3.1. Functional Requirement ............................................................................................ 8
2.3.2. Non-functional Requirement .....................................................................................11
2.4. Prioritization ....................................................................................................................12
2.5. Use Cases ......................................................................................................................13
2.5 System Architecture ........................................................................................................14
2.7. Initial Class Diagram .......................................................................................................16
Chapter 3 – Design ...................................................................................................................17
3.1. Introduction.....................................................................................................................17
3.2. Tools ..............................................................................................................................17
3.3. Structural Model .............................................................................................................17
3.3.1. Class diagram ..........................................................................................................17
3.3.2. Data Flow Diagram ..................................................................................................18
3.4. Behavioral Model ............................................................................................................19
3.4.1. Activity Diagram .......................................................................................................19
3.4.2. Sequence diagram ...................................................................................................23
3.5 Database Design .............................................................................................................25
3.6 Data dictionary.................................................................................................................25
3.7. Entity Relationship Diagram............................................................................................25
3.8. UI Design........................................................................................................................26
Chapter 4 – Coding ...................................................................................................................34
Chapter 5 – Testing ..................................................................................................................35
5.1 Unit Testing .....................................................................................................................35
5.2 Blackbox Testing .............................................................................................................35
Chapter 6 – Other Project Issues ..............................................................................................37
6.1 Risk Management............................................................................................................37
6.2 Future Work.....................................................................................................................39
6.3 Configuration Management .............................................................................................40
Chapter 7- Conclusion ..............................................................................................................41
TABLE OF FIGURES
Figure 1:Use Case of Online Laundry Service...........................................................................14
Figure 2:MVC Architecture ........................................................................................................15
Figure 3: Initial class diagram....................................................................................................16
Figure 4: Class diagram ............................................................................................................18
Figure 5: Data flow diagram ......................................................................................................19
Figure 6:Activity Diagram for Login ...........................................................................................20
Figure 7:Activity Diagram for register ........................................................................................21
Figure 8:Activity Diagram for Request .......................................................................................22
Figure 9:Sequence diagram for login ........................................................................................23
Figure 10:Sequence diagram for login ......................................................................................23
Figure 11:Sequence diagram for register ..................................................................................24
Figure 12:Sequence diagram for Change password..................................................................24
Figure 13:Sequence diagram for register ..................................................................................25
Figure 14: Entity diagram ..........................................................................................................26
Figure 15: Configuration management ......................................................................................40
Chapter 1 – Introduction
Online Laundry service is an ultimate solution to get your laundry done. It will be an online and
retail laundry service provider. It will help users by picking up the laundry from home and save
their time from busy schedules. The laundry service here will be nice and clean so that users do
not need to worry about their stuffs. It will assure about the quality of booking the laundry dates
for laundry. It will enlarge the ability of laundry services by making easier user convenient
system. Effective functions will be implemented in this system which will result it as a worth
system for users to use it. It will be a reliable, secure, affordable and efficient system with a
different way of helping people incrementing to achieve higher quality of life.
1.1. Background
I performed couple of researches about online laundry system in Nepal which were
implemented and used before. I was sort out of my expectations from those websites which I
thought were better in use. They were completely an incomplete website without proper booking
functionality and improper user interface. It was not too easy to use for users. It was an
inconsistent system. It will not be the new system in Nepal, but this newly generated online
laundry service will be much better than those previous ones. Users will be able to perform
every task in this website by sitting in their home. It will also be an easy service for users which
results in saving their time. It will be a very user friendly and interacting system. It would provide
much relief for users when their laundry is picked at their door and dropped clean.
1.2. Features
This web-application has following features:
Dependencies: N/A
Dependencies: R2
Rr6: Delete User
Description: Admin should can delete the user.
Input: User account that is to delete
Output: Deleted successfully
Rational: To delete the user.
Dependencies: R3
Rr7: Logout
Description: Users and admins should be able to logout after they have login.
Input: N/A
Output: Log out successfully
Rational: To be able to logout
Dependencies: R2 and R3
2.3.2. Non-functional Requirement
Non-functional requirements describe the performance of attributes such as security, accuracy,
reliability, performance, maintainability and scalability. It doesn’t describe the features of the
system. The usability and effectiveness of the system are defined in the non-functional
requirement. The mechanism of the system is controlled by non-functional requirement.
+Rq-non1: Security
Description: The system is protected from disturbing faults that is created from internal and
external source.
Rational: The system should highly secured.
Rq-non2: Performance
Description: The system response time and the action of the system is analyzed.
Rq-non3: Availability
Description: The availability of the system is defined.
Rq-non4: Reliability
Description: It defines how reliable is the system is while performing specified functions.
Rq-non5: Scalability
Description: System should update according to the new change.
Rational: With additional change the system should work properly.
Rq-non6: Usability
Description: System should be easy to use and learn.
Rational: To make the system user friendly.
2.4. Prioritization
Prioritization evaluates the collection of functional and non-functional requirements and
classifies them according to their function to cope up with available resources. The overall
system is prioritized to the function and non-functional requirements. The cost, value, time and
risk will be properly utilized by following the prioritized requirement list. The current and long-
term requirements of the system are analyzed. Prioritization is a main attribute of each
requirement that includes SRS.
There are numerous types of prioritization techniques such as Needs-based MoSCoW and
opportunity scoring. We have used MoSCoW for prioritizing the requirements for this project.
MoSCoW prioritization is specific. According to this technique, the requirements are categorized
into following groups.
Actors – Actors are the individuals whose roles are identified and are involved with the
system.
Use cases – It is the role which is played by the actor.
Relationship – It defines relationship between the actors and the use cases.
The Boundary - It is the box where use cases are created.
Figure 1:Use Case of Online Laundry Service.
In the above use case there are two actors, the admin and the user. The actor admin can sign
up, login, manage profile and get notifications. The actor user can sign up, log in, fill forms.
Model
In model data and business logic is stored. It keeps the application data of a system.
Model objects also save and retrieve model state in a database.
View
View is a user interface. It uses model to view the display data to the user. It also allows
the view data to be modified by user. It refers to User interface that are seen by the user.
Controller
User requests are handled by a controller. User usually interact with the view those view
requests are handled by a controller. Controller then provides appropriate view as a
response with the model data. It keeps interaction and control logic in the system.
The data structure, control logic and UI are separated in 3 different folders. Model,
controller and view respectively. This made testing and implementation work more
efficient and well managed it also helped in documentation.
2.7. Initial Class Diagram
The static view representation of the project. It visualizes and describes the features, qualities,
and the attributes of the project. The construction of codes is made easier with the help of class
diagram. The attributes and the operations of the classes and relationships are described with
different aspect of the application. It helps convert diagrammatic view into executable code.
Initial class diagram is the first draft class diagram which is not complete. Initial class diagram
consists of potential main class, their attributes, constraints and associations.
The diagram of Initial Class:
The initial class diagram consists of three classes. The user class, The cloth class, and the
request class.
Chapter 3 – Design
3.1. Introduction
Design is an important phase in a software development. Design Phase defines the physical
specification of the system. The key problems in the project are identified in this phase. The
design phase helps in developing the overall architecture of the system. The defined scope and
purpose of the project are illustrated in this phase. This stage helps to identifies all the user
interaction and the functions required to meet the requirements are fulfilled.
3.2. Tools
Following tools are used to develop Online Laundry Service
Sublime text
MySQL for database.
StarUML for Class diagram, Activity diagram and Sequence Diagram
Visual Paradigm for Entity Relationship Diagram
The finial class diagram consists of 4 classes. The user class, the cloth class, the request class
and the service class.
The activity diagram and sequence diagram fall under the behavioral models. The activity
diagrams shows the flow of activity to activity in the system. The sequence diagram shows the
collaboration of the object.
3.8. UI Design
User Interface is everything designed into an information device. It is a way through user
interacts with an application or a website. The Ui designs of Online Laundry Service is given
below:
Home page
Sign up page
After sign up
After user sign up
User Filling request form
After the design phase comes the implementation phase. In the implementation phase the
graphical representation are converted into machine-readable code. In the implementation
phase the information are organized. Implementation holds importance in a software
development as it brings consistency, extensibility, correctness to the system.
I have used PHP, HTML, CSS and Bootstrap for the programming language to develop the
project. Sublime Text was used to edit codes. Sublime Text is a cross-platform source code
editor with a python application programming language. For the database server I have used
MySQL. All the diagrams in the design phase such as class diagram, sequence diagram was
created in StarUML. Entity Relationship Diagram was created in Visual Paradigm. Project
Management Skills like WBS and Milestones was developed in ProjectLibre.
While coding, various problems were faced but were also solved while continuing the coding.
The screenshots of the coding are kept in the appendix below.
Chapter 5 – Testing
Software Testing is an important phase of software development. Software Testing is done to
free from the errors from the system, meets the design specifications and software quality.
Testing is done to validate and verify if the development solution meets the user requirement.
There is numerous testing that can be done to the software.
1. White box: White box testing does the test of internal and logical structure of software.
2. Black box: Black box testing focuses on the inputs and the outputs, but mainly focuses on
the output that is generated against the input.
3. Unit test: In unit testing an individual or group of related units are tested.
4. Integration test: A group of combined components is used to produce an output.
5. Functional test: The whole software is tested to ensure that required functionality works.
6. Usability test: It is the test done to check the developed solution is user-friendly.
7. Acceptance test: The evaluation test done by the client to check the requirement
specification.
I have done unit testing and black box testing for this project.
2) Customer Chat:
This is the communication part where customer can chat with each other and can share there
opinion about the laundry system that I have created. Customer can directly talk with admin and
other user and take reference about this online site. This will be real time communicating so I
will be doing it in coming future to develop my project.
3) Community Forum:
Forum is the question answer section where user can ask any doubt query and any member of
online laundry can reply to it accordingly. Admin will be supervising this forum and can edit
delete and update the reviewed answer.
4) Online payment:
Different user wants to pay from different source thus online laundry will be able to receive all
kinds of payment methods like PayPal, visa debit and credit etc. This will also be included in
upcoming work to make the online system more efficient.