You are on page 1of 34

Online Shopping System

Chapter 1 1. Introduction This is the first phase of the System Development Life Cycle. This phase is very important because in this phase I will get to know the organisation behavior for which Im doing my project. I have visited few super shops. Some of them are maintaining manual system, but they are not in very much huge company but large super shops are maintaining Point of Sale (POS) System. I find that every manual system has lacking and problems in their system. In this age of IT, now it is no more possible to maintain manual systems in organisation moreover a super shop must use POS for quick access of data and for become faster in service. So Ill like to develop a system for those super shops that are not using POS yet. Initial investigation is the phase, where we will understand what we have to do in this project. We will determine hare, what about the project is? What the project need, what is current status of the project and what are the problems with the current system. As I am going to develop a general system, so I will use strategies of several companies and generates a single solution. 1.1 Needs Identification As it is a general system, I will try to design the system in a way that every one could use it frequently. So, I chose the common events that all POS need and then a graphical presentation of report will generate by the system.

The proposed system will contain three sections. Admin Section Home Products View all products Add new products View all categories Add new category

Sales List all sales New sale View sale box List new orders Purchase List all purchase New purchase View purchase box Administration View all members Add new member Scratch Card View active cards View used cards Add new card Change Password Logout

Employee Section

Home Products

View all products Add new products View all categories Add new category Sales List all sales New sale View sale box List new orders Purchase List all purchase New purchase View purchase box Change Password Logout Registered Customer Section

Home Products Category wise products show. My Orders List all Orders Make new orders

My Balance Current Balance Recharge New Card My Cart Change password Logout

Unregister Customer Section o Home o Products Category wise products show. o My Orders List all Orders Make new orders o My Cart o SignUp o SignIn

1.2 Determining user requirement All POSs are almost same. But several POSs gives several kinds of facilities. When I talk with POS users, they told me to organize the system simply. Supplier Information, Customer Information & Product Information are very simple. But Product Purchase Information, Auto Stock Update, Invoice Printing & Management Section should have a simple view & easy maintenance process. They also require strong Security in the system. Every employee should have password & Admin of the system will decide their access limit.

1.3 Background In Bangladesh, super shop concept comes with the First Super shop of Bangladesh Agora in Dhanmondi2. People become interested in this concept and then some other companys shows interest in this sector. MinaBazar in Dhanmondi, PQS (Price Quality - Service) in Uttora Shantinagar and Dhanmondi, Nandan in Gulshan, Pacific in Kakrile is result of it. All of this comes with a large investment in market. All of them have large & established POS. But there are some super centers in every area that are not as large as following. They cant invest like those. But also they are not in small position that they can maintain more a manual system. For example: Upayan in Siddheswari. They are not as large as following super shops but not small like other ordinary stationary shops. They are interested to invest a small amount in computerized POS system because they face many problems in maintaining a manual system. I choose this shop for an example to find out problems in manual system. 1.4 Problem Identification It is proven that human cant work as computer. So it is 99.99% possible where manual system will continue, there would be some lacking & problem with the system. I have seen some problems in the above systems which can categories in three parts. These are: 01) General Problem a) Needs moor time to searching old files. b) For preparing a suitable report it needs to work with 4/5 files at a time for necessary information which also take moor time. c) The productivity of the human resource can raised by couple of times if this manual system can be changed into a computerized system. d) It is so problematic to write a sales invoice if customer buy a lot of small things. 02) Technical Problem a) It need moor place to store the old files. b) Some time files may be destroyed by cockroach or by another way. c) It is unsecured. d) There is not any strong stock control. 03) Financial Transaction

a) It is so time consuming to get daily sales report b) Some time calculation may wrong

Chapter 2

2. What is Feasibility Study? Feasibility study is the second phase of the System Development Life Cycle. But in wide seance, feasibility study is a cross life cycle activity and should be continuously performed throughout a system project. A feasibility study is a preliminary investigation of a proposed system to decide whether the system can run smoothly with the organization, will the organization realize the benefits that are expected and to decide will the organization go for it. Some time it is criticized that feasibility study makes delay starting of the system, but it is an important subject to think that some peoples this thought may harmful for the organization. If the system is of low cost and low risk from the organizations point of view, then they can minimize it. But this is not a good idea for larger system because this may risky for them and they have also to determine the cost justification for the system. 2. 1 Stages of Feasibility Study Feasibility study and feasibility analysis has defined. But there is also four categories of feasibility recognized by the analysts. Those are: Operational feasibility Technical feasibility Schedule feasibility Economical feasibility But we are going to discuss with just Technical & Economical feasibility.

