Sunteți pe pagina 1din 74

Chapter 1

ABOUT PROJECT
1.1 Introduction:Inventory management information system is high performance software, which speeds up the business operations of the organization. Every organization, which deals with the raw materials, put its great effort in the efficient utilization of its raw material according to its need and requirement. The organization has to perform number of tasks and operations in order to run its business in a manual system. For example:

Estimation of new raw material required. Preparation of purchase order. Preparation of Inward gate pass/purchase invoice. Preparation of Outward gate pass /sale invoice. Preparation of Debit note.

1.2 Advantages if Inventory management systems are as follows:


1. Inventory information can be handled easily. 2. The manager can easily view when the updates are done at the point of sale devices. 3. The manager can make decisions very fast. 4. The manager can plan the goods production. 5. Automatic value generation.

Fig 1.1

1.3 LITAERATURE SURVAY


By following these operation and tedious tasks, the management faces following problems Production delays due to raw-material non-availability Stuck-up of investments in raw-material inventories Ineffective control over raw material issuance and wastages.

inventory System is cost-effective solution for managing raw material & inventory. Managing the inventory reduces the inventory carrying cost by Inventory procurement and assisting the management in just in time decision-making. Clicksoft War house inventory System is ideal business solution for manufacturers and Producers who want to reduce their operational costs and become more competitive. Inventory System is concerned with raw material procurement (MRP) and management of suppliers and vendors.

1.4 Customizability and Flexibility


User defined attributes for inventory items Definition of inventory items, their vendors, vendor prices Definition of customers and their relevant information Definition of departments and their employees
2

1.5 Security Features


Configuration of user groups of users and their privileges for the System Logging of all actions of the users for future reference

1.6 Inventory Movement

Inventory receipts and returns from the vendors Inventory issues and returns to departments

1.6 System Security

System tracks all the actions Performed by the users Action log is maintained along with user reference and the time of action.

1.7 Inventory Re-Order Levels

User can set three types of reorder Levels: Minimum Optimal Maximum.

1.8 Data recovery


Data is quite important for organizations so efficient data recovery and back up procedures are embedded into the SYSTEM to enhance its security features.

The System performs following important tasks:


3

Setting up the Environment In the initiation process of a SYSTEM, data is feed into the master files of Departments Users Vendors Customers Finished Goods Raw Inventory Items Prices Minimum Order Level

Auto Generated Demand Dept Wise Software generates demand for a particular raw material item according to the average quantity of raw material needed, if the quantity of a raw material item is less than to the MOL (minimum order level). The demand can be generated on the daily basis. This auto-generated demand has full detailed information about item as well as vendors. The System generated demand can be customized manually

Auto Generated Purchase Order Dept Wise Purchase order for raw material is suggested by the System, automatically, according to future manufacturing orders (procurement automation). Minimum required inventory levels are maintained by the System. In this way, organizations get benefits like:

Production delays are avoided through timely availability Over stocking is avoided by the System

Goods Receive Note This is the most important phase when the Warehouse receives the inventory items. The items are entered into stock and maintain the stock quantity by decrementing or incrementing stock. Here the SYSTEM performs two important steps
4

Software generates Debit Note to the concerning vendor for a rejected items Software generates Out Ward gate Pass for a rejected items

So in this way organization can get following benefits

System allows the user to reject the below standard items System allows the user to return defective inventory items

1.9 The Benefits: Better Inventory Management, Marketing, and Customer Service
1.Savings in inventory management. Microsoft Dynamics RMS allows Wood to keep an everpresent eye on inventory levels and place necessary orders quickly and efficiently. He estimates he saves about 24 hours a weekor roughly $10,000 US a yearbecause of the system's efficiency and reliability.

"Our inventory problems were instantly solved," he says. "We order what we need quickly, and the items arrive priced and ready to go on the shelves." He adds that he loves the "colorcoding system that identifies exceptions. That way, we're able to instantly identify when we receive an incorrect quantity."

The system's capacity to automatically identify the lowest-cost suppliers has also slashed Wood's purchasing costs by about 10 percent. "Now," he adds, "we have vendors fighting against each other for our business." 2.An advantage in customer service. Any business the size of APet needs to latch onto every advantage it can get in order to hold its own against better-financed competitors. In APet's case, that means customer serviceyet another area where Microsoft Dynamics RMS comes to the fore. When a customer buys an item, the system flashes a note to the cashier allowing him or her to pass along specific, hands-on advice that has been entered into the network.

Case in point: The system warns cashiers that certain aquarium heaters shatter if plugged in
5

outside of water. "If a heater is on the sales ticket, the cashier gets a message on the screen to tell the customer not to plug the heater in unless it's immersed in water," says Wood. "A lot of these get returned because people don't know this. Our customers do." 3.More focused marketing. Like many other retailers, APet offers customers discounts in return for personal information about themselves and their buying habits. Using the detailed customer information capability in Microsoft Dynamics RMS, Wood can tailor highly focused marketing and advertising campaigns that aim at specific consumers.

"It's really reduced our costs and increased our returns from things such as direct mail campaigns. Before, we used to get a one percent return. Now we get anywhere from 12 to 15 percent. That's just huge." That sort of return is particularly important to APet. Since both stores are stand-alone operations located away from malls, it's essential to target those customers who will take the time to make a special trip. 4.Greater internal security. Thanks to the system's capacity to show inventory irregularities, Wood has reduced employee theft. For instance, the system quickly identified an aberration when an employee was misidentifying returns and pocketing the cash. Notes Wood with a laugh, "The police were dumbfounded by my extensive forms of proof." 5.Standout customer service. Wood says he values the reliability and integrity that Microsoft places on service after the sale. "You just can't do any better than Microsoft for support although I must say that I've had to use them infrequently. The system takes care of itself." 6.The intangibles. Says Wood: "I know that my employees count on Microsoft Retail Management System to work. We hire a lot of teenagers and they're all very comfortable with it." Plus, he now gladly takes his work homeand away from the office.

"I have high speed internet connections at home and the stores," he says. "It allows me to spend time at home with work, write sales reports, and look at progress at the stores.

Chapter 2
INTRODUCTION TO JAVA
2.1 The Java Story
Back in 1990, a gentleman by the name of James Gosling was given the task of creating programs to control consumer electronics. Gosling and his team of people at Sun Microsystems started designing their software using C++, the language that most programmers were praising as the next big thing because of its object-oriented nature. Gosling, however, quickly found that C++ was not suitable for the projects he and his team had in mind. They ran into trouble with complicated aspects of C++ such as multiple inheritances of classes and with program bugs such as memory leaks. Gosling soon decided that he was going to have to come up with his own, simplified computer language that would avoid all the problems he had with C++.

2.2 Introducing Java


By now, everyone may be curious why Java is considered such a powerful tool for Internet development projects. We already know that Java is a simplified version of C++. Anyone who has struggled with learning C++ knows that the key word in the previous sentence is "simplified." C++ added so much to the C language that even professional programmers often have difficulty making the transition.

Fig 2.1
7

According to Sun Microsystems, Java is "simple, object-oriented, statically typed, compiled, architecture neutral, multi-threaded, garbage collected, robust, secure, and extensible." That's a mouthful, but this description of Java probably doesn't help to understand the language much. The following list of Java's attributes, however, should clear out some of the cobwebs:

Simple. Java's developers deliberately left out many of the unnecessary features of other high-level programming languages. For example, Java does not support pointer math, implicit type casting, structures or unions, operator overloading, templates, header files, or multiple inheritance.

Object-oriented. Just like C++, Java uses classes to organize code into logical modules. At runtime, a program creates objects from the classes. Java classes can inherit from other classes, but multiple inheritances, wherein a class inherits methods and fields from more than one class, are not allowed.

Statically typed. All objects used in a program must be declared before they are used. This enables the Java compiler to locate and report type conflicts.

Compiled. Before user can run a program written in the Java language, the Java compiler must compile the program. The compilation results in a "byte-code" file that, while similar to a machine-code file, can be executed under any operating system that has a Java interpreter. This interpreter reads in the byte-code file and translates the byte-code commands into machine-language commands that can be directly executed by the machine that's running the Java program. One could say, then, that Java is both a compiled and interpreted language.

Multi-threaded. Java programs can contain multiple threads of execution, which enables programs to handle several tasks concurrently. For example, a multi-threaded program can render an image on the screen in one thread while continuing to accept keyboard input from the user in the main thread. All applications have at least one thread, which represents the program's main path of execution.

Garbage collected. Java programs do their own garbage collection, which means that programs are not required to delete objects that they allocate in memory. This relieves programmers of virtually all memory-management problems.

Robust. Because the Java interpreter checks all system access performed within a program, Java programs cannot crash the system. Instead, when a serious error is discovered, Java programs create an exception. This exception can be captured and managed by the program without any risk of bringing down the system.

Secure. The Java system not only verifies all memory access but also ensures that no viruses are hitching a ride with a running applet. Because pointers are not supported by the Java language, programs cannot gain access to areas of the system for which they have no authorization.

Extensible. Java programs support native methods, which are functions written in another language, usually C++. Support for native methods enables programmers to write functions that may execute faster than the equivalent functions written in Java. Native methods are dynamically linked to the Java program; that is, they are associated with the program at runtime. As the Java language is further refined for speed, native methods will probably be unnecessary.

Well-understood. The Java language is based upon technology that's been developed over many years. For this reason, Java can be quickly and easily understood by anyone with experience with modern programming languages such as C++.

As one can tell from the preceding list of features, a great deal of thought went into creating a language that would be fairly easy to use but still provide the most powerful features of a modern language like C++. Thanks to features such as automatic garbage collection, programmers can spend more time developing their programs rather than wasting valuable man-hours hunting for hard-to-find memory-allocation bugs. However, features such as Java's object-oriented nature, as well as its ability to handle multiple threads of execution, ensure that the language is both up-todate and powerful.

2.3 The Java Developer's Kit

Java is actually more than a computer language; it's also a programming environment that includes a complete set of programming tools. These tools include a compiler, an interpreter, a debugger, a disassembler, a profiler, and more. To create a Java program, first use a text editor to create the source-code file. Users write the source code, of course, in the Java language. After completing the source code, which is always saved with a .java file extension, compile the program into its byte-code format, the file for which has the .class file extension. It is the .class file that the interpreter loads and executes. Because the byte-code files are fully portable between operating systems, they can be executed on any system that has a Java interpreter.

