0% found this document useful (0 votes)
48 views88 pages

Anything Possible

The document presents a dissertation by W.A.S.C. Nandasena for a Master's degree in Information Technology, focusing on the development of a Point of Sale and Stock Management System for Wathumal Traders (PVT) Ltd. The system aims to automate manual stock management processes, improve sales tracking, and enhance inventory control to reduce inefficiencies and losses. It includes various testing methods to ensure the system meets the required standards and fulfills the client's needs.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views88 pages

Anything Possible

The document presents a dissertation by W.A.S.C. Nandasena for a Master's degree in Information Technology, focusing on the development of a Point of Sale and Stock Management System for Wathumal Traders (PVT) Ltd. The system aims to automate manual stock management processes, improve sales tracking, and enhance inventory control to reduce inefficiencies and losses. It includes various testing methods to ensure the system meets the required standards and fulfills the client's needs.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 88

Point of Sale and Stock Management

System for Wathumal Traders


(PVT), Ltd.

W A S C NANDASENA
2018
Point of Sale and Stock Management
System for Wathumal Traders
(PVT), Ltd.

A dissertation submitted for the Degree of Master of


Information Technology

WA S C NANDASENA
University of Colombo School of Computing
2018
Declaration

The thesis is my original work and has not been submitted previously for a degree at this or
any other university/institute.
To the best of my knowledge it does not contain any material published or written by another
person, except as acknowledged in the text.

Student Name: W A S C NANDASENA


Registration Number: 2014/MIT/031
Index Number: 14550311

_____________________
Signature: Date: 20th February 2018

This is to certify that this thesis is based on the work of


Mr. W A S C NANDASENA,
under my supervision. The thesis has been prepared in accordance to the format stipulated
and is of acceptable standard.

Certified by:
Supervisor Name: Dr. Enosha Hettiarachchi

_____________________
Signature: Date: 20th February 2018

i
Abstract

Any shop or a market place needs a proper Point of Sale (POS) and Stock Management System,
since manual managing of stocks is considered to be a very difficult task. Mishandling of stock
could lead to dire consequences like stock expiration, storage issues, and loss of sale.
Point of sales and stock management system provide facilities such as tracking availability of
stock for uninterrupted sales, providing a scientific basis for planning an inventory, aiding the
decision making of the management to ensure the stock allocation are done appropriately, and
reducing wastage whilst saving time.
The client for the project, Wathumal Traders (PVT) Ltd, is vending grocery items and kitchen
related products. Currently the processes related to selling items are done manually. Hence it
is very difficult to generate data to make future sales predictions, and to efficiently summarize
transactions to fulfil the regulatory requirements. So Wathumal Traders (PVT), Ltd plans to
terminate the traditional methods which are inefficient and go for an automated system.
When the manual system is automated, the company will be able to calculate revenue due for
every order entered, record the method of the payments, price adjustments and initiate
promotion campaigns.
The automated system is tested using various testing methods such as unit test, Integration test,
System test and finally Acceptance test. First the units of codes are tested and which is called
a code level testing. To test the modules of the system an integration testing is performed. The
whole system gets tested after the unit testing and integration testing to guarantee the standard
of the system using an environment similar to the environment where the system is going to
practically used. A customer confirmation is obtained by a user acceptance testing after the
completion of the system. It ensures the requirements are fulfilled by the developed system.
This Stock and POS portal has the scope of all the main function required for a stock process,
such as: .Build point of sales module for the Wathumal Traders, Enable add item to the stock,
Get details about Business, Get details about due customers, Upload new stock by using SQL,
Download current stock database, Generate reports that include in total revenue, no of items in
stock, Custom Bar code generation and return items.

ii
Acknowledgment

I would like to express my deepest appreciation to all those who provided me the possibility to
complete this project. I am especially grateful to my supervisor and coordinator, Dr. Enosha
Hettiarachchi who has supported and guided me to carry out the project and provided
suggestions and encouragement during the development of system.
Furthermore I would like to acknowledge with much appreciation the crucial role of the staff
of Wathumal Traders (PVT), Ltd, who gave the permission to use all required documents to
complete the project.
I would also like to take this opportunity to thank my friends and colleagues, who gave endless
support and advices during the development of this project.
I am also indebted to my parents and my beloved wife. Without the continued support and
encouragement provided by them, especially during those difficult times, I may have not
reached the end of this strenuous journey.

W.A.S.C NANDASENA

iii
Table of Contents
Declaration .................................................................................................................................. i
Abstract ......................................................................................................................................ii
Acknowledgment ..................................................................................................................... iii
List of Tables ...........................................................................................................................vii
List of Figures ........................................................................................................................ viii
List of Abbreviations ................................................................................................................ ix
Chapter 1 Introduction ............................................................................................................... 1
1.1 Introduction ................................................................................................................. 1
1.2 Problem Statement ...................................................................................................... 1
1.3 Motivation of the project ............................................................................................. 2
1.4 Objectives of proposed system .................................................................................... 2
1.5 Scope of the project ..................................................................................................... 3
1.6 Dissertation Outline..................................................................................................... 4
Chapter 2 Background ............................................................................................................... 6
2.1 Introduction ................................................................................................................. 6
2.2 Review of present well-known Point of Sale and Stock Management Systems ......... 6
2.3 Critical Analysis of Similar Systems .......................................................................... 8
2.4 Summary ..................................................................................................................... 8
Chapter 3 Analysis and Design .................................................................................................. 9
3.1 Introduction ................................................................................................................. 9
3.2 Requirements Gathering .............................................................................................. 9
3.2.1 Fact Finding Techniques ...................................................................................... 9
3.3 Requirement analysis and Management .................................................................... 10
3.4 Analysis of the ongoing systems ............................................................................... 10
3.5 Requirements for the new system ............................................................................. 10
3.5.1 Functional Requirements ................................................................................... 10
3.5.2 Non-Functional Requirements ........................................................................... 13
3.5.3 Hardware and Software requirements ................................................................ 14
3.5.4 System Architecture ........................................................................................... 15
3.6 Design of system ....................................................................................................... 15
3.6.1 Introduction ........................................................................................................ 15
3.6.2 ER Diagram ....................................................................................................... 15
3.6.3 Use case descriptions ......................................................................................... 16
3.6.4 High-level use case diagram for the system ...................................................... 20
iv
3.6.5 Sequence diagrams for entire process ................................................................ 20
3.6.6 Class diagram for the system ............................................................................. 22
3.7 Summary ................................................................................................................... 22
Chapter 4 Implementation........................................................................................................ 23
4.1 Introduction ............................................................................................................... 23
4.2 System Overview ...................................................................................................... 24
4.3 Add Section ............................................................................................................... 25
4.4 Printing Section ......................................................................................................... 27
4.5 Technology and Tools ............................................................................................... 28
4.6 Hardware and Software /Application Requirements ................................................. 29
4.6.1 Hardware configuration for user PC .................................................................. 29
4.7 Server Environment................................................................................................... 30
4.7.1 Hardware Configuration .................................................................................... 30
4.7.2 Software/Application Configuration .................................................................. 30
4.8 Client side requirement ............................................................................................. 30
4.8.1 Hardware Configuration .................................................................................... 30
4.8.2 Major code segments ......................................................................................... 30
4.8.3 Validation ........................................................................................................... 32
4.9 Summary ................................................................................................................... 34
Chapter 5 Evaluation and Testing ............................................................................................ 35
5.1 Introduction ............................................................................................................... 35
5.2 Main objective of the Test process ............................................................................ 35
5.3 Front End Testing ...................................................................................................... 35
5.4 Test Cases .................................................................................................................. 36
5.4.1 Unit Testing ....................................................................................................... 36
5.4.2 Integration Testing ............................................................................................. 36
5.4.3 System Testing ................................................................................................... 36
5.4.4 Black-box testing ............................................................................................... 37
5.4.5 White-box testing ............................................................................................... 37
5.4.6 Regression Testing ............................................................................................. 37
5.5 Automated testing for Wathumal traders .................................................................. 42
5.6 User Acceptance form ............................................................................................... 42
5.7 Summary ................................................................................................................... 42
Chapter 6 Conclusion and Future work ................................................................................... 43
6.1 Introduction ............................................................................................................... 43

v
6.2 Lesson learned ........................................................................................................... 43
6.3 Conclusion................................................................................................................. 43
6.3.1 Future Works ..................................................................................................... 43
References ................................................................................................................................ 44
APPENDIX A – Use Cases ..................................................................................................... 45
APPENDIX B – Activity Diagrams ........................................................................................ 48
APPENDIX C – User Manual ................................................................................................. 50
APPENDIX D - Questionnaires............................................................................................... 57
APPENDIX E – Test Cases ..................................................................................................... 66

vi
List of Tables