Technical feasibility looks at the system in point of view, is the system practical, do we have the technical support, that we could maintain the system, and is it reasonable? In case of my system, answers of these questions are:

Practicality: Normally all provided solutions are available in market. Now the question is, wither the technology is mature enough to solve our problem. In this case, Ill say, this system determined to design in a way, that could solve maximum problems of POS. In this way, Ill say, this system is practical for any POS. Current Technology:In case of current technology, that will need to run the system is a Pentium IV PC for Server, Pentium III PCs for client and any printer that could print A4 size paper. And all of this are available in market. Reasonability: All hardwares and PCs must be reasonable to the company who is running a POS. The cost of POS System is also reasonable. A lots of un-employed people are available and people who want a part-time / full-time job. So where everything that needs to run the system is reasonable we could say, the system is reasonable. All answers are found positive hear, so we could say, the system is Technically feasible. Economical feasibility is a measure of the cost-effectiveness of a project or solution. System cost can be defined in earlier stages of system development. Though this is a general system, a cost plane is identified. The cost plan is divided in two phase: Cost of development; Cost of using the system; Cost of Development: In cost of development, programmers, analyst other peoples salary who are related in development. Again costs of computer, hardware, testing, training etc are involved. But system development cost is just onetime cost, which will not recur after the project has been developed. Cost of using the system: Cost of using the system is pre defined and in some times its depends on user. Cost of using a system can be divided in two ways. Fixed cost and variable cost. Fixed cost: Software purchase cost & license cost are fixed. - Salaries of system operation are fixed, but it depends on client software also. Variable cost: Variable costs are: - Cost of computer use

- Suppliers e.g. printer, paper, magnetic tapes, floppy disks. 2.2 TERMS of Reference

2.2.1 Objective of the System

Objective of the system is to cover all events that are related to a supper shop. Events, which are aimed to cover in this system, are: A central server, in case of having moor branch of a shop. This central server will generate same product id for each branch. A server, for each shop. A client for each sales point. Stock of each branch. Auto invoicing system. All kinds of text & graphical report. 2.2.2 Boundary

Every system has a boundary and that can not cover everything of an organisation. This system is just dealing with sales system, and could not perform anything else of the organisation, like attendance, payroll, leave monitoring etc.

2.2.3 Time Schedule

As it is also a project of my B.Sc hons Final year course; Ive to submit it in a due time. So Ive design a time schedule to develop the system step by step. The schedule is:

Stage Start End Duration Initial Study 10th Mar, 2009 19th Mar, 2009 10 Days Feasibility study 20th Mar, 2009 28th Mar, 2009 9 Days Requirement Analysis 29th Mar, 2009 8th Apr, 2009 11 Days Requirement Specification 9th Apr, 2009 21st Apr, 2009 13 Days Design 22nd Apr, 2009 11th Apr, 2009

20 Days Coding 12th Apr, 2009 3rd May, 2009 21 Days Testing 4th May, 2009 10th May, 2009 7 Days 2.3 Initial Proposed System After passing Initial study and maximum part of Feasibility study, I am in a stage that I could imagine of the system. The system is identified in previous stage, though hear is a brief description of proposed system. Point of Sales System will be a system that will be abele to perform to all activities that are related of sales management and shop architecture. Central Server: The system is imagined to be controlled by a central server which will be setup by the Administrator product code & information. Customer Transaction: Employee Transaction

Chapter 3

3. Requirement Analysis Requirement Analysis is the third step of System Development Life Cycle (SDLC) and my project also. This stage is very much important and inseparable part of a project.

