product and sevices management system
DESCRIPTION
TRANSCRIPT
1
1. INTRODUCTION
1.1 Overview of the System
The system is a web based Manufacturing System that enables a Manufacturing
company to schedule its manufacturing operations based on the daily update of sales from its
dealers. The system is modeled to be used by a Manufacturing company, whose main activity
is manufacturing different products & then selling the finished goods through a network of
Dealers.
To start with, the Stocks of all the Products manufactured by the company and held in
the company ware-house are stored in a Database. The details that are stored include the
quantity of each product held with the company dealers who hold the stocks of finished
products for sale.
Once the sales figures of Products sold in the past week are entered by the Dealers
over the internet along with the Orders for the next delivery, the schedule for the next week’s
production will be drawn up. A report of the required raw materials or parts will be drawn up
with the approved suppliers for each & the suppliers will be intimated about the part
requirements over the internet & asked to quote their rates. The message asking for a
Quotation will be sent as an e-mail message. Once the rates are quoted, the Order will be
placed with the required delivery schedules.
The system incorporates intelligent Order processing System which checks and
intimates the required Higher-ups in the Company about any discrepancies in the Orders that
were placed. For example if an Order is placed with a Supplier whose rates are not the least
then an automatic Event-generation will send the details of the Order & the person who
placed it to the Managers or Directors who are supposed to oversee the process. Analysis is
heart of the process. It is the key component of the first two phases of development life cycle.
Analysis is a detailed study of various operations performed by a system and their
relationships within and outside the system. During analysis data are collected available files,
decision points and transaction handled by the present system. Logical system modules and
tools like interviews onsite observations are used in analysis. Determining system
2
requirements requires analysis of the facts. Descriptions and documentation developed as a
result of fact-finding method help to obtain a potential solution. It this system it includes less
no of actions and system so we can do the task slowly. In this we have so many dealers and
suppliers but here we didn’t provide the complete details of the dealers and suppliers. There
is no guaranty whether product updating successful or not. There may be exists a duplicate
dealers and suppliers. Due to this customer don’t know who authorized persons are. In this
we didn’t use other ads. The proposed computerized system i.e Product and Service
Management system is the solution for the above highlighted incompetence/inconsistencies in
the existing manual system. Even though the investment has to made on the software and
hardware aspects, the proposed system aims at processing of transactions efficiently thus
saving time and money. Since the existing system is a manual one, the possibility for wrong
data entry is higher and consumers lot of time. Thus the benefits acquired out of the system
are sufficient for the project to be undertaken. The computerized system will help in automate
the selection leading the profits and details of the organization. With this software, the
machine and manpower utilization are expected to go up by 80-90% approximately. The
costs incurred of not creating the system are set to be great, because precious time can be
wanted by manually.
1.2 Existing System
The system is a web based Manufacturing System that enables a Manufacturing
company to schedule its manufacturing operations based on the daily update of sales from its
dealers. The system is modeled to be used by a Manufacturing company, whose main activity
is manufacturing different products & then selling the finished goods through a network of
Dealers. It this system it includes less no of actions and system so we can do the task slowly.
In this we have so many dealers and suppliers but here we didn’t provide the complete details
of the dealers and suppliers. There is no guaranty whether product updating successful or not.
There may be exists a duplicate dealers and suppliers. Due to this customer don’t know who
authorized persons are. In this we didn’t use other ads.
1.3 Need for the Proposed System
All the above listed tasks currently are handled manually and it needs maintenance
of lots of records. Due to this procedure, lots of errors are crawling in. This requires good
amount of attention from the super user, which eventually delays the development of the
overall project.
3
To provide the facilities for the users,
To maintain the details of users.
To provide access to the user to
the product details whenever they required.
To maintain various records:
Dealer’s data
Supplier’s data
Stock data
Product Stock
1.4 Proposed System
The proposed computerized system i.e Product and Service Management system is
the solution for the above highlighted incompetence/inconsistencies in the existing manual
system.
Product and Services Management System can handle all the Product and User
details.
Product and Service Management System can handle such large number of dealers
and suppliers.
Any marketing company feels the need for an automated system that can be used by
the organization.
Also any field executive can easily log on to the system over the internet and get the
relevant details at any time and place.
The system administrator that is responsible for the overall maintenance system
configures login.
Product and Services Management System provides the details of the services.
The Product and Service Management System allows the storage of information of
Products the company and retrieval of the information is very easy.
2. SOFTWARE REQUIREMENT SPECIFICATION
4
What is meant by analysis?
Analysis is heart of the process. It is the key component of the first two phases of
development life cycle. Analysis is a detailed study of various operations performed by a
system and their relationships within and outside the system. During analysis data are
collected available files, decision points and transaction handled by the present system.
Logical system modules and tools like interviews onsite observations are used in analysis.
Determining system requirements requires analysis of the facts. Descriptions and
documentation developed as a result of fact-finding method help to obtain a potential
solution.
First step in system analysis is the initial investigation to determine whether the
request is valid and feasible before a recommendation is made as to do nothing, improve or
modify the existing system or build a new system. At the heart of the system analysis is
detailed understanding of all the important facts of the business area under investigation. The
following structured system analysis concepts have been used in the design of the system:
1. Context analysis Diagram
2. Data Flow Diagram.
Feasibility Study:
Feasibility study is a high level capsule version of the entire system analysis and
design process. After problem is clearly understood and solutions are proposed the next step
is to conduct the feasibility study, which is the part of the system analysis as well as design
process. The main objective of the study is to determine whether the proposed system is
feasible or not. Mainly there are three types of feasibility study, which the proposed system is
subjected as discussed below. The objective is to determine quickly at a minimum expense
how to solve a problem. The purpose of feasibility is not to solve the problem but to
determine if the problem is worth solving. The system has been tested for feasibility in the
following points.
a) Technical Feasibility
b) Economical Feasibility
c) Operational Feasibility
a. Technical Feasibility:
5
Technical feasibility deals with hardware as well as software requirements. The
hardware required is nothing but a Pentium based server and software requirement are made
available with the system. Then the proposed system is said to be technically feasible. The
project entitles “PRODUCT AND SERVICES MANAGEMENT SYSTEM” is technically
feasible because the project was developed in high end technologies like java server pages
(JSP) as front-end and ORACLE10G as backend using the three tier Architecture
implementation and COM(Com components as middleware) which runs on all the major
operating systems like windows 9X,winnt,win 2X,mac etc.
b. Economical Feasibility:
Even though the investment has to made on the software and hardware aspects, the
proposed system aims at processing of transactions efficiently thus saving time and money.
Since the existing system is a manual one, the possibility for wrong data entry is higher and
consumers lot of time. Thus the benefits acquired out of the system are sufficient for the
project to be undertaken. The computerized system will help in automate the selection
leading the profits and details of the organization. With this software, the machine and
manpower utilization are expected to go up by 80-90% approximately. The costs incurred of
not creating the system are set to be great, because precious time can be wanted by manually.
C. Operational Feasibility:
The proposed system offers greater levels of users friendliness combine with greater
processing speed. Therefore the cost of maintenance can be reduced. Since the processing
speed is very high compared to that of manual one the management can take timely actions
depending on the information obtained. Since the work is reduced the management convinces
that the project is operationally feasible.
2.4 HARDWARE & SOFTWARE REQUIREMENT
SOFTWARE REQUIREMENTS
Technologies : Servlets, JSP, JDBC
Data bases : MS-ACCESS
Web Server : Apache Tomcat 5.0.
Operating System : Windows 2000prof/XP.
6
UML tool : Rational Rose.
Text Editor : MS-OFFICE 2007
HARDWARE REQUIREMENTS
Processor : Intel P-IV based system
Processor Speed : 250MHz to 833MHz
Ram : 256 MB to2 GB
3. SYSTEM DEVELOPMENT
3.1 JAVA overview
3.1.1 Introduction to JAVA
7
Java is very powerful and popular language that supports the development of
web-based applications. It provides a number of capabilities that complement those
provide by JavaScript.
What Is Java?
The rapid growth in the popularity of the java language is nothing short of a
phenomenon. In less than a year, java went from a relatively unknown alpha version
to an incredibly successful version 1.0 release. Every major computer hardware and
software vendor has since endorsed Java. Its remarkable success is summed up by fact
that Microsoft, its chief rival, not only supports java with Internet explorer, but also
sells J++, a popular development environment. In this section we'll explore various
aspects of Java.
3.1.2 Features of JAVA
Java Is Platform-Independent:
Java's phenomenal success is due to the fact that it provides the
capability to develop compiled software that runs, without modification, on a large
variety of operating systems platform-including Microsoft windows, Apple
Macintosh, IBM os/2, Linux, and several varieties of UNIX. In addition, and perhaps
more importantly, specially designed java programs known as applets run in the
context of java-enabled web browsers, such as Netscape navigator and Microsoft
Internet explorer.
The java virtual machine is the key to java's platform-independence. The Java
Virtual Machine (JVM) provides a machine-independent and operating system-
independent platform for the execution of java code. The JVM is a program that
executes java programs that are compiled into the JVM byte code.
Java Is Object-Oriented:
Java is an object-oriented language, and provides all of the benefits of object-
oriented programming: classification, inheritance, object composition, encapsulation,
and polymorphism. Java supports single Inheritance, but not multiple Inheritance;
8
however, it provides the interface construct, which can be used to obtain the benefits
of multiple inheritance without having to deal with any of its drawbacks.
Java Is Familiar:
One of the most striking characteristics of java, at least from a programmer's
perspective, is its familiarity. Java is based on c++ and retains much of its syntax. This
makes the language very easy to learn for c++ programmers. Since JavaScript is also
based on both c++ and Java, Java's syntax will be easy for you to learn. However,
since java is a full object-oriented language (as opposed to an object-based language,
like JavaScript), you will have to learn some additional programming constructs.
Java Is Simpler and More Reliable:
Although java is based on c++, it is simpler and easier to use. This is because
the designers of java eliminated many of the complex and dangerous
3.2 HTML Overview
Introduction
Hyper Text Markup Language (HTML) is a method where ordinary text can be
converted into hypertext. It is a set of special codes included to control the layout and
appearance of the text. It is a set of special codes included to control the layout and
appearance of the text. Technically, HTML is not a programming language. It
combines instructions within data to tell a display program called browser, how to
render the data that the document contains.
HTML is the character-based method for describing and expressing the content.
The content is pictures, text, sound, and video clips.
It delivers the contents of multiple platforms.
It links document components or documents together to compose compound
documents.
Tim Berners Lee developed HTML in early 1990 at CERN (Counsil European
de la Recherche Nuclear), the European Poetical Physics Laboratory in Geneva,
9
Switzerland. HTML is a public domain and not owned by anybody. The W3C (World
Wide Web Consortium) wsww.w3.org is the body, which controls the HTML
standards. The HTML working group comprises of industry leaders, content providers
and other leading experts who provide input on Web accessibility and
internationalization.
Tim Burners’ Lee originally developed HTML, and was popularized by the
Mosaic Browser. During, 1990's it has blossomed with the explosive growth of the
web. During this time, HTML has been extended in a number of ways. HTML 2.0
specifications was developed under the protection of the Internet Engineering Task
Force (IETF) to codify common practice in late 1994. HTML 3.0 proposed much
richer version of HTML. Despite never receiving consensus in standards discussions,
these drafts led to the adoption of a new range of new features. The efforts of the
World Wide Web Consortium's HTML working group to codify common practice in
1996 resulted in HTML 3.2. HTML 4.0 extends HTML with mechanisms for style
sheets, scripting frames, embedding objects improved support for right to left and
mixed direction text, richer tables and enhancements to forms, offering improved
accessibility for people with disabilities.
Standard Generalised Markup Language:
HTML is a subset of SGML. SGML originated in 1960's at IBM to overcome
the problems in moving the documents across the multiple hardware platforms and
Operating Systems. IBM's efforts were called GML (General Markup Language).
Later in 1980 SGML come into existence.
3.2.1 Structure Of HTML Document
HTML has generally two parts an on-code and an off-code, which contains the
text to be defined. Few tags do not require an off code.
Syntax: <tag name>....</tag name>
The most important thing to keep in mind about HTML is that its purpose is
not to specify the exact formatting or layout of a web page, but rather to define and
specify the specific elements that make up a page such as the body of the text,
10
heading, paragraphs, line breaks, text elements and so on. You can use HTML to
define the composition of a web page not the appearance.
3.3 JSP Overview
3.3.1 Introduction to Java Server Pages (JSP)
Java Server Pages (JSP) is a Java technology that allows software developers to
dynamically generate HTML, XML or other types of documents in response to a Web client
request. The technology allows Java code and certain pre-defined actions to be embedded
into static content.
The JSP syntax adds additional XML-like tags, called JSP actions, to be used to
invoke built-in functionality. Additionally, the technology allows for the creation of JSP tag
libraries that act as extensions to the standard HTML or XML tags. Tag libraries provide a
platform independent way of extending the capabilities of a Web server.
JSPs are compiled into Java Servlets by a JSP compiler. A JSP compiler may generate
a servlet in Java code that is then compiled by the Java compiler, or it may generate byte code
for the servlet directly.
JSP was developed by Sun Microsystems
The following shows the Typical Web server, different clients connecting via the
Internet to a Web server. In this example, the Web server is running on UNIX and is the very
popular Apache Web server.
First static web pages were displayed. Typically these were people’s first experience
with making web pages so consisted of My Home Page sites and company marketing
information. Afterwards Perl and C were languages used on the web server to provide
dynamic content. Soon most languages including Visual basic, Delphi, C and Java could be
used to write applications that provided dynamic content using data from text files or
database requests. These were known as CGI server side applications. ASP was developed by
Microsoft to allow HTML developers to easily provide dynamic content supported as
standard by Microsoft’s free Web Server, Internet Information Server (IIS).
3.3.2 JSP Architecture
There are three methods that are automatically called when a JSP is required and when the
JSP terminates normally. These are
jspInt()
jspDestroy()
Service()
jspInt (): This method is identical to the
Applet. The jspInt() method is called first when the JSP is requested and is used to
initialize objects and variables that are used throughout the life of the JSP.
jspDestroy(): This method is identical to the destroy method in a java servlet.
destroy () method is automatically called when the JSP terminates normally. It isn’t
called if the JSP abruptly terminates such as when the server crashes. The
method is used for cleanup where resources used during the execution of the JSP are
released such as disconnecting from a data base.
Service(): This method is automatically called and retrieves a connection to HTTP.
3.4 JAVA Database Connectivity
3.4.1 JDBC Overview:
11
Microsoft to allow HTML developers to easily provide dynamic content supported as
Microsoft’s free Web Server, Internet Information Server (IIS).
There are three methods that are automatically called when a JSP is required and when the
JSP terminates normally. These are
This method is identical to the init() method in java servlet and in an
method is called first when the JSP is requested and is used to
initialize objects and variables that are used throughout the life of the JSP.
This method is identical to the destroy method in a java servlet.
method is automatically called when the JSP terminates normally. It isn’t
called if the JSP abruptly terminates such as when the server crashes. The
d for cleanup where resources used during the execution of the JSP are
released such as disconnecting from a data base.
This method is automatically called and retrieves a connection to HTTP.
AVA Database Connectivity(JDBC)
Microsoft to allow HTML developers to easily provide dynamic content supported as
Microsoft’s free Web Server, Internet Information Server (IIS).
There are three methods that are automatically called when a JSP is required and when the
method in java servlet and in an
method is called first when the JSP is requested and is used to
initialize objects and variables that are used throughout the life of the JSP.
This method is identical to the destroy method in a java servlet. The
method is automatically called when the JSP terminates normally. It isn’t
called if the JSP abruptly terminates such as when the server crashes. The destroy()
d for cleanup where resources used during the execution of the JSP are
This method is automatically called and retrieves a connection to HTTP.
12
JDBC is a Java API for executing SQL statements. (JDBC is as trademark and is not
an acronym; JDBC is often thought of as understanding for "Java Database Connectivity"). It
consists of a set of classes and Interfaces written in the Java Programming Language. JDBC
provides a standard API for tool/database developers and makes it possible to write database
applications using a pure Java API.
Using JDBC it is easy to send SQL statements to virtually any relational database. In
other words, with the JDBC API, it is not necessary to write one program to access a Sybase
database, another program to access a Oracle database, another program to access a Informix
database, and so on..
One can write a single program using the JDBC API, and with in ail application
written in Java programming language, one also doesn't have to worry about writing different
applications to run on different platforms. The combination of Java and JDBC lets a
programmer to write it once run it anywhere.
Java, being robust, secure, easy to understand, and automatically downloaded on a
network, is an excellent language basis for database application. What is needed is a way for
Java applications to walk to a variety of different databases. JDBC is the mechanism for
doing this.
What does JDBC do?
Simply put, JDBC makes it possible to do three things:
1. Establish a connection with the database
2. Send SQL statements
3. Process the results
The following code fragments give a basic example of these three steps:
Connection Con = DriverManager.getConnection(''jdbc: odbc:
SN","login","password”)
13
3.4.2 ODBC Overview
Open Database Connectivity (ODBC) is a Microsoft standard for database access. It
provides a mechanism for desktop-based tools (word processors, spreadsheets, report writers,
Internet/Intranet tools, for example) to transparently access data sources, such as databases.
Open Link Software provides the drivers you need to access your data sources from an
ODBC compliant application.
How ODBC Works?
A typical single-tier installation may consist of a database server, and a client that
comprises the client networking provided by the database engine vendor and the Open Link
Like ODBC driver. The client components need to be installed on every PC that is going to
access the data. The ODBC driver must be accompanied by an application, such as Microsoft
Office, which will use the driver to access and manipulate the data.
The Open Link drivers can be used with, among others, the following software packages:
Microsoft Excel
Microsoft Word
Microsoft Access
Crystal Report Writer
Microsoft FrontPage98 (web page development tool)
Visual Basic, Visual C++
All Visual Studio ADO components
All standard Microsoft Office applications use the Microsoft Query tool to access
data. This package must be installed in order for ODBC drivers to work. Microsoft queries
can be embedded in documents and spreadsheets and easily reused and modified.
Crystal Report Writer is a stand-alone reporting tool that enables you to write and graph
reports. It employs a "click through" user interface.
3.5 Microsoft Access
14
To integrate RMI application with the data, we need to use a Database Management
System. Database Management System consists of tools and techniques that provide security
for the database and thereby providing a well behaved database.
Microsoft Access is a Database Management System and was used in this application
when developing application access to a database, two large problems loom over developers.
Transactions
Concurrency
Transactions are the idea of grouping actions against the database to enable faster and
more robust execution. Without transaction, we cannot guarantee the reliability for the
database.
The Database Management System takes necessary care to maintain in the data integrity
and to avoid data inconsistency.
Microsoft Access is an interactive relational Database Management for Microsoft
windows. Ms-Access has the power to recognize, find and present information
effectively. Using Ms-Access data can be organized according to the subject who makes
tracking and verifying easier, and store information about how different subjects are
related which makes grouping of related data easier.
Ms-Access Database can have several small tables. The database can be designed in such
a way that it stores information about how tables are related. Each piece of information is
stored only in one place thus saving storage space by eliminating duplication and also
making updating faster and more accurate. New table can be added with out changing the
existing ones.
The databases mainly consist of:
Tables
Queries
Dynasets
15
A table collection of data about a particular subject. A field is a category of
information. A record is a collection of fields. Each record in a table contains same set of
fields and each field consist the same type of information foe each record. A query is a
question asked about the data in the database. The data that answers the question can be from
one or more tables. A query brings requested information together. The query’s answer is a
set of records called Dynaset, which is dynamic in nature.
FEATURES OF MS-ACCESS:
1. Ms-Access is graphical:
Access takes full advantage of the graphical power in windows, giving a visual access to the
data and simple, direct ways to view and work formation.
2. Data Navigation:
Its power full querying and connective capabilities helps to fine the information quickly,
regardless of formats and location. Querying makes it possible to work with data stored in
different database formats and network locations. A query can be changed at any time and it
is possible to view different layouts of data.
3. Data Publishing:
WYSIWYNG-what you see is what you get design tools help to reduce sophisticated reports
and forms. Plotting of data combining different forms and reports into one document can be
done present the results with publication quality style.
4. Productive Tools:
Using macros most takes can be automated easily without the need for programming. For
highly sophisticated data management need, Ms-Access comes with Access Basic, a powerful
database programming language.
3.6 TOMCAT WEB SERVER
Overview of tomcat web server:
16
Tomcat is the Servlet Container (as well as JSP Engine) that is used in the
official Reference implementation for the Java Servlet and Java Server Pages Technologies.
The Apache Software Foundation (ASF) under the Jakarta Project has developed Tomcat. It
has been developed as a 100% pure Java Application under an open-participatory process.
In its role as the standard reference implementation, Tomcat provides a good
platform for developing and testing JSPs, since it enforces compliance with the published
+-Specification. Tomcat is a container that is used to provide an environment for running
Java code on a Web Server.
Version Used In The Application:
Tomcat 5.0 is the latest release from the Apache and is quite stable .we used Tomcat
5.0.25 in our Application Development. This version is the implementation of the new JSP
2.0 and Servlet 2.4 API Specifications.
There are significant changes that were made in Tomcat 5.0.25, which results in
improved performance, scalability and Total Cost of Ownership.
It incorporates the following features:
Performance optimization and reduced garbage collection
Refactored application deployer allowing validation and compilation of a Web
Application before putting it in production
Complete server monitoring
Improved platform integration with native Windows and Unix wrappers
Improved Taglib handling
Expanded Documentation
Structure of Tomcat:
Tomcat runs as a windows service, awaiting connections on port (by default
8080). A single instance of Tomcat can provide several services
17
Fig. Structure Of Tomcat Server
There is useful application called Tomcat Manager, which runs in one of the standard
Tomcat Container and is used to control loading, reloading and unloading of individual
application.
4. SYSTEM DESIGN
4.1 Introduction
The importance of software design can be started with a single word quality.
Design is the place where quality is fostered in software engineering. Design provides us with
18
representation of software that can be assessed for quality. Design is the only way that we can
accurately translate customer’s requirements into a finished product or system. Software
design server as the foundation for all the software engineering and software support steps
that follow. With design we risk building an unstable system one that will fail when small
changes are made; one that may be difficult to test; one whose quality can not be assessed
until late in the software process, when time is short and so much money have already spent.
Software design sits at the technical kernel of software engineering and is
applied regardless of the software process model that is used. Beginning once software
requirements have been analyzed and specified. Software design is the first three technical
activities- design, code generation and test that are required to build and verify the software.
The design task and constitutes data design, architecture design, interface design and
component design.
DATA DESIGN
The data design transforms the information domain model into the data
structures that will be required to implement the software. The data objects and relationships
defined in the entity relationship diagram and the detailed data content depict in the data
dictionary provide the basis for the data design activity. Part of data design may occur in
conjunction with the design of software architecture. More detailed data design of software
architecture. More detailed data design occurs as each software component is design. Data
design creates a model of data and information that is represented at the high level of
abstraction. This data model is then refined into progressively more implementation. Specific
representations that can be processed by the computer- based system. The structure of data
has always been an important part of software design.
Architectural Design
Ever since has the first program was divided into modules, software systems has had
architectures and programmers have been responsible for the interaction and programmers
have been responsible for the interactions among the modules and architectures have been
implicit accidents of implementation.
19
The software architecture of a program or computing system is the structure of
structures of the system, which comprise software components, the relation ship among them.
Three keys reasons that software architecture is important.
Representation of software architecture is an enabler for communication between all
parties interested in the development of a computer- based system.
The architecture highlights of early design decisions that will have a profound impact on
all software engineering work that follows and as important. On the ultimate success of
the system as an operational entity.
The architecture constitutes a relatively small, intellectually graspable model of how the
system is structured and how its components work together.
USER INTERFACE DESIGN
Interface design focuses on three areas of concern.
The design of interfaces between software components.
The design of interface between the software and other non-human producers and
consumers of information. The design of the interface between a human and the
computer.
4.2 DATA FLOW DIAGRAMS
The data flow diagram (DFD) is one of the most important modeling tools used by the
system analysis. DFD’s use a number of symbols to represents systems. There are four kinds
of symbols and are used to represent four kinds of system components namely process, data
stores, data flows and external entities. DFDs are used to illustrate how data flows and
external entities. DFDs are used to illustrate how data flows in a system.
Process Data Flow
20
External Entity Data Store
Process show what systems do. This describes how input data is converted output
data. Each process has a unique name and number. Each process has one or more inputs and
produces one or more outputs. Files or data stores are repository of data. It contains data that
is retained in the system. Process can enter data into a data or retrieve data from the data
store. Each data store has a unique name. External entities are outside the system but they
either supply input data into system or use the system output. They are entities over which the
designer has no control. External entities that supply data into system are sometimes called
source. External entities that use system data are sometimes called sinks.
Data flows model the passage of data in the system. An arrow indicates the direction
of the flow. Flows of data can be tack place between two processes from a data store to a
process from a process to a process and from a process to a sink.
For describing the system by DFD’s common way is to model the whole system by
one process, the DFD that does this is know as the context diagram. It shows the external
entities that interact with the system and the data flow between these external entities and the
system. This does not describe the system in detail. The DFD shows the major system
processes is called the top level DFD. This shows the various processes that makeup the
system; the DFD that describes the flow of physical data components between physical
operations in a system is called physical DFD.
DFDs have a number of features, which can be used to ensure that they type are self
explanatory, complete and unambiguous. The features are:
Absence of flowchart structures.
Conservation of data and
Good naming conservations
21
A good DFD should
Have no data flows that split up into a number of other data flows,
Have no crossing lines,
Not include flow chart loops of control elements and
Not include data flows that act as signals to active processes.
22
Web man
Dealer
Administrator
Supplier
Orders/Quotations Data Base
Context Diagram
23
Admin:
`
Admin/Staf
f
Products /Parts
Transaction
Dealers/Supplier
Transaction
Product/Parts Stock
Transaction
Material
Transaction
Sending Mails to
Suppliers
(Quotations)
Add/Delet
e/Modify
Material
Databases
Dealers Database
Supplier Database
Product/Parts
Database
Stock
Database
Parts Request
Database
24
Dealer login:
Supplier Login:
Dealer
Login
Product Details
Dealer Details
Sales Info
Order Products
Display of Product(s) Info
Display of Dealer(s) Info
Add Entries
Product
Database
Dealers Database
Product Database
Order Database
Supplier Login
Parts Details
Supplier Details
Parts Indets
Send Quotation
Add
Entries
Display of
Product(s) Info
Display of
Dealer(s) Info
Parts
Database
Supplier
Database
Parts Req
Database
Quotations
Database
25
Admin:
4.3 ER Diagrams
The entity relationship diagram depicts the relationship between data objects. The
ERD is the notation that is used to conduct the data modeling activity. The attributes of each
data object noted in the ERD can be described using a data object description.
At first a set primary components are identified for ERD i.e., data objects, attributes,
relationships and various type indicators. Data objects are presented by Labeled rectangle.
Relations are indicated with labeled line connecting objects. Connectors between data objects
and relationships are established using variety of special symbols that indicate cardinality and
modality. ERD notation also provides a mechanism that represents the association between
objects.
Data modeling and the entity-relationship diagram provide the analyst with a concise
notation for examining data with in the context of data processing application.
Parts Indent
Generate
Parts Req
Send Mail Product Id
Reports
Suppliers
Supplier Data
Product Data
Admin
Parts Req
26
ER Diagram:
27
4.4 UML Introduction
The Unified Modeling Language (UML) is a standard language for specifying,
visualizing, constructing, and documenting the artifacts of software systems, as well as for
business modeling and other non-software systems. The UML represents a collection of best
engineering practices that have proven successful in the modeling of large and complex
systems. The UML is a very important part of developing objects oriented software and the
software development process. The UML uses mostly graphical notations to express the
design of software projects. Using the UML helps project teams communicate, explore
potential designs, and validate the architectural design of the software.
Goals of UML:
The primary goals in the design of the UML were:
1. Provide users with a ready-to-use, expressive visual modeling language so they can
develop and exchange meaningful models.
2. Provide extensibility and specialization mechanisms to extend the core concepts.
3. Be independent of particular programming languages and development processes.
4. Provide a formal basis for understanding the modeling language.
5. Encourage the growth of the OO tools market.
6. Support higher-level development concepts such as collaborations, frameworks,
patterns and components.
7. Integrate best practices.
Why Use UML?
As the strategic value of software increases for many companies, the industry looks
for techniques to automate the production of software and to improve quality and reduce cost
and time-to-market. These techniques include component technology, visual programming,
patterns and frameworks. Businesses also seek techniques to manage the complexity of
systems as they increase in scope and scale. In particular, they recognize the need to solve
recurring architectural problems, such as physical distribution, concurrency, replication,
security, load balancing and fault tolerance. Additionally, the development for the World
Wide Web, while making some things simpler, has exacerbated these architectural problems.
The Unified Modeling Language (UML) was designed to respond to these needs.
28
Types Of UML Diagrams:
Each UML diagram is designed to let developers and customers view a software system
from a different perspective and in varying degrees of abstraction. UML diagrams commonly
created in visual modeling tools include:
Use Case Diagram:
Displays the relationship among actors and use cases. A use case is a set of scenarios
that describing an interaction between a user and a system. A use case diagram displays the
relationship among actors and use cases. The two main components of a use case diagram
are use cases and actors.
.
An actor is represents a user or another system that will interact with the system you are
modeling. A use case is an external view of the system that represents some action the user
might perform in order to complete a task. Use cases are used in almost every project. The
are helpful in exposing requirements and planning the project.
Class Diagram:
Class diagrams are widely used to describe the types of objects in a system and their
relationships. Class diagrams model class structure and contents using design elements such
as classes, packages and objects. Class diagrams describe three different perspectives when
designing a system, conceptual, specification, and implementation. These perspectives
become evident as the diagram is created and help solidify the design.
Classes are composed of three things: a name, attributes, and operations. Below is an
example of a class.
29
Class diagrams also display relationships such as containment, inheritance, associations and
others. The association relationship is the most common relationship in a class diagram. The
association shows the relationship between instances of classes. Another common
relationship in class diagrams is a generalization. A generalization is used when two classes
are similar, but have some differences.
Class diagrams are used in nearly all Object Oriented software designs. Use them to describe
the Classes of the system and their relationships to each other.
Interaction Diagrams:
Interaction diagrams model the behavior of use cases by describing the way groups of
objects interact to complete the task. The two kinds of interaction diagrams are sequence and
collaboration diagrams
Sequence Diagram:
Displays the time sequence of the objects participating in the interaction. This
consists of the vertical dimension (time) and horizontal dimension (different objects).
Sequence diagrams demonstrate the behavior of objects in a use case by describing
the objects and the messages they pass. The diagrams are read left to right and descending.
The example below shows an object of class 1 start the behavior by sending a message to an
object of class 2. Messages pass between the different objects until the object of class 1
receives the final message.
30
USECASE DIAGRAMS
a)Dealer
Loging into the system
entering the sales fig
placing orders
dealer
31
b)Administrator
c)Supplier
loging into the system
maintaing database
administrator
loging into the system
submiting quotations
supplier
SCENARIO 1:
administrative staff
32
login to the system
maintains stock
maintains quotations
maintains transactions
login to the system
maintains quotations
maintains transactions
SCENARIO 2:
SCENARIO 4:
: administrator : administrator
1: enters the login()
3: maintains the database() (Add/Delete/Modify)
33
loginlogin databasedatabase
1: enters the login()
2: verify()
3: maintains the database() (Add/Delete/Modify)
databasedatabase
34
CLASS DIAGRAM:
4.5 TABLES
PRODUCT STOCK
Attributes Constraint Data Type
Quantity Not null Number(5)
Product Id Foreign key Number(5)
Dealer Id Foreign key Number(50)
Reorder Level Not null Varchar2(50)
quotation
ratestatusdelivery date
submitquotation()
database
maintainsdatabase()verifies quotation()
transaction
Tdatequantityreorderlevel
maintaining prodtrans()
stock database
productiddealeridquantity
stockavailability()productwarranty()placingorders()
stock
quantityreorderlevel
maintains stock()
administrativestaff
companyidname
updating()deleting()adding()
supplier
supplieridsuppliernameaddress
entersalesdetails()
administrator
adminidadminname
adduser()maintainsproduct()maintainsdealer()
dealer
dealeriddealernameaddress
viewproduct()submitorder()allproducts()
login
useridpassword
verifying()
35
DEALERS
Attributes Constraints Data Type
Dealer Id Primary key Number(5)
Name Not null Varchar2(25)
Address Not null Varchar2(25)
Credit limit Not null Number(20)
Status Not null Varchar2(25)
USERS
Attributes Constraints Data type
Login Name Primary key Varchar2(20)
Password Not null Varchar2(20)
Login type Not null Varchar2(20)
36
SUPPLIER
Attributes Constraints Data type
Supplier Id Primary key Number(5)
Name Not null Varchar2(20)
Address Not null Varchar2(20)
Credit Limit Not null Varchar2(20)
Status Not null Number(25)
E-mail Not null Varchar2(10)
PRODUCTS
Attributes Constraints Data type
Product Id Primary key Number(10)
Name Not null Varchar2(20)
Description Not null Varchar2(30)
Price Not null Number(20)
Status Not null Varchar2(20)
37
5. SYSTEM TESTING
Test Case 1: Logging into the system/Logging out of the system
Input 1. Enter User Id Dealer1 and password dealer11
2. Enter User Id Dealer1 and password xyz (displays asterisks)
3. Click on ‘Logoff’ menu item
Result
1. Login successful with user Id Dealer1 and password dealer11
2. Error message ‘Invalid username and password’ displayed
3. Successful logout of the system
Condition
You should have an user id and password to logon to the system
Test Case 2: Add User
Input 1. Click on ‘Add User’ menu item
2. Fill in the user details:
User Name = Mohan
Company Id = xyz &co
Password = koppisetty (displays asterisks)
Login type = dealer
Email address = [email protected]
3. click on ‘Add User’ button
Result
1. User created with the given details and the details are
displayed with success message
2. Error message is displayed if user creation fails
Condition
Admin user only can create other users
38
Test Case 3: Modify User
Input 1. Click on ‘Modify/Delete User’ menu item
2. Enter user id: Mohan
3. Click on ‘Find User’
4. Displays the information about the user
change password and click on ‘Update User’
Password = mohan (displays asterisks)
Result
1. User record is updated with new password and the
details are displayed with success message
2. Error message is displayed if updating user details fails
Condition
1. Admin user only can modify user details except for the
password which can also be changed by user himself
2. User Id can’t be changed since it forms the primary
key
Test Case 4: Delete User
Input
1. Click on ‘Modify/Delete User’ menu item
2. Enter user id: Mohan
3. Click on ‘Find User’
4. Displays the information about the user
click on ‘Delete User’
Result
1. User record is deleted and the message indicating successful
deletion of user is displayed
2. Error message is displayed if user deletion fails
Condition
Admin user only can delete users
39
Test Case 5: View User Details
Input 1. Click on ‘View User Details’ menu item
2. Enter user id: Mohan
3. Click on ‘Find User’
Result
1. Displays the information about the user
2. Error message is displayed if users’ details display fails
Condition
Admin or user himself only can view user details
Test Case 6: Add Product
Input 1. Click on ‘Add Product’ menu item
2. Fill in the product details:
Product Id = p0015
Name = P III
Description = pentium III
Price = 550
Status = available
3. click on ‘Add Product’ button
Result
1. Product created with the given details and the details are
displayed with success message
2. Error message is displayed if pr oduct creation fails
Condition
Admin or staff only can create products
40
Test Case 7: Modify Product
Input 1. Click on ‘Modify/Delete Product’ menu item
2. Enter Product id: p0015
3. Click on ‘Find Product’
4. Displays the information about the Product
change name and click on ‘Update Product’
name = Celeron
Result
1. Product record is updated with new name and
the details are displayed with success message
2. Error message is displayed if updating Product
details fails
Condition
1. Admin/staff only can modify Product details
2. Product Id can’t be changed since it forms the
primary key
Test Case 8: Delete Product
Input 1. Click on ‘Modify/Delete Product’ menu item
2. Enter Product id: p0015
3. Click on ‘Find Product’
4. Displays the information about the Product
click on ‘Delete Product’
Result
1. Product record is deleted and the message indicating
successful deletion of Product is displayed
2. Error message is displayed if Product deletion fails
Condition
Admin or staff only can delete Products
41
Test Case 9: View Product Details
Input 1. Click on ‘View Product Details’ menu item
2. Enter product id: p0015
3. Click on ‘Find Product’
Result
1. Displays the information about the Product
2. Error message is displayed if Product details display fails
Condition
Admin or staff only can view Product details
Test Case 10: Add Dealer
Input 1. Click on ‘Add Dealer’ menu item
2. Fill in the dealer details:
Dealer Id = d0015
Name = abc dealers
Address = 52, high St.
Credit Limit = 1000
status = new dealer
3. click on ‘Add Dealer’ button
Result
1. Dealer created with the given details and the details are
displayed with success message
2. Error message is displayed if Dealer creation fails
Condition
Admin or staff only can create Dealers
42
Test Case 11: Modify Dealer
Input 1. Click on ‘Modify/Delete Dealer’ menu item
2. Enter Dealer id: d0015
3. Click on ‘Find Dealer’
4. Displays the information about the Dealer
change dealer details and click on ‘Update Dealer’
Result
1. Dealer record is updated with new details and the same are
displayed with success message
2. Error message is displayed if updating Dealer details fails
Condition
1. Admin or staff only can modify Dealer details except for the
password which can also be changed by Dealer himself
2. Dealer Id can’t be changed since it forms the primary key
Test Case 12: Delete Dealer
Input 1. Click on ‘Modify/Delete Dealer’ menu item
2. Enter Dealer id: d0015
3. Click on ‘Find Dealer’
4. Displays the information about the Dealer
click on ‘Delete Dealer’
Result
1. Dealer record is deleted and the message indicating
successful deletion of Dealer is displayed
2. Error message is displayed if Dealer deletion fails
Condition
Admin or staff only can delete Dealers
43
Test Case 13: View Dealer Details
Input 1. Click on ‘View Dealer Details’ menu item
2. Enter Dealer id: d0015
3. Click on ‘Find Dealer’
Result
1. Displays the information about the Dealer
2. Error message is displayed if Dealer details display fails
Condition
Admin, staff or the dealer himself can view Dealer details
Test Case 14: Add Supplier
Input
1. Click on ‘Add Supplier’ menu item
2. Fill in the Supplier details:
Supplier Id = s0015
Name = abc suppliers
Address = 77, North avenue.
Credit Limit = 1000
status = Local supplier
3. click on ‘Add Supplier’ button
Result
1. Supplier created with the given details and the details are
displayed with success message
2. Error message is displayed if Supplier creation fails
Condition
Admin or staff only can create Suppliers
44
Test Case 15: Modify Supplier
Input 1. Click on ‘Modify/Delete Supplier’ menu item
2. Enter Supplier id: s0015
3. Click on ‘Find Supplier’
4. Displays the information about the Supplier
change Supplier details and click on ‘Update Supplier’
Result
1. Supplier record is updated with new details and the same are
displayed with success message
2. Error message is displayed if updating Supplier details fails
Condition
1. Admin or staff only can modify Supplier details except for
the password which can also be changed by Supplier himself
2. Supplier Id can’t be changed since it forms the primary key
Test Case 16: Delete Supplier
Input 1. Click on ‘Modify/Delete Supplier’ menu item
2. Enter Supplier id: s0015
3. Click on ‘Find Supplier’
4. Displays the information about the Supplier
click on ‘Delete Supplier’
Result
1. Supplier record is deleted and the message indicating
successful deletion of Supplier is displayed
2. Error message is displayed if Supplier deletion fails
Condition
Admin or staff only can delete Suppliers
45
Test Case 17: View Supplier Details
Input 1. Click on ‘View Supplier Details’ menu item
2. Enter Supplier id: s0015
3. Click on ‘Find Supplier’
Result
1. Displays the information about the Supplier
2. Error message is displayed if Supplier details display fails
Condition
Admin, staff or the Supplier himself can view Supplier details
Test Case 18: Send requests to Suppliers for Quotations
Input 1. Click on ‘Request for Quotations’ button shown at the
bottom of the Parts Indent Report generated and displayed in
the previous test case
Result
1. A mail is sent to all suppliers requesting for quotations for
the required parts and the list of all those suppliers is displayed
2. Error message is displayed if sending of mails to suppliers
fails
Condition
Admin or staff only can send mails to suppliers
Test Case 19: Update Part stocks received from Suppliers
Input 1. Click on ‘Update Part Receipt’ menu item.
2. A date entry screen with all the parts ordered is displayed
and allows to enter the quantities received from suppliers.
3. Enter the figures and submit
Part Id = Pa001 Quantity = 100
Part Id = Pa002 Quantity = 150
Part Id = Pa003 Quantity = 200
46
Result
1. Part stocks are updated with the new quantities added to
stocks at store and a success message is displayed
2. Error message is displayed if updating fails
Condition
Admin or staff only can update the part stocks
Test Case 20: Update received stocks of Products
Input 1. Click on ‘Update Product Stocks’ menu item.
2. A date entry screen with all the products ordered for
production in production schedule is displayed and allows to
enter the quantities of receipt from production department.
3. Enter the figures and submit
Product Id = P0001 Quantity = 100
Product Id = P0002 Quantity = 150
Product Id = P0003 Quantity = 200
Result
1. Product stocks are updated with the new quantities added to
stocks at warehouse and a success message is displayed
2. Error message is displayed if updating fails
Condition
Admin or staff only can update the product stocks
Test Case 21: Submit Quotations
Input 1. Click on ‘Submit Quotations’ menu item.
2. A list of all the products and quantity required is generated
and displayed and allows the supplier to enter quote rates.
3. Key-in the rates and click on ‘Submit Quotation’ button.
Part Id = Pa001 Rate = 99.99
47
Part Id = Pa002 Rate = 199.99
Part Id = Pa003 Rate = 299.99
Result
1. Quotations are stored and a success message is displayed
2. Error message is displayed if quotation storing fails
Condition
Suppliers only can submit quotations
Test Case 22: Change Password
Input 1. Click on ‘Change Password’ menu item.
2. Enter new password and submit
User Id = Mohan
New password = nahom (displays asterisks)
Result
1. A message is displayed stating ‘Your password has been
changed. Logoff and try logging in with new password’
2. Error message is displayed if password change fails
Condition
1. All users can change their own passwords
2. Admin user can change any user’s password
48
6. SYSTEM SECURITY AND MAINTENANCE
SYSTEM SECURITY
Every program needs some ways to preserve information from its alpha to
omega. People might set username, password in such a way that the program can not be
accessed for any malicious activities or it might be set so that the program wont be changed,
if any other user who is not an authorized one tries to change the same.More over people uses
several techniques, to ensure security by giving access permissions to read only.
MAINTENANCE
Maintenance is not a part of the software development, but is an extremely
important activity in the life of a software product. Maintenance includes all the activities
after the installation software i.e. performed to keep the system optional.
There are two major forms of maintenance activities:
1. Adaptive Maintenance
2. Corrective Maintenance
For most of the systems, removing all the faults before delivery is extremely difficult,
and faults will be discovered long after the system installed. As these faults are detected, they
have to be removed. Maintenance activities related to fixing errors all fall under corrective
maintenance.
The introduction of a software system affects the work environment. This change is
environment often changes what is desired from the system. There might also be changes in
the input data, and output formats. All these require modification of software. The
maintenance activities related to such modification fall under adaptive maintenance.
7. SCREENS
49
50
51
52
53
54
55
56
8. CONCLUSION
The result of the “ PRODUCT AND SERVICE MANAGEMENT SYSTEM ” is
that it supports many authorized users and viewers with unique interface, through which the
problems are solved that occurred due to the manual maintenance of the “Product and
Service Management System” .
The “PRODUCT AND SERVICE MANAGEMENT SYSTEM” has been computed
successfully taking few different sample test cases. It is user friendly system provided with
options with best presentations which performed the desired operations.
It keeps track of the progress of storing the information and retrieval of the
information very easy and recording of the reports. The information can be retrieved by any
one inside the company depending on their rights.
Product and Service Management Sytem is wonderful solution which can handle all
the requirements of any firm. This is aimed to handle large number of customers and
providers. The details of the services which the company has to give for their customers.
57
9. BIBLIOGRAPHY
[USDP-2000] - The Unified Software Development Process (The Addison-Wesley Object
Technology Series) by Ivar Jacobson, Grady Booch & James Rumbaugh.
[UML-1998] - The Unified Modeling Language User Guide (The Addison-Wesley Object
Technology Series) by Ivar Jacobson, Grady Booch, James Rumbaugh & Jim Rumbaugh.
[SEPA–1997] - Software Engineering: A Practitioner's Approach (McGraw-Hill
Publications) by Roger S. Pressman.
[J2EE-Overview] - http://java.sun.com/j2ee/overview.html
[JS-NET] - http://developer.netscape.com/docs/manuals/communicator/jsref/contents.htm
[J2EE-Home] - http://java.sun.com/j2ee/
[J2EE-Blueprints] - http://java.sun.com/j2ee/blueprints/index.html
[J2EE-Components]-
http://java.sun.com/j2ee/blueprints/platform_technologies/component/index.html.
[MS-Access] - http://www.microsoft.com/catalog/display.asp?subid=22&site=769
[SUN-Developer] - http://developer.java.sun.com/developer/