You are on page 1of 22

OBJECT ORIENTED PROGEAMMING TERM PAPER

TOPIC: - BOOK STORE MANAGEMENT SYSTEM

SUBMITTED TO:-MR. ROHIT BENIWAL

SUBMITTED BY:-MANIK GARG

SECTION:-E6912

ROLL NO:-RE6912A23

REGISTRATION NUMBER:-10900871

1
ACKNOWLEDGEMENT

THIS TERM PAPER IS MY INDIVIDUAL WORK AND I WOULD TO LIKE


GIVE THE CREDIT TO ALL THOSE PERSON WHO HELPED ME, GUIDED
ME AND CONTINUOSLY MOTIVATED ME TO COMPLETE IT.I WOULD
ALSO LIKE TO THANK MY SITER AND IBM’er NIHARIKA GARG
BECAUSE SHE GAVE HER LAPTOP TO ME AND IN THE LAST MY
DEDICATED FACULTY AND MENTOR Mr.ROHIT BENIWAL,WHO
GUIDED ME THROUGHOUT THE TERM AND GAVE ME TIPS IN
IMPROVISING MY EFFORTS.HE HAD BEEN A LIGHTNING PILLER
THROUGHOUT THE COURSE .THIS WOULD NOT BE POSSIBLE
WITHOUT HIS GUIDANCE.

2
TABLE OF CONTENTS:-
Sr.No TOPIC NAME Page No.
1. INTRODUCTION 4

2. PROBLEM DEFINITION 5

3. REQUIREMENT 6
SPECIFICATION

4. LIFE CYCLE MODEL 7

5. SYSTEM DESIGN 8-11

6. SOURCE CODE 12-18

7. SNAPSHOTS 18-19

8. OPERATED PROCEDURE 19-20

9. CONCLUSION 20-21

10. BIBLIOGRAPHY 22

3
ABSTRACT
_ The project report consists of 2 phases. In the first phase, the problem assigned to us has been
mentioned. Second phase provides the solution for the same problem along with an insight into
the development process involved.
_ Introduction part gives the information regarding Bookshop management System. It also
gives brief introduction about the project under the topic PROBLEM DEFINITION .It
gives a short introduction about Bookshop and its operations.
_ The next part is the REQUIRMENT ANALYSIS which is mainly concerned with study
of various requirements such as user, System, Hardware/Software & Performance. It also
includes feasibility study of system.

1. INTRODUCTION
In the existing system, most of the records are maintained on paper. It becomes very
inconvenient to modify the data. In the existing system, here is a possibility that the same data in
different registers may have different values which means the entries of the same data do not
match. This inconsistent state does not supply the concrete information which poses a problem in
the case information related to particular search record.

Our project is very useful. User is no longer required to check his register in search of records, as
now it can be searched over the software by choosing some options. The user need not to type in
most of the information. He/she is just required to enter the desired options. On the whole it
liberates the user from keeping lengthy manual records. In a nutshell, it abates the work load of
an organization..

A book shop uses a personal computer to maintain the inventory of books that are being sold at
the shop. The list includes details such as author, title, price, publisher, stock position,etc.
Whenever a customer wants a book, the shopkeeper inputs the title and author of the book and
the system replies whether it is in the list or not. If it is not, an appropriate message s displayed.
If book is in the list, then the system displays the book details and asks for number of copies. If
the requested copies are available the, total cost of the books is displayed; otherwise the message
“Required copies not in stock” is displayed.

4
2. Problem Definition:-
Almost every activity in the world today is controlled by computer driven software programs.
His trend was first accommodated by engineering applications in the past. However, as the life
Style became more and more complex; every area of human interactions was invaded by various
Software systems, such as real time, business, simulation, embedded, web based, personal and
More recently, artificial intelligence software etc. According to the above facts, managing and
maintaining a book shop could also be controlled by efficient software. This project focuses
attention on designing efficient and reliable software which controls the transactions of a
bookshop. In real world, it tends to associate with automated systems as they provide many
benefits than doing the same thing in manually. As above mentioned, here we have introduced a
system which can be used to maintain a bookshop. When we are concerning the manual process
of a bookshop, the major problem is the waste of time. A customer has to waste his/her valuable
time when he needs to buy a book as all the events such as searching, purchasing are done by
members of the staff .In briefly, the manual process is very slow. But automation will reduce the
time taken in the whole process. In a bookshop we should deal with a large store. Then person
(storekeeper) has to maintain it with documents which are recorded by him. Therefore, there may
be defective reports. Also company has to appointed more persons to complete the maintenance
of the stationery. Then the company has to have an additional cost. As we familiar with this type
of system at instance we will be able to have the results that we want. Communication with
suppliers, customers and other related organizations will be more successful as the system is so
fast. When the bookshop issues an item to a customer, all the stages of the transaction procedure
will be facilitated by the system & it will be more accurate.

