Java Projects Synopsis

Online Market For Buying & Selling Different Products

Online Market For Buying & Selling Different Products

Software Requirements Specification
1.0 Introduction: The document contains the Software Requirements Specification of ONLINE MARKET FOR BUYING AND SELLING DIFFERENT PRODUCTS, which can be used by all the internet users. The Online Market for Buying and selling different Products System is an Internet based application that can be accesses throughout the Net by anyone who has a internet connection. This application will automate the process of easily selling and buying needed products from home or office or from anywhere. This application will function as an E-Market where registered users can advertise, sell and buy new or second hand products. The Goal of the Software Requirement Specification is to describe overall functionality of the Online Market for selling and buying different products. The requirements that are stated in this document will determine the final product and its functionality. This document will also be used to evaluate the success of the project.
1.1 Purpose:
The purpose of the Software Requirements Specification (SRS) document is to maintain all the functions and the specifications of Online Market for Selling and Buying different Products System. Also, it will contain the detailed description of all the requirements specified for the system.
1.2 Scope:
The Scope of the system:
A. Admin (Director) #. Secured Login to the system using user id and password. #. Create employees with user id and password. #. Manage administration of Employees. #. Manage administration of buyers and sellers. #. Keep track of buy and sell transactions. #. Keep track of advertisements and products. #. Allocate funds for natural calamities to the concerned department.
B. Employee #. Secured Login to the system using user id and password. #. Manage day to day functions on the system. #. Manage requests and information required for providing 24X7 services to users. #. Keep track of buy and sell transactions. #. Keep track of advertisements and products.
C. Users (Buyer / Seller) #. Register to the website for buy or sell online. #. Secured Login to the system using user id and emailed password. #. Change password and personal information. #. Advertise for promoting products selling online. #. Enter product details for selling online. #. Search for products for buying online. #. Receive emails for from system for interest shown on products listed for selling. #. Recovery of password or registration information using secret question. #. Facilitate communication between buyer and seller through email.
1.3 Definitions, Acronyms, and Abbreviations:
• HTML (Hyper Text Markup Language): It is used to create static web pages.
• JSP (Java Server Pages): It is used to create dynamic web content.
• J2EE (Java 2 Enterprise Edition): It is a programming platform, belonging to the Java platform, which is used for developing and running distributed java applications.
• WASCE (WebSphere Application Server Community Edition): It is an application server that runs and supports the J2EE and the web service applications.
• WSAD (WebSphere Studio Application Developer): It is a designer toolkit which is designed to develop more complex projects by providing a complete dynamic web service.
• DB2 (IBM Database 2): It is a database management system that provides a flexible and efficient database platform to raise a strong “on demand” business applications.
• HTTP (Hyper Text Transfer Protocol): It is a transaction oriented client/ server protocol between a web browser and a web server.
• XML (Extensible Markup Language): It is a markup language that was designed to transport and store data.
• XForms: XForms is an XML format for the specification of a data processing model for XML data and user interface(s) for the XML data, such as web forms. XForms was designed to be the next generation of HTML / XHTML forms, but is generic enough that it can also be used in a standalone manner or with presentation languages other than XHTML to describe a user interface and a set of common data manipulation tasks.
• Ajax (Asynchronous Java Script and XML): It is a technique used in java script to create dynamic web pages.
• Web 2.0: It is associated with web applications which facilitate interactive information sharing, interoperability, user-centered design and collaboration on the World.
1.4 References:
The SRS document uses the following documents as references:
1. http://www.java2s.com/
2. http://www.javaworld.com/javaworld/jw-01-1998/jw-01-bookreview.html
3. www.ibm.com/software/data/db2/
4. http://www.google.com
5. http://www.oracle.com
6. http://www.en.wikipedia.org
7. http://www.oracle.com/technetwork/java/javase/downloads/index.html
1.5 Technologies to be used:
• J2EE: (Servlet, JSP, JAXP, Java Beans) Application architecture.
• WASCE: (WebSphere Application Server Community Edition) WebServer.
• JAVA: Application architecture.
• DB2: IBM Database.
• Ajax: Asynchronous Java Script, XML and XForms.
• Web 2.0: RSS Feed 2.0.
• RAD 7.0: Development tool.
• Localization: English
1.6 Overview: The SRS will include two sections, namely:
#. Overall Description: This section will describe major components of the system, interconnections, and external interfaces.
#. Specific Requirements: This section will describe the functions of actors, their roles in the system and the constraints faced by the system.
2.0 Overall Description:
This section describes the functions of the project and their aims. It also includes the constraints and the requirements of the project.
2.1 Product Perspective:
Online Market for Selling and buying different products System provides an easy graphical interface E-Market for all internet users. Any internet user after enrollment to the website can put products for selling or search products for buying. The system will facilitate communication between the buyer and the seller once buyer shows interest on a specific product.
All the users of this system can login to the application only after being enrolled to the website. After registration the user can perform buy and sell operations and receive any information support from the application provided by the employees. Since this is a web application all users can access the application from any device/workstation which supports a web browser & active internet connection
The director and employees of the company will provide online support to the users of the E-Market. The employees will take care of 24X7 support for any request or information to the users.
• The web pages (XHTML/JSP) are present to provide the user interface on client side. Communication between client and server is provided through HTTP/HTTPS protocols.
• The Client Software is to provide the user interface on system user client side and for this TCP/IP protocols are used.
• On the server side web server is used to deploy JSP pages using XForms to facilitate faster transactions on the client side and database server is for storing the information.
2.2 Software Interface:
(Server-Side)
Operating System: – Any Operating System.
· Web Server:
WASCE (WebSphere Application Server Community Edition) WebServer.
· Data Base Server:
IBM DB2
· Back End:
Web 2.0, RSS Feeds 2.0
(Client-Side on Internet)
Operating System: – Any Operating System
· Front End Client:
HTML, DHTML, JavaScript, Servlets, XForms & JSP.
Development End: RAD (J2EE, Java, Servlets, Xforms, JSP)
2.3 Hardware Interface:
Minimum Hardware requirements