After compiling and running a Java program, one may discover that the source code needs modification. The Java debugger can help to find errors, whereas the Java profiler provides handy information about program. If users run into a compiled Java program that like to see in source-code form, the Java disassembler will do the translation. Java also includes a program that creates the files need to take advantage of native methods (functions written in another language, such as C++). There's even a program that can create HTML documents from Java source-code files. Although all the development tools are DOS applications-that is, they don't run under Windows-they provide a complete environment for creating and managing Java projects. The development environment for Java is surprisingly rich, especially considering that the Java programming language is fairly new. Most Java developers and programmers find that the JDK contains everything they need to get started creating powerful Java programs. This is because the developer's kit includes the Java programming language core functionality, the Java Application Programming Interface (API) complete with multiple package sets, and essential tools for creating Java programs. The Java Developer's Kit is currently available for most operating systems. One can obtain the Sun Solaris, Windows 95/NT, and Macintosh versions directly from JavaSoft. Because the Java Soft FTP site is extremely busy. The heart of the Java programming language is contained in a set of packages called java.lang, which is a part of the Java Application Programming Interface. Although the java.lang package provides the core functionality of the Java programming language, it is not the only package included in the Java Developer's Kit. The JDK includes the following packages: java.applet, java.awt, java.awt.image, java.awt.peer, java.io, java.lang, java.net, and java.util. These packages provide everything to start creating powerful Java applications quickly. The JDK also includes an additional package called sun.tools.debug, which is designed to make the application-debugging process easier.

. Package Package Name Description

10

A set of classes that relate to the java.applet Applet applet environment and are generally used when viewing applets A set of classes that provide java.awt Abstract Windowing graphical interface tools such as Toolkit buttons, controls, scrollbars,

and windows A set of classes related to using images A set of classes for AWT peer classes and methods A set of classes that enable java.sql Database connectivity developers applications databases A set of classes that provide java.io I/O standard input/output and file I/O utilities The core set of classes for the java.lang Language Java language that provide basic functions, such as string and array handling A set of classes that provide java.net Network tools for accessing networks by protocols, such as FTP, Telnet, and HTTP to write that Java access

java.awt.image

AWT Image

java.awt.peer

AWT Peer

11

A set of classes that provide java.util Utility core utility functions such as encoding/decoding, hash tables, and stacks A set of classes that provide debugging functions and tools

sun.tools.debug

Debug

2.4 Java Programs


Java is first and foremost an object-oriented programming language. Many programmers are surprised when they discover how easy it is to follow sound object-oriented design practices with Java. Java can be used to create two types of programs: applets and stand-alone applications. An Applet is simply a part of a Web page, just as an image or a line of text can be. Just as a browser takes care of displaying an image referenced in an HTML document, a Javaenabled browser locates and runs an Applet . When Java-capable Web browser loads the HTML document, the Java applet is also loaded and executed. Using applets, one can do everything from adding animated graphics to our Web pages to creating complete games and utilities that can be executed over the Internet. Some applets that have already been created with Java include Bar Chart, which embeds a configurable bar chart in an HTML document; Crossword Puzzle, which enables users to solve a crossword puzzle on the Web; and LED Sign, which presents a scrolling, computerized message to viewers of the Web page within which the applet is embedded.

2.5 The Primary Characteristics of Java

The ease with which one can transition to Java from C/C++ and Java's object-oriented capabilities are only the icing on the cake. Java has many powerful characteristics, most of which are Architecture-neutral Distributed Dynamic 12

Interpreted and compiled Multithreaded Network-ready and compatible Object-oriented Portable Robust Secure

2.6 Java Data Base Connectivity (JDBC)


Sun developed a single API for data base access-JDBC. They kept three main goals in mind: 1. 2. 3. JDBC should be a SQL-Level API. JDBC should capitalize on the experience of existing database APIs. JDBC should be simple.

JDBC is a SQL level API that allows you to embed SQL statements as arguments to the methods in JDBC interface. To enable you to do this in a database independent fashion, JDBC requires database venders to furnish a runtime implementation of its interface. These implementations route your SQL calls to the database in the proprietary fashion it recognizes. Java provides database programmers with the following features they have traditionally lacked: 1. Easy object to relational mapping. 2.Database independence. 3.Distributed computing. Javas database connectivity allows you to worry about the translation of relational data into objects instead of worrying about how you are getting that data. The JVM provides an application with a guaranteed runtime environment; no administration is needed for the configuration of that environment for individual applications. JDBC architecture as follows: 1.JDBC Driver Manager. 2.JDBC Driver. 3.JDBC-ODBC Bridge. 4.Application.
13

2.6.1 JDBC ARCHITECTURE


APPLICATION ODBC NET DRIVER JDBC NATIVE DRIVER JJDBC DRIVER MANAGER NATIVE PROTOCOL JDBC DRIVER JDBC ODBC DRIVER ODBC

->ApplnJDBC JDBC-ODBC Driver ODBC->Database

JDBC DriverManager: Function of the driver manager is to find out available drivers in the system and connect the application to the appropriate database, whenever a connection is requested. However, to help the driver manager identify different types of drivers, each driver should be registered with the driver manager. JDBC Driver: Function of the JDBC Driver is to accept the SQL calls from the application and convert them into native calls to the database. However, in this process it may take help from some other drivers or even servers, which depends on the type of JDBC Driver. It also is possible that the total functionality of the database server could be built into the driver itself. JDBC-ODBC Bridge: Sun soft provides a special JDBC Driver called JDBC-ODBC Bridge driver, which can be used to connect to any existing database, that is ODBC complaint. Application: Application is a java program that needs the information to be modified in some database or wants to retrieve the information. CREATING A CONNECTION and CONNECTING A DATABASE: Java.Sql.Driver: JDBC is a launching point for data base connectivity by responding to driver Manager. Driver Manager connection requests and providing information about the implementation in question. Java.Sql.DriverManager: DriverManager is class instead of an interface. Its main responsibilities are to maintain the list of Driver implementation and present an application with one that matches a requested URL. The driver manager provides register Driver () and deregister Driver
14

