+
The Flower Box
Point of sale system
1) Abstract
This project is regarding the point of sale system. This project explores about new ideas and functionalities during the completion of the system. It is a great opportunity to improve the different level of programming ability, planning, scheduling, testing skills and analyzing the project. And this also helps to understand the deep concept about VB.Net, MySQL.
This is an offline application which helps the owner and the cashier to record the details about the customers, employers and the products/plants. MySQL is used to create the database to store data which is known as “backend”, while VB.Net is utilized front end of the system.
This project mainly consists of two modules. The first module is the admin and the second module is the cashier. The admin module explores about the recordings of the customers, products and employers. Furthermore, this module has the ability to back up the system and weekly profit report. The cashier module contains about the invoice of the product and the rental products.
Contents
3. A) Current system of the project (Problem Statement)
3. B) Drawbacks of the existing system
3. C.1) Benefits of proposed system
3. D) Aims, objectives, scope & architecture
4. C) Requirement Specification
4. E) Non-functional requirements
5. A) Approach & Development Methodology
5. A. 1) Benefits of agile development
5. C. 2) In-details class Diagram
5. E) Graphical user interface designs
2) Acknowledgment
I would like to convey my appreciation to all those who support me in order to complete this project with encouragement, suggestions and with proper guidance. I give this special gratitude to final year project supervisor Mrs. Samantha Gamage, Miss Himali Wickramasinghe for the support and guidance for the project and Mr. Trevin Motha, the encouragement throughout this completion of project.
Get Help With Your Assignment
If you need assistance with writing your assignment, our professional assignment writing service is here to help!
Furthermore I like to thank all teachers and friends who supported and motivate towards the project. Without their help and guidance all the efforts could have been short sighted. Also, I would like to thank my parents, friends and for being with me motivating me to do this quality report. I would like to thank every single person who at least helps me with a word to make this report a success.
3) Introduction
3. A) Current system of the project (Problem Statement)
According to the situation of the business, the owner faces difficulties with the current system as Mrs. Dias (Owner) follows a manual system to update the records of the products and weekly profit. The owner hired one employed as a cashier and Mrs. Dias (Owner) didn’t include any details about the employer to the manual system as it’s a small scale of business. Within the time, the owner is struggling to manage the manual system as the profit increased and she had to hire another few employees too. Considering these reasons, the owner decided to maintain the record of profits, products (Plants), detailed record of employers, detailed record of customers who are renting the plants and print the receipt or the bill on a point of sale system.
This business consists of two types of purchasing methods as in selling and renting. Selling based on day today customers and renting based on hotels and restaurants.
The new system which is proposed has the potential of storing data about the detailed record of products/plants, employers, customers. Also, it provides report of weekly profits, seasonal items, and rental items and print the bill/receipt for the customer.
3. B) Drawbacks of the existing system
- Time Consuming & inconvenient
A major drawback in the current system is time consuming. As proof all the records must be composed in the register book as further reference which is inconvenient. Goods cannot be purchased simultaneously as the current system cannot perform parallel transactions as there is only one payment terminal at the store. During peak hours, the customers have to wait in queue for a quite long time to process their payment. It has come to the attention of the founder and employees that they are discontented and uncomfortable during peak hours as they feel packed in the small area.
- Locale Limitations
As it’s a small scale business and due the lack of branches of the flower box floral, the business can only reach a limited number of customers in the local areas.
- Lack of Backups
Since the bills provided by the founder, Proper backups are not been maintained such as reports and transactions. This can lead to financial breakdowns of the company.
- Lack of proper database management
The current system has manual system for the transaction, every transactions are stored in accounts book.
- Human made errors and data duplication:
Since all the transactions are written in book it may cause errors such as accidental repeating records or incorrect dates of the transactions or incorrect calculation errors.
3.C) The Proposed System
In order to reduce the burden of such problems mentioned above, an offline system is created to increase the efficiency and effectiveness of the system. This will gradually lead to lessen problems the customers face while shopping in the Flowerbox Floral and make them to be attracted and have more interest to visit the shop again. Hence, it also reduces time consumption and inconvenience making the shopping system more efficient. How the above mentioned proposed system can be generated as mentioned below.
3. C.1) Benefits of proposed system
- Convenience & Easiness
Once the customer or buyer selects his or her species of plant, the cashier will provide a bill or receipt with all the information including the date, price, time and number of items of the same species selected about the plant. At the same time, the system database will show how many plants of the selected item has been sold out and how many are still available in the Floral shop that makes it convenient for the cashier or the founder to sum up the last account records . As a major advantage, an information card is given to the buyer in relation to the rules and regulations of how to care and maintain the plant according to its species unlike other floral shops.
- Generate reports
Owner can view and generate list for the seasonal items and annual report for profits and losses every week automatically.
- Comprise maintenance Information card
An information card is given comprising of all the details such as the optimum temperature, life span recommended shelter by the plant, water and sunlight consumption, whether the plant can be kept as an indoor or outdoor plant and many more useful information is provided by the user friendly Flowerbox Floral shop regarding the plant. This can be followed by the buyer in order to maintain a healthy plant.
- Keep a record on the customers buying habit
Keeping a record of customers buying the products must be recorded carefully. As a privilege for the customers a discount card can be permanently given and whenever they buy the product a discount can be given. Hence, this card will be given for customers who purchases plants of more than 2500/= this will attract the customers and make them more satisfied to buy more plants as they are sure to be given a discount for whatever the species of plant that are bought after the purchased card. This can be done in order to improve more customer visits to the floral shop and also to keep an ongoing rapport and at the same time to build up intense long-lasting relationship.
- Competence
Setting up this manual system can cost very low, resulting in a high profit since there are no other online advertisements available. To have a good start for the business with less employees and training them in a way to know the manual billing system and most of all to satisfy customers’ needs is the main target rather than taking many employees and expanding the business in a minute which can result in loss of business.
- Boost Brand Awareness
According to the new proposed system, new customers will want to try our goods as individual care is given to each and every species of orchid family they are willing to buy. This can increase the sales, increasing awareness in the market and also helping the business.
- Decrease in Costs
- Advertising and Marketing Cost
The small scale business does not have to spend money on business on advertising and marketing as social media traffic, which is the best way to increase sales can be expected rather than spending huge amount of money on advertising and marketing as mentioned above.
- Offer Huge Information
Training a handful of employees well, giving them the knowledge of each and every species of plant available in the store, can lead the customers to be more satisfied with the product that he/she is going to purchase according to their needs. Rather than machines providing answers to the customers doubts they become more content and carefree with which product they have to buy when an employee talking to them face to face providing a favorable reply to their doubts.
- Scalability
With this solution, the organization can grow and scale easily to meet the customer requirements as well the market demand.
3. D) Aims, objectives, scope & architecture
3. D.1) Aims
The aim of the proposed system is to create a manual offline system as this is not an expanded business.
In the near future, it is expected to open more branches around the world where customers can always visit and meet their desires. Unlike an online system, the customer can have a careful look and observe the product they are going to purchase, rather than purchasing the goods looking at an advertisement or a website which will not be the true image displayed. Species that are displayed online can never be thought to be the perfect plant the customer desires and there will be no exchange or a receipt purchased and therefore they will not be able to return the product if they are not satisfied. Hence it will be complicated for the customer to send his or her feedback regarding the plant as online systems may take few days to reply for their feedbacks.
The small scale business can be financially benefitted as there is no money spent for advertisements. Unlike online systems, there will not be any sort of breakdown in the system where the customers will be irritated if the systems are not functioning well. There can also be a doubt if the online system is being updated daily regarding the plants sold and also the plants currently available at the store.
3. D.2) Project Scope
The main target of this project is to fulfill the customers desires and needs according to what they wish for and making it more realistic in today’s world. For customers those are clueless about the different types of orchids will have a thorough background information from the employees as they are well trained for different types of species. More attention is given to customers to show the hidden truth about the orchid family and making them more concern in how to bring up their plants. The customers have the ability to contact us, whatever the situation is. To train the few employees under the founder is very crucial. This won’t be a complicated task as there are only a handful of employees. Rather than having a huge staff, its more realistic to have few staff members and give them more them knowledge about the specific field and to pay them a favorable salary.
The technologies used for the development of this e-Commerce are as follows:-
- VB.Net is an Object Oriented programming language is used create applications.
- MySQL is used to connect with the database and it is an open source database.
4) System Analysis
System analysis defines as a procedure of collecting actual data to identify the problems, process of the system and to enhance the system. This involves feasibility study as in economical, technical, and social in order to maintain disclosure with the client to complete the system and its functions properly.
4. A) Fact finding methods
Fact finding is gathering information about the existing and proposed system. That helps to identify the requirements which business needs and flows of the existing system. Interviews, observations and questionnaires are fact finding methods.
Interview
Meeting can take as a discussion between two individuals with a specific end goal to gather appropriate data to the system. Interview helps to create quality system by answering questions in regards to the system, business and the requirements. There are five sorts of meetings. 1. Personal interview, telephone interview, focus group interview, depth interview, projective technique.
Questionnaire
Questionnaire defines as predefined questions which used to collect information from the employees. Questionnaires includes open question questionnaires (which is help to produce unexpected results as in original and valuable), multiple choice questions (these type of questions have set of answers for the question.), Dichotomous Questions (these type of questions contain only 2 options), Scaling Questions (these questions refers as ranking questions)
Observation
Observation consider as certainty discovering strategy which recognize data through perception, hearing, touch and so on. This discovers important data to the system.
4. B) Analysis specification
Analysis specification is understanding the requirements of the customer and the system in a specification document. The necessities which are distinguished arranged into two segments functional and non-functional requirements. Functional requirement defines as what the system should do according to the user where as non- functional requirement defines as behavior of the system according to the certain functions.
MoSCoW approach is organizing requirements and objectives of a framework. This strategy separated into four classifications. M stands for “Must have”, S stands for “Should have”, C stands for “Could have”, W stands for “Wont have”.
4. C) Requirement Specification
- Admin Dashboard
- admin login
- admin logout
- add product
- Update product
- Delete product
- Search product
- View seasonal product
- View weekly report
- Back up the database
- register employee
- view employee details
- delete employee details
- update employee details
- register customer
- view customer details
- delete customer details
- update customer details
- cashier
2.1 cashier login
2.2 cashier logout
2.3 view product
2.4 search product
2.6 register employee
2.7 view employee details
2.8 delete employee details
2.9 update employee details
2.10 register customer
2.11 view customer details
2.12 delete customer details
2.13 update customer details
2.14 view rent items
2.15 generate an invoice
4. D) Functional Requirements
Requirements | MoSCow prioritization | |
Product | Add
Update Delete View |
Must have
Should have Should have Should have |
view | Cashier details
Customer details Rented items Seasonal items |
Should have
Should have Should have Could have |
Search | Product
Cashier details |
Should have
Should have |
Cashier management | Cashier registration
Cashier login Cashier logout |
Must have
Must have Must have |
Admin management | Admin login
Admin logout |
Must have
Must have |
Generate Invoice | Generate invoice | Must have |
Generate report | Weekly report | Should have |
4. E) Non-functional requirements
Usability
Usability defers as making the system easier to use and also meet the user requirements. At this stage the scope of this system is small and it is easy to maintain the usability throughout the system. Usability effects the effective and efficiency of the system.
User friendliness
User friendliness thoroughly maintain with the system. At this stage the consistency of the in each and every window, the readability of the content and use of appropriate windows appearances in related sections.
3. F) High level architecture
This is use in the agile development methodology to clearly understand the activities witch in the system. In other words at this stage the flow of activities within the system are clearly displayed based on the activities.
3. G) Risk analysis
“Risk analysis characterizes as a method of distinguishing issues and oversee it which debilitate the business system or the venture. It perceives the shortcomings or dangers amid the procedure of venture with the goal that it will deal with those issues”
Risk analysis defines as a procedure of identifying problems and detects the weaknesses of the business strategy or the project.it helps to recognize the weaknesses or threats during the process of project so that it will help to handle those problems.
Risk | Likelihood(low medium high) | Impact(low medium high) | actions |
The stages in the project exceed the time limit. | medium | high | When concerning about the time management leave extra time for necessary situations. |
Confusion when enhancing the user friendliness of the system. | Low | Medium | Refer to similar to system in order to get effective ideas about user friendliness. |
Errors during the development of the system. | Medium | High | Refer necessary materials to be acknowledge about avoiding errors and solving errors during certain situations. |
Issues when creating the data structure in the database management system | Medium | High | Refer resources when creating the data structures. |
The scope to be tested not clearly identified. | Low | Medium | Refer the project scope before carrying out testing. |
5) System design
This is the stage where that system is built with all the functions. This includes hardware, software, graphical user interfaces, and structure of the network. The purpose of this stage is to make sure that to clarify the misconception in input, output and process as documented.
5. A) Approach & Development Methodology
Approach & Development Methodology is programming strategy which is utilized to give quality venture or frameworks to the client. This depends on iterative improvement which can coordinate with extensive complex framework. There are separate spry procedures, for example, scrum, incline, kanban and so on.
Scrum normally utilized for complex frameworks which can break into segments and work as indicated by it.
5. A. 1) Benefits of agile development
- Iterative process improve to add new features to the system to cooperate with existing elements.
- Agile methodology gives a good quality product by testing which is breaking in to section to focus on each section carefully.
5. B) Data model
The data model is a diagram which is easy to understand the logical structure of a database. ERD (Entity Relationship Diagram) used to show relationship between the entities.
5.C) Structural Model
Structural model provides the perspective of the system with the includes of objects, relationships, attributes and operations.
5. C.1) Initial class diagram
5. D) Behavioral model
Behavioral model is model which shows the dynamic behavior and the flow of the logic of the system. This recognizes the parts in the framework and how it impact to the framework.
5. D.1) Use case diagram
Use case diagram outline graphical representation which present interactions between elements of a system.
Initial use case diagram
Use case ID: | 001 | ||
Use case Name: | Product | ||
Created by: | Dinithi Dias | Last updated by | Dinithi Dias |
Date Created: | 13/05/2017 | Last Created by | 13/05/2017 |
Actors | Admin, Cashier |
Description | Admin can register product and also edit product details, can view seasonal items, product details, weekly report and also back up the database
Cashier can view the product details and generate the invoice |
Includes | _ |
Extends | _ |
Special Requirements | _ |
Assumptions | _ |
Use case ID: | 002 | ||
Use case Name: | Registration | ||
Created by: | Dinithi Dias | Last updated by | Dinithi Dias |
Date Created: | 13/05/2017 | Last Created by | 13/05/2017 |
Actors | Admin, Cashier |
Description | Admin and cashier can register customer and cashier and also edit product details, can view the details of customer and cashier |
Includes | _ |
Extends | _ |
Special Requirements | _ |
Assumptions | _ |
In detail use case diagram
Use case ID: | 001 | ||
Use case Name: | Registration (in detail Use case Diagram) | ||
Created by: | Dinithi Dias | Last updated by | Dinithi Dias |
Date Created: | 13/05/2017 | Last Created by | 13/05/2017 |
Actors | Admin, Cashier |
Description | Admin and cashier can register customer and cashier and also edit product details, can view the details of customer and cashier |
Includes | Insert data to cashier details- first name, last name, username, password, email, contact number
Insert data into cashier details- first name, last name, location, location name, email, contact number |
Extends | _ |
Special Requirements | _ |
Assumptions | _ |
Use case ID: | 001 | ||
Use case Name: | Product | ||
Created by: | Dinithi Dias | Last updated by | Dinithi Dias |
Date Created: | 13/05/2017 | Last Created by | 13/05/2017 |
Actors | Admin, Cashier |
Description | Admin can register product and also edit product details, can view seasonal items, product details, weekly report and also back up the database
Cashier can view the product details and generate the invoice |
Includes | Insert data in product details- name, variety, color, quantity, price season |
Extends | Before update need to register the product |
Special Requirements | _ |
Assumptions | _ |
5. D.2) Activity Diagram
Activity diagrams are the diagrams which shows representations of the flow of one activity to another activity.
Activity Diagram for Admin login
Activity Diagram for cashier Login
Activity Diagram for Product
Activity Diagram for cashier Registration
Activity Diagram for invoice
5. D. 3) Sequence Diagram
Sequence diagrams define as interactions between classes by passing messages overtime.
Sequence Diagram for View Product
Sequence diagram for update product
Sequence Diagram for Delete product
Sequence Diagram for search product
Sequence Diagram for Add Product
5. E) Graphical user interface designs
- Main form
- Cashier login
- admin Login
- Cashier Dashboard
- Admin Dashboard
- Cashier Details
- Customer Details
- Product details
- View Product
- View weekly Report
- View seasonal items
- View cashier Details
- View customer details
- View rented items
- Invoice form
6) Testing
The main purpose of testing stage is to check whether the code works as expected. Black Box testing and White Box testing are used to test the code.
6. A) Test plan
6. B) Black Box Testing
6. B.1 ) Screenshots for black box testing
Admin login
Without entering password and user name
Correct user name incorrect password.
Incorrect username, correct password.
Correct user name and password.
View Cashier Details
Cannot enter numerical value.
Cashier Registration form
Cannot enter numerical values for the first name
Cannot register the cashier without filling the blanks.
Cannot enter characters.
Check the email signs entered correctly.
View customer details
Cannot enter numerical values.
Cannot enter numerical values
Cannot enter any character values to telephone number text box
Cannot register without proper email signs.
Add product Form
Cannot enter numerical values to name field.
Cannot enter characters to numerical text boxes such as price and quantity.
Cashier login
Cannot login without enter username and password
Correct username but wrong password
Correct password but not correct username
Successfully log into the system when username and password both are correct.
Invoice Form
Cannot enter numerical value to the customer name.
Cannot enter character values to the quantity field.
6. C) White box Testing
Cashier registration
Test ID | Variable Name | Data Type | Description | Expected outcome | Actual outcome |
001 | txtId | Integer | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
002 | txtFirst_Name | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
003 | txtLast_Name | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
004 | txtUsername | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
005 | txtemail | text | The entered values should Email signs such as @ and . | Variable successfully declared. | Variable successfully declared. |
006 | txtTelephone_number | Integer | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
008 | Query | String | To excute the cashier registration | No errors were encountered when execution | No errors were encountered when execution |
Customer registration
Test ID | Variable Name | Data Type | Description | Expected outcome | Actual outcome |
001 | txtId | Integer | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
002 | txtFirst_Name | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
003 | txtLast_Name | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
004 | cmb_location | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
005 | txtLocation_Name | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
006 | Txt_email | text | The entered value should contain text value and checks the email signs such as @ and . | Variable successfully declared. | Variable successfully declared. |
007 | txtaddress | Text | The entered value should contain text value | Variable successfully declared. | Variable successfully declared. |
007 | txtTelephone_number | Integer | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
009 | Query | String | To execute customer registration | No errors were encountered when execution | No errors were encountered when execution |
Product registration
Test ID | Variable Name | Data Type | Description | Expected outcome | Actual outcome |
001 | txtId | Integer | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
002 | Txt_Name | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
003 | txt_variety | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
004 | txt_color | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
005 | txt_quantity | String | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
006 | Txt_email | text | The entered value should contain text value | Variable successfully declared. | Variable successfully declared. |
007 | Txt_price | Text | The entered value should contain text value | Variable successfully declared. | Variable successfully declared. |
007 | Cmb_season | String | The entered value should contain string value | Variable successfully declared. | Variable successfully declared. |
008 | Query | String | To execute product details to the database | No errors were encountered when execution | No errors were encountered when execution |
Invoice form
Test ID | Variable Name | Data Type | Description | Expected outcome | Actual outcome |
001 | txtInvoice_id | Integer | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
002 | txtInvoice_id | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
003 | cmbid | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
txtname | txtname | String | The entered value should contain String value | Variable successfully declared. | Variable successfully declared. |
005 | dtpStart | Date | The entered value should contain date/time value | Variable successfully declared. | Variable successfully declared. |
006 | dtpEnd | Date | The entered value should contain date/time value | Variable successfully declared. | Variable successfully declared. |
007 | txtaddress | Text | The entered value should contain text value | Variable successfully declared. | Variable successfully declared. |
007 | txtQuantity | Integer | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
008 | txtPrice | Float | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
009 | txtTotal | Float | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
010 | txtamount | Float | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
011 | txtbalance | Float | The entered value should contain numerical value | Variable successfully declared. | Variable successfully declared. |
7) Implementation
During the implementation stage aspects such as training and Best Practices and Industrial Standard will be consider. The implementation can understand as most important stage since it is the stage where the final system handed over to the business.
7. A) Training
The users should be train the system in the business environment however the user manual will be given to the users to handle difficult situations as well. With user training the end users of the system will be able to handle the system with minimum use of the user manual. The end users of the system will be train for four days since the scope of the system is small four days are sufficient enough to provide the experience for the user about the system background. Specifically the employees and business admin will be train.
Find Out How UKEssays.com Can Help You!
Our academic experts are ready and waiting to assist with any writing project you may have. From simple essay plans, through to full dissertations, you can guarantee we have a service perfectly matched to your needs.
View our academic writing services
7. B) Installation in the industry
The system will be install in necessary PCs of the organization. The system requirement is minimum since the application is not a high end application. So it will be easy to install to the required PCs. Even for PCs with outdated specifications the software can b install easily. However a setup file is not generated through the actual system to be install in the required PCs. Generating an exe file can be a costly procedure.
7. C) Best Practice
During the development of the system best practices follows such as commenting on the system code. Anyone who looks into the code is able to understand what the code is about in the system with the use when the comments are placed the code.
All the organization information manage through the database so it is necessary to daily back up to aid data recovery.
Following are the industrial best standards implemented to the project:
- Copyright, Designs and Patents Act 1988It
- Consumer Protection Act 1987
- The Data Protection Act
8) Conclusion
In order to complete the system these are the phases which taken place- analysis, design, testing and implementation.
- Analysis stage is the phase which identify the requirements for the system. In this stage fact finding method major place to identify the requirements properly.
- Design stage is the phase which help to use models such as UMl model and Data model.
- Testing stage is the phase which check all validations with the use of black box testing and white box testing.
- Implementation is the phase which install the system in system.
User manual
Select admin or cashier button
Enter username and password and click login button to log into admin panel
Click cashier details button to view cashier details form
Can search by user name so that enter any username which existing in the table or database. If not click register button to register a employee
Fill the blanks inorder to store data about cashier and click register button.
Tick search check box in order to search customer then search button update button and delete button will be enabled.
click on refresh button to clear the fields.
Click on customer details button in order view existing customers and register a new customer.
Click on add product button in order to insert a record of product.
Fill the fields and click add button to store data.
Click the record of variety in order to edit and update.
Click on view product details button to check the product details
Click on view seasonal items button to check seasonal items which are blooming and dry
Click on view report to check daily transactions
Click on back up to backup the database.
Enter user name and password and click login button to log into the system.
Click on cashier details button to check the cashier details and register a new employee
Click on customer details button to check customer details and register a new customer.
Click on view product details button to check the product details
Click on view rent items button to check rent items
Fill the fields to store in the database and click refresh button to create an invoice for purchasing product(s). and click total add on button to show the total amount.
click on new invoice button to create a new invoice.
Appendix
Cite This Work
To export a reference to this article please select a referencing style below: