Академический Документы
Профессиональный Документы
Культура Документы
1.INTRODUCTION
The main objective of the document is to illustrate the functions and working procedures of the
project Book Bank Management System. The document gives the detailed description of both functional
and non-functional requirements. The document aims at elaborating the process involved in maintaining
an Book Bank Management System and focuses on the operations involved in the process. It will also
explain about the various system interfaces and constraints employed in the project. The document is
developed after a complete analysis and consultation from the team members and specifications for the
given project.
1.1 OBJECTIVE
The purpose of the project is to illustrate the steps involved in online book management. The availability
of books can be estimated without much of manual involvement.
1.2 SCOPE
The software provides the customer, visitor and administrator an easy and efficient way to purchase and
manage books online.
The software provides the following facilities to the customer:
Enables easy online shopping
Provides e-mail facility for future correspondence
Facilitates user friendly interactions
Provides a detailed description about the products in all genres.
1.4 REFERENCES
None
SYSTEM REQUIREMENTS
This product requires the minimum of the following:
Windows XP/Vista/7 OS
512MB DDR3 RAM
Argo UML
Eclipse IDE
Java Scripting
MS Access
1.7 CONSTRAINTS
The main constraint lies on the need for any customer or publisher to register them with the Database
in the site to gain access to the Book Bank Management System.
2. SRS DOCUMENTATION (IEEE Standard)
2.1 Functional Requirements
A functional requirement defines a function of a software system on its component. A function is
described as a set of inout,the behaviour and output.
i. A main menu including a brief help section.
ii. Login
iii. Viewing book details.
iv. Displaying details.
v. Maintain and update book details.
vi. Logout.
1. Requirements:
The system should have the requirements of the project. The developer should prepare the
requirements of the project.
2. Design:
Project manager should design the layout of the project before going to implement time
allocation, cost allocation and staff allocation will coming under design process.
3. Implementation:
After encompassing all the diagrams, we have to generate code for each and every diagrams
i.e. from usecase to deployment.
4. Testing:
After implementing the diagram with domain language, we have to test the particular
projects.
5. Maintenance:
2. Design Constraints:
The software shall be a standard system running in a windows environment. The system
shall be developed using rational enterprise suite and oracle 10i database.
3. Reliability:
Specify the factors required to establish the required reliability of the software system at
time of delivery.
4. Availability:
The system should have an availability of 99.99%.
5. Portability:
A) The system should be extremely via the usb drive.
B) The system shall be easy to migrate or backed up via another use drive.
6. Maintainability:
A) The system shall utilize interchangeable plugins.
B) The system shall be easily updateable for fixes and patches.
2. SEARCH BOOK:
a. Scope: This usecase is used to search a particular book from the database based on the
members requirements.
b. Basic Flow: This usecase is used to search a particular book (or) books from the book
database.
c. Alternate Flow: The book requested by the user may not be available (or) the book name
entered may be incorrect.
d. Special Requirements: Book database- book details for searching.
e. Pre-conditions: None
f. Post-condition: If the usecase was successful, the book access link will be displayed for
the user.
3. RETURN/RENEW:
a. Scope: This usecase is used to return/renew a particular book from the database based on
the members requirements.
b. Basic Flow: This usecase starts with actor wishing to login to the System.
The system requests the actor to enter their name and password.
The actor must enter their name and password.
The system will validate their entire name and password and logs the actor into the system.
c. Alternate Flow: The book may not be renewed currently. The actor can try again later,
thus ending the usecase (or) the actor can go back to the beginning of the basic flow.
d. Special Requirements : The user should currently possess the book.
e. Pre-conditions: The book must be associated with the user.
f. Post-conditions: If the usecase was successful, the actor can return/renew a copy of the
book.
Communication diagram illustrates object interactions in a graph or network format, in which objects can
be placed anywhere on the document.
Component diagram are used to model the physical aspect of the system. It is used to visualize
organization and relationship among the components of the system.
Deployment diagram shows represents the physical architecture of the system. It represents the
physical deployment of software artifacts on the nodes.
2. REGISTRATION
4. Open
6.RETURN/RENEW
welcome.java
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Color;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.JTextField;
import java.awt.Font;
public class welcome extends JFrame {
private JPanel contentPane;
private JTextField txtEbookwareWelcomesYou;
private JTextField textField_1;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
welcome frame = new welcome();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace(); } } }); }
public welcome() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBackground(new Color(255, 250, 205));
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
JButton btnNewButton = new JButton("REGISTER");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Register r=new Register();
r.setVisible(true); } });
JButton btnNewButton_1 = new JButton("LOGIN");
btnNewButton_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Login l=new Login();
.addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
LOGIN.JAVA
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import java.awt.Color;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.LayoutStyle.ComponentPlacement;
public class Login extends JFrame {
private JPanel contentPane;
private JTextField textField;
private JTextField textField_1;
}
});
JButton btnLogin = new JButton("LOGIN");
btnLogin.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
btnLogin_actionPerformed(e);
}
private void btnLogin_actionPerformed(ActionEvent e)
{
try
{
Class.forName("sun.odbc.JdbcOdbcDriver");
Connection
c=DriverManager.getConnection("jdbc:odbc:ebook1");
PreparedStatement st=c.prepareStatement("SELECT password
FROM Register WHERE password=?");
st.setString(1,textField_1.getText());
ResultSet rs=st.executeQuery();
if(rs.next()){
}
});
btnLogin.setFont(new Font("Tahoma", Font.PLAIN, 14));
}
});
GroupLayout gl_contentPane = new GroupLayout(contentPane);
gl_contentPane.setHorizontalGroup(
gl_contentPane.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_contentPane.createSequentialGroup()
.addGap(57)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addComponent(lblNewLabel)
.addComponent(lblPassword))
.addGap(43)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addComponent(btnLogin)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING, false)
.addComponent(textField_1)
.addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING)
.addComponent(textField,
GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
GroupLayout.PREFERRED_SIZE)
.addComponent(lblNewLabel))
.addGap(48)
.addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING)
.addComponent(lblPassword)
.addComponent(textField_1,
GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
GroupLayout.PREFERRED_SIZE))
.addPreferredGap(ComponentPlacement.RELATED, 42,
Short.MAX_VALUE)
.addComponent(btnLogin)
.addGap(36))
);
contentPane.setLayout(gl_contentPane);
}
}
});
}
});
GroupLayout gl_contentPane = new GroupLayout(contentPane);
gl_contentPane.setHorizontalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addGap(47)
.addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING)
.addComponent(label)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addComponent(lblNewLabel_1)
.addComponent(lblNewLabel)
.addComponent(lblNewLabel_2)))
.addPreferredGap(ComponentPlacement.RELATED, 60,
Short.MAX_VALUE)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING, false)
.addComponent(textField_2)
.addComponent(textField_1)
.addComponent(textField, GroupLayout.DEFAULT_SIZE,
106, Short.MAX_VALUE))
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addComponent(btnHome)
.addGap(30)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addComponent(lblNewLabel)
.addComponent(textField,
GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
GroupLayout.PREFERRED_SIZE))
.addPreferredGap(ComponentPlacement.UNRELATED)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addComponent(label)
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(lblNewLabel_1))
.addComponent(textField_1,
GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
GroupLayout.PREFERRED_SIZE))
.addGap(18)
.addComponent(lblNewLabel_2))
.addGroup(gl_contentPane.createSequentialGroup()
.addGap(122)
.addComponent(textField_2,
GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
GroupLayout.PREFERRED_SIZE)))
.addGap(44)
.addComponent(btnRegister)
SEARCH.java
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import java.awt.Color;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.LayoutStyle.ComponentPlacement;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
public class Search extends JFrame {
private JPanel contentPane;
private JTextField textField_1;
private JTextField textField;
private JTextField textField_2;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Search Jframe = new Search();
Jframe.setVisible(true); }
catch (Exception e) { e.printStackTrace(); }} }); }
public Search() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel(); contentPane.setBackground(new Color(230, 230,
250)); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
Register
Before Updating:
Search Database: