Sei sulla pagina 1di 143

A Project Report On MCSP 060 TALKJAVA.ORG (ALL SOLUTIONS AT ONE PLACE) By Gulna !

!nrol"ent #o$%%%%00&'6 (n)er Gu*)ance o+ S(MA# B,ST

Su-"*tte) to t.e Sc.ool o+ Co"puter an) ,n+or"at*on Sc*ence/0 ,G#O( ,n part*al +ul+*ll"ent o+ t.e re1u*re"ent/ 2or t.e a3ar) o+ t.e )e4ree

Ma/ter o+ Co"puter Appl*cat*on/ 5MCA6 7ear o+ Su-"*//*on

,n)*ra Gan).* #at*onal Open (n*8er/*ty Ma*)an Gar.*

#e3 9el.* %%006'.


SUMAN BIST
sumanbist22@gmail.com
Mob. +91-9910280448

EXPERIENCE SUMMARY
Software Professional ha ing 4 !ear wor" e#$erience in J2EE & Java. Working at Xavient Infor ation S!"te .

PR#$ESSI#NA% &UA%I$ICATI#N

%. &ech. '(&) from *ra$hic +ra ,ni ersit! -ehra.un ',./.)0 in 2008. (nterme.iate from 1%S+ %oar. 0 in 2004 2igh School from 1%S+ %oar. 0in 2002

IT S'I%%S & S(e)ia*i"ation"


%angage" & Te)+ , -ata.a"e/R-BMS, #(erating S!"te , 1ore 3a a0 10 1++0 32++. MS 4ccess 2005 6 20070 MS-S89 ser er 200: ;in.ows <&=2000=9#0 9(<,>0 -?S

PR#JECTS

Working in 0ea*t+ an1 Te*e)o

-o ain.

-esiging the solution using ob@ect oriente. anal!sis 6 .esign '??4-)0 3a a .esign $attern.

Ro*e" & Re"(on"i.i*itie" ,2


-e elo$ment of a$$lication. (nteraction with client.

PERS#NA% PR#$I%E
$at+er3" Na e, Mr. Mahen.er Singh %isht -ate of Birt+, 22-Feb. 1987 A11re"", D 34 Sec-61 Noida. Conta)t e, +91-9910280448

I hereby, declare that the above information provided by me is true to the best of my knowledge and belief.

-ate

SUMAN BIST

ABSTRACT
A computer software succeeds whenever it meets the needs of the people who use it, when it performs flowlessly over a long period of time, when it is easy to modify and even easier to use. But a software fails, when its users are dissatisfied,when it is error prone, when it is difficult to change and even harder to use. This project report is intended to serve as a guide to the software developed on Talk Java. I have tried to follow the principles and rules as suggested by the software engineers as far as possible, in order to make this software a successful one. The vision of the Talk java nis to provide the user to appear on the test after getting authorized by the administrator. The user can choose the aper pattern of his!her choice for the test. This application contains basically two modules, named as "n line java test module and another is #ava $orum module. "n line test %TA&'#A(A.org is proud to announce the largest collection of java certification )uestion and practice )uestion. As a professional any one can understand the value of sun certification TA&'#A(A understand your need for a high )uality practice test .There are many )uestions that can only test your java skills. This java test not only helps you in preparing for sun certification but also improves skills in java technologies. #ava $orum % It provides platform where all registered or non registered user can view the )ueries and those solution but for putting the )ueries it is re)uired that you must be registered user, without registration you can*t put up )ueries and can*t discuss on any problem.

Table of CONTENTS
S.N. Title Introduction
Co"pany Pro+*le

1. 2.

Project Detail
,ntro)uct*on Project )e/cr*pt*on O-ject*8e

3. $.

System De elo!ment met"odolo#ies Initial In esti#ation and System %e&uirements


Sy/te" Stu)y an) Pro-le" 2or"ulat*on Project Cate4ory Plat+or"5Tec.nolo4*e/:Tool/6 2ront;en) an) Bac<;en) Tool/ So+t3are an) =ar)3are (/e)

'. ).