Table 2-1: Critical Analysis ....................................................................................................... 8


Table 3-1: Hardware requirements .......................................................................................... 14
Table 3-2: Software requirements ............................................................................................ 14
Table 3-3: Use case description of Issue item ......................................................................... 17
Table 3-4: Use case description of Add item to stock ............................................................. 18
Table 3-5: Use case description of Generate barcode of item ................................................. 19
Table 5-1 Test case for Return ................................................................................................. 37
Table 5-2 Test case for Stock................................................................................................... 38
Table 5-3 Test case for Database ............................................................................................. 38
Table 5-4 Test case for Reports ............................................................................................... 38
Table 5-5 Test case for Customer Due Amount ...................................................................... 39
Table 5-6 Test case for System ................................................................................................ 39
Table 5-7 Test case for Point of sales ...................................................................................... 40
Table 5-8 Test case for Add Items ........................................................................................... 41
Table A 1 Search by best selling.............................................................................................. 45
Table A 2 Add main category system ...................................................................................... 45
Table A 3 Add sub category system ........................................................................................ 46
Table A 4 Show sales time duration ........................................................................................ 46
Table A 5 Issue item ................................................................................................................ 47
Table D 1: Questionnaire ......................................................................................................... 58
Table E 1Test case for Return .................................................................................................. 66
Table E 2: Test case for Stock ................................................................................................. 67
Table E 3: Test case for Backup .............................................................................................. 68
Table E 4: Test case for Reports .............................................................................................. 69
Table E 5: Test case for Customer due Amount ...................................................................... 70
Table E 6: Test case for System ............................................................................................... 71
Table E 7: Test case for POS ................................................................................................... 73
Table E 8: Test case for Add Items .......................................................................................... 77

vii
List of Figures
Figure 3-1: ER diagram ........................................................................................................... 16
Figure 3-2 :High-level use case diagram ................................................................................. 20
Figure 3-3 : Sequence Diagram ............................................................................................... 21
Figure 3-4: Class Diagram ....................................................................................................... 22
Figure 4-1: POS Section .......................................................................................................... 24
Figure 4-13: Validation of required id ..................................................................................... 33
Figure 4-16: Validation of Quantity ........................................................................................ 34
Figure B 1: Activity diagram of Add items ............................................................................. 48
Figure B 2: Activity diagram of Logging ................................................................................ 49
Figure C 1 logging ................................................................................................................... 50
Figure C 2: cashier logging ...................................................................................................... 51
Figure C 3: Cashier sales orders .............................................................................................. 51
Figure C 11: Payments ............................................................................................................. 56
Figure C 12: Back up ............................................................................................................... 56
Figure D 1: Evaluation of attractiveness of the interface ........................................................ 59
Figure D 2: Evaluation of the complicated aspect ................................................................... 59
Figure D 3: Evaluation of the process in the software ............................................................. 60
Figure D 4: Evaluation of the speed of the software ............................................................... 60
Figure D 5: Evaluation of the user communication ................................................................. 61
Figure D 6: Evaluation of response rate .................................................................................. 61
Figure D 7: Evaluation of satisfaction with the software solution........................................... 62
Figure D 8: Evaluation of service provide by the software ..................................................... 62
Figure D 9: Evaluation of fulfilment of user requirements...................................................... 63
Figure D 10: Evaluation of title used ....................................................................................... 63
Figure D 11: Evaluation of the software guide and the manual .............................................. 64
Figure D 12: Evaluation of compatibility with other application software ............................. 64
Figure D 13: Evaluation of software robustness ...................................................................... 65
Figure D 14: Evaluation of users’ likeliness of recommending the software to others ........... 65

viii
List of Abbreviations
ER Diagram …………………………. Entity Relationship Diagram
UAT …………………………. User Acceptance Test
POS …………………………. Point Of Sale
UML …………………………. Unified Modeling Language
CUITs …………………………. Coded User Interface Tests
UI …………………………. User Interface

ix
Chapter 1 Introduction

1.1 Introduction

Any shop or a market place needs a proper Point of Sale (POS) and Stock Management System,
since manual managing of stocks is considered to be a very difficult task. Mishandling of stock
could lead to dire consequences like stock expiration, storage issues, and loss of sale. Manual
processing of stock management, sales handling and reporting is a time consuming process. It
also generates a lot of paper work in day to day activities. All these procedures are inefficient
and expensive. To overcome these problems, proper Point of Sale (POS) and Stock
Management System need to be implemented. The client for the project, Wathumal Traders
(PVT), Ltd, vends grocery and kitchen items. Currently recordings related to stock and sales
items are done manually. It is cumbersome to generate reports to analyse the past data to
identify trends, and to fulfil regulatory requirements. In order to be more efficient and cost
effective they planned to terminate the traditional methods and move towards an automated
system.
This system will assist the company to calculate cash due for every order entered, record the
method of payment, keeps track of the items sold and record information on debtors .The
system will display the debtor due period by separate colours indicating their due period. This
will enable the user to identify the debtors who will likely to become bad debtors and could
stop further business with them.

1.2 Problem Statement

Wathumal Traders (PVT), Ltd carries their recordings manually and enters all the data to a
paper based system. Due to manual handling of work, they have to face several drawbacks. All
these procedure are time consuming. They could not get reports of the daily revenue, daily
sales, item of the stock, and items that need to be reordered for the stock. Also, traditional
methods are inefficient and generates substantial amount of paper records. For an example
extracting relevant information about previous revenue from the ledger book for investment
decision-making is a complicated and a time consuming task. Deterioration of records,
unreadable hand writing leads to confusion and many documents were found with incomplete
information. This leads to incorrect resources allocation which mainly affect the profit margins.

1
Lack of up to date and real time information on stocks due to not connection between all the
modules of systems creates significant issues in the business. Mishandling of stocks is
untraceable and it has become a serious problem at most of the companies at present.
The company also faces a problem of bad debts. The Manual recordings hardly help to identify
the debtor periods and untrustworthy trade partners.
The unnecessary gathering of the inventory creates problems such as excessive wear housing
costs and inventory management costs. Unable to identify the goods which are nearing to the
expiry date also creates wastage of goods.
The company also faces a challenge in identifying the goods which are in frequent high demand
and seasonal trends.

1.3 Motivation of the project

Point of sale and stock management system mainly involves maintaining the record of stock
and cash registry of the shop, which could include a system to analyse data and find new trends
in sales items.
When the Point of sale and stock management system is implemented, the company will be
able to calculate revenue due for every order entered, record the method of the payments, price
adjustments and initiate promotion campaigns.
It also provide facilities to keep records on customer details, generate reports and get historical
data about products, customers and suppliers. This aids the decision making process of the
management.
This system combines all those facilities together to achieve better control and management.

1.4 Objectives of proposed system

Main objective of this system is to automate the manual stock management system. Then the
company will be able to calculate revenue due for every order entered, record the method of
the payments, and price adjusting and promotion campaign. Sub objectives in this system can
be listed as follows,

1. Providing user friendly environment to the user though the system

2
2. Develop a strong point of sales and stock management system to handle stock
management.
3. Enforce security by adding user account with different privilege and regular data
backup.
4. Provide point of sales of stock management system with detailed report for sorted
according to the needs of the management, such as report by best- selling, report by
purchase date, report by current stock data, daily sales, identify items which near to
expire date. Also record by payment due date, report by payment methods.
5. Create the point of sales module for the Wathumal Traders using barcode searching and
item searching.
6. Obtain the details about Business behaviour based on total profit per month, no of items
in the stock, investment for current stock.
7. Obtain the details about due customers and amount due from those customers.
8. Generate the custom bar code for items such as vegetables.
9. Support various types of POS printers to print bill

1.5 Scope of the project

This point of sales section of this system mainly consists of modules for product customer and
reporting. For the customer module, system gives the detail about payments. After the payment
(cash/credit) receipt will be printed through the system. Customer can pay any amount of the
due payment for bill and remaining amount of the payment will be recorded. Managers will be
provided with authority to adjust prices and conduct promotion campaign when necessity arise.
They can also edit the receipt details when any product is incorrectly entered by cashier. Also,
System can provide reports that the management needs for the analysing purposes. There will
be three type of reports. One such report is time based report. It provides details above the sales
of stock, expire date of stock, available quantity of stock on daily, weekly , monthly, quarterly,
and annual basis. Another one is product base report. This describe availability of the stock as
future demands of the items. This open a clear path to manager to take decisions about
introducing new products to the market. As well as it will remove existing products which has
come to its declining stage. Next report is payments report. This provide details of payments
methods, due payments, with respective customers. User should be able to logging the system
and perform their duties. They will be authorized to perform their task according to the

