HOTEL MANAGEMENT SYSTEM.
CONTENTS
1) Abstrac Abstractt 2) Introduc Introduction tion i)
Proj roject Overv erview
ii)
Softw Software are & Hardw Hardwar aree Sp Spec ecifi ificat cation ion
3) System Analysis i)
Proposed System
ii)
Requi Require reme ment nt Analy Analysis sis & Sp Spec ecif ifica icatio tion n
iii) iii)
Feas Feasib ibil ilit ity y Stud Study y
4) System System Design Design i)
Data Flow Diag iagrams
ii) ii)
Data Data Dict Dictio iona nary ry
iii iii)
ER Diagr agrams
iv)
Software Software & Hardwar Hardwaree Require Requiremen ments ts
5) Form Formss 6) Repor Reports ts 7) System System Testing Testing i)
Unit Testing
ii) ii)
Inte Integr grat atio ion n Te Test stin ing g
iii) iii)
Perf Perfor orma manc ncee Te Test stin ing g
8) Software Software Tools Tools 9) Technical Technical Notes 10) Conclus Conclusion ion 11) Bibliography Bibliography
CONTENTS
1) Abstrac Abstractt 2) Introduc Introduction tion i)
Proj roject Overv erview
ii)
Softw Software are & Hardw Hardwar aree Sp Spec ecifi ificat cation ion
3) System Analysis i)
Proposed System
ii)
Requi Require reme ment nt Analy Analysis sis & Sp Spec ecif ifica icatio tion n
iii) iii)
Feas Feasib ibil ilit ity y Stud Study y
4) System System Design Design i)
Data Flow Diag iagrams
ii) ii)
Data Data Dict Dictio iona nary ry
iii iii)
ER Diagr agrams
iv)
Software Software & Hardwar Hardwaree Require Requiremen ments ts
5) Form Formss 6) Repor Reports ts 7) System System Testing Testing i)
Unit Testing
ii) ii)
Inte Integr grat atio ion n Te Test stin ing g
iii) iii)
Perf Perfor orma manc ncee Te Test stin ing g
8) Software Software Tools Tools 9) Technical Technical Notes 10) Conclus Conclusion ion 11) Bibliography Bibliography
ABSTRACT
eZee Rewards and Loyalty is a software that can be used in the hospitality industry. Through this software the Hotel administration ad ministration can manage their loyalty programs in an effective way. The Hotel Loyalty Programs Programs can be used to entice guests into becoming a regular guest at the hotel. These programs are especially beneficial to hotel chains, where the benefits of the progra program m can span span over their entire entire hotel hotel chain. chain. Per Person sonali alized zed ser servic vicee and rew reward ardss del delive iver r exceptional experiences to guests, and make them come back for more.
The scope of the project defines only those functionalities which are provided by the eZee Rewards and Loyalty Software. On the other hand the scope of the users involved in the Rewards and Loyalty Program is defined as the roles of each user in the system and their accessibilities to the different elements and prospects within the system.
The eZee Rewards and Loyalty System will include three main users who take part in the working of the system as a complete functionality. Considering the complete functionality and interactions within the eZee Rewards and Loyalty System we will define the roles of each user along with their access permissions towards the various elements of the system.
The various users participating in the system are as follows: (i)
The Hotel Hotel Admini Administr strato ator r
(ii) The Hotel Front Desk Office Office (iii) (iii) The Member ( The customer of the hotel who subscribed subscribed for the Hotel’s Hotel’s Rewards and Loyalty Program ) (iv) The System (or the eZee Rewards and Loyalty Software).
INTRODUCTION
The eZee Rewards and Loyalty includes three types of users i.e. the hotel administration, the hotel front desk office and the customers of the hotel. The Hotel Loyalty Program works primarily on the basis of the type of membership cards the hotel administration provides to its customers who subscribed for the hotel loyalty program. These membership cards represent the points allocated to the customers who subscribed for the hotel loyalty program. The subscription to the eZee Rewards and Loyalty is offered to the customers of the hotel when they make their first reservation in the hotel. For this the hotel maintains a subscription form and is made available on the hotel’s website. The hotel can also maintain a paper form which can be given to the new customers who have made their first reservation. The hotel can also opt to send the subscription form through emails to the appropriate customers. The details of all the customers are maintained by the hotel administration as a part of the hotel’s database. The hotel is solely responsible on its decision on how to avail the subscription form to its customers. As a default the eZee Rewards and Loyalty provides the hotel with three types of membership cards i.e. (i) Silver (ii) Gold and (iii) Platinum. The names of these membership cards can be edited as per the will of the hotel. The number of different types in the membership cards can also be edited as per the hotel’s choice. As an initial step after buying the software, the hotel administration has to setup the configuration page of the eZee Rewards and Loyalty to determine how the points are allocated to the different subscribers of the hotel’s Loyalty program. The fields on the configuration page may include the following: (i) Points per day stay and (ii) Points for the overall amount spent. These fields in the configuration page can be edited anytime by the hotel administration. The hotel administration will be given an address book table as a part of the software which can be updated by the hotel staff in order to maintain the records of all the subscribers of the Hotel’s Loyalty Program. This address book is supposed to be updated on a regular basis to contain the updated membership details list of all the subscribers of the Hotel’s Loyalty Program. Initially when a customer of the hotel subscribes for the hotel’s Rewards and
Loyalty program, he/she is given a membership card of silver type. From this moment onwards the customer will be a part of the Rewards and Loyalty Program that the hotel offers. Hence the customer becomes a subscriber for the hotel’s Rewards and Loyalty program and can now increase his points of loyalty by making more and more reservations in this hotel or by spending on other hospitality services offered by the hotel. In this way the customer who is now a member of the Rewards and Loyalty program of the hotel can increase his/her points by becoming a regular customer to the hotel. Moreover by increasing his/her points the customer can improve his/her membership type so as to avail nice offers and discounts from the hotel. The subscribers to this program can view their points from time to time either through the hotels’ website or through automated mails delivered by the hotel. This depends on the hotels decision on how to implement the process of delivering updates to their subscribers. Whenever the subscribers have crossed the milestone of their respective membership type, they are promoted to the next membership type and the new membership card is posted to the respective subscriber’s official postal address. This posting of the membership card is the responsibility of the front desk office of the respective hotel. All this happens when an alert message triggers to the front desk office of the hotel as and when the milestones of any subscriber is crossed. This automated reminder can benefit the hotel’s administration by reducing their overhead of maintaining and updating their customers’ membership details. It also acts as a prime factor in the process of maintaining consistency in updating the records. In this way it is close to impossible for the management to miss on the updating of any membership account.
Figure:Overview of eZee Rewards and Loyalty Software
PROJECT OVERVIEW:
This section involves the scope of the project and the scope of its users. The scope of the project defines only those functionalities which are provided by the eZee Rewards and Loyalty Software. On the other hand the scope of the users involved in the Rewards and Loyalty Program is defined as the roles of each user in the system and their accessibilities to the different elements and prospects within the system. The eZee Rewards and Loyalty System will include three main users who take part in the working of the system as a complete functionality. Considering the complete functionality and interactions within the eZee Rewards and Loyalty System we will define the roles of each user along with their access permissions towards the various elements of the system. The various users participating in the system are as follows: (i) The Hotel Administrator (ii) The Hotel Front Desk Office (iii) The Member ( The customer of the hotel who subscribed for the Hotel’s Rewards and Loyalty Program ) (iv) The System (or the eZee Rewards and Loyalty Software).
1) Role Based Access
a) The Hotel Administrator Administrator
i) Configures Configures The Configurati Configuration on Page The hotel administrator is responsible for deciding on the number of points to be allocated per day stay and also the number of points allocated for each hospitality service provided by the hotel. These hospitality services may include: Reservation charges, Add Ons, Restaurants, Bars, Shops, Other Extra Charges depending on the corresponding hotel.
ii) Creation Creation Of A New Member The hotel administrator can create a new user in the Rewards and Loyalty Program by approvi approving ng the subscr subscript iption ion submit submitted ted by the custom customer er as legiti legitimat matee only only after after reviewing his/her details completely.
iii) Creation Of The Subscription Form For The Rewards And Loyalty Program The hotel administrator can design the subscription form for making it available to all the customers who are new to the hotel. Having made their first reservation, these customers are provided with the subscription form.
iv) Making The Subscription Form Available To The New Customers The hotel administrator can do this in three ways as mentioned below: •
The form can be made available on the hotel’s website.
•
The form can be mailed to his new customers ( i.e. those customers who have just made their first reservation in the hotel ).
•
The form can be handed over in hand at the time when the customer makes his/her reservation for the first time in the hotel.
v) Manage Existing Existing Members Members •
The hotel administrator has the access to all his subscribers’ information and can therefore communicate with them. He can send automated messages to his eligible subscribers about any offers or discounts which are announced.
•
The hotel administr administrator ator can send alert messages to the existing Rewards and Loyalty members ( i.e. customers who have subscribed for the Rewards and Loyalty Program ) regarding their membership expiry issues.
•
The hotel administrator maintains the details of all the members of the hotel’s Rewards and Loyalty Program.
•
Apart from details in the form of data records and tables like address book the hotel administrator also maintains and generates reports for details of all the subscribers to the hotel’s Rewards and Loyalty Program.
vi) Maintains Information About Cards To Be Sent The hotel administrator maintains a list of all the cards that are to be delivered to the respective members of the Rewards and Loyalty Program along with their complete details. This list may include members who have lost their membership cards and also the new members of the Rewards and Loyalty Program.
vii)Reward Redemption The hotel hotel admini administr strato atorr mainta maintains ins all the detail detailss of reward reward redemp redemptio tion n and the members associated with this functionality.
b) The Hotel Hotel Front Desk Offic Officee
i) Delivers Delivers Membership Membership Cards To Member Memberss •
The Front Desk Office is prompted when there is a member membership points cross the milestone of the respective membership card type. In this case the front desk office is responsible for delivering the updated card to the respective member of the Rewards and Loyalty Program.
•
The Front Desk Office is also responsible for delivering membership cards to all the members of the list given by the hotel administrator. This list includes the members who have lost their membership cards and have applied for new ones and also those members who are new to the Rewards and Loyalty Program and are yet to receive their default membership cards.
c) The Member Member
i) View The Member’s Member’s Profile Profile Page The members i.e. the customers who have subscribed for the Rewards and Loyalty Program of the hotel can view their profile page in the hotel’s website under the
Rewards Rewards and Loyalt Loyalty y sectio section. n. This This profil profilee page page also also contai contains ns the Reward Rewardss and Loyalty points of the member along with the membership details.
ii) Apply For A New Membership Card The member can apply ap ply for a new membership card in case he/she loses their card.
iii) Interact With The Front Desk Office The member can interact with the front desk office of the hotel for any kind of enquiries.
d) The System System ( or the eZee Rewards Rewards and Loyalty Loyalty Software Software )
i) Maintains Maintains The Configurati Configuration on Page The latest configuration details are maintained. These details are available for the hotel administrator to modify whenever necessary. The hotel administrator can find these details on the configuration page in the Rewards and Loyalty section of the hotel’s website. ii) Maintains A View/Modify Page This This page is only only availab available le for the hotel hotel admini administr strato atorr to modify modify or update update its members’ membership details. iii) Maintains A Search Page This is provided for the hotel administrator and the hotel front desk office. Through this this a sear search ch can can be made made possi possibl blee for for a memb member er’s ’s deta detail ilss or for for a part partic icul ular ar reservation’s details. iv) Maintains A Reports Page Through this the system generates reports for the different users and also for the different reservations related to the hotel. This pages accessibility can be defined by the hotel administrator. 2) This page includes includes a confirmation confirmation message message for making a reservation reservation in the hotel. Hence this this page is seen when a user makes a reservation in the hotel.
3) This page also includes two options. These are respectively for viewing the user’s profile if he/she is already a member in the Rewards and Loyalty Program of the hotel and for viewing the Rewards and Loyalty Form for subscribing for the Rewards and Loyalty Program of the hotel if he/she is new to this program.
SOFTWARE & HARDWARE SPECIFICATION
Software:
Server Side:
Microsoft Windows XP Internet explorer 5.0 or above or Netscape navigator. Java 6.0 Eclipse 3.4(IDE) Jboss 4.2.3GA(AS) Mysql 5.0 (DB) Navicat( DB client) Client Side:
Any Web Browser on any Windows operating system.
Hardware:
Pentium Dual Core Processor. 1.87 GB RAM. 150GB Hard Disk space.
SYSTEM ANALYSIS
PROPOSED SYSTEM: eZee Rewards and Loyalty is a software that can be used in the hospitality industry. Through this software the Hotel administration can manage their loyalty programs in an effective way. The Hotel Loyalty Programs can be used to entice guests into becoming a regular guest at the hotel. These programs are especially beneficial to hotel chains, where the benefits of the program can span over their entire hotel chain. Personalized service and rewards deliver exceptional experiences to guests, and make them come back for more.
The system will be divided into the following subsystems.
User Get Information
eZee Loyalty and Rewards is a Web Application. In this system administrator collects the information from different hotels. eZee Loyalty and Rewards system administrator contacts the specified rooms and collects the information and update the information time to time and store in database in a flexible manner.
REQUIREMENT ANALYSIS & SPECIFICATION: The scopes of eZee Loyalty and Rewards are: The scope of the project defines only those functionalities which are provided by the
eZee Rewards and Loyalty Software. The scope of the users involved in the Rewards and Loyalty Program is defined as the
roles of each user in the system and their accessibilities to the different elements and prospects within the system.. The scope of this system includes planning and designing. The contents are as follows:
User Module Tasks:
Create a separate Menu item in eZeeFrontOffice application called “Loyalty and Rewards”
In that create the following sub menu items viz., Menu Structure Loyalty and Rewards Configure
Membership Levels
Points
o
Metric Types
o
Qualification Metrics
o
Points Allocation
o
Points Purchase
o
Rewards
Membership Details
Add/View/Modify Search Reports
FEASIBILITY STUDY
TECHINICAL FEASIBILITY:
Evaluating the technical feasibility is the trickiest part of a feasibility study. This is because, .at this point in time, not too many detailed design of the system, making it difficult to access issues like performance, costs on (on account of the kind of technology to be deployed) etc. A number of issues have to be considered while doing a technical analysis. i)
Understand the different technologies involved in the proposed system: Before commencing the project, we have to be very clear about what are the technologies that are to be required for the development of the new system.
ii)
Find out whether the organization currently possesses the required technologies: o
Is the required technology available with the organization?
o
If so is the capacity sufficient? For instance –
“Will the current printer be able to handle the new reports and forms required for the new system?”
OPERATIONAL FEASIBILITY:
Proposed projects are beneficial only if they can be turned into information systems that will meet the organizations operating requirements. Simply stated, this test of feasibility asks if the system will work when it is developed and installed. Are there major barriers to Implementation? Here are questions that will help test the operational feasibility of a project:
Is there sufficient support for the project from management from users? If the current system is well liked and used to the extent that persons will not be able to see reasons for change, there may be resistance.
Are the current business methods acceptable to the user? If they are not, Users may welcome a change that will bring about a more operational and useful systems.
Have the user been involved in the planning and development of the project?
Early involvement reduces the chances of resistance to the system and in
General and increases the likelihood of successful project. Since the proposed system was to help reduce the hardships encountered. In the existing
manual system, the new system was considered to be operational feasible.
ECONOMIC FEASIBILITY:
Economic feasibility attempts 2 weigh the costs of developing and implementing a new system, against the benefits that would accrue from having the new system in place. This feasibility study gives the top management the economic justification for the new system. A simple economic analysis which gives the actual comparison of costs and benefits are much more meaningful in this case. In addition, this proves to be a useful point of reference to compare actual costs as the project progresses. There could be various types of
intangible benefits on account of automation. These could include increased custom satisfaction, improvement in product quality better decision making timeliness of information, expediting activities, improved accuracy of operations, better documentation and record keeping, faster retrieval of information, better employee morale.
SYSTEM DESIGN
DATA FLOW DIAGRAMS Data flows are data structures in motion, while data stores are data structures. Data flows are paths or ‘pipe lines’, along which data structures travel, where as the data stores are place where data structures are kept until needed. Data flows are data structures in motion, while data stores are data structures at rest. Hence it is possible that the data flow and the data store would be made up of the same data structure. Data flow diagrams is a very handy tool for the system analyst because it gives the analyst the overall picture of the system, it is a diagrammatic approach. A DFD is a pictorial representation of the path which data takes From its initial interaction with the existing system until it completes any interaction. The diagram will describe the logical data flows dealing the movements of any physical items. The DFD also gives the insight into the data that is used in the system i.e., who actually uses it is temporarily stored. A DFD does not show a sequence of steps. A DFD only shows what the different process in a system is and what data flows between them. The following are some DFD symbols used in the project
External entities
Process: A transaction of information that resides within the bounds of the system to be module.
DATAFLOWS DATASTORE: A repository of data that is to be stored for use by one or more processes, may be as simple as buffer of queue or as a relational
RULES FOR DFD:
•
Fix the scope of the system by means of context diagrams.
•
Organize the DFD so that the main sequence of the actions reads left to right and top to bottom.
•
Identify all inputs and outputs.
•
Identify and label each process internal to the system with rounded circles.
•
A process is required for all the data transformation and transfers. Therefore, never connect a data store to a data source or the destinations or another data store with just a data flow arrow.
•
Do not indicate hardware and ignore control information.
•
Make sure the names of the processes accurately convey everything the process is done.
•
There must not be unnamed process.
•
Indicate external sources and destinations of the data, with squares.
•
Number each occurrence of repeated external entities.
•
Identify all data flows for each process step, except simple Record retrievals.
•
Label data flow on each arrow.
•
Use details flow on each arrow.
•
Use the details flow arrow to indicate data movements.
•
There can’t be unnamed data flow.
•
A data flow can’t connect two external entity.
LEVELS OF DFD:
The complexity of the business system means that it is a responsible to represent the operations of any system of single data flow diagram. At the top level, an Overview of the different systems in an organization is shown by the way of context analysis diagram. When exploded into DFD They are represented by: •
LEVEL-0 : SYSTEM INPUT/OUTPUT
•
LEVEL-1 : SUBSYSTEM LEVEL DATAFLOW FUNCTIONAL
•
LEVEL-2 : FILE LEVEL DETAIL DATA FLOW.
The input and output data shown should be consistent from one level to the next.
LEVEL-0:
SYSTEM INPUT/OUTPUT LEVEL
A level-0 DFD describes the system-wide boundaries, dealing inputs to and outputs from the system and major processes. This diagram is similar to the combined user-level context diagram.
LEVEL-1: SUBSYSTEM LEVEL DATA FLOW
A level-1 DFD describes the next level of details within the system, detailing the data flows between subsystems, which makeup the whole.
LEVEL-2: FILE LEVEL DETAIL DATA FLOW
All the projects are feasible given unlimited resources and infinite time. It is both necessary and prudent to evaluate the feasibility of the project at the earliest possible time. Feasibility and the risk analysis are pertained in many ways. If project risk is great.
DATA DICTIONARY
ER DIAGRAMS UNIFIED MODELING LANGUAGE DIAGRAMS •
The unified modeling language allows the software engineer to express an analysis model using the modeling notation that is governed by a set of syntactic semantic and pragmatic rules.
•
A UML system is represented using five different views that describe the system from distinctly different perspective. Each view is defined by a set of diagram, which is as follows.
•
User Model View i. This view represents the system from the users perspective. ii. The analysis representation describes a usage scenario from the end-users perspective.
Structural model view In this model the data and functionality are arrived from inside the
system. This model view models the static structures.
Behavioral Model View It represents the dynamic of behavioral as parts of the system,
depicting the interactions of collection between various structural elements described in the user model and structural model view. Implementation Model View
In this the structural and behavioral as parts of the system are
represented as they are to be built.
Environmental Model View In this the structural and behavioral aspects of the environment in which the system is to be implemented are represented. UML is specifically constructed through two different domains they are
UML Analysis modeling, which focuses on the user model and structural model views of the system. UML design modeling, which focuses on the behavioral modeling,
implementation modeling and environmental model views.
Use case Diagrams represent the functionality of the system from a user’s point of view. Use cases are used during requirements elicitation and analysis to represent the functionality of the system. Use cases focus on the behavior of the system from external point of view.
Actors are external entities that interact with the system. Examples of actors include users like administrator, bank customer …etc., or another system like central database.
Use Case diagram Admin: eZee Loyalty and Rewards
Login Password
Configure
Search
Admin
Add/View
Reports
Use Case Diagram User : eZee Loyalty and Rewards
Registration Login
Forgot Password
Update Profile
User
View Details
Get Rooms Log Out
Sequence Diagram - eZee Loyalty and Rewards (Admin Login)
Administrator
Login
Home
1 : Login()
2 : I nvalid Data()
3 : Re quest to DB()
4 : Response from DB() 5 : Get Home()
Data Base
User Login Sequence
U se r
Lo gin
Home
1 : Log in()
2 : Inv alid Data()
3 : R e q u e s t t o D B( )
4 : R esponse from DB()
5 : Get Home()
Data Base
User Activities
U se r
P a sw o rd
V ie w
M o d if y
D a ta Ba se
1 : C ha ng e ()
2 : Vie w o w n D e ta ils( )
3 : M o dif y ()
4 : S a v e ()
5 : Sa v e () 6 : Sa v e ()
SOFTWARE & HARDWARE REQUIREMENTS
Client Server Over view: With the varied topic in existence in the fields of computers, Client Server is one, which has generated more heat than light, and also more hype than reality. This technology has acquired a certain critical mass attention with its dedication conferences and magazines. Major computer vendors such as IBM and DEC; have declared that Client Servers is their main future market. A survey of DBMS magazine reveled that 76% of its readers were actively looking at the client server solution. The growth in the client server development tools from $200 million in 1992 to more than $1.2 billion in 1996. Client server implementations are complex but the underlying concept is simple and powerful. A client is an application running with local resources but able to request the database and relate the services from separate remote server. The software mediating this client server interaction is often referred to as MIDDLEWARE. The typical client either a PC or a Work Station connected through a network to a more powerful PC, Workstation, Midrange or Main Frames server usually capable of handling request from more than one client. However, with some configuration server may also act as client. A server may need to access other server in order to process the original client request. The key client server idea is that client as user is essentially insulated from the
physical location and formats of the data needs for their application. With the proper middleware, a client input from or report can transparently access and manipulate both local database on the client machine and remote databases on one or more servers. An added bonus is the client server opens the door to multi-vendor database access indulging heterogeneous table joins. What is a Client Server Two prominent systems in existence are client server and file server systems. It is essential to distinguish between client servers and file server systems. Both provide shared
network access to data but the comparison dens there! The file server simply provides a remote disk drive that can be accessed by LAN applications on a file-by-file basis. The client server offers full relational database services such as SQL-Access, Record modifying, Insert, Delete with full relational integrity backup/ restore performance for high volume of transactions, etc. the client server middleware provides a flexible interface between client and server, who does what, when and to whom.
Why Client Server Client server has evolved to solve a problem that has been around since the earliest days of computing: how best to distribute your computing, data generation and data storage resources in order to obtain efficient, cost effective departmental an enterprise wide data processing. During mainframe era choices were quite limited. A central machine housed both the CPU and DATA (cards, tapes, drums and later disks). Access to these resources was initially confined to batched runs that produced departmental reports at the appropriate intervals. A strong central information service department ruled the corporation. The role of the rest of the corporation limited to requesting new or more frequent reports and to provide hand written forms from which the central data banks were created and updated. The earliest client server solutions therefore could best be characterized as “SLAVE-MASTER”. Time-sharing changed the picture. Remote terminal could view and even change the central data, subject to access permissions. And, as the central data banks evolved in to sophisticated relational database with non-programmer query languages, online users could formulate adhoc queries and produce local reports with out adding to the MIS applications software backlog. However remote access was through dumb terminals, and the client server remained subordinate to the Slave\Master.
Front end or User Interface Design The entire user interface is planned to be developed in browser specific environment with a touch of Intranet-Based Architecture for ach ieving the Distributed Concept.
The browser specific components are designed by using the HTML standards, and the dynamism of the designed by concentrating on the constructs of the Java Server Pages. Communication or Database Connectivity Tier The Communication architecture is designed by concentrating on the Standards of Servlets and Enterprise Java Beans. The database connectivity is established by using the Java Data Base Connectivity. The standards of three-tire architecture are given major concentration to keep the standards of higher cohesion and limited coupling for effectiveness of the operations. Features of The Language Used In my project, I have chosen JAVA for developing the code.
About JAVA
Introduction The Java programming language and environment is designed to solve a number of problems in modern programming practice. Java started as a part of a larger project to develop advanced software for consumer electronics. These devices are small, reliable, portable, distributed, real-time embedded systems. When we started the project we intended to use C++, but encountered a number of problems. Initially these were just compiler technology problems, but as time passed more problems emerged that were best solved by changing the language.
Java A simple, object-oriented, network-savvy, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded, dynamic language. One way to characterize a system is with a set of buzzwords. We use a standard set of them in describing Java. Here's an explanation of what we mean by those buzzwords and the problems we were trying to solve. Archimedes Inc. is a fictitious software company that produces software to teach about basic physics. This software is designed to interact with the user, providing not only text and illustrations in the manner of a traditional textbook, but also a set of software lab benches on which experiments can be set up and their behavior simulated. The most basic experiment allows
students to put together levers and pulleys and see how they act. The italicized narrative of the trials and tribulations of the Archimedes' designers is used here to provide examples of Java language concepts.
Simple We wanted to build a systsem that could be programmed easily without a lot of esoteric training and which leveraged today's standard practice. Most programmers working these days use C, and most programmers doing object-oriented programming use C++. So even though we found that C++ was unsuitable, we designed Java as closely to C++ as possible in order to make the system more comprehensible. Java omits many rarely used, poorly understood, confusing features of C++ that in our experience bring more grief than benefit. These omitted features primarily consist of operator overloading (although the Java language does have method overloading), multiple inheritance, and extensive automatic coercions. We added automatic garbage collection, thereby simplifying the task of Java programming but making the system somewhat more complicated. A common source of complexity in many C and C++ applications is storage management: the allocation and freeing of memory. By virtue of having automatic garbage collection (periodic freeing of memory not being referenced) the Java language not only makes the programming task easier, it also dramatically cuts down on bugs. The folks at Archimedes wanted to spend their time thinking about levers and pulleys, but instead spent a lot of time on mundane programming tasks. Their central expertise was teaching, not programming. One of the most complicated of these programming tasks was figuring out where memory was being wasted across their 20K lines of code. Another aspect of being simple is being small. One of the goals of Java is to enable the construction of software that can run stand-alone in small machines. The Java interpreter and standard libraries have a small footprint. A small size is important for use in embedded systems and so Java can be easily downloaded over the net.
Object-Oriented This is, unfortunately, one of the most overused buzzwords in the industry. But object-oriented design is very powerful because it facilitates the clean definition of interfaces and makes it possible to provide reusable "software ICs." Simply stated, object-oriented design is a technique that focuses design on the data (=objects) and on the interfaces to it. To make an analogy with carpentry, an "object-oriented" carpenter would be mostly concerned with the chair he was building, and secondarily with the tools used to make it; a "non-object-oriented" carpenter would think primarily of his tools. Object-oriented design is also the mechanism for defining how modules "plug and play." The object-oriented facilities of Java are essentially those of C++, with extensions from Objective C for more dynamic method resolution. The folks at Archimedes had lots of things in their simulation, among them ropes and elastic bands. In their initial C version of the product, they ended up with a pretty big system because they had to write separate software for describing ropes versus elastic bands. When they rewrote their application in an object-oriented style, they found they c ould define one basic object that represented the common aspects of ropes and elastic bands, and then ropes and elastic bands were defined as variations (subclasses) of the basic type. When it came time to add chains, it was a snap because they could build on what had been written before, rather than writing a whole new object simulation.
Multithreaded There are many things going on at the same time in the world around us. Multithreading is a way of building applications with multiple threads Unfortunately, writing programs that deal with many things happening at once can be much more difficult than writing in the conventional single-threaded C and C++ style. Java has a sophisticated set of synchronization primitives that are based on the widely used monitor and condition variable paradigm introduced by C.A.R.Hoare. By integrating these concepts into the language (rather than only in classes) they become much easier to use and are more robust. Much of the style of this integration came from Xerox's Cedar/Mesa system.
Other benefits of multithreading are better interactive responsiveness and real-time behavior. This is limited, however, by the underlying platform: stand-alone Java runtime environments have good real-time behavior. Running on top of other systems like Unix, Windows, the Macintosh, or Windows NT limits the real-time responsiveness to that of the underlying system. Lots of things were going on at once in their simulations. Ropes were being pulled, wheels were turning, levers were rocking, and input from the user was being tracked. Because they had to write all this in a single threaded form, all the things that happen at the same time, even though they had nothing to do with each other, had to be manually intermixed. Using an "event loop" made things a little cleaner, but it was still a mess. The system became fragile and hard to understand. They were pulling in data from all over the net. But originally they were doing it one chunk at a time. This serialized network communication was very slow. When they converted to a multithreaded style, it was trivial to overlap all of their network communication.
Basic concepts of OOPS
•
Objects
•
Classes
•
Inheritance
•
Data Abstraction
•
Data Encapsulation
•
Polymorphism
•
Overloading
•
Reusability In order to understand the basic concepts in C++, the programmer must have a
command of the basic terminology in object-oriented programming. Below is a brief outline of the concepts of Object-oriented programming languages:
Objects:
Object is the basic unit of object-oriented programming. Objects are identified by its unique name. An object represents a particular instance of a class. There can be more than one instance of an object. Each instance of an object can hold its own relevant data. An Object is a collection of data members and associated member functions also known as methods. Classes:
Classes are data types based on which objects are created. Objects with similar properties and methods are grouped together to form a Class. Thus a Class represent a set of individual objects. Characteristics of an object are represented in a class as Properties . The actions that can be performed by objects becomes functions of the class and is referred to as Methods.
Cars under which Santro Xing For example consider we have a Class of , Alto and
Object will have its own, Model, WaganR represents individual Objects. In this context each Car Year of Manufacture, Colour, Top Speed, Engine Power etc., which form Properties of the Car class and the associated actions i.e., object functions like Start, Move, Stop form the Methods of Car Class.
No memory is allocated when a class is created. Memory is allocated only when an object is created, i.e., when an instance of a class is created. Inheritance:
base class. Inheritance is the process of forming a new class from an existing class or
The base class is also known as parent class or super class, The new class that is formed is sub class. Inheritance helps called derived class. Derived class is also known as a child class or
in reducing the overall code size of the program, which is an important concept in objectoriented programming.
Data Abstraction:
Data Abstraction increases the power of programming language by creating user defined data types. Data Abstraction also represents the need ed information in the program without presenting the details. Data Encapsulation:
Data Encapsulation combines data and functions into a single unit called Class. When using Data Encapsulation, data is not accessed directly; it is only accessible through the functions present inside the class. Data Encapsulation enables the important concept of data hiding possible. Polymorphism:
Polymorphism allows routines to use variables of different types at different times. An operator or function can be given different meanings or functions. Polymorphism refers to a single function or multi-functioning operator performing in different ways. Overloading:
Overloading is one type of Polymorphism. It allows an object to have different meanings, depending on its context. When an exiting operator or function begins to operate on new data type, or class, it is understood to be overloaded. Reusability:
This term refers to the ability for multiple programmers to use the same written and debugged existing class of data. This is a time saving device and adds code efficiency to the language. Additionally, the programmer can incorporate new features to the existing class, further developing the application and allowing users to achieve increased performance. This time saving feature optimizes code, helps in gaining secured applications and facilitates easier maintenance on the application.
ABOUT JBOSS SEAM
Introduction Yet another Web Application Framework! This time it is from JBoss Community. JBoss provides a new Web Application Framework called "JBoss Seam" which combines the advantages from the two rapidly growing technologies Enterprise Java Beans 3.0 and Java Server Faces. JBoss Seam, by sitting on top of J2EE provides a nice way of integration between
JSF and EJB Components with other great functionalities. This article is an introductory article only and it covers the idea that gave birth to JBoss Seam, its advantages, the various modules involved along with a Sample Application. This article assumes the readers to have some bit of knowledge and programming in areas like Java Server Faces and Enterprise Java Beans 3.0. For more information about these technologies, visit http://jsf.javabeat.net/index.php and http://www.javabeat.net/javabeat/ejb3/index.php.
The Need for JBoss Seam Let us exactly define what JBoss seam is. JBoss Seam provides a Light-weight Container for J2EE standards and it addresses the long-standing issues in any Typical Web
Application like State Management and Better Browser Navigation. It also neatly provides an integration between the two popular technologies, Java Server Faces (in the UI tier) and Enterprise Java Beans (EJB 3 in the Server Side). Before getting into the various details about
JBoss Seam let us see the common set of problems that are being faced in a Development and the Usability of a typical Web Application using Java Server Faces and Enterprise Java Beans. For this, let us assume an imaginary application. Let us keep the requirements of the imaginary Web Application we are going to consider very small. The Web Application is a simple Registration Application, which provides the user with a View which contains username and password text-fields. User can click the submit button a fter filling both the fields. If the username password information given by the user is not foun d in the database, the user is assumed to be a new user and he is greeted with a welcome message; else an error page is displayed with appropriate message.
Let us analysis the roles of JSF and EJB 3.0 in this Web Application. More specifically, we will analysis the various components in both the client as well the server tier along with their responsibilities. In the Client side, for designing and presenting the form with the input controls (text-field and button) to the user, we may have written a userinput.jsp page with the set of JSF core tag libraries like and . And then, a JSF Managed Bean called UserBean encapsulated with properties(username and password) may have been coded which serves as a Model. The UIcomponents values within the JSP page would have got bound to the properties of the Managed Bean with the help of JSF Expression Language. Since the logic is to query from the database for the existence of the username and the password, a Stateless Session Facade Bean would have been written whose sole purpose is to persistence the client information to the database. For persistence the information, the Session Bean may depend on the EntityManager API for querying and persisting entities. The Data Traversal Logic from JSF to EJB Session Bean should have be taken care by the Managed Bean only. The Managed Bean apart from representing a Model may also act as a Listener in handling the button click events. Say, after clicking the register button, one of the action methods within the Managed Bean would have been called by the framework, and here the Bean might have a JNDI Look-up to get an instance of the Session Bean to persisting or querying the user information. If we look at carefully, the JSF Managed Bean is serving as an intermediary between the transfer of Data from the Client to the Server. Within this Managed
Bean is the code for getting a reference to the Session Bean for doing various other functionalities. Wouldn't a direct commnication between JSF UI Components and the Enterprise Bean Components be nice? There is no purpose of the intermediate Managed Bean in
this case. JBoss Seam provides a very good solution for this. Not only this many of the outstanding problems that are faced in a Web Application are also addressed and given solution in this Framework.
Advantages of JBoss Seam Following are the major advantages that a Web Application may enjoy if it uses JBoss Seam Framework . They are
•
Integration of JSF and EJB
•
Stateful Web Applications
•
Dependency Bijection Support
Let us look into the various advantages of JBoss Seam in the subsequent sections.
3.1) Integration of JSF and EJB Today the Web Application World see more and more matured technologies that are focusing to establish an easy-to-use development by reducing lots and lots of boiler-plate code along with some other added functionalities in their own domains. Let us consider JSF and EJBtechnologies to extend further discussion regarding this. EJB 3.0 which is a specification given from Sun has gained much popularity because of its simplified yet robust programming model. Much of the middle-ware related services like Security, Transactions, Connection Pooling etc is delegated to the container itself. Comparing to its predecessors, EJB 3.0 offers a POJO programming Model . No need for your beans to extend or implement EJB specific classes or interfaces. And also, along with the new specification Java Persistence API (JPA) http://www.javabeat.net/javabeat/ejb3/articles/2007/04/introduction_to_java_persistence_api_jpa _ejb_3_0_1.php, an unified programming model to access the underlying database along with rich set of features are now possible thereby completely eliminating the he avy-headed entity beans. Java Server Faces provides a Component-based approach for developing User
Interface Components in a Web Application. It hides most of the boiler-plate code and provides a higher-level abstraction over the client request and the server response objects. UsingJava Server Faces, a Web Application can be viewed by components making events and listeners executing the appropriate logic for the Events. No need for the traditional HttpServletRequest and HttpServletResponse object to extract the client input parameters and to generate the response.
JBoss provides a framework in which the Events that are emitted by the JSF UI Components can be directly handled by the Enterprise Beans. No need for the intermediate
Managed Beans which establishes the data transfer from and to JSF and EJB.
3.2) Dependency Bijection Support Before getting into Dependency Bijection, it is wise to look at the two types: namely Dependency Injection and Dependency Outjection. These two are the popular patterns and
modern Frameworks and Containers makes use of this abundantly. Let us see these two techniques
3.2.1) Dependency Injection This model is used when a Component or a Service which is running inside some Framework or a Container is well known in the early stages so that the Framework/Container
can create instances of them thereby taking the burden from the Clients. These type of model is used heavily in most of the J2EEComponents, to name a few, EJB, Servlets, JMS etc.
3.2.2) Dependency Outjection In Dependency Injection, usually the Framework injects the services to components that are in need of, whereas the reverse happens in Dependency Outjection.
3.3) Stateful Web Applications Since the underlying protocol used in a Web Application is Http, all Web Application are Stateless in nature. Precisely it means that all the requests that are coming from the Client Browser are treated as individual requests only. The Server shows no partiality for the Client Requests. It is up to the Application or the Framework to identify whether requests are coming from the same Client or not. Session Management in Web Application is a timeconsuming job and typically Servlets/Jsp provides various ways to manage sessions. Even in this case, Application Developers still have to depend on HttpSession like classes for creating session objects and storing/retrieving objects from the session.
JBoss Seam provides an excellent way to Manage States amongst multiple client requests. The State Management Facility is tightly integrated with Seam Components in the form of various Contexts. Following are the most commonly used Contexts in Seam. •
Conversation – A Conversation generally represents multiple requests that come from
the same client. Components that come under this category can remember the state of the client and this forms the heart of State Management in Seam. •
Application – This context generally holds information that is used by various
components within the same Application. •
Session – Components that fall under this category simply uses Http Session Api for state
management. •
Page – The scope of the components managing the information is restricted to the
Current Page only. All the stored information is lost when the user leaves this current page. •
Stateless – Components that falls under this category don't manage state between
multiple Client Requests.
ABOUT RICH FACES
Introduction RichFaces is an open source framework that adds Ajax capability into existing JSF applications without resorting to JavaScript. RichFaces leverages JavaServer Faces framework including lifecycle, validation, conversion facilities and management of static and dynamic resources. RichFaces components with built-in Ajax support and a highly customizable look-and -feel can be easily incorporated into JSF applications. RichFaces allows to: •
Intensify the whole set of JSF benefits while working with Ajax. RichFaces is fully
integrated into the JSF lifecycle. While other frameworks only give you access to the managed
bean facility, RichFaces advantages the action and value change listeners, as well as invokes server-side validators and converters during the Ajax request-response cycle. •
Add Ajax capability to the existing JSF applications. Framework provides two
components libraries (Core Ajax and UI). The Core library sets Ajax functionality into existing pages, so there is no need to write any JavaScript code or to replace existing components with new Ajax ones. RichFaces enables page-wide Ajax support instead of the traditional componentwide support and it gives the opportunity to define the event on the page. An event invokes an Ajax request and areas of the page which become synchronized with the JSF Component Tree after changing the data on the server by Ajax request in accordance with events fired on the client. •
Create quickly complex View basing on out of the box components. RichFaces UI library
contains components for adding rich user interface features to JSF applications. It extends the RichFaces framework to include a large (and growing) set of powerful rich Ajax-enabled components that come with extensive skins support. In addition, RichFaces components are designed to be used seamlessly with other 3d-party component libraries on the same page, so you have more options for developing your applications. •
Write your own custom rich components with built-in Ajax support. We're a lways
working on improvement of Component Development Kit (CDK) that was used for RichFaces UI library creation. The CDK includes a code-generation facility and a templating facility using a JSP-like syntax. These capabilities help to avoid a routine process of a component creation. The component factory works like a well-oiled machine allowing the creation of first-class rich components with built-in Ajax functionality even more easily than the creation of simpler components by means of the traditional coding approach. •
Package resources with application Java classes. In addition to its core, Ajax functionality
of RichFaces provides an advanced support for the different resources management: pictures, JavaScript code, and CSS stylesheets. The resource framework makes possible to pack easily these resources into Jar files along with the code of your custom components. •
Easily generate binary resources on-the-fly. Resource framework can generate images,
sounds, Excel spreadsheets etc.. on-the-fly so that it becomes for example possible to create images using the familiar approach of the "Java Graphics2D" library.
•
Create a modern rich user interface look-and-feel with skins-based technology.
RichFaces provides a skinnability feature that allows easily define and manag e different color schemes and other parameters of the UI with the help of named skin parameters. Hence, it is possible to access the skin parameters from JSP code and the Java code (e.g. to adjust generated on-the-fly images based on the text parts of the UI). RichFaces comes with a number of predefined skins to get you started, but you can also easily create your own custom skins. •
Test and create the components, actions, listeners, and pages at the same time. An
automated testing facility is in our roadmap for the near future. This facility will generate test cases for your component as soon as you develop it. The testing framework will not just test the components, but also any other server-side or client-side functionality including JavaScript code . What is more, it will do all of this without deploying the test application into the Servlet container. RichFaces UI components come ready to use out-of-the-box, so developers save their time and immediately gain the advantage of the mentioned above features in Web applications creation. As a result, usage experience can be faster and easily obtained.
ABOUT HIBERNATE 3.0 Hibernate 3.0, the latest Open Source persistence technology at the heart of J2EE EJB 3.0 is available for download from Hibernet.org.The Hibernate 3.0 core is 68,549 lines of Java code together with 27,948 lines of unit tests, all freely available under the LGPL, and has been in development for well over a year. Hibernate maps the Java classes to the database tables. It also provides the data query and retrieval facilities that significantly reduces the development time. Hibernate is not the best solutions for data centric applications that only uses the storedprocedures to implement the business logic in database. It is most useful with object-oriented domain modes and business logic in the Java-based middle-tier. Hibernate allows transparent persistence that enables the applications to switch any database. Hibernate can be used in Java Swing applications, Java Servlet-based applications, or J2EE applications using EJB session beans.
Features of Hibernate •
Hibernate 3.0 provides three full-featured query facilities: Hibernate Query Language ,
the newly enhanced Hibernate Criteria Query API , and enhanced support for queries expressed in the native SQL dialect of the database.
•
Filters for working with temporal (historical), regional or permissioned data.
•
Enhanced Criteria query API: with full support for projection/aggregation and subselects.
•
Runtime performance monitoring: via JMX or local Java A PI, including a second-level
cache browser.
•
Eclipse support, including a suite of Eclipse plug-ins for wo rking with Hibernate 3.0,
including mapping editor, interactive query prototyping, schema reverse e ngineering tool.
•
Hibernate is Free under LGPL: Hibernate can be used to develop/package and distribute
the applications for free.
•
Hibernate is Scalable: Hibernate is very performant and due to its dual-layer architecture
can be used in the clustered environments.
•
Less Development Time: Hibernate reduces the development timings as it supports
inheritance, polymorphism, composition and the Java Collection framework.
•
Automatic Key Generation: Hibernate supports the automatic generation of primary key
for your.
•
JDK 1.5 Enhancements: The new JDK has been released as a preview earlier this year
and we expect a slow migration to the new 1.5 platform throughout 2004. While Hibernate3 still
runs perfectly with JDK 1.2, Hibernate3 will make use of some new JDK features. JSR 175 annotations, for example, are a perfect fit for Hibernate metadata and we will embrace them aggressively. We will also support Java generics, which basically boils down to allowing type safe collections.
•
EJB3-style persistence operations: EJB3 defines the create() and merge() operations,
which are slightly different to Hibernate's saveOrUpdate() and saveOrUpdateCopy() operations. Hibernate3 will support all four operations as methods of the Session interface.
•
Hibernate XML binding enables data to be represented as XML and POJOs
interchangeably.
•
The EJB3 draft specification support for POJO persistence and annotations.
FORMS
REPORTS
SYSTEM TESTING
Testing
Testing is the process of detecting errors. Testing performs a very critical role for quality assurance and for ensuring the reliability of software. The results of testing are used later on during maintenance also. 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 doesn’t 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,
Testing is a process of executing a program with the intent of finding an error.
A successful test is one that uncovers an as yet undiscovered error.
A good test case is one that has a high probability of finding error, if it exists.
The tests are inadequate to detect possibly present errors.
The software more or less confirms to the quality and reliable standards.
Levels of Testing
Acceptance Testing
In order to uncover the errors present in different phases we have the concept of Testing levels of testing. The basic levels of System testing are a s shown below…
Integration Testing
Unit Testing
Client Needs
Requirements
Design
Code
System Testing The philosophy behind testing is to find errors. Test cases are devised with this in mind. A strategy employed for system testing is code testing.
Code Testing: This strategy examines the logic of the program. To follow this method we developed some test data that resulted in executing every instruction in the program and module i.e. every path is tested. Systems are not designed as entire nor are they tested as single systems. To ensure that the coding is perfect two types of testing is performed or for that matter is performed or that matter is performed or for that matter is performed on all systems.
Types Of Testing
Unit Testing
Link Testing
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, HWAdmin, MasterAdmin, Normal User, and PManager. Giving different sets of
inputs has tested each module. When developing the module as well as finis development so that each module works without any error. The inputs are validated when accepting from the user. In this application developer tests the programs up as system. Software units in a system are the modules and routines that are assembled and integrated to form a specific function. Unit testing is first done on modules, independent of one another to locate errors. This enables to detect errors. Through this errors resulting from interaction between modules initially avoided.
Link Testing Link testing does not test software but rather the integration of each module in system. The primary concern is the compatibility of each module. The Programmer tests where modules are designed with different parameters, length, type etc.
Integration Testing After the 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 integrating all the modules forms the main system. 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 ‘ATM’ has been tested against requirements of project and it is checked whether all requirements of project have been satisfied or not.
Acceptance Testing Acceptance Test 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. In this project ‘Network Management Of Database System’ I have collected some data and tested whether project is working correctly or not. 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.
White Box Testing 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. 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.
Black Box Testing This testing method considers a module as a single unit and checks the unit at interface and communication with other modules rather getting into details at statement level.
Here the module will be treated as a block box that will take some input and generate output. Output for a given set of input combinations are forwarded to other modules.
Criteria Satisfied by Test Cases Test cases that reduced by a count that is greater than one, the number of additional test cases that much be designed to achieve reasonable testing. Test cases that tell us something about the presence or absence of classes of errors, rather than an error associated only with the specific test at hand.
SOFTWARE TOOLS
Methodology The method being used in developing the system is the system Development Life Cycle (SDLC) The SDLC process includes project identification and selection, project initiation and planning, analysis, design, implementation and maintenance.
PROJECT IDENTIFICATION AND SELECTION
. PROJECT INITIATION AND PLANNING
ANALYSIS
LOGICAL DESIGN
PHYSICAL DESIGN
IMPLEMENTATION
MAINTENANCE
Figure 2.4: Waterfall Model (SDLC)
System Development Life Cycle (SDLC) The system Development Life Cycle(SDLC) is a traditional methodology used to develop, maintain and replace or enhance information system. The main reason SDLC model is chosen because in SDLC it is possible to complete some activities in one phase in parallel with some activities of another phase. The life cycle can also be interactive that is phase are repeated as required until an acceptable system is found.
1.4.1.1 Phase 1: Project identification and selection In this phase the project information system needs are identified and analyzed such as identified the title of the project that is Web Based XpathAnalyzer, scope and objective of the Web Based XpathAnalyzer. 1.4.1.2 Phase 2: Project initiation and planning During this phase the Gantt chart has been developed as a time line to determining the task involve in developing the Web Based XpathAnalyzer. 1.4.1.3 Phase 3: Analysis In the phase, the exiting system is studies by collecting the information through the Internet and analyzed the information to get alternatives for the used of proposed system. Determine what the Web Based XpathAnalyzer should do. 1.4.1.4 Phase 4: Design Logical design is the fourth phase in SDLC methodology. The functional features chosen for the proposed system in Analysis phase are described. Part of the logical design of the information system is to devise the user interface. The interface plays an important role to connect the user with the system and is thus extremely important.
TECHNICAL NOTES
•
Windows XP Operating System
•
Microsoft Visual Studio-2007 2.0 Framework
•
Microsoft MYSQL-5.0.51b-win32
•
Internet Mozilla FireFox
CONCLUSION
The entire project has been developed and deployed as per the requirements stated by the user, it is found to be bug free as per the testing standards that are implemented. Any specification untraced errors will be concentrated in the coming versions, which are planned to be developed in near future.