Client Side:
• Web Browser: IE 6.0 & above, Firefox, Chrome, Safari
• Processor: Pentium III 500Mhz or Above.
• RAM: 128 MB or Higher
• Disk Space: N/A (As required by the end-user)
Server Side:
For IBM DB2: All Intel & AMD processors capable of running 32-bit or 64-bit OS
512 MB RAM and an additional ram per 5 client connections
3GB of Hard Disk space
For Web Sphere: All Intel & AMD processors capable of running 32-bit or 64-bit OS
375 MHz processor
2 GB RAM
6 GB of Hard Disk space
2.4 Product Functions:
Functional Requirements
Online Market for Selling and Buying Different Products System should allow:
 Registration for Buyers and sellers.

 Login (Admin, Employee, Seller, Buyer)

 Enter Profile details

 Enter product features for online promotion.

 Enter product details, description, quantity and cost for selling product.

 Search products for buying.

 Send email with details of seller of the product interesting to the buyer.

 Create Employees.

 Manage users on the online market
 Manage transactions on the online market

 Generate timely reports of site visits

 Generate timely reports of products registered

 Generate timely reports of products sold
Non Functional Requirements:
 Secure access of confidential data (user details and data). SSL can be used

 24X7 availability

 Better component design to get better performance at peak time

 Flexible service based architecture will be highly desirable for future extension
2.5 User Characteristics:
The various users of the system include:-
Admin:
Admin of the system will be Director of the company. The admin will be able to manage all the main functions of the online market. Admin can view all registered users (sellers or buyers). Admin will create employees online to manage information enquiry 24X7. Admin can view all the transactions in online market between seller and buyer. Admin will manage users, products added by users and work of employees.
Employee:
Employees will be an integral part of the online market system to manage all the queries by all the registered users. They will provide 24X7 support for any information or enquiry by sellers or buyers. The employees will be able to create categories for adding products online as per the requirement of users.
User (Online Seller):
Any registered user can be a seller on the online market. The seller will add products under appropriate categories. Each user will enter basic information such as name, email id, contact number to register. After registration the user will add basic details of each added product such as product name, description, cost and features. The seller can also advertise his product for promotion on the market.
User (Online Buyer):
Any registered user can be a buyer on the online market. The buyer will be able to search for any required product under appropriate categories. Each user will enter basic information such as name, email id, contact number to register. Only after registration the user will be able to get information about the seller of the product through email. The online market system will provide details of the seller to the buyer and then they can complete the transactions between them.
2.6 Constraints:
a. Criticality of the Application: The server applications shall be available 365 days.
b. Safety and Security Considerations: The password and a valid username are the security issues. Data protection shall be satisfied by the backup process at the server side.
c. Password should be longer than 6 symbols.
d. The user’s login name shall be unique.
2.7 Architectural Design:
Standard N- tier client –server architecture: N- Tier Applications can easily implement the concepts of Distributed Application Design and Architecture. The N – tier Applications provide strategic benefits to Enterprise Solutions. While 2- Tier, client server can help us create quick and easy solutions and may be used for Rapid Prototyping, they can easily become a maintenance and security night mare.
The N- Tier applications provide specific advantages that are vital to the business continuity of the enterprise. Typical features of a real life N- Tier may include the following:
 Security  Availability and Scalability  Manageability  Data Abstraction