3
difference user levels and privileges. Managers can used their privileges to user management
and logging module. Stock part is handle by manager of the branch. Various types of items
selling by the shop. Suppliers are included in the suppliers’ category. Items supplied by the
suppliers are included in the items category. System can allocate space for different item which
comes under difference suppliers. Also, it provide space for single item which supplied by
difference suppliers.
All the items are issued by the cashier of the shop. All the details regarding issuing items will
be maintained by this issue section. Manger can check the issued items. Discount prices are
given for some items. All the discount related decisions are taken by the Manager.
All the return items will be handle by manager. Coordinating with suppliers to return their
rejected items is also another task comes under the return section. At the same time, when some
items got expired, destroying or removing of such items from the existing stock will also be
handle by this section.

1.6 Dissertation Outline

Chapter 1-Introduction
Describes the problems being faced currently and how to address all those problems with the
proposed system. Project scope, goals and dissertation structure is also provided.

Chapter 2-Background
This chapter targets a crucial review of matching systems and technologies and related
applications. Additionally, it is aimed for the evaluation of stock management process and
justification of tool and technology selections with quotation.

Chapter 3-Analysis and Design


Provide description of ER diagram, UML diagrams and the methodological approach that are
applied in the program designing. Also, consists of the requirement analysis, functional and
non-functional requirements of the system design.

Chapter 4-Implementation
Appropriate coding and implementation tools and techniques which are used to developing the
system are included.

4
Chapter 5-Evaluation
Developed system is tested against the user requirements, which are gathered at the beginning.
Actual data from the client’s environment is used. The chapter also includes aspects such as
test plan, test cases, use of test automation tools and testing frameworks.

Chapter 6-Conclusion and Future work


This chapter summarizes the work; discusses its findings and contributions; points out
limitations of the current work and outlines directions for future research

5
Chapter 2 Background

2.1 Introduction

Computerization makes it easy for a company do to their internal and external work. There are
many studies found in terms of implementing point of sales and stock management software.
The idea is that they are very common and people may find it difficult to customize according
to their business needs because of their busy life cycle. Businessmen are now interested in
customized software module for their business to reduce their busy work load. Because they
believe that customized solution always become user friendly as it is required very less
technical knowledge to operate. These reasons shows a path to develop simple user friendly
system.

2.2 Review of present well-known Point of Sale and Stock Management


Systems

There are plenty of Point of Sales and Stock Management systems which are using around the
world to make it easy to sell items and Stock Management. Developing POS and Stock
management industry is enhancing daily and can forecast well way beyond the borders. Few
of them are,

 myPOS

myPOS is a point of sales solution, used in Cool planet fashion chain in Sri Lanka. It gives you
a convenient way of checking out customers and of recording sales whilst keeping record of
the order processing, printing out receipts, carrying out promotions, tracking customers,
managing sales assistants performances, etc. The system eases the flow at checkout terminals,
while recording all the information that can help you make better business decisions.

When checking out a customer Sales person can input the sales item, use a bar code scanner.
myPOS also provides reports on inventory, sales, customers, etc. Since it is already recording
each sale, it can easily tell you the sales and revenue of the day.

myPOS provides an easy to use interface for all activities of the sales person and It can make
the job of the cashier a lot easier by automating the routine tasks of the day. myPOS comes

6
with a wide variety of modules and Sales person can choose one that fits your budget and meets
the needs of his particular business. [1]

 WallacePOS
WallacePOS is an open-source, intuitive & modern web based POS & business management
system. It uses the power of the modern web to provide an easy to use & extensible solution
suitable from small to medium businesses. It's also compatible with standard POS hardware
including receipt printers, cash draws and barcode scanners. With a rich administration
dashboard and reporting features, WallacePOS is accessible to managers and staff levels. All
the records are kept digitally. Their databases are accessible via internet. All data is made
available for export & external analysis. Configuration and item updates are delivered to POS
terminals in real time Supports POS hardware across a large number of devices and operating
systems. It Compatible with receipt printers, cash draws and standard USB barcode scanners
and also it Produces Professional receipts complete with your logo, custom text & QR code[2]

 INVcool
This Provides complete physical inventory capabilities and makes inventory tracking easy with
worksheets and variance reports. It helps to Record detailed information (purchase date,
purchase cost, warranty expiration date, etc.) against inventory and stock items.

This will allow you to post charges to the Job Cost module for more complete tracking of
materials used on a project.it gives customer to easily access a complete audit trail with history,
actions and events performed by all users .It provides facility to tracks minimum, maximum,
and order point stocking levels by part to help keep stock quantities at optimum levels. Also it
provides instant inquiry of part information, including receipts, issues, returns, and
adjustments.

Its Leverages four costing methods: Standard, Average, FIFO, and LIFO.It gives easily copies
an existing part to a new part, making the setup of like items faster and easier.

It Performs transfers and disposals for individual items or groups of items. And it stores a full
history and future maintenance plans for each item.

It has facility to link inventory items with fixed assets system register INVcool produce a full
range of standard and customized reports. [3]

7
2.3 Critical Analysis of Similar Systems

Table 2-1 shows the a summary of critical analysis of similar systems


FEATURES myPOS Wallace INVcool POS and Stock
POS management for
wathumal traders

01.Getting reports of slow selling products NO YES NO YES

02.Order Processing YES NO YES YES

03.Getting reports of slow overstocking NO YES NO YES


products

04..Printing out receipt with company logo Yes NO Yes Yes

05.Products Reorder NO Yes NO Yes

06.Input records damage or lost products Yes NO Yes Yes

07. carrying out promotions Yes Yes Yes Yes

09.Using Barcode reader Yes Yes Yes Yes

10.Warehouse Management Yes Yes NO Yes

11.Custom Pricing NO NO Yes Yes

12.Stock Management Yes Yes Yes Yes


Table 2-1: Critical Analysis

2.4 Summary
This chapter gives a review of matching systems and technologies and related applications.
Additionally, it is aimed at the evaluation of stock management process and justification of tool
and technology selections with quotation.
This project has been compared with the stock management software such as myPOS,
WallacePOS and INVcool. The critical analysis of this has been shown in the above table 2.1.

8
Chapter 3 Analysis and Design

3.1 Introduction

Analysis phase mainly focused on requirement gathering, fact finding and identifying the
functional and non-functional requirements in the system. In addition, rapid analysis of existing
Point of sale and stock management systems are discussed. At the end of the analysis phase,
the system can proceed in to the design phase, that consider the software architecture design
and primary diagram designs.

3.2 Requirements Gathering

Requirements gathering is an important task in any sort of system development. It is very


important to take workable conclusions to make the analysis phase a successful one. Most of
the time, discovering the problem precisely, is what a potential client required. It will not be
much clear in the beginning. However, while moving forward it can be clearer with much
sense.
If we fail to catch up the requirements carefully, the entire project will end up in failure. In
theory it will be a challenge to identify the real requirements. Therefore, understanding the
actual requirement is vital. Following strategies has been used to gather the requirements.

3.2.1 Fact Finding Techniques

 Observation and follow similar systems


There are plenty of POS systems in the market. For this project, it has cross reviewed
many functionalities and behaviours of exiting systems and actively participated and
observed as user behaviours in few commercial systems on demonstration modes.

 Interviews
Interview is one of the best source to find out the flow of a requirement gathering
process. Each professional prefers customize flow where they can adapt. Choosing the
best flow for the process is a challenge based on different interests. However
associating with few in a list can come to a stage where we can decide an optimal flow.

9
 Unstructured Interviews
A general objective or business domain in mind. Questions can differ from one
individual to another.
 Structured Interviews
Pre-defined certain list of questions maintained to inquire from the interviewee.

 Review of available documents and manuals


Review the available company documentations and charts, of the pos and stock
management systems.

3.3 Requirement analysis and Management

Collected requirements need to be analysed and validated. Requirements needs to be clear


unless it can create chaos later. Receiving new requirements from the client unconditionally
will impact the project quality or it can result in over budget of initial estimation for the project.
Hence requirement management is a critical task in any project.

3.4 Analysis of the ongoing systems

Current work process need to be evaluated prior to any system design drafting. It can be the
best place to start with requirement analysis. When the ongoing steps and process are clear it
very easy to extract the change requirement and then new addition that needs to be
implemented.

3.5 Requirements for the new system

3.5.1 Functional Requirements

1. Build point of sales module for the Wathumal Traders.


 Add new item to the shopping card by using item name.
 Add new item to shopping card by using bar code.
 Can check available quantity.
 Can adjust price of the item

10
 Can generate new invoice
 Remove item from the cart
 Available for various payment method( cash/credit)
 Print preview of invoice
 Print option of two sizes of bill type

2. Enable add item to the stock


 add category of the stock –add sub category of the stock
 Update inventory
 Remove inventory
 create custom bar code generator for item
 Search by invoice
 search by supplier Name
 Able to view best selling
 Search by selling date.
 View all item of the stock
 View total value of stock item
 View total numbers of item type
 View total numbers of units