5
3. Requirement Specification:
From discussion with various bookshop owners various requirements are arrived at:
Book shop management system (BSM)

_ BSM should help the customers query whether a book in a stock the user can query the
availability of a book either by using the book title or by using the name of author.

_ If the book is not currently sold by the bookshop, then the customer is asked to enter the
full detail of the book for procurement of the book by the bookshop.

_ The customer can also provide his e-mail address and mobile, so that he can be intimated
automatically by the software as and when the book copy received.

_ If a book in stock, the exact number of copies available and the rack number in which the
book is located should be displayed.

_ If a book not in the stock, the query for the book is used to increment a request field for
the book.
_ The manager can periodically view the request field of the book arrive at a rough
estimate regarding the current demand for different books.

_ BSM should maintain the price of various books.

_ As soon as customer selects his book for purchase, the sale clerk would enter the ISBN
number of the books. BAS should update the stock and generate the sales receipt for the
book.

_ BSM should allow employees to update inventory whenever new supply arrives. Also
upon request by the owner of book shop.

_ BSM should generate sales statistics (via, book name, publisher, ISBN number, number
of copies sold and the sales revenue) for any period.

_ The sales statistics will help the owner to know the exact business done over any period
of time and also determine the inventory level required for various books.

_ The inventory level required for a book is equal to the number of copies of the book sold
over a period of one week multiplied by the average number of weeks it takes to procure
the book from its publisher.

_ Every day the bookshop owner would give a command for BAS to print the book which
have fallen below the threshold and the number of copies to be procured along with the
full address of the publisher.

6
4. LIFE CYCLE MODEL:-A software life cycle model is a descriptive and
diagrammatic representation of the software life cycle. A life cycle model represents all
the activities to make a software product transit through its life cycle phases. It also
captures the order in which these activities are to be undertaken. In other words, a life
cycle model maps the different activities performed on a software product from it’s
inception to retirement. Here we have used SPIRAL MODEL for explaining.

SPIRAL MODEL:
The spiral model is one that couples the iterative nature of prototyping with controlled and
systematic aspect of linear sequential or waterfall model. It provides the potential for rapid
development incremental versions of the systems. Here it is used for successful development of
sales and product management system.
Spiral model consists of 3 phases:
 Planning
 Risk analysis
 Engineering

Fig(1.0)

7
5. SYSTEM DESIGN:-
Procedural design:

Fig 2.0(making book shop automated for better usability)

Data Flow Diagram (DFD):

8
9
ETITIY RELATIONSHIP DIAGRAM:-

Fig 4.0(ER DIAGRAM OF BOOK STORE MANAGEMENT)

10
Fig 5.0 (class representation)

HERE FINISHES THE FIRST PART OF TERM PAPER

11
6. SOURCE CODE:-

#include<iostream.h>
#include<conio.h>

class book
{
int flag,selecteded;
char bk_nm[20];
char ath_nm[20];
char **option;
int getchoice(char * greet, char * choices[]);
public:
cout("\n Choice : %s \n", greet);
option=choices;
}
while(*option)
{
cout("%s \n",*option);
option++;
}
cout<<"Enter your choice :";
cin>>selected;
option = choices;
while(*option)
{
if(selected == *option[0])
{
if(selected == A)
{
flag=1;
b.record("plz enter choice",type);
break;
}
else if(selected == G)
{
flag=1;
b.getdata("plz enter ur choice",type);
break;
}
}
}option++;
if(!flag)
{
cout("\n incorrect choice,select again \n");

12
}
return selected;
}

virtual void getdata(char * greet, char *choices[])