Requirement Analysis is concerned with discovering and deciding what the new system is required to do? I have discovered and find out some outline from the Initial Study and Feasibility Study of my project, but those are not enough to start building a new system. 3.1Fact Finding Fact-finding is one of the important steps toward any system development. It is essential to gather all the information and facts about an existing system to ensure that all strengths and weakness are discovered. Thus when a new system is designed as many of the weaknesses as possible are eliminated, whilst retaining the strengths. There are five general techniques available; those used depend upon the particular circumstances! Sampling of Existing Documents; Interview; Observation; Questionnaires; Research and Site Visits

01. Sampling of Existing Documents: To follow this particular method of fact-finding, Analyst has to study well existing documentation, forms, and files of existing system. A good analyst gets fact first from existing documentation rather than from people. 02. Interview: This technique of fact-finding is most popular, productive for good analysts and most probably widely used. Interviews are a fact-finding technique where by the systems analysts collects information from individual fact to face. Interviewing can be used to find-facts; verify facts; clarify facts; general enthusiasm etc. 03. Observation: Observation could be Formal or Informal. This is most effective when and analyst wants to obtain an understanding of a system. This technique used when analyst wants either participates in or watches a person perform activities to learn about the system. 04. Questionnaires: This is a special purpose document that allows the analyst to collect information and opinions from respondents. Questionnaires become useful when a little information is required from a number of people. 05. Research and Site Visits: Analyst has to research with data of the organisation. The data could be collect from the documents, files or from computer. Most organisations like to maintain their web site. Analyst can get data and information of their existing system from their web site.

3.2 Used Fact Finding Techniques From this five techniques I have used Questionnaires. Sampling I visited shop to shop and buy little gifts for my friends. By this way Ive colleced their invoice no. Cause of Im not being developing their system, for their confidencially report they didnt agree to show me their any other papers. But from various invoice report from various shops I get to know a little bit, how they are managing their system. Observation As I visited many shops for getting their invoice, Ive observe their work style, activity well. I see most of their client system. But again for confidentially and software license they didnt agree to show me their server system. By observing shops I greatly understand the system of Point of Sales and all of my lacking knowledge about a POS become clear. I watch their product cost in a sticker labeled in the products body, date validation in that label for date oriented product and non-date oriented products. By observing one shop I got the idea for fixing product rate in every product purchase invoice.

3.3 Context Diagram There are some rules that define which connections are valid and which are not in a system. The whole system can be defined by one single DFD called a Context Diagram. Hear is the Context Diagram of online shopping system. 3.4 Data Flow Diagram (DFD) Data Flow Diagram (DFD) show how data moves in a System and where it is stored. There is four symbol of DFD those are Process, External entity, Data flow and Data store. These are describd bellow. Process: The large rectangular box represent data handling process. This process take inputs, then process and change the data and finaly output it to somewhere else. The symbol of processes

Extrnal entities: The oval shap represent external entities. External entities are the things that are outside the system but any how related with the system. When a External entities occurs twice in the diagram and has a slash in the top left hand corner of the oval. The symbol of External entities

Data Store: The symbol of a Data Store is a thin rectangle. This is a place where datas are stored and used it in future. The symbol of Data Store

There are various types of data store, signified by the letter in the left hand box: M represent a manual data store system. D represent a computer data store system. Data flow: Data flow are represented by arrows. Its symbol is:

DFD OF THE System

Chapter 4 4. Requirement Specification

Requirement Specification step is concerned with converting the output of the Requirement Analysis stage into a specification that reflects what the new system is required to do. 4.1 Input Specification 4.1.1 Interface of the System The Interface of the System will be developed in International standard so that user should not to take moor time to be familiar with it. The system will organize under a MDI form and other forms will be the children SDI. 4.1.2 Validation and Verification of data should giving Every input field will be under the Data Validation technique and after input of data another procedure will work for Data Verification. This two procedure will always alert to save the system from wrong data input.

4.1.3 Minimize data redundancy Maximum unnecessary data from the main system will be redundant. Because this unnecessary datas will keep more place and made the system chaos. So, some temp table will use in database for performing some tasks, after completing the task, all record will deleted automatically.

Typing should be minimum To reduce moor typing the system will designed under relational database and forms will use Combo boxes in some cases for not to type one thing again and again.