3. Get details about Business


 Search by sales date
 Search by expire date
 Show all sales
 Show all card payment separately on time duration
 Display all the cash sales
 Display all the credit sales and their due periods.
 Search due amount using time period, Invoice No, Customer ID
 Show total turn over
 Show total profit
 Show total orders
 Show total.

11
4. Obtain the details about due customers
5. Download current stock database as backup.
6. Generate reports that include total revenue, no of items in stock
7. Build point of sales module for the Wathumal Traders.
 Add new item to the shopping card by using item name.
 Add new item to shopping card by using bar code.
 Can check available quantity.
 Can adjust price of the item
 Can generate new invoice
 Remove item from the cart
 Available for various payment method( cash/credit)
 Print preview of invoice
 Print option of using various pepper size)

8. Enable add item to the stock


 add category of the stock –add sub category of the stock
 Update inventory levels (multiple cells on one click)
 Remove items from Stock
 create custom bar code generator for item
 Search by invoice number
 search by supplier Name
 Able to view current bestselling item of the shop
 Search items by selling date
 View all item of the stock
 View total value of stock item
 View total numbers of item type
 View total numbers of units

9. Get details about Business


 Search by sales date
 Search by expire date
 Show all sales
 Show all card payment separately on time duration
 Generate all payments which are done by cash
12
 Show due customers and their due period dates using a colour code. Red colour
shows the debtors over ninety days. Yellow colour shows the debtors’ days between
thirty to sixty days. Green colour shows the debtor days less than the 30 days.
 Show all payments which are done by credits card (currently shop does not support
credit card payment due to 3% of charge from bank)
 Search(customer ) due amount using time period, Invoice No, Customer ID
 Show total turnover (total invest for the stuff)
 Show total profit(daily , monthly, yearly)

3.5.2 Non-Functional Requirements

Performance

Loading time is obviously an important part of any user experience. And many times, we’ll let
it slide to accommodate better aesthetic design, new attractive functionality or to add more
content to one pages. For example cashier sales part includes barcode reader and item issuing
and able to verify stuff for the cashier

Reliability

Information that contains within the system needs to be accurate and consistence. Most of the
shop work depends on the system. So it needs be accurate if not the business will fall.

User Friendliness

Users should quickly need to get the hang of the system flow. In addition, cashier should be
issue items speedily without wasting time of the customer. Therefore POS Interface should be
more user friendly than others. The main intention is that this system is being used by less
educated individuals and they should be understood it easily.

Availability

System Bar code reader and POS should be available all the time in the Shop without any
interrupt.

13
Security and safety

System should be secure enough to handled stock information. As well as have to provide
secure access to the admin users because they have the take decision about the Sales of the
shop, Total revenue, Current Stock, Best-selling Items, Least selling items

Privacy
Maintain security measurements for company reports is a must. Alone with that assign user
privileges and Separate Logging for Reports which consist of information such as total revenue
,stock level and other business data are an important part in the software. The cashier do not
have the authorization to view the stock levels, add items to the system or view reports. Thus
the system has a sound security.

3.5.3 Hardware and Software requirements

Hardware Module Requirement


Processor Intel 2Ghz or higher
RAM 512 MB/1 GB or higher
Hard Disk 20 GB or More Disk space
Internet Connection Broadband Connection
Resolution Minimum 1024 x 768

Table 3-1: Hardware requirements

Software Module Requirement


Operating System Windows XP or Later
Database My SQL 5.x version

Table 3-2: Software requirements

14
3.5.4 System Architecture

 Three Tier Architecture


A three-tier architecture is a client-server architecture in which the functional process logic,
data access, computer data storage and user interface are developed and maintained as
independent modules on separate platforms. Three-tier architecture is a software design pattern
and a well-established software architecture.

The Client (also called the Presentation layer) typically could be a client application written in
Atomic. This is the Wathumal Traders exe is the app which mainly interact with client.

The logic tier (also called Business logic layer) is typically .net framework which is used to
implement this system. This is the brains of a 3-tier app and is responsible for receiving and
transmitting requests and responses from and to the presentation client. It also acts as the
intermediary to the back-end database.

The database tier is typically a database server such as MySQL, or Oracle, It could also be a
database server, that itself handles stock data. In this system Wathumal Traders data base
represents the data base tier. [4].

3.6 Design of system

3.6.1 Introduction

The design and implementation phase on this system development will concern about the
design of suggested program using Unified Modelling Language (UML) plus the interpretation
of the design to the desired design specifications and source code. The main objective of the
implementation is to generate the source code and that adheres to the specifications.

3.6.2 ER Diagram

An entity–relationship model is usually the result of systematic analysis to define and describe
what is important to processes in an area of a business. It does not define the business processes;
it only presents a business data schema in graphical form. It is usually drawn in a graphical

15
form as boxes (entities) that are connected by lines (relationships) which express the
associations and dependencies between entities. [5]

Figure 3-1: ER diagram

3.6.3 Use case descriptions

A use case is a methodology used in system analysis to identify, clarify, and organize system
requirements. Use case diagrams are employed in UML (Unified Modelling Language), a
standard notation for the modelling of real-world objects and systems. UML shows the various
activities users can perform in the system and represent the dynamic aspects of system also

16
provides user’s perspective of the system. In user case diagram an actor are users of the system
and playing a role. [6]

Use-Case Issue item


Actor Cashier, Manager
Overview

Issue items from Stock


Pre-conditions

Cashier must login to the system


Flow of events
1. Cashier must logging in to the system
2. Generate new invoice
3. Enter customer name if required
4. Enter customer
5. Enter item name or expose to the barcode reader
6. Enter quantity
7. Selecting best price
8. Enter total payment
9. Selecting payment type
10. Print bill

Post conditions

Issue item to customer

Table 3-3: Use case description of Issue item

17
Use-Case Add item to stock
Actor Manager
Overview

Manager add items to stock


Pre-conditions

Manager mast log in to the system


Flow of events

1. Logging in to the system


2. Add main category
3. Add sub category
4. Add item code of item
5. Add barcode of item
6. Add item name
7. Add rack
8. Add Sinhala name
9. Add unit cost item
10. Add selling price
11. Add best price of item
12. Add Quantity of Item
13. Add Reorder Quantity
14. Add supplier name
15. Add Expire date
16. Add Purchase date
17. Add Image of product

Post conditions

Item has added to stock

Table 3-4: Use case description of Add item to stock

18
Use-Case Generate barcode of item
Actor Manager
Overview

Generate barcode of item


Pre-conditions

Manager must logging in to the system


Flow of events
1. Logging to the system
2. Add main category
3. Add description of main category
4. Add sub category
5. Add item code
6. Add bar code of item
7. Add item name
8. Add rack
9. Add Sinhala name
10. Add unit cost of item
11. Add selling price of item
12. Add best price of item
13. Add quantity of stock
14. Add re order quantity amount
15. Add supplier Name
16. Add Expire date
17. Add purchase dare
18. Add image of product

Post conditions

Bar code has generated


Table 3-5: Use case description of Generate barcode of item

Please refer appendix A for more use case description.

19
3.6.4 High-level use case diagram for the system

High level use case diagram provides the brief description of three actors such as, cashier,
manager and customers.

Figure 3-2 :High-level use case diagram

3.6.5 Sequence diagrams for entire process

The Sequence diagrams mainly use to identify the process in easily understandable way.
Without high level software architecture or design knowledge can identify each event and its
logic with the main key objects. In the below sequence diagram it has four characters such as
Cashier, manager, customer and the system. [7]

20
Figure 3-3 : Sequence Diagram

21
3.6.6 Class diagram for the system

The class diagram describes the attributes and operations of a class and the constraints imposed
on the system. The class diagrams are widely used in the modelling of object oriented systems
because they are the only UML diagrams which can be mapped directly with object oriented
languages.[8]

Figure 3-4: Class Diagram

3.7 Summary

This section mainly focused on system analysis and design of the POS and stock management
portal. It contains requirement gathering, fact finding and find the functional and non-
functional requirements of the system at the same time brief analysis of planned system. Once
analysis completed successfully can move to the design phase. It may focus on initial diagram
designs such as ER diagram and UML diagrams. ER diagram, Class diagram, sequence
diagram and use case diagrams which are discovered in the design section.

22
Chapter 4 Implementation

4.1 Introduction

Point of sale and stock management system is implemented on windows platform. It utilizes
the MySQL Database platform. Currently database server is used to store stock database .All
the users are able to connect data base using WIFI connection or LAN connection and update
the database table every time using the system. In Current situation the database server has
been established on the shop. So there is no need to bother Internet connection availability. To
generate barcode instantly for the goods that are not having barcode, customer and Crystal
Report with Net libraries have been used in the system. With the windows platform utility, any
windows operating system can be used to run and deploy the system. All user interaction
methods are performed directly through the windows OS. Users are categorized into two main
domains; Cashier and Manager.

