1. 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.
.
_________________________________________________________________________________ 1
JB INSTITUTE OF COMPUTER TECHNOLOGY
2. 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
_________________________________________________________________________________ 2
JB INSTITUTE OF COMPUTER TECHNOLOGY
3. 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:
_________________________________________________________________________________ 3
JB INSTITUTE OF COMPUTER TECHNOLOGY
4. 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.
_________________________________________________________________________________ 4
JB INSTITUTE OF COMPUTER TECHNOLOGY
5. 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.
_________________________________________________________________________________ 5
JB INSTITUTE OF COMPUTER TECHNOLOGY
6. 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.
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.
_________________________________________________________________________________ 6
JB INSTITUTE OF COMPUTER TECHNOLOGY
7. Project Report Multi-Password Management System
__________________________________________________________________
_________________________________________________________________________________ 7
JB INSTITUTE OF COMPUTER TECHNOLOGY
8. 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
_________________________________________________________________________________ 8
JB INSTITUTE OF COMPUTER TECHNOLOGY
9. 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
_________________________________________________________________________________ 9
JB INSTITUTE OF COMPUTER TECHNOLOGY
10. Project Report Multi-Password Management System
__________________________________________________________________
CHAPTER-1
INTRODUCTION
_________________________________________________________________________________ 10
JB INSTITUTE OF COMPUTER TECHNOLOGY
11. 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.
_________________________________________________________________________________ 11
JB INSTITUTE OF COMPUTER TECHNOLOGY
12. 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. "
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.
_________________________________________________________________________________ 12
JB INSTITUTE OF COMPUTER TECHNOLOGY
13. Project Report Multi-Password Management System
__________________________________________________________________
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-
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.
_________________________________________________________________________________ 13
JB INSTITUTE OF COMPUTER TECHNOLOGY
14. Project Report Multi-Password Management System
__________________________________________________________________
ORGANIZATION CHART
General Manager
Assistant Manager Assistant Manager Assistant Manager
Branch Manager Branch Manager
Project Team Leaders Project Team Leaders
Project Team Members Project Team Members
_________________________________________________________________________________ 14
JB INSTITUTE OF COMPUTER TECHNOLOGY
15. 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.
_________________________________________________________________________________ 15
JB INSTITUTE OF COMPUTER TECHNOLOGY
16. 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.
_________________________________________________________________________________ 16
JB INSTITUTE OF COMPUTER TECHNOLOGY
17. 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.
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.
_________________________________________________________________________________ 17
JB INSTITUTE OF COMPUTER TECHNOLOGY
18. Project Report Multi-Password Management System
__________________________________________________________________
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
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
_________________________________________________________________________________ 18
JB INSTITUTE OF COMPUTER TECHNOLOGY
19. Project Report Multi-Password Management System
__________________________________________________________________
· 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.
· 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.
_________________________________________________________________________________ 19
JB INSTITUTE OF COMPUTER TECHNOLOGY
20. Project Report Multi-Password Management System
__________________________________________________________________
.
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
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
_________________________________________________________________________________ 20
JB INSTITUTE OF COMPUTER TECHNOLOGY
21. Project Report Multi-Password Management System
__________________________________________________________________
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.
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
_________________________________________________________________________________ 21
JB INSTITUTE OF COMPUTER TECHNOLOGY
22. Project Report Multi-Password Management System
__________________________________________________________________
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
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
_________________________________________________________________________________ 22
JB INSTITUTE OF COMPUTER TECHNOLOGY
23. Project Report Multi-Password Management System
__________________________________________________________________
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
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.
_________________________________________________________________________________ 23
JB INSTITUTE OF COMPUTER TECHNOLOGY
24. Project Report Multi-Password Management System
__________________________________________________________________
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
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.
_________________________________________________________________________________ 24
JB INSTITUTE OF COMPUTER TECHNOLOGY
25. Project Report Multi-Password Management System
__________________________________________________________________
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.
Content Description
HDD 20 GB Min
40 GB Recommended
RAM 1 GB Min
_________________________________________________________________________________ 25
JB INSTITUTE OF COMPUTER TECHNOLOGY
26. 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
_________________________________________________________________________________ 26
JB INSTITUTE OF COMPUTER TECHNOLOGY
27. 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
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.
_________________________________________________________________________________ 27
JB INSTITUTE OF COMPUTER TECHNOLOGY
28. Project Report Multi-Password Management System
__________________________________________________________________
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.
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.
_________________________________________________________________________________ 28
JB INSTITUTE OF COMPUTER TECHNOLOGY
29. Project Report Multi-Password Management System
__________________________________________________________________
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
Java byte
code
Java
Source .Class
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.
_________________________________________________________________________________ 29
JB INSTITUTE OF COMPUTER TECHNOLOGY
30. Project Report Multi-Password Management System
__________________________________________________________________
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.
COMPILING AND INTERPRETING JAVA SOURCE CODE
Source
Code
Java
Java
……….. Java
PC Compiler Interpreter
……….. Interpreter
Byte code (PC)
(Spare)
Macintosh Java
……….. Compiler Interpreter
(Macintosh)
SPARC (Platform
Compiler Indepen
………… dent)
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.
_________________________________________________________________________________ 30
JB INSTITUTE OF COMPUTER TECHNOLOGY
31. Project Report Multi-Password Management System
__________________________________________________________________
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
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.
_________________________________________________________________________________ 31
JB INSTITUTE OF COMPUTER TECHNOLOGY
32. Project Report Multi-Password Management System
__________________________________________________________________
4.2. HYPER TEXT MARKUP LANGUAGE
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:
_________________________________________________________________________________ 32
JB INSTITUTE OF COMPUTER TECHNOLOGY
33. Project Report Multi-Password Management System
__________________________________________________________________
<! -- --> Specifies comments
<A>………. </A> Creates hypertext links
<B>………. </B> Formats text as bold
<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
_________________________________________________________________________________ 33
JB INSTITUTE OF COMPUTER TECHNOLOGY
34. Project Report Multi-Password Management System
__________________________________________________________________
ADVANTAGES
• A HTML document is small and hence easy to send over the net. It is small because it
does not include formatted information.
• 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.
_________________________________________________________________________________ 34
JB INSTITUTE OF COMPUTER TECHNOLOGY
35. Project Report Multi-Password Management System
__________________________________________________________________
• 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.
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.
_________________________________________________________________________________ 35
JB INSTITUTE OF COMPUTER TECHNOLOGY
36. Project Report Multi-Password Management System
__________________________________________________________________
4.4. JDBC
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.
_________________________________________________________________________________ 36
JB INSTITUTE OF COMPUTER TECHNOLOGY
37. Project Report Multi-Password Management System
__________________________________________________________________
The JDBC application programming interface provides the facility for accessing the relational
database from the Java programming language. The API technology provides the industrial
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.
_________________________________________________________________________________ 37
JB INSTITUTE OF COMPUTER TECHNOLOGY
38. Project Report Multi-Password Management System
__________________________________________________________________
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
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)
_________________________________________________________________________________ 38
JB INSTITUTE OF COMPUTER TECHNOLOGY
39. Project Report Multi-Password Management System
__________________________________________________________________
7. Character Large Objects (CLOBs)
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
_________________________________________________________________________________ 39
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
to a local database library API. This driver converts the JDBC calls into a database specific call
_________________________________________________________________________________ 40
JB INSTITUTE OF COMPUTER TECHNOLOGY
41. Project Report Multi-Password Management System
__________________________________________________________________
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.
TYPE 3 JDBC ARCHITECTURE
_________________________________________________________________________________ 41
JB INSTITUTE OF COMPUTER TECHNOLOGY
42. Project Report Multi-Password Management System
__________________________________________________________________
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.
TYPE 4 JDBC ARCHITECTURE
_________________________________________________________________________________ 42
JB INSTITUTE OF COMPUTER TECHNOLOGY
43. Project Report Multi-Password Management System
__________________________________________________________________
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
4.5. JAVA SERVER PAGES (JSP)
_________________________________________________________________________________ 43
JB INSTITUTE OF COMPUTER TECHNOLOGY
44. Project Report Multi-Password Management System
__________________________________________________________________
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
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.
_________________________________________________________________________________ 44
JB INSTITUTE OF COMPUTER TECHNOLOGY
45. Project Report Multi-Password Management System
__________________________________________________________________
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
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
_________________________________________________________________________________ 45
JB INSTITUTE OF COMPUTER TECHNOLOGY
46. Project Report Multi-Password Management System
__________________________________________________________________
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
about the events and (iii) Information about the icon that represents our
bean.
_________________________________________________________________________________ 46
JB INSTITUTE OF COMPUTER TECHNOLOGY
47. Project Report Multi-Password Management System
__________________________________________________________________
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
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
_________________________________________________________________________________ 47
JB INSTITUTE OF COMPUTER TECHNOLOGY
48. Project Report Multi-Password Management System
__________________________________________________________________
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:
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
_________________________________________________________________________________ 48
JB INSTITUTE OF COMPUTER TECHNOLOGY
49. Project Report Multi-Password Management System
__________________________________________________________________
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
Process that transforms data flow.
Source or Destination of data
Data flow
Data Store
CONSTRUCTING A DFD:
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.
_________________________________________________________________________________ 49
JB INSTITUTE OF COMPUTER TECHNOLOGY
50. Project Report Multi-Password Management System
__________________________________________________________________
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:
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.
_________________________________________________________________________________ 50
JB INSTITUTE OF COMPUTER TECHNOLOGY
51. Project Report Multi-Password Management System
__________________________________________________________________
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:
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
_________________________________________________________________________________ 51
JB INSTITUTE OF COMPUTER TECHNOLOGY
52. Project Report Multi-Password Management System
__________________________________________________________________
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.
ZERO LEVEL DIAGRAM
Multipassword
ADMIN processs USER
FIRST LEVAL DIAGRAM
_________________________________________________________________________________ 52
JB INSTITUTE OF COMPUTER TECHNOLOGY
53. Project Report Multi-Password Management System
__________________________________________________________________
SECOND LEVAL DIAGRAM
_________________________________________________________________________________ 53
JB INSTITUTE OF COMPUTER TECHNOLOGY
54. 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
_________________________________________________________________________________ 54
JB INSTITUTE OF COMPUTER TECHNOLOGY
55. Project Report Multi-Password Management System
__________________________________________________________________
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.
Notations of E-R Diagram
Entity set
_________________________________________________________________________________ 55
JB INSTITUTE OF COMPUTER TECHNOLOGY
56. Project Report Multi-Password Management System
__________________________________________________________________
Attributes
Relationship set
Relationship
Key attributes
A
E-R Diagram
_________________________________________________________________________________ 56
JB INSTITUTE OF COMPUTER TECHNOLOGY
57. Project Report Multi-Password Management System
__________________________________________________________________
Creates
Having
Account Users
Saved
Account Details
Encription
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.
_________________________________________________________________________________ 57
JB INSTITUTE OF COMPUTER TECHNOLOGY
58. Project Report Multi-Password Management System
__________________________________________________________________
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.
Login
Encription Type
Sms Services
ADMIN
USER
Users
Account
Logout
5.2.4 SEQUANCE DIAGRAM
_________________________________________________________________________________ 58
JB INSTITUTE OF COMPUTER TECHNOLOGY
59. Project Report Multi-Password Management System
__________________________________________________________________
service Database
: USER 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 name
8: User information
9: descripted type of password information
5.2.5 CLASS DIAGRAM
_________________________________________________________________________________ 59
JB INSTITUTE OF COMPUTER TECHNOLOGY
60. Project Report Multi-Password Management System
__________________________________________________________________
tblmasteruser
tblSmsRequest
Userid(pk) : int
requestid(pk) : int
usetype : varchar
requesteddatetime : timestamp
firstname : varchar
smsmessage : varchar
mobile : varchar
mobile number : int
email : v archar
queryString : varchar
loginid : int
status : varchar
pwd : varchar
requestedpwd : v archar
add()
status : varchar
view()
update()
Add()
View()
Update()
tblSmsResponse tblUserAccount
requestid(fk) : int userid(fk) : int
responseid(pk) : int accountid(pk) : int
sms services : varchar accountname : varchar
mobileno : int accountpassword : varchar
status : varchar respEncriptiontypeid : int
status : varchar
add()
view() add()
update() view()
update()
_________________________________________________________________________________ 60
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
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
_________________________________________________________________________________ 61
JB INSTITUTE OF COMPUTER TECHNOLOGY
62. Project Report Multi-Password Management System
__________________________________________________________________
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
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
_________________________________________________________________________________ 62
JB INSTITUTE OF COMPUTER TECHNOLOGY
63. Project Report Multi-Password Management System
__________________________________________________________________
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
TABLE: ENCRIPTION TYPE
Column Data Type Allo Nulls Auto increment
Encryptionid_P INT(10) Not allowed allow
K
Encryption VARCHAR(45) Not allowed
Name
Details VARCHAR(45) Not allowed
_________________________________________________________________________________ 63
JB INSTITUTE OF COMPUTER TECHNOLOGY
64. Project Report Multi-Password Management System
__________________________________________________________________
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
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
_________________________________________________________________________________ 64
JB INSTITUTE OF COMPUTER TECHNOLOGY
65. Project Report Multi-Password Management System
__________________________________________________________________
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
Responseencrypt INT(10) Not allowed
ionid_FK
Status VARCHAR(45) Not allowed
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.
_________________________________________________________________________________ 65
JB INSTITUTE OF COMPUTER TECHNOLOGY
66. Project Report Multi-Password Management System
__________________________________________________________________
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
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.
_________________________________________________________________________________ 66
JB INSTITUTE OF COMPUTER TECHNOLOGY
67. Project Report Multi-Password Management System
__________________________________________________________________
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
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
_________________________________________________________________________________ 67
JB INSTITUTE OF COMPUTER TECHNOLOGY
68. Project Report Multi-Password Management System
__________________________________________________________________
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
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:
_________________________________________________________________________________ 68
JB INSTITUTE OF COMPUTER TECHNOLOGY
69. Project Report Multi-Password Management System
__________________________________________________________________
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.
LOGINFORM
_________________________________________________________________________________ 69
JB INSTITUTE OF COMPUTER TECHNOLOGY
70. Project Report Multi-Password Management System
__________________________________________________________________
_________________________________________________________________________________ 70
JB INSTITUTE OF COMPUTER TECHNOLOGY
71. Project Report Multi-Password Management System
__________________________________________________________________
REGISTRATION FORM
FORGOTPWD
_________________________________________________________________________________ 71
JB INSTITUTE OF COMPUTER TECHNOLOGY
72. Project Report Multi-Password Management System
__________________________________________________________________
USERHOMEPAGE
_________________________________________________________________________________ 72
JB INSTITUTE OF COMPUTER TECHNOLOGY
73. Project Report Multi-Password Management System
__________________________________________________________________
ACCOUNT
_________________________________________________________________________________ 73
JB INSTITUTE OF COMPUTER TECHNOLOGY
74. Project Report Multi-Password Management System
__________________________________________________________________
VIEWACCOUNT
_________________________________________________________________________________ 74
JB INSTITUTE OF COMPUTER TECHNOLOGY
75. Project Report Multi-Password Management System
__________________________________________________________________
DECRIPT ACCOUNT
_________________________________________________________________________________ 75
JB INSTITUTE OF COMPUTER TECHNOLOGY
76. Project Report Multi-Password Management System
__________________________________________________________________
CHAING PWD
_________________________________________________________________________________ 76
JB INSTITUTE OF COMPUTER TECHNOLOGY
77. Project Report Multi-Password Management System
__________________________________________________________________
_________________________________________________________________________________ 77
JB INSTITUTE OF COMPUTER TECHNOLOGY
78. Project Report Multi-Password Management System
__________________________________________________________________
USER PROFILE
_________________________________________________________________________________ 78
JB INSTITUTE OF COMPUTER TECHNOLOGY
79. Project Report Multi-Password Management System
__________________________________________________________________
VIEW ENCRIPTION
UPDATE ENCRIPTION
_________________________________________________________________________________ 79
JB INSTITUTE OF COMPUTER TECHNOLOGY
80. Project Report Multi-Password Management System
__________________________________________________________________
_________________________________________________________________________________ 80
JB INSTITUTE OF COMPUTER TECHNOLOGY
81. Project Report Multi-Password Management System
__________________________________________________________________
SMSREQEST
UPDATE SMS REQUEST
_________________________________________________________________________________ 81
JB INSTITUTE OF COMPUTER TECHNOLOGY
82. Project Report Multi-Password Management System
__________________________________________________________________
SMSRESPONSE
_________________________________________________________________________________ 82
JB INSTITUTE OF COMPUTER TECHNOLOGY
83. Project Report Multi-Password Management System
__________________________________________________________________
UPDATE SMS RESPONSE
_________________________________________________________________________________ 83
JB INSTITUTE OF COMPUTER TECHNOLOGY
84. Project Report Multi-Password Management System
__________________________________________________________________
ADMIN HOMEPAGE
_________________________________________________________________________________ 84
JB INSTITUTE OF COMPUTER TECHNOLOGY
85. Project Report Multi-Password Management System
__________________________________________________________________
ENCRIPTION TYPE
_________________________________________________________________________________ 85
JB INSTITUTE OF COMPUTER TECHNOLOGY
86. Project Report Multi-Password Management System
__________________________________________________________________
SMS REQUEST
_________________________________________________________________________________ 86
JB INSTITUTE OF COMPUTER TECHNOLOGY
87. Project Report Multi-Password Management System
__________________________________________________________________
_________________________________________________________________________________ 87
JB INSTITUTE OF COMPUTER TECHNOLOGY
88. Project Report Multi-Password Management System
__________________________________________________________________
SMS RESPONSE
_________________________________________________________________________________ 88
JB INSTITUTE OF COMPUTER TECHNOLOGY