4.1.4 Time efficient Obviously the system will time effective cause this is not a manual system. Same data for each branch will transfer with Floppy drive just by two clicks. Data from server will come in client also by clicking one menu button. So, it will really time efficient. 4.2 process specification

4.2.1 Quickly and better service It is proven that a computer can work faster then a human. So there should not be any question that it will serve a quick service. When the whole system will in front of a user then it will easy to him to understand the system. A manual system could not give this facility. Thats mean it is obviously a better service.

Find utility The system will use a powerful find utility for finding data easily. User could be able to use separate kinds of data to find a record like Member ID, Supplier ID, Product ID etc. 4.2.2 Easy menu system The system will maintain all possible International rules of development, so it should use an easy menu system to access any form easily. 4.2.3 Security Log In system will very strong in the system. Each user of the system will have their own password and that password will given by Admin of the system. They will also able to change their password. But Admin will able to always restrict their login and change access permission. 4.2,4 Error message In any unseen bug will caught in the system then the system will show an Error Message. Output Specification Presentation should be nice One better system can fall down it the system comes boring in some days. Again in the age of multimedia user would not like to use an ordinary system. So presentation of the system should be better and it will do on the system. Quickly available The system will be tried to give the facility to access data as quickly as possible.

Printing facility

Its the most important part of the system. The system will develop for the best printing facility.

Report generation Depends on input reports will be generated. Some report will generate using the relations on two or more tables. The reports will text report and graphical report also. Invoice Printing Special size of paper will use for the system for invoice printing. Cause in this system normal Jet Printer will use for invoice printing. Size of paper will depends on the product purchased by a customer. Minimum height will be 3.5 or 9cm. Then for each record 1 cm will increase the height. So its mean if a invoice is for 8 purchased products then the height of the invoice will be of (9 + (8*1)) cm or 17 cm or 6.80. Always papers width will be 4. 4.3 General Specification User friendly To make the system user friendly the menus of the system will divide into separate parts like Reception menu, Product menu, Report menu on Server etc. Uses of Short Cut Key The forms of the system will link under short cut keys. So user will be able to use short cut keys to go straight in another form. 4.4 Hardware Specification Hardwares required to running this computerised system is: 4.4.1 Input Devices:

102 Key American Standard Keyboard

2 Button Mouse 50x CD ROM Drive

4.4.2 Processing Units:

Processor : Pentium III, 600MHz or higher for better performance (Pentium IV will better for Server) 20 GB Hard Disk Drive 128 MB Ram 16 MB AGP Card 4.4.3 Output Devices: 14" Color Monitor or better Printer (Minimum A4 Size paper Printable quality ) 4.5 Software Specification Softwares required to running the developed system is:

4.5.1 Server Software specification for Server and Central Server are same. Operating System:

Windows XP Linux OS

Packages: Appache DBMS: MySQL 4.5.2 Client Operating System:

Windows XP Professional Packages: Internet connection. Web Browser(Internet Explorar, Mozila, Safari etc) Chapter 5 5.1 Software Design: The online shopping system with card recharge accepts input from users and generates dynamic displays of required output or data sources. To do this, following tools and technologies are used. v HTML v PHP v MySQL v APACHEE v XAMPP v DNS v HTTP HTML

HTML stands for Hyper Text Markup Language.

An HTML file is a text file containing small markup tags. The markup tags tell the Web browser how to display the page. An HTML file must have an htm or html extension. An HTML file can be created using a simple text editor.

Un-normalized form: Member id Member name Member password Member full name Join date Member category Member status Member address Member contact Member balance Purchase id Purchase date time Purchase amount Purchase status Saleid Saledate time Saleamount Salestatus

Product id Product title Product description Product manufacturer Product date Expiration date Unit Unit price Stock Discount price Product status category Category title Category description Category status Card id Card number Card amount Card status

First Normal Form Repeatitive Table Product id

Product title Product description Product manufacturer Product date Expiration date Unit Unit price Stock Discount price Product status category Category title Category description Category status Card id Card number Card amount Card status Member id Member name Member password Member full name Join date

Member category Member status Member address Member contact Member balance Non-Repeatitive Table Purchase id Purchase date time Purchase amount Purchase status Saleid Saledate time Saleamount Salestatus

Second Normal Form

ams_member id user_name user_pass name join_date status emp_category balance address contact Non-Repeatitive Table Purchase id Purchase date time Purchase amount Purchase status Saleid Saledate time Saleamount Salestatus ams_prod_category id title

description status ams-product id category_id title description manufacturer prod_date exp_date unit unit_price stock discount status ams_card id card_number amount member_id status ams_product_purchase id

prod_id pur_id unit_price quantity status

Third Normal Form ams-product id category_id title description manufacturer prod_date exp_date unit unit_price stock discount status ams_purchase id pur_datetime

member_id amount status ams_prod_sale id prod_id sale_id unit_price quantity status ams_sale id sale_datetime member_id amount customer_name customer_address customer_contact status ams_prod_category id title description

status ams_member id user_name user_pass name join_date status emp_category balance address contact ams_card id card_number amount member_id status

Ams_card:

By this table admin can issue card and customer can recharge balance and updated information.

Ams_member: By this table member information can be stored and updated by admin. Ams_product: By this table product information can be stored. Ams_prod_category: By this table product category can be create and information can be stored and updated. Ams_prod_purchase: By this table product purchase can be made and information can be stored and updated. Ams_prod_sale: By this table product sale transactions can be made and information can be stored and updated. Ams_purchase: By this table product purchase can be made and information can be stored and updated. Ams_sale By this table product sale transactions can be made and information can be stored and updated.

5.3 Testing and Debugging Software testing is the process of testing software in a controlled manner to ensure that it behaves the way it is expected to behave. Software testing is, thus a critical element of software quality assurance. Testing requires that the developer discards preconceived notices of the correctness of the software just developed and overcome the conflict of interest that occurs when errors are revealed. The levels of testing that software usually goes through are

ACCEPTANCE TESTING. Testing to verify a product meets customer specified requirements. A customer usually does this type of testing on a product that is developed externally. BLACK BOX TESTING. Testing without knowledge of the internal workings of the item being tested. Tests are usually functional. COMPATIBILITY TESTING. Testing to ensure compatibility of an application or Web site with different browsers, OSs, and hardware platforms. Compatibility testing can be performed manually or can be driven by an automated functional or regression test suite. CONFORMANCE TESTING. Verifying implementation conformance to industry standards. Producing tests for the behavior of an implementation to be sure it provides the portability, interoperability, and/or compatibility a standard defines. FUNCTIONAL TESTING. Validating an application or Web site conforms to its specifications and correctly performs all its required functions. This entails a series of tests which perform a feature by feature validation of behavior, using a wide range of normal and erroneous input data. This can involve testing of the product's user interface, APIs, database management, security, installation, networking, etcF testing can be performed on an automated or manual basis using black box or white box methodologies. INTEGRATION TESTING. Testing in which modules are combined and tested as a group. Modules are typically code modules, individual applications, client and server applications on a network, etc. Integration Testing follows unit testing and precedes system testing. LOAD TESTING. Load testing is a generic term covering Performance Testing and Stress Testing. PERFORMANCE TESTING. Performance testing can be applied to understand your application or WWW site's scalability, or to benchmark the performance in an environment of third party products such as servers and middleware for potential purchase. This sort of testing is particularly useful to identify performance bottlenecks in high use applications. Performance testing generally involves an automated test suite as this allows easy simulation of a variety of normal, peak, and exceptional load conditions. REGRESSION TESTING. Similar in scope to a functional test, a regression test allows a consistent, repeatable validation of each new release of a product or Web site. Such testing ensures reported product defects have been corrected for each new release and that no new quality problems were introduced in the maintenance process. Though regression testing can be performed manually an automated test suite is often used to reduce the time and resources needed to perform the required testing. SMOKE TESTING. A quick-and-dirty test that the major functions of a piece of software work without bothering with finer details. Originated in the hardware testing practice of turning on a new piece of hardware for the first time and considering it a success if it does not catch on fire.