The above mentioned points are some of the key design goals of a successful N-Tier application that intends to provide a good Business Solution.
DEFINITIONS:
Simply stated, an N-Tier application helps us distribute the overall functionality into various tiers or layers:
 Presentation Layer  Business Rules Layer  Data Access Layer  Database/ Data Store
Each layer can be developed independently of the other provided that it adheres to the standards and communicates with the other layers as per the specifications.
This is the one of the biggest advantages of the N-tier application. Each layer can potentially treat the other layer as a “Block- Box”.
In other words, each layer does not care how other layer processes the data as long as it sends the right data in a correct format.
1. The Presentation Layer: Also called as the client layer comprises of components that are dedicated to presenting the data to the user. For example: Windows/ Web Forms and buttons, edit boxes, Text boxes, labels, grid, etc. 2. The Business Rules Layer: This layer encapsulates the Business rules or the business logic of the encapsulations. To have a separate layer for business logic is a great advantage. This is because any changes in Business rules can be easily handled in this layer. As long as the interface between the layers remains the same, any changes to the functionality/ processing logic in this layer can be made without impacting the others. A lot of client- server apps failed to implement successfully as changing the business logic was a painful process. 3. The Data Access Layer: This layer comprises of components that help in accessing the Database. If used in the right way, this layer provides a level of abstraction for the database structures. Simply put changes made to the database, tables, etc. do not affect the rest of the application because of the data Access layer. The different application layers send the data requests to this layer and receive the response from this layer. 4. The Data Base Layer: This layer comprises of the Database Components such as DB files, tables, Views, etc. the actual database could be created using SQL Server, Oracle, Flat files, etc. In an N-tier application, the entire application can be implemented in such a way that it is independent of the actual database. For instance, you could change the Database Location with minimal changes to Data Access Layer. The reset of the Application should remain unaffected.

2.8 Use Case Diagram:

2.9 Database Design:
The General theme behind a database is to handle information as an integrated whole. A database is a collection of interrelated data stored with minimum redundancy to serve many users quickly and effectively. After designing input and output, the analyst must concentrate on database design or how data should be organized around user requirements. The general objective is to make information access, easy quick, inexpensive and flexible for other users. During database design the following objectives are concerned:-
Controlled Redundancy
Data independence
Accurate and Integrating
More information at low cost
Recovery from failure
Privacy and security
Performance

2.15 Assumptions and Dependencies:
• The users have sufficient knowledge of computers.
• The computer should have Internet connection and Internet server capabilities.
• The users know the English language, as the user interface will be provided in English.
• User of the site must be internet user connected to the internet at the time.
• Site updating access will only be provided to registered users.
3.0 Specific Requirements:

This section describes in detail all the functional requirements.
3.1 Functionality Logon Capabilities: The system shall provide the users with logon capabilities. Mobile Devices: The System is also supported on Smart Mobile devices. Alerts: The system can alert the administrator in case of any problems. 3.2 Usability • The system shall allow the users to access the system from the Internet using HTML or it’s derivative technologies. The system uses a web browser as an interface. • Since all users are familiar with the general usage of browsers, no specific training is required. • The system is user friendly and self-explanatory. 3.3 Reliability The system has to be very reliable due to the importance of data and the damages incorrect or incomplete data can do. Availability: The system is available 100% for the user and is used 24 hrs a day and 365 days a year. The system shall be operational 24 hours a day and 7 days a week.
Mean Time between Failures (MTBF): The system will be developed in such a way that it may not fail even once in a year.
Mean Time to Repair (MTTR): Even if the system fails, the system will be recovered back up within an hour or less.
Accuracy: The accuracy of the system is limited by the accuracy of the speed at which the employees of the library and users of the library use the system.
Maximum Bugs or Defect Rate: Not specified.
Access Reliability: The system shall provide 100% access reliability.
3.4 Performance Response Time: The System should be able to be accessed within a minute using a 56K modem. The access time for a mobile device should be within a minute. The system shall be allowed to take more time when doing large processing jobs. The general response time will be faster due to use of data storage in XML on the client system, which considerably reduces query time.

