online book sales with mobile smsmcs142144/documents/bookiepedia_tgmc.pdf · document. 4.extensible...
TRANSCRIPT
Online Book Sales with Mobile SMS
Sona College of TechnologySalem – 636 005.
Team name: Bookiepedia
TEAM MEMBERS: PROJECT GUIDE:Suresh. P Mr. Vijay Vajrevel,Brabu. V Research Associate,Sasidharan. R Department of ITRamki. R
1
TABLE OF CONTENTS
S.No. Contents Pg.No
1. Introduction 4
1.1. Purpose 4
1.2. Users of the system 4
1.3. Key features 4
1.4. Scope 5
1.5. Special features of Bookiepedia 5
1.6. Definitions, Abbreviations and Acronyms 6
1.6.1. Definitions 6
1.6.2. Abbreviations and Acronyms 6
1.7. References 7
1.8. Technologies to be used 7
1.8.1. IBM middleware used 7
1.8.2. Development tool used 7
1.8.3. Overview 7
1.9. Existing system 7
1.10. Drawbacks of the existing system 8
1.11. Proposed system 8
1.12. Assumptions 9
2. Overall description 9
2.1. Product perspective 9
2.2. Software requirements 10
2.3. Hardware requirements 10
2.4. Constraints 10
2.5. ER diagram 11
2
2.6. Use case model survey 12
2.6.1. Non-member 12
2.6.2. Corporate users 12
2.6.3. Retail users 13
2.6.4. Administrator 13
2.6.5. Stock manager 13
2.7. Architecture diagram 14
2.8. Class diagram 15
3. Specific requirements 16
3.1. Use case reports 16
3.2. Activity diagrams 19
3.2.1. Register 19
3.2.2. Login 21
3.2.3. Book Search 21
3.2.4. Purchase 22
3.2.5. Cancel order 24
3.2.6. Subscribe 25
3.3. Sequence diagrams 26
3.3.1. Register 26
3.3.2. Login 27
3.3.3. Book search 28
3.3.4. Purchase 29
3.3.5. Cancel order 30
3.3.6. Order status 30
3.3.7. Subscribe 31
4. Scope of extension 32
3
1. Introduction:
1.1. Purpose:
Knowledge plays a very important role in day-to-day life. Book is the major source of knowledge. People gather information from the books. Books are useful for us in several ways. They sometimes are like our friends and give company to us when we are alone. Experienced people, who are wise, write great books. They are our inspiration to do great things. The purpose of this project is to support the online purchasing of such great books. This website is named as Bookiepedia. The website holds the reviews of the customers about the books and their rating on them.
1.2. Users of the system:
The major five users of this system are:
1. Corporate users,2. Retail users,3. Non-members,4. Administrator and5. Stock manager.
1.3. Key features:
Some of the main features of Bookiepedia are listed below
1. Anyone can search for the books and the search result lists the details of the
books, which match the search key.
2. In the registration form, the name, mobile number, e-mail id, account type,
address, username and password fields are made mandatory.
3. The details of the members are saved in a compact format as in XML.
4. Administrator can access all the details of members and the database.
5. Non-members can become members by registering in the website and by
activating the account.
6. The members are allowed to perform actions like login, logout, place order,
cancel order, give feedback, rate books, suggest books, subscribe for a
category, deactivate the account, etc.
4
7. The details of the members are protected in a highly confidential manner.
8. The customers are provided with a live chat help during the day time.
9. Reselling of books is accepted, if their condition is good.
10. Five types of payment methods are supported by this website.
1.4. Scope:
The scope of this project are briefly described below.
1. The main scope of this project is to reduce the man power involved in sales
and to reduce the effort of storing books in each center.
2. The administrator can have a direct communication with their customers.
3. Customers can search their books and order books at any time.
4. The entire stock is maintained at a single location.
5. Upon the arrival of new books, the customers are intimated via SMS and e-
mail, if they are subscribed.
6. Shipping is done free of cost, if the purchase is done for minimum expected
cost.
1.5. Special features of Bookiepedia:
Some of the special features included in Bookiepedia site are as follows:
1. Entire navigation is AJAX driven, thereby making the application
processing fast and easy for the user.
2. Passwords are stored in an one way encrypted format which enhances
security.
3. The application is going to be made SQL Injection proof.
4. Reports of customers' purchases are generated in a graphical format.
5. Customer specific data like mobile number, email ID, etc. are stored in
database in XML format.
5
6. There will be synchronous communication between the customer and the
system.
7. Gifting of books to the friends is supported.
1.6. Definitions, Abbreviations and Acronyms:
1.6.1. Definitions:
1. Users: Corporate users, Retail users, Non-members, Administrator and Stock
manager.
2. Administrator: Authorized user who can modify the database.
3. Unified Modeling Language : It is a standard language for writing software
blueprints. The UML may be used to visualize, specify, construct and
document.
4. Extensible Markup Language: It is a text based format that let developers
describe deliver and exchange structured data between a range of applications
to client for display and manipulation.
5. Rational Application Developer: It is a development tool that helps to design
web pages and also helps to design the diagrams like ER, Database schema
diagrams and to generate DDL.
1.6.2. Abbreviations and Acronyms:1. HTML : Hypertext Markup Language2. XML : Extendible Markup Language 3. J2EE : Java 2 Enterprise Edition4. WAS : Web sphere Application Server5. HTTP : Hypertext Transfer Protocol6. EJB : Enterprise Java Bean7. HTTPS : Secure Hypertext Transfer Protocol8. RAD : Rational Application Developer9. RSA : Rational Software Architect
6
1.7. References:1. http://www.ibm.com/developerworks/forums/thread.jspa?messageID=14877865 2. http://www.ibm.com/developerworks/forums/thread.jspa?threadID=263760 3. www.flipkart.com
1.8. Technologies to be used:• Java• Servlet • JSP • AJAX• XML • J2EE
1.8.1. IBM middleware used :• DB2 Universal Database• Rational Application Developer 8.0 (RAD)
1.8.2. Development tool used:
• Rational Software Architect v7.0 (RSA)
1.8.3. Overview:
The remaining SRS will include three sections:
1. Overall Description will describe major components of the system, interconnection and external interfaces.
2. Specific Requirements will describe the functions of actors, their role in the system and constraints.
3. Supporting Information will contain proposed user interface and the scope of extension of the project.
1.9. Existing System:The existing system implements the following features.
1. Registration for the non-members so that they become members,
2. Searching for the books which facilitates the purchase,
3. Purchasing of the selected books.
7
1.10. Drawbacks of the existing system:
Some of the drawbacks of the existing system are listed below.
1. People can not resell the books, once they have bought.
2. No proper customer support is provided.
3. There are no facilities to suggest books to friends.
4. No SMS subscription facility available.
1.11. Proposed System:
In order to get rid of the drawbacks of the existing system, we propose the following features in Bookiepedia:
1. Bookiepedia site will help the registered users to purchase book(s)
online.
2. Arrival of new books is intimation for the customers through e-mail and
SMS.
3. Reselling of books is accepted if their condition is good.
4. Four step easy process of purchasing books, with user-friendly interface.
5. Online customer support throughout the day time via live chat.
6. Mobile number and Email verification during registration.
7. Approximate shipping date automatically updated based on the
availability of book(s) in the stock.
8. Online searching of books with enhanced categorization.
9. Support for the sending of invites to the non-members, which calls them
for registration.
10. Members can suggest books for their friends.
8
1.12. Assumptions:
In our project, we have made the following assumptions, which facilitate the project development.
1. Each member has only one mail ID and mobile number.
2. The date of birth given by a non-member during registration is correct.
3. Shipping address provided by member while purchasing books is valid.
2. Overall description:
2.1. Product perspective:
Figure 2.1: Description diagram
1. The client requests the web pages (XHTML/HTML/JSP) through the browser, which directly communicates with the HTTP/HTTPS protocols.
2. The TCP/IP protocol helps in transferring the data between the client users and the server.
3. Taking necessary data from the database (DB2), the application server (WAS) provides the data required by the authorized client systems.
9
2.2. Software requirements:
The software components required are shown in the table below.
System Software needed
Client Web browser
Web server Websphere Application Server (WAS)
Database server DB2
Developer end DB2, Rational Application Developer (RAD)Table 2.1: Software requirements
2.3. Hardware requirements:
The minimum hardware requirements are as follows.Processor : INTEL® Core2Duo or AMD Athlon processorRAM : 512 MBProcessor speed : 1.7 GHz
2.4. Constraints:1. Interface is in English and Tamil only.
2. Only registered users will be authorized to purchase books.
3. This system is working on a single server.
4. Only those who have completed 18 years can buy books using any
payment method (others can buy using cash on delivery).
10
2.6. Use case model survey:
Figure 2.3: Use case diagram
2.6.1. Non-member:
Any person who has not yet registered with the online book store system is treated as a non-member. Non-members can register with the system in order to become a member or can search for the books by category and author. They can also give feedback about Bookiepedia site.
2.6.2. Corporate users:
The members registered themselves in the site, who buy books in large quantities are denoted as corporate users. This category of users include library and book sellers (shopkeepers). The discount percentage will be more for the corporate users comparing to that of the retail users. The corporate users can search books, purchase books, rate and comment on the books.
12
2.6.3. Retail users:
Members, who buy books in retail, are classified as retail users. These members can search and purchase books at a discount price applicable to them based on the points assigned to them depending upon the number of books that they have purchased so far. They can also suggest books to the other members or non-members.
2.6.4. Administrator:
The administrator is the person who manages the overall system. It is (s)he who has the right to send SMS/Email to the customers. The registration link and the verification code are generated by the admin. The admin can view all the details of the customer in the database including their purchase history. He/she can also assign points to the users based on their transaction with the Bookiepedia site.
2.6.5. Stock manager:
The stock manager maintains the overall stock of the books available in the Bookiepedia site. He can add books to the stock and can also remove them.
13
2.7. Architecture diagram:
APPLICATION LAYER BUSINESS LAYER DATABASE LAYER
Figure 2.4: Architecture diagram
14
3. Specific Requirements:
This section contains the following sub-sections:
1. Use case report2. Activity diagrams 3. Sequence diagrams
3.1. Use case report :
This table gives details about the activities that could be done by the actors and their descriptions.
S.No Activity Actor(s) Description
1. Register Non-member Non-members must fill up the registration form in order to become members of the site. Once this is done, the administrator will confirm their registration after verifying their mobile number and E-mail ID.
2. Login Corporate user, retail user, administrator
Upon giving the username and password in the corresponding fields, the users are allowed to login if their password matches with their corresponding username.
3. Logout Corporate user, retail user, administrator
Once the user clicks the logout button, the user will logged out and then their login status will be updated.
4. Search Corporate user, retail user, administrator, Non-member
After the selection of the category, author and typing of the keywords, a list of matching books will be displayed.
5. Subscribe Corporate user, retail user
Once the customer is subscribed for particular categories of books, he/she will be intimated via SMS upon arrival of new books of that category.
6. Purchase Corporate user, retail user
The customers can purchase books. The corporate users will be
16
making a bulk purchase, whereas the retailers used to make retail purchase.
7. Cancel order Corporate user, retail user
Placed order will be canceled ,if the status is not sent, after getting the reason for cancellation.
8. Make payment Corporate user, retail user
By choosing any one of the five payment types, the member can make payment for purchasing the books.
9. Feedback Corporate user, retail user, non-member
Members and non-members can share their views about the website and they can also give any suggestion for the improvement of the website.
10. Order status Corporate user, retail user
Members can view the status of the given order by entering the given order ID.
11. Live help (chat)
Corporate user, retail user
Any issue related to the website in purchasing, subscribing, etc. can be clarified via live chat .
12. Rate book Corporate user, retail user
Members can add some value to the book by rating it .
13. Send invites Corporate user, retail user
Members can send invites to their friends, who are non-members, for joining the site.
14. Suggest books Corporate user, retail user
Members can suggest books to other members for purchasing them.
15. Unsubscribe Corporate user, retail user
If the customer does not want to be subscribed for a particular category any more, he/she can unsubscribe from that particular category.
16. Deactivate Corporate user, retail user
After getting the reason for deactivation, the account will be deactivated and then the membership will be canceled, if the user prefers to deactivate his/her account.
17. Modify stock Stock manager, administrator
Books count will be managed by the stock manager.
17
18. View stock Stock manager, administrator
Books available in the stock can be viewed by the stock manager and administrator.
19. Add stock Stock manager, administrator
New books will be will be added to the stock by the stock manager.
20. E-mail Administrator Administrator will be sending verification E-mail to a non-member who has just registered and also to the subscribed members.
21. SMS Administrator Administrator can send verification code through SMS to a non-member during the registration process and also to the members who have subscribed for at least one category.
18
3.2. Activity Diagrams:
3.2.1. Register:
On clicking the register button, the registration form will be displayed . User has to enter the username. On checking the availability of the username, further details will be obtained from the user. After clicking the submit button, if the all the mandatory fields are filled, then the admin will send a link to the user's mail ID and an verification code to his/her mobile. For completing the registration process, the verification code must be entered in the link which had been sent to the user's email.
19
3.2.2. Login:
Figure 3.2: Activity diagram for user login
Members have to fill the login page, which has the user name and the password. After pressing the login button, the details will be retrieved from the database and will be compared with the currently entered details, if the details match, the member's home page is shown.
3.2.3. Book search:
Members have to choose the category, author and also they have to mention some keywords of the book that they are searching for. After receiving the details, the list of books matching the given criteria is shown to the customer.
21
Figure 3.3: Activity diagram for book search
3.2.4. Purchase:
When the member clicks the buy button on a particular book, that book will be added to the cart. In order to purchase the book, the member must be logged in. By confirming the books from the cart list and choosing the mode of payment the member can purchase the books. The confirmation message will be sent to the member's E-mail ID and mobile number.
22
3.2.5. Cancel order:
Figure 3.5: Activity diagram for cancel order
On clicking the cancel order button, the administrator will check the login status, obtain the order ID and intimate the member to give reason for the cancellation of the order. Upon verification of the order status, the order will be canceled.
24
3.2.6. Subscribe:
Figure 3.6: Activity diagram for subscription
Members have to choose the category from the category list. If the user is not logged in, the user will be requested to login. Once the subscription is complete, upon arrival of new books of the categories for which the member has subscribed, he/she will be intimated via SMS.
25
3.3. Sequence diagrams:
3.3.1. Register:
Figure 3.7: Sequence diagram for non-member registration
26
When the non-member clicks the sign-up button, he/she is requested to fill his/her details in a form. Once the form is filled by the customer, it is checked for the validity of the username, password, date of birth, mobile number and e-mail ID. The non-member is requested to agree with the terms and conditions and to confirm registration. Once the non-member clicks the confirm registration button, the details are stored in the database and a activation link is sent to the non-member's mail ID and verification code is sent to the mobile via SMS. The customer is requested to click the activation link, enter the verification code and click the activate button. The activation link and the corresponding verification code are verified for match. Upon their match, a confirmation for registration and membership ID are sent to the non-member's mail ID and mobile via SMS.
3.3.2. Login:
Figure 3.8: Sequence diagram for member login
27
Once the customer enters the Bookiepedia website and clicks the login button, the customer is requested for the login username and password. When the customer provides the correct details, the customer will be logged in to the website. The customer will receive a 'login success' message in the interface (browser) for he/she has successfully logged in.
3.3.3. Book search:
Figure 3.9: Sequence diagram for book search
When the customer enters the Bookiepedia site, several categories are displayed and the customer are requested to select a category from the list of categories. When the customer selects a category from the list they are requested to enter the search key, once the customer enters the search key the matching details of the search key from the database is fetched and it is displayed in the interface for the customers.
28
3.3.4. Purchase:
Figure 3.10: Sequence diagram for place order
If the customer selects book(s) from the website, when he/she is logged in, the books are added to the cart. The cart is displayed to the customer and the customer is asked if he/she would like to shop more. If the customer selects the place order option in the cart, the customer is requested for the shipping details and the payment method. Once the customer enters the requested details, they are proceeded for the confirm order step and by clicking the confirm order, the order ID along and the order summary are sent to the customer through SMS and Email respectively.
29
3.3.5. Cancel order:
Figure 3.11: Sequence diagram for order cancellation
When the customer clicks the cancel order button, the customer is requested to enter order ID. Once the customer has entered the requested details, then they are requested for the cancellation reason and confirmation. After verifying the existence of order ID and the order status, the order is canceled.
3.3.6. Subscribe:
Upon clicking the subscribe button, the customer is requested to select the category to subscribe, from the list of categories, when they are logged in. When the customer selects the category, the details of categories along with the member ID are stored in the database and a subscription successful message is displayed.
30
Figure 3.12: Sequence diagram for SMS subscription
3.3.7. Order status:
As soon as the customer clicks the view status button, the customer is requested to enter the order ID or date of order, when they are logged in. When the customer enters the requested details the status of order is displayed after it is been fetched from the database.
31
Figure 3.13: Sequence diagram for order status of the customer
4. Scope of extension:
1. Bookiepedia system is extended to reach various types of people including individuals, librarians, book sellers, etc through the social networking sites like Facebook.
2. Transaction of the membership details can be carried out in a secure gateway using HTTPS to ensure security and privacy of the sensitive information like address of the member while gifting the books to the friends.
32