Practical version of the Point of sale and stock management system consist only with one
manager but can expand into multiple cashiers. Manager has responsibilities such as add
suppliers, add categories, generate bar codes for items, add item to the system, update details
of items, remove items from database, adding cashiers to the system. Apart from that system
also provides some details to take decision for managers such as search by the best-selling,
search sales by date and search by Expiry- date.

Point of sale and stock management system has a separate login for the reporting. It can be
viewed by all the transactions per day and per month, by pre-defined time duration, by the
transaction type, cash or credit and also by customer due amounts.

Point of sale and stock management system also enrich with POS part. It also enables with auto
loading features when searching item for purpose of minimizing errors.

Stock details and transaction details (database) can be downloaded using this system.

23
4.2 System Overview

Point of sale and stock management system allows the users to login as the manager and
cashier. Loading page requires master password which will be given to the system owner by
the system developer. By using the master password the manager to create logins for manager
and cashiers. If cashier or manager forget the password it can be reset using master password
which is stored at email or cloud.

Home page of the system gives the functionalities such as sale orders, add items to stock,
Database backup, find details of stock, and report section which can be used to calculate total
revenue of the shop.

Sales orders let the cashiers to access the POS part of the system and it also include some auto
loading functions and bar code features to get details of the selling item.

Figure 4-1: POS Section

Sales orders is the most visited page by users and it should provide detailed idea about the
items of stock. Some of data table sections to view stock for cashier which help to get some
verification about items sold are given below.

24
4.3 Add Section

Figure 4-2: Add Section

It is mandatory to include all the important information about of the items accurately to the
system. This system provides the facility to grab most important content from item as given
above in the figure 4.1.

Also system enrich with “search” function which enables the user to search items by item name
and code. There is a function called “view all” to verify the items added to the database.

Manager can update (edit or remove) the stock details when it requires.

There is a separate tab to generate bar codes for the items as shown in the figure.

Report page provide the facility to view the details of the items by all the transactions per day
and per month, by pre-defined time duration, by the transaction type, cash or credit and also by
customer due amounts.

25
Figure 4-3: Reports

Stock page provide the current stock details.


It is facilitated to search by invoice No., best- selling item, suppliers name, latest purchasing
item, and daily sales and sales quantity by date.
Also the users can view Stock details and update (edit and remove) the items of the Stock.

Figure 4-4: Stocks

Back up page provides the facility to back up the stock details and helps to prevent the extra
load to the system.

26
Figure 4-5: Backup

4.4 Printing Section

There are two types of printing pages are supplied by the system.

Bill width – 2”

Figure 4-6: Bill Width-2”

27
Bill width – 3”

Figure 4-7: Bill Width-3”

4.5 Technology and Tools

Visual Studio 2008

Development Process Development started by first defining classes related to each of the layer
in the layered architecture described in Chapter 4. It was decided to use some of the
relationships with Visual Studios 2008 and free reusable components in the implementation
stage of the program. The first step of the development process was to identify the conventions
that should be used when coding. It was decided to use namespaces to logically group similar
classes. [9] To create the exe set up file the visual studio 2008 software was used as newer
versions do not have that ability.

My SQL Server

MySQL Community Edition is a freely downloadable version of the world's most popular open
source database that is supported by an active community of open source developers and
enthusiasts. It’s the most widely used open source RDBMS. It is the most popular choice of

28
database management system for use in web applications. Many third-party GUI tools are
available. MySQL work bench is one example for GUI tool.[10]

Adobe Photoshop,

Adobe Photoshop CS6 tool use for user interface designing. Adobe flash and Adobe premiere
used to create the multimedia contents of the system. To create buttons, logo and the fill format
the Photoshop software have been used. [11]

Crystal Report

Crystal Reports is a business intelligence application, currently marketed to small


businesses by SAP SE. It is used to design and generate reports from a wide range of data
sources. [12]

To generate the custom barcodes, crystal report software have been used.

4.6 Hardware and Software /Application Requirements

4.6.1 Hardware configuration for user PC

 Intel Core i5 Processor


 8 GB RAM
 64-Bit Operating System
 250 GB Hard Disk Drive
 HD Monitors 1366 X 768
 LAN network card or Wireless card
 Software configuration for user PC
 Windows 7 or above version

29
4.7 Server Environment

4.7.1 Hardware Configuration

 3.0GHz Intel Processor


 4GB RAM
 150 Free Hard Disk Drive
 LAN network card or Wireless card

4.7.2 Software/Application Configuration

My SQL server 5.0.45 has been installed in the Ubuntu Latest stable version. Then the System
database will be installed into My SQL server 5.0.45.By using wireless card or network card,
the manager or the cashier could build the access to the data base. [13]

4.8 Client side requirement

4.8.1 Hardware Configuration

Any Internet connected PC (at least of 512 KB/s speed internet) and having processor power
more than 2.0 GHz.

4.8.2 Major code segments

Cording of the proposed system was done using Visual Studio 2008. Some major code
segments of the system are given below.

Barcode is important part of the Point of sales system. Below shows major code of Barcode .cs
file.

30
Figure 4-8: Barcode

Data backup is main part of any system. Below shows main part of Backup code.

Figure 4-9: Coding of Backup

31
Printing Bill

Figure 4-10: Coding of Print Bill

4.8.3 Validation

Code segments used to validate the system is given below.

Validation of Best price text field

Figure 4-11: Validation of Best price

32
Validation of date field

Figure 4-12: Validation of Date

Validation of not empty required id filed

Figure 4-2: Validation of required id

Validation of Item Code

Figure 4-14: Validation of Item Code

33
Validation of Invoice Number

Figure 4-15: Validation of Invoice Number

Validation of Quantity text field

Figure 4-163: Validation of Quantity

4.9 Summary

Implementation chapter focus on the POS and Stock Management portal user interfaces as well
as justification of technology, tools used in the system. Configuration of server, configuration
of development PC, client hardware and software also mentioned briefly.

34
Chapter 5 Evaluation and Testing

5.1 Introduction

Evaluation phase is used to test the implemented system for its uses and accuracy by
using various test strategies. In this phase system components are tested and re-arranged
if they do not meet the requirements.
This chapter represents the work carried out during the evaluation phase of this project.

5.2 Main objective of the Test process

Given below are the test objectives that has been set at the beginning of testing.
1. To meet the client / user requirements
2. To arrange the system in order to free from bugs and finalize in stable condition.
3. To ensure that the system is ready for the real time use.

5.3 Front End Testing

Standalone application is mostly based on the user interfaces (UI) because of the lack of
computer or IT knowledge of the stake holders. UI functions of the application are tested
according to the test plan using Black box testing methodology. The system has tested on each
module and the results of the each test cases were generated and given below.

35
5.4 Test Cases

Test case is an outline which tests a feature or set of features. It provides developer a
systematic approach for testing. Therefore it will ensure the completeness of test and provide
the highest likelihood for uncovering errors in the software. Test case consist of:

 Test data
 Expected results
 Purpose of having the particular test data.

For the functions and procedures a unit testing is carried out first when coding the system. The
behavior is intended by the unit test. The units of codes are tested and it is called a code level
testing. To test the modules of the system an integration testing is processed. When using
different kinds of implementation technologies this is a must to ensure the proper working of
all the integrated components for the relevant outcome. The whole system has been tested after
the unit testing and integration testing to guarantee the standard of the system using an
environment similar to the environment where the system is going to practically used. A
customer confirmation is obtained by a user acceptance testing after the completion of the
system. It ensures the requirements are fulfilled by the developed system.

5.4.1 Unit Testing

Unit testing was done while implementing the project. This is done for individual units.

5.4.2 Integration Testing

Integration Testing is carried out after the separate software modules have been unit testing.
Integration testing is based on the functional specification of the software. E.g. when cashier
provided the correct credentials to the login module, it logged to the POS interface and issue
item to customer.

5.4.3 System Testing

System testing is carried out at the completion of the integration testing. The purpose of
system testing is to prove that the software meets the agreed user requirements and works in
the target environment. System testing covers both functional and non-functional
requirements.

36
E.g.: By logging into the system and routing through different processes the whole system
was tested.

5.4.4 Black-box testing

This type of testing is done without testing its internal structure. Testing is done only to see
whether it meets desired outputs.

5.4.5 White-box testing

This is done to test the systems internal structure. This is also called Glass box testing.

For example debugging the bar code generation

5.4.6 Regression Testing

This is done after changes are made to a system application. This test is to prove that the
change has been made correctly and that change has not introduced any new errors.

Return

Test Test Case Expected out comes Success