Administrator Response: The system shall take as less time as possible to provide service to the administrator or Officer.
Throughput: The number of transactions is directly dependent on the number of users; the users may be Admin, employee, seller or buyer.
Capacity: The system can handle number of user dependent on the type of server.
3.5 Supportability The system designers shall take in to considerations the following supportability and technical limitations.
Internet Protocols: The system shall be comply with the TCP/IP protocol standards and shall be designed accordingly.
Information Security Requirement: The system shall support the information security requirements and use the same standard as the information security requirements.
Maintenance: The maintenance of the system shall be done as per the maintenance contract.
Standards: The coding standards and naming conventions will be as per the American standards.
3.6 Use Case Report
3.6.1 Use case of User
Description As only registered users can use the system at user level, every user has to create personal profile – username and password – in order to use the system (Buyers and sellers). Actors Users (buyers and sellers) Precondition User must register first with basic information to buy or sell Basic flow of events • Click on the sign up tab on the home page • On coming to the profile creation page, enter all the details including username & click on submit • If the username is not valid, the control is transferred to the Error page • If the mandatory field validations are not met, the control is transferred to the Error Page • If email id is invalid, the control is transferred to the Error Page • An automatically generated email is sent to the email id given by the user & the user is intimated of the successful registration, the control is redirected to the login page • If the username & password are not verified, the control is transferred to the error notification page •The user reaches his home page with his profile displayed on it • The user can now add products under various categories. • The user can advertise products for promotion. • The user can search for any product. • The System sends a email of details of the user who posted product to the user who wants to buy. • The user can contact the user who posted the product and conclude the deal.
Alternative flow of events
• An Error message stating that the user name is not valid is displayed • An Error message stating that the mandatory fields are not filled is displayed • An Error message stating that invalid email id is displayed • An Error message stating that incorrect username or password is displayed. Post Condition • The user is logged into the system and may use appropriate functionality.
3.6.2 Use case of Admin
Description Only authorized Administrator can use the system at Admin Level, Admin can create employee profile – username and password – to provide 24X7 information and enquiry support to users. Admin will manage users and transactions on the online market. Admin will view reports of user visits to market, on daily weekly or monthly basis. Actors Admin and employee. Precondition Admin requests to login to a system to get full access of the system. Employee request to login to system. Basic flow of events • Click on the sign up tab on the login page • On coming to the profile creation page, enter all the details including username & click on submit • If the username is not valid, the control is transferred to the Error page • If the mandatory field validations are not met, the control is transferred to the Error Page • If email id is invalid, the control is transferred to the Error Page • An automatically generated default password is sent to the email id given by the user & the user is intimated to re-login using the password sent, the control is redirected to the login page • Enter the new username & password received on the email & click on Login • If the username & password are verified, control is transferred to the Admin Home page • If the username & password are not verified, the control is transferred to the error notification page • Admin can view profile of user level users and can revoke / grant permission to a user to access the system. • Admin will manage the users and employees. • Admin will view and manage the transactions. • Admin will generate and check reports of daily, monthly and yearly traffic.
Alternative flow of events
• An Error message stating that the user name is not valid is displayed • An Error message stating that the mandatory fields are not filled is displayed • An Error message stating that invalid email id is displayed • An Error message stating that incorrect username or password is displayed. Post Condition • The Admin is logged into the system and may use appropriate functionality. • The employee is logged into the system and may use appropriate functionality.
3.7 Design Constraints Software Language Used The languages that shall be used for coding the Online Market System are J2EE, Java Servlets, Java Server Pages (JSP), HTML, XML and JavaScript. For working on the coding phase of the Online Market for selling and buying different products, required tools such as RAD, DB2 or any other tool will be installed. Development Tools We will make use of IBM RAD or available Java Development Tool kit. We will also use online references available for developing programs in J2EE, JSP, HTML and the scripting languages like JavaScript. Class Libraries We will make use of the existing Java libraries available for JSP and Servlets. We also need to develop some new libraries for the web-based application being developed.
3.8 Online User Documentation and Help Systems Required
Online help is provided for each of the feature available with the Online Market for Selling and Buying Different Products. All the applications provide an on-line help system to assist the user. The nature of these systems is unique to application development as they combine aspects of programming (hyperlinks, etc) with aspects of technical writing (organization, presentation). Online help is provided for each and every feature provided by the system. The User Manual describes the use of the system to agents. It describes the use of the system on mobile systems. The user manual should be available as a hard copy and also as online help.
A Read Me file can be typically included as a standard component. The Read Me includes a “What’s New in This Release” section, “How to work on the Application”, and a discussion of compatibility issues with earlier releases. Most users also appreciate documentation defining any known bugs and workarounds in the Read Me file. The installation of Online System is a complex process, and will be configured by experts on the server side. No installation Guide will be provided to the user.
3.9 Purchased Components The System Administrator will not need to purchase any licenses, as all the environment will be provided by the server. The developer needs to purchase IBM RAD and DB2 licenses.
3.10 Interfaces User Interfaces: Will make use of the existing Web Browsers such as Microsoft Internet Explorer or Netscape. The user-interface of the system shall be designed. Hardware Interfaces: The existing Local Area Network (LAN) will be used for collecting data from the users and also for updating the Library Catalogue. Software Interfaces: A firewall will be used with the server to prevent unauthorized access to the system. Communications Interfaces: The Online Market for Selling and Buying different products System will be connected to the World Wide Web.

Leave a Reply