(), which allow the Driver implementation to register itself with the Driver Manager or remove itself from that list. You can get an enumeration of register drivers through the getDriver(). Java.Sql.Connection: The Connection class represents a single logical database connection. In other words we use the connection class for sending a series of sql statement to the database and managing the committing or aborting of those statements. PreparedStatement: The prepared Statement enables sql statements to contain the parameters like a function definition and can execute a single statement repeatedly with different values for those parameters. The act of assigning values to parameters is called binding parameters. You might want to use a prepared statement in updating a group of objects stored on same table. This interface is used to retrieve the data from the database in second form. This interface will prepare a SKELTON statement at compile time. To execute the SKELTON we have to set the values for the statement and execute it at run time.

15

Chapter 3
REQUIREMENT SPECIFICATIONS
3.1 Interface Requirements:
The interface for this system will be a window based software and a database system which can handle huge amount of data as records.

User Interface:
The user interface for this Materials Resource Planning System will be forms that can be generated by Visual Basic, HTML, java-awt, etc. Hardware Interface: The minimum hardware required in the making of the software is network based system with Pentium Processor, 128 MB RAM, 512 KB Cache Memory,5 GB Disk Space, basic input, output devices. Software Interface: The software, obviously relates to the various kinds of software required in the successful completion of the project. The software required for the completion of this project are Oracle (RDBMS) Oracle is used as backend for the project and visual basic as the front end.

3.2 Performance Requirements:


The Materials Resource Management System requires a high speed Processor and error free software for fast and accurate processing of the system.
16

Logical Database Requirements: A good Database must be installed which has the capacity of storing the large number of records and high accessibility.

3.3 Software System Attributes:


Some of the Attributes of the system includes: Reliability Portability Security High availability Maintainability

3.4 SPECIFIC REQUIREMENTS:


Interface Requirements: The interfaces for this system will interactive software, Java and a database system which can handle huge amount of data as records. User Interface: The user interface for this RRO System will be a Java and forms that can be generated by java-awt, etc. Hardware Interface: The minimum hardware required is Pentium 133MHZ Processor, 64MB RAM, 20GB Disk Space, basic input, output devices. Software Interface:

17

The software interface for this system will be any Windows Operating System, Java JDK1.2.2 OR I.3, ODBC data sources and JDBC-ODBC drivers ACCESS Database.

3.5 Data flow diagram


The DFD is an excellent communication tool for analysts to model processes and functional requirements. Used effectively, it is a useful and easy to understand modeling tool. It has broad application and usability across most software development projects. The data flow diagram shows how data flows form one point to another point in the current physical system. The processes through which the transformation of the data takes place normally create the data and used it. The four basic symbols are used to construct the data flow diagram. These are the symbols which represents data source, data flow, data transformation, and data storage. The point at which data transformed are represented by enclosed figure, usually circles, which are called nodes.

Fig 3.2

18

3.6 DESIGN
Unified Modeling Language:

The Unified Modeling Language allows the software engineer to express an analysis model using the modeling notation that is governed by a set of syntactic semantic and pragmatic rules.

A UML system is represented using five different views that describe the system from distinctly different perspective. Each view is defined by a set of diagram, which is as follows.

User Model View This view represents the system from the users perspective. The analysis representation describes a usage scenario from the end-users perspective. Structural model view In this model the data and functionality are arrived from inside the system. This model view models the static structures.

Behavioral Model View It represents the dynamic of behavioral as parts of the system, depicting the interactions of collection between various structural elements described in the user model and structural model view.

Implementation Model View In this the structural and behavioral as parts of the system are represented as they are to be built.

Environmental Model View

19

In this the structural and behavioral aspects of the environment in which the system is to be implemented are represented.

UML is specifically constructed through two different domains they are: UML Analysis modeling, this focuses on the user model and structural model views of the system. UML design modeling, which focuses on the behavioral modeling, implementation modeling and environmental model views.

USE-Case Diagram: Use case Diagrams represent the functionality of the system from a users point of view. Use cases are used during requirements elicitation and analysis to represent the functionality of the system. Use cases focus on the behavior of the system from external point of view.

Actors are external entities that interact with the system. Examples of actors include users like administrator, bank customer etc., or another system like central database.

3.6.1 UML DIAGRAM

FIG 3.3 20

3.6.2 CLASS DIAGRAM

Fig 3.4

21

3.6.3 SEQUENCE DIAGRAM

FIG 3.5

22

3.6.4 COLLABORATION DIAGRAM

FIG 3.6

23

Chapter 4
COST ESTIMATION OF THE PROJECT
4.1 Introduction:In case of this software, it is a live project for the submission of BSC(IT) paper. Hence, this software is of cost free. But as far as the cost estimation is concerned, it is a technique by which a S/W Development company can prepare Cost Analysis Report. This will help the company to prepare product price including their profit. 4.2 PERT CHART Some of the advantages of pert chart It forces the manager to plan. It shows the interrelationships among the task in the project. It clearly identifies critical path of the project. It exposes all possible parallelism in the activities and thus helps in allocating resources. It allows scheduling and simulation of alternative schedules. It enables the manager to monitor and control the project.

24

beginning Prototype 2 2 1 Beginning Of Needs 5

3 2 Problem

13 Understanding 7 3 Problem Listing

Final Documentation User Acceptance Testing 6 92

12 2 4 9 Problem Interviewing 11 12 5 Evaluation of Existing system 3 40 10 86

Unit Testing 14 8 User Testing

Coding 76 15 Installation

3 6

15 Analysis of Alternate candidate 10 8 36

Detail Design Specification

16

3 7

Details execution 18 of Project 9 General Specification

Delivery

25

4.3 GANTT CHART