{
cout("\n Choice : %s \n",greet);
option = choices;
}
while(*option)
{
cout("%s \n",*option);
option++;
}
cout<<"Enter your choice :";
cin>>selected;
option = choices;
while(*option)
{
if(selected == *option[0])
{
if(selected == N)
{
flag=1;
p=&n;
p->getdata();
break;
}
else if(selected == O)
{
flag=1;
p=&o;
p->getdata();
break;
}
else if(selected == E)
{
flag=1;
p=&e;
p->getdata();
break;
}
}
option++;
}
if(!flag)

13
{
cout("\n incorrect choice,select again \n");
}
}
virtual void record(char*greet, char *choices[])
{
cout("\n Choice : %s \n",greet);
option=choices;
while(*option)
{
cout("%s \n",*option);
option++;
}
cout<<"Enter your choice :";
cin>>selected;
option = choices;
while(*option)
{
if(selected == *option[0])
{
if(selected == N)
{
flag=1;
p=&n;
p->record();
break;
}
else if(selected == O)
{
flag=1;
p=&o;
p->record();
break;
}
else if(selected == E)
{
flag=1;
p=&e;
p->record();
break;
}
}
option++;
}
if(!flag)
{

14
cout("\n incorrect choice,select again \n");
}
}
};

class newbook:public book


{
char bk_nmr[20],ath_nmr[20],edr;
float price;
int cp;
public :
void getdata();
void record();
void check();
void display();
};
void newbook :: getdata()
{
cout<<"\n Enter book name :\n author name :\n edition :";
cin>>bk_nm>>ath_nm>>ed;
n.check();
}
void newbook :: record()
{
cout<<"\n Enter book name :\n author name :\n edition :";
cin>>bk_nmr>>ath_nmr>>edr;
cout<<"\n Enter number of copies";
cin>>cp;
cout<<"\n Enter price of one copy";
cin>>price;
}
void newbook :: check()
{
if(n.bk_nm==n.bk_nmr && n.ath_nm==n.ath_nmr && n.ed==n.edr)
n.display();
cout<<"”\n Sorry book is not present”";
}
void newbook :: display()
{
cout<<"\n Book Name :%s"<<bk_nm;
cout<<"\n Author Name :%s"<<ath_nm;
cout<<"\n Book edition :%s"<<ed;
cout<<"\n Book price :%s"<<price;
cp--;

15
}
class oldbook : public book
{
char bk_nmr[20],ath_nmr[20],edr;
float price;
int cp;
public:
void getdata();
void record();
void check();
void display();
};
void oldbook :: getdata()
{
cout<<"\n Enter book name :\n author name :\n edition :";
cin>>bk_nm>>ath_nm>>ed;
o.check();
}
void oldbook :: record()
{
cout<<"\n Enter book name :\n author name :\n edition :";
cin>>bk_nmr>>ath_nmr>>edr;
cout<<"\n Enter number of copies";
cin>>cp;
cout<<"\n Enter price of one copy";
cin>>price;
}
void oldbook :: check()
{
if(o.bk_nm==o.bk_nmr && o.ath_nm==o.ath_nmr && o.ed==o.edr)
o.display();
else
cout<<"”\n Sorry Book is not present”";
}
void oldbook :: display()
{
cout<<"\n Book Name :%s"<<bk_nm;
cout<<"\n Author Name :%s"<<ath_nm;
cout<<"\n Book edition :%s"<<ed;
cout<<"\n Book price :%s"<<price;
cp--;
}
class Ebook:public book
{
char bk_nmr[20],ath_nmr[20],edr;
float price;

16
int cp;
public :
void getdata();
void record();
void check();
void display();
};
void Ebook :: getdata()
{
cout<<"\n Enter book name :\n author name :\n edition :";
cin>>bk_nm>>ath_nm>>ed;
e.check();
}
void Ebook :: record()
{
cout<<"\n Enter book name :\n author name :\n edition :";
cin>>bk_nmr>>ath_nmr>>edr;
cout<<"\n Enter number of copies";
cin>>cp;
cout<<"\n Enter price of one copy";
cin>>price;
}
void Ebook :: check()
{
if(e.bk_nm==e.bk_nmr && e.ath_nm==e.ath_nmr && e.ed==e.edr)
e.display();
else
cout<<"”\n Sorry book is not present”";
}
void Ebook :: display()
{
cout<<"\n Book Name :%s"<<bk_nm;
cout<<"\n Author Name :%s"<<ath_nm;
cout<<"\n Book edition :%s"<<ed;
cout<<"\n Book price :%s"<<price;
cp--;
}

