Project Report Multi-Password Management System__________________________________________________________________
A
PROJECT REPORT
On
ONLINE MISSING VEHICLES TRACKING APPLICATION
FOR POLICE DEPARTMENT
Submitted in partial fulfillment of the requirements
for the award of the Degree of
MASTER OF COMPUTER APPLICATIONS
By
P.SURESH
(08P11F0033)
Under the guidance of
Sri. P. KRISHNA CHAITHANYA ,
Assistant Professor,
Dept of MCA.
.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
1
Project Report Multi-Password Management System__________________________________________________________________
DEPARTMENT OF MASTER OF COMPUTER APPLICATIONS
CHADALAWADA RAMANAMMA ENGINEERING COLLEGE(AFFILIATED TO JNTU, ANANTAPUR)
CHADALAWADA NAGAR, RENIGUNTA ROAD, TIRUPATHI-517 506
CHITTOOR (Dt), A.P, INDIA
2008-2011
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
2
Project Report Multi-Password Management System__________________________________________________________________
DEPARTMENT OF MASTER OF COMPUTER APPLICATIONS
CHADALAWADA RAMANAMMA ENGINEERING COLLEGE
TIRUPATHI – 517 506
CERTIFICATE
This is to certify that the project work entitled “MISSING PERSON APPLICATION” done by
Mr.P.SURESH, bearing hall ticket no. 08P11F0033 is a bonafied report work carried by him in partial
fulfillment for the award of the degree in Master of Computer Applications from Chadalawada
Ramanamma Engineeering College, Tirupathi during the period 2008-2011 under our supervision and
guidance.
HEAD OF THE DEPARTMENT: INTERNAL GUIDE:
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
3
Project Report Multi-Password Management System__________________________________________________________________
Smt. B.GEETHA VANI, Sri. P .KRISHNA CHAITHANYA,
Professor, Assistant Professor,
Dept of MCA, Dept of MCA,
C.R. Engineering College, C.R. Engineering College,
Tirupati - 517 506. Tirupati- 517 506.
Submitted for the viva-voce conducted on ________________
INTERNAL EXAMINER EXTERNAL EXAMINER
ACKNOWLEDGEMENT
I express my deep sense of gratitude to our beloved correspondent Dr.C.Sucharitha, for her
encouragement throughout the course.
I owe my gratitude to Principal Prof. *****************, for assisting us in the development of
the system, the personal interest he provided and unending supply of encouragement that sustained us
throughout the project.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
4
Project Report Multi-Password Management System__________________________________________________________________
I am extremely thankful to Prof. B. GeethaVani, M. Tech., (Ph.D)., Head of the Department of
Master of Computer Applications for all provisions made and for her constant encouragement
throughout the work.
I am thankful to my guide Sri.P.KRISHNACHAITHANYA, MCA Department of Master of Computer
Applications for his guidance and cooperation.
I am very grateful to Mr. MOHAN, project leader for providing me an opportunity to work in
their esteemed organization for his inspiring and expert guidance throughout the tenure of this work.
I also thankful to all staff members of Department of MCA for helping to complete this project
work by giving valuable suggestions.
All of the above I gratefully acknowledge and express my thanks to my parents who have been
instrumental for success of this project play a vital role.
The last but not least, I express my sincere thanks to all my friends who have supported me in
accomplishment of this project.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
5
Project Report Multi-Password Management System__________________________________________________________________
ABSTRACT
ONLINE MISSING VEHICLES TRACKING APPLICATION FOR POLICE
DEPARTMENT
Thousands of automobiles are lost each year in the state and thousands of
automobiles are also recovered by the Police from when they catch the culprits or
even when the culprits leave the vehicles they have stolen after they have used
them. The usual problem with the recovered vehicles reaching the actual owners is
that the vehicle need not be found in the same jurisdiction as one in which the
complaint was launched. So, when a vehicle is recovered, usually the Police try to
trace out the actual owner of the vehicle from the RTO based on the license and
chasis number. But this is a lengthy and time consuming process for the RTO to
trace out the actual owners from the records and inform back to the Police stations.
Because of these delays, vehicles that are recovered also take a long time to
actually reach their owners.
There is a need for a centralized SMS based application for the police department to query the details of the vehicle recovered by sending out an SMS. This application should allow users to capture the details of the stolen vehicles, along with the owner details and FIR details, so that when someone queries for this vehicle when found, based on the chasis number, they get the information about the actual owner as well as the Police station in which the complaint was launched.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
6
Project Report Multi-Password Management System__________________________________________________________________ The same application can also be used by the general public while buying
second hand vehicles to check if they are stolen property. This application
can also be used to check the details of any suspicious unattended vehicles,
thus encouraging the public participation in recovering the stolen vehicles.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
7
Project Report Multi-Password Management System__________________________________________________________________
CONTENTS
Page No
INTRODUCTION
1.1 INTRODUCTION TO PROJECT
1.2 ORGANIZATION PROFILE
1.3 PURPOSE OF PROJECT
SYSTEM ANALYSIS
2.1 SYSTEM DETAILS
2.2 EXISTING SYSTEM
2.3 PROPOSED SYSTEM
2.4 FEASIBILITY REPORT
2. 4.1 TECHNICAL FEASIBILITY
2.4.2 OPERATIONAL FEASIBILITY
2. 4.3 ECONOMIC FEASIBILITY
2.5 ANALYSIS MODEL
3. SYSTEM REQUIREMENTS
3.1 INTRODUCTION
3.2 SYSTEM REQUIREMENTS
3.2.1 HARDWARE REQUIREMENTS
3.2.2 SOFTWARE REQUIREMENTS
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
8
Project Report Multi-Password Management System__________________________________________________________________
4. SELECTED SOFTWARE
4.1. INTRODUCTION TO JAVA
4.2. HYPERTEXT MARK-UP LANGUAGE
4.3. JAVA SCRIPT
4.4. JDBC
4.5 JAVA SERVER PAGES (JSP)
5. SYSTEM DESIGN
5.1 INTRODUCTION
5.2 UML DIAGRAM
5.2.1 DATA FLOW DIAGRAMS
5.2.2 E-R DIAGRAMS
5.2.3 USE CASE DIAGRAMS
5.2.4 SEQUENCE DIAGRAMS
5.2.5 CLASS DIAGRAMS
5.2.6 DATA DICTIONARY
5.2.7 DATABASE TABLES
6. TESTING
SCREENS
SYSTEM SECURITY
CONCLUSION
BIBLIOGRAPHY
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
9
Project Report Multi-Password Management System__________________________________________________________________
CHAPTER-1
INTRODUCTION
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
10
Project Report Multi-Password Management System__________________________________________________________________
1.1 INTRODUCTION TO PROJECT
The main purpose of this project is to save the many number of passwords in encryption
form so that they can’t be retrieved by others. . This application not only allows the passwords to
be saved in the centralized database in an encrypted format but can also return the password
when requested in a simple encryption format as well, so that it cannot be misused by others.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
11
Project Report Multi-Password Management System__________________________________________________________________
1.2 ORGANIZATION PROFILE
Beyond Basiks is committed to understand our customers business, operational and
network challenges. Our world-class innovators, software developers and consultants develop
creative solutions to meet changing customer needs - delivering them faster and more
responsively than ever.
Basiks leadership team brings together experience across the global industry. Beyond
Basiks is dedicated to help customers creatively use technology to meet their business objectives:
* Streamline operations.
* Advance network flexibility.
* Add new services to grow revenues.
* Significantly reduce operating and capital expenditures.
* Increase profits.
The company's reputation is based on the breadth and depth of its expertise across the
technology spectrum. Basiks mission is to develop cutting edge information management
solutions that enable professionals and enterprises to maximize their information assets and
become more efficient and proactive in their constantly evolving business environment.
Integrating the advanced technologies that have come to typify our company, our solutions
enable professionals and businesses to become more competitive in an information world that is
constantly changing.
At Beyond Basiks ,Company believe that effective development requires a mixture of
marketing flair, media analysis and technical expertise. Company’s Internet solutions are driven
by one key concept - " BUSINESS LOGIC. "
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
12
Project Report Multi-Password Management System__________________________________________________________________
Company’s aim is simple : To maximize the return on your investment by promoting
increased sales of your products and reducing your business costs. As an experienced company ,
Beyond Basiks provides comprehensive solutions to the corporate and beyond.
BASIKS SPECIALIZE IN THE FOLLOWING:
COMPUTER TELEPHONY INTEGRATION
Right now, a number of businesses from a large variety of industries are running their
contact centers on our advanced call handling software. Company provide complete turnkey
solutions to companies with systems currently operating at many places. Interactive voice
response (IVR) is what powers telephone banking, movie phone, and other automated services.
CLIENT SERVER TECHNOLOGIES
Client / Server technology is the computer architecture used in almost all the automated
systems now being offered. Company bring you many years of computer and network expertise
together to form a client-oriented consulting company.
INTERNET TECHNOLOGIES
Beyond Basiks provides community and content application solutions for the Internet.
Static pages have been replaced by dynamic community and content management applications in
recent years. Adding intelligence and interactivity to a community or a business web site became
our main focus. Software Job School is a unique finishing school established to bridge the gap
between educational qualification and employability of IT Job aspirants. One of our programs
involves collaborating with various companies in the Industry to facilitate Final Semister
students to work in live projects to get a real-time exposure of the IT Industry. We realize that
this would go a long way in helping out the students in building their careers. In fact, the final
semister project stays on a student's resume for at least two years and is an important area of
discussion in all their job interviews. The Vision of Software Job School is to do it's part in
providing a bigger and qualified 'Entry Level Talent Pool' , much needed by the IT Industry, so
that corporates can cut down their entry level training costs effectively, without the normal life-
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
13
Project Report Multi-Password Management System__________________________________________________________________cycle getting affected. The mission is to achieve this by offering a Comprehensive Training
Program spanning across the Industry requirements to include People Skills, Process Orientation
and Technology Know-How and to transform an under-graduate/graduate IT Job aspirant into an
IT-Ready Professional.
ORGANIZATION CHART
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
General Manager
Assistant Manager Assistant Manager Assistant Manager
Branch Manager Branch Manager
Project Team LeadersProject Team Leaders
Project Team Members Project Team Members
14
Project Report Multi-Password Management System__________________________________________________________________
1.3 PURPOSE OF THE PROJECT
The main purpose of the project is to develop an application called Online Password
Encryption. With increase in the usage of Internet and ATM, even common citizens who are not
computer savvy are having to maintain a number of accounts and related passwords to go ahead
with their day-to-day activities. These accounts could range from email accounts, social
networking accounts, on-shopping accounts, bank accounts, on-line stocks trading accounts,
credit card accounts and many others. One issue with maintaining all these accounts is that one
has to remember a number of passwords. Quite a few people, unknowingly, either have the same
password for all the accounts or write down all the passwords on a piece of paper and carry with
them or have passwords that are very easy to remember that can be guessed easily by others, all
of which are very risky and may lead to misuse of accounts, data loss or even financial loss.
There is no proper way for a common person to save all these passwords securely and retrieve
them when required.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
15
Project Report Multi-Password Management System__________________________________________________________________
2.1 SYSTEM DETAILS
After analyzing the requirements of the task to be performed, the next step is to analyze
the problem and understand its context. The first activity in the phase is studying the existing
system and other is to understand the requirements and domain of the new system. Both the
activities are equally important, but the first activity serves as a basis of giving the functional
specifications and then successful design of the proposed system. Understanding the properties
and requirements of a new system is more difficult and requires creative thinking and
understanding of existing running system is also difficult, improper understanding of present
system can lead diversion from solution.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
16
Project Report Multi-Password Management System__________________________________________________________________
2.2EXISTING SYSTEM
With increase in the usage of Internet and ATM, even common citizens who are not computer
savvy are having to maintain a number of accounts and related passwords to go ahead with their
day-to-day activities. These accounts could range from email accounts, social networking
accounts, on-shopping accounts, bank accounts, on-line stocks trading accounts, credit card
accounts and many others. One issue with maintaining all these accounts is that one has to
remember a number of passwords.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
17
Project Report Multi-Password Management System__________________________________________________________________Quite a few people, unknowingly, either have the same password for all the accounts or write
down all the passwords on a piece of paper and carry with them or have passwords that are very
easy to remember that can be guessed easily by others, all of which are very risky and may lead
to misuse of accounts, data loss or even financial loss. There is no proper way for a common
person to save all these passwords securely and retrieve them when required.
2.3 PROPOSED SYSTEM
There is a need for a centralized web based application to allow users to save all their
passwords in a secured and encrypted format on the Internet so that they can be retrieved. This
application not only allows the passwords to be saved in the centralized database in an encrypted
format but can also return the password when requested in a simple encryption format as well, so
that it cannot be misused by others . The way it works is:
Users register along with their mobile number
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
18
Project Report Multi-Password Management System__________________________________________________________________ They save all their passwords in an encrypted form
If required even the password sent out could be encrypted
PROCESSES INVOLVED
· Access Management process for User registration
· User Account and Password details setup and maintenance Process
· Password encryption process during setup and retrieval
· Transaction logging and reporting process
· Data Archive and cleanup process
MODULES INVOLVED
· Access management Module: This module is used by users to register to the web
application.
· User Accounts setup and maintenance Module: This module allows the users to setup
their various account details and respective passwords in an encrypted format.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
19
Project Report Multi-Password Management System__________________________________________________________________
· Archiving and cleanup Module: Allows Admin users to Archive/Cleanup old data on
the system
ADVANTAGES
The project is identified by the merits of the system offered to the user. The merits of this
project are as follows
1. This module is used by users to register to the web application.
.
2. This module allows the users to setup their various account details and respective
passwords in an encrypted format.
2.4. FEASIBILITY STUDY
Preliminary investigation examine project feasibility, the likelihood the system will be
useful to the organization. The main objective of the feasibility study is to test the Technical,
Operational and Economical feasibility for adding new modules and debugging old running
system. All system is feasible if they are unlimited resources and infinite time. There are aspects
in the feasibility study portion of the preliminary investigation:
Technical Feasibility
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
20
Project Report Multi-Password Management System__________________________________________________________________Operation Feasibility
Economical Feasibility
2.4.1 TECHNICAL FEASIBILITY
The technical issue usually raised during the feasibility stage of the investigation includes
the following:
1. Does the necessary technology exist to do what is suggested?
2. Do the proposed equipments have the technical capacity to hold the data required to use
the new system?
3. Will the proposed system provide adequate response to inquiries, regardless of the
number or location of users?
4. Can the system be upgraded if developed?
5. Are there technical guarantees of accuracy, reliability, ease of access and data security?
Earlier no system existed to cater to the needs of ‘Secure Infrastructure Implementation
System’. The current system developed is technically feasible. It is a web based user interface for
audit workflow at NIC-CSD. Thus it provides an easy access to the users. The database’s
purpose is to create, establish and maintain a workflow among various entities in order to
facilitate all concerned users in their various capacities or roles. Permission to the users would be
granted based on the roles specified. Therefore, it provides the technical guarantee of accuracy,
reliability and security. The software and hard requirements for the development of this project
are not many and are already available in-house at NIC or are available as free as open source.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
21
Project Report Multi-Password Management System__________________________________________________________________The work for the project is done with the current equipment and existing software technology.
Necessary bandwidth exists for providing a fast feedback to the users irrespective of the number
of users using the system.
2.4.2 OPERATIONAL FEASIBILITY
Proposed projects are beneficial only if they can be turned out into information system. That
will meet the organization’s operating requirements. Operational feasibility aspects of the project
are to be taken as an important part of the project implementation. Some of the important issues
raised are to test the operational feasibility of a project includes the following: -
Is there sufficient support for the management from the users?
Will the system be used and work properly if it is being developed and implemented?
Will there be any resistance from the user that will undermine the possible application
benefits?
This system is targeted to be in accordance with the above-mentioned issues. Beforehand,
the management issues and user requirements have been taken into consideration. So there is no
question of resistance from the users that can undermine the possible application benefits.
The well-planned design would ensure the optimal utilization of the computer resources
and would help in the improvement of performance status.
2.4.3 ECONOMIC FEASIBILITY
A system can be developed technically and that will be used if installed must still be a
good investment for the organization. In the economical feasibility, the development cost in
creating the system is evaluated against the ultimate benefit derived from the new systems.
Financial benefits must equal or exceed the costs.
The system is economically feasible. It does not require any addition hardware or
software. Since the interface for this system is developed using the existing resources and
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
22
Project Report Multi-Password Management System__________________________________________________________________technologies available at NIC, There is nominal expenditure and economical feasibility for
certain.
2.5 ANALYSIS MODEL
The model that is basically being followed is the SOFTWARE DEVELOPMENT LIFE
CYCLE MODEL, which states that the phases are organized in a linear order. First of all the
feasibility study is done. Once that part is over the requirement analysis and project planning
begins. If system exists one then modification and addition of new module is needed, analysis of
present system can be used as basic model.
The design starts after the requirement analysis is complete and the coding begins after
the design is complete. Once the programming is completed, the testing is done. In this model
the sequence of activities performed in a software development project are:
Project Planning
Requirements Definition
Design
Development
Integration & Test
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
23
Project Report Multi-Password Management System__________________________________________________________________Installation & Acceptance
The relationship of each stage to the others can be roughly described as a
Waterfall, where the outputs from a specific stage serve as the initial inputs for the
following stage.
3.1 INTRODUCTION:
Software Requirements Specification plays an important role in creating quality software
solutions. Specification is basically a representation process. Requirements are represented in a
manner that ultimately leads to successful software implementation.
Requirements may be specified in a variety of ways. However there are some guidelines worth
following: -
• Representation format and content should be relevant to the problem
• Information contained within the specification should be nested
• Diagrams and other notational forms should be restricted in number and consistent in use.
• Representations should be revisable.
The software requirements specification is produced at the culmination of the analysis task. The
function and performance allocated to the software as a part of system engineering are refined by
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
24
Project Report Multi-Password Management System__________________________________________________________________establishing a complete information description, a detailed functional and behavioral description,
and indication of performance requirements and
Design constraints, appropriate validation criteria and other data pertinent to requirements.
3.2 SYSTEM REQUIREMENTS
Requirement Specification plays an important role to create quality software solution;
Requirements are refined and analyzed to assess the clarity.
Requirements are represented in a manner that ultimately leads to successful software
implementation. Each requirement must be consistent with the overall objective. The
development of this project deals with the following requirements:
Hardware Requirements
Software Requirements
3.2.1 HARDWARE REQUIREMENTS:
The selection of hardware is very important in the existence and proper working of any
software. In the selection of hardware, the size and the capacity requirements are also important.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
25
Project Report Multi-Password Management System__________________________________________________________________
3.2.2 SOFTWARE REQUIREMENTS:
The software requirements specification is produces at the culmination of the analysis
tasks. One of the most difficult tasks is that, the selection of the software, once system
requirement is known by determining whether a particular software package fits the
requirements.
Content Description
OS Windows XP with SP2 or Windows Vista
Database MySQL
Technologies Core Java, Advance Java, HTML,JSP, Servlet, XML
IDE MyEclipse
Browser Mozilla Firefox, IE 6., Google Chrome
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
26
Content Description
HDD 20 GB Min
40 GB Recommended
Project Report Multi-Password Management System__________________________________________________________________
4.1. INTRODUCTION TO JAVA
Initially the language was called as “oak” but it was renamed as “Java” in 1995. The
primary motivation of this language was the need for a platform-independent (i.e., architecture
neutral) language that could be used to create software to be embedded in various consumer
electronic devices.
Java is a programmer’s language.
1 Java is cohesive and consistent.
2 Except for those constraints imposed by the Internet environment, Java gives the
programmer, full control.
3 Finally, Java is to Internet programming where C was to system programming.
IMPORTANCE OF JAVA TO THE INTERNET
Java has had a profound effect on the Internet. This is because; Java expands the Universe of
objects that can move about freely in Cyberspace. In a network, two categories of objects are
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
27
Project Report Multi-Password Management System__________________________________________________________________transmitted between the Server and the Personal computer. They are: Passive information and
Dynamic active programs. The Dynamic, Self-executing programs cause serious problems in the
areas of Security and probability. But, Java addresses those concerns and by doing so, has
opened the door to an exciting new form of program
JAVA CAN BE USED TO CREATE TWO TYPES OF PROGRAMS
Applications and Applets: An application is a program that runs on our Computer under the
operating system of that computer. It is more or less like one creating using C or C++. Java’s
ability to create Applets makes it important. An Applet is an application designed to be
transmitted over the Internet and executed by a Java –compatible web browser. An applet is
actually a tiny Java program, dynamically downloaded across the network, just like an image.
But the difference is, it is an intelligent program, not just a media file. It can react to the user
input and dynamically change.
FEATURES OF JAVA SECURITY
Every time you that you download a “normal” program, you are risking a viral infection. Prior to
Java, most users did not download executable programs frequently, and those who did scan them
for viruses prior to execution. Most users still worried about the possibility of infecting their
systems with a virus. In addition, another type of malicious program exists that must be guarded
against. This type of program can gather private information, such as credit card numbers, bank
account balances, and passwords. Java answers both these concerns by providing a “firewall”
between a network application and your computer. When you use a Java-compatible Web
browser, you can safely download Java applets without fear of virus infection or malicious
intent.
PORTABILITY
For programs to be dynamically downloaded to all the various types of platforms connected to
the Internet, some means of generating portable executable code is needed .As you will see, the
same mechanism that helps ensure security also helps create portability. Indeed, Java’s solution
to these two problems is both elegant and efficient.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
28
Project Report Multi-Password Management System__________________________________________________________________THE BYTE CODE
The key that allows the Java to solve the security and portability problems is that the output of
Java compiler is Byte code. Byte code is a highly optimized set of instructions designed to be
executed by the Java run-time system, which is called the Java Virtual Machine (JVM). That is,
in its standard form, the JVM is an interpreter for byte code. Translating a Java program into byte
code helps makes it much easier to run a program in a wide variety of environments. The reason
is, once the run-time package exists for a given system, any Java program can run on it.
Although Java was designed for interpretation, there is technically nothing about Java that
prevents on-the-fly compilation of byte code into native code. Sun has just completed its Just In
Time (JIT) compiler for byte code. When the JIT compiler is a part of JVM, it compiles byte
code into executable code in real time, on a piece-by-piece, demand basis. It is not possible to
compile an entire Java program into executable code all at once, because Java performs various
run-time checks that can be done only at run time. The JIT compiles code, as it is needed, during
execution.
JAVA VIRTUAL MACHINE (JVM)
Beyond the language, there is the Java virtual machine. The Java virtual machine is an important
element of the Java technology. The virtual machine can be embedded within a web browser or
an operating system. Once a piece of Java code is loaded onto a machine, it is verified. As part of
the loading process, a class loader is invoked and does byte code verification makes sure that the
code that’s has been generated by the compiler will not corrupt the machine that it’s loaded on.
Byte code verification takes place at the end of the compilation process to make sure that is all
accurate and correct. So byte code verification is integral to the compiling and executing of Java
code.
OVERALL DESCRIPTION
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
29
Project Report Multi-Password Management System__________________________________________________________________
Picture showing the development process of JAVA Program
Java programming uses to produce byte codes and executes them. The first box indicates that the
Java source code is located in a. Java file that is processed with a Java compiler called javac. The
Java compiler produces a file called a. class file, which contains the byte code. The Class file is
then loaded across the network or loaded locally on your machine into the execution
environment is the Java virtual machine, which interprets and executes the byte code.
JAVA ARCHITECTURE
Java architecture provides a portable, robust, high performing environment for development.
Java provides portability by compiling the byte codes for the Java Virtual Machine, which is then
interpreted on each platform by the run-time environment. Java is a dynamic system, able to load
code when needed from a machine in the same room or across the planet.
COMPILATION OF CODE
When you compile the code, the Java compiler creates machine code (called byte code) for a
hypothetical machine called Java Virtual Machine (JVM). The JVM is supposed to execute the
byte code. The JVM is created for overcoming the issue of portability. The code is written and
compiled for one machine and interpreted on all machines. This machine is called Java Virtual
Machine.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
30
Source
Java byte code
Java .Class
Project Report Multi-Password Management System__________________________________________________________________ COMPILING AND INTERPRETING JAVA SOURCE CODE
During run-time the Java interpreter tricks the byte code file into thinking that it is running on a
Java Virtual Machine. In reality this could be a Intel Pentium Windows 95 or SunSARC station
running Solaris or Apple Macintosh running system and all could receive code from any
computer through Internet and run the Applets.
SIMPLE
Java was designed to be easy for the Professional programmer to learn and to use effectively. If
you are an experienced C++ programmer, learning Java will be even easier. Because Java
inherits the C/C++ syntax and many of the object oriented features of C++. Most of the
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
31
Source
Code
………..
………..
………..
…………
PC Compiler
Macintosh
Compiler
SPARC
Compiler
Java
Byte code
(Platform
Indepen
dent)
Java
Interpreter
(PC)Java
Interpreter
(Macintosh)
Java
Interpreter
(Spare)
Project Report Multi-Password Management System__________________________________________________________________confusing concepts from C++ are either left out of Java or implemented in a cleaner, more
approachable manner. In Java there are a small number of clearly defined ways to accomplish a
given task.
OBJECT-ORIENTED
Java was not designed to be source-code compatible with any other language. This allowed the
Java team the freedom to design with a blank slate. One outcome of this was a clean usable,
pragmatic approach to objects. The object model in Java is simple and easy to extend, while
simple types, such as integers, are kept as high-performance non-objects.
ROBUST
The multi-platform environment of the Web places extraordinary demands on a program,
because the program must execute reliably in a variety of systems. The ability to create robust
programs was given a high priority in the design of Java. Java is strictly typed language; it
checks your code at compile time and run time.
Java virtually eliminates the problems of memory management and deallocation, which is
completely automatic. In a well-written Java program, all run time errors can –and should –be
managed by your program.
4.2. HYPER TEXT MARKUP LANGUAGE
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
32
Project Report Multi-Password Management System__________________________________________________________________Hypertext Markup Language (HTML), the languages of the World Wide Web (WWW), allows
users to produces Web pages that include text, graphics and pointer to other Web pages
(Hyperlinks).
HTML is not a programming language but it is an application of ISO Standard 8879, SGML
(Standard Generalized Markup Language), but specialized to hypertext and adapted to the Web.
The idea behind Hypertext is that instead of reading text in rigid linear structure, we can easily
jump from one point to another point. We can navigate through the information based on our
interest and preference. A markup language is simply a series of elements, each delimited with
special characters that define how text or other items enclosed within the elements should be
displayed. Hyperlinks are underlined or emphasized works that load to other documents or some
portions of the same document.
HTML can be used to display any type of document on the host computer, which can be
geographically at a different location. It is a versatile language and can be used on any platform
or desktop.
HTML provides tags (special codes) to make the document look attractive. HTML tags are not
case-sensitive. Using graphics, fonts, different sizes, color, etc., can enhance the presentation of
the document. Anything that is not a tag is part of the document itself.
Basic HTML Tags:
<! -- --> Specifies comments
<A>………. </A> Creates hypertext links
<B>………. </B> Formats text as bold
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
33
Project Report Multi-Password Management System__________________________________________________________________<BIG>………. </BIG> Formats text in large font.
<BODY>…</BODY> Contains all tags and text in the HTML document
<CENTER>...</CENTER> Creates text
<DD>…</DD> Definition of a term
<DL>...</DL> Creates definition list
<FONT>…</FONT> Formats text with a particular font
<FORM>...</FORM> Encloses a fill-out form
<FRAME>...</FRAME> Defines a particular frame in a set of frames
<H#>…</H#> Creates headings of different levels
<HEAD>...</HEAD> Contains tags that specify information about a document
<HR>...</HR> Creates a horizontal rule
<HTML>…</HTML> Contains all other HTML tags
<META>...</META> Provides meta-information about a document
<SCRIPT>…</SCRIPT> Contains client-side or server-side script
<TABLE>…</TABLE> Creates a table
<TD>…</TD> Indicates table data in a table
<TR>…</TR> Designates a table row
<TH>…</TH> Creates a heading in a table
ADVANTAGES
A HTML document is small and hence easy to send over the net. It is small because it
does not include formatted information.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
34
Project Report Multi-Password Management System__________________________________________________________________
HTML is platform independent.
HTML tags are not case-sensitive.
4.3. JAVASCRIPT
JavaScript is a script-based programming language that was developed by Netscape
Communication Corporation. JavaScript was originally called Live Script and renamed as
JavaScript to indicate its relationship with Java. JavaScript supports the development of both
client and server components of Web-based applications. On the client side, it can be used to
write programs that are executed by a Web browser within the context of a Web page. On the
server side, it can be used to write Web server programs that can process information submitted
by a Web browser and then updates the browser’s display accordingly
Even though JavaScript supports both client and server Web programming, we prefer JavaScript
at Client side programming since most of the browsers supports it. JavaScript is almost as easy to
learn as HTML, and JavaScript statements can be included in HTML documents by enclosing
the statements between a pair of scripting tags
<SCRIPTS>... </SCRIPT>.
<SCRIPT LANGUAGE = “JavaScript”>
JavaScript statements
</SCRIPT>
Here are a few things we can do with JavaScript:
Validate the contents of a form and make calculations.
Add scrolling or changing messages to the Browser’s status line.
Animate images or rotate images that change when we move the mouse over them.
Detect the browser in use and display different content for different browsers.
Detect installed plug-ins and notify the user if a plug-in is required.
We can do much more with JavaScript, including creating entire application.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
35
Project Report Multi-Password Management System__________________________________________________________________JavaScript Vs Java
JavaScript and Java are entirely different languages. A few of the most glaring differences are:
Java applets are generally displayed in a box within the web document; JavaScript can
affect any part of the Web document itself.
While JavaScript is best suited to simple applications and adding interactive features to
Web pages; Java can be used for incredibly complex applications.
There are many other differences but the important thing to remember is that JavaScript and
Java are separate languages. They are both useful for different things; in fact they can be used
together to combine their advantages.
Advantages
JavaScript can be used for Sever-side and Client-side scripting.
It is more flexible than VBScript.
JavaScript is the default scripting languages at Client-side since all the browsers supports
it.
4.4. JDBC
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
36
Project Report Multi-Password Management System__________________________________________________________________ Java Database Connectivity or in short JDBC is a technology that enables the java
program to manipulate data stored into the database. Here is the complete tutorial on JDBC
technology.
What is JDBC?
JDBC is Java application programming interface that allows the Java programmers to
access database management system from Java code. It was developed by Java Soft, a subsidiary
of Sun Microsystems.
JDBC has four Components:
1. The JDBC API.
2. The JDBC Driver Manager.
3. The JDBC Test Suite.
4. The JDBC-ODBC Bridge.
The JDBC API.
The JDBC application programming interface provides the facility for accessing the relational
database from the Java programming language. The API technology provides the industrial
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
37
Project Report Multi-Password Management System__________________________________________________________________standard for independently connecting Java programming language and a wide range of
databases. The user not only execute the SQL statements, retrieve results, and update the data but
can also access it anywhere within a network because of it's "Write Once, Run Anywhere"
(WORA) capabilities.
Due to JDBC API technology, user can also access other tabular data sources like spreadsheets or
flat files even in the a heterogeneous environment. JDBC application programming interface is
a part of the Java platform that has included Java Standard Edition (Java SE) and the
Java Enterprise Edition (Java EE) in itself.
The JDBC API has four main interface:
The latest version of JDBC 4.0 application programming interface is divided into two packages
i-) java.sql
ii-) javax.sql.
Java SE and Java EE platforms are included in both the packages.
2. THE JDBC DRIVER MANAGER.
The JDBC Driver Manager is a very important class that defines objects which connect
Java applications to a JDBC driver. Usually Driver Manager is the backbone of the JDBC
architecture. It's very simple and small that is used to provide a means of managing the different
types of JDBC database driver running on an application. The main responsibility of JDBC
database driver is to load all the drivers found in the system properly as well as to select the
most appropriate driver from opening a connection to a database. The Driver Manager also
helps to select the most appropriate driver from the previously loaded drivers when a new open
database is connected.
3. THE JDBC TEST SUITE.
The function of JDBC driver test suite is to make ensure that the JDBC drivers will run
user's program or not . The test suite of JDBC application program interface is very useful for
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
38
Project Report Multi-Password Management System__________________________________________________________________testing a driver based on JDBC technology during testing period. It ensures the requirement of
Java Platform Enterprise Edition (J2EE).
3. THE JDBC-ODBC BRIDGE.
The JDBC-ODBC bridge, also known as JDBC type 1 driver is a database driver that utilize
the ODBC driver to connect the database. This driver translates JDBC method calls into ODBC
function calls. The Bridge implements Jdbc for any database for which an Odbc driver is
available. The Bridge is always implemented as the sun.jdbc.odbc Java package and it contains a
native library used to access ODBC.
Now we can conclude this topic: This first two component of JDBC, the JDBC API and the
JDBC Driver Manager manages to connect to the database and then build a java program that
utilizes SQL commands to communicate with any RDBMS. On the other hand, the last two
components are used to communicate with ODBC or to test web application in the
specialized environment.
JDBC ARCHITECTURE
1. Database connections
2. SQL statements
3. Result Set
4. Database metadata
5. Prepared statements
6. Binary Large Objects (BLOBs)
7. Character Large Objects (CLOBs)
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
39
Project Report Multi-Password Management System__________________________________________________________________
8. Callable statements
9. Database drivers
10. Driver manager
The JDBC API uses a Driver Manager and database-specific drivers to provide
transparent connectivity to heterogeneous databases. The JDBC driver manager ensures that the
correct driver is used to access each data source. The Driver Manager is capable of supporting
multiple concurrent drivers connected to multiple heterogeneous databases. The location of the
driver manager with respect to the JDBC drivers and the servlet is shown in Figure .
LAYERS OF THE JDBC ARCHITECTURE
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
40
Project Report Multi-Password Management System__________________________________________________________________A JDBC driver translates standard JDBC calls into a network or database protocol or into a
database library API call that facilitates communication with the database. This translation layer
provides JDBC applications with database independence. If the back-end database changes, only
the JDBC driver need be replaced with few code modifications required. There are four distinct
types of JDBC drivers.
JDBC DRIVER AND ITS TYPES
Type 1 JDBC-ODBC Bridge. Type 1 drivers act as a "bridge" between JDBC and another
database connectivity mechanism such as ODBC. The JDBC- ODBC bridge provides JDBC
access using most standard ODBC drivers. This driver is included in the Java 2 SDK within the
sun.jdbc.odbc package. In this driver the java statements are converted to jdbc statements. A
JDBC statement calls the ODBC by using the JDBC-ODBC Bridge. And finally the query is
executed by the database. This driver has serious limitation for many applications
TYPE 1 JDBC ARCHITECTURE
.
Type 2 Java to Native API. Type 2 drivers use the Java Native Interface (JNI) to make calls
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
41
Project Report Multi-Password Management System__________________________________________________________________to a local database library API. This driver converts the JDBC calls into a database specific call
for databases such as SQL, ORACLE etc. This driver communicates directly with the database
server. It requires some native code to connect to the database. Type 2 drivers are usually faster
than Type 1 drivers. Like Type 1 drivers, Type 2 drivers require native database client libraries
to be installed and configured on the client machine.
TYPE 2 JDBC ARCHITECTURE
Type 3 Java to Network Protocol Or All- Java Driver. Type 3 drivers are pure Java drivers
that use a proprietary network protocol to communicate with JDBC middleware on the server.
The middleware then translates the network protocol to database-specific function calls. Type 3
drivers are the most flexible JDBC solution because they do not require native database libraries
on the client and can connect to many different databases on the back end. Type 3 drivers can be
deployed over the Internet without client installation.
Java-------> JDBC statements------> SQL statements ------> databases.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
42
Project Report Multi-Password Management System__________________________________________________________________TYPE 3 JDBC ARCHITECTURE
Type 4 Java to Database Protocol. Type 4 drivers are pure Java drivers that implement a
proprietary database protocol (like Oracle's SQL*Net) to communicate directly with the
database. Like Type 3 drivers, they do not require native database libraries and can be deployed
over the Internet without client installation. One drawback to Type 4 drivers is that they are
database specific. Unlike Type 3 drivers, if your back-end database changes, you may save to
purchase and deploy a new Type 4 driver (some Type 4 drivers are available free of charge from
the database manufacturer). However, because Type drivers communicate directly with the
database engine rather than through middleware or a native library, they are usually the fastest
JDBC drivers available. This driver directly converts the java statements to SQL statements.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
43
Project Report Multi-Password Management System__________________________________________________________________TYPE 4 JDBC ARCHITECTURE
So, you may be asking yourself, "Which is the right type of driver for your application?" Well,
that depends on the requirements of your particular project. If you do not have the opportunity or
inclination to install and configure software on each client, you can rule out Type 1 and Type 2
drivers.
However, if the cost of Type 3 or Type 4 drivers is prohibitive, Type 1 and type 2 drivers may
become more attractive because they are usually available free of charge. Price aside, the debate
will often boil down to whether to use Type 3 or Type 4 driver for a particular application. In this
case, you may need to weigh the benefits of flexibility and interoperability against performance.
Type 3 drivers offer your application the ability to transparently access different types of
databases, while Type 4 drivers usually exhibit better performance and, like Type 1 and Type 2
drivers, may be available free if charge from the database manufacturer
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
44
Project Report Multi-Password Management System__________________________________________________________________4.5. JAVA SERVER PAGES (JSP)
Java server Pages is a simple, yet powerful technology for creating and maintaining
dynamic-content web pages. Based on the Java programming language, Java Server Pages offers
proven portability, open standards, and a mature re-usable component model. The Java Server
Pages architecture enables the separation of content generation from content presentation. This
separation not eases maintenance headaches; it also allows web team members to focus on their
areas of expertise. Now, web page designer can concentrate on layout, and web application
designers on programming, with minimal concern about impacting each other’s work.
FEATURES OF JSP
Portability:
Java Server Pages files can be run on any web server or web-enabled application server that
provides support for them. Dubbed the JSP engine, this support involves recognition, translation,
and management of the Java Server Page lifecycle and its interaction components.
Components
It was mentioned earlier that the Java Server Pages architecture can include reusable Java
components. The architecture also allows for the embedding of a scripting language directly into
the Java Server Pages file. The components current supported include Java Beans, and Servlets.
Processing
A Java Server Pages file is essentially an HTML document with JSP scripting or tags. The Java
Server Pages file has a JSP extension to the server as a Java Server Pages file. Before the page is
served, the Java Server Pages syntax is parsed and processed into a Servlet on the server side.
The Servlet that is generated outputs real content in straight HTML for responding to the client.
Access Models:
A Java Server Pages file may be accessed in at least two different ways. A client’s request comes
directly into a Java Server Page. In this scenario, suppose the page accesses reusable Java Bean
components that perform particular well-defined computations like accessing a database. The
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
45
Project Report Multi-Password Management System__________________________________________________________________result of the Beans computations, called result sets is stored within the Bean as properties. The
page uses such Beans to generate dynamic content and present it back to the client.
In both of the above cases, the page could also contain any valid Java code. Java Server Pages
architecture encourages separation of content from presentation.
Steps in the execution of a JSP Application:
1. The client sends a request to the web server for a JSP file by giving the name of the
JSP file within the form tag of a HTML page.
2. This request is transferred to the JavaWebServer. At the server side JavaWebServer
receives the request and if it is a request for a jsp file server gives this request to the
JSP engine.
3. JSP engine is program which can understand the tags of the jsp and then it converts
those tags into a Servlet program and it is stored at the server side. This Servlet is loaded in the
memory and then it is executed and the result is given back to the JavaWebServer and then it is
transferred back to the result is given back to the JavaWebServer and then it is transferred back
to the client.
JAVA BEANS:
We can assemble a computer or fan very easily by choosing different components manufactured
by different vendors. We can take a screw from company one and use it to fit the Mother board
to cabinet as they are manufactured according to a standard. Observing to this point to simplify
the process of developing software, different software companies has proposed different
component technologies. Ex: java soft java bean component tech, EJB component tech,
Microsoft COM, BONOBO component model. Java Bean and EJB are two different
specifications from java soft. EJB can be used to implement business logic on the server side.
Most of the developers uses to assume Java Bean components are for developing GUI
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
46
Project Report Multi-Password Management System__________________________________________________________________components and they can be used only on the client side but we can develop any kind of software
using Java Bean standard (GUI/ non GUI). Java Bean can be used either on the client side or on
the server side. AWT, JFC components are implemented according to Java Bean standard.
According to Java Bean standard a Bean component can support a set of properties, set of events,
any number of additional methods. A property can be read-write or it can be just read only
property. For read write property we need to provide setXXX and getXXX methods (isXXX if
the property is Boolean )
To support the following properties (i) uname (ii) email (iii) age according to Java bean standard
we need to write the code as,
public class UserBean {String uname;
String email;
int age;
public void setUsername( String value ) {uname = value; }
public void setEmail( String value ) { email = value; }
public void setAge( int value ) { age = value; }
public String getUsername() { return uname; }
public String getEmail() { return email; }
public int getAge() { return age; }
}
Java Beans like JButton supports the events by providing the methods with
naming patterns (i) addXXXListener (ii) removeXXXListener
Apart from developing Java bean class we can also provide BeanInfo class.
In this class we can provide (i) Information about properties (ii) Information
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
47
Project Report Multi-Password Management System__________________________________________________________________about the events and (iii) Information about the icon that represents our
bean.
5.1 INTRODUCTION
Software design sits at the technical kernel of the software engineering process and is applied
regardless of the development paradigm and area of application. Design is the first step in the
development phase for any engineered product or system. The designer’s goal is to produce a
model or representation of an entity that will later be built. Beginning, once system requirement
have been specified and analyzed, system design is the first of the three technical activities -
design, code and test that is required to build and verify software.
The importance can be stated with a single word “Quality”. Design is the place where
quality is fostered in software development. Design provides us with representations of software
that can assess for quality. Design is the only way that we can accurately translate a customer’s
view into a finished software product or system. Software design serves as a foundation for all
the software engineering steps that follow. Without a strong design we risk building an unstable
system – one that will be difficult to test, one whose quality cannot be assessed until the last
stage.
During design, progressive refinement of data structure, program structure, and
procedural details are developed reviewed and documented. System design can be viewed from
either technical or project management perspective. From the technical point of view, design is
comprised of four activities – architectural design, data structure design, interface design and
procedural design.
5.2 UML DIAGRAMS
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
48
Project Report Multi-Password Management System__________________________________________________________________ 5.2.1 DATA FLOW DIAGRAMS:
A data flow diagram is graphical tool used to describe and analyze movement of data
through a system. These are the central tool and the basis from which the other components are
developed. The transformation of data from input to output, through processed, may be
described logically and independently of physical components associated with the system. These
are known as the logical data flow diagrams. The physical data flow diagrams show the actual
implements and movement of data between people, departments and workstations. A full
description of a system actually consists of a set of data flow diagrams. Using two familiar
notations Yourdon, Gane and Sarson notation develops the data flow diagrams. Each component
in a DFD is labeled with a descriptive name. Process is further identified with a number that will
be used for identification purpose. The development of DFD’s is done in several levels. Each
process in lower level diagrams can be broken down into a more detailed DFD in the next level.
The lop-level diagram is often called context diagram. It consists a single process bit, which
plays vital role in studying the current system. The process in the context level diagram is
exploded into other process at the first level DFD.
The idea behind the explosion of a process into more process is that understanding at one
level of detail is exploded into greater detail at the next level. This is done until further
explosion is necessary and an adequate amount of detail is described for analyst to understand
the process.
Larry Constantine first developed the DFD as a way of expressing system requirements
in a graphical from, this lead to the modular design.
A DFD is also known as a “bubble Chart” has the purpose of clarifying system
requirements and identifying major transformations that will become programs in system design.
So it is the starting point of the design to the lowest level of detail. A DFD consists of a series of
bubbles joined by data flows in the system.
DFD SYMBOLS:
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
49
Project Report Multi-Password Management System__________________________________________________________________
In the DFD, there are four symbols
1. A square defines a source(originator) or destination of system data
2. An arrow identifies data flow. It is the pipeline through which the information flows
3. A circle or a bubble represents a process that transforms incoming data flow into outgoing
data flows.
4. An open rectangle is a data store, data at rest or a temporary repository of data
Data flow
Data Store
CONSTRUCTING A DFD:
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
50
Process that transforms data flow.
Source or Destination of data
Project Report Multi-Password Management System__________________________________________________________________
Several rules of thumb are used in drawing DFD’s:
1. Process should be named and numbered for an easy reference. Each name should be
representative of the process.
2. The direction of flow is from top to bottom and from left to right. Data traditionally flow
from source to the destination although they may flow back to the source. One way to
indicate this is to draw long flow line back to a source. An alternative way is to repeat the
source symbol as a destination. Since it is used more than once in the DFD it is marked with
a short diagonal.
3. When a process is exploded into lower level details, they are numbered.
4. The names of data stores and destinations are written in capital letters. Process and dataflow
names have the first letter of each work capitalized
A DFD typically shows the minimum contents of data store. Each data store should contain
all the data elements that flow in and out.
Questionnaires should contain all the data elements that flow in and out. Missing interfaces
redundancies and like is then accounted for often through interviews.
SAILENT FEATURES OF DFD’s:
1. The DFD shows flow of data, not of control loops and decision are controlled
considerations do not appear on a DFD.
2. The DFD does not indicate the time factor involved in any process whether the
dataflow take place daily, weekly, monthly or yearly.
3. The sequence of events is not brought out on the DFD.
RULES FOR DFD:
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
51
Project Report Multi-Password Management System__________________________________________________________________
Fix the scope of the system by means of context diagrams.
Organize the DFD so that the main sequence of the actions reads left to right and
Top to bottom.
Identify all inputs and outputs.
Identify and label each process internal to the system with rounded circles.
A process is required for all the data transformation and transfers. Therefore,
never connect a data store to a data source or the destinations or another data store with just a data flow arrow.
Do not indicate hardware and ignore control information.Make sure the names of the processes accurately convey everything the process is done.
There must not be unnamed process.
Indicate external sources and destinations of the data, with squares.
Number each occurrence of repeated external entities.
Identify all data flows for each process step, except simple Record retrievals.
Label data flow on each arrow.
Use details flow on each arrow.
Use the details flow arrow to indicate data movements.
There can’t be unnamed data flow.
A data flow can’t connect two external entities.
LEVELS OF DFD:
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
52
Project Report Multi-Password Management System__________________________________________________________________
The complexity of the business system means that it is a responsible to represent the
operations of any system of single data flow diagram. At the top level, an Overview of the
different systems in an organization is shown by the way of context analysis diagram. When
exploded into DFD
They are represented by:
LEVEL-0 : SYSTEM INPUT/OUTPUT
LEVEL-1:SUBSYSTEM LEVEL DATAFLOW FUNCTIONAL
LEVEL-2 : FILE LEVEL DETAIL DATA FLOW.
The input and output data shown should be consistent from one level to the next.
LEVEL-0: SYSTEM INPUT/OUTPUT LEVEL
A level-0 DFD describes the system-wide boundaries, dealing inputs to and outputs from
the system and major processes. This diagram is similar to the combined user-level context
diagram.
LEVEL-1: SUBSYSTEM LEVEL DATA FLOW
A level-1 DFD describes the next level of details within the system, detailing the data
flows between subsystems, which makeup the whole.
LEVEL-2: FILE LEVEL DETAIL DATA FLOW
All the projects are feasible given unlimited resources and infinite time. It is both
necessary and prudent to evaluate the feasibility of the project at the earliest possible time.
Feasibility and the risk analysis are pertained in many ways. If project risk is great.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
53
Project Report Multi-Password Management System__________________________________________________________________ZERO LEVEL DIAGRAM
FIRST LEVAL DIAGRAM
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
54
Multipassword processs USERADMIN
Project Report Multi-Password Management System__________________________________________________________________
SECOND LEVAL DIAGRAM
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
55
Project Report Multi-Password Management System__________________________________________________________________5.2.2 E-R DIAGRAMS:
Entity-Relationship Modeling
E-R data model is a high level conceptual model that describes data as entities, attributes
and relationship. The data modeling process is iterative. E-R diagrams enable designers and
users to express their understanding of what the planned database is intended to do and how it
might work, and to communicate about the database through a common language.
Entity Classes and Attributes:
Entity class is represented by rectangles.
Attributes are represented by ovals.
Key attributes is represented by an underline.
Multi- value attribute is represented with an oval with a double border.
Derived attribute is represented with an oval dashed border.
Composite attribute is represented with an oval that connects to additional ovals.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
56
Project Report Multi-Password Management System__________________________________________________________________
Notations of E-R Diagram
Entity set
Attributes
Relationship set
Relationship
Key attributes
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
57
A
Project Report Multi-Password Management System__________________________________________________________________
E-R Diagram
Creates
Having
Saved
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
58
Account Users
Account Details
Encription
Project Report Multi-Password Management System__________________________________________________________________
5.2.3 USE CASE DIAGRAM
Use cases model the system from the end users point of view, with the following objectives
To define the functional and operational requirements of the system by
defining a scenario of usage.
To provide a class and unambiguous description of how the end user and the
system interact with one another.
To provide a basis for validation testing.
Sms Services
Encription Type
ADMIN
Users
Login
Account
USER
Logout
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
59
Project Report Multi-Password Management System__________________________________________________________________
5.2.4 SEQUANCE DIAGRAM
: USER
service Database
1: Request to register
2: Open Registration form
3: Enter Details 4: Stores Registration infm in Encripted format
5: Request to check his password
6: Open password checking form
7: Enter the user name8: User information
9: descripted type of password information
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
60
Project Report Multi-Password Management System__________________________________________________________________
5.2.5 CLASS DIAGRAM
tblUserAccount
userid(fk) : intaccountid(pk) : intaccountname : varcharaccountpassword : varcharrespEncriptiontypeid : intstatus : varchar
add()view()update()
tblmasteruser
Userid(pk) : intusetype : varcharfirstname : varcharmobile : varcharemail : varcharloginid : intpwd : varcharrequestedpwd : varcharstatus : varchar
Add()View()Update()
tblSmsResponse
requestid(fk) : intresponseid(pk) : intsms services : varcharmobileno : intstatus : varchar
add()view()update()
tblSmsRequest
requestid(pk) : intrequesteddatetime : timestampsmsmessage : varcharmobile number : intqueryString : varcharstatus : varchar
add()view()update()
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
61
Project Report Multi-Password Management System__________________________________________________________________
5.2.6 DATA DICTIONARY
SNO FIELD NAME DATA TYPE LENGTH DESCRIPTION
1 USERID INTEGER 10 PRIMARY KEY
2 LOGIN ID VARCHAR 45
3 PASSWORD VARCHAR 45
4 USER TYPE VARCHAR 45
5 STATUS VARCHAR 45
6 FIRSTNAME VARCHAR 45
7 LASTNAME VARCHAR 45
8 PHONE INTEGER 10
9 MOBILE INTEGER 10
10 ADRESS VARCHAR 45
11 EMAIL VARCHAR 45
12 REQUESTED PWD VARCHAR 45
13 ENCRIPTION ID INTEGER 10 PRIMARY KEY
14 ENCRIPTION NAME VARCHAR 45
15 DETAILS VARCHAR 45
16 REQESTED ID INTEGER 10 PRIMARY KEY
17 REQUESTED TIME TIME STAMP
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
62
Project Report Multi-Password Management System__________________________________________________________________18 MESSAGE VARCHAR 45
19 MOBILE INTEGER 10
20 QUERY STRING VARCHAR 45
21 PASSWORD VARCHAR 45
22 RESPONSE ID INTEGER 10 PRIMARY KEY
22 REQUESTID INTEGER 10 FOREIGN KEY
23 RESPONSEDATE&TIME TIMESTAMP
24 SMS MESSAGE VARCHAR 45
25 MOBILENUMBER INTEGER 10
26 ACCONT ID INTEGER 10 PRIMARY KEY
27 ACCOUNT NAME VARCHAR 45
28 ACCOUNTPWD VARCHAR 45
29 USERID INTEGER 10 FOREIGN KEY
30 ENCRIPTIONID INTEGER 10 FOREIGN KEY
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
63
Project Report Multi-Password Management System__________________________________________________________________5.2.7 DATABASE TABLE
TABLE: LOGIN
Column Data Type Allo Nulls Auto increment
Userid_pk INT(10) Not allowed allow
Username VARCHAR(45) Not allowed
Password VARCHAR(45) Not allowed
TABLE: MASTERUSERS
Column Data Type Allo Nulls Auto increment
Userid_pk INT(10) Not allowed allow
Username VARCHAR(45) Not allowed
First Name VARCHAR(45) Not allowed
Last Name VARCHAR(45) Not allowed
Phone INT(10) Not allowed
Mobile1 INT(10) Not allowed
Mobile2 INT(10) Not allowed
Mobile3 INT(10) Not allowed
E-Mail VARCHAR(45) Not allowed
Login ID VARCHAR(45) Not allowed
Password VARCHAR(45) Not allowed
Status VARCHAR(45) Not allowed
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
64
Project Report Multi-Password Management System__________________________________________________________________
TABLE: ENCRIPTION TYPE
Column Data Type Allo Nulls Auto increment
Encryptionid_PK INT(10) Not allowed allow
Encryption Name
VARCHAR(45) Not allowed
Details VARCHAR(45) Not allowed
Status VARCHAR(45) Not allowed
TABLE: SMS REQUEST
Column Data Type Allo Nulls Auto increment
requestid_pk INT(10) Not allowed allow
Requestdatetime TimeStamp Not allowed
Smsmessage_pk VARCHAR(45) Not allowed
Mobilenumber INT(10) Not allowed
Quertstring VARCHAR(45) Not allowed
RequestPassword VARCHAR(45) Not allowed
Status VARCHAR(45) Not allowed
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
65
Project Report Multi-Password Management System__________________________________________________________________
TABLE: SMS RESPONSE
Column Data Type Allo Nulls Auto increment
responseid INT(10) Not allowed allow
Requestid_FK INT(10) Not allowed
Responsedatetime TimeStamp Not allowed
Smsmessage VARCHAR(45) Not allowed
Mobilenumber INT(10) Not allowed
Status VARCHAR(45) Not allowed
TABLE: USER ACCONT
Column Data Type Allo Nulls Auto increment
accountid INT(10) Not allowed allow
userid_FK INT(10) Not allowed
accountname VARCHAR(45) Not allowed
accountpassword VARCHAR(45) Not allowed
Responseencryptionid_FK
INT(10) Not allowed
Status VARCHAR(45) Not allowed
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
66
Project Report Multi-Password Management System__________________________________________________________________
INTRODUCTION
Testing is one of the most important phases in the software development activity. In
software development life cycle (SDLC), the main aim of testing process is the quality; the
developed software is tested against attaining the required functionality and performance.
During the testing process the software is worked with some particular test cases and the
output of the test cases are analyzed whether the software is working according to the
expectations or not.
The success of the testing process in determining the errors is mostly depends upon the test
case criteria, for testing any software we need to have a description of the expected behavior of
the system and method of determining whether the observed behavior confirmed to the expected
behavior
LEVELS OF TESTING
Since the errors in the software can be injured at any stage. So, we have to carry out the
testing process at different levels during the development. The basic levels of testing are Unit,
Integration, System and Acceptance Testing.
The Unit Testing is carried out on coding. Here different modules are tested against the
specifications produced during design for the modules. In case of integration testing different
tested modules are combined into sub systems and tested in case of the system testing the full
software is tested and in the next level of testing the system is tested with user requirement
document prepared during SRS.
There are two basic approaches for testing. They are
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
67
Project Report Multi-Password Management System__________________________________________________________________
FUNCTIONAL TESTING:
In Functional Testing test cases are decided solely on the basis of requirements of the
program or module and the internals of the program or modules are not considered for selection
of test cases. This is also called Black Box Testing
STRUCTURAL TESTING:
In Structural Testing test cases are generated on actual code of the program or module to
be tested. This is called White Box Testing.
TESTING PROCESS
A number of activities must be performed for testing software. Testing starts with test
plan. Test plan identifies all testing related activities that need to be performed along with the
schedule and guide lines for testing. The plan also specifies the levels of testing that need to be
done, by identifying the different testing units. For each unit specified in the plan first the test
cases and reports are produced. These reports are analyzed.
TEST PLAN:
Test plan is a general document for entire project, which defines the scope,
approach to be taken and the personal responsible for different activities of testing. The
inputs for forming test plans are
Project plan
Requirements document
System design
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
68
Project Report Multi-Password Management System__________________________________________________________________
TEST CASE SPECIFICATION:
Although there is one test plan for entire project test cases have to be specified separately
for each test case. Test case specification gives for each item to be tested. All test cases and
outputs expected for those test cases.
TEST CASE EXECUTION AND ANALYSIS:
The steps to be performed for executing the test cases are specified in separate document
called test procedure specification. This document specify any specify requirements that exist
for setting the test environment and describes the methods and formats for reporting the
results of testing.
UNIT TESTING:
Unit testing mainly focused first in the smallest and low level modules, proceeding one at
a time. Bottom-up testing was performed on each module. As developing a driver program,
that tests modules by developed or used. But for the purpose of testing, modules themselves
were used as stubs, to print verification of the actions performed. After the lower level
modules were tested, the modules that in the next higher level those make use of the lower
modules were tested. Each module was tested against required functionally and test cases
were developed to test the boundary values.
INTEGRATING TESTING
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
69
Project Report Multi-Password Management System__________________________________________________________________
Integration testing is a systematic technique for constructing the program
structure, while at the same time conducting tests to uncover errors associated with
interfacing. As the system consists of the number of modules the interfaces to be tested were
between the edges of the two modules. The software tested under this was incremental
bottom-up approach.
Bottom-up approach integration strategy was implemented with the following steps.
1. Low level modules were combined into clusters that perform specific software sub
functions.
2. The clusters were then tested.
SYSTEM TESTING:
System testing is a series of different tests whose primary purpose is to fully exercise the
computer-based system. It also tests to find discrepancies between the system and its original
objective, current specifications.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
70
Project Report Multi-Password Management System__________________________________________________________________
LOGINFORM
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
71
Project Report Multi-Password Management System__________________________________________________________________
REGISTRATION FORM
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
72
Project Report Multi-Password Management System__________________________________________________________________
FORGOTPWD
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
73
Project Report Multi-Password Management System__________________________________________________________________
USERHOMEPAGE
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
74
Project Report Multi-Password Management System__________________________________________________________________
ACCOUNT
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
75
Project Report Multi-Password Management System__________________________________________________________________
VIEWACCOUNT
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
76
Project Report Multi-Password Management System__________________________________________________________________
DECRIPT ACCOUNT
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
77
Project Report Multi-Password Management System__________________________________________________________________
CHAING PWD
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
78
Project Report Multi-Password Management System__________________________________________________________________
USER PROFILE
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
79
Project Report Multi-Password Management System__________________________________________________________________
VIEW ENCRIPTION
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
80
Project Report Multi-Password Management System__________________________________________________________________
UPDATE ENCRIPTION
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
81
Project Report Multi-Password Management System__________________________________________________________________
SMSREQEST
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
82
Project Report Multi-Password Management System__________________________________________________________________
UPDATE SMS REQUEST
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
83
Project Report Multi-Password Management System__________________________________________________________________
SMSRESPONSE
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
84
Project Report Multi-Password Management System__________________________________________________________________
UPDATE SMS RESPONSE
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
85
Project Report Multi-Password Management System__________________________________________________________________
ADMIN HOMEPAGE
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
86
Project Report Multi-Password Management System__________________________________________________________________
ENCRIPTION TYPE
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
87
Project Report Multi-Password Management System__________________________________________________________________
SMS REQUEST
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
88
Project Report Multi-Password Management System__________________________________________________________________
SMS RESPONSE
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
89
Project Report Multi-Password Management System__________________________________________________________________
USERS
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
90
Project Report Multi-Password Management System__________________________________________________________________
UPDATEUSERS
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
91
Project Report Multi-Password Management System__________________________________________________________________
INTRODUCTION
The protection of computer based resources that includes hardware, software, data, procedures
and people against unauthorized use or natural
Disaster is known as System Security.
System Security can be divided into four related issues:
Security
Integrity
Privacy
Confidentiality
SYSTEM SECURITY refers to the technical innovations and procedures applied to the
hardware and operation systems to protect against deliberate or accidental damage from a
defined threat.
DATA SECURITY is the protection of data from loss, disclosure, modification and destruction.
SYSTEM INTEGRITY refers to the power functioning of hardware and programs, appropriate
physical security and safety against external threats such as eavesdropping and wiretapping.
PRIVACY defines the rights of the user or organizations to determine what information they are
willing to share with or accept from others and how the organization can be protected against
unwelcome, unfair or excessive dissemination of information about it.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
92
Project Report Multi-Password Management System__________________________________________________________________CONFIDENTIALITY is a special status given to sensitive information in a database to
minimize the possible invasion of privacy. It is an attribute of information that characterizes its
need for protection.
SECURITY IN SOFTWARE
System security refers to various validations on data in form of checks and controls to avoid the
system from failing. It is always important to ensure that only valid data is entered and only valid
operations are performed on the system. The system employees two types of checks and
controls:
CLIENT SIDE VALIDATION
Various client side validations are used to ensure on the client side that only valid data is entered.
Client side validation saves server time and load to handle invalid data. Some checks imposed
are:
JavaScript in used to ensure those required fields are filled with suitable data only. Maximum
lengths of the fields of the forms are appropriately defined.
Forms cannot be submitted without filling up the mandatory data so that manual mistakes of
submitting empty fields that are mandatory can be sorted out at the client side to save the server
time and load.
Tab-indexes are set according to the need and taking into account the ease of user while
working with the system.
SERVER SIDE VALIDATION
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
93
Project Report Multi-Password Management System__________________________________________________________________
Some checks cannot be applied at client side. Server side checks are necessary to save the system
from failing and intimating the user that some invalid operation has been performed or the
performed operation is restricted. Some of the server side checks imposed is:
Server side constraint has been imposed to check for the validity of primary key and foreign key.
A primary key value cannot be duplicated. Any attempt to duplicate the primary value results
into a message intimating the user about those values through the forms using foreign key can be
updated only of the existing foreign key values.
1.User is intimating through appropriate messages about the successful operations or exceptions
occurring at server side.
2.Various Access Control Mechanisms have been built so that one user may not agitate upon
another. Access permissions to various types of users are controlled according to the
organizational structure. Only permitted users can log on to the system and can have access
according to their category. User- name, passwords and permissions are controlled o the server
side.
3.Using server side validation, constraints on several restricted operations are imposed.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
94
Project Report Multi-Password Management System__________________________________________________________________
CONCLUSION
It has been a great pleasure for me to work on this exciting and challenging project.
This project proved good for me as it provided practical knowledge of not only
programming in JAVA and Servelets web based application and no some extent
Windows Application will be great demand in future. This will provide better
opportunities and guidance in future in developing projects independently and
TOMCAT Server, but also about all handling procedure related with “Online
Password Encryption s”. It also provides knowledge about the latest
technology used in developing web enabled application and client server
technology that will be great demand in future. This will provide better
opportunities and guidance in future in developing projects independently.
BENEFITS:
The project is identified by the merits of the system offered to the user. The merits of this
project are as follows: -
4. It’s a web-enabled project.
5. This project offers user to enter the data through simple and interactive forms. This is very
helpful for the client to enter the desired information through so much simplicity.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
95
Project Report Multi-Password Management System__________________________________________________________________6. The user is mainly more concerned about the validity of the data, whatever he is entering.
There are checks on every stages of any new creation, data entry or updation so that the user
cannot enter the invalid data, which can create problems at later date.
7. Sometimes the user finds in the later stages of using project that he needs to update some of
the information that he entered earlier. There are options for him by which he can update the
records. Moreover there is restriction for his that he cannot change the primary data field.
This keeps the validity of the data to longer extent.
8. User is provided the option of monitoring the records he entered earlier. He can see the
desired records with the variety of options provided by him.
9. From every part of the project the user is provided with the links through framing so that he
can go from one option of the project to other as per the requirement. This is bound to be
simple and very friendly as per the user is concerned. That is, we can sat that the project is
user friendly which is one of the primary concerns of any good project.
10. Data storage and retrieval will become faster and easier to maintain because data is stored in
a systematic manner and in a single database.
11. Decision making process would be greatly enhanced because of faster processing of
information since data collection from information available on computer takes much less
time then manual system.
12. Allocating of sample results becomes much faster because at a time the user can see the
records of last years.
13. Easier and faster data transfer through latest technology associated with the computer and
communication.
14. Through these features it will increase the efficiency, accuracy and transparency,
LIMITATIONS:
The size of the database increases day-by-day, increasing the load on the database back up and
data maintenance activity.
Training for simple computer operations is necessary for the users working on the system.
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
96
Project Report Multi-Password Management System__________________________________________________________________
BIBLIOGRAPHY
References for the Projec t Deve lopment were taken from the fo l lowing
Books and Web S i tes .
MySQL
PL/SQL Programming by Scott Urman
SQL complete reference by Livion
JAVA Technologies
JAVA Complete Reference
Java Script Programming by Yehuda Shiran
JAVA Security by Scotl oaks
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
97
Project Report Multi-Password Management System__________________________________________________________________J2EE Professional by Shadab Siddiqui
JAVA server pages by Larne Pekowsley
JAVA Server pages by Nick Todd
HTML
HTML Black Book by Holzner
JDBC
Java Database Programming with JDBC by Patel moss.
Software Engineering by Roger Pressman
Servelets :
For servelets Complete Reference & www.roseindia.net
_________________________________________________________________________________JB INSTITUTE OF COMPUTER TECHNOLOGY
98