Gantt charts (developed by Henry L. Gantt) are a project control technique that can be used for several purposes including scheduling, budgeting and resource planning. A Gantt chart is a bar chart with each bar representing an activity. The bars are drawn against a time line. The length of each bar is proportional to the length of time planned for the activity. Gantt chart can take different phase depending on their intended use. The Gantt chart INVANTORY SYSTEM is drawn for the time management.

Gantt chart is drawn below. Gantt Chart for INVENTORY SYSTEM

26

YEAR 2013
16Dec 24Dec

Start

Analysis

Design Database (Back End)

Design of LMS diffenent form (Front End) Part

Code data base part

Code Part of LMS


Report Generation

Write Manual

Integration & Testing

Finish

FIG 4.1

27

Chapter 5
Project Legacy
5.1 FUTURE SCOPE
This application can be easily implemented under various situations. We can add new features as and when we require. Reusability is possible as and when require in this application. There is flexibility in all the modules. Reusability is possible as and when require in this application. We can update it next version. Reusable software reduces design, coding and testing cost by amortizing effort over several designs. Reducing the amount of code also simplifies understanding, which increases the likelihood that the code is correct. We follow up both types of reusability: Sharing of newly written code within a project and reuse of previously written code on new projects.

The different areas where we can use this application are: Any educational can make use of it for providing information about author content of the available books. It can be used in offices and modifications can be easily done according to requirements. It also saves our time in this chalanging world. Because it runs on the Web browser and connect to many peoples through internet who interested in web based library. It will be the simpler way to access libraries.

28

Chapter 6
Source code
6.1 CODING:Login package department; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; class login extends JFrame implements ActionListener { int a; JLabel l1,l2,l3,l11; ImageIcon i1; JTextField t1; TextField t2; JButton b1,b2; login() { setSize(600,700); setLayout(null); setTitle("Departmental Store"); Font f1=new Font("castellar",Font.BOLD,18); Font f2=new Font("bradley hand itc",Font.BOLD,15); Font f3=new Font("arial",Font.BOLD,15); Color c=new Color(50,200,150); l1= new JLabel("User Name: "); l2= new JLabel("Password: ");
29

i1=new ImageIcon("e.jpg"); l3= new JLabel(i1); java.util.Date d1=new java.util.Date(); l11=new JLabel(String.valueOf(d1)); b1=new JButton("Submit"); b2=new JButton("Exit"); t1= new JTextField(15); t2= new TextField(15); t2.setEchoChar('*'); add(l1); add(l2); add(t1); add(t2); add(b1); add(b2); add(l11); add(l3); l1.setFont(f1); l11.setFont(f3); l2.setFont(f1); t1.setFont(f2); t2.setFont(f2); b1.setBackground(c); b2.setBackground(c); b1.addActionListener(this); b2.addActionListener(this); l1.setBounds(120,200,150,35); l2.setBounds(120,250,150,35); l3.setBounds(0,0,600,700);
30

t1.setBounds(290,200,150,35); t2.setBounds(290,250,150,35); b1.setBounds(160,400,100,35); b2.setBounds(320,400,100,35); l11.setBounds(300,10,300,40); b1.setForeground(Color.red); b2.setForeground(Color.red); l1.setForeground(Color.red); l11.setForeground(Color.black); l2.setForeground(Color.red); getContentPane().setBackground(c); setVisible(true); } public void actionPerformed(ActionEvent e) { String s=t1.getText(); String s1=t2.getText(); if(e.getSource()==b2) { setVisible(false); } else if(s.equals("admin")&&s1.equals("admin")&&e.getSource()==b1) { JOptionPane.showMessageDialog(this,"congragulations!login successful"); setVisible(false); InventoryStore d1=new InventoryStore(); } else { JOptionPane.showMessageDialog(this,"Sorry!username and password is not correct");
31

t1.setText(""); t2.setText(""); t1.requestFocus(); } } public static void main(String ar[]) { login d2=new login(); } }

Category package department; import javax.swing.*; import java.awt.*; import java.sql.*; import java.awt.event.*; import java.util.*; class Category extends JFrame implements ActionListener { TextField t1; JLabel l1,l2; JButton b1,b2,b3,b4,b5,b6; Category() { setSize(600,700); setLayout(null); setTitle("Category"); Font f=new Font("algerian",Font.BOLD,30); Font f1=new Font("arial",Font.BOLD,16);
32

Color c=new Color(50,200,150); l1=new JLabel("Categories Information"); l2=new JLabel("Category Name: "); java.util.Date d1=new java.util.Date(); JLabel l11=new JLabel(String.valueOf(d1)); b1=new JButton("Add Category"); b2=new JButton("Show All Categories"); b3=new JButton("Back"); b4=new JButton("Add"); b5=new JButton("Delete Category"); t1=new TextField(50); l1.setFont(f); l2.setFont(f1); l11.setFont(f1); b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this); b4.addActionListener(this); b5.addActionListener(this); b1.setBackground(c); b2.setBackground(c); b3.setBackground(c); b4.setBackground(c); b5.setBackground(c); l11.setForeground(Color.black); b1.setForeground(Color.black); b2.setForeground(Color.black); b3.setForeground(Color.black); b4.setForeground(Color.black); b5.setForeground(Color.black);
33

l1.setForeground(Color.black); l2.setForeground(Color.black); add(l1); add(l2); add(l11); add(b1); add(b2); add(b3); add(t1); add(b4); add(b5); t1.setVisible(false); b4.setVisible(false); l2.setVisible(false); l1.setBounds(80,100,500,40); l11.setBounds(300,10,300,40); l2.setBounds(100,220,150,35); b1.setBounds(200,170,150,35); t1.setBounds(250,220,150,35); b4.setBounds(200,270,150,35); b2.setBounds(200,320,150,35); b5.setBounds(200,370,150,35); b3.setBounds(200,420,150,35); getContentPane().setBackground(c); setVisible(true); } public void actionPerformed(ActionEvent e) { if(e.getSource()==b1) {
34

t1.setVisible(true); b4.setVisible(true); l2.setVisible(true); } if(e.getSource()==b2) { setVisible(false); showCategory sc=new showCategory(); } if(e.getSource()==b3) { setVisible(false); InventoryStore d1=new InventoryStore(); } if(e.getSource()==b4) { if(t1.getText().equals("")) { JOptionPane.showMessageDialog(this,"Field is Empty"); } else { try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con=DriverManager.getConnection("jdbc:odbc:Emp1"); PreparedStatement ps1=con.prepareStatement("insert into Category values(?)"); ps1.setString(1,t1.getText()); JOptionPane.showMessageDialog(this,"Congrets! Category is added");
35

ps1.executeUpdate(); con.close(); t1.setText(""); } catch(Exception e2) { System.out.println("Exception is: "+e2); } }

t1.setVisible(false); b4.setVisible(false); l2.setVisible(false); } if(e.getSource()==b5) { setVisible(false); delCategory dc=new delCategory(); } } public static void main(String arg[]) { Category c1=new Category(); } }