void main()
{
clrscr();
book b,*p;
newbook n;
oldbook o;
ebook e;
int choice=0;

17
char menu[] = {
"A- Add to record",
"G- Get a book",
"Q-Quit"
};
do
{
choice=b.getchoice("plz select an action",menu);
printf("you have chosen %c \n",choice);
}while(choice != 'q'||'Q');

char type = {
"N - new book",
"O - old book",
"E - ebook",
"Q - quit"
getch();
}

7. SNAPSHOTS:-

18
HERE FINISHES THE SECOND PART

8. OPERATING PROCEDURES:-
MINIMUM SYSTEM REQUIRMENTS

Operating system: MS Windows XP or Windows Vista

Language: C ++Language

Processor: Pentium IV Processor

RAM: 512 MB

Hard disk: 5 GB

User Interfaces
The system users are:-
_ the book shop management as the system administrators.
_ Book shop cashiers as the normal users.

System administrators
The administrator logs on to the system by inserting administrator user name and password.

19
Administrator can do any transaction as well as editing all details inside the database such as
adding, editing and deleting a new user or adding, editing and deleting items.

System users
System users are the ones who at the cashier and do transactions with customers. The users have
To enter the user name and password and click on ‘Login’ button. If user makes any mistake the
System will ask for the correct username and password until he enters the correct one.
When the user wants to do any transaction user has to click on the menu icon on the main menu.
Then the transaction window will open. User has to enter the Book No and press enter. Then user
has to select the transaction type and the quantity. Then click on the update button. Then the
system will automatically update the database according to the transaction type. Hardware
Interfaces

The Book Shop System is having the following hardware:

_ Book shop main computer _ other pc’s

Software Interfaces
_ System will interact with the system database to record all transaction data.

Performance Requirements:
_ the response time for menu changes will be not more than 3 seconds.

_ The time for search for a book will not more than 3 seconds.

_ The time to print the stock valuation will not be more than 3 seconds.

_ The time taken to update the database or get information from the database will not be
more than 2 seconds.

_ The time taken to prompt message boxes will not more than 2 seconds.

9. CONCLUSION:-
This Bookshop Automation System is an attempt to overcome the present inefficient and time
consuming process of locating, reserving and purchasing quality reading materials available in
the store. Currently, clients have to go through a time consuming process to perform
a aforementioned tasks which cause waste of labor and firms resources. Through our automated
book store solution, we provide an easy way of searching, reserving and purchasing of books.
User data are validated and checked for authenticity with the data stored in the system database.
All the newly coined processes will address time consuming, ineffective and inefficient areas of
the existing system which has being wasting a lot of firms resources such as, labor, electricity,

20
equipment, products and services, while discouraging customers to make purchases and repelling
clients from the book store.
Proposed system will support both clients and the store in many areas. It’s worth analyzing and
identifying the benefits as it would directly influence the productivity of the store.
Customer satisfaction plays the most vital role in any form of product and service rendering store
as the existence of any firm solely depends on its customer-base. Therefore, every system should
facilitate the customer satisfaction up to a certain extent which is feasible from the company
perspective.
The aforementioned facts ensure customer satisfaction to a greater extent benefiting the store in:
_ Retaining current customers
_ Tempting current customers to attract their friends to the store
_ Attracting new customers
_ Enhancing the customer faith on the firm due to secure transaction techniques while
temping customers to make more online purchases
_ Identifying profitable customers
_ Identifying different categories of customers
_ Making necessary alterations and plans to address broader range of customers
_ Identifying key areas of the inventory which need to be maintained at a healthy stock limit
_ Analyzing trends to make more effective management decisions and
_ development of new strategies to increase profit
These particulars will make sure the broadening the customer base of the store which will have
good impact on the sales and revenue of the store. Employee satisfaction also plays an influential
role in healthy revenue levels of a firm. Due to the proposed system, employees will have to
handle minimum amount of workload than that of the existing system which will help the
employees to provide optimal service to the firm while.

10.BIBLIOGRAPHY:-
 Australian Computer Society, 2003, ASC Code of Ethics. Retrieved March 15,
2007, from http://www.acs.org.au.htm
 WWW.SCRIBD.COM

21
22

You might also like