STRESS TESTING. Testing conducted to evaluate a system or component at or beyond the limits of its specified requirements to determine the load under which it fails and how. A graceful degradation under load leading to non-catastrophic failure is the desired result. Often Stress Testing is performed using the same process as Performance Testing but employing a very high level of simulated load. SYSTEM TESTING. Testing conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements. System testing falls within the scope of black box testing, and as such, should require no knowledge of the inner design of the code or logic. UNIT TESTING. Functional and reliability testing in an Engineering environment. Producing tests for the behavior of components of a product to ensure their correct behavior prior to system integration. WHITE BOX TESTING. Testing based on an analysis of internal workings and structure of a piece of software. Includes techniques such as Branch Testing and Path Testing. Also known as Structural Testing and Glass Box Testing.

Debugging Thorough debugging is a necessary step towards software quality. Bugs plague software project big and small, and today's complicated software makes debugging more difficult than ever. Advancements in unit testing are made, better tools are created and development teams work proactively to scour their code. However, time pressures, poor planning and lack of knowledge take their toll on this type of testing. 5.4 Implementation After developing the system successfully and passing testing phase its now a safe and sound project to implement. The system is not so easy to implement in an organisation. The process implementing Central Server, employe and customer is describing bellow.

Central Server Central Server will not necessary for ever user of the system. This is only needed if the organisation has minimum more then one branch. Central Server is not difficult to install. Just install it in normal way as other software used to install. But for not falling in any problem install it C:\XAMPP\htdocs\ am_system directory. All reports should convert in the new Database format from existing Access format. Configuration for the PC where it will be install in given in Requirement Specification stage of the Documentation.

Admin Admin site of the system need a user id and password. Employee Employee site of the system need a user id and password. Customer Customer site of the system need a user id and password. 5.5 Conclusion This project was a challenge for me from the very beginning of the project. I was imagined that could I able to finish the project or not. But my friends give me the inspiration to finish the project, but the most important person, without whose help I was really unable to finish the project without help of my Programming teacher Engr. Md. Ahsan Arif. I want to give him special thanks. I want to give thanks to my friends also. All Staff of the shops where Ive investigated and take information ware very much helpful. Without their help it was impossible for me to understand the problems & techniques of Point of Sales system. The tried their best to understood me their system. If I would not be able to understand the system then I was fully unable to develop their system. So I want to give them Thanks also. Now I have finished my project successfully and I am feeling glad by thinking that I have really done a god job. Appendix A

Project Code for Simulation Login Form Fig: Home Page

<html> <head> <title>Online Shopping System</title>

<link href="favicon.ico" rel="shortcut icon" type="image/x-icon" /> <link rel="stylesheet" type="text/css" href="style.css" /> </head> <body> <div id="main_container"> <div id="header"> <div class="logo"><img src="images/logo.gif" border="0" alt="" title="" /></div> </div> <div class="menu"> <ul> <li class="selected"><a href="index.php">Home</a></li> <li><a href="index.php">About</a></li> <li><a href="index.php"><a href="contruct.php">Contact</a></li> <li><a href="index.php"><a href="signup.php">Signup</a></li> <li><a href="index.php"><a href="index.php">SignIn</a></li> <li><a href="index.php"><a href="regi/index.php">Product</a></li> </ul> </div> <div class="center_content"> <div class="center_left"> <div class="title_welcome"><span class="red">FREE</span> Customer Registration <a href="signup.php" class="read_more">Click Here</a> </div>

<div class="welcome_box"> <span class="orange"><h1>Wellcome to Online shopping system.</h1> </div> </div> <div class="center_right"> <div class="testimonials"> <div class="title"></div> </div> <div class="text_box"> <form action="login_check.php" method="post"> <div class="title">Customer login</div> <div class="login_form_row"><label class="login_label">Username:</label><input type="text" name="uname" class="login_input" /></div> <div class="login_form_row"><label class="login_label">Password:</label><input type="password" name="upass" class="login_input" /></div> <input type="image" src="images/login.gif" class="login" /> </form> </div> <div class="testimonials"> <div class="title"></div> </div> </div> <div class="clear"></div> </div>

<div id="footer"> <div class="left_footer">Copyright &copy; 2010. All Rights Reserved</div> <div class="right_footer">Developed By - Md Kamal Hoosain, Md Saiful Islam & Sumon</a></div> </div> </div> <!-- end of main_container --> </body> </html>

Customer Registation form Product Order Form Prayment System Order List User Management System User Account Management

You might also like