Modify Auto generated Don’t allow to modify Auto generated
1 Yes
Invoice Number. Invoice No
Modify Auto generated Item Don’t allow to modify Auto generated
2 Yes
Number. Item Number.
Modify Auto generated Don’t allow to modify Auto generated
3 Yes
Purchasing Quantity. Purchasing Quantity.
Modify Auto generated Sold Don’t allow to modify Auto generated
4 Yes
Price. Sold Price.
Search Invalid or Null Return Display error message on Same Page
5 Yes
Quantity “Invalid Quantity”
Table 5-1 Test case for Return

37
Stock
Test Test Case Expected out comes Success
Search Invalid or Null Item Error notifications in relevant fields.
1 Yes
Code System rejects to proceed
Search Invalid or Null Item Error notifications in relevant fields.
2 Yes
Name System rejects to proceed
Purchase date greater than Error notifications in relevant fields.
3 Yes
issue date in Quantity System rejects to proceed
4 Remove item accidentally Confirm box will pop up Yes
5 Update Item accidentally Confirm box will pop up Yes

Table 5-2 Test case for Stock

Database
Test Test Case Expected out comes Success
Error notifications in relevant fields.
1 Backup Empty database Yes
System rejects to proceed
Error notifications in relevant fields.
2 Backup Empty database table Yes
System rejects to proceed

Table 5-3 Test case for Database

Reports
Test Test Case Expected out comes Success
Purchase date greater than Error notifications in relevant fields.
1 Yes
issue date in Quantity System rejects to proceed
2 Remove item accidentally Confirm box will pop up Yes

Table 5-4 Test case for Reports

38
Customer due Amount
Test Test Case Expected out comes Success
Modify Auto generated Don’t allow to modify Auto generated
1 Yes
Invoice Number. Invoice No
Modify Auto generated Don’t allow to modify Auto generated
2 Yes
Invoice Date. Item Number.
Modify Auto generated Don’t allow to modify Auto generated
3 Yes
Customer ID. Customer ID.
Modify Auto generated Don’t allow to modify Auto generated
4 Yes
Customer Name Customer Name.
Modify Auto generated Don’t allow to modify Auto generated
5 Yes
Customer Phone Customer Phone.
Modify Auto generated Don’t allow to modify Auto generated
6 Invoice Number Yes
Invoice Number.
Modify Auto generated Total Don’t allow to modify Auto generated
2 Total Amount Yes
Amount
Modify Auto generated Don’t allow to modify Auto generated
3 Payment Yes
Payment.
Modify Auto generated Due Don’t allow to modify Auto generated
4 Due Amount.. Yes
Amount
Modify Auto generated Due Don’t allow to modify Auto generated
5 Due Age Yes
Age

Table 5-5 Test case for Customer Due Amount

System
Test Test Case Expected out comes Success
Shutdown System Error notifications in relevant fields.
1 Yes
Accidently. System rejects to proceed
Back to the Previous Menu Error notifications in relevant fields. Yes
2
accidently System rejects to proceed
Error notifications in relevant fields.
3 Incorrect Login for Cashier. Yes
System rejects to proceed
Error notifications in relevant fields.
4 Incorrect Login for Manager Yes
System rejects to proceed

Table 5-6 Test case for System

39
POS
Test Test Case Expected out comes Success
Modify Auto generated Don’t allow to modify Auto generated
1 Yes
Invoice Number. Invoice Number
Modify Auto generated Don’t allow to modify Auto generated
2 Yes
Invoice Date. Invoice Date
Modify Auto generated Don’t allow to modify Auto generated
3 Yes
Customer Telephone No. Telephone No
Modify Auto generated Item Don’t allow to modify Auto generated
4 Yes
Name. Item Name.
Modify Auto generated Item Don’t allow to modify Auto generated
5 Yes
Code. Item Code.
Modify Auto generated Item Don’t allow to modify Auto generated
6 Yes
Picture. Item Picture.
Modify Auto generated Don’t allow to modify Auto generated
7 Yes
Sinhala Name Sinhala Name
Modify Auto generated Don’t allow to modify Auto generated
8 Yes
Discount Price. Discount Price.
Search Invalid or Null Item Error notifications in relevant fields.
9 Yes
Code System rejects to proceed
Search Invalid or Null Item Error notifications in relevant fields.
10 Yes
Name System rejects to proceed
Modify Auto generated Don’t allow to modify Auto generated
11 Yes
Subtotal. Subtotal.
Modify Auto generated Total Don’t allow to modify Auto generated
13 Yes
Savings Total Savings
Modify Auto generated Don’t allow to modify Auto generated
14 Yes
Grand total Grand total
Assign Custom Invoice No Don’t allow to modify Auto generated
15 Yes
after ending previous Invoice Invoice Date

Table 5-7 Test case for Point of sales

40
Add Items
Test Test Case Expected out comes Success
Assign Invalid Main Category in Error notifications in relevant fields.
1 Yes
Add item System rejects to proceed
Assign Invalid Sub Category in Error notifications in relevant fields.
2 Yes
Add item System rejects to proceed
Error notifications in relevant fields.
3 Assign Duplicate Item Code Yes
System rejects to proceed
Error notifications in relevant fields.
4 Assign Duplicate Bar Code Yes
System rejects to proceed
Assign Invalid (negative number, Error notifications in relevant fields.
5 Yes
letters) values in Unit Cost System rejects to proceed
Assign Invalid (negative number, Error notifications in relevant fields.
6 Yes
letters) values in Selling Price System rejects to proceed
Assign Invalid (negative number, Error notifications in relevant fields.
7 Yes
letters) values in Our Price System rejects to proceed
Assign Invalid (negative number, Error notifications in relevant fields.
8 Yes
letters) values in Stock Quantity System rejects to proceed
Assign older date as purchasing Error notifications in relevant fields.
9 Yes
date System rejects to proceed
Error notifications in relevant fields.
10 Assign older date as Expire date Yes
System rejects to proceed
Assign older Expire date than Error notifications in relevant fields.
11 Yes
Purchasing date System rejects to proceed
Error notifications in relevant fields.
12 Search Invalid Item Code Yes
System rejects to proceed
Error notifications in relevant fields.
13 Search Invalid Item Name Yes
System rejects to proceed
Assign Duplicate entry for Error notifications in relevant fields.
14 Yes
Category System rejects to proceed
Assign Duplicate entry for Sub Error notifications in relevant fields.
15 Yes
Category System rejects to proceed
Assign Invalid values(Digits) for Error notifications in relevant fields.
16 Yes
Category description System rejects to proceed
When update button press, it
17 Edit and update button click displays in editable mode with Yes
existing data
Before remove a confirmation
18 Remove Button click Yes
message

Table 5-8 Test case for Add Items

Please refer appendix E for analysis of test results.

41
5.5 Automated testing for Wathumal traders

Automated tests that drive an application through its user interface (UI) are known as coded
UI tests (CUITs). The Code First approach is a relatively new workflow introduced
by Microsoft. It is utilized to generate UI Map elements by using Search (or) Filter properties
of a control, instead of using UI Map objects generated by the Coded UI Test Builder.These
tests include functional testing of the UI controls. It let user verify that the whole application,
including its user interface, is functioning correctly. Coded UI Tests are particularly useful
where there is validation or other logic in the user interface, for example CUITs can be used to
verify all the database connectivity between UI functionalities such as WinButton,
WinCalender, WinCell, WinColumnHeader, WinComboBox, WinControl, WinCustom,
WinEdit, WinGroup, WinHyperLink, WinList, WinMenuItem, WinListItem, WinMenuBar,
WinPane, WinRadioButton, WinScrollBar etc of Wathumal Traders Software.[14]

5.6 User Acceptance form

User acceptance test (UAT) is one of the main evaluation method before the software go on
live. UAT generate instance feedbacks form the end users and it is most healthy way of
collecting feedback on the new system with real people interaction. . Please refer Appendix E
for user feedback.

5.7 Summary
This section mainly focused on Evaluation of the system. It contains tested against the user
requirements, which are gathered at the beginning. In testing actual data from the client’s
environment is used. The units of codes are tested and it is called a code level testing. Secondly
the modules of the system an integration testing is processed. The whole system has been tested
after the unit testing and integration testing to guarantee the standard of the system using an In
environment similar to the environment where the system is going to practically used. A
customer confirmation is obtained by a user acceptance testing after the completion of the
system. It ensures the requirements are fulfilled by the developed system.
The chapter also includes aspects such as test plan, test cases, use of test automation tools and
testing frameworks.

42
Chapter 6 Conclusion and Future work

6.1 Introduction

This chapter focused on conclusions of the dissertation with a critical evaluation of the system,
lesson learned and suggestions for any future work.

6.2 Lesson learned