(easibility Study System Desi#n


9ata 2lo3 9*a4ra"/ !;R 9*a4ra"/ 2lo3 C.art 9ata Ba/e 9e/*4n

*. ,. 1. 16. 11. 12. 13. 1$. 1'.

+odule Descri!tion Tal-./a a 0rc"itecture 2eb Pa#es3In!ut4Out!ut Screens5 Testin# and System Security 7uality 0ssurance Im!lementation and maintenance E aluation Conclusion 8iblio#ra!"y
:

Company Profile

CO+P0N9 P%O(I:E
Valid-Page A QUALITY SOLUTION COMPANY
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 Valid-Page as an intensive unit of Training and centre. Valid-Page is a leading company in providing )uality solutions in the IT industry. It is information, training and complete solution providing company bringing high )uality services to the clientele. It is proud to have a satisfied clientele of leading corporate business houses. ,e are professionally managed company with a vision and mission to provide completes IT solutions to the entrepreneurs.A harmonious combination of man and machine, in which man gets precedence over the machine. Information is the hallmark of today-s world. A drive for productivity and the ability to offer )uality solutions on information superhighway are the key to development. 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 )uality service. .uality objectives, precise and time bound are the root criteria for success and development and it is not an e/ception with (alid. evelo!ment

(alid+ age will leave no stone unturned to take its customer to the topmost rung of ladder of success. A result that is translated at (alid i.e. + in tune with technology with time and trust, truth and tradition, and re)uirement is the principle assets of (alid. (alid has two divisions working at the moment + Training division as 0ompute 1ome and a software development division. It is the development division that is offering this project training as detailed in this document.

"#" $%R VISI$& ,e shall define ourselves in the cutting edge technology in the coming era. ,e shall create honest working environment with see+through+glass planning. "#' $%R (ISSI$& To create opportunity for growth 2 self actualization to trainees and provide an environment of highly conducive works culture. ,ork related areas 3 (alid age4 5. ,eb age designing and hosting 6. Internet and Intranet 7olutions 8. ,eb based applications development 9. 0lient ! 7erver Applications :evelopment ;. <e+engineering =. <esearch 2 :evelopment in ,A technologies >. 0orporate training ?. 1igh+end @ser Training A(ocationalB and ,eb related conversing

INTRODUCTION DESCRIPTION OBJECTIVE

INT%OD;CTION < O8/ECTI=E

10

P%O/ECT DET0I:
INT%OD;CTION
7tarting the project we should fully know about the meaning of project. There are seven letters in the word C <"#D0TE each character has its own technical meaning. Planning 4+This deal with the idea at thinking and which are re)uired for the project. Re)o*rce 4+The money problem will be solved and resources from which collected. $!erating 4+ The procedure from which the getting job is prepared in a systematic way is known as operation. Joint effort 4+ This is directly proper to a operation output is made of several person working sincerely is known as #"IFT D$$"<T. +ngineering 4+ A well+educated engineer can do this work in a better way to find out better result. 1ence the project is as engineering function. Co-o!eration4+ To make the project successfully, it is necessary for its success and completion of project. Techni)ue4 + It must as it gives a better shape. It is not possible to complete the project without techni)ue.

The !ro,ect i) a )y)tem that give) the )y)tematic -ay of !lanning and -orking#

11

'#"

P*r!o)e

TA./JAVA#$R0 provides solution of all these problems in the form of easy to configure and use application by automating all these functionality. "# Talk#ava.org is an online platform for java professional*s students and programmers to share their java knowledge to find out reliable information about various java topics and to test their #ava skills. '# Gajor feature of Talk #ava is the forum dealing with different java topics. 1# A forum represents a group of users that want to share knowledge on a topic. Dach forum is created for a topic and member post their views about the topic on the forum, post of a user can be viewed by other member of the forum. $orums have different type of member+ a# + Administrators. 2# + Godulator. c# + Team &eader. d# +Formal Gember. $or posted by members on a forums is edited and deleted by administrator and modulators.

'#' $2,ective
TA./JAVA#$R0 is a web based #ava application that is design for providing facility of the java professionals, students and aspirants who are willing to take java certification Ascjp and othersB.It provide a platform where any one get any )ueries related to java and more other resources related to java .If they want to check themselves how much proficient in java they can attend java on line test. It is also helpful for those who want to attend scjp or other certification. In this application there are mainly two modules4+ 3"4 "n line java test module. 3'4 #ava $orum.

12

$n line te)t %TA&'#A(A."<H.com is proud to announce the largest collection of java certification )uestion and practice )uestion. As a professional any one can understand the value of sun certification TA&'#A(A."<H understand your need for a high )uality practice test .There are many )uestions that can only test your java skills. This java test not only helps you in preparing for sun certification but also improves skills in java technologies. Java 5or*m % It provides platform where all registered or non registered user can view the )ueries and those solution but for putting the )ueries it is re)uired you must be registered user, without registration you can*t put up )ueries and can*t discuss on any problem. TA./JAVA#$R0 provides solution of all these problems in the form of easy to configure and use application by automating all these functionality. Its major modules are4 $n .ine te)t <egister Few @ser (erify @ser 7et papers with duration 7et .uestion with Answer Test

Java 5or*m
<egister Few @ser (erify @ser @ser 0ontrol panel Few .ueries (iew your posts (iew Few osts (iew unanswered ost (iew Active Topics Members List FAQ
15

P%O/ECT DESC%IPTION

14

+SCRIPTI$& $5 PR$J+CT
Regi)ter &e- %)er for 5or*m6 The opularity of site depends on the no. of users that register themselves on the site. This module is responsible for capturing and submitting the details of all the new users into the java forum. This information is later retrieved to generate various reports. If any user registered for on line test there is no need to register here. $or putting any )ueries you must be firstly registered without registration any one can*t be put any )uery they may be view the posts. Verify %)er6 This module deals with the verifying the user that he is registered or not if he is registered then check which type of authorization he have he is simple user or admin. If he is admin he can delete any post, set some information for all members, and delete the members. If he simple user he can attend the on line test. %)er control Panel6 This module provides an interface where users can monitor, view and update their profile, preferences, subscribed forums and topics .you can also send messages to other users Aif permittedB .This module is related to user it has following sub module profile, Board preferences private messages and user groups. &e- 7*erie)6 This module provides the user to putting the )ueries any one can put up any )ueries on java, j6ee, struts, /ml etc. But before putting the )ueries you must be register Ameans you are a registered memberB. Vie- yo*r !o)t)6 In this module we manage all details of posts of all users. 1ere we manage all the information related to posts of particular member with posting date and time. ,hen you want to view your post you can view with status and other details of posts. Vie- &e- Po)t)6 In this module we manage all details of posts which are new and unanswered. All new post shown to all registered and non registered members. If any member wants to answer the new )ueries he can do.
1:

Vie- %nan)-ered !o)t6 In this module we manage all details of posts which are not answered yet. All new post and that post which have not answered are shown here with details of posted by, posted date and posted time.

Vie- Active to!ic6 In this module we manage all details of posts which are active. All active post are shown here with details of posted by, posted date and posted time. (em2er) .i)t6 In this module we show the list of all the registered members with whose full description. 1ere we show the list of all on line user and off line user. ,e also provide facility, which is on line and what are doing.

1A

SDLC

17

S9STE+ DE=E:OP+ENT :I(E C9C:E

18

Sy)tem

evelo!ment (ethodology

System Development Life Cycle:


P8AS+S6 "#'#" Initiation Pha)e The initiation of a system Aor projectB begins when a business need or opportunity is identified. A roject Ganager should be appointed to manage the project. This business need is documented in a 0oncept roposal. After the 0oncept roposal is approved, the 7ystem 0oncept :evelopment hase begins. "#'#' Sy)tem Conce!t evelo!ment Pha)e

"nce a business need is approved, the approaches for accomplishing the concept are reviewed for feasibility and appropriateness. The 7ystems Boundary :ocument identifies the scope of the system and re)uires 7enior "fficial approval and funding before beginning the lanning hase. "#'#1 Planning Pha)e

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 re)uired 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 re)uirements and the completion of a high level vulnerability assessment. "#'#9 Re:*irement) Analy)i) Pha)e

$unctional user re)uirements are formally defined and delineate the re)uirements in terms of data, system performance, security, and maintainability re)uirements for the system. All re)uirements are defined to a level of detail sufficient for systems design to proceed. All re)uirements need to be measurable and testable and relate to the business need or opportunity identified in the Initiation hase.

19

"#'#;

e)ign Pha)e

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. Dverything re)uiring 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. 7ubsystems identified during design are used to create a detailed structure of the system. Dach subsystem is partitioned into one or more design units or modules. :etailed logic specifications are prepared for each software module. "#'#< evelo!ment Pha)e

The detailed specifications produced during the design phase are translated into hardware, communications, and e/ecutable software. 7oftware shall be unit tested, integrated, and retested in a systematic manner. 1ardware is assembled and tested. "#'#= Integration and Te)t Pha)e

The various components of the system are integrated and systematically tested. The user tests the system to ensure that the functional re)uirements, as defined in the functional re)uirements document, are satisfied by the developed or modified system. rior to installing and operating the system in a production environment, the system must undergo certification and accreditation activities. "#'#> Im!lementation Pha)e

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 re)uirements. "#'#? $!eration) and (aintenance Pha)e

The system operation is ongoing. The system is monitored for continued performance in accordance with user re)uirements, and needed system modifications are incorporated. The operational system is periodically assessed
20

through In+ rocess <eviews to determine how the system can be made more efficient and effective. "perations continue as long as the system can be effectively adapted to respond to an organization*s needs. ,hen modifications or changes are identified as necessary, the system may reenter the planning phase. "#'#"@ i)!o)ition Pha)e

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. articular 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 :"#. The specific objectives e/pected include the following4

To reduce the risk of project failure To consider system and data re)uirements throughout the entire life of the system To identify technical and management issues early To disclose all life cycle costs to guide business decisions To foster realistic e/pectations of what the systems will and will not provide To provide information to better balance programmatic, technical,

management, and cost aspects of proposed system development or modification

To encourage periodic evaluations to identify systems that are no longer effective To measure progress and status for effective corrective action To support effective resource management and budget planning To consider meeting current and future business re)uirements

21

ey P!inciples
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. .ife Cycle (anagement Sho*ld 2e *)ed to +n)*re a Str*ct*red A!!roach to Information Sy)tem) evelo!mentA (aintenanceA and $!eration

This 7:&0 describes an overall structured approach to information management. rimary emphasis is placed on the information and systems decisions to be made and the proper timing of decisions. The manual provides a fle/ible 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 uni)ue needs of each project.

S"ppo!t t#e "se of $n Inte%!$te& P!o&"ct Te$m


The establishment of an Integrated roduct Team AI TB can aid in the success of a roject

project. An I T is a multidisciplinary group of people who support the

Ganager in the planning, e/ecution, delivery and implementation of life cycle decisions for the project. The I T is composed of )ualified empowered individuals from all appropriate functional disciplines that have a stake in the success of the project. ,orking 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.

'$c# System P!oject m"st #$ve $ P!o%!$m Sponso!


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 re)uired reviews and approvals at specific points in the life cycle. An approval from senior management is re)uired after the
22

completion of the first seven of the 7:&0 phases, annually during "perations and Gaintenance hase and si/+months after the :isposition hase. 7enior 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 hase.

A Sin%le P!oject M$n$%e! m"st be Selecte& fo! '$c# System P!oject


The roject Ganager 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. <egardless of organizational affiliation, the roject Ganager is accountable and roject Ganager develops responsible for ensuring that project activities and decisions consider the needs of all organizations that will be affected by the system. The a project charter to define and clearly identify the lines of authority between and within the agency*s e/ecutive management, program sponsor, Auser!customerB, and developer for purposes of management and oversight.

A Comp!e#ensive P!oject M$n$%ement Pl$n is (e)"i!e& fo! '$c# System P!oject


The project management plan is a pivotal element in the successful solution of an information management re)uirement. 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 e/panded throughout the life cycle.

25

Specific In&ivi&"$ls M"st be Assi%ne& to Pe!fo!m t#!o"%#o"t t#e Life Cycle

ey (oles

0ertain 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. 'ey roles include program!functional management, )uality assurance, security, telecommunications management, data administration, database administration, logistics, financial, systems engineering, test and evaluation, contracts management, and configuration management. $or most projects, more than one individual should represent the actual or potential users of the system Athat is, program staffB and should be designated by the rogram Ganager of the program and organization

Analy)i)
The analysis audience of this document includes the user, i.e. we analyze the entire thing visiting sites. All significant re)uirements related to the functionality, performance and other factors are covered by this document. Before re)uirements can be analyses modeled and specific they are gathered through an elicitation process. 0onte/t free )uestions were asked to the many students professional who are touch with java and work on java in organizations!institutes regarding which type of problems they face whenever they are working.

24

SO(T20%E %E7;I%+ENT SPECI(IC0TION

2:

SO(T20%E %E7;I%E+ENT SPECI(IC0TION


7oftware re)uirement specification A7<7B is the starting point of the software development activity. &ittle importance was given to this phase in the early days of software development. The emphasis was first on coding and then shifted to design. As systems grew more comple/, it became evident that the goals of the entire system cannot be easily comprehended. 1ence the need for the re)uirement analysis phase arose. Fow, for large software systems, re)uirements analysis is perhaps the most difficult activity and also the most error prone. 7ome of the difficulty is due to the scope of this phase. The software project is initiated by the client*s needs. In the beginning these needs are in the minds of various people in the client organization. The re)uirement analyst has to identify the re)uirements 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 7<7 is a means of translating the ideas in the minds of the clients Athe inputB, into formal document Athe output of the re)uirements phaseB. Thus, the output of the phase is a set of formally specified re)uirements, which hopefully are complete and consistent, while the input has none of these properties.

2A

P:0TE(O%+ 3Tec"nolo#ies4Tools5

27

P:0TE(O%+ 3Tec"nolo#y4Tool Selection5


Introd*ction to Java
#ava is a high+level, third+generation programming language like $"<T<AF, ,ide ,eb. 0,

erl and many others. It is a platform for distributed computing % a

development and run+time environment that contains built+in support for the ,orld

8i)tory of Java
#ava development began at 7un Gicrosystems in 5II5, the same year the ,orld ,ide ,eb was conceived. #ava*s creator, #ames Hosling did not design java for the Internet. 1is "bjective 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 "ak and later renamed #ava that retains much of the synta/ and power of cJJ, but is simpler and more platform+independent.

Java 5eat*re)
7ome of the important features of #ava are as follows4 7implicity "rientation latform Independence 7ecurity 1igh erformance Gulti Threading :ynamic linking. Harbage 0ollection.

"ne of the most important features of #ava is platform independence, which makes it famous and suitable language for ,orld ,ide ,eb.
28

Bhy Java i) Platform Inde!endentC


#ava is latform Independent because of #ava (irtual Gachine A#(GB.

Java Virt*al (achine 3JV(4


The client application or operating system must have a java byte+code interpreter to e/ecute byte+code instructions. The interpreter is a part of a larger program called the #(G. The #(G interprets the byte code into native code and is available on platforms that support #ava. ,hen the user runs a #ava program, it is up to the #(G to load, possibly verify, and then e/ecute it. The #(G can perform this function from within a browser or any other container program or directly on top of the operating system. ,hen a browser invokes the #(G to run a #ava program, the #(G does a number of things4 It validates the re)uested byte+code, verifying that they pass various formatting and security checks. It allocates memory for the incoming java class files and guarantees that the security of #(G is not violated. This is known as the class loader module. It interprets the byte code instructions found in the class files to e/ecute the program.

Connectivity *)ing J BC
There are four kinds of drivers available in #dbc4 + Jd2c-$d2c Bridge Partly Java &ative river river

river
29

P*re Java

river

Jd2c-$d2c

river6

This provides a bridge between the #dbc A Is and the "dbc A Is. The bridge translates the standard #:B0 calls to corresponding ":B0 calls, and sends them to the ":B0 data source via ":B0 libraries. This configuration re)uires every client that will run the application to have the #:B0+":B0 bridge A I, the ":B0 driver and the native language+level A Is. As a result this kind of driver is most appropriate on a corporate network where client installations are not a major problem.

Partly Java

river6

#dbc database calls are translated into vendor+specific A I calls. The database will process the re)uest 2 send the result back through the A I, which in turn forwards them back to the #dbc drivers. The #dbc driver translates the result to the #dbc standard 2 returns them to the #ava application, hence this kind of driver has same problem that was with #dbc+"dbc driver and is mostly used in Intranet. These are true 5KKL pure java real #:B0 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 9 drivers are different for different <:BG7 and are available for almost all major <:BG7 vendors.

P*re Java

river6

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. $or e/4 The pro/y driver talks to the middle tier concentrator or access server. The concentrator or access server in turn uses ":B0 AorB vendor specific protocol to talk to the actual database. The re)uirement for collaborating middle tier server is often cumbersome and very e/pensive too.

50

&ative

river6

This kind of driver converts #:B0 calls into the network protocol used by :atabase directly. This allows a direct call from client machine to the :atabase server. These are true 5KKL pure java real #:B0 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 9 drivers are different for different <:BG7 and are available for almost all major <:BG7 vendors.

Client Side Interface6


In client side interface we are using4+ 7ervlet ! #7 % for Internet Based Application. are middle+ware technologies which are used in web based projects

7ervlet ! #7

because they use4+ 1TT rotocol to handle <e)uest and <esponse.

They are invoked through Browser. They give output in 1TG& format. They need Browser 7upport.

AB$%T J'++
Introd*ction to J'++6 The multi+tier architecture such as 0"B<A 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 Giddleware. 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.
51

7un Gicrosystems introduced the #6DD application server and the enterprise #ava Bean AD#BB specifications as a venture into the multi+tier component architecture. #6DD 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 re)uirements. #6DD also offers cost effective solution for business solution. #6DD is used for developing, deploying and e/ecuting applications in a distributed environment. The #6DD applications server acts as a platform for implementing various server side technologies 7ervlets, #ava 7erver ages A#7 B and Dnterprise #ava Bean AD#BB. #6DD allows you to focus on your business logic program. The business logic is coded in java program, which are reusable component that can be accessed client program D#B runs on #6DD server. In #6DD security is handled almost entirely by platform and its admin. The developer does not have to worry about writing the security logic. J'++ Architect*re6 The #6DD 7:' architecture consists of the following components4 The J'++ )erver The +JB Container The Be2 Container

The #6DD server provides the D#B and web containers. The #6DD server enforces authenticating users. The either service provided by the #6DD server are listed here below. It allows client to interact with Dnterprise Bean. It enables a web browser to access servlets and #7 files It provides naming and directory services to enable users and various services to locate and search for services and

components. The D#B container manages the e/ecution of Dnterprise Bean for #6DD server. D#B is a specification for making server side component that enable and simplifies the task of creating distributed objects. D#B component provide services such as transaction and security management and can be customized during deployment.
52

The web container manages the e/ecuting of #7

and servlets for #6DD

applications web components and their container run on the #6DD server. 7ervlets of the java program that can be deployed on a java enable web server to enhances and e/tend the functionality of the web server for e/ample you can write a servlets to add a manager service to a website. 7ervlet can also be used to add dynamic content to web pages. #ava 7erver age A#7 B adds server side programming functionality to java. #7 tags representing the dynamic content. After compilation, a #7 servlets and therefore incorporates all the servlets functionalities. J'++ A!!lication6 consists of generates a regular 1tml tags representing the static content and code enclosed within special

#6DD applications are comple/ 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 #6DD platform acts as a middle tier and provides the necessary environment needed by the application. The #6DD platform providesE write once, run anywhereE, portability and scalability for multi+tier application. It also minimizes comple/ity for building multi+tier application. To create a #6DD application we need to create following three components4 3"4 J'++ a!!lication client 3'4 +nter!ri)e Bean 314 Be2 com!onent Dach of these components is packaged into a file with a specified file format. A #6DD application client is a #ava application that run in a environment that enable it to access to the #6DD services. A #6DD application client is packaged into a .jar A#ava archiveB file. The web components are packaged into a .war A,eb archiveB file. An Dnterprise Bean consists of three files4 the D#B class, 1ome and <emote Interfaces. The Dnterprise Beans are bundled into an D#B.jar file. The .jar, .war and D#B.jar are assembled into a #6DD application, which is an .ear file. The .ear file is then deployed to the #6DD server.

55

The race for market share in the database industry has increased with the advent of client+server platforms. "racle is one of the most successful companies that has released a number of development tools including 7.& M &@7, &!7.& that enables faster and easier application development and its management. "racle is the robust :atabase 7ystem, it support very large database. Goreover "racle is widely used as back end for client ! server applications. Administrative tools of "racle help in securing the :ata ! Information. Proce)) of creating a J'++ a!!lication6

Enterprise Bean (.jar


Assembled :eployed

Component (.jar

J2EE Application Server (.jar

J2EE Server

54

J'++ Technologie)6

The #6DD includes many technologies such as4 +JB6 Dnterprise #ava Beans AD#BB is Cwrite once, run anywhereE middle tier component consisting of method that implements the business rule. Dnterprise Bean encapsulates the business logic. There are two types of Dnterprise Bean4 Dntity Bean and 7ession Bean. R(I6 <emote Gethod Invocation is defined for the communication of remote objects in the middle tier of the distribute application. It enables a #ava object to communicate remotely with other #ava object. J& I6 #ava Faming and :irectory Interface is an e/tension to #ava platform and provide multiple Faming and :irectory services. A Faming services provide a mechanism for locating distributed object. A :irectory services organize the distributed object and other resources such as file in hierarchical structure. :irectory services allow resources to be linked virtually so as located in to directory services hierarchy. There are different types of :irectory services. #F:I allows the different types of :irectory services to be link. Thus client can use any type of directory services. J BC6 #ava :atabase 0onnectivity provides a :atabase programming A I for #ava program. A #:B0 A I contains a set of classes and Interfaces that are used to
5:

Dnterprise #ava Beans AD#BB <emote Gethod Invocation A<GIB #ava Faming and :irectory Interface A#F:IB #ava :atabase 0onnectivity A#:B0B #ava Transaction A I A#TAB #ava Transaction 7ervices A#T7B #ava Gessaging 7ervices A#G7B #ava 7ervlet 2 #ava 7erver ages A#7 B D/tensible Garkup &anguage ANG&B

connect a database build using any :BG7 or <:BG7. It also submit 7.& )uery to a database and retrieve its and processes the result of 7.& )uery. JTA D JTS6 #ava Transaction A I A#TAB and #ava Transaction 7ervice A#T7B are transaction A I. "ne can use these A I to democrat whether the transaction starts or ends. J(S6 #ava Gessaging 7ervice is an A I that #6DD platform include to send mail via Internet. Servlet6 7ervlets are used to develop a variety of web+based application. They make use of the e/tensive power of the #ava A I such as networking and @<& access, multithreading, database connectivity, internationalization, <GI and object serialization. #ava 7erver ages A#7 B adds server side programming functionality to #ava. Both 7ervlet and #7 E(.6 #6DD uses D/tensible Garkup &anguage as a Garkup language to describe the contents. The described file created when deploying the #6DD application is an NG& file. allow the creation of database driven web application and have server side programming capability.

J'++ S / T$$.S6
#6DD 7:' includes following tools4 5. The :eployment Tool. 6. The #6DD 7erver. 8. The 0loud 7cale 7erver. 9. The 0lean+up 7cript. ;. The ackager Tool. =. The <ealm Tool. >. The <un 0lient 7cript. ?. The (erifier Tool.

5A

The J'++ Sec*rity6


The architecture of the #6DD is such that it enforces security in the application. In order to access the #6DD services, a user need to prove his!her identity. 7uch users are called #6DD users and process is called authentication. The #6DD authentication services are different from security of the operating system. The users of the operating system and the users of the #6DD belong to a different realm. A realm is a group of users that have the same authentication policy. The users of #6DD belong to a two different realms that are respectively authentication by certificates and defaults. #6DD certificate to authenticate a web browser client. In most cases, the #6DD services use the default realm to authenticate a user. #6DD 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. 7imilarly project managers might belong to a different group. ,hen #6DD application client e/ecute its re)uest that you enter login id and password. If the combination of both username and password correct the #6DD allow you to access the services.The #6DD 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 Dnterprise Bean.

JAVA B+A&S
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 #7 *s. The result is #7 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 e/plore it only through accessor methods. Another aspect of this component is that it should be able to communicate with other objects or beans. #ava beans accomplish this by firing events and listening to them. A bean that is interested in what happens to an
57

code that is

simpler, easier to maintain and which is more readily accessible to non+

object e/ternal to itself can register itself as a listener for various events in that object. 0onversely an e/ternal object can register itself to listen to that bean. This concept is really the key to providing standalone software components.

B$%&

PR$P+RTI+S4
"ne way of e/porting events is to use bound properties. ,hen a property

value changes a bound property can inform other parts of the application that its value is changed.

B+A& +V+&TS:
The property change support class should cater for most of the needs. 1owever on many occasions beans will still need to communicate even though no property change activity has occurred. B+A& P+RSISTA&C+ A& ST$RA0+4 $or 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. Fo matter how wonderful the component we create it will not be used much if it has to reset every time it is retrieved. #ava 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.

J BC
There are many classifications of databases available as 1ierarchical database, Fetwork database, <elational database, "bject databases and soon. :ue their fle/ibility <elational database management systems are most successful bread of databases in the history of computing. D/4 + "racle, IBGdb6, and Gicrosoft 7.& 7erver. A technology that enables #7 platform. #:B0!#7 base applications to interact directly with database engines is called #ava :atabase 0onnectivity and is an integral part of #ava based web application access the database connections. These connections must be managed carefully by the application especially if a large
58

number of concurrent users may be accessing them. To make this performance optimization #:B0 uses a mechanism called connection pooling. The evaluation of this open database access technology has led to a mirade of driver architecture. Interaction of JSP Page -ith J BC Application 7erver Gachine 0lient Gachine Bro-)er -ith 8T(. #7 #:B0

,eb

server

Engine

Driver

:B 7erver Gachine

<:BG7 7erver

1ere the browser using the web application is not re)uired to support java at all. The #7 has full control over how many #:B0 connections are made to the is used between the web server. The client never makes direct #:B0 connection to the server. This solution can work readily through a firewall, only standard 1TT server and the client.

59

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. There is still one minor problem with this scenario. #7 roject personal accessing the

page containing the embedded #:B0 code can easily and inadvertently modify

the database access code and this may result in an erroneous application or even corrupted database. There are 6 solutions for this4 5. 0reate java beans or java classes that encapsulate all the #:B0 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 #7 . 6. 0reate a tag e/tension set to Opushdown* all the database access logic. The data access logic programmers write the set of custom tags. The #7 application logic designers will then use the set of custom tag to create their application.

40

JSP +ngine

#7 *s

0ustom tag 0ustom #ava e/tension beans!classes

#:B0 :river Technologies

"ther :B access

41

8EC>.END
#RAC%E 45g
Bhy -e are *)ing $racle 3R B(S4C
7ome of the merits of using "racle A<:BG7B are as under4 0entralization of database. 0lient 7erver Technology. 7ecurity. Formalization of :ata Base. <elationship. Transaction rocessor. It gives some internet related features.

1ence because of these features we are using "racle as a back+end technology. ,eather you are working on &AF projects or :istributed projects, there are two sides of it4+ $ront Dnd Back Dnd

$ront Dnd remains on client side. $ront 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. Backend remains on server side and has two components viz. 7erver side programs :ata Base :atabase 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. ,ithout a database, e/istence of a thing is impossible. ,hile working on a project first step is to design a database.
42

Bhat i) a data2a)eC :ata Base is a collection of tables and table is a collection of records in a tabular form i.e. in row and columns format. :ata Base can be divided into two parts4+ <:BG7 :BG7 ,e will be using <:BG7 A<elational :atabase Ganagement 7ystemB in our project i.e. oracle ?.K Dnterprise Ddition.

AB$%T $RAC.+ "@g


"racle ?.K contains all the features of previous version. It also supports some new features 2 enhancement to some e/isting features. "racle servers provide deficient 2 effective solution for the major features.

.arge

ata2a)e D S!ace (anagement Control

"racle supports the largest database potential of hundreds of Higa Bytes in size. To make efficient use of e/pensive devices, it allows full control of space usage.

(any Conc*rrent

ata2a)e Performance)

It supports large no of concurrent users e/ecuting a variety of database applications operation on the same data. It minimizes data connection 2 guarantees data concurrency.

8igh Tran)action Proce))ing Performance


"racle maintains the processing features with a high degree of overall performance. :atabase users don*t suffer from slow processing

system

performance.

45

8igh Availa2ility
"racle works 69 hours a day with no downtime or limited database

throughput. Formal system operation such as database backup 2 partial system failure doesn*t interrupt database use.

Controlled Avail2ility
"racle can selectively control the availability of data at the database level 2

sub database level. D.g. an administrator can disallow use of a specific application .:ata can be reloaded without affecting other application.

Ind*)try Acce!ted Standard)


"racle adheres to industry accepted standards for the data access language

operating system, user interface 2 network communication protocols.

(anagea2le Sec*rity
To protect against unauthorized database aspects 2 users, "racle provides

failsafe security features to limit 2 monitor the data area. The system makes it easy to manage even the most completed designs for data assets.

ata2a)e +nforced Integrity


"racle enforces data integrity CBusiness rulesE, that dictate the standards for

applicable data. As a result, the cost of coding 2 managing checks in many database applications is eliminated.

i)tri2*ted

ata2a)e Sy)tem

$or community environment that are connected via networks, "racle combines the data physically located on different computers in one logical database that can be accessed by all the network users. :istributed systems have same degree of user transparency 2 data consistency as non+distributed systems, yet receive the advantages of local database management.

Porta2ility

44

"racle software is compatible to work under different operating system 2 same on all system. Applications developed on "racle can be used on virtually any system with little or no more modification.

Com!ati2ility
"racle software is compatible with industry standards, including most

industry standard operating systems. Applications developed on "racle can be used on virtually any system with little or no modification.

Connectivity
"racle software allows different types of computers 2 operating system to

share information in networks. &+B 5+AT%R+S $5 $RAC.+ >#@

Im!roved Scala2ility
The ma/imum size of an "racle database has been increased to support

hundreds of terabytes depending on the operating system on which it resides.

Im!roved Sec*rity
"racle ?.K server now includes password management so that a password

has a limited lifetime 2 must meet certain comple/ity such as minimum length. An account can be locked after a specified number of failed login attempts.

Im!roved Performance via Partition


A table of inde/ 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 "racle ? server can assign a portion of the work to e/ecute a single :G& statement to multiple processes, which may then be allocated to multiple processes by the server operating system. As a result, the parallel :G& operations are completed more )uickly.

+nhanced S*!!ort for


The performance 2

ata2a)e Re!lication
of database replication has been

manageability

significantly improved.
4:

Ca!a2ility to handle a m*ch larger n*m2er of conc*rrent *)er)


By pooling database connection, the "racle ? server is able to service a much

larger number of concurrent users, up to 8KKK, depending on the server*s operating system 2 server hardware resources.

&e- D Im!roved

ata Ty!e)

7ome e/isting data types have been enhanced 2 new data types have been introduced.

Im!roved Select Statement


A new feature of the select statement allows a sub )uery to be used in place

of a table in a from clause. Fow when we are discussing :atabase, there is one more thing attached to it, i.e. C:ata Base GodelsE

ata2a)e (odel)
There are three kinds of database models4+ Single tier architect*re# T-o tier architect*re# &- Tier architect*re.

Single tier Architect*re6


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.

T-o tier Architect*re


In this kind of architecture, database and client application is on two different machines. i.e :atabase on one machine and the application on another machine. In this type of architecture, the implementation of client+server
4A

technology is done and centralization of data base is there, but it has two demerits4+ 7ecurity is not there Gultiple 0lient access is not there.

&- Tier Architect*re6 + In this kind of architecture, there is a middle+ware in between the client and database. Giddle ware checks the validity of the client i.e. weather the client can access the database or not. 1ence there is security in it as well as middle+ware allows multiple clients access.

Bhat i) (iddle-BareC
Giddle+ware is a concept. Giddle+ware provides centralization of business logic i.e. instead of putting logic on each and every client machine we put logic on a centralized server. 1ence middle ware is nothing but a server side program where all your business logic and business methods reside. It remains on server side and it has all the logical building. Giddle ware provides4 + Gultiple 0lient access. 0entralized business logic in case of distributed application. roject we need platform

Because we are working on :istributed Application Based independent &anguage likes Java

47

SO(T20%E 0ND ?0%D20%E TOO:S

48

Soft@are and ?ard@are Tools


evelo!ment +nvironment6
$!erating Sy)tem6 Bindo-) EP The system will be built on windows compatible environment. The application will be web based developed using #ava technology. Be2 Server6 B+AF) Be2.ogic >#" Application 7erver to serve as 7ervlet!#7 for 7ervlet. Server )ide A!!lication Soft-are4 #ava 7erver ages A#7 B B*)ine)) .ogic Soft-are4 #ava Beans. A#BB Client Side A!!lication Soft-are4 #ava 7cript, 1TG& ata Ba)e4 "racle 5Kg The system re)uires "racle as a databaseP however the system will be ":B0 complaint to work on any standard database. Client Bro-)er)6 Internet D/plorer ;.K or Fetscape Favigator 9.> The system re)uires Internet D/plorer or Fetscape Favigator browser for client side. ream Beaver >#@ The system will be developed with #ava Technologies using #67D A#:' and #<DB. :ream ,eaver ?.K! $ront age 6KK8 as 1TG& editor. engine. The system re)uires ,eb&ogic Application 7erver for serving the re)uests

49

:0

?ard@are < Soft@are %e&uirements

0ar16are re78ire ent

Gain rocessor entium I( 1ard+disk 0apaity ? H.B <AG 6;= GB 0lock 7peed 6.? 1z 'eyboard 5K9 'ey Gonitor (.H.A 9.6 7oftware specification

Soft6are Re78ire ent

"perating 7ystem ,indow N Backend tool "racle 5Kg $ront+end tool #ava

:1

TECHNIC L !E SIBILIT" ECONO#IC L !E SIBILIT" OPER TION L !E SIBILIT"

:2

(easibility Study
A feasibility study is conducted to select the best system that meets performance re)uirement. This entails an identification description, an evaluation of candidate system and the selection of best system for he job. The system re)uired performance is defined by a statement of constraints, the identification of specific system objective and a description of outputs. The key consideration in feasibility analysis are 4 5# +conomic 5ea)i2ility 6 '# Technical 5ea)i2ility 6 1# $!erational 5ea)i2ility6

+conomical fea)i2ility
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. Dconomic 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 re)uired a highly )ualified 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. The backend re)uired for storing other details is also the same database that is 7)l. The computers in the organization are highly sophisticated and don*t needs e/tra components to load the software. 1ence the organization can implement the new system without any additional e/penditure. 1ence, it is economically feasible.

:5

Soft-are Co)t 6

Be2 .ogic Server '@@@@!+ $racle J'++ /it 5ree 6

6 ";@@@!+ 6

(an!o-er Co)t 6

Team co)t ';@@@!+ Sy)tem Co)t 9@A@@@!+ 6

Total Co)t "@@@@@!-

Technical 5ea)i2ility
It is a measure of the practically of a specific technical solution and the availability of technical resources and e/pertise The proposed system uses #ava as front+end and "racle ?.K as back+end tool.
:4

"racle is a popular tool used to design and develop database objects such as table views, inde/es. The above tools are readily available, easy to work with and widely used for developing commercial application. 1ardware used in this project are+ p9 processor 6.9H1z, 56? GB

<AG, 9K HB hard disk, floppy drive. This hardware was already available on the e/isting computer system. The software like "racle ?i, ,eblogic 7erver, Thin :river, #:', #7:', #6DD and operating system ,IF:",7+N * used were already installed "n the e/isting computer system. 7o no additional hardware and software were re)uired to purchase and it is technically feasible. The technical feasibility is in employing computers to the organization. The organization is e)uipped with enough computers so that it is easier for updating. 1ence the organization has not technical difficulty in adding this system.

Tool) %)ed 6 5B #6DD &ibrary 6B #67:' 6.K 8B #:' 5.6 9B ,eb&ogic ?.5 ;B "racle ?i.

*ration of Pro,ect6-

Time
5or )t*dy e)igning 5or develo!ment Te)ting

*ration
"; day) '@ day) ?@ day) "; day)

Total time

"9@ day)
::

Operat*onal 2ea/*-*l*ty
The system will be used if it is developed well then be resistance for users that undetermined Fo major training and new skills are re)uired as it is based on :BG7 model. It will help in the time saving and fast processing and dispersal of user re)uest and applications. Few product will provide all the benefits of present system with better performance. Improved information, better management and collection of the reports. @ser support.

@ser involvement in the building of present system is sought to keep in mind the user specific re)uirement and needs.

@ser will have control over there own information. Important information such as pay+slip can be generated at the click of a button.

$aster and systematic processing of user application approval, allocation of I:s, payments, etc. used had greater chances of error due to wrong information entered by mistake.

Behavioral 5ea)i2ility

Peo$le are inherent to change. (n this t!$e of feasibilit! chec"0 we come to "now if the newl! .e elo$e. s!stem will be ta"en an. acce$te. b! the wor"ing force i.e. the $eo$le who will use it.
:A

INTRODUCTION D!D E-R DI $R #S D T B SE REL TIONSHIP

:7

INT%OD;CTION

:8

S9STE+ DESIAN

Introd*ction
7ystem design provides the understandings and procedural details necessary for implementing the system recommended in the system study. Dmphasis is on the translating the performance re)uirements into design specifications. The design phase is a transition from a user+oriented document A7ystem proposalB to a document oriented to the programmers or database personnel . 7ystem design goes through two phases of development :

%6 >6

Lo4*cal 9e/*4n P.y/*cal 9e/*4n

A data flow diagram shows the logical flow of the system. $or a system it describes the input AsourceB, output AdestinationB, database Adata storesB and procedures Adata flowsB all in a format that meets the user*s re)uirement. ,hen 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 re)uired 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. :esign specifications instruct the user about what the system should do.

.ogical and $*t!*t

e)ign6

:9

The logical design of an information system is analogous to an engineering blue print of an automobile. It shows the major features and how they are related to one another. The detailed specification for the new system was drawn on the bases of user*s re)uirement data. The outputs inputs and databases are designed in this phase. "utput design is one of the most important features of the information system. ,hen the outputs is not of good )uality the users will be averse to use the newly designed system and may not use the 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. "utputs from computer system are re)uired 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. (arious types of outputs re)uired can be listed as below4 D/ternal "utputs, whose destination is outside the organization Internal outputs, whose destination is with the organization "perational 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. Dnd user must find outputs easy to use and useful to their jobs, ,ithout )uality output, user may find the entire system unnecessary and avoid using it. The term C"utputE in any information system may apply to either printer or displayed information. :uring the designing the output for this system, it was taken into consideration, whether the information to be presented in the form of )uery of report or to create documents etc. "ther important factors that were taken into consideration are4

The Dnd user who will use the output. The actual usage of the planned information The information that is necessary for presentation
A0

,hen and how often output and their format is needed. ,hile designing output for project based Attendance 0ompilation 7ystem, the following aspects of outputs designing were taken into consideration.

The outputs Ai.e., well formatted table outputs in the screen itselfB designed are simple to read and interpret.

$ormat of each output was another important point taken into consideration. "utput media, for each output appropriate media is decided whether it will be displayed on screen or will be taken to printer or both.

"ther output design related specifications, i.e., how fre)uently the outputs will be generated, how many pages or sheets appro/imately it will keep up, what is its planned use and output distribution to users are also taken into account.

These

were

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. $ormats and screen design for various reports were identified, taking into account the user re)uirements. Before finalising these were given to users for any improvement and suggestions. Dnd users issues taken into consideration were <eadability, <elevance and Acceptability. "nce all the output reports to be generated by A07 system were identified, they were given to users for their acceptance. $or prototyping various outputs, final outputs models were created with dummy data, before they were finalized.

$*t!*t So*rce)6
"utput contents originate from these sources4 <etrieval from a data source. Transmission from a process or system activity. :irectly from an input source.

The information produced in an output can be presented as Tabular contents Hraphic format
A1

@sing Icons

A2

$*t!*t

efinition6

The output should be defined in terms of4 Ty!e) of o*t!*t) 0ontent+headings, numeric, alphanumeric, etc., $ormat+hardcopy, screen, microfilm, etc., &ocation+local, remote, transmitted, etc., $re)uency+daily, weekly, hourly, etc., <esponse+immediate with in a period, etc.,

ata item) The name given to each data item should be recorded and its characteristics described clearly in a standard form4 ,hether alphanumeric or numeric &egitimate and specific range of characteristics Fumber of characters ositions of decimal point, arithmetic design, etc.,

In!*t

e)ign6

The input design is the link that ties the information system into the user*s 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.

In!*t

e)ign con)i)t) of developing specifications and procedures for data preparation 7teps necessary to put data into a usable form for processing.
A5

:ata entry, the activity of putting data into the computer processing.

$2,ective) of In!*t de)ign $ive objectives of design input focus on 0ontrolling the amount of input re)uired Avoid delay Avoiding errors in data Avoiding e/tra steps. 'eeping 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. :ata recording Ai.e., collection of dataB :ata encapsulation Ai.e., transfer of dataB :ata conversion Ai.e., controlling the flow of dataB :ata transmission Ai.e., transporting te dataB :ata validation Ai.e., checking the input dataB :ata correction Ai.e., correcting the errorsB Input erforma were designed, after a careful discussion with users. It was

attempted to cover all user re)uirements. :esigned erforma were given to user for any suggestion and final approval. (arious 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. Ade)uate validation checks are incorporated to ensure error free data storage. 7ome of the data validation checks applied are as following4 <edundancy of data is checked. It means the records of primary key do not occur twice. rimary key field of any table must not be left blank. ,herever items are coded, input code is checked for it*s validly with respect to several checks.
A4

@tmost care has been taken to incorporate the validation at each stage of the system. D.g. when entering records into employee information table for employee, it is checked that whether the corresponding employee e/ists in the employee information table etc.,

Dnough messages and dialogue bo/es 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 1<< routine work. is so designed that it ensures easy and error free data entry mechanism. "nce one is sure of input data the output formatting becomes an

S$5TBAR+

+SI0&

The purpose of this phase is to plan a solution for the problem specified by the re)uirement document. This is first step in moving from the problem domain to solution domain. :esigning activity is divided into two parts.

a4 Sy)tem

e)ign
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.

24

etailed

e)ign The internal goal of each of the modules specified in

the system design is decided.

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 en)uires, 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. :uring the design of the database at most care has been taken to keep up the objectives of the database design.

A:

C$ +

+SI0&
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. $or the code to be designed effectively, the following characteristics were also considered while designing the code. @ni)ueness (ersatility 7tability 7implicity 0onsciousness

The code should be ade)uate for present and anticipated data processing for machine and human use. 0are was taken to minimize the clerical effort and computer time re)uired to continue operation.

PR$C+SS

+SI0&

The process can be conceptualized in such a way to keep the methodology of main module process along with some au/iliary task, which will run concurrently with the main program. The top+down approach is maintained so as to keep track of the process, which satisfies the maintenance reliability testing re)uirements. The concurrency of the data is checked during data entry, by means of validation check for data in each field.

AA

D0T0 (:O2 DI0A%0+S

A7

D0T0 (:O2 DI0A%0+


:ata $low :iagramming 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 ClevelingE or CpartitioningE by some data flow diagram advocates. &ike a road map, there is no starting point or stop point, no time or timing, or steps to get somewhere. ,e just know that the data path must e/ist because at some point it will be needed. A road map shows all e/isting or planned roads because the road is needed. :etails that is not shown on the different levels of the data flow diagram such as volumes, timing, fre)uency, etc. is shown on supplementary diagrams or in the data dictionary. $or e/ample, data store contents may be shown in the data dictionary. :ata $low :iagram A:$:B uses a number of symbols to represent the systems. :ata $low :iagram also known as OBubble 0hart* is used to clarify system re)uirements and identifying the major transformations that will become programs in system design. 7o it is the starting point of the design phase that functionally decomposes the re)uirements specifications down to the level of details.

Term) *)ed in
Proce))

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:

0ra!hical Re!re)entation6

A8

ata flo-)
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.

0ra!hical Re!re)entation6

Actor)
An actor is active object that drives the data flow graph by producing or

consuming values.

ata )tore
A data store is a passive object with in a data flow diagram that stores data

for later access.

0ra!hical Re!re)entation6

+Gternal +ntity A rectangle represents an e/ternal entity such as a librarian ,a library

member. 0ra!hical Re!re)entation6

$*tP*t Sym2ol This bo/ represented data production during human computer interaction
A9

0ra!hical Re!re)entation6

9ero %eve* -$-

Set paper A D $ % & Set questi on Edit pro'il e Delete mem(er

Registered U S E R

TALKJA VA.ORG .com

ogin Attend test Put up queries !ie" queries # ans"er

Context Level DFD for

ecr!it"ent #roce$$
70

MEMBERS SECTION
(2.0)

)ser

LOGIN PROCESS (1.0)

Simple user

Admin

%;L!V!L 929
Va*'0 '03 ,20 U$%" '0 1 ,a$$2o"0

Ja a !o"#m $%c&'o(
().0)

O( *'(% &%$& $%c&'o(


(+.0)

Ma'(&%(a(c % $%c&'o(
(/.0)

!o"#m
V'$'&

+a,e on line test

Set papers # question "itans"er

To,'c-.#%"'%$ -#$%" co(&"o* ,a(%*

!ie" # put process

&est .atabase

.ave *ueries and ans d(

Pro'ile data(ase

71

S-o"n

G%& D%&a'*$

S%& "%co"0$

Set records
G%& D%&a'*$

)pdate pro'ile Delete and update queries # ans"er

E.% DI0A%0+S
72

E . % DI0A%0+
efinition6-An entity+relationship AD<B diagram is a specialized graphic that illustrates the interrelationships between entities in a database. D< diagrams often use symbols to represent three different types of information. Bo/es are commonly used to represent entities. :iamonds are normally used to represent relationships and ovals are used to represent attributes.

Introd*ction ,ithout understanding the relationship between an users with the :@$orum we cannot build the on+line test and forum system. The below D+< :iagram illustrates the relationship between an users and an forum, only then we would be able to design the process that needs to be computerized to build the system. The diagram documents the entities and relationships involved in the user information and on+line test system. It depicts the fundamental relations like recording personnel information, taking test handling )ueries. The D+< :iagram for :@$orum can be simple as well as comple/ .
75

:ata $low :iagramming 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 ClevelingE or CpartitioningE by some data flow diagram advocates. &ike a road map, there is no starting point or stop point, no time or timing, or steps to get somewhere. ,e just know that the data path must e/ist because at some point it will be needed. A road map shows all e/isting or planned roads because the road is needed. :etails that is not shown on the different levels of the data flow diagram such as volumes, timing, fre)uency, etc. is shown on supplementary diagrams or in the data dictionary. $or e/ample, data store contents may be shown in the data dictionary. :ata $low :iagram A:$:B uses a number of symbols to represent the systems. :ata $low :iagram also known as OBubble 0hart* is used to clarify system re)uirements and identifying the major transformations that will become programs in system design. 7o it is the starting point of the design phase that functionally decomposes the re)uirements specifications down to the level of details.

+HR

iagram of .ogin (od*le

)ser %D ocation %' &e"


Few @ser

og in

%' vali d

)ser %D )ser

Pass"o rd

Pass"or d
74

&e"

Pass"ord

7:

E . % DI0A%0+

%E:0TIONS?IPS

7A

%E:0TIONS?IP 8ET2EEN T08:ES


U$%"D%&a'*$ G"o#,D%&a'*$ group%d group&ame group eader mem(erCount Description num(er/ !arc-ar2 num(er0 &um(er !arc-ar2

4o"#mD%&a'*$ 'orum%d moderator startDate +opic postCount mem(erCount num(er/ &um(er0 Date !arc-ar2 &um(er &um(er

G"o#,U$%" group%d user%d joinDate num(er0 &um(er Date

Po$&D%&a'*$

4o"#mU$%"

77

post%d Poster postdate Contents vie"Count repl1Count voteCount Rating 'orum%d user%d joinDate Ran, postCount repl1Count num(er/ &um(er0 Date !arc-ar2 &um(er &um(er

num(er/ &um(er0 Date !arc-ar2 &um(er &um(er &um(er !arc-ar2

M%$$a6%D%&a'*$ $essage Su(ject Contents +o 2rom sendingDate num(er/ !arc-ar2 !arc-ar2 &um(er &um(er date

R%,*5D%&a'* $ repl1%d post%d repl1Poster repl1Date Contents vie"Count voteCount Rating num(er/ &um(er0 num(er0 Date !arc-ar2 &um(er &um(er !arc-ar2

/3 primar1 ,e1 03 'oreign ,e1

78

D0T080SE DESIAN

D0T080SE DESIAN
79

ATA STR%CT%R+S6
This part of the :esign consists the overall database schema or we can say

that tables which consists various types of records. Table of a database consists attributes,entities,tupels for storing and manipulating records

7ome of the tables are s follows4

A5B

%)er etail)6 This table shall store general information of the users. It contains following fields.

5ield name userId mailId password displayFame role joining:ate post0ount reply0ount groups0ount forums0ount

ata ty!e Fumber (archar6 (archar6 (archar6 (archar6 :ate Fumber Fumber Fumber Fumber

Con)traintI e)cri!tion rimary key, Auto Henerated Fot Full Aused as loginIdB Fot Full Fot Full Fot Full Aadmin, memberB Fot Full 0ount of posts submitted by the user on all forums 0ount of replies submitted by the user on all forums 0ount of groups joined by the user 0ount of forums joined by the user

A6B

0ro*! etail)6 This his table shall store information of all user Hroups. It contains following fields. ata ty!e Con)traintI e)cri!tion

5ield name

80

groupId groupFame group&eader member0ount description

Fumber (archar6 Fumber Fumber (archar6

rimary key AAuto HeneratedB Fot Full $oreign 'ey AuserId of @ser:etailsB Fot Full

A8B

0ro*!%)er)6 This his table shall store information of all the members of a Hroup. It contains following fields. ata ty!e Fumber Fumber :ate Con)traintI e)cri!tion $oreign key AHroup:etailsB Fot Full Fot Full

5ield name groupId userId joining:ate

A9B

5or*m etail)6 This his table shall store information of all the forums. It contains following fields. ata ty!e Fumber Fumber :ate (archar6 Fumber Fumber Con)traintI e)cri!tion rimary key AAuto HeneratedB $oreign 'ey AuserId of @ser:etailsB Fot Full Fot Full Fot Full Fot Full

5ield name forumId moderator start:ate topic post0ount member0ount

A;B

5or*m%)er)6 This his table shall store information of all the members of a forum. It contains following fields.

81

5ield name forumId userId joining:ate rank post0ount reply0ount

ata ty!e Fumber Fumber :ate (archar6 Fumber Fumber

Con)traintI e)cri!tion $oreign key Afourm:etailsB $oreign 'ey AuserId of @ser:etailsB Fot Full Fot Full Amoderator, team leader, memberB 0ount of posts submitted by the user on this forum 0ount of replies submitted by the user on this forum

A=B

Po)t etail)6 This his table shall store information post of users on a forum. It contains following fields. ata ty!e Fumber Fumber :ate (archar6 Fumber Fumber Fumber (archar6 Con)traintI e)cri!tion rimary key AAuto HeneratedB $oreign 'ey AuserId of @ser:etailsB Fot Full Fot Full Fot Full Fot Full (ote Hiven by the viewers to the post. <ating given on the basis of votes.

5ield name postId poster post:ate contents view0ount reply0ount vote0ount rating

A>B

Re!ly etail)6 This his table shall store information replies of a post on a forum. It contains following fields. ata ty!e Fumber Con)traintI e)cri!tion rimary key AAuto HeneratedB

5ield name replyId

82

postId reply oster reply:ate contents view0ount vote0ount rating

Fumber Fumber :ate (archar6 Fumber Fumber (archar6

$oreign 'ey A ost:etailsB $oreign 'ey AuserId of @ser:etailsB Fot Full Fot Full Fot Full (ote Hiven by the viewers to the reply. <ating given to the reply on the basis of votes.

85

#ODULES

+odules desci!tion

($ %.+S A&

T8+IR

+SCRIPTI$&
84

.ogin6 In this module employee*s user id and password is checked and only
employees with valid user id and password will get entry into member*s zone. This is a security feature to avoid entry of unauthorized users. Regi)ter &e- %)er6 The opularity of site depends on the no. of users that

register themselves on the site. This module is responsible for capturing and submitting the details of all the new users into the on line test system. This information is later retrieved to generate various reports. If any user wants to attend on line test firstly he must be registered, if any user register for on line test they will also registered for java forum. Verify %)er6 This module deals with the verifying the user that he is registered or not if he is registered then check which type of authorization he have he is simple user or admin. If he is admin he can set the papers with duration, set )uestion with answer and delete the user. If he simple user he can attend the on line test. Set Pa!er) -ith d*ration6 In this module admin user set the papers with duration .All papers related to java Ae/. 0ore java, j6ee, struts, ejb, /ml etcB are sated by administrator with e/amination duration. Set 7*e)tion -ith right An)-er6 This module is responsible for entering )uestion for that particular paper. 1ere administrator entered the multiple choice )uestion related to that paper with appropriate answer. $n line Te)t6 This module provides an interface to perform on line test of registered user, and give status of test what is score of user and how many )uestion he have attempted how many right and how many wrong. what is score of user.

Brief

e)cri!tion of all the mod*le) of 5or*m6

8:

Regi)ter &e- %)er for 5or*m6 The

opularity of site depends on the no. of

users that register themselves on the site. This module is responsible for capturing and submitting the details of all the new users into the java forum. This information is later retrieved to generate various reports. If any user registered for on line test there is no need to register here. $or putting any )ueries you must be firstly registered without registration any one can*t be put any )uery they may be view the posts. Verify %)er6 This module deals with the verifying the user that he is registered or not if he is registered then check which type of authorization he have he is simple user or admin. If he is admin he can delete any post, set some information for all members, and delete the members. If he simple user he can attend the on line test. %)er control Panel6 This module provides an interface where users can monitor, view and update their profile, preferences, subscribed forums and topics .you can also send messages to other users Aif permittedB .This module is related to user it has following sub module profile, Board preferences private messages and user groups. &e- 7*erie)6 This module provides the user to putting the )ueries any one can put up any )ueries on java,j6ee,struts,/ml etc.But before putting the )ueries you must be register Ameans you are a registered memberB. Vie- yo*r !o)t)6 In this module we manage all details of posts of all users. 1ere we manage all the information related to posts of particular member with posting date and time. ,hen you status and other details of posts. Vie- &e- Po)t)6 In this module we manage all details of posts which are new and unanswered. All new post shown to all registered and non registered members. If any member wants to answer the new )ueries he can do. Vie- %nan)-ered !o)t6 In this module we manage all details of posts which are not answered yet. All new post and that post which have not answered are shown here with details of posted by, posted date and posted time.
8A

want to view your post you can view with

Vie- Active to!ic6 In this module we manage all details of posts which are active . All active post are shown here with details of posted by, posted date and posted time. (em2er) .i)t6 In this module we show the list of all the registered members with whose full description. 1ere we show the list of all on line user and off line user. we also provide facility who is on line and what are doing.

87

T0:> /0=0 0%C?ITECT;%E


.ayered Architect*re

-atabase 9a!er 4$$lication 9a!er

;eb (nterface 9a!er

1lient 9a!er

1ontains the .ata an. .atabase-relate. ob@ects li"e store. $roce.ures0 triggers0 $ac"ages0 etc. 1ontains the ob@ects a..ressing the business logicB Most of the mi..le-le el 3a a ob@ects will be here in a$$lication la!er. (t will be on the web ser erB (t contains the web $ages '3SPs) of the a$$lication which will interact with the front-en. browsers 1ontains the web browser which interacts with web ser er

88

%EB P $ES

89

O;TP;T SC%EENS

%o"e

90

USER CONTROL PANEL

91

JAVA 4ORUM

92

USER GROUP

95

REGISTER

94

LOGIN

9:

TESTING SYSTEM SECURITY

9A

TESTINA

97

S9STE+ TESTINA
1ere the 7ystem testing involved is the most widely used testing process consisting of five stages as shown in the figure. In general, the se)uence of testing activities is component testing, integration testing, and then user testing. 1owever, as defects are discovered at any one stage, they re)uire program modifications to correct them and this may re)uire other stages in the testing process to be repeated.

)nit testing $odule testing Su(4 s1stem testing S1stem testing

Acceptan ce testing

3Com!onent te)ting4

3Integration te)ting4

3%)er te)ting B

Testing is the process of detecting errors. Testing performs a very critical role for )uality 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. 7ystem testing makes a logical assumption that if the parts of the system are correct, the goal will be successfully
98

achieved. In ade)uate testing or non+testing leads to errors that may not appear until months or even years later A<emember the Few Qork three day power failure due to a misplaced OBreak* statementB. This creates two problems4 5. 6. The time lag between the cause and the appearance of the problem. The time interval effect of the system errors on files and the records on the system. A small error can conceivably e/plode into a much larger problem. Dffective testing early in the process translates directly into long term cost savings from a reduced number of errors. Another reason for system testing is it*s utility as a user oriented vehicle before implementation. The best program is worthless if it does not meet the user re)uirements. @nfortunately, the user*s demands are often compromised by efforts to facilitate program or design efficiency in terms of processing time or design efficiency. Thus in this phase we went to test the code we wrote. ,e needed to know if the code compiled with the design or notR ,hether the code gave the desired outputs on given inputsR ,hether it was ready to be installed on the user*s computer or some more modifications were neededR Through the web applications are characteristically different from there software counterparts but the basic approach for testing these web applications is )uite similar. These basic steps of testing have been picked from software engineering practices. The following are the steps, we undertook4 The content of the Intranet site is reviewed to uncover 0ontent Drrors. 0ontent Drrors covers the typographical errors, grammatical errors, errors in content consistency, graphical representation and cross referencing errors 5. The design model of the web application is reviewed to uncover the navigation errors. @se cases, derived as a part of the analysis activity allows a web designer to e/ercise each usage scenario against the architectural and navigational design. In essence these non+e/ecutable tests help to uncover the errors in navigation.

99

6. ,hen web applications are considered the concept of unit changes. Dach web page encapsulate content navigation links, content and processing elementsA$orms, 7cripts, #7 *s as in our caseB. 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. @nlike 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. 8. 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. 9. The ,eb 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. ;. 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. =. A controlled and monitored population of end users tests Intranet application, this all comprises of the @ser Acceptance Testing. Because web application evolves continuously, the testing process is an ongoing activity, conducted by web support staff in our case the "rganization*s I7 people who will finally update and manage the application .

PSJC8$.$0J $5 T+STI&0 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. 1ence 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 e/ecuting a program with the intent of finding errors.

T+STI&0 $BJ+CTIV+S6
100

The main objective of testing is to uncover a host of errors, systematically and with minimum effort and time. 7tating formally, we can say, Testing is a process of e/ecuting 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 e/ists. The tests are inade)uate to detect possibly present errors. The software more or less confirms to the )uality and reliable standards.

.+V+.S $5 T+STI&0

In order to uncover the errors present in different phases, we have the concept of levels of testing. The basic levels of testing are

0lient Feeds

Acceptance Testing

<e)uirements

7ystem Testing

:esign

Integration Testing

0ode

@nit Testing

%nit te)ting

101

@nit testing focuses verification effort on the smallest unit of software i.e. the module. @sing 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 &ogin, 1< :epartment, Interviewer 7ection, etc. Dach module has been tested by giving different sets of inputs. ,hen 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 Te)ting
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. ,hen 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.

SJST+( T+STI&0
1ere the entire software system is tested. The reference document for this process is the re)uirements document, and the goal is to see if software meets its re)uirements. 1ere entire O1<< * has been tested against re)uirements of project and it is checked whether all re)uirements of project have been satisfied or not.

102

ACC+PTA&C+ T+STI&0
Acceptance Testing is performed with realistic data of the client to demonstrate that the software is working satisfactorily. Testing here is focused on e/ternal behavior of the systemP the internal logic of program is not emphasized. Test cases should be selected so that the largest number of attributes of an e)uivalence class is e/ercised 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 re)uirements are satisfied.

B8IT+ B$E T+STI&0


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 ma/imum possible errors. I tested step wise every piece of code, taking care that every statement in the code is e/ecuted at least once. The white bo/ testing is also called Hlass Bo/ Testing. I have generated a list of test cases, sample data, which is used to check all possible combinations of e/ecution 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. asis path testing! a "hite box techni#ue! ma$es use of program graphs %or graph matrices& to derive the set of linearl' independent test that "ill ensure coverage. (ondition and data flo" testing further exercising degrees of complexit'. B.AC/ B$E T+STI&0
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. 1ere the module will be treated as a block that will take some input and generate output. "utput for a given set of input combinations are forwarded to other modules.
105

Black+bo/ test are designed to uncover errors functional re)uirement without regard to the internal workings of a program. Black+bo/ testing techni)ues focus on the information domain of the software, deriving test cases by partitioning the input and output domain of a program in manner that provides through test coverage. The black+bo/ test is used to demonstrate that software functions are operational, that input is properly produced, and that the integrity of e/ternal information are maintained. A black+bo/ test e/amines some fundamental aspect of a system with little or no regard for the integral logical structure of the software. Hraph based testing methods e/plore the relationship between and behavior of program objects. D)uivalence partitioning divides the input classes of data are likely to e/ercise specific software function. Boundary values analysis probes the program*s ability to handle data at the limits of acceptability.

T+ST I&5$R(ATI$& 5.$B


A strategy for software testing may also be viewed in the conte/t of the spiral. @nit testing begins at the vorte/ 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 re)uirements established as part of software re)uirements analysis are validated against the software that has been constructed. $inally, 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. 0onsidering the process from a procedural point of view, testing within the conte/t of software engineering is actually a series of four steps that are implemented se)uentially. The steps are shown in $igure. Initially, tests focus on each component individually, ensuring that it functions properly as unit. 1ence, the name unit testing. @nit testing makes heavy use of white+bo/ testing techni)ues, e/ercising specific paths in module*s control structure to ensure complete coverage and ma/imum error detection.

104

System Testing Validation Testing Integ ation Testing

Validation testing !ode

System Security

Design

6.3 INFORMATION FLOW OF DATA FOR TESTING

So't"are Con'igurat ion

Evaluat ion
+est Results E""o" Error Rate Data

Testin g

E5pected

Debug

+est Con'iguration

Reliabi lity Model


10:

Predicated Relia(ilit1

Correctio

S9STE+ SEC;%IT9

10A

S9STE+ SEC;%IT9
Introd*ction
"ne 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* organizationP 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. "ne might not have considered ones* intranet on any other light. "n 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 conte/t. $or e/ample, one can give access to some ,eb authentication. 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 system4 "# Phy)ical )ec*rity6:amage due to natural causes like earth tremor, flooding, water logging, fire hazards, atmospheric or environmental conditions etc..$or overcoming these difficulties the replica of the data are automatically stored at various networks and for environmental conditions Air conditioning environment is created. '# ata )ec*rity6There are basically two problems associated with data security4+ aB. :ata not being available to the authorized person at the time of need. bB. :ata becoming available to the unauthorized person. To overcome these difficulties the following access facilities has been provided4+ i* ii* I&entific$tion:+ @ni)ue Ids for the different users have been provided. A"t#entic$tion:+
107

ages to some

people without them available to oner entire customer base, with several kinds of

7ystem checks the password under the particular user identification. The computer permits the various resource to the authorized person. iii* A"t#o!i,$tion:+ The access control mechanism to prevent unauthorized logging to the system. &eed for Sec*rity Gany people view computer and network security in a negative light, thinking of it only in terms of restricting access to services. "ne major view of network security is Cthat which is not e/pressly permitted is denied.E 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. roperty set up, intranet security can be an enabler, enriching ones* intranet with services and resources one would not otherwise be able to provide. 7uch an overall security policy might be described as Cthat which is not e/pressly denied is permitted.E 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. $or e/ample, some of ones* users might have information they would liIke to make available, provided access to it can be limited to a specified group+for e/ample, confidential management or financial information. ,ithout 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. roviding security increases ones* organization*s ability to use the important collaborative aspects of an intranet. The more defensive approach, preventing abuse of ones* intranet, is also given play, however. "rganizations* 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 e/ample. Academic institutions generally tilt toward making the free e/change of ideas a primary interest. At the same time, though the curiosity Ato use a polite wordB of undergraduates re)uires strong needs for security. 'eeping prying sophomores out of university administration computing resources is a high priorityP for e/ample, students have been known to try to access grade recordsAtheir own or those of othersB for various reasons.

108

Sec*rity 5eat*re) of an Intranet6-

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.

2*r/t! one can ta$e steps on ones) Web server to set up securit'. Secon)! one can ta$e steps "ith the other T(*+,* net"or$ services one has set up on ones) intranet to enhance their securit'. Third! one can secure customers) Web bro"sers themselves to limit "hat the' can do "ith them.
a4 Be2 )erver Sec*rity There is a wide range of very fle/ible security features one can implement on ones* ,eb server. 1ere*s a summary4 Access to ,eb servers, individual ,eb pages, and entire directories containing ,eb pages can be set to re)uire a username and password. Access to ,eb servers, individual ,eb pages, and entire directories containing ,eb pages can be limited to customers on specific computer systems. AIn other words, access will be denied unless the user is at his or her usual computer or workstation.B "ne can organize individuals into groups and grant access to individual ,eb servers, ,eb pages, and entire directories containing ,eb pages based on group membership. "ne can organize computers into groups, and grant access to individual ,eb servers, ,eb pages, and entire directories containing ,eb pages based on group membership.

It*s ones* responsibility to determine the level of security one need on ones* intranet, and, of course, to implement it. utting most of the security measures mentioned into place is not difficult. "nes* primary concern will be e/plaining to customers how intranet security works, not so much as a limiting factor but as an
109

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, it*s important to make sure both information providers and their customers understand a number of critical aspects of intranet security, so they don*t inadvertently defeat the purpose of it. There are network security commonplaces, unrelated to intranet security

specifically, that need ones* attention. All the security precautions in the world can*t protect ones* intranet from overall poor security practices. @sers making poor choices on passwords always lead the list of computer and network security risks. "ne can limit access to a sensitive ,eb resources based on the T0 !I network address of boss*s 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.

24 An Im!ortant Barning A2o*t 8o)tnameI IP Addre)) A*thentication All of the ,eb server software described in this chapter trustingly accepts the word of a re)uesting computer when it sends its I address. (erification of this of a pc or Gac. A information is not possible. It*s relatively easy for a user to change the hostname!I address of a @FIN system, and laughably easy to change that impersonate someone else*s simply by changing the I curious, mischievous, or malicious person can reconfigure his computer to address of his own. Although this is an overall network security issue, not specifically one for ones* intranet, it*s important one 'now about it because it can affect the security of ones* access controlled documents. 7ecurity+minded network administrators can use special hardware and software to prevent this sort of I intranet! one*ll probably want to combine hostname!I spoofing, but for ones*

address authentication with

username!password authentication, as outlined in the following section.

c4 Sec*reI +ncry!ted Tran)action) "ne can further enhanced security on ones* intranet by encrypting ,eb
110

transactions. ,hen one use an encryption facility, information submitted by

customers using ,eb fill+in forms+including usernames, passwords, and other confidential information+can be transmitted securely to and from the ,eb server. d4 Intranet and the Internet Is ones* intranet is accessible from the internetR If so, all of the security problems of the Internet are now ones* intranet*s problems, too. "ne can, however, connect safely to the Internet and still protect ones* intranet. "ne can even use the Internet as a means of letting remotes sites in ones* company access ones* intranet. e4 5ire-all) It*s a fact of Internet life there are people out there who want to break into other people*s networks via the Internet. <easons 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* organization*s 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. $irewalls permit desired services coming from the outside, such as Internet e+mail, to pass. In addition, most firewalls now allow access to the ,orld ,ide ,eb from inside the protected networks. The idea is to allow some services to pass but to deny others. $or e/ample, 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.

S*mmary
7ecurity is important not so much because it prevents things, but because it enables them. #udicious use of built+in security features of the ,eb server and other intranet resources can add value to ones* intranet by making new things possible.

111

7;0:IT9 0SS;%0NCE

112

7;0:IT9 0SS;%0NCE

I&TR$ %CTI$&
The key factor ,hile to the success of in software can be )uality program is its implementation. definition process evolving phenomenon,

implementation of processes makes the difference between success 2 failure. A )uality product can be defined as4 "ne that is fit for use. "ne that is produced as per the predefined standards. 7o, 7oftware .uality Assurance is the process of ensuring that the product confirms to its standards.

7%A.ITJ (A&A0+(+&T SJST+(


A .uality Ganagement 7ystem A.G7B is instituted by an organization to manage 2 maintain )uality procedures in its day+to+day functioning. It is a conglomerate of people who have the re)uired authority, responsibility and procedures for performing various activities. The .G7 of an organization is guided by )uality policy 2 )uality procedures supported by various documents+ $orms!$ormats to maintain records 2 work instructions to provide guidelines for doing a particular piece of work.

115

IMPLEMENTATION EVALUATION MAINTENANCE

I+P:E+ENT0TION

114

I+P:E+ENT0TION
Introd*ction
7ystem 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 re)uirements are met and the user is satisfied. The new system may be totally new, replacing an e/isting manual or automated system, or it may be a major modification to an e/isting system. In either case, proper implementation is essential to provide a reliable system to meet organizational re)uirements. 7uccessful implementation may not guarantee improvement in the organization using the new system Athat is a design )uestionB, but improper will prevent it. Implementation is the process of having systems personnel check out and put new e)uipment 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. :epending 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. 7ometimes, 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 ne/t. The implementation of the web based or lan based networked project has some e/tra steps at the time of implementation. ,e need to configure the system according the re)uirement of the software. $or the project we need to install and configure ,eblogic server ?.5 , database server, and the deployment directory for the project.

A)!ect) of Im!lementation
The two aspects of implementation are4 Training ersonnel 0onversion rocedures

11:

TRAI&I&0
Dven well designed and technically elegant systems can succeed or fail because of the way they are used. Therefore the )uality 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. 7ince, 1uman <esource <ecruitment rocess is web+based and user friendly, not much effort was re)uired in training process.

C$&V+RSI$&6
0onversion is the process of changing from the old system to the new system. There are two methods of handling systems conversion4 arallel <un Immediate cut+off

Parallel R*n
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.

?#'#'#" Immediate c*t-off


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 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.

Im!lementation Tool)
The project was implemented using #ava server pages,1TG&,#ava beans.The implementation work was carried out in ,indows N !6KKK server platform.

5B #6DD. 6B ,eblogic ?.5.


11A

8B "racle 5Kg.

Coding
This means program construction with procedural specifications has finished and the coding for the program begins4 "nce the design phase was over, coding commenced 0oding is natural conse)uence of design. 0oding step translate a detailed design representation of software into a programming language realization. Gain emphasis while coding was on style so that the end result was an optimized code. The following points were kept into consideration while coding4

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 labor of writing it again and again.

&aming Convention6 As the project size grows, so does the comple/ity of recognizing the purpose of the variables. Thus the variables were given meaningful namesP whihch would help in understanding the conte/t and the purposes of the variable. The function names are also given meaningful names that can be easily understood by the user.

Indentation
#udicious use of indentation can make the task of reading and understanding a program much simpler. Indentation is an essential part of a good program. If code id intended without thought its will seriously affect the readability of the program.
117

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.

118

+0INTEN0NCE

119

+0INTEN0NCE
Gaintenance or enhancement can be classified as4 + or Corrective Ada!tive Perfective# 0orrective maintenance means repairing processing or performance failures making changes because of previously uncorrected problems or false assumptions. Adaptive maintenance means changing the program function. erfective maintenance means enhancing the performance or modifying the programAsB to respond to the user*s additional or changing needs. Gaintenance is actually the implementation of the post implementation review plan. 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. Gaintenance is costly. "ne way to reduce maintenance costs is through maintenance management and software modification audits. 7oftware 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.
120

In 1<< , care has been taken towards maintenanceP &oop 1oles can be eradicated from the system from time to time according to changing re)uirements with lesser cost.

E=0:;0TION

121

E=0:;0TION
The evaluation phase ranks vendor proposals and determines the one best suited, Dvaluation of the system is performed to identify its strengths and weaknesses. The actual evaluation can occur along any of the following dimensions4 "perational Dvaluation4 Assessment of the manner in which the system functions, including case of use, response time, overall reliability and level of utilization. "rganizational Impact4 Identification and measurement of benefits to the organization in such areas as financial concerns, operational efficiency and competitive impact. @ser Ganager Assessment Dvaluation of the attitudes of senior and user manager within the organization, as well as end+users. :evelopment erformance4 Dvaluation of the development process in accordance with such yardsticks as overall development time and effort, conformance to budgets and standards and other project management criteria.

122

SCOPE

ND LI#IT TION

125

CONC:;SIONS
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 doesn*t stop there. Feed a computerR "ne may find it listed in the proper category, in any configuration from very old and obsolete to the latest greatest machine available. ,hat about anti)uesR "ne can find an anti)ue )uilt that is up for highest bid, or maybe an old violin, whose beautiful tones have enchanted many though its years. Tickets, Gay be a ticket to the ne/t concert of ones favorite artist or play production. occasion. In this instance it may be true that on eBay, they have something for everybody, whatever their tastes may be. "ne can even find that special bottle of wine, some aged, e/otic cheese, and the perfect Omood* music for that special

Sco!e for 5*t*re Bork


7ince this system has been generated by using "bject "riented 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 re)uirements using latest version of available software and hardware.But as user re)uirements and operating environment keep changing further e/tensions can be made on this.In future some more schemas can be added in the C 8R Recr*itment Proce))E hence these schemas are to be included in the software developed.

.imitation)
7ince, 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 can*t be used in a huge organization where number of networks are very large, because
124

the database used in this system is an average one. Also it doesn*t 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 7ystem. $ollowing may be the drawback in this system. 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.

12:

PPENDI&- 'D T B SE( PPENDI&-B'J V )J*EE( PPENDI&-C'HT#L( PPENDI&-D'J V SCRIPT(

12A

0PPENDIB.0

127

0PPENDIB.0
Backend remain) on )erver )ide and ha) t-o com!onent) i#e# "# Server )ide !rogram '# ata Ba)e# ata 2a)e is the most important thing in this universe as data base gives identity to a thing without data base e/istence of a thing is impossible while working on a project first step is to design a database. Bhat i) data 2a)e C :ata Base is a collection of tables and table is a collectionof records in a tabular form i.e. in row and columns. ata Ba)e can 2e divided into t-o !art) 6"# R B(S# '# B(S#

,e will be using <:BG7 A<elational :atabase Ganagement 7ystemB in our project i.e. oracle ?i Dnterprise edition. Bhy -e are *)ing $racle 3R B(S4C Some of the merit) of *)ing $racle 3R B(S4 i) a) *nder 6 0entralization of database. 0lient 7erver Technology. 7ecurity. Formalization of :ata Base. <elationship. Transaction rocessor. It gives some internet related features.
128

1ence because of these features we are using "racle as a back end technology. AB$%T $RAC.+ "@g "racle 5Kg contains all the features of previous version. It also supports some new features 2 enhancement to some e/isting features. "racle servers provides deficient 2 effective solution for the major features. .arge ata2a)e D S!ace (anagement Control ata2a)e Performance)

(any Conc*rrent

8igh Tran)action Proce))ing Performance 8igh Availa2ility Controlled Availa2ility Ind*)try Acce!ted Standard) (anagea2le Sec*rity ata2a)e +nforced Integrity i)tri2*ted ata2a)e Sy)tem

Porta2ility Com!ati2ility Connectivity &+B 5+AT%R+S $5 $RAC.+ "@g Im!roved Scala2ility Im!roved Sec*rity Im!roved Performance Via Partition +nhanced S*!!ort for Ca!a2ility To ata2a)e Re!lication a (*ch .arger &*m2er $f

8andle

Conc*rrent %)er) &e- D Im!roved ata Ty!e)

129

0PPENDIB.8

150

0PPENDIB.8
Bhat i) (iddle BareC Middle Ware is a concept! Middle Ware provides centrali-ation of business logic i.e. instead of putting logic on each and ever' client machine "e put logic on a centrali-ed server hence middle "are is nothing but a server side program "here all 'our business logic and business methods reside. ,t remains on server side and it has all the logical building. Middle "are provides:"4 (*lti!le Client acce))# '4 CentraliKed 2*)ine)) logic in ca)e of di)tri2*ted a!!lication# ecause "e are "or$ing on .istributed Application independent Language:Technology %)ed ,ntro)uct*on to Ja8a
#ava is a high level, third+generation programming language, like 0, $ortran, run+time environment that cointains built+in support for the ,orld ,ide ,eb. erl and many others. It is a platform for distributed computing % a development and

ased *ro/ect "e need platform

8i)tory of Java
#ava development began at 7un Gicrosystems in 5II5, the same year the ,orld ,ide ,eb was conceived. #ava*s creator, #ames Hosling did not design java for the Internet. 1is "bjective was to create a common development environment for consumer electronic devices which was easily portable from one device to another.

151

This effort evolved into a language , code named "ak and later renamed #ava that retains much of the synta/ and power of cJJ , but is simpler and more platform independent.

Java 5eat*re)
Some of the im!ortant feat*re) of Java are a) follo-)6 Sim!licity $rientation Platform Inde!endence Sec*rity 8igh Performance (*lti Threading ynamic linking#

0ar2age Collection# "ne of the most important features of #ava is latform Independence which makes it famous and suitable language for ,orld ,ide ,eb.

Bhy ,ava i) Platform Inde!endentC


#ava is latform Independent because of #ava (irtual Gachine A#(GB.

Java Virt*al (achine 3JV(4


The client application or operating system must have a java byte+code interpreter to e/ecute byte+code instructions. The interpreter is a part of a lager program called the #(G. The #(G interprets the byte code into native code and is available on a platform that supports java.

Connectivity *)ing J BC
There are fo*r kind of driver) availa2le in Jd2c6"# Jd2c$d2c Bridge '# Partly Java 1# P*re Java 9# &ative river# river# river#

river#

Client Side Interface6


In client side interface we are using4+ Servlet I JSP L In Internet Ba)ed A!!lication# J'++ 5rame-ork and Architect*re

152

#6DD is one of the best solutions that we have had so far for meeting the demand of today*s enterprise. #6DD specifies both the infrastructure for managing our applications, and the service A Is for building our applications. The #6DD platform is essentially a distributed application+server environment+ a java environment that provides the following4 + A set of java e/tension A Is to build applications. These A Is define a programming model for #6DD applications. M 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 comple/ database transactions, or even java applets, all distributed across the network.

The J'++ R*ntime


,hile #6DD bundles together A Is that have been in e/istence in one form or another for )uite sometime, perhaps its most significant aspect is the abstraction of the runtime infrastructure. The #6DD specification doesn*t specify how a #6DD runtime should or could be built. Instead, #6DD 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, #6DD application developers could just focus on the application logic and related service, while leveraging the runtime for all infrastructure+related services. Apart from specifying a set of standard A Is, the #6DD architecture also provides a uniform means of accessing platform+level services via its runtime environment. 7uch service includes distributed transactions, security, messaging etc.

The J'++ API) %)ed


:istributed applications re)uire access to a set of enterprise services. Typical services include transaction processing, database access, messaging, multithreading etc. The #6DD architecture unifies access to such services in its enterprise service A Is. 1owever, instead of having to access these service through
155

proprietary or non standard interfaces, application programs in #6DD can access these A Is via the container. There are various A I specification in #6DD framework which enable us to create an application at great speed with minimum effort.

API) %)ed To B*ild the Soft-are


"# J BC API

The #:B0 A I provides developers with a way to connect to relational data from within java code. @sing the #:B0 A I, developers can create a client Awhich can be anything from an applet to an D#BB that can connect to a database, e/ecute structured )uery language statements, and processes the result of those statements. The A I 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 s)l compliant relational databases. #:B0 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 ,ava#):l !ackageA which can be used with any database that has an appropriate #:B0 drive. This allow #:B0 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 #:B0 driver. #:B0 includes following packages for the means of database accessing and provides various features of the database. The packages are as follows4 +

,ava#):l Package6 -

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, e/ecuting statements and prepared statements, and running batch )ueries. Advanced functions such as batch updates, scrollable result sets, transaction isolation, and s)l data types are also available.

,avaG#):l Package6 -

154

This package introduces sum major architectural change to #:B0 programming compared to java.s)l 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.

'#

Java Servlet)6 -

7ervlets are #ava technology*s answer to 0ommon Hateway Interface A0HIB rogramming. They are programs that run on a ,eb server, acting as middle layer between a re)uest coming from a ,eb browser or other 1TT client and databases or applications on the 1TT server. Their job is to4

Read any data )ent 2y the *)er#


This data is usually entered in a form on a ,eb page, but could also come from a #ava applet or a custom 1TT client program.

.ook *! any other information a2o*t the re:*e)t that i) em2edded in the 8TTP re:*e)t#
This information includes details about browser capabilities, cookies, the host name of the re)uesting client, and so forth.

0enerate the re)*lt)#


This process may re)uire talking to a database, e/ecuting an <GI or 0"<BA call, invoking a legacy application, or computing the response directly.

5ormat the re)*lt) in)ide a doc*ment#


In most cases, this involves embedding the information inside an 1TG& page.

Set the a!!ro!riate 8TTP re)!on)e !arameter)#


This means telling the browser what type of document is being returned Ae.g., 1TG&B, setting cookies and caching parameters, and other such tasks.

Send the doc*ment 2ack to the client#

15:

This document may be sent in te/t format A1TG&B, binary format AHI$ imagesB, or even in a compressed format like gzip that is layered on top of some other underlying format. Gany client re)uests can be satisfied by returning pre+built documents, and these re)uests would be handled by the server without invoking servlets. In many cases, however, a static result is not sufficient, and a page needs to be generated for each re)uest. Java Server Page)6 #ava 7erver ages A#7 B technology enables you to mi/ regular, static 1TG& with dynamically generated content from servlets. Gany ,eb pages that are built by 0HI programs are primarily static, with the parts that change limited to a few small locations. $or e/ample, the initial page at most on+line stores is the same for all visitors, e/cept for a small welcome message giving the visitor*s name if it is known. But most 0HI variations, including servlets, make you generate the entire page via your program, even though most of it is always the same. #7 create the two parts separately. &isting 5.5 gives an e/ample. Gost of the page consists of regular 1TG&, which is passed to the visitor unchanged. arts that are generated dynamically are marked with special 1TG&+like tags and mi/ed right into the page. lets you

The Advantage) of JSP


#7 has a number of advantages over many of its alternatives. 1ere are a few of them.

Ver)*) Active Server Page) 3ASP4


A7 is a competing technology from Gicrosoft. The advantages of #7 are twofold. $irst, the dynamic part is written in #ava, not (B7cript or another A7 +specific language, so it is more powerful and better suited to comple/ applications that re)uire reusable components. 7econd, #7 the same argument when comparing #7 is portable to other operating systems you can use #ava and ,eb serversP you aren*t locked into ,indows FT!6KKK and II7. Qou could make to 0old$usionP with #7 and are not tied to a particular server product. Ver)*) P*re Servlet)
15A

#7 doesn*t provide any capabilities that couldn*t in principle be accomplished with a servlet. In fact, #7 documents are automatically translated into servlets lus, by behind the scenes. But it is more convenient to write Aand to modifySB regular 1TG& than to have a zillion println statements that generate the 1TG&. separating the presentation from the content, you can put different people on different tasks4 your ,eb page design e/perts can build the 1TG& using familiar tools and leave places for your servlet programmers to insert the dynamic content. Ver)*) Server-Side Incl*de) 3SSI4 77I is a widely supported technology for inserting e/ternally defined pieces into a static ,eb page. #7 is better because you have a richer set of tools for building that e/ternal piece and have more options regarding the stage of the 1TT response at which the piece actually gets inserted. Besides, 77I is really intended only for simple inclusions, not for CrealE programs that use form data, make database connections, and the like. Ver)*) Static 8T(. <egular 1TG&, of course, cannot contain dynamic information, so static 1TG& pages cannot be based upon user input or server+side data sources. #7 is so easy and convenient that it is )uite reasonable to augment 1TG& pages that only benefit slightly by the insertion of dynamic data. reviously, the difficulty of using dynamic data precluded its use in all but the most valuable instances.

157

0PPENDIB.C

158

0PPENDIB.C
Bhat i) 8T(.C
1TG& A1yper Te/t Garkup &anguageB4 A markup language used to structure te/t and multimedia documents and to set up hyperte/t links between documents, used e/tensively on the ,orld ,ide ,eb. 1TG& is a display language, not a programming language. 1TG& is a markup language Athe G& in 1TG&B that uses a fi/ed set of markup tags. 1TG& itself is the set of customizable CmarkupE tags that are inserted into 1TG& document govern its format, multimedia content, and hyperlinks. Any 1TG& viewer can display such documents but they are normally viewed using a ,eb browser. 1TG& is a programming language in that an 1TG& document is a program that, when CrunE by a browser, displays its te/t as hypermedia Amultimedia with hyperlinksB. The ClanguageE 1TG& is really only a collection of predefined tags which , when inserted into regular te/t, tell a web browser how to4 I. $ormat the document and its te/t. II. Incorporate i.e. insert a graphic image, video se)uence, or sound clip into the displayed document. III. &ink into other locations, in the same document, in another web page, or even on another computerA7erverB, or I(. &ink to other programs written in #ava,#ava7cript or other languagesAcalled 0HI applicatinsB.

5eat*re) of 8T(.6 1TG& stands for 1yper Te/t Garkup &anguage. An 1TG& file is a te/t file containing small markup tags. The markup teg tell the ,eb browser how to display the page. An 1TG& file must have an htm or html file e/tension. An 1TG& file can be created using a simple te/t editor.
159

It*s a display+only technology.

0PPENDIB.D
Bhat i) JAVASCRIPTC
#ava7cript is a compact, object+based scripting language. It can provide interactive web pages, validate from data, and make your web page clearer. #ava7cript is a lightweight interpreted scripting language. The language is most well known for its use in wesites.It was originally developed by Brendan Dich of Fetscape 0ommunications. It adds interactive functions to 1TG& pages, which are otherwise static. #ava7cript is easier to use than #ava, but not as powerful and deals mainly with the elements on the ,eb page."n the client, #ava7cript is maintained as source code embedded into an 1TG& page. "n the 7erver, it is compiled into byte codeAintermediate languageB, similar to #ava programs.

2eature/ o+ Ja8aScr*pt$;
#ava7cript was designed to add interactively to 1TG& pages. #ava7cript is a scripting language+a scripting language is a lightweight programming language. A #ava7cript is usually embedded directly in 1TG& pages. A #ava7cript is an interpreted language Ameans that script e/ecute without preliminary compilationB. All major browsers, like Fetscape and Internet D/plorer, support #ava7cript.

5*nction) of JavaScri!t6#ava7cript gives you the ability to perform the following functions4 0ontrol document appearance and content 0ontrol the browser Interact with document content Interact with the user <ead and write client state with cookies
140

Interact with applets Ganipulate Dmbedded Images

L*"*tat*on/ o+ Ja8aScr*pt$;
#ava7cript does not have any graphics capabilities 0lient+side #ava7cript can not read or write files #ava7cript does not support networking of any kind #ava7cript doesn*t have any multithreadind capabilities.

141

RE!RENCES ND BIBILIO$R PH"

142

%E(E%ENCES

http:++""".sun.com http:++""".coreservlets.com http:++""".serverside.com http:++"""."0schools.com http:++""".google.com http:++"""."ebopedia.com http:++""".dd/.com

8I8I:IOA%0P?9
B$$/S
#6DD by HA<<Q 0"<FD&&. #6DD by Allamaraju 2 Buest AApress ublicationsB. #7 2 7ervlets by Garty 1all A7@F GicrosystemsB 7Q7TDG AFA&Q7I7 AF: :D7IHF by D&IA7 G A,A:. 7"$T,A<D DFHIFDD<IFH by IAF 7"GGD(I&&D.

HFIN IF$" 7"$T GATD<IA&7

145

Potrebbero piacerti anche