Item
package department; import javax.swing.*; import java.awt.*;
36

import java.awt.event.*; import java.sql.*; class Items extends JFrame implements ActionListener { JLabel l1,l2,l3,l4,l5,l6; TextField t1,t2,t3,t4; List li; JButton b1,b2,b3; Items() { setSize(600,700); setLayout(null); setTitle("Items"); setLayout(null); Font f1=new Font("algerian",Font.BOLD,30); Font f2=new Font("arial",Font.BOLD,18); Color c=new Color(50,200,150); l1=new JLabel("Item Information"); l2=new JLabel("Item's Name:"); l3=new JLabel("Item's Category:"); l4=new JLabel("Maximum Stock:"); l5=new JLabel("Current Stock:"); l6=new JLabel("Minimum Stock:"); t1=new TextField(20); t2=new TextField(20); t3=new TextField(20); t4=new TextField(20); li=new List(); b1=new JButton("Save"); b2=new JButton("Details");
37

b3=new JButton("Back"); add(l1); add(l2); add(l3); add(l4); add(l5); add(l6); add(t1); add(t2); add(t3); add(t4); add(li); add(b1); add(b2); add(b3); l1.setFont(f1); l2.setFont(f2); l3.setFont(f2); l4.setFont(f2); l5.setFont(f2); l6.setFont(f2); b1.setBackground(c); b2.setBackground(c); b3.setBackground(c); l1.setBounds(120,80,400,40); l2.setBounds(90,150,150,30); l3.setBounds(90,200,150,30); l4.setBounds(90,300,150,30); l5.setBounds(90,350,150,30); l6.setBounds(90,400,150,30);
38

t1.setBounds(300,150,150,30); li.setBounds(300,200,150,80); t2.setBounds(300,300,150,30); t3.setBounds(300,350,150,30); t4.setBounds(300,400,150,30); b1.setBounds(90,550,100,30); b2.setBounds(220,550,100,30); b3.setBounds(350,550,100,30); b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this); b1.setForeground(Color.black); b2.setForeground(Color.black); b3.setForeground(Color.black); l1.setForeground(Color.black); l4.setForeground(Color.black); l2.setForeground(Color.black); l3.setForeground(Color.black); l5.setForeground(Color.black); l6.setForeground(Color.black); try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con=DriverManager.getConnection("jdbc:odbc:Emp1"); PreparedStatement ps2=con.prepareStatement("select Categories from Category"); ResultSet rs=ps2.executeQuery(); while(rs.next()) { li.addItem(rs.getString(1)); }
39

} catch(Exception e) { System.out.println(e); } getContentPane().setBackground(c); setVisible(true); } public void actionPerformed(ActionEvent e) { if(e.getSource()==b1) { if(t1.getText().equals("")||t2.getText().equals("")||t3.getText().equals("")||t4.getText().equals("")||l i.getSelectedItem().equals("")) { JOptionPane.showMessageDialog(this,"Some Fields are Empty"); } else { int i=JOptionPane.showConfirmDialog(this,"Are you sure ?"); if(i==0) { try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con=DriverManager.getConnection("jdbc:odbc:Emp1"); PreparedStatement ps1=con.prepareStatement("insert into Items values(?,?,?,?,?)"); ps1.setString(1,t1.getText()); ps1.setString(2,(String)li.getSelectedItem());
40

ps1.setString(3,t2.getText()); ps1.setString(4,t3.getText()); ps1.setString(5,t4.getText()); JOptionPane.showMessageDialog(this,"Congrets! Item_Info added"); ps1.executeUpdate(); con.close(); } catch(Exception e2) { System.out.println("Exception is: "+e2); } } if(i==1) { t1.setText(""); t2.setText(""); t3.setText(""); t4.setText(""); } if(i==2) { setVisible(true); }

} t1.setText(""); t2.setText(""); t3.setText(""); t4.setText("");

41

} if(e.getSource()==b2) { setVisible(false); ItemTable1 it=new ItemTable1(); } if(e.getSource()==b3) { setVisible(false); Item1 i=new Item1(); } } public static void main(String arg[]) { Items i1=new Items(); } }

Supplier
package department; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; class Supplier extends JFrame implements ActionListener { JLabel l1; JButton b1,b2,b3,b4,b5; Supplier() { setSize(600,700);
42

setLayout(null); setTitle("Supplier"); setLayout(null); Font f=new Font("algerian",Font.BOLD,30); Color c=new Color(50,200,150); l1=new JLabel("Suppliers Information"); java.util.Date d1=new java.util.Date(); JLabel l11=new JLabel(String.valueOf(d1)); add(l11); l11.setForeground(Color.black); Font f1=new Font("arial",Font.BOLD,15); l11.setBounds(300,10,300,40); l11.setFont(f1); b1=new JButton("Add Supplier"); b2=new JButton("View Details"); b3=new JButton("Back"); b4=new JButton("Edit Information"); b5=new JButton("Delete Supplier"); add(l1); add(b1); add(b2); add(b3); add(b4); add(b5); l1.setFont(f); l1.setForeground(Color.black); b1.setBackground(c); b2.setBackground(c); b3.setBackground(c); b4.setBackground(c);
43

b5.setBackground(c); b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this); b4.addActionListener(this); b5.addActionListener(this); l1.setBounds(100,100,400,40); b1.setBounds(200,230,120,35); b2.setBounds(190,280,140,35); b4.setBounds(180,330,160,35); b5.setBounds(190,380,140,35); b3.setBounds(200,430,120,35); b1.setForeground(Color.black); b2.setForeground(Color.black); b3.setForeground(Color.black); b4.setForeground(Color.black); b5.setForeground(Color.black); getContentPane().setBackground(c); setVisible(true); } public void actionPerformed(ActionEvent e) { if(e.getSource()==b1) { setVisible(false); AddSupplier as=new AddSupplier( ); } if(e.getSource()==b2) { setVisible(false);
44

SplDetails sd=new SplDetails(); } if(e.getSource()==b3) { setVisible(false); InventoryStore d1=new InventoryStore(); } if(e.getSource()==b4) { setVisible(false); upSupplier us=new upSupplier(); } if(e.getSource()==b5) { setVisible(false); delSupplier ds=new delSupplier(); } } public static void main(String arg[]) { Supplier s1=new Supplier(); } }

Employee
package department; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*;
45

class Employees extends JFrame implements ActionListener { JLabel l1; JButton b1,b2,b3,b4,b5; Employees() { setSize(600,700); setLayout(null); setTitle("Employee"); setLayout(null); Font f=new Font("algerian",Font.BOLD,30); Color c=new Color(50,200,150); l1=new JLabel("Employees Information"); java.util.Date d1=new java.util.Date(); JLabel l11=new JLabel(String.valueOf(d1)); add(l11); l11.setForeground(Color.black); Font f1=new Font("arial",Font.BOLD,15); l11.setBounds(300,10,300,40); l11.setFont(f1); b1=new JButton("Add Employee"); b2=new JButton("View Details"); b3=new JButton("Back"); b4=new JButton("Edit Information"); b5=new JButton("Delete Employee"); add(l1); add(b1); add(b2); add(b3); add(b4);
46

add(b5); l1.setFont(f); b1.setBackground(c); b2.setBackground(c); b3.setBackground(c); b4.setBackground(c); b5.setBackground(c); b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this); b4.addActionListener(this); b5.addActionListener(this); l1.setBounds(70,80,420,40); b1.setBounds(200,230,120,35); b2.setBounds(190,280,140,35); b4.setBounds(180,330,160,35); b5.setBounds(190,380,140,35); b3.setBounds(200,430,120,35); b1.setForeground(Color.black); b2.setForeground(Color.black); b3.setForeground(Color.black); b4.setForeground(Color.black); b5.setForeground(Color.black); getContentPane().setBackground(c); setVisible(true); } public void actionPerformed(ActionEvent e) { if(e.getSource()==b1) {
47

setVisible(false); AddEmployee ae=new AddEmployee( ); } if(e.getSource()==b2) { setVisible(false); EmpDetails ed=new EmpDetails(); } if(e.getSource()==b3) { setVisible(false); InventoryStore d1=new InventoryStore(); } if(e.getSource()==b4) { setVisible(false); upEmployee ue=new upEmployee(); } if(e.getSource()==b5) { setVisible(false); delEmployee de=new delEmployee(); } } public static void main(String arg[]) { Employees e1=new Employees(); } }

48

Stockdetails
package department; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; class StockDetails extends JFrame implements ActionListener { JLabel l1; JButton b1,b2,b3,b4; StockDetails() { setSize(600,700); setLayout(null); setTitle("StockDetails"); setLayout(null); Font f1=new Font("algerian",Font.BOLD,30); Color c=new Color(50,200,150); l1=new JLabel("Stock Details"); java.util.Date d1=new java.util.Date(); JLabel l11=new JLabel(String.valueOf(d1)); add(l11); l11.setForeground(Color.black); Font f2=new Font("arial",Font.BOLD,15); l11.setBounds(300,10,300,40); l11.setFont(f2); b1=new JButton("Purchase"); b2=new JButton("Sale"); b3=new JButton("Show Details"); b4=new JButton("Back");
49

l1.setFont(f1); b1.setBackground(c); b2.setBackground(c); b3.setBackground(c); b4.setBackground(c); add(l1); add(b1); add(b2); add(b3); add(b4); l1.setBounds(160,120,550,30); b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this); b4.addActionListener(this); b1.setBounds(230,200,100,35); b2.setBounds(230,250,100,35); b3.setBounds(220,300,120,35); b4.setBounds(230,450,100,35); getContentPane().setBackground(c); setVisible(true); } public void actionPerformed(ActionEvent e) { if(e.getSource()==b1) { setVisible(false); Purchase p1=new Purchase(); } if(e.getSource()==b2)
50

{ setVisible(false); Sold s1=new Sold(); } if(e.getSource()==b3) { setVisible(false); StkDetail sd=new StkDetail(); } if(e.getSource()==b4) { setVisible(false); InventoryStore d1=new InventoryStore(); } } public static void main(String arg[]) { StockDetails d4=new StockDetails();

} }

51

52

Chapter 7
Snapshot

Fig 7.1

53

Fig 7.2

54

Fig

55

7.3 Fig 7.4

56

Fig 7.5

57

Fig 7.6

58

Fig 7.7

59

Fig 7.8

60

Fig 7.9

61

Fig 7.10

62

Fig 7.11

63

Fig 7.12

64

Fig 7.13

65

Fig 7.14

66

Fig 7.15

67

Fig 7.16

68

Chapter 8
Implementation and testing
8.1 IMPLEMENTATION
The project is implemented using the JAVA programming language. The implementation details of the project are as follows The methods that we have used are as follows: 1. Login 2. Action performed 3. Show message 4. Gettext 5. Settext 6. Windowadpter 7. Add 8. Setfont 9. Setlayout 10. Getsource 11. Getstring 12. Getconnection 13. Executequery 14. Forname 15. Getruntime 16. Exec

8.2 TESTING
8.2.1 TESTING METHODS USED The development of software involves a series of production activities where opportunities for injecting of human fallibility are enormous. Because of human inability to perform and communicate with the perfection, software development is accompanied by a quality assurance activity.

69

Performance testing was not taken for consideration as the available hardware is of minimum required configuration. Software Testing Techniques The Test Case design methods used are: 1. WHITE BOX TESTING 2. BLACK BOX TESTING

1) WHITE BOX TESTING Using this testing method it was assured that all the independent paths were exercised atlas once. All the logical decisions on their True and False sides were executed. Statement Coverage Criteria was taken into accounts and was ensured that every statement was executed atlas once.

2) BALCK BOX TESTING Using this technique incorrect and missing functions were identified and corrected. Interfacing errors, initialization errors and termination errors were also found using this technique. The errors uncovered during the testing were analyzed and fixed and documented for the future use.

8.2.2 DIFFERENT LEVELS OF TESTING


A strategy for the software testing integrates test case design techniques into a well-planned series of steps that results in the successful construction of software. Any testing strategy must incorporate test planning, test execution and resultant data collection and evaluation. Unit testing and integration testing were the performance of the system and the output was a expected and consistent. Unit Testing Unit testing focuses verification efforts on the smallest unit of software design. Each of the modules was verified individually for errors.
70

Integration Testing Integration testing is a systematic technique for constructing the program structure while at same time conducting tests to uncover errors associated with interfacing. Here unit-testing modules were taken and the program structure that was specified in the design was built and then testing was carried out.

8.2.3 USER INTERFACE TESTING User interface design plays a major part in the success of the project. Keeping in mind the system was developed and ease-of-use aspect was maintained in the design of system. All the modules were tested exhaustively and the encountered errors were rectified. The form design was on par with the existing form design and hence the reduction of strain results. The validation error messages were simple and unambiguous. All internal data structures are assured their validity. Black box testing Black box testing method focuses on functional requirements of the software to enable the software engineer to derive sets of input conditions that will fully exercise all function requirements of a program.

Using this technique incorrect and missing functions were identified and corrected. Errors in Data Structures or external database access were also corrected. Interfacing errors, initialization errors and termination errors were also found using this technique.

The errors uncovered during the testing were analyzed and fixed and documented for the future use.

8.3.4 DIFFERENT LEVELS OF TESTING A strategy for software testing integrates software test case design techniques into a well-planned series of steps that results in the successful construction of software. Any testing strategy must
71

incorporate test-planning, test case Design, test execution and the resultant data collection and evaluation.

Unit testing and integration testing were the performed of the system and the outputs were expected and consistent.

a) UNIT TESTING Using testing focuses on verification effort on the smallest unit of software design. The unit test considerations that were taken are: Integrity of local data structures. Interface Boundary conditions Independent paths Error handling paths Unreachable codes

b) INTEGRATION TESTING Integration testing is a systematic technique for constructing the program structure while at the same time conducting tests to uncover errors associated with interfacing.

Here unit tested modules were taken and the program structure that was specified in the design was built and then testing was carried out. The bottom up approach was applied and the stubs were created wherever necessary.

User interface design plays a major part in the success of the project. Keeping in mind the system was developed and ease-of-use aspect was maintained in the design forms. All the forms were tested exhaustively and the encountered were rectified. The form design was on par with the existing form design hence reduction in the strain caused. The validation error messages were simple and unambiguous.

72

Chapter 9
Conclusion
In the current age of computers, efforts have been made to cover every aspect of human life with faster computing power of digital computers. Especially in a large organization, where enormous amount of data are to be processed every day and interaction between different working groups of organization for taking crucial decisions exists, there is a desire to have comprehensive information available more quickly in order to improve quality, productivity, cost effectiveness, planning, policy decision making and constant vigil on production. Therefore, a systematic effort to reduce the information uncertainties becomes an important driving factor for establishment of automatic system. This project will help the administration in updating, creating, deleting the record of membership as per requirement and implementation plans.

73

Chapter 10
Bibliography & References
10.1 Internet:
www.wikipedia.com www.oracle.com www.w3school.com www.1000projects.com

10.2 Books:
The Complete Reference, Seventh Edition by Herbert Schildt Java script by R.Allene Wyke, Jason D. Gillian and Chariton

74

S-ar putea să vă placă și