Practical Training Report: Master of Computer Application
Practical Training Report: Master of Computer Application
Practical Training Report: Master of Computer Application
COMPLETION OF DEGREE
BY
Name
Roll No-
SUBMITTED TO
Keep away from people who try to belittle your ambitions. Small people always do that, but the
really great make you feel that you too, can become great.
I take this opportunity to express my sincere thanks and deep gratitude to all those people who
extended their wholehearted co-operation and have helped me in completing this project successfully.
First of all, I would like to thank Mr. Nitin, Director (GNIX Infosoft) for creating opportunities
to undertake me in the esteemed organization.
Special thanks to Mr. Shikhar Kumar Project Manager for all the help and guidance extended to
me by him in every stage during my training. His inspiring suggestions and timely guidance enabled me to
perceive the various aspects of the project in a new light.
I am highly indebted and graceful to Mr. Prabhat kumar(Project Leader) and Mr.Hasan
(Team Leader) for Their strict supervision, constant encouragement, inspiration and guidance, which
ensure the worthiness of my work. Working under them was an enrich experience. I express my sincere
thanks to my senior of software development department for their encouragement and valuable
suggestion
I would also thank to my Mr.------, HOD (MCA Dept.) & my internal project guide Mr. -------
who guided me a lot in completing this project.I would also like to thank my parents & project mate for
guiding and encouraging me throughout the duration of the project.
In all I found a congenial work environment in GNIXInfosoft and this completion of the project
will mark a new beginning for me in the coming days.
Name
MCA -th Sem
Roll No. :
2
DECLARATION
I, Name--, hereby declare that the report of the project entitled emart has not presented as a part of
any other academic work to get my degree or certificate except College name for the fulfillment of the
requirements for the degree of Master of Computer Application.
Name
3
CERTIFICATE OF ORIGINALITY
This is to certify that the project entitled emart being submitted for the partial fulfillment of degree
of MCA, session 2005-2006, is a record of work carried out by Name under my guidance and supervision.
This is to further certify that the student has attended the GNIX Infosoft, NOIDA for the 6
months after the fifth semester theory exams. His work has been satisfactory and commendable.
Date:
Place:
4
CERTIFICATE
This is to certify that Name, a bonefide student of MCA of batch 2003-2006 has completed the
Project titled emart being submitted for the partial fulfillment of degree of MCA.
This is to further certify that the student has attended the College name . and GNIX Infosoft,
NOIDA for the 6 months after the fifth semester theory exams. His work has been satisfactory and
commendable.
Date:
Mr. -----------
HOD MCA Department
Place: College name
5
CONTENTS
S.N. Title
1. Introduction
Company Profile
2. Project Detail
Introduction
Project description
Objective
7. Module Description
8. EMART Architecture
9. Web Pages(Input/Output Screens)
10. Testing and System Security
11. Quality Assurance
6
12. Implementation and maintenance
13. Evaluation
14. Conclusion
15. Bibliography
7
COMPANY PROFILE
This is the era of Information Technology. Its significance is vital in our lives because it
presents infinite opportunities for growth and development, all this through Internet. A key ingredient for
the Internet to be successful is the state-of-art net infrastructure to converge different media and sources
with integral knowledge and clear concept are very essential. This has been the main motivation for our
launching GNIX InfoSoft as an intensive unit of Training and Development centre.
Information is the hallmark of today's world. A drive for productivity and the ability to offer quality
solutions on information superhighway are the key to development. Gnix Infosoft India (Pvt.) Ltd. (hereby
mentioned as CBK as well as company) has mirrored that drive and ability.
The essence of true development since 1998 which by enhancing growth with the presence of social
justice, promoting and cherishing the growth of those associated with the clients who are the true
partners in progress.
There is no shortcut to success so as in the case of IT industry too. It is never possible without
innovation, an eye for vision, a strong will to succeed and unlimited quality service. Quality objectives,
8
precise and time bound, are the root criteria for success and development and it is not an exception with
Gnix.
Gnix Infosoft will leave no stone unturned to take its customer to the topmost rung of ladder of
success. A result that is translated at Gnix i.e. - in tune with technology with time and trust, truth and
tradition, and requirement is the principle assets of Gnix. Gnix has two divisions working at the moment -
Training division as Compu Home and a software development division. It is the development division that
is offering this project training as detailed in this document.
GNIX InfoSoft aims at providing complete and Quality Solution to its clients in all spheres of IT
activities. Strategic tie-ups with IBM, Compaq, Hewlett-Packard, SUN Microsystems, HCL, Acer,
MICROSOFT, Computer Associates, Cisco, 3Com, Nortal Networks, AMP, Mod-Tap and AT&T with a team of
highly qualified professionals are the strong points of the organization. Quality being the hallmark of the
organization, GNIX InfoSoft provides tailored solution and takes on turnkey projects. Gnix Infosoft also
provides Consultancy services for all IT related matters to its clients. With the revolving strategy and re-
structuring, Gnix Infosoft has now started offering Web based solutions and gearing towards providing the
E-Commerce / M-Commerce solutions to its existing and new clients
We shall define ourselves in the cutting edge technology in the coming era. We shall create
honest working environment with see-through-glass planning.
To create opportunity for growth & self actualization to trainees and provide an environment of
highly conducive works culture.
9
Work related areas @ Gnix Infosoft:
5. Re-engineering
7. Corporate training
10
EBONY
AVON BEAUTY PRODUCTS INDIA PVT. LTD.
ADEPTIA INDIA PVT. LTD.
CALTEXT LUBRICANTS INDIA PVT. LTD.
COSMO FERRITES LTD.
TRISOFT DESIGN
SHRIRAM AUTOMOTIVE PRODUCTS LTD.
NIKSUN INDIA PVT. LTD.
ISPAT INDUSTRIES LTD.
OSWAL CHEMICALS & FERTILIZERS LTD.
MINISTRY OF TEXTILES
MINISTRY OF ENVIRONMENT
S.R.C.C.
SAIL
MODI ENTERTAINMENT NETWORK
RAJYASABHA
APTECH COMPUTER EDUCATION LTD.
ZEE INTERACTIVE LEARNING SYSTEMS LTD.
EL-ZEE TELEVISION LTD.
SAHARA INDIA PARIVAR.
DCM INDUSTRIES LTD.
JALDI.COM
NOBLE & HEWITT
BEETAL FINANCIAL SERVICES LTD.
TRICON RESTAURANTS INTERNATIONALS.
REEBOK INDIA COMPANY
D.R.D.O.
AUTOMAX LTD.
MMTC LIMITED
BANK OF NOVA SCOTIA.
HDM INDIA LTD.
ELOFIC INDUSTRIES LTD.
NIKSUN INDIA PVT. LTD.
REDIFFUSION DY & R BRAND COMMUNICATIONS.
11
SATYA SONS
ARMY GOLF COURSE
HUNTER DOUGLAS
MILITARY HOSPITAL
COSMIC INFOTECH SOLUTIONS
BIRLA TECHNICAL SERVICES
SPECTRUM MAGAZIES LTD.
INDOMAG STEELS
JAMIA MILIA ISLAMIC UNIVERSITY
MODICARE
HOLIDAY INN MUMBAI
HILTI INDIA
RAJDOOT PAINTS
HYDERABAD INDUSTRIES
AVL SOFTWARE (P) LTD.
JAIPRAKASH INDUSTRIES LTD.
CRM DIVISION OF TISCO
12
Company URL
AZ DATAMALL www.dwebonline.com
MA ASSOCIATES www.ma-associates.com
DP ASSOCIATES www.dp-associates.org
POLARIS www.bankwareindia.com
CHEVRON www.chevronhotels.com
SRF Ltd. www.srf-limited.com
RK BERI www.rkberiandsons.com
FINEDGE www.finedgetech.com
CREMICA FOODS LTD. www.Cremicafoods.com
RAMA PAPERS www.ramapapers.com
MICRO DATA PRODUCTS LTD. www.microdataproducts.com
CENTRE POINT HOTEL www.centerpointhotel.com
GULMOHUR SCHOOL www.gulmohurschool.com
VASANT VIHAR CHURCH www.stdominicchurch.org
YOUNG ADVERTISE www.youngadds.com
JSOFT www.onlineexam.com
KIRAN SOCIETY www.matritva.com
13
14
INTRODUCTION
15
PROJECT DETAIL
INTRODUCTION
An extremely powerful marketing tool, emarts ability to suggestively sell alternate and
complementary products; e.g. if a customer selects the "standard" version of a product, you
can recommend that they also consider the "pro" version or if your customer chooses a pair
of pants, you can suggest that they also consider a belt and socks. Simply specify related
product skus and optional text in a products definition in your Merchant Administrator, and
PDG Shopping Cart will up-sell or recommend related products to your customers
automatically
16
PROJECT DESCRIPTION
17
DESCRIPTION OF PROJECT
The category screen shows all of the products available for a particular category.
The product screen shows all of the items in a particular product. Product screens right column of
the list shows the price of the item, and includes a link labelled Add to Cart. This link, which also
appears on screen for the corresponding item, allows the customer to add the item to the cart
without looking at the item details
The item screen shows detailed information about an individual item for sale .
The Add to Cart link, when clicked, adds an order for the item to the shopping cart, and then
shows the shopping cart contents
The cart screen lists the items currently in the cart, allows the customer to change the quantity
of each item ordered, and shows a title. It also includes a link to remove the item from the cart,
and a link Proceed to Checkout which, when clicked, shows the order information screen if the
user is signed on. If the user is not signed on, the signon screen is shown instead.
The signon screen allows an existing customer to sign in as an existing user, and a new customer
to create an account. An existing customer enters a user name and password, and the application
displays the Order Information screen shown in . A new customer enters a user name and
password and clicks the button Create New Account. The application creates a user with the
requested password. If user creation succeeds, the application displays the Account Information
screen.
The account information screen, shown in collects information about a new customer, including
contact information, a credit card, and personal preferences. This is also the screen displayed
whenever the customer clicks the Account link at the top right corner of the screen (beneath the
Search box). Clicking the Update button directs the browser to a page that summarizes the
information entered.
The Order Information screen allows the user to enter billing and shipping address. Default
values for the addresses come from the contact information for the currently signed-in customer.
This information is transmitted to the application when the user clicks Submit. The application
creates a new order, sends it to the order processing center, and displays the Order Complete
screen.
The Order Complete screen verifies to the user that the order has been placed. The screen
includes the order number
Key Strengths
A steady stream of innovative features born of a
18
deep understanding of online shopping as a social
experience. Recent enhancements and additions
include:
19
OBJECTIVE
20
OBJECTIVES
Our Objective
Our objective was to look at online retail from a customers point-of-view and determine which
of the biggest US-based ecommerce sites was providing the best customer experience.
A secondary aim was to zero in on key trends and identify opportunities for high-impact
customer experience improvements.
Our Approach
We examined the entire experience. Unlike some studies that focus only on browsing,
we looked at the entire experience from the first moment on the site through selection,
purchase, shipping and returns.
the interface must use graphics or icons that are easily understood by target
users .
there must be effective decision support tools to guide you through the exploration
process .
21
If customer I have been to the site before, it must remember me and personalize customers
subsequent experience?
22
23
SYSTEM DEVELOPMENT
LIFE CYCLE
24
System Development Methodology
PHASES:
The initiation of a system (or project) begins when a business need or opportunity is identified. A
Project Manager should be appointed to manage the project. This business need is documented in a
Concept Proposal. After the Concept Proposal is approved, the System Concept Development Phase
begins.
Once a business need is approved, the approaches for accomplishing the concept are reviewed for
feasibility and appropriateness. The Systems Boundary Document identifies the scope of the system and
requires Senior Official approval and funding before beginning the Planning Phase.
The concept is further developed to describe how the business will operate once the approved system is
implemented, and to assess how the system will impact employee and customer privacy. To ensure the
products and /or services provide the required capability on-time and within budget, project resources,
activities, schedules, tools, and reviews are defined. Additionally, security certification and accreditation
activities begin with the identification of system security requirements and the completion of a high level
vulnerability assessment.
Functional user requirements are formally defined and delineate the requirements in terms of data,
system performance, security, and maintainability requirements for the system. All requirements are
defined to a level of detail sufficient for systems design to proceed. All requirements need to be
measurable and testable and relate to the business need or opportunity identified in the Initiation Phase.
25
1.2.5 Design Phase
The physical characteristics of the system are designed during this phase. The operating environment is
established, major subsystems and their inputs and outputs are defined, and processes are allocated to
resources. Everything requiring user input or approval must be documented and reviewed by the user.
The physical characteristics of the system are specified and a detailed design is prepared. Subsystems
identified during design are used to create a detailed structure of the system. Each subsystem is
partitioned into one or more design units or modules. Detailed logic specifications are prepared for each
software module.
The detailed specifications produced during the design phase are translated into hardware,
communications, and executable software. Software shall be unit tested, integrated, and retested in a
systematic manner. Hardware is assembled and tested.
The various components of the system are integrated and systematically tested. The user tests the system
to ensure that the functional requirements, as defined in the functional requirements document, are
satisfied by the developed or modified system. Prior to installing and operating the system in a production
environment, the system must undergo certification and accreditation activities.
The system or system modifications are installed and made operational in a production environment. The
phase is initiated after the system has been tested and accepted by the user. This phase continues until
the system is operating in production in accordance with the defined user requirements.
The system operation is ongoing. The system is monitored for continued performance in accordance with
user requirements, and needed system modifications are incorporated. The operational system is
periodically assessed through In-Process Reviews to determine how the system can be made more
efficient and effective. Operations continue as long as the system can be effectively adapted to respond to
26
an organizations needs. When modifications or changes are identified as necessary, the system may
reenter the planning phase.
The disposition activities ensure the orderly termination of the system and preserve the vital information
about the system so that some or all of the information may be reactivated in the future if necessary.
Particular emphasis is given to proper preservation of the data processed by the system, so that the data
is effectively migrated to another system or archived in accordance with applicable records management
regulations and policies, for potential future access.
SDLC Objectives
This guide was developed to disseminate proven practices to system developers, project managers,
program/account analysts and system owners/users throughout the DOJ. The specific objectives expected
include the following:
Key Principles
This guidance document refines traditional information system life cycle management approaches to
reflect the principles outlined in the following subsections. These are the foundations for life cycle
management.
27
Life Cycle Management Should be used to Ensure a Structured Approach to Information
Systems Development, Maintenance, and Operation
This SDLC describes an overall structured approach to information management. Primary emphasis
is placed on the information and systems decisions to be made and the proper timing of decisions. The
manual provides a flexible framework for approaching a variety of systems projects. The framework
enables system developers, project managers, program/account analysts, and system owners/users to
combine activities, processes, and products, as appropriate, and to select the tools and methodologies
best suited to the unique needs of each project.
The establishment of an Integrated Product Team (IPT) can aid in the success of a project. An IPT is a
multidisciplinary group of people who support the Project Manager in the planning, execution, delivery and
implementation of life cycle decisions for the project. The IPT is composed of qualified empowered
individuals from all appropriate functional disciplines that have a stake in the success of the project.
Working together in a proactive, open communication, team oriented environment can aid in building a
successful project and providing decision makers with the necessary information to make the right
decisions at the right time.
To help ensure effective planning, management, and commitment to information systems, each project
must have a clearly identified program sponsor. The program sponsor serves in a leadership role,
providing guidance to the project team and securing, from senior management, the required reviews and
approvals at specific points in the life cycle. An approval from senior management is required after the
completion of the first seven of the SDLC phases, annually during Operations and Maintenance Phase and
six-months after the Disposition Phase. Senior management approval authority may be varied based on
dollar value, visibility level, congressional interests or a combination of these.
The program sponsor is responsible for identifying who will be responsible for formally accepting the
delivered system at the end of the Implementation Phase.
28
The Project Manager has responsibility for the success of the project and works through a project
team and other supporting organization structures, such as working groups or user groups, to accomplish
the objectives of the project. Regardless of organizational affiliation, the Project Manager is accountable
and responsible for ensuring that project activities and decisions consider the needs of all organizations
that will be affected by the system. The Project Manager develops a project charter to define and clearly
identify the lines of authority between and within the agencys executive management, program sponsor,
(user/customer), and developer for purposes of management and oversight.
The project management plan is a pivotal element in the successful solution of an information
management requirement. The project management plan must describe how each life cycle phase will be
accomplished to suit the specific characteristics of the project. The project management plan is a vehicle
for documenting the project scope, tasks, schedule, allocated resources, and interrelationships with other
projects. The plan is used to provide direction to the many activities of the life cycle and must be refined
and expanded throughout the life cycle.
Specific Individuals Must be Assigned to Perform Key Roles Throughout the Life Cycle
Certain roles are considered vital to a successful system project and at least one individual must be
designated as responsible for each key role. Assignments may be made on a full- or part-time basis as
appropriate. Key roles include program/functional management, quality assurance, security,
telecommunications management, data administration, database administration, logistics, financial,
systems engineering, test and evaluation, contracts management, and configuration management. For
most projects, more than one individual should represent the actual or potential users of the system (that
is, program staff) and should be designated by the Program Manager of the program and organization
29
SYSTEM STUDY AND
PROBLEM FORMULATION 30
REQUIRMENTS ANALYSYS
31
THE PROPOSED SYSTEM
The proposed system is a computerized one. This has greater accuracy and efficiency. This takes only
limited time for calculation.
The proposed system can be used to maintain efficiently the HR Department schedule of any type of
company. In larger organizations employees are large. At that time also the proposed system is useful and
helpful. HR Management System is not only become a desire of the company but it become the need of
the company.
32
Requirement Analysis
At the heart of system analysis is a detailed understanding of all important facets of business
area under investigation. (For this reason, the process of acquiring this is often termed the detailed
investigation) Analyst, wirking closely with the employees and managers, must study the business process
to answer
these key questions:
Interview
Questionnaires
Record inspection
On-site observation
IDENTIFICATION OF NEED
33
In the world we are growing for globalization day by day with the development in IT resources and
advancement, by using latest technologies every organization wants to beat its competitors and want to
grow. Enterprise Resourceful Planning is the need of todays organization. Survival on manual system is
difficult so, thats why organization of the corporate world wants to computerize their departments. The
modules should be complete database driven and interactive that should provide the proper information
about the Placement and Training Organization.
Success of any system depends up to a large extent on how accurately a problem is defined,
thoroughly investigated and properly carried out to the choice of solution. Analysis is the only phase in
which the requirements for the new system are identified. System analysis is a detailed study of the
various operations performed by a system and their relationship within and outside of the system. The
question is: what must be done to solve the problem? One aspect of analysis is defining the boundaries of
the system and determining whether or not a candidate system should consider other related system.
During analysis data are collected on the available files, decision points and transactions handled by the
parent system. Data flow diagram, interviews, onsite observations, questionnaires are used as a logical
system model and tools to perform the analysis.
Gathered all facts about the present system from the employees.
In order to reduce the time, there is a need for computerized system that cans retrieve data,
insert data, update existing data or delete existing data. These modules are developed wit the aim of
reducing time, reducing manpower, reducing cost so that the records can be easily maintained. The
volume of work and complexity are increasing year by year. This system reduces complexity and
workload.
PRELIMINARY INVESTIGATION
34
A request to take assistance from information system can be made for many reasons, but in
each case some one in the organization initiate the request. When the request is made, the first system
activity the preliminary investigation begins. This activity has three parts:
Request clarification
Feasible Study
Request approval
Many requests from employees and users in the organization are not clearly defined.
Therefore, it becomes necessary that project request must be examined and clarified properly before
considering systems investigation.
The feasibility study is carried out by a small group of people who are familiar with information system
techniques, understand the parts of the business or organization that will be involved or affected by the
project, and are skilled in the system analysis and design process.
Request Approval:
It is not necessary that all request projects are desirable or feasible. Some organizations receive so many
projects request from employees that only a few of them can be purchased. However, those projects that
are feasible and desirable should be put into a schedule.
In some cases, development can start immediately, although usually system staff members are busy
on other ongoing projects. When such situation arises, management decides which projects are more
urgent and schedule them accordingly. After a project request is approved, its cost, priority, completion
time and personal requirements are estimated and used to determine where to add it to any existing
project list. Later on, when the other projects have been completed, the proposed application
development can be initiated.
Analysis is a process of studying a problem and to find the best solution to that problem.
System analysis gives us the target for the design and the implementation. Analysis is one phase, which is
important phase for system development lie cycle. System development is a problem solving techniques.
Analysis involves interviewing the client and the user. Three people and the existing documents about the
current mode of operation are the basic source of information for the analyst.
Analysis is the process of studying a problem to find the best solution to that problem. System analysis
gives us the target for the design and the implementation. Analysis is one phase of the very important
35
phase of the system development life cycle. System development is a problem solving techniques.
Analyses involve interviewing the client and the user. These people and the existing document about the
current mode of operation are the basic source of information for the analyst.
Human Resource Department of the organization controls the manpower planning by recording manpower
requirements, grade, job specifications and presently vacancies and strength. It maintains the candidates
databank for the respective post.
Computer Aided Software Engineering can be as simple as a single tool that support a specific software
engineering activity or as complex as a complete environment that encompasses tools, a database,
people, hardware, a network, operating system, standards, and myriad other components. Each building
block forms a foundation for the next, with tools sitting as the top of the heap. It is interesting to note
that the foundation for effective CASE environment has relatively little to do for software engineering tools
themselves. Rather, successful environments appropriate hardware and systems software. In addition, the
environment architecture must consider the human work patterns that are applied during the software
engineering process.
The environment composed of the hardware platform and system support (including networking software,
software management, and object management services), the groundwork for CASE. But the CASE
environment itself demands other building blocks. A set of portability services provides a bridge between
CASE tools and their integration framework and the environment architecture. The integration framework
is a collection of specialized programs that enables individuals CASE tools to communicate one another, to
create a project database, and to exhibit the same look and feel to the end user (the software engineer).
Portability services allow CASE tools and their integration framework to migrate across different hardware
platforms and operating system with out significant adaptive maintenance.
The building blocks represent a comprehensive foundation for the integration of CASE tools. However,
most CASE tools in use today have been: constructed using all these building blocks.
36
In fact some CASE tools remain point solution: That is, a tool is used to assist in a particular software
engineering activity (e.g. analysis modeling) but does not directly communicate with other tools, is not
tied into a project database, is not part of an integrated CASE environment (l-CASE). Although this
situation is not ideal, a CASE tool can be used quite effectively, even if it is a point solution.
At the low end of the integration spectrum is the individual (point solution) tool. When individual tools can
provide tools provide facilities for data exchange, the integration level is improved slightly. Such tools
produce output in a standard format that should be compatible with other tools that can read the format.
In some cases, the builder of complementary CASE tools work together to form a bridge between the tools
(e.g. an analysis and design tool that is coupled with a code generator). Using this approach, the team
developed, synergy between the tools separately. Single source integration occurs when a single CASE
tools vendor integrates a number of different tools and sells them as a package.
Although this approach is quite effective, the closed architecture of most single source environments
precludes easy addition from other vendors.
37
PROJECT CATEGORY
38
PROJECT CATEGORY
Category of this project is RDBMS based, n-tier architecture, Distributed environment project with
server-side components.
Distributed Projects.
Local Area Network projects are those projects where application has to be incorporated in the Local area
network of the client i.e within its premises only. In case of LAN, server is not remotely located and client
accesses the application through the network. Here the question of platform independence does not arise
and we can use the technologies like: Visual Basic, Fox pro, D2k or C, C++, etc.
39
SOFTWARE
REQUIRMENT
SPECIFICATION
Software requirement specification (SRS) is the starting point of the software development activity.
Little importance was given to this phase in the early days of software development. The emphasis was
first on coding and then shifted to design.
40
As systems grew more complex, it became evident that the goals of the entire system cannot be
easily comprehended. Hence the need for the requirement analysis phase arose. Now, for large software
systems, requirements analysis is perhaps the most difficult activity and also the most error prone.
Some of the difficulty is due to the scope of this phase. The software project is initiated by the
clients needs. In the beginning these needs are in the minds of various people in the client organization.
The requirement analyst has to identify the requirements by talking to these people and understanding
their needs. In situations where the software is to automate a currently manual process, most of the
needs can be understood by observing the current practice.
The SRS is a means of translating the ideas in the minds of the clients (the input), into formal
document (the output of the requirements phase). Thus, the output of the phase is a set of formally
specified requirements, which hopefully are complete and consistent, while the input has none of these
properties.
PLATEFORM
(Technologies/Tools)
41
PLATEFORM (Technology/Tool Selection)
Introduction to Java/.net
Java is a high-level, third-generation programming language like C, FORTRAN, Perl and many
others. It is a platform for distributed computing a development and run-time environment that contains
built-in support for the World Wide Web.
History of Java
Java development began at Sun Microsystems in 1991, the same year the World Wide Web was
conceived. Javas creator, James Gosling did not design java for the Internet. His Objective was to create
a common development environment for consumer electronic devices which was easily portable from one
device to another. This effort evolved into a language, code named Oak and later renamed Java that
retains much of the syntax and power of c++, but is simpler and more platform-independent.
42
Java Features
Simplicity
Orientation
Platform Independence
Security
High Performance
Multi Threading
Dynamic linking.
Garbage Collection.
One of the most important features of Java is platform independence, which makes it famous and
suitable language for World Wide Web.
The client application or operating system must have a java byte-code interpreter to execute byte-
code instructions. The interpreter is a part of a larger program called the JVM. The JVM interprets the byte
code into native code and is available on platforms that support Java.
When the user runs a Java program, it is up to the JVM to load, possibly verify,
and then execute it. The JVM can perform this function from within a browser or any other container
program or directly on top of the operating system.
When a browser invokes the JVM to run a Java program, the JVM does a number of things:
It validates the requested byte-code, verifying that they pass various formatting and security
checks.
43
It allocates memory for the incoming java class files and guarantees that the security of JVM is
not violated. This is known as the class loader module.
It interprets the byte code instructions found in the class files to execute the program.
Jdbc-Odbc Driver:
This provides a bridge between the Jdbc APIs and the Odbc APIs. The bridge translates the standard
JDBC calls to corresponding ODBC calls, and sends them to the ODBC data source via ODBC libraries. This
configuration requires every client that will run the application to have the JDBC-ODBC bridge API, the
ODBC driver and the native language-level APIs. As a result this kind of driver is most appropriate on a
corporate network where client installations are not a major problem.
Jdbc database calls are translated into vendor-specific API calls. The database will process the
request & send the result back through the API, which in turn forwards them back to the Jdbc drivers. The
Jdbc driver translates the result to the Jdbc standard & returns them to the Java application, hence this
kind of driver has same problem that was with Jdbc-Odbc driver and is mostly used in Intranet.
44
These are true 100% pure java real JDBC drivers. All the mechanism of the client access is coded
completely in java. There are no calls out off or into the virtual machine and native code and there is no
need for some costly server in the middle. Type 4 drivers are different for different RDBMS and are
available for almost all major RDBMS vendors.
This is a platform independent driver as this kind of driver remains on server. This kind of driver is
provided by third party vendor. This middle-ware server is able to connect its java clients to many
different databases. These are really non-drivers. They are front end for database access servers and
connectors. For ex: The proxy driver talks to the middle tier concentrator or access server. The
concentrator or access server in turn uses ODBC (or) vendor specific protocol to talk to the actual
database. The requirement for collaborating middle tier server is often cumbersome and very expensive
too.
Native Driver:
This kind of driver converts JDBC calls into the network protocol used by Database directly. This allows a
direct call from client machine to the Database server.
These are true 100% pure java real JDBC drivers. All the mechanism of the client access is coded
completely in java. There are no calls out off or into the virtual machine and native code and there is no
need for some costly server in the middle. Type 4 drivers are different for different RDBMS and are
available for almost all major RDBMS vendors.
45
Servlet / JSP are middle-ware technologies which are used in web based projects because they use:-
ABOUT J2EE
Introduction to J2EE:
The multi-tier architecture such as COBRA has got its own advantages in terms of scalability,
performance and reliability.
In a multi-tier architecture, a client does not interact directly with the server. Instead, it first
contacts another layer called Middleware. The middleware instantiates the server applications and
messages the server object. It returns results to the clients. The presence of a middleware layer allows
programmers to concentrate on business logic of application. The middleware handles low-lever services,
such as thread handling, security, and transactions management.
Sun Microsystems introduced the J2EE application server and the enterprise Java Bean (EJB)
specifications as a venture into the multi-tier component architecture. J2EE functions as a middle tier
server in three tier architectures.
It provides certain specifications that can be used to implement enterprise solutions for certain all
types of business requirements. J2EE also offers cost effective solution for business solution.
J2EE is used for developing, deploying and executing applications in a distributed environment. The
J2EE applications server acts as a platform for implementing various server side technologies Servlets,
Java Server Pages (JSP) and Enterprise Java Bean (EJB). J2EE allows you to focus on your business logic
46
program. The business logic is coded in java program, which are reusable component that can be
accessed client program EJB runs on J2EE server.
In J2EE security is handled almost entirely by platform and its admin. The developer does not have
to worry about writing the security logic.
J2EE Architecture:
The J2EE server provides the EJB and web containers. The J2EE server enforces authenticating
users. The either service provided by the J2EE server are listed here below.
The EJB container manages the execution of Enterprise Bean for J2EE server. EJB is a specification
for making server side component that enable and simplifies the task of creating distributed objects. EJB
component provide services such as transaction and security management and can be customized during
deployment.
The web container manages the executing of JSP and servlets for J2EE applications web
components and their container run on the J2EE server. Servlets of the java program that can be deployed
on a java enable web server to enhances and extend the functionality of the web server for example you
can write a servlets to add a manager service to a website.
47
Servlet can also be used to add dynamic content to web pages. Java Server Page (JSP) adds server
side programming functionality to java. JSP consists of regular Html tags representing the static content
and code enclosed within special tags representing the dynamic content. After compilation, a JSP
generates a servlets and therefore incorporates all the servlets functionalities.
J2EE Application:
J2EE applications are complex access data from a variety of source and cater to a variety of client.
To manage these applications the business function conducted in the middle tier. The J2EE platform acts
as a middle tier and provides the necessary environment needed by the application. The J2EE platform
provides write once, run anywhere, portability and scalability for multi-tier application. It also minimizes
complexity for building multi-tier application.
Each of these components is packaged into a file with a specified file format. A J2EE application client is a
Java application that run in a environment that enable it to access to the J2EE services. A J2EE application
client is packaged into a .jar (Java archive) file. The web components are packaged into a .war (Web
archive) file.
An Enterprise Bean consists of three files: the EJB class, Home and Remote Interfaces. The
Enterprise Beans are bundled into an EJB.jar file. The .jar, .war and EJB.jar are assembled into a J2EE
application, which is an .ear file. The .ear file is then deployed to the J2EE server.
48
The race for market share in the database industry has increased with the advent of client-server
platforms. Oracle is one of the most successful companies that has released a number of development
tools including SQL *PLUS, PL/SQL that enables faster and easier application development and its
management.
Oracle is the robust Database System, it support very large database. Moreover Oracle is widely
used as back end for client / server applications. Administrative tools of Oracle help in securing the Data /
Information.
Enterprise
Bean Component
(.jar (.jar
Assembled
J2EE Application
Deployed Server
(.jar
J2EE
Server
49
J2EE Technologies:
EJB:
Enterprise Java Beans (EJB) is write once, run anywhere middle tier component consisting of
method that implements the business rule. Enterprise Bean encapsulates the business logic. There are two
types of Enterprise Bean: Entity Bean and Session Bean.
RMI:
Remote Method Invocation is defined for the communication of remote objects in the middle tier of
the distribute application. It enables a Java object to communicate remotely with other Java object.
JNDI:
50
Java Naming and Directory Interface is an extension to Java platform and provide multiple Naming
and Directory services. A Naming services provide a mechanism for locating distributed object. A Directory
services organize the distributed object and other resources such as file in hierarchical structure. Directory
services allow resources to be linked virtually so as located in to directory services hierarchy. There are
different types of Directory services. JNDI allows the different types of Directory services to be link. Thus
client can use any type of directory services.
JDBC:
Java Database Connectivity provides a Database programming API for Java program. A JDBC API
contains a set of classes and Interfaces that are used to connect a database build using any DBMS or
RDBMS. It also submit SQL query to a database and retrieve its and processes the result of SQL query.
Java Transaction API (JTA) and Java Transaction Service (JTS) are transaction API. One can use
these API to democrat whether the transaction starts or ends.
JMS:
Java Messaging Service is an API that J2EE platform include to send mail via Internet.
Servlet:
Servlets are used to develop a variety of web-based application. They make use of the extensive
power of the Java API such as networking and URL access, multithreading, database connectivity,
internationalization, RMI and object serialization. Java Server Pages (JSP) adds server side programming
functionality to Java. Both Servlet and JSP allow the creation of database driven web application and have
server side programming capability.
XML:
51
J2EE uses Extensible Markup Language as a Markup language to describe the contents. The
described file created when deploying the J2EE application is an XML file.
The architecture of the J2EE is such that it enforces security in the application. In order to access
the J2EE services, a user need to prove his/her identity. Such users are called J2EE users and process is
called authentication. The J2EE authentication services are different from security of the operating system.
The users of the operating system and the users of the J2EE belong to a different realm. A realm is a
group of users that have the same authentication policy. The users of J2EE belong to a two different
realms that are respectively authentication by certificates and defaults. J2EE certificate to authenticate a
web browser client. In most cases, the J2EE services use the default realm to authenticate a user. J2EE
users may also belong to a group. A group is a collection of users who have common feature for eg. The
user belonging to a group may all belonging to a group coding same module. Similarly project managers
might belong to a different group.
When J2EE application client execute its request that you enter login id and password. If the
combination of both username and password correct the J2EE allow you to access the services.The J2EE
52
server also enforces security by process known as authentication. Authorization is a process by which the
permissions are assigned by server to invoke the method of Enterprise Bean.
JAVA BEANS
The java beans specification allows software components to be written in java, which encapsulate
the logic behind the web application and remove the bulk of the code that would otherwise clutter up
JSPs. The result is JSP code that is simpler, easier to maintain and which is more readily accessible to
non-programmers.
A bean uses properties to describe internal data that affects how it works and what it shows. In
java the actual bean property data is usually a private or protected field, which can be edited by publicly
available methods. In other words beans allow access to internal data via public get and set methods. This
confirms to object orientation norms, which hide internal data from users and explore it only through
accessor methods. Another aspect of this component is that it should be able to communicate with other
objects or beans. Java beans accomplish this by firing events and listening to them. A bean that is
interested in what happens to an object external to itself can register itself as a listener for various events
in that object. Conversely an external object can register itself to listen to that bean. This concept is really
the key to providing standalone software components.
BOUND PROPERTIES:
One way of exporting events is to use bound properties. When a property value changes a bound
property can inform other parts of the application that its value is changed.
BEAN EVENTS:
The property change support class should cater for most of the needs. However on many
occasions beans will still need to communicate even though no property change activity has occurred.
53
For a component to be really useful it must be possible to save it and any values it may contain
and reload it to the same state at a later date. No matter how wonderful the component we create it will
not be used much if it has to reset every time it is retrieved. Java beans use the serializable interface to
address these issues.
The serializable interface has no methods to implement. It is simply on indicator to the compiler
that object may be made persistence by serialization. In practice serialization generally means saving the
bean to a file using the object output stream classes. Then to restore the bean to read from the same file
using object input stream. To make java bean to be serializable we need to do is add the serializable
interface in the class declaration.
JDBC
There are many classifications of databases available as Hierarchical database, Network database,
Relational database, Object databases and soon. Due their flexibility Relational database management
systems are most successful bread of databases in the history of computing. Ex: - Oracle, IBMdb2, and
Microsoft SQL Server.
A technology that enables JSP base applications to interact directly with database engines is called Java
Database Connectivity and is an integral part of Java platform. JDBC/JSP based web application access the
database connections. These connections must be managed carefully by the application especially if a
large number of concurrent users may be accessing them. To make this performance optimization JDBC
uses a mechanism called connection pooling. The evaluation of this open database access technology has
led to a mirade of driver architecture.
54
Interaction of JSP Page with JDBC
Browser
with
HTML JSP JDBC
Engine Driver
DB Server Machine
RDBMS
Server
Here the browser using the web application is not required to support java at all. The JSP has full
control over how many JDBC connections are made to the server. The client never makes direct JDBC
connection to the server. This solution can work readily through a firewall, only standard HTTP is used
between the web server and the client.
As a bonus this solution sends itself to easily secured information simply by adding secured socket
layer support to the web server. Because of this separation of the presentation from the business logic,
which is separated from the database logic, this sort of system is often called three tiers of the system.
Although the application server and database server can also running on the same server machine.
55
There is still one minor problem with this scenario. Project personal accessing the JSP page containing
the embedded JDBC code can easily and inadvertently modify the database access code and this may
result in an erroneous application or even corrupted database. There are 2 solutions for this:
1. Create java beans or java classes that encapsulate all the JDBC operations. This is significantly
better solution. But instantiation, initialization and parameterization of the java class or the beans
can still represent a significant amount of embedded java code with in the JSP.
2. Create a tag extension set to pushdown all the database access logic. The data access logic
programmers write the set of custom tags. The JSP application logic designers will then use the set
of custom tag to create their application.
JSP Engine
56
JSPs
Custom tag
Custom Java
extension
beans/classes
BECK-END
ORACLE 8i
57
Centralization of database.
Client Server Technology.
Security.
Normalization of Data Base.
Relationship.
Transaction Processor.
It gives some internet related features.
Weather you are working on LAN projects or Distributed projects, there are two sides of it:-
Front End
Back End
Front End remains on client side. Front end is made for end user who uses our application. Basically
in front end, our input-output forms reside which takes the input from the client and gives output back to
client.
Database is the most important thing in this universe as database gives identity to a thing. It
provides us with a repository where we can store ample amount of data, at one place. Without a
database, existence of a thing is impossible.
58
What is a database?
Data Base is a collection of tables and table is a collection of records in a tabular form i.e. in row
and columns format.
RDBMS
DBMS
We will be using RDBMS (Relational Database Management System) in our project i.e. oracle 8.0
Enterprise Edition.
Oracle 8.0 contains all the features of previous version. It also supports some new features &
enhancement to some existing features. Oracle servers provide deficient & effective solution for the major
features.
Oracle supports the largest database potential of hundreds of Giga Bytes in size. To make efficient
use of expensive devices, it allows full control of space usage.
Oracle maintains the processing features with a high degree of overall system performance.
Database users dont suffer from slow processing performance.
59
High Availability
Oracle works 24 hours a day with no downtime or limited database throughput. Normal system
operation such as database backup & partial system failure doesnt interrupt database use.
Controlled Availbility
Oracle can selectively control the availability of data at the database level & sub database level. E.g.
an administrator can disallow use of a specific application .Data can be reloaded without affecting other
application.
Oracle adheres to industry accepted standards for the data access language operating system, user
interface & network communication protocols.
Manageable Security
To protect against unauthorized database aspects & users, Oracle provides failsafe security features
to limit & monitor the data area. The system makes it easy to manage even the most completed designs
for data assets.
Oracle enforces data integrity Business rules, that dictate the standards for applicable data. As a
result, the cost of coding & managing checks in many database applications is eliminated.
For community environment that are connected via networks, Oracle combines the data physically
located on different computers in one logical database that can be accessed by all the network users.
Distributed systems have same degree of user transparency & data consistency as non-distributed
systems, yet receive the advantages of local database management.
60
Portability
Oracle software is compatible to work under different operating system & same on all system.
Applications developed on Oracle can be used on virtually any system with little or no more modification.
Compatibility
Oracle software is compatible with industry standards, including most industry standard operating
systems. Applications developed on Oracle can be used on virtually any system with little or no
modification.
Connectivity
Oracle software allows different types of computers & operating system to share information in
networks.
Improved Scalability
The maximum size of an Oracle database has been increased to support hundreds of terabytes
depending on the operating system on which it resides.
Improved Security
Oracle 8.0 server now includes password management so that a password has a limited lifetime &
must meet certain complexity such as minimum length. An account can be locked after a specified number
of failed login attempts.
61
A table of index can be divided into smaller pieces called partitions, based on the value of one or
more columns. A table partitions can be individually managed so that operation in one partition does not
affect the availability of data on other partitions. Also insert, update, delete operations against a
partitioned table can be processed partially.
In other words, the Oracle 8 server can assign a portion of the work to execute a single DML
statement to multiple processes, which may then be allocated to multiple processes by the server
operating system. As a result, the parallel DML operations are completed more quickly.
The performance & manageability of database replication has been significantly improved.
By pooling database connection, the Oracle 8 server is able to service a much larger number of
concurrent users, up to 3000, depending on the servers operating system & server hardware resources.
Some existing data types have been enhanced & new data types have been introduced.
A new feature of the select statement allows a sub query to be used in place of a table in a from
clause.
Now when we are discussing Database, there is one more thing attached to it, i.e. Data Base
Models
Database Models
There are three kinds of database models:-
62
Single tier architecture.
Two tier architecture.
N- Tier architecture.
In this kind of architecture, database and client application remains on one machine i.e. there is no
client-server technology, there is no centralization of database, and basically it is a stand alone system.
In this kind of architecture, database and client application is on two different machines i.e.
Database on one machine and the application on another machine. In this type of architecture, the
implementation of client-server technology is done and centralization of data base is there, but it has two
demerits:-
N- Tier Architecture: - In this kind of architecture, there is a middle-ware in between the client and
database. Middle ware checks the validity of the client i.e. weather the client can access the database or
not. Hence there is security in it as well as middle-ware allows multiple clients access.
What is Middle-Ware?
63
Because we are working on Distributed Application Based Project we need platform independent Language
like Java
SOFTWARE
AND
HARDWARE TOOLS
64
Software and Hardware Tools
Development Environment:
The system will be built on windows compatible environment. The application will be web based
developed using Java technology.
Web Server:
BEAs WebLogic 8.1 Application Server to serve as Servlet/JSP engine.The system requires
WebLogic Application Server for serving the requests for Servlet.
The system requires Oracle as a database; however the system will be ODBC complaint to
work on any standard database.
65
Client Browsers:
Hardware requirement
Software Requirement
66
67
Feasibility Study
A feasibility study is conducted to select the best system that meets performance requirement.
This entails an identification description, an evaluation of candidate system and the selection of best
system for he job. The system required performance is defined by a statement of constraints, the
identification of specific system objective and a description of outputs.
1. Economic Feasibility :
2. Technical Feasibility :
3. Operational Feasibility:
Economical feasibility
It looks at the financial aspects of the project. It determines whether the management has
enough resources and budget to invest in the proposed system and the estimated time for the recovery of
cost incurred. It also determines whether it is worth while to invest the money in the proposed project.
Economic feasibility is determines by the means of cost benefit analysis.The proposed system is
economically feasible because the cost involved in purchasing the hardware and the software are within
approachable. The personal cost like salaries of employees hired are also nominal, because working in this
system need not required a highly qualified professional. The operating-environment costs are marginal.
The less time involved also helped in its economical feasibility. It was observed that the organization has
already using computers for other purpose, so that there is no additional cost to be incurred for adding
this system to its computers.
68
The backend required for storing other details is also the same database that is Sql. The computers
in the organization are highly sophisticated and dont needs extra components to load the software. Hence
the organization can implement the new system without any additional expenditure. Hence, it is
economically feasible.
Software Cost :
Oracle : 15000/-
J2EE Kit :
Free
Manpower Cost :
Team cost :
25000/-
System Cost :
40,000/-
Total Cost :
100000/-
Technical Feasibility
69
It is a measure of the practically of a specific technical solution and the availability of technical
resources and expertise
The proposed system uses Java as front-end and Oracle 8.0 as back-end tool.
Oracle is a popular tool used to design and develop database objects such as table views,
indexes.
The above tools are readily available, easy to work with and widely used for developing
commercial application.
Hardware used in this project are- p4 processor 2.4GHz, 128 MB RAM, 40 GB hard disk,
floppy drive. These hardware were already available on the existing computer system. The software like
Oracle 8i, Weblogic Server, Thin Driver, JDK, JSDK, J2EE and operating system WINDOWS-XP used
were already installed On the existing computer system. So no additional hardware and software were
required to purchase and it is technically feasible. The technical feasibility is in employing computers to
the organization. The organization is equipped with enough computers so that it is easier for updating.
Hence the organization has not technical difficulty in adding this system.
Tools Used :
1) J2EE Library
2) J2SDK 2.0
3) JDK 1.2
4) WebLogic 8.1
5) Oracle 8i.
Duration of Project:-
Time Duration
Operational Feasibility
The system will be used if it is developed well then be resistance for users that undetermined
No major training and new skills are required as it is based on DBMS model.
It will help in the time saving and fast processing and dispersal of user request and
applications.
New product will provide all the benefits of present system with better performance.
User support.
User involvement in the building of present system is sought to keep in mind the user
specific requirement and needs.
User will have control over there own information. Important information such as pay-
slip can be generated at the click of a button.
People are inherent to change. In this type of feasibility check, we come to know if the newly
developed system will be taken and accepted by the working force i.e. the people who will use it.
71
72
73
INTRODUCTION
SYSTEM DESIGN
74
Introduction
System design provides the understandings and procedural details necessary for implementing the
system recommended in the system study. Emphasis is on the translating the performance requirements
into design specifications. The design phase is a transition from a user-oriented document (System
1) Logical Design
2) Physical Design
A data flow diagram shows the logical flow of the system. For a system it describes the input
(source), output (destination), database (data stores) and procedures (data flows) all in a format that
meets the users requirement. When analysis prepare the logical system design, they specify the user
needs at a level of detail that virtually determines the information flow into an out of the system and the
required data resources. The logical design also specifies input forms and screen layouts.
The activities following logical design are the procedure followed in the physical design e.g., producing
programs, software, file and a working system. Design specifications instruct the user about what the
system should do.
Output design is one of the most important features of the information system. When the outputs is
not of good quality the users will be averse to use the newly designed system and may not use the
75
system. There are many types of output, all of which can be either highly useful or can be critical to the
users, depending on the manner and degree to which they are used.
Outputs from computer system are required primarily to communicate the results of processing to
users, They are also used to provide a permanent hard copy of these results for later consultation. Various
types of outputs required can be listed as below:
Operational outputs, whose use is purely with in the computer department e.g., program-listing
etc.
Interactive outputs, which involve the user is communicating directly with the computer, It is
particularly important to consider human factor when designing computer outputs. End user
must find outputs easy to use and useful to their jobs, Without quality output, user may find
the entire system unnecessary and avoid using it. The term Output in any information system
may apply to either printer or displayed information. During the designing the output for this
system, it was taken into consideration, whether the information to be presented in the form of
query of report or to create documents etc.
When and how often output and their format is needed. While designing output for project
based Attendance Compilation System, the following aspects of outputs designing were taken
into consideration.
The outputs (i.e., well formatted table outputs in the screen itself) designed are simple to read
and interpret.
Format of each output was another important point taken into consideration. Output media, for
each output appropriate media is decided whether it will be displayed on screen or will be taken
to printer or both.
76
Other output design related specifications, i.e., how frequently the outputs will be generated,
how many pages or sheets approximately it will keep up, what is its planned use and output
distribution to users are also taken into account.
These were a few major designing issues, which were taken into consideration, while deciding the
output specifications for the system. As direct beneficiary of reports is the user community, they were
consulted constantly at every level. Formats and screen design for various reports were identified, taking
into account the user requirements. Before finalising these were given to users for any improvement and
suggestions. End users issues taken into consideration were Readability, Relevance and Acceptability.
Once all the output reports to be generated by ACS system were identified, they were given to users
for their acceptance. For prototyping various outputs, final outputs models were created with dummy
data, before they were finalised.
Output Sources:
Tabular contents
Graphic format
Using Icons
Output Definition:
Types of outputs
77
Response-immediate with in a period, etc.,
Data items
The name given to each data item should be recorded and its characteristics described clearly in a
standard form:
Number of characters
Input Design:
The input design is the link that ties the information system into the users world. Input specifications
describe the manner in which data enters the system for processing. Input design features can ensure the
reliability of the system and produce results from accurate data, or they can result in the production of
erroneous information.
Data entry, the activity of putting data into the computer processing.
Avoid delay
78
Keeping the process simple.
Input stages several activities have to be carried out as part of te overall input process. They
include some or all of the following.
Input Performa were designed, after a careful discussion with users. It was attempted to cover all
user requirements. Designed Performa were given to user for any suggestion and final approval.
Various data items were identified and wherever necessary were recorded.
Input designs are aimed at reducing the chances of mistakes of errors. As the human beings are prone
to errors there is always a possibility of occurrence of chance of errors. Adequate validation checks are
incorporated to ensure error free data storage. Some of the data validation checks applied are as
following:
Redundancy of data is checked. It means the records of primary key do not occur twice.
Wherever items are coded, input code is checked for its validly with respect to several checks.
79
Utmost care has been taken to incorporate the validation at each stage of the system. E.g.
when entering records into employee information table for employee, it is checked that whether
the corresponding employee exists in the employee information table etc.,
Enough messages and dialogue boxes are provided while design screen, which does guide user at
the time of any errors, or at time of entry. This feature provides a user-friendly interface to native users.
It can be emphasized that input deigns of HRRP is so designed that it ensures easy and error free data
entry mechanism. Once one is sure of input data the output formatting becomes an routine work.
SOFTWARE DESIGN
The purpose of this phase is to plan a solution for the problem specified by the requirement
document. This is first step in moving from the problem domain to solution domain. Designing activity is
divided into two parts.
a) System Design
It aims to identify the modules that should be in the system, the specification of
these modules and how they interact with each other to produce the desired result.
b) Detailed Design
The internal goal of each of the modules specified in the system design is
decided
80
DATABASE DESIGN
A database is a collection of inter-related data stored with a minimum of redundancy to serve many
applications. It minimizes the artificiality embedded in using separate files. The primary objectives are fast
response time to enquires, more information at low cost, control of redundancy, clarity and ease of use,
accuracy and fast recovery. The organization of data in a database aims to achieve three major objectives,
they are data integration, data integrity and data independence. During the design of the database at
most care has been taken to keep up the objectives of the database design.
CODE DESIGN
The process of code is to facilitate the identification and retrieve of items of information.
The code should be simple and easy to understandable. The codes were designed in such a way that the
features such as optimum human oriented use and machine efficiency are unaffected.
For the code to be designed effectively, the following characteristics were also considered while designing
the code.
Uniqueness
Versatility
Stability
Simplicity
Consciousness
The code should be adequate for present and anticipated data processing for machine and human use.
Care was taken to minimize the clerical effort and computer time required to continue operation.
PROCESS DESIGN
The process can be conceptualized in such a way to keep the methodology of main module process
along with some auxiliary task, which will run concurrently with the main program.
81
The top-down approach is maintained so as to keep track of the process, which satisfies the
maintenance reliability testing requirements. The concurrency of the data is checked during data entry, by
means of validation check for data in each field.
82
DATA FLOW DIAGRAMS
Data Flow Diagramming is a means of representing a system at any level of detail with a graphic
network of symbols showing data flows, data stores, data processes, and data sources/destination.
The data flow diagram is analogous to a road map. It is a network model of all possibilities with
different detail shown on different hierarchical levels. This processes of representing different details level
is called leveling or partitioning by some data flow diagram advocates. Like a road map, there is no
starting point or stop point, no time or timing, or steps to get somewhere. We just know that the data
83
path must exist because at some point it will be needed. A road map shows all existing or planned roads
because the road is needed.
Details that is not shown on the different levels of the data flow diagram such as volumes,
timing, frequency, etc. is shown on supplementary diagrams or in the data dictionary. For example, data
store contents may be shown in the data dictionary.
Data Flow Diagram (DFD) uses a number of symbols to represent the systems. Data Flow
Diagram also known as Bubble Chart is used to clarify system requirements and identifying the major
transformations that will become programs in system design. So it is the starting point of the design
phase that functionally decomposes the requirements specifications down to the level of details.
Process
A process transforms data values. The lowest level processes are pure functions without side
effects. An entire data flow graphics high level process.
Graphical representation:
Graphical Representation:
Data flows
A data flow connects the output of an object or process to input of another object or process. It
represents the intermediate data value within a computation. It is represented by an arrow and labeled
with a description of data, usually its name or type.
84
Graphical Representation:
Actors
An actor is active object that drives the data flow graph by producing or consuming values.
Data store
A data store is a passive object with in a data flow diagram that stores data for later access.
Graphical Representation:
External Entity
Graphical Representation:
Output Symbol
Graphical Representation:
85
LoveToShop
86
LoveToShop: (Main Module)
ADMIN
CUSTOMER
1. VISITOR
2. MEMBER
ORDER TRACK
87
DFD:
Get Queries.
Check Orders & Check
Payments.
LoveToShop
(ONLINE SHOPING)
Browse Products.
Check Order Status
Online.
Get Query Response
CUSTOMER
88
First Level DFD:
ADMIN
LoveToShop
(ONLINE
SHOPING)
Check Order Status Add Products
Online. to Carts.
Get Query Response Place Orders & Browse
Make Payments. Products.
Make Query
CUSTOMER
Order Track
Create Account
Update Profile
VISITOR MEMBER
89
Second Level DFD (ADMIN):
Enter Username &
Password Process
I F LOGIN TRUE
THEN ENTER TO
ADMIN SECTION
PRODUCT
Add update, delete
ADMIN Product & Product
Category CATEGORY
SECTION
QUERY
Place Orders to
Delivery & Update
Delivery Status
DELIVERY Get Member
Check Orders & Order Details
ORDER DETAIL ORDER MEMBER
(External (External (External
Entity) Entity) Entity)
90
Second Level DFD (MEMBER):
Enter Username & Process
MEMBER
MEMBER Password
USER Login Login
Get Payment
Details
MEMBER_PAYMENT
Make Query
& Get
Response Get Delivery
Status Check Orders & Order
Details
QUERY DELIVERY ORDER DETAIL ORDER
(External (Derived (Derived
Entity) Entity) Entity)
91
Second Level DFD (VISITOR):
VISITOR USER
ENTER TO
VISITOR SECTION
VISITOR
SECTION
CATEGORY PRODUCT
(External (External
Entity) Entity)
92
Second Level DFD (ORDER TRACK):
ENTER ORDER_ID
FOR ENTERING TO
THIS MODULE
ORDER TRACK
SECTION
93
DATABASE:
Module (Admin);
1. Category:
Field Name Data Constraint Description
Type
Catid Number Primary This is a unique
key & not null column
entire table
Description Varchar2 Description of
the product
Category
2. Product:
Field Name Data Constraint Description
Type
Pid Number Primary This is a unique
key & not null column
entire table
Catid Number Foreign It refers to
key another table.
category(catid)
Name Varchar2 Name or title of
the product
Description Varchar2 Description of
the product
Type Varchar2 Type of the
product
PostingDate Date Posting date of
the Product
94
3. Product Details:
Field Data Constraint Description
Name Type
Detail_id Number Primary This is a unique &
key not null column
entire table
P_id Number Foreign It refers to
key another table.
category(catid)
Color Varchar2 Color of the
product
Weight Varchar2 Weight of the
product
Size Varchar2 Size of the product
Image Raw Image of the
product
NetPrice Number Net Price of the
product
SellPrice Number Sell Price of the
product
4. Product Update:
Field Name Data Constraint Description
Type
Update_id Number Primary This is a unique
key & not null column
entire table
P_id Number Foreign It refers to
key another table.
Product(catid)
Name Varchar2 Name or title of
95
the product
Description Varchar2 Description of
the product
Type Varchar2 Type of the
product
Update_Type Varchar2 Type of
operation( delete
or update)
UpdateDate Date Date of the
updation
5. Product Update Details:
Field Name Data Constraint Description
Type
Up_Detail_id Number Primary This is a unique
key & not null column
entire table
Update_id Number Foreign It refers to
key another table
ProductUpdate(upd
a_id)
Color Varchar2 Color of the
product
Weight Varchar2 Weight of the
product
Size Varchar2 Size of the
product
Image Raw Image of the
product
NetPrice Number Net Price of the
product
SellPrice Number Sell Price of the
product
96
6. Delivery:
Field Name Data Constraint Description
Type
Deli_id Number Primary This is a unique &
key not null column
entire table
Order_id Number Foreign It refers to
key another table.
Order (order_id)
Status Varchar2 Show the current
status of the
order delivery.
Deli_Date Date Date of the Order
Delivery.
Deli_remark Varchar2 Any comment
related to order
delivery
7. User:
Field Name Data Constraint Description
Type
UserId Varchar2 Primary This is a unique &
key not null column
entire table
Password Varchar2 Not null It refers to
another table.
Order (order_id)
Typeoflogin Varchar2 Type of user login
(admin or
executive )
97
Module (Customer);
1. Order:
Field Name Data Constraint Description
Type
Order_id Number Primary This is a unique &
key not null column
entire table
Order_type Varchar2 Type of the Order
(Member or
Visitor )
Date_Time Varchar2 Order date & time
Billing_Add Varchar2 Billing Address
1. OrderDetail:
Field Name Data Constraint Description
Type
O_Detail_id Number Primary This is a unique &
key not null column
entire table
Order_id Number Foreign It refers to order
Key table (order id)
column.
P_Detail_id Number Foreign It refers to
Key product Detail
table (p_detail id)
Qty Number Product quantity
98
Module (Visitor);
1. Visitor Order:
Field Name Data Constraint Description
Type
V_Order_id Number Primary This is a
key unique & not
null column
entire table
Order_Id Number Foreign It refers to
Key order table
(order id)
column.
Name Varchar2 Name of the
visitor
Address Varchar2 Address of the
visitor
Phone Number Check Visitor phone
number
Mobile Number Visitor Mobile
Number
Email Varchar2 Visitor email
address
Payment Varchar2 Payment option
Payment_details Varchar2 Payment
details
99
Module (Member);
1. Member Order:
Field Name Data Constraint Description
Type
M_Order_id Number Primary This is a unique &
key not null column
entire table
Order_Id Number Foreign It refers to order
Key table (order id)
column.
Mem_id Number Foreign It refers to member
Key table (mem_id)
column.
2. Member:
Field Name Data Constraint Description
Type
Mem _id Number Primary This is a
key unique & not
null column
entire table
Name Varchar2 Name of the
member
Address Varchar2 Address of
the member
Phone Number Check member phone
number
Mobile Number member Mobile
Number
Email Varchar2 member email
address
Balance Number Member
account
100
balance
Password Varchar2 Login
password
SequrityQuestion Varchar2 Password
recovery
secured
question
SequrityAns Varchar2 Password
recovery
secured
answer
3 Member Payments:
Field Name Data Constraint Description
Type
Payment_id Number Primary This is a unique &
key not null column
entire table
Mem _id Number Foreign It refers to
key another table
member(memid)
PayOption Varchar2 Payment
option( cash
deposit, online,
credit cards)
PayDetails Varchar2 Details of the
payment
Amount Number Amount of payment
Payment_Date Varchar2 Date & time of the
payment
101
Module (Order Track);
1. Query:
Field Name Data Constraint Description
Type
Query_id Number Primary This is a unique
key & not null
column entire
table
Order_Id Number Foreign It refers to
Key order table
(order id)
column.
Query Varchar2 Query Question
QueryDateTime Varchar2 Query generation
Date & time
Response Varchar2 Query Response
ResDateTime Varchar2 Response
generation Date
& time
102
103
104
TESTING
SYSTEM TESTING
Here the System testing involved is the most widely used testing process consisting of five stages
as shown in the figure. In general, the sequence of testing activities is component testing, integration
testing, and then user testing. However, as defects are discovered at any one stage, they require
program modifications to correct them and this may require other stages in the testing process to be
repeated.
Unit
testing
Module
testing
105
Sub- System Acceptan
system testing ce
testing testing
(Component testing) (Integration testing) (User testing)
Testing is the process of detecting errors. Testing performs a very critical role for quality assurance
and for ensuring the reliability of the software. The results of testing are used later on during maintenance
also.
Testing is vital to the success of the system. System testing makes a logical assumption that if the parts
of the system are correct, the goal will be successfully achieved. In adequate testing or non-testing leads
to errors that may not appear until months or even years later (Remember the New York three day power
failure due to a misplaced Break statement).
A small error can conceivably explode into a much larger problem. Effective testing early in the process
translates directly into long term cost savings from a reduced number of errors.
Another reason for system testing is its utility as a user oriented vehicle before implementation. The best
program is worthless if it does not meet the user requirements. Unfortunately, the users demands are
often compromised by efforts to facilitate program or design efficiency in terms of processing time or
design efficiency.
106
Thus in this phase we went to test the code we wrote. We needed to know if the code compiled with the
design or not? Whether the code gave the desired outputs on given inputs? Whether it was ready to be
installed on the users computer or some more modifications were needed?
Through the web applications are characteristically different from there software counterparts but the
basic approach for testing these web applications is quite similar. These basic steps of testing have been
picked from software engineering practices. The following are the steps, we undertook:
2. The design model of the web application is reviewed to uncover the navigation errors. Use cases,
derived as a part of the analysis activity allows a web designer to exercise each usage scenario
against the architectural and navigational design. In essence these non-executable tests help to
uncover the errors in navigation.
3. When web applications are considered the concept of unit changes. Each web page encapsulate
content navigation links, content and processing elements(Forms, Scripts, JSPs as in our case). It
is not always possible to test each of these individually. Thus is the base of the web applications the
unit to be considered is the web page. Unlike the testing of the algorithmic details of a module the
data that flows across the module interface, page level testing for web applications is driven by
content, processing and links encapsulating the web page.
4. The Assembled web application is tested for overall functionality and content delivery. the various
user cases are used that test the system for errors and mistakes.
5. The Web application is tested for a variety of environmental settings and is tested for various
configurations and upon various platforms.
The modules are integrated and integration test are conducted.
107
6. Thread based testing is done to monitor the regression tests so that the site does not become very
slow is a lot of users are simultaneously logged on.
7. A controlled and monitored population of end users tests Intranet application , this all comprises of
the User Acceptance Testing .
Because web application evolve continuously , the testing process is an ongoing activity,
conducted by web support staff in our case the Organizations IS people who will finally update and
PSYCHOLOGY OF TESTING
The aim of testing is often to demonstrate that a program works by showing that it has no errors.
The basic purpose of testing phase is to detect the errors that may be present in the program. Hence one
should not start testing with the intent of showing that a program works, but the intent should be to show
that a program doesnt work. Testing is the process of executing a program with the intent of finding
errors.
TESTING OBJECTIVES:
The main objective of testing is to uncover a host of errors, systematically and with minimum effort
and time. Stating formally, we can say,
108
LEVELS OF TESTING
In order to uncover the errors present in different phases, we have the concept of levels of
testing. The basic levels of testing are
Unit testing
Unit testing focuses verification effort on the smallest unit of software i.e. the module. Using the
detailed design and the process specifications, testing is done to uncover errors within the boundary of the
module. All modules must be successful in the unit test before the start of the integration testing begins.
In this project each service can be thought of a module. There are so many modules like Login, HR
Department, Interviewer Section, etc. Each module has been tested by giving different sets of inputs.
When developing the module as well as finishing the development, the module works without any error.
The inputs are validated when accepting them from the user.
Integration Testing
109
After unit testing, we have to perform integration testing. The goal here is to see if modules can be
integrated properly, the emphasis being on testing interfaces between modules. This testing activity can
be considered as testing the design and hence the emphasis on testing module interactions.
In this project the main system is formed by integrating all the modules. When integrating all the
modules I have checked whether the integration effects working of any of the services by giving different
combinations of inputs with which the two services run perfectly before Integration.
SYSTEM TESTING
Here the entire software system is tested. The reference document for this process is the
requirements document, and the goal is to see if software meets its requirements.
Here entire HRRP has been tested against requirements of project and it is checked whether all
requirements of project have been satisfied or not.
ACCEPTANCE TESTING
Acceptance Testing is performed with realistic data of the client to demonstrate that the software is
working satisfactorily. Testing here is focused on external behavior of the system; the internal logic of
program is not emphasized.
Test cases should be selected so that the largest number of attributes of an equivalence class is
exercised at once. The testing phase is an important part of software development. It is the process of
finding errors and missing operations and also a complete verification to determine whether the objectives
are met and the user requirements are satisfied.
This is a unit testing method, where a unit will be taken at a time and tested thoroughly at a
statement level to find the maximum possible errors.
I tested step wise every piece of code, taking care that every statement in the code is executed at
least once. The white box testing is also called Glass Box Testing.
110
I have generated a list of test cases, sample data, which is used to check all possible combinations
of execution paths through the code at every module level.
White-box test focuses on the program control structure. Test cases are derived to ensure that all
statement in the program control structure. Test cases are derived to ensure that all statement in the program
control structure. Test cases are derived to ensure that all statement in the program has been executed at least
once during testing and that all logical conditions have been exercised. Basis path testing, a white box
technique, makes use of program graphs (or graph matrices) to derive the set of linearly independent test that
will ensure coverage. Condition and data flow testing further exercising degrees of complexity.
Graph based testing methods explore the relationship between and behavior of program objects.
Equivalence partitioning divides the input classes of data are likely to exercise specific software function.
Boundary values analysis probes the programs ability to handle data at the limits of acceptability.
111
A strategy for software testing may also be viewed in the context of the spiral. Unit testing begins at the
vortex of the spiral and, concentrates on each unit, component of the software as implemented in source
code. Testing progresses moving outward along the spiral to integration testing, where the focus is on
designed the construction of the software architecture. Taking another turn outward on spiral, we
encounter validation testing, where requirements established as part of software requirements analysis
are validated against the software that has been constructed. Finally, we arrive at system testing, where
the software and other system elements are tested as a whole. To test computer software, we spiral out
along stream lines that broaden the scope of testing with each turn.
Considering the process from a procedural point of view, testing within the context of software
engineering is actually a series of four steps that are implemented sequentially. The steps are shown in
Figure. Initially, tests focus on each component individually, ensuring that it functions properly as unit.
Hence, the name unit testing. Unit testing makes heavy use of white-box testing techniques, exercising
specific paths in modules control structure to ensure complete coverage and maximum error detection.
System Testing
Validation Testing
Integration Testing
112
System Engineering
Design
Validation testing
Code
System Security
Evaluat
Software ion
Configurat
ion Test
Results
113
Error
Error
Rate
Testin Expected Data
Debug
g
Reliabi
lity
Model
Test
Configuration
Predicated
Correctio
Reliability
Introduction
One might think that there is a little reason to be concerned about security in an intranet. After all, by
definition an intranet is internal to ones organization; outsider can not access it. There are strong
arguments for the position that an intranet should be completely open to its users, with little or no
security. One might not have considered ones intranet on any other light.
On the other hand, implementing some simple, built-in security measures in ones intranet can allow one
to provide resources one might not have considered possible in such context. For example, one can give
access to some Web Pages to some people without them available to oner entire customer base, with
several kinds of authentication.
115
Intranet security is, then, a multifaceted issue, with both opportunities and dangers, especially if
ones network is part of the Intranet.
There are basically two types of security associated with this system:
1. Physical security:-
Damage due to natural causes like earth tremor, flooding, water logging, fire hazards, atmospheric or
environmental conditions etc..For overcoming these difficulties the replica of the data are
automatically stored at various networks and for environmental conditions Air conditioning
environment is created.
2. Data security:-
To overcome these difficulties the following access facilities has been provided:-
i) Identification:-
Unique Ids for the different users have been provided.
ii) Authentication:-
System checks the password under the particular user identification. The computer permits the
various resource to the authorized person.
iii) Authorisation:-
The access control mechanism to prevent unauthorized logging to the system.
116
Need for Security
Many people view computer and network security in a negative light, thinking of it only in terms of
restricting access to services. One major view of network security is that which is not expressly permitted
is denied. Although this is a good way of thinking about how to connect other organization to the
internet, one can, and possibly should, view intranet security from a more positive angle. Property set up,
intranet security can be an enabler, enriching ones intranet with services and resources one would not
otherwise be able to provide. Such an overall security policy might be described as that which is not
expressly denied is permitted.
This does not mean that one should throw caution to the wind and make everything available to
ones users on ones intranet. There are many things to consider when placing sensitive business data out
on ones intranet. It may fall into the wrong hands, or worse, be used against ones business. For
example, some of ones users might have information they would li9ke to make available, provided access
to it can be limited to a specified group-for example, confidential management or financial information.
Without the ability to ensure that only those who have the right to see such information will have access,
the custodians of data will not be willing to put it on ones intranet. Providing security increases ones
organizations ability to use the important collaborative aspects of an intranet.
The more defensive approach, preventing abuse of ones intranet, is also given play, however.
Organizations needs for security in an intranet can vary widely. Businesses in which confidentiality and
discretion are the norm in handling proprietary information and corporate intellectual property have
different needs than a college or university, for example. Academic institutions generally tilt toward
making the free exchange of ideas a primary interest. At the same time, though the curiosity (to use a
polite word) of undergraduates requires strong needs for security. Keeping prying sophomores out of
university administration computing resources is a high priority; for example, students have been known
to try to access grade records(their own or those of others) for various reasons.
Before going into a great deal of detail about how one can use security to enhance ones intranet, take a
high- level look at what security features are available to ones. These break down into three main
categories.
117
First, one can take steps on ones Web server to set up security. Second, one can take
steps with the other TCP/IP network services one has set up on ones intranet to enhance their
security. Third, one can secure customers Web browsers themselves to limit what they can do
with them.
There is a wide range of very flexible security features one can implement on ones Web server. Heres a
summary:
Access to Web servers, individual Web pages, and entire directories containing Web pages can be
set to require a username and password.
Access to Web servers, individual Web pages, and entire directories containing Web pages can be
limited to customers on specific computer systems. (In other words, access will be denied unless
the user is at his or her usual computer or workstation.)
One can organize individuals into groups and grant access to individual Web servers, Web pages,
and entire directories containing Web pages based on group membership.
One can organize computers into groups, and grant access to individual Web servers, Web pages,
and entire directories containing Web pages based on group membership.
Its ones responsibility to determine the level of security one need on ones intranet, and, of course, to
implement it. Putting most of the security measures mentioned into place is not difficult. Ones primary
concern will be explaining to customers how intranet security works, not so much as a limiting factor but
as an opportunity for increased use and collaboration using ones intranet. Assuring decision-makers that
they can make information available on ones intranet in a secure fashion can go a long way toward
making ones intranet a success. At the same time, its important to make sure both information providers
and their customers understand a number of critical aspects of intranet security, so they dont
inadvertently defeat the purpose of it.
118
There are network security commonplaces, unrelated to intranet security specifically, that need ones
attention. All the security precautions in the world cant protect ones intranet from overall poor security
practices. Users making poor choices on passwords always lead the list of computer and network security
risks. One can limit access to a sensitive Web resources based on the TCP/IP network address of bosss
pc, but if the boss walks away and leaves his pc unattended without an active screen lock, anyone who
walks into the empty office can access the protected resources.
All of the Web server software described in this chapter trustingly accepts the word of a requesting
computer when it sends its IP address. Verification of this information is not possible. Its relatively easy
for a user to change the hostname/IP address of a UNIX system, and laughably easy to change that of
a pc or Mac. A curious, mischievous, or malicious person can reconfigure his computer to impersonate
someone elses simply by changing the IP address of his own. Although this is an overall network security
issue, not specifically one for ones intranet, its important one Know about it because it can affect the
security of ones access controlled documents. Security-minded network administrators can use special
hardware and software to prevent this sort of IP spoofing, but for ones intranet , onell probably want to
combine hostname/IP address authentication with username/password authentication, as outlined in the
following section.
One can further enhanced security on ones intranet by encrypting Web transactions. When one use an
encryption facility, information submitted by customers using Web fill-in forms-including usernames,
passwords, and other confidential information-can be transmitted securely to and from the Web server.
Is ones intranet is accessible from the internet? If so, all of the security problems of the Internet are now
ones intranets problems, too. One can, however, connect safely to the Internet and still protect ones
intranet. One can even use the Internet as a means of letting remotes sites in ones company access ones
intranet.
119
e) Firewalls
Its a fact of Internet life there are people out there who want to break into other peoples networks via
the Internet. Reasons vary from innocent curiosity to malicious cracking to business and international
espionage. At the same time, the value of Internet to organizations and businesses is as great that
vendors are rushing to fill the need for Internet security with Internet firewalls. An Internet firewall is a
device that sits between ones internal network and outside Internet. Its purpose is to limit access into
and out of ones network based on ones organizations access policy.
A firewall can be anything from a set of filtering rules set up on the router between one and the
Internet to an elaborate application gateway consisting of one or more specially configured computers that
control access. Firewalls permit desired services coming from the outside, such as Internet e-mail, to
pass. In addition, most firewalls now allow access to the World Wide Web from inside the protected
networks. The idea is to allow some services to pass but to deny others. For example, one might be able
to use the Telnet utility to log into systems on the Internet, but users on remote systems cannot use to
log into ones local system because of the firewall.
Summary
Security is important not so much because it prevents things, but because it enables them. Judicious use
of built-in security features of the Web server and other intranet resources can add value to ones intranet
by making new things possible.
120
QUALITY ASSURANCE
121
QUALITY ASSURANCE
INTRODUCTION
The key factor to the success in software quality program is its implementation. While definition of
process can be evolving phenomenon, implementation of processes makes the difference between success
& failure.
A quality product can be defined as:
One that is fit for use.
One that is produced as per the predefined standards.
So, Software Quality Assurance is the process of ensuring that the product confirms to its
standards.
A Quality Management System (QMS) is instituted by an organization to manage & maintain quality
procedures in its day-to-day functioning. It is a conglomerate of people who have the required authority,
responsibility and procedures for performing various activities. The QMS of an organization is guided by
quality policy & quality procedures supported by various documents-Forms/Formats to maintain records &
work instructions to provide guidelines for doing a particular piece of work.
122
IMPLEMENTATION 123
IMPLEMENTATION
124
Introduction
System implementation is the stage when the user has thoroughly tested the system and approves
all the features provided by the system. The various tests are performed and the system is approved only
after all the requirements are met and the user is satisfied.
The new system may be totally new, replacing an existing manual or automated system, or it may
be a major modification to an existing system. In either case, proper implementation is essential to
provide a reliable system to meet organizational requirements. Successful implementation may not
guarantee improvement in the organization using the new system (that is a design question), but
improper will prevent it.
Implementation is the process of having systems personnel check out and put new equipment into
use, train users, install the new application and construct any files of data needed to use it. This phase is
less creative than system design. Depending on the size of the organization that will be involved in using
the application and the risk involved in its use, systems developers may choose to test the operation in
only one area of the firm with only one or two persons. Sometimes, they will run both old and new system
in parallel way to com-pare the results. In still other situations, system developers stop using the old
system one day and start using the new one the next.
The implementation of the web based or lan based networked project has some extra steps at the
time of implementation. We need to configure the system according the requirement of the software.
For the project we need to install and configure Weblogic server 8.1 , database server, and the
deployment directory for the project.
Aspects of Implementation
Training Personnel
Conversion Procedures
125
TRAINING
Even well designed and technically elegant systems can succeed or fail because of the way they are
used. Therefore the quality of the training received by the personnel involved with the system in various
ways helps or hinders, and may even prevent, the successful implementation of an information system.
Since, Human Resource Recruitment Process is web-based and user friendly, not much effort was
required in training process.
CONVERSION:
Conversion is the process of changing from the old system to the new system. There are two
methods of handling systems conversion:
Parallel Run
Immediate cut-off
Parallel Run
In this approach, the old system and the new system are used simultaneously for some period of
time so that the performance of the new system can be monitored and compared with that of the old
system. Also in case of failure of the new system, the user can fall back on the old system. The risk of this
approach is that the user may never want to shift to new system.
In this method, the use of the old system ceases as soon as the new system is
implemented and bought in to palace. The old system becomes redundant from the day of implementation
of the new system. There is the high risk involved in this approach if the new system is not tested
126
rigorously. This is because of the fact that if the new system fails, then there will not be anything to fall
back upon. The advantage of this approach is that both the systems need not be used simultaneously.
Implementation Tools
The project was implemented using Java server pages,HTML,Java beans.The implementation work was
carried out in Windows XP/2000 server platform.
1) J2EE
2) Weblogic 8.1
3) Oracle 8i
Coding
This means program construction with procedural specifications has finished and the coding for the
program begins:
Coding step translate a detailed design representation of software into a programming languae
realization.
Main emphasis while coding was on style so that the end result was an optimized code.
127
Coding Style
The structured programming method was used in all the modules the project.It incorporated the following
features
The code has been written so that the definition and implementation of each function is contained
in one file.
A group of related function was clubbed together in one file to include it when needed and save
us from the labour of writing it again and again.
Naming Convention:-
As the project size grows,so does the com[plexity of recognizing the purpose of the variables.Thus
the variables were given meaningful names,whihch would hellp in understanding the context and
the purposse of the variable.
The function names are also given meaningful names that can be easily understood by the user.
Indentation
Judicious use of indentation can make the task of reading and understanding a program much
simpler.Indentation is an essential part of a goog program.If code id intended without thought itv will
seriously affect the readability of the program.
The higher-level statements like he definition of the variables,constants and the function are
intended,with each nested block intended,stating their purpose in the code.
Blank line is also left between each function definition to make the code look neat.
Indentation for each source file stating he purpose of the file is also done.
128
MAINTENANCE
129
MAINTENANCE
Corrective
Adaptive
Perfective.
Perfective maintenance means enhancing the performance or modifying the program(s) to respond
to the users additional or changing needs.
As important as it is, many programmers and analysts are reluctant to perform or identify
themselves with the maintenance effort. There are psychological, personality and professional reasons for
this. In any case, a first class effort must be made to ensure that software changes are made properly and
in time to keep the system in tune with user specifications.
Maintenance is costly. One way to reduce maintenance costs is through maintenance management
and software modification audits. Software modification consists of program rewrites system level
updates, and re-audits of low ranking programs to verify and correct the soft spots.
The outcome should be more reliable software, a reduced maintenance backlog, and higher
satisfaction and morale among the maintenance staff.
130
In HRRP, care has been taken towards maintenance; Loop Holes can be eradicated from the
system from time to time according to changing requirements with lesser cost.
131
EVALUATION
EVALUATION
The evaluation phase ranks vendor proposals and determines the one best suited, Evaluation of the
system is performed to identify its strengths and weaknesses. The actual evaluation can occur along any
of the following dimensions:
Operational Evaluation: Assessment of the manner in which the system functions, including case of
use, response time, overall reliability and level of utilization.
Organizational Impact: Identification and measurement of benefits to the organization in such areas
as financial concerns, operational efficiency and competitive impact.
User Manager Assessment Evaluation of the attitudes of senior and user manager within the
organization, as well as end-users.
132
CONCLUSIONS
133
As evidence of the success of this mission, there are millions of items listed each day in thousands
of different categories. There are items for almost any interest that one could imagine, from sheet music
to automobiles to hand tools to real estate. And the variety doesnt stop there. Need a computer? One
may find it listed in the proper category, in any configuration from very old and obsolete to the latest
greatest machine available. What about antiques? One can find an antique quilt that is up for highest bid,
or maybe an old violin, whose beautiful tones have enchanted many though its years. Tickets. Maybe a
ticket to the next concert of ones favorite artist or play production. One can even find that special bottle
of wine, some aged, exotic cheese, and the perfect mood music for that special occasion.
In this instance it may be true that on eBay, they have something for everybody, whatever their
tastes may be.
Since this system has been generated by using Object Oriented programming, there are many
chances of reusability of the codes in other environment even in different platforms. Also its present
features can be enhanced by some simple modification in the codes so as to reuse it in the changing
scenario.
The site is made in all possible way to meet the user requirements using latest version of available
software and hardware.But as user requirements and operating environment keep changing further
extensions can be made on this.In future some more schemas can be added in the HR Recruitment
Process hence these schemas are to be included in the software developed.
Limitations
Since, every system has some limitations so our proposed system is also not untouchable in this
regard. Although it includes every kind of features, but it cant be used in a huge organization where
number of networks are very large, because the database used in this system is an average one. Also it
doesnt have different kind of access feature for different users.
Though it was planned for this system to be absolutely perfect but everything as such has some
limitations, so does the System. Following may be the drawback in this system.
134
Though this system is developed as a multi user system but it is not a real time
system.
The interaction with the database, every time they are loaded thus the system tends to
be a bit slow.
135
136
APPENDIX-A
APPENDIX-A
137
1. Server side program
2. Data Base.
Data base is the most important thing in this universe as data base gives identity to a thing without data
base existence of a thing is impossible while working on a project first step is to design a database.
Data Base is a collection of tables and table is a collectionof records in a tabular form i.e. in row and
columns.
1. RDBMS.
2. DBMS.
We will be using RDBMS (Relational Database Management System) in our project i.e. oracle 8i Enterprise
edition.
Centralization of database.
Client Server Technology.
Security.
Normalization of Data Base.
Relationship.
Transaction Processor.
It gives some internet related features.
Hence because of these features we are using Oracle as a back end technology.
ABOUT ORACLE 8i
Oracle 8i contains all the features of previous version. It also supports some new features &
enhancement to some existing features. Oracle servers provides deficient & effective solution for the
major features.
138
Large Database & Space Management Control
Many Concurrent Database Performances
High Transaction Processing Performance
High Availability
Controlled Availability
Industry Accepted Standards
Manageable Security
Database Enforced Integrity
Distributed Database System
Portability
Compatibility
Connectivity
Improved Scalability
Improved Security
Improved Performance Via Partition
Enhanced Support for Database Replication
Capability To Handle a Much Larger Number Of Concurrent Users
New & Improved Data Types
139
APPENDIX-B
Because we are working on Distributed Application Based Project we need platform independent Language:-
Technology Used
Introduction to Java
Java is a high level, third-generation programming language, like C, Fortran, Perl and many others. It is a
platform for distributed computing a development and run-time environment that cointains built-in
support for the World Wide Web.
History of Java
Java development began at Sun Microsystems in 1991, the same year the World Wide Web was
conceived. Javas creator, James Gosling did not design java for the Internet. His Objective was to create
a common development environment for consumer electronic devices which was easily portable from one
device to another.
This effort evolved into a language , code named Oak and later renamed Java that retains much of
the syntax and power of c++ , but is simpler and more platform independent.
Java Features
140
Some of the important features of Java are as follows:
Simplicity
Orientation
Platform Independence
Security
High Performance
Multi Threading
Dynamic linking.
Garbage Collection.
One of the most important features of Java is Platform Independence which makes it famous and suitable
language for World Wide Web.
The client application or operating system must have a java byte-code interpreter to execute byte-code
instructions. The interpreter is a part of a lager program called the JVM. The JVM interprets the byte code
into native code and is available on a platform that supports java.
141
Client Side Interface:
J2EE is one of the best solutions that we have had so far for meeting the demand of todays enterprise.
J2EE specifies both the infrastructure for managing our applications, and the service APIs for building our
applications.
The J2EE platform is essentially a distributed application-server environment- a java environment that
provides the following: -
A set of java extension APIs to build applications. These APIs define a programming model for J2EE
applications.
* A run time infrastructure for hosting and managing applications. This is the server runtime in which
our applications resides.
The applications that we could develop with the above may be programs to drive web pages, or
components to implement complex database transactions, or even java applets, all distributed across the
network.
While J2EE bundles together APIs that have been in existence in one form or another for quite sometime,
perhaps its most significant aspect is the abstraction of the runtime infrastructure. The J2EE specification
doesnt specify how a J2EE runtime should or could be built. Instead, J2EE specify roles and interfaces for
applications, and the runtime onto which applications could be deployed. This results in a clear
demarcation between applications and the runtime infrastructure. This demarcation allow the runtime to
abstract most of the infrastructure services that enterprise developers have traditionally attempt to build
on their own. As a result, J2EE application developers could just focus on the application logic and related
service, while leveraging the runtime for all infrastructure-related services.
142
Apart from specifying a set of standard APIs, the J2EE architecture also provides a uniform means of
accessing platform-level services via its runtime environment. Such service includes distributed
transactions, security, messaging etc.
Distributed applications require access to a set of enterprise services. Typical services include transaction
processing, database access, messaging, multithreading etc. The J2EE architecture unifies access to such
services in its enterprise service APIs. However, instead of having to access these service through
proprietary or non standard interfaces, application programs in J2EE can access these APIs via the
container.
There are various API specification in J2EE framework which enable us to create an application at great
speed with minimum effort.
1. JDBC API
The JDBC API provides developers with a way to connect to relational data from within java code. Using
the JDBC API, developers can create a client (which can be anything from an applet to an EJB) that can
connect to a database, execute structured query language statements, and processes the result of those
statements. The API provides connectivity and data access across the range of relational databases. It can
do this because it provides a set of generic database access methods for sql compliant relational
databases. JDBC generalizes the most common database access functions by abstracting the vendor
specific detail of particular database. The result is set of classes and interface, placed in the java.sql
package, which can be used with any database that has an appropriate JDBC drive. This allow JDBC
connectivity to be provided in a consistent way for any database. It also means that with a little care to
ensure the application confirms to the most commonly available database features, an application can be
use with a different database simple by switching to a different JDBC driver. JDBC includes following
packages for the means of database accessing and provides various features of the database. The
packages are as follows: -
143
java.sql Package: -
This package contains classes and interfaces designed with traditional client/server in mind. Its
functionality is focused primarily on basic database programming services such as creating connections,
executing statements and prepared statements, and running batch queries. Advanced functions such as
batch updates, scrollable result sets, transaction isolation, and sql data types are also available.
javax.sql Package: -
This package introduces sum major architectural change to JDBC programming compared to java.sql
package, and provides better abstractions for connections management, distributed transactions, and
legacy connectivity. This package also introduces container-managed connection pooling, distributed
transactions, and row sets.
2. Java Servlets: -
This data is usually entered in a form on a Web page, but could also come from a Java applet or a custom
HTTP client program.
Look up any other information about the request that is embedded in the HTTP request.
This information includes details about browser capabilities, cookies, the host name of the requesting
client, and so forth.
144
Generate the results.
This process may require talking to a database, executing an RMI or CORBA call, invoking a legacy
application, or computing the response directly.
Java Server Pages (JSP) technology enables you to mix regular, static HTML with dynamically generated
content from servlets. Many Web pages that are built by CGI programs are primarily static, with the parts
that change limited to a few small locations. For example, the initial page at most on-line stores is the
same for all visitors, except for a small welcome message giving the visitors name if it is known. But most
CGI variations, including servlets, make you generate the entire page via your program, even though
most of it is always the same. JSP lets you create the two parts separately. Listing 1.1 gives an example.
Most of the page consists of regular HTML, which is passed to the visitor unchanged. Parts that are
generated dynamically are marked with special HTML-like tags and mixed right into the page.
145
The Advantages of JSP
JSP has a number of advantages over many of its alternatives. Here are a few of them.
ASP is a competing technology from Microsoft. The advantages of JSP are twofold. First, the dynamic part
is written in Java, not VBScript or another ASP-specific language, so it is more powerful and better suited
to complex applications that require reusable components. Second, JSP is portable to other operating
systems and Web servers; you arent locked into Windows NT/2000 and IIS. You could make the same
argument when comparing JSP to ColdFusion; with JSP you can use Java and are not tied to a particular
server product.
SSI is a widely supported technology for inserting externally defined pieces into a static Web page.
JSP is better because you have a richer set of tools for building that external piece and have more options
regarding the stage of the HTTP response at which the piece actually gets inserted. Besides, SSI is really
intended only for simple inclusions, not for real programs that use form data, make database
connections, and the like.
146
147
APPENDIX-C
APPENDIX-C
148
What is HTML?
HTML(Hyper Text Markup Language): A markup language used to structure text and multimedi documents
and to set up hypertext links between documents, used extensively on the World Wide Web. HTML is a
display language , not a programming lanfguage. HTML is a markup language(the ML in HTML) that uses a
fixed set of markup tags.
HTML itself is the set of custumizable markup tags that are inserted into HTML document govern
its format, multimedia content, and hyperlinks. Any HTML viewer can display such documents but
they are normally viewed usinga Web browser.
HTML is a programming language in that an HTML document is a program that, when run by a
browser, displays its text as hypermedia (multimedia with hyperlinks).
The language HTML is really only a collection of predefined tags which , when inserted into regular
text, tell a web browser how to:
II. Incorporate i.e. insert a graphic image, video sequence, or sound clip into the displayed
document.
III. Link into other locations, in the same document, in another web page, or even on another
computer(Server), or
IV. Link to other programs written in Java,JavaScript or other languages(called CGI applicatins).
Features of HTML:-
149
The markup teg tell the Web browser how to display the page.
150
APPENDIX-D
What is JAVASCRIPT?
Javascript is a compact , object-based scripting language.It can provide interactive web pages,
validate from data, and make your web page clearer.Javascript is a lightweight interpreted scripting
language.The language is most well known for its use in wesites.It was originally developed by Brendan
Eich of Netscape Communications.It adds interactive functions to HTML pages, which are otherwise
static.Javascript is easier to use than Java, but not as powerful and deals mainly with the elements on the
Web page.On the client, JavaScript is maintained as source code embedded into an HTML page.On the
Server, it is compiled into byte code(intermediate language), similar o Java pograms.
Features Of JavaScript:-
compilation).
All major browsers, like Netscape and Internet Explorer, support JavaScript.
Functions Of JavaScript:-
151
Control document appearance and content
Limitations of JavaScript:-
152
153
REFERENCES
http://www.sun.com
http://www.coreservlets.com
http://www.serverside.com
http://www.w3schools.com
http://www.google.com
http://www.webopedia.com
http://www.ddj.com
BIBILIOGRAPHY
BOOKS
154