In the process of implementing this system it was required to gain knowledge in several aspects.
Such as requirement gathering, requirement analyze, planning, frontend and backend
development, software testing, infrastructure setup and documentation. It’s like an A to Z
process which has roles of a System Analysis, Developer, Tester, Network Administrator,
Content Write and Project Manager. The self-confidence to complete the project successfully
on time has been a great challenge for individual and it has been self-satisfactory goal for
myself. It was mandate to learn the programming Visual Studio 2008, MySQL and many other
important new technologies to lead the way and it was a very dynamic learning curve.

6.3 Conclusion

The stock and POS portal could be used to build a point of sales module for Wathumal traders.
The Manager can add new stocks to the system. Another important characteristic of the system
is to create information such as bestselling items, items close to expire and reorder levels using
the system and generate reports that can be used to improve the future business.

6.3.1 Future Works

When the business expands and more stores are opening up in the country, the existing data
base will not be enough .By hosting a cloud Database or giving remote access from other site
to the data base should be created in the future to solve this problem.

To further develop the system, QR cord payment method will be develop in the future. This
will allow customers to scan and purchase items using its QR cords through a smart phone or
tablet.

43
References

[1].” myPOS,” [Online] Available: http://www.mypos.lk/ [accessed 2007-07-25]

[2]. “WallacePOS,” [Online] Available: https://wallacepos.com/ [accessed 2006-01-04]

[3]. “INVcool,” [Oline] Available: http://www.bartecsoftware.com/software_products_time_att


endance_payroll_systems/inventory_control_system/index.php[accessed 2008-08-10]

[4]. “Three-Tier Architecture,” [Online] Available:


https://en.wikipedia.org/wiki/Multitier_architecture [accessed 2008-01-11]

[5].”What is an Entity Relationship Diagram,” [Online] Available:


https://www.lucidchart.com/pages/er-diagrams

[6]. “UML Use Case Diagram Tutorial,” [Online] Available:


https://www.lucidchart.com/pages/uml-use-case-diagram

[7]. “Sequence Diagram,” [Online] Available:


https://en.wikipedia.org/wiki/Sequence_diagram/[accessed 2005-04-20]

[8]. “Class Diagram,” [Online] Available:


https://en.wikipedia.org/wiki/Class_diagram/[accessed 2005-07-28]

[9].”visual-studio C#,” [Online] Available:https://docs.microsoft.com/en-


us/dotnet/csharp/[accessed 2017-08-30]

[10]. “MySQL is a relational database management system (RDBMS), MySQL databases or


manage data contained within the databases,” [Online] Available:
http://en.wikipedia.org/wiki/MySQL[accessed 2014-04-03]

[11]. “Photoshop tool galleries - Adobe Support .”[Online] Available:


https://helpx.adobe.com/photoshop/using/tools.html/[accessed 2017-10-13]

[12]. “Crystal Report,” [Online] Available:


https://en.wikipedia.org/wiki/Crystal_Reports/ [accessed 2007-09-27]

[13]. “Hosting database server,” [Online] Available:https://support.rackspace.com/how-


to/installing-mysql-server-on-ubuntu/.[accessed 2018-03-13]

[14]. “Use UI Automation To Test Your Code” [Online] Available:


https://msdn.microsoft.com/en-us/library/dd286726.aspx/

44
APPENDIX A – Use Cases

Use-Case Search by best selling


Actor Manager
Overview

Search by best selling


Pre-conditions

Manager must logging in to the system


Flow of events
1. Logging to the system
2. Select the inventory tab
3. Click search by best selling
Post conditions

Gather bestselling item

Table A 1 Search by best selling

Use-Case Add main category system


Actor Manager
Overview

Main category to system


Pre-conditions

Manager must log in to the system


Flow of events
1. Manager must logging in to the system
2. Add to unit code
3. Add description
Post conditions

Main category is added

Table A 2 Add main category system

45
Use-Case Add sub category system
Actor Manager
Overview

Sub category to system


Pre-conditions

Manager must log in to the system


Flow of events
1. Manager must logging in to the system
2. Add to sub code
3. Add description
Post conditions

Sub category is added

Table A 3 Add sub category system

Use-Case Show sales time duration


Actor Manager
Overview

Show sales time duration


Pre-conditions

Manager must logging in to the system


Flow of events
1. Logging to the system
2. Select the date range
3. Click sales
Post conditions

Gather sales from time duration

Table A 4 Show sales time duration

46
Use-Case Issue item
Actor Cashier, Manager
Overview

Issue items from Stock


Pre-conditions

Cashier must login to the system


Flow of events
1. Cashier must logging in to the system
2. Generate new invoice
3. Enter customer name if required
4. Enter customer
5. Enter item name or expose to the barcode reader
6. Enter quantity
7. Selecting best price
8. Enter full payment
9. Selecting payment type
10. Print bill

Post conditions

Issue item to customer

Table A 5 Issue item

47
APPENDIX B – Activity Diagrams

Figure B 1: Activity diagram of Add items

48
Figure B 2: Activity diagram of Logging

49
APPENDIX C – User Manual

Point of sale and stock management system allows the users to login as manager and cashier.
Loading page requires master password (most probably developers) to create logins for
managers and cashiers.

Figure C 1 logging

After finalizing the payment for developers, manager can get the master password and create
logins for cashiers.
Sales orders let the cashiers to access the POS part of the system and it also include some auto
loading functions and bar code features to get details of the selling item.
Sales orders is the most visited page by users and it should provide detailed idea about the
items of stock. Some of data table sections to view stock for cashier which help to get some
verification about items sold are given below.

 Add new item to the shopping card by using item name.


 Add new item to shopping card by using bar code.
 Can check available quantity.
 Can adjust price of the item
 Can generate new invoice
 Remove item from the cart

50
 Available for various payment method( cash/credit)
 Print preview of invoice
 Print option of various types (3.0,2.0)

Figure C 2: cashier logging

Figure C 3: Cashier sales orders

51
Item Return section

Figure C 4: Return Item

“Return Item” let the cashiers to access the returning part of the system and it also includes
auto loading functions to validate the invoice and customer can either get the amount returned
or buy new products using the amount.

Item Add section


It is mandatory to include all the important information about of the items accurately to the
system. This system provides the facility to grab most important content from item as given
below in the figure….

1. Logging using Manager login

2. add category of the stock –add sub category of the stock


3. Update inventory
4. Remove inventory
5. create custom bar code generator for item
6. Search by invoice
7. search by supplier Name
8. Able to view best selling
9. Search by selling date.
10. View all item of the stock
11. View total value of stock item

52
12. View total numbers of item type
13. View total numbers of units

Figure C 5: Manager Logging

Figure C 6: Add Items

53
There is a separate tab to generate bar codes for the items as shown in the figure.

Figure C 7: Bar code generator

Inventory page provide the current stock details.


It is facilitated to search by invoice No., best- selling item, suppliers name, latest purchasing
item, daily sales and sales quantity by date.
Also the users can view inventory details and update (edit and remove) the items of the
inventory

Figure C 8: Stock

Report page provide the facility to view the details of the items by all the transactions per day
and per month, by pre-defined time duration, by the transaction type, cash or credit and also by
customer due amounts.

54
Figure C 9: Manager Report Logging

1. Show All sales- view all transaction


2. Show card payments- view all transaction which were done by credit card
3. Show cash payments-view all transaction which were done by cash

Figure C 10: Sales

1. Show due by date-show due amount and customer name and phone
2. Show all sales- view all sales
3. Show all credit- show all payment which was payment by credit cards

55
Figure C 4: Payments

Back up page provides the facility to back up the stock details and helps to prevent the extra
load to the system.

1. Select database
2. Click Download button

Figure C 5: Back up

56
APPENDIX D - Questionnaires

Name of Employee
Designation
Working Experience - – – – 10
Years
1. Is the Initial interface is attractive? Do you o Extremely Satisfied
like it? o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
2. Always, different interfaces are not o Extremely Satisfied
complicated, I feel comfortable o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
3. Processes involved in the software, are not o Extremely Satisfied
found complex. I feel comfortable. o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
4. How would you rate the speed of Application o Extremely Satisfied
Software? o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
5. Message and instructions receiving from o Extremely Satisfied
software are available where ever we need o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
6. I am satisfied with the response and o Extremely Satisfied
attendance to enquiries made o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
7. I am satisfied totally with the whole software o Extremely Satisfied
provided o Very Satisfied
o Somewhat Satisfied

57
o Not so Satisfied
8. I am fully satisfied with the service provided o Extremely Satisfied
with the software o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
9. All, in process needs within the systems of o Extremely Satisfied
the institution are fulfilled by this software o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
10. Titles used in the general process are similar o Extremely Satisfied
and find no issues within the used titles of the o Very Satisfied
software. o Somewhat Satisfied
o Not so Satisfied
11. No misleading guides were found within the o Extremely Satisfied
software and Manual. o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
12. Compatibility with other application o Extremely Satisfied
software’s? o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
13. How often does our software freeze or o Extremely Satisfied
crash? o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied
14. Would you recommend our software to o Extremely Satisfied
others? o Very Satisfied
o Somewhat Satisfied
o Not so Satisfied

Table D 1: Questionnaire

58
1. Is the Initial interface is attractive? Do you like it?

Q1

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 1: Evaluation of attractiveness of the interface

2. Always, different interfaces are not complicated, I feel comfortable

Q2

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 2: Evaluation of the complicated aspect

59
3. Processes involved in the software, are not found complex. I feel comfortable.

Q3

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 3: Evaluation of the process in the software

4. How would you rate the speed of Application Software?

Q4

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 4: Evaluation of the speed of the software

60
5. Message and instructions receiving from software are available where ever we need

Q5

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 5: Evaluation of the user communication

6. I am satisfied with the response and attendance to enquiries made

Q6

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 6: Evaluation of response rate

61
7. I am satisfied totally with the whole software provided

Q7

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied


Figure D 7: Evaluation of satisfaction with the software solution

8. I am fully satisfied with the service provided with the software

Q8

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 8: Evaluation of service provide by the software

62
9. All, in process needs within the systems of the institution are fulfilled by this software

Q9

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 9: Evaluation of fulfilment of user requirements

10. Titles used in the general process are similar and find no issues within the used titles
of the software.

Q10

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 10: Evaluation of title used

63
11. No misleading guides were found within the software and Manual.

Q11

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 11: Evaluation of the software guide and the manual

12. Compatibility with other application software’s?

12

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 12: Evaluation of compatibility with other application software

64
13. How often does our software freeze or crash?

Q13

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 13: Evaluation of software robustness

14. Would you recommend our software to others?

Q14

Extremely Satisfied Very Satisfied Somewhat Satisfied Not so Satisfied

Figure D 14: Evaluation of users’ likeliness of recommending the software to others

65
APPENDIX E – Test Cases

Return
Test Test Case Expected out comes Success
Modify Auto Don’t allow to modify Auto generated Invoice No(Read
generated Only field)
1 Yes
Invoice
Number.
Don’t allow to modify Auto generated Item Number.(Read
Modify Auto
Only field)
2 generated Item Yes
Number.
Modify Auto Don’t allow to modify Auto generated Purchasing
generated Quantity.(Read Only field)
3 Yes
Purchasing
Quantity.
Don’t allow to modify Auto generated Sold Price.(Read only
Modify Auto field)
4 generated Sold Yes
Price.
.
Display error message on Same Page
Search Invalid “Invalid Quantity”
5 or Null Return (Read Only Field) Yes
Quantity

Error will Pop Up

Return
Quantity
6 greater than Yes
Purchase
Quantity

Do not allow type letters


Invalid Number
7 type for Return Yes
Quantity

Table E 1Test case for Return

66
Stock
Test Test Case Expected out comes Success
Error notifications in relevant fields. System
rejects to proceed

Search Invalid or Null Item


1 Yes
Code

Error notifications in relevant fields. System


rejects to proceed

Search Invalid or Null


2 Yes
Supplier Name

Confirm box will pop up.

3 Remove item accidentally Yes

Confirm box will pop up

4 Update Item accidentally Yes

Table E 2: Test case for Stock

67
Backup
Test Test Case Expected out comes Success
Error notifications in relevant fields.
System rejects to proceed

1 Backup Empty database Yes

Error notifications in relevant fields.


System rejects to proceed

2 Backup Empty database table Yes

Table E 3: Test case for Backup

68
Reports
Test Test Case Expected out comes Success
Error notifications in relevant fields. System rejects to
proceed

Purchase date
greater than
1 Yes
issue date in
Quantity

Confirm box will pop up

Remove item
2 Yes
accidentally

Table E 4: Test case for Reports

Customer due Amount


Test Test Case Expected out comes Success
Modify Auto Don’t allow to modify Auto generated Invoice No (Read Only
generated field)
1 Yes
Invoice
Number.
Don’t allow to modify Auto generated Item Number (Read Only
Modify Auto
field)
2 generated Yes
Invoice Date.

Modify Auto Don’t allow to modify Auto generated Customer ID (Read Only

generated field)
3 Yes
Customer ID.

69
Modify Auto Don’t allow to modify Auto generated Customer Name (Read
generated Only field)
4 Yes
Customer
Name
Modify Auto Don’t allow to modify Auto generated Customer Phone (Read
generated Only field)
5 Yes
Customer
Phone

Modify Auto Don’t allow to modify Auto generated Invoice Number (Read

generated Only field)


6 Yes
Invoice
Number.

Modify Auto Don’t allow to modify Auto generated Total Amount (Read Only
generated field)
7 Total Amount Yes

Modify Auto Don’t allow to modify Auto generated Payment (Read Only
generated field)
8 Payment. Yes

Modify Auto Don’t allow to modify Auto generated Due Amount (Read Only
generated field)
9 Due Amount Yes

Modify Auto Don’t allow to modify Auto generated Due Age (Read Only
generated field)
10 Due Age Yes

Table E 5: Test case for Customer due Amount

70
System
Test Test Case Expected out comes Success
Error notifications in relevant fields.
System rejects to proceed

Shutdown System
1 Yes
Accidently.

Error notifications in relevant fields.


System rejects to proceed

Back to previous Menu


2 Yes
accidently

Error notifications in relevant fields.


System rejects to proceed

3 Incorrect Login for Cashier. Yes

Error notifications in relevant fields.


System rejects to proceed

4 Incorrect Login for Manager Yes

Table E 6: Test case for System

71
POS
Test Test Case Expected out comes Success
Modify Auto generated Don’t allow to modify Auto generated Invoice Number
1 Yes
Invoice Number.

Don’t allow to modify Auto generated Invoice Date

Modify Auto generated


2 Yes
Invoice Date.

Modify Auto generated Don’t allow to modify Auto generated Telephone No


3 Yes
Customer Telephone No.

Modify Auto generated Don’t allow to modify Auto generated Item Name.
4 Yes
Item Name.

Modify Auto generated Don’t allow to modify Auto generated Item Code.
5 Yes
Item Code.

Don’t allow to modify Auto generated Item Picture.

Modify Auto generated


6 Yes
Item Picture.

Modify Auto generated Don’t allow to modify Auto generated Sinhala Name
7 Yes
Sinhala Name

Modify Auto generated Don’t allow to modify Auto generated Quantity.


8 Yes
Quantity.

Error notifications in relevant fields. System rejects to


proceed

Search Invalid or Null


9 Yes
Item Code

72
Don’t allow to modify Auto generated Sub total.

Modify Auto generated


10 Yes
Subtotal

Modify Auto generated Don’t allow to modify Auto generated Total Savings
11 Yes
Total Savings

Table E 7: Test case for POS

Add Items
Test Test Case Expected out comes Success
Error notifications in relevant fields. System
rejects to proceed

Empty Main Category in


1 Yes
Add item

Error notifications in relevant fields. System


rejects to proceed

Assign Invalid Sub


2 Yes
Category in Add item

Error notifications in relevant fields. System


Assign Duplicate Item rejects to proceed
3 Yes
Code

73
Error notifications in relevant fields. System
rejects to proceed

Assign Invalid (negative


4 number, letters) values in Yes
Unit Cost

Error notifications in relevant fields. System


rejects to proceed

Assign Invalid (negative


5 number, letters) values in Yes
Selling Price

Error notifications in relevant fields. System


rejects to proceed

Assign Invalid (negative


6 number, letters) values in Yes
Our Price

Error notifications in relevant fields. System


rejects to proceed

Assign Invalid (negative


7 number, letters) values in Yes
Stock Quantity

74
Error notifications in relevant fields. System
rejects to proceed

Assign older date as


8 Yes
purchasing date

Error notifications in relevant fields. System


rejects to proceed

Assign older date as


9 Yes
Expire date

Error notifications in relevant fields. System


rejects to proceed

Assign older Expire date


10 Yes
than Purchasing date

Error notifications in relevant fields. System


rejects to proceed

11 Search Invalid Item Code Yes

75
Error notifications in relevant fields. System
rejects to proceed

12 Search Invalid Item Name Yes

Error notifications in relevant fields. System


rejects to proceed

Assign Duplicate entry for


13 Yes
Category

Error notifications in relevant fields. System


rejects to proceed

Assign Duplicate entry for


14 Yes
Sub Category

When update button press, it displays in editable


mode with existing data

Edit and update button


15 Yes
click

76
Before remove a confirmation message

16 Remove Button click Yes

Table E 8: Test case for Add Items

77

You might also like