You are on page 1of 134

Project Report

PROJECT

REPORT

ON

XXXXXXXXXX

Submitted to XXXX University for the p rti ! fu!fi!!ment of the re"uirement for the A# rd of $e%ree for XXXXXXXXXXXXXXXXXXXXXXXX

$one

by

Mr. /Miss. XXXXXX

XXXXX Institute of Management & Computer Sciences

&yder b d

-1-

Project Report

CERT'('CATE

This is to certify that Mr. XXXX, bearing Roll No. XXXXXXXXXXX ha e !e elope! Soft"are pro#ect title! XXXXXXXX for ))) SO(T*ARE SO+UT'ONS as a partial $ulfillment for the a"ar! of the %egree of XXXXXXX.

&EA$ O( $EPART,ENT

PR'NC'PA+ XXX institute of , n %ement Computer Sciences

EXTERNA+

-2-

Project Report

AC.NO*+E$/,ENT

My e&press than's an! gratitu!e an! than's to (lmighty )o!, my parents an! other family members an! frien!s "ithout "hose uncontaine! support, I coul! not ha e ma!e this career in XXXX.

I "ish to place on my recor! my !eep sense of gratitu!e to my pro#ect gui!e, ,r0 XXXXX1 ))) Soft# re So!utions1 &yder b d for his constant moti ation an! aluable help through the pro#ect "or'. *&press my gratitu!e to ,r0 XXXX, %irector of XXXXX 'nstitute of , n %ement - Computer Sciences for his aluable suggestions an! a! ices through out the XXX course. I also e&ten! my than's to other $aculties for their Cooperation !uring my Course.

$inally I "oul! li'e to than' my frien!s for their cooperation to complete this pro#ect.

XXXXXXX

-3-

Project Report

ABSTRACT

-4-

Project Report

E2/ift Shoppy is a ery important feature use! in e+commerce to assist people ma'ing purchases online, similar to the ,S *nglish term -shopping cart.. The business+to+consumer aspect of electronic commerce /e+commerce0 is the most isible business use of the 1orl! 1i!e 1eb. The primary goal of an e+ commerce site is to sell goo!s an! ser ices online. *+commerce is fast gaining groun! as an accepte! an! use! business para!igm. More an! more business houses are implementing "eb site pro i!ing functionality for performing commercial transactions o er the "eb. It is reasonable to say that the process of shopping on the "eb is becoming commonplace. E2/ift Shoppy is a ery important feature use! in e+commerce to assist people ma'ing purchases any pro!ucts online. This pro#ect !eals "ith !e eloping an e+commerce "ebsite for online !ifferent types of gifts. It pro i!es the user "ith a catalog of !ifferent types of gifts a ailable for purchase in the store. In or!er to facilitate online purchase a shopping cart is pro i!e! to the user. The system is implemente! using a 2+tier approach, "ith a bac'en! !atabase, a mi!!le tier of Microsoft Internet Information Ser ices /IIS0 an! (S3.N*T, an! a "eb bro"ser as the front en! client. The E2/ift Shoppy pro#ect has been !e elope! to allo" business gro"s larger an! faster. This site "ill let customers to many pro!ucts an! ser ices can be or!ere!. The E2/ift Shoppy is e&pan!e! permanently through ne" pro!ucts an! ser ices in or!er to offer a pro!uct portfolio correspon!ing to the mar'et. 3ri ate customer an! business customers can or!er the selecte! pro!ucts of the E2/ift Shoppy Ser ice online 4uic'ly an! comfortably. Target groups of customer of the E2/ift Shoppy are huge. The customers can ha e a payment option through cre!it car! only. In or!er to use the loa! ie" an! or!er pro!ucts online from any part of the "orl!. The site sells !ifferent types of. ,n!er this "ebsite

-5-

Project Report

"riting proce!ure, the customer registers itself an! recei es a login for its purchases name. It is an Internet application. Users of the system3 Customer is the user of the system. (n a!ministrator of the "ebsite is the super user. 1hen the user types in the ,R5 of the "ebsite, a 1elcome page is sho"n "hich has a menu on the left han! si!e, a banner at the top an! any relate! lin's to other sites. This site contains an online catalog for the user. ,ser has to login to 1elcome 3age before or!ering anything. 5ogin functionality shoul! chec' the authenticity of the user from the !atabase. (unction ! components of the project3 $ollo"ing is a list of functionality of the system6 Re%istr tion Screen3 If the user is not registere!, then registration screen shoul! be a ailable Products Order3 This screen "ill sho" all the types of !ifferent pro!uct "ith their alues an! minimum 4uantity that shoul! be or!ere!. If possible,

pro i!e the image of each of the pro!uct. 7n selecting any one of the pro!uct, user is sho"n the columns for the 4uantity to be entere!. (fter entering the 4uantity, price is automatically set by the system base! on the pro!uct price !ata. 7n a!!ing to catalog, 'in!ly chec' the in entory an! ta'e appropriate action. C t !o% 'nform tion3 This screen contains the information about the or!ers for the user. It gi es total alue of the or!er together "ith in!i i!ual

items or!ere!. 7n or!ering, the ali!ation about user.s cre!it is ma!e. Cre!it information can be 'ept in the !atabase for the sa'e of simplicity. 7nce the or!er is accepte!, in entory is up!ate! an! shipment entry is ma!e in the !atabase. 7nce the shipment is !one, shipment status is up!ate!. Terms nd Conditions 8 ( 9rief te&t on the "ebsite e&plaining terms an!

con!itions an! printable copy of it. Cont ct 'nform tion 8 Contact information regar!ing the office a!!resses "ith phones an! fa&es are pro i!e! on this screen

-6-

Project Report

In or!er to !e elop an e+commerce "ebsite, a number of Technologies must be stu!ie! an! un!erstoo!. These inclu!e multi+tiere! architecture, ser er an! client si!e scripting techni4ues, implementation technologies such as (S3.N*T, programming language /such as C:, ;9.N*T0, relational !atabases /such as MyS<5, (ccess0. This is a pro#ect "ith the ob#ecti e to !e elop a basic "ebsite "here a consumer is pro i!e! "ith a *+)ift Shoppy application an! also to 'no" about the technologies use! to !e elop such an application. This !ocument "ill !iscuss each of the un!erlying technologies to create an! implement an e+commerce "ebsite.

-7-

Project Report

CONTENTS
40 'NTRO$UCT'ON
INTR7%,CTI7N T7 3R7=*CT 7R)(NI>(TI7N 3R7$I5* 3,R37S* 7$ T?* 3R7=*CT 3R795*M IN *XISTIN) S@ST*M S75,TI7N 7$ T?*S* 3R795*MS

50 S6STE, ANA+6S'S
A.B. A.A. A.2. A.D. A.E. A.F. A.G. INTR7%,CTI7N S@ST*M 17RC$571 ST,%@ 7$ T?* S@ST*M ?(R%1(R* & S7$T1(R* R*<,IRM*NT 3R737S*% S@ST*M IN3,T & 7,T3,T 3R7C*SS M7%*5S ,S*% 1IT? =,STI$IC(TI7N

70 (EAS'8'+'T6 REPORT
2.B. 2.A. 2.2. T*C?NIC(5 $*(SI9I5IT@ 73*R(TI7N(5 $*(SI9I5IT@ *C7N7MIC $*(SI9I5IT@

90 SO(T*ARE RE:U'RE,ENT SPEC'('CAT'ONS


D.B. D.A. $,NCI7N(5 R*<,IR*M*NTS 3*R$7RM(NC* R*<,IR*M*NTS

;0 SE+ECTE$ SO(T*ARE
E.B. E.A. E.2. E.D. INTR7%,CTI7N T7 .N*T $R(M*17RC (S3.N*T C:.N*T S<5 S*R;*R

<0 S6STE, $ES'/N

-8-

Project Report

F.B. F.A. F.2. F.D. F.E. F.F.

INTR7%,CTI7N S@ST*M 17RC$571 N7RM(5I>(TI7N *+R %I()R(M %(T( $571 %I()R(MS %(T( %ICTI7N(R@

=0 OUTPUT SCREENS >0 S6STE, TEST'N/ AN$ ',P+E,ENTAT'ON


H.B. H.A. H.2. H.D. INTR7%,CTI7N STR(T*)IC (33R7(C? 7$ S7$T1(R* T*STIN) ,NIT T*STIN) T*ST

?0 S6STE, SECUR'T6
I.B. I.A. INTR7%,CTI7N S*C,RIT@ IN S7$T1(R*

4@0

CONC+US'ON

440 (UTURE ',PROAE,ENT 450 8'8+'O/RAP&6

-9-

Project Report

Ch pter 4

- 10 -

Project Report

'NTRO$UCT'ON

- 11 -

Project Report

4040 'NTRO$UCT'ON TO PROJECT


*+commerce is fast gaining groun! as an accepte! an! use! business para!igm. More an! more business houses are implementing "eb sites pro i!ing functionality for performing commercial transactions o er the "eb. It is reasonable to say that the process of shopping on the "eb is becoming commonplace. The ob#ecti e of this pro#ect is to !e elop a general purpose e+commerce store "here any pro!uct /such as 9irth!ay, $esti al )ifts etc.0 can be bought from the comfort of home through the Internet. ?o"e er, for implementation purposes, this paper "ill !eal "ith an online E2/ift Shoppy. The E2/ift Shoppy is a irtual store on the Internet "here customers can bro"se the catalog an! select pro!ucts of interest. The selecte! items may be collecte! in a shopping cart. (t chec'out time, the items in the shopping cart "ill be presente! as an or!er. (t that time, more information "ill be nee!e! to complete the transaction. ,sually, the customer "ill be as'e! to fill or select a billing a!!ress, a shipping a!!ress, a shipping option, an! payment information such as cre!it car! number. (n e+ mail notification is sent to the customer as soon as the or!er is place!. The E2/ift Shoppy is e&pan!e! permanently through ne" pro!ucts an! ser ices in or!er to offer a pro!uct portfolio correspon!ing to the mar'et. 3ri ate customer an! business customers can or!er the selecte! pro!ucts of the E2/ift Shoppy ser ice online 4uic'ly an! comfortably. Target groups of customer of the E2/ift Shoppy are. The customers can ha e a payment option through cre!it car! only. In or!er to use the loa! "riting

- 12 -

Project Report

proce!ure, the customer registers itself an! recei es a login for its purchases name. It is an Internet application. *lectronic Commerce /e+commerce0 applications support the interaction ia the bet"een !ifferent parties participating in a commerce transaction net"or', as "ell as the management of the !ata in ol e! in the process.

- 13 -

Project Report

4050 OR/AN'BAT'ON PRO('+E


SO(T*ARE SO+UT'ONS &&& Soft"are Solutions is an IT solution pro i!er for a !ynamic en ironment "here business an! technology strategies con erge. Their approach focuses on ne" "ays of business combining IT inno ation an! a!option "hile also le eraging an organiJation.s current IT assets. Their "or' "ith large global corporations an! ne" pro!ucts or ser ices an! to implement pru!ent business an! technology strategies in to!ay.s en ironment. XXXCS RAN/E O( EXPERT'SE 'NC+U$ES3 Soft"are %e elopment Ser ices *ngineering Ser ices Systems Integration Customer Relationship Management 3ro!uct %e elopment *lectronic Commerce Consulting IT 7utsourcing

1e apply technology "ith inno ation an! responsibility to achie e t"o broa! ob#ecti es6 *ffecti ely a!!ress the business issues our customers face to!ay. )enerate ne" opportunities that "ill help them stay ahea! in the future.

T&'S APPROAC& RESTS ON3 ( strategy "here "e architect, integrate an! manage technology ser ices an! solutions + "e call it (IM for success.

- 14 -

Project Report

( robust offshore !e elopment metho!ology an! re!uce! !eman! on customer resources. ( focus on the use of reusable frame"or's to pro i!e cost an! times benefits.

They combine the best people, processes an! technology to achie e e&cellent results + consistency. 1e offer customers the a! antages of6 SPEE$3 They un!erstan! the importance of timing, of getting there before the competition. ( rich portfolio of reusable, mo!ular frame"or's helps #ump+start 7ur trac' recor! is testimony to comple& pro#ects pro#ects. Trie! an! teste! metho!ology ensures that "e follo" a pre!ictable, lo" + ris' path to achie e results. !eli ere! "ithin an! e ens before sche!ule. EXPERT'SE3 7ur teams combine cutting e!ge technology s'ills "ith rich !omain e&pertise. 1hat.s e4ually important + they share a strong customer orientation that means they actually start by listening to the customer. They.re focuse! on coming up "ith solutions that ser e customer re4uirements to!ay an! anticipate future nee!s. A (U++ SERA'CE PORT(O+'O3 They offer customers the a! antage of being able to (rchitect, integrate an! manage technology ser ices. This means that they can rely on one, fully accountable source instea! of trying to integrate !isparate multi en!or solutions.

SERA'CES3 X&& is pro i!ing it.s ser ices to companies "hich are in the fiel! of pro!uction, 4uality control etc 1ith their rich e&pertise an! e&perience an! information technology they are in best position to pro i!e soft"are solutions to !istinct business re4uirements. - 15 -

Project Report

4070 PURPOSE O( T&E PROJECT


The E2/ift Shoppy nee!s to sell !ifferent types of pro!ucts to customer li ing in any part of the "orl!. The "ebsite "ill sho" all pro!ucts in categoriJe! manner. Customer can bro"se any pro!uct for its price an! other !etails an! can or!er the pro!uct. 7r!ers nee!s to accompany "ith shipping & billing !etails. Customer has to pay or!er amount online through cre!it car!s. 3ro!ucts can be manage! by operators from a!min panel. 7perator can be create! by a!min. (!min can 'eep trac' of or!ers through a!min panel. The main purpose of the system is to enable customers to bro"se an! or!er from any part of the "orl! an! hence increasing business scope.

4090 PRO8+E, 'N EX'ST'N/ S6STE,


The e&isting system is manual system. Nee!s to be con erte! into automate! system. Ris' of mismanagement of !ata. 5ess Security. No proper coor!ination bet"een !ifferent (pplications an! ,sers. $e"er ,sers + $rien!ly. (ccuracy not guarantee!. Not in reach of !istant users.

- 16 -

Project Report

40;0 SO+UT'ON O( T&ESE PRO8+E,S


The !e elopment of the ne" system contains the follo"ing acti ities, "hich try to automate the entire process 'eeping in ie" of the !atabase integration approach. B. ,ser frien!liness is pro i!e! in the application "ith arious controls. A. The system ma'es the o erall pro#ect management much easier an! fle&ible. 2. There is no ris' of !ata mismanagement at any le el "hile the pro#ect !e elopment is un!er process. D. It pro i!es high le el of security "ith !ifferent le el of authentication. E. ,sers from any part of the "orl! can ma'e use of the system. F. Ne" system "ill process accurate results. G. Ne" system "ill be much better in performance as compare! to e&isting one.

- 17 -

Project Report

Ch pter 5

- 18 -

Project Report

S6STE, ANA+6S'S

- 19 -

Project Report

5040 'NTRO$UCT'ON
(fter analyJing the re4uirements of the tas' to be performe!, the ne&t step is to analyJe the problem an! un!erstan! its conte&t. The first acti ity in the phase is stu!ying the e&isting system an! other is to un!erstan! the re4uirements an! !omain of the ne" system. 9oth the acti ities are e4ually important, but the first acti ity ser es as a basis of gi ing the functional specifications an! then successful !esign of the propose! system. ,n!erstan!ing the properties an! re4uirements of a ne" system is more !ifficult an! re4uires creati e thin'ing an! un!erstan!ing of e&isting running system is also !ifficult, improper un!erstan!ing of present system can lea! !i ersion from solution.

5050 ANA+6S'S ,O$E+


The mo!el that is basically being follo"e! is the 1(T*R $(55 M7%*5, "hich states that the phases are organiJe! in a linear or!er. $irst of all the feasibility stu!y is !one. 7nce that part is o er the re4uirement analysis an! pro#ect planning begins. If system e&ists one an! mo!ification an! a!!ition of ne" mo!ule is nee!e!, analysis of present system can be use! as basic mo!el. The !esign starts after the re4uirement analysis is complete an! the co!ing begins after the !esign is complete. 7nce the programming is complete!, the testing is !one. In this mo!el the se4uence of acti ities performe! in a soft"are !e elopment pro#ect are6 + Re4uirement (nalysis 3ro#ect 3lanning System !esign %etail !esign Co!ing ,nit testing System integration & testing

- 20 -

Project Report

?ere the linear or!ering of these acti ities is critical. *n! of the phase an! the output of one phase is the input of other phase. The output of each phase is to be consistent "ith the o erall re4uirement of the system. Some of the 4ualities of spiral mo!el are also incorporate! li'e after the people concerne! "ith the pro#ect re ie" completion of each of the phase the "or' !one. 1(T*R $(55 M7%*5 "as being chosen because all re4uirements "ere 'no"n beforehan! an! the ob#ecti e of our soft"are !e elopment is the computeriJation/automation of an alrea!y e&isting manual "or'ing system.

Ch n%ed Re"uirements Communic ted Re"uirements

Re"uirements En%ineerin%

Re"uirements Specific tion

$esi%n

$esi%n Specific tion

Pro%r mmin%

E)ecut b!e Soft# re ,odu!es

, inten nce

Process

'nte%r tion

'nte%r ted Soft# re Product

Product input

Product output

$e!ivery

$e!ivered Soft# re Product

(i% 5053 * ter ( !! ,ode!

- 21 -

Project Report

5070 STU$6 O( T&E S6STE,


/U'CS In the fle&ibility of the uses the interface has been !e elope! a graphics concept in min!, associate! through a bro"ses interface. The ),I.S at the top le el ha e been categoriJe! as B. (!ministrati e user interface A. The operational or generic user interface The a!ministrati e user interface concentrates on the consistent information that is practically, part of the organiJational acti ities an! "hich nee!s proper authentication for the !ata collection. The interfaces help the a!ministrations "ith all the transactional states li'e %ata insertion, %ata !eletion an! %ate up!ation along "ith the e&tensi e !ata search capabilities. The operational or generic user interface helps the users upon the system in transactions through the e&isting !ata an! re4uire! ser ices. The operational user interface also helps the or!inary users in managing their o"n information helps the or!inary users in managing their o"n information in a customiJe! manner as per the assiste! fle&ibilities. NU,8ER O( ,O$U+ES The system after careful analysis has been i!entifie! to be presente! "ith the follo"ing mo!ules6

This pro#ect is !i i!e! into I mo!ules6 B. Registration Mo!ule A. 3ro!ucts 9ro"se Mo!ule 2. 3ro!ucts Search Mo!ule D. Shopping cart Mo!ule E. Shipping & 9illing Mo!ule F. 3ayment Mo!ule G. (!min ,ser Management Mo!ule H. (!min Catalog Management Mo!ule - 22 -

Project Report

I. (!min 7r!er Management Mo!ule Entities 'nvo!ved in the Project3 B0 Customer A0 3ro!uct 20 1ebsite (!ministrator D0 7perator E0 7r!er Customer3 The target user of the system. ( Customer is responsible for registering them to the site, bro"sing site, placing or!ers an! ma'ing payments. Product3 3ro!uct is the entity, a customer loo'ing for. ( 3ro!uct "ill be sol! to the customer. *ebsite Administr tor3 (n entity responsible for managing users, roles an! roles pri ileges. Oper tor3 7perator is a person /entity0 responsible for managing pro!ucts an! or!ers. Order6 7r!er is an entity "hich !escribes the business transaction. PROJECT 'NSTRUCT'ONS3 9ase! on the gi en re4uirements, conceptualiJe the Solution (rchitecture. Choose the !omain of your interest other"ise !e elop the application for ultimate!otnet.com. %epict the arious architectural components, sho" interactions an! connecte!ness an! sho" internal an! e&ternal elements. %esign the "eb ser ices, "eb metho!s an! !atabase infrastructure nee!e! both an! client an! ser er. 3ro i!e an en ironment for upgra!ation of application for ne"er are a ailable in the same !omain as "eb ser ice target. ersions that

- 23 -

Project Report

5090 &AR$*ARE SPE$'('CAT'ONS


&AR$*ARE RE:U'RE,ENTS3 3I; A.H )?J 3rocessor an! (bo e R(M EBAM9 an! (bo e ?%% AK )9 ?ar! %is' Space an! (bo e

SO(T*ARE RE:U'RE,ENTS3 1IN%71S 7S /X3 / AKKK / AKK Ser er / AKK2 Ser er0 ;isual Stu!io .Net AKKE *nterprise *!ition Internet Information Ser er E.K /IIS0 ;isual Stu!io .Net $rame"or' /Minimal for %eployment0 S<5 Ser er AKKK *nterprise *!ition

50;0 PROPOSE$ S6STE,


To !ebug the e&isting system, remo e proce!ures those cause !ata re!un!ancy, ma'e na igational se4uence proper. To pro i!e information about au!its on !ifferent le el an! also to reflect the current "or' status !epen!ing on organiJation/au!itor or !ate. Re4uire! to buil! strong pass"or! mechanism. NEE$ (OR CO,PUTER'BAT'ON 1e all 'no" the importance of computeriJation. The "orl! is mo ing ahea! at lightening spee! an! e ery one is running short of time. 7ne al"ays "ants to get the information an! perform a tas' he/she/they !esire/s0 "ithin a short perio! of time an! too "ith amount of efficiency an! accuracy. The application areas for the computeriJation ha e been selecte! on the basis of follo"ing factors6 MinimiJing the manual recor!s 'ept at !ifferent locations.

- 24 -

Project Report

There "ill be more !ata integrity. $acilitating !esire! information !isplay, from users. $acilitating arious statistical information "hich helps in !ecision+ma'ingL To re!uce manual efforts in acti ities that in ol e! repetiti e "or'. ,p!ating an! !eletion of such a huge amount of !ata "ill become easier. ery 4uic'ly, by retrie ing information

(UNCT'ONA+ (EATURES O( T&E ,O$E+ (s far as the pro#ect is !e elope! the functionality is simple, the ob#ecti e of the proposal is to strengthen the functioning of (u!it Status Monitoring an! ma'e them effecti e an! better. The entire scope has been classifie! into fi e streams 'no"s as Coor!inator 5e el, management 5e el, (u!itor 5e el, ,ser 5e el an! State 1eb Coor!inator 5e el. The propose! soft"are "ill co er the information nee!s "ith respect to each re4uest of the user group iJ. accepting the re4uest, pro i!ing ulnerability !ocument report an! the current status of the au!it. *OR.'N/ O( T&E S6STE, The entire scope has been classifie! into fi e streams 'no"n as6 + Coordin tor +eve! /(!!ressing the information management nee!s of coor!inator0 , n %ement +eve! /(!!ressing the information management nee!s of management0 Auditor +eve! /(!!ressing the information management nee!s of au!itors0 User +eve! /(!!ressing the information management nee!s of the user group0 St te *eb Coordin tor !eve! /(!!ressing the nee!s of coor!inator of the state0 - 25 -

Project Report

50<0 'NPUT AN$ OUTPUT


The main inputs, outputs an! ma#or functions of the system are as follo"s 'NPUTS3 Customer enters his or her user i! an! pass"or!. 7perators enter his or her user i! an! pass"or!. (!min enter his or her user i! an! pass"or!. ,ser re4uests the pro!uct !escription. ,ser re4uests the pro!uct search. ,ser or!ers pro!uct. System re4uests shipping & billing a!!ress.

OUTPUTS3 Customer recei es personal an! or!er !etails. 7perator recei es the personal !etails. (!min recei es or!er !etails. ,sers recei e re4ueste! pro!uct !etails. ,sers recei e or!ers. System processes or!ers.

- 26 -

Project Report

50=0 PROCESS ,O$E+S USE$ *'T& JUST'('CAT'ON


ACCESS CONTRO+ (OR $ATA *&'C& RE:U'RE USER AUT&ENT'CAT'ON

The follo"ing comman!s specify access control i!entifiers an! they are typically use! to authoriJe an! authenticate the user /comman! co!es are sho"n in parentheses0 USER NA,E DUSERE The user i!entification is that "hich is re4uire! by the ser er for access to its file system. This comman! "ill normally be the first comman! transmitte! by the user after the control connections are ma!e /some ser ers may re4uire this0. PASS*OR$ DPASSE This comman! must be imme!iately prece!e! by the user name comman!, an!, for some sites, completes the userMs i!entification for access control. Since pass"or! information is 4uite sensiti e, it is !esirable in general to Nmas'N it or suppress type out.

- 27 -

Project Report

Ch pter 7

- 28 -

Project Report

(e sibi!ity Report

- 29 -

Project Report

3reliminary in estigation e&amine pro#ect feasibility, the li'elihoo! the system "ill be useful to the organiJation. The main ob#ecti e of the feasibility stu!y is to test the Technical, 7perational an! *conomical feasibility for a!!ing ne" mo!ules an! !ebugging ol! running system. (ll system is feasible if they are unlimite! resources an! infinite time. There are aspects in the feasibility stu!y portion of the preliminary in estigation6 Technical $easibility 7peration $easibility *conomical $easibility

7040 Technic ! (e sibi!ity The technical issue usually raise! !uring the feasibility stage of the in estigation inclu!es the follo"ing6 %oes the necessary technology e&ist to !o "hat is suggeste!L %o the propose! e4uipments ha e the technical capacity to hol! the !ata re4uire! to use the ne" systemL 1ill the propose! system pro i!e a!e4uate response to in4uiries, regar!less of the number or location of usersL Can the system be upgra!e! if !e elope!L (re there technical guarantees of accuracy, reliability, ease of access an! !ata securityL *arlier no system e&iste! to cater to the nee!s of -Secure Infrastructure Implementation System.. The current system !e elope! is technically feasible. It is a "eb base! user interface for au!it "or'flo" at NIC+CS%. Thus it pro i!es an easy access to the users. The !atabase.s purpose is to create, establish an! maintain a "or'flo" among arious entities in or!er to facilitate all concerne! users in their arious capacities or roles. 3ermission to the users "oul! be grante! base! on the roles specifie!. Therefore, it pro i!es the technical guarantee of - 30 -

Project Report

accuracy, reliability an! security. The soft"are an! har! re4uirements for the !e elopment of this pro#ect are not many an! are alrea!y a ailable in+house at NIC or are a ailable as free as open source. The "or' for the pro#ect is !one "ith the current e4uipment an! e&isting soft"are technology. Necessary ban!"i!th e&ists for pro i!ing a fast fee!bac' to the users irrespecti e of the number of users using the system. 7050 Oper tion ! (e sibi!ity 3ropose! pro#ects are beneficial only if they can be turne! out into information system. That "ill meet the organiJation.s operating re4uirements. 7perational feasibility aspects of the pro#ect are to be ta'en as an important part of the pro#ect implementation. Some of the important issues raise! are to test the operational feasibility of a pro#ect inclu!es the follo"ing6 + Is there sufficient support for the management from the usersL 1ill the system be use! an! "or' properly if it is being !e elope! an! implemente!L 1ill there be any resistance from the user that "ill un!ermine the possible application benefitsL This system is targete! to be in accor!ance "ith the abo e+mentione! issues. 9eforehan!, the management issues an! user re4uirements ha e been ta'en into consi!eration. So there is no 4uestion of resistance from the users that can un!ermine the possible application benefits. The "ell+planne! !esign "oul! ensure the optimal utiliJation of the computer resources an! "oul! help in the impro ement of performance status.

- 31 -

Project Report

7070 Economic (e sibi!ity ( system can be !e elope! technically an! that "ill be use! if installe! must still be a goo! in estment for the organiJation. In the economical feasibility, the !e elopment cost in creating the system is e aluate! against the ultimate benefit !eri e! from the ne" systems. $inancial benefits must e4ual or e&cee! the costs. The system is economically feasible. It !oes not re4uire any a!!ition har!"are or soft"are. Since the interface for this system is !e elope! using the e&isting resources an! technologies a ailable at NIC, There is nominal e&pen!iture an! economical feasibility for certain.

- 32 -

Project Report

Ch pter 9

- 33 -

Project Report

SO(T*ARE RE:U'RE,ENT SPEC'('CAT'ON

- 34 -

Project Report

The soft"are, Site *&plorer is !esigne! for management of "eb sites from a remote location.

'NTRO$UCT'ON
Purpose3 The main purpose for preparing this !ocument is to gi e a general insight into the analysis an! re4uirements of the e&isting system or situation an! for !etermining the operating characteristics of the system. Scope3 This %ocument plays a ital role in the !e elopment life cycle /S%5C0 an! it

!escribes the complete re4uirement of the system. It is meant for use by the !e elopers an! "ill be the basic !uring testing phase. (ny changes ma!e to the re4uirements in the future "ill ha e to go through formal change appro al process.

$EAE+OPERS RESPONS'8'+'T'ES OAERA'E*3


The !e eloper is responsible for6 %e eloping the system, "hich meets the SRS an! sol ing all the re4uirements of the systemL %emonstrating the system an! installing the system at clientMs location after the acceptance testing is successful. Submitting the re4uire! user manual !escribing the system interfaces to "or' on it an! also the !ocuments of the system. Con!ucting any user training that might be nee!e! for using the system. Maintaining the system for a perio! of one year after installation.

9040 (UNCT'ONA+ RE:U'RE,ENTS3


OUTPUT $ES'/N
7utputs from computer systems are re4uire! primarily to communicate the results of processing to users. They are also use! to pro i!e a permanent copy of the results for later consultation. The arious types of outputs in general are6 *&ternal 7utputs, "hose !estination is outsi!e the organiJation.

- 35 -

Project Report

Internal 7utputs "hose !estination is "ith in organiJation an! they are the ,ser.s main interface "ith the computer. 7perational outputs "hose use is purely "ith in the computer !epartment. Interface outputs, "hich in ol e the user in communicating !irectly "ith

OUTPUT $E('N'T'ON
The outputs shoul! be !efine! in terms of the follo"ing points6 Type of the output Content of the output $ormat of the output 5ocation of the output $re4uency of the output ;olume of the output Se4uence of the output It is not al"ays !esirable to print or !isplay !ata as it is hel! on a computer. It shoul! be !eci!e! as "hich form of the output is the most suitable. $or *&ample 1ill !ecimal points nee! to be inserte! Shoul! lea!ing Jeros be suppresse!.

Output ,edi 3 In the ne&t stage it is to be !eci!e! that "hich me!ium is the most appropriate for the output. The main consi!erations "hen !eci!ing about the output me!ia are6 The suitability for the !e ice to the particular application. The nee! for a har! copy. The response time re4uire!. The location of the users The soft"are an! har!"are a ailable.

- 36 -

Project Report

Ceeping in ie" the abo e !escription the pro#ect is to ha e outputs mainly coming un!er the category of internal outputs. The main outputs !esire! accor!ing to the re4uirement specification are6 The outputs "ere nee!e! to be generate! as a hot copy an! as "ell as 4ueries to be ie"e! on the screen. Ceeping in ie" these outputs, the format for the output is ta'en The from the outputs, "hich are currently being obtaine! after manual processing. stan!ar! printer is to be use! as output me!ia for har! copies.

'NPUT $ES'/N
Input !esign is a part of o erall system !esign. !esign is as gi en belo"6 To pro!uce a cost+effecti e metho! of input. To achi e the highest possible le el of accuracy. To ensure that the input is acceptable an! un!erstoo! by the user. The main ob#ecti e !uring the input

'NPUT STA/ES3 The main input stages can be liste! as belo"6 %ata recor!ing %ata transcription %ata con ersion %ata erification %ata control %ata transmission %ata ali!ation %ata correction

'NPUT T6PES3 It is necessary to !etermine the follo"s6 *&ternal inputs, "hich are prime inputs for the system. Internal inputs, "hich are user communications "ith the system. arious types of inputs. Inputs can be categoriJe! as

- 37 -

Project Report

7perational, "hich are computer !epartment.s communications to the systemL Interacti e, "hich are inputs entere! !uring a !ialogue.

'NPUT ,E$'A3 (t this stage choice has to be ma!e about the input me!ia. To conclu!e about the input me!ia consi!eration has to be gi en toO Type of input $le&ibility of format Spee! (ccuracy ;erification metho!s Re#ection rates *ase of correction Storage an! han!ling re4uirements Security *asy to use 3ortability Ceeping in ie" the abo e !escription of the input types an! input me!ia, it can be sai! that most of the inputs are of the form of internal an! interacti e. (s Input !ata is to be the !irectly 'eye! in by the user, the 'eyboar! can be consi!ere! to be the most suitable input !e ice. ERROR AAO'$ANCE (t this stage care is to be ta'en to ensure that input !ata remains accurate form the stage at "hich it is recor!e! upto the stage in "hich the !ata is accepte! by the system. han!le!. ERROR $ETECT'ON This can be achie e! only by means of careful control each time the !ata is

- 38 -

Project Report

* en though e ery effort is ma'e to a oi! the occurrence of errors, still a small proportion of errors is al"ays li'ely to occur, these types of errors can be !isco ere! by using ali!ations to chec' the input !ata. $ATA AA+'$AT'ON 3roce!ures are !esigne! to !etect errors in !ata at a lo"er le el of !etail. possibility for the user to commit errors. %ata ali!ations ha e been inclu!e! in the system in almost e ery area "here there is a The system "ill not accept in ali! !ata. 1hene er an in ali! !ata is 'eye! in, the system imme!iately prompts the user an! the user has to again 'ey in the !ata an! the system "ill accept the !ata only if the !ata is correct. ;ali!ations ha e been inclu!e! "here necessary. The system is !esigne! to be a user frien!ly one. In other "or!s the system has been !esigne! to communicate effecti ely "ith the user. The system has been !esigne! "ith pop up menus. USER 'NTER(ACE $ES'/N It is essential to consult the system users an! !iscuss their nee!s "hile !esigning the user interface6 USER 'NTER(ACE S6STE,S CAN 8E 8ROA$+6 C+AS'('E$ AS3 B. ,ser initiate! interface the user is in charge, controlling the progress of the user/computer !ialogue. In the computer+initiate! interface, the computer selects the ne&t stage in the interaction. A. Computer initiate! interfaces In the computer initiate! interfaces the computer gui!es the progress of the user/computer !ialogue. Information is !isplaye! an! the user response of the computer ta'es action or !isplays further information. USERF'N'T'ATE$ 'NTER(ACES ,ser initiate! interfaces fall into to" appro&imate classes6 B. Comman! !ri en interfaces6 In this type of interface the user inputs comman!s or 4ueries "hich are interprete! by the computer. A. $orms oriente! interface6 The user calls up an image of the form to his/her screen an! fills in the form. The forms oriente! interface is chosen because it is the best choice.

- 39 -

Project Report

CO,PUTER2'N'T'ATE$ 'NTER(ACES The follo"ing computer 8 initiate! interfaces "ere use!6 B. The menu system for the user is presente! "ith a list of alternati es an! the user chooses oneO of alternati es. A. <uestions 8 ans"er type !ialog system "here the computer as's 4uestion an! ta'es action base! on the basis of the users reply. Right from the start the system is going to be menu !ri en, the opening menu !isplays the a ailable options. Choosing one option gi es another popup menu "ith more options. In this "ay e ery option lea!s the users to !ata entry form "here the user can 'ey in the !ata. ERROR ,ESSA/E $ES'/N3 The !esign of error messages is an important part of the user interface !esign. (s user is boun! to commit some errors or other "hile !esigning a system the system shoul! be !esigne! to be helpful by pro i!ing the user "ith information regar!ing the error he/she has committe!. This application must be able to pro!uce output at !ifferent mo!ules for !ifferent inputs.

9050 PER(OR,ANCE RE:U'RE,ENTS


3erformance is measure! in terms of the output pro i!e! by the application. Re4uirement specification plays an important part in the analysis of a system. 7nly "hen the re4uirement specifications are properly gi en, it is possible to !esign a system, "hich "ill fit into re4uire! en ironment. It rests largely in the part of the users of the e&isting system to gi e the re4uirement specifications because they are the people "ho finally use the system. This is because the re4uirements ha e to be 'no"n !uring the initial stages so that the system can be !esigne! accor!ing to those re4uirements. It is ery !ifficult to change the system once it has been !esigne! an! on the other han! !esigning a system, "hich !oes not cater to the re4uirements of the user, is of no use. The re4uirement specification for any system can be broa!ly state! as gi en belo"6

- 40 -

Project Report

The system shoul! be able to interface "ith the e&isting system The system shoul! be accurate The system shoul! be better than the e&isting system

The e&isting system is completely !epen!ent on the user to perform all the !uties.

Ch pter ;

- 41 -

Project Report

SE+ECTE$ SO(T*ARE

- 42 -

Project Report

;040 'NTRO$UCT'ON TO 0NET (r me#orG


The .N*T $rame"or' is a ne" computing platform that simplifies application !e elopment in the highly !istribute! en ironment of the Internet. The .N*T $rame"or' is !esigne! to fulfill the follo"ing ob#ecti es6

To pro i!e a consistent ob#ect+oriente! programming en ironment "hether ob#ect co!e is store! an! e&ecute! locally, e&ecute! locally but Internet+ !istribute!, or e&ecute! remotely. To pro i!e a co!e+e&ecution en ironment that minimiJes soft"are !eployment an! ersioning conflicts. To pro i!e a co!e+e&ecution en ironment that guarantees safe e&ecution of co!e, inclu!ing co!e create! by an un'no"n or semi+truste! thir! party. To pro i!e a co!e+e&ecution en ironment that eliminates the performance problems of scripte! or interprete! en ironments. To ma'e the !e eloper e&perience consistent across "i!ely arying types of

applications, such as 1in!o"s+base! applications an! 1eb+base! applications.

To buil! all communication on in!ustry stan!ar!s to ensure that co!e base! on the .N*T $rame"or' can integrate "ith any other co!e.

The .N*T $rame"or' has t"o main components6 the common language runtime an! the .N*T $rame"or' class library. The common language runtime is the foun!ation of the .N*T $rame"or'. @ou can thin' of the runtime as an agent that manages co!e at e&ecution time, pro i!ing core ser ices such as memory management, threa! management, an! Remoting, "hile also enforcing strict type safety an! other forms of co!e accuracy that ensure security an! robustness. In - 43 -

Project Report

fact, the concept of co!e management is a fun!amental principle of the runtime. Co!e that targets the runtime is 'no"n as manage! co!e, "hile co!e that !oes not target the runtime is 'no"n as unmanage! co!e. The class library, the other main component of the .N*T $rame"or', is a comprehensi e, ob#ect+oriente! collection of reusable types that you can use to !e elop applications ranging from tra!itional comman!+line or graphical user interface /),I0 applications to applications base! on the latest inno ations pro i!e! by (S3.N*T, such as 1eb $orms an! XM5 1eb ser ices. The .N*T $rame"or' can be hoste! by unmanage! components that loa! the common language runtime into their processes an! initiate the e&ecution of manage! co!e, thereby creating a soft"are en ironment that can e&ploit both manage! an! unmanage! features. The .N*T $rame"or' not only pro i!es se eral runtime hosts, but also supports the !e elopment of thir!+party runtime hosts. $or e&ample, (S3.N*T hosts the runtime to pro i!e a scalable, ser er+si!e en ironment for manage! co!e. (S3.N*T "or's !irectly "ith the runtime to enable 1eb $orms applications an! XM5 1eb ser ices, both of "hich are !iscusse! later in this topic. Internet *&plorer is an e&ample of an unmanage! application that hosts the runtime /in the form of a MIM* type e&tension0. ,sing Internet *&plorer to host the runtime enables you to embe! manage! components or 1in!o"s $orms controls in ?TM5 !ocuments. ?osting the runtime in this "ay ma'es manage! mobile co!e /similar to MicrosoftP (cti eXP controls0 possible, but "ith significant impro ements that only manage! co!e can offer, such as semi+truste! e&ecution an! secure isolate! file storage. The follo"ing illustration sho"s the relationship of the common language runtime an! the class library to your applications an! to the o erall system. The illustration also sho"s ho" manage! co!e operates "ithin a larger architecture.

- 44 -

Project Report

(EATURES O( T&E CO,,ON +AN/UA/E RUNT',E The common language runtime manages memory, threa! e&ecution, co!e e&ecution, co!e safety runtime. 1ith regar!s to security, manage! components are a"ar!e! arying !egrees of trust, !epen!ing on a number of factors that inclu!e their origin /such as the Internet, enterprise net"or', or local computer0. This means that a manage! component might or might not be able to perform file+access operations, registry+ access operations, or other sensiti e functions, e en if it is being use! in the same acti e application. The runtime enforces co!e access security. $or e&ample, users can trust that an e&ecutable embe!!e! in a 1eb page can play an animation on screen or sing a song, but cannot access their personal !ata, file system, or net"or'. The security features of the runtime thus enable legitimate Internet+!eploye! soft"are to be e&ceptionally featuring rich. The runtime also enforces co!e robustness by implementing a strict type+ an! co!e+ erification infrastructure calle! the common type system /CTS0. The CTS ensures that all manage! co!e is self+!escribing. The thir!+party language compilers )enerate manage! co!e that conforms to the CTS. This means that manage! co!e can consume other manage! types an! instances, "hile strictly enforcing type fi!elity an! type safety. In a!!ition, the manage! en ironment of the runtime eliminates many common soft"are issues. $or e&ample, the runtime automatically han!les ob#ect layout an! manages references to ob#ects, releasing them "hen they are no longer being use!. This automatic memory management resol es the t"o most common application errors, memory lea's an! in ali! memory references. arious Microsoft an! erification, compilation, an! other system ser ices. These features are intrinsic to the manage! co!e that runs on the common language

- 45 -

Project Report

The

runtime

also

accelerates

!e eloper

pro!ucti ity.

$or

e&ample,

programmers can "rite applications in their !e elopment language of choice, yet ta'e full a! antage of the runtime, the class library, an! components "ritten in other languages by other !e elopers. (ny compiler en!or "ho chooses to target the runtime can !o so. 5anguage compilers that target the .N*T $rame"or' ma'e the features of the .N*T $rame"or' a ailable to e&isting co!e "ritten in that language, greatly easing the migration process for e&isting applications. 1hile the runtime is !esigne! for the soft"are of the future, it also supports soft"are of to!ay co!e an! yester!ay. Interoperability to continue bet"een to use manage! necessary an! C7M unmanage! enables !e elopers

components an! %55s. The runtime is !esigne! to enhance performance. (lthough the common language runtime pro i!es many stan!ar! runtime ser ices, manage! co!e is ne er interprete!. ( feature calle! #ust+in+time /=IT0 compiling enables all manage! co!e to run in the nati e machine language of the system on "hich it is e&ecuting. Mean"hile, the memory manager remo es the possibilities of fragmente! memory an! increases memory locality+of+reference to further increase performance. $inally, the runtime can be hoste! by high+performance, ser er+si!e applications, such as MicrosoftP S<5 Ser erQ an! Internet Information Ser ices /IIS0. This infrastructure enables you to use manage! co!e to "rite your business logic, "hile still en#oying the superior performance of the in!ustryMs best enterprise ser ers that support runtime hosting. 0NET (RA,E*OR. C+ASS +'8RAR6 The .N*T $rame"or' class library is a collection of reusable types that tightly integrate "ith the common language runtime. The class library is ob#ect oriente!, pro i!ing types from "hich your o"n manage! co!e can !eri e functionality. This not only ma'es the .N*T $rame"or' types easy to use, but also re!uces the time

- 46 -

Project Report

associate! "ith learning ne" features of the .N*T $rame"or'. In a!!ition, thir!+ party components can integrate seamlessly "ith classes in the .N*T $rame"or'. $or e&ample, the .N*T $rame"or' collection classes implement a set of interfaces that you can use to !e elop your o"n collection classes. @our collection classes "ill blen! seamlessly "ith the classes in the .N*T $rame"or'. (s you "oul! e&pect from an ob#ect+oriente! class library, the .N*T $rame"or' types enable you to accomplish a range of common programming tas's, inclu!ing tas's such as string management, !ata collection, !atabase connecti ity, an! file access. In a!!ition to these common tas's, the class library inclu!es types that support a applications an! ser ices6

ariety of specialiJe! !e elopment scenarios. $or

e&ample, you can use the .N*T $rame"or' to !e elop the follo"ing types of Console applications. Scripte! or hoste! applications. 1in!o"s ),I applications /1in!o"s $orms0. (S3.N*T applications. XM5 1eb ser ices. 1in!o"s ser ices. $or e&ample, the 1in!o"s $orms classes are a comprehensi e set of reusable types that astly simplify 1in!o"s ),I !e elopment. If you "rite an (S3.N*T 1eb $orm application, you can use the 1eb $orms classes. C+'ENT APP+'CAT'ON $EAE+OP,ENT Client applications are the closest to a tra!itional style of application in 1in!o"s+base! programming. These are the types of applications that !isplay "in!o"s or forms on the !es'top, enabling a user to perform a tas'. Client applications inclu!e applications such as "or! processors an! sprea!sheets, as "ell as custom business applications such as !ata+entry tools, reporting tools, an! so on. Client applications usually employ "in!o"s, menus, buttons, an! other ),I

- 47 -

Project Report

elements, an! they li'ely access local resources such as the file system an! peripherals such as printers. (nother 'in! of client application is the tra!itional (cti eX control /no" replace! by the manage! 1in!o"s $orms control0 !eploye! o er the Internet as a 1eb page. This application is much li'e other client applications6 it is e&ecute! nati ely, has access to local resources, an! inclu!es graphical elements. In the past, !e elopers create! such applications using C/CRR in con#unction "ith the Microsoft $oun!ation Classes /M$C0 or "ith a rapi! application !e elopment /R(%0 en ironment such as MicrosoftP ;isual 9asicP. The .N*T $rame"or' incorporates aspects of these e&isting pro!ucts into a single, consistent !e elopment en ironment that !rastically simplifies the !e elopment of client applications. The 1in!o"s $orms classes containe! in the .N*T $rame"or' are !esigne! to be use! for ),I !e elopment. @ou can easily create comman! "in!o"s, buttons, menus, toolbars, an! other screen elements "ith the fle&ibility necessary to accommo!ate shifting business nee!s. $or e&ample, the .N*T $rame"or' pro i!es simple properties to a!#ust isual attributes associate! "ith forms. In some cases the un!erlying operating system !oes not support changing these attributes !irectly, an! in these cases the .N*T $rame"or' automatically recreates the forms. This is one of many "ays in "hich the .N*T $rame"or' integrates the !e eloper interface, ma'ing co!ing simpler an! more consistent. ,nli'e (cti eX controls, 1in!o"s $orms controls ha e semi+truste! access to a userMs computer. This means that binary or nati ely e&ecuting co!e can access some of the resources on the userMs system /such as ),I elements an! limite! file access0 "ithout being able to access or compromise other resources. 9ecause of co!e access security, many applications that once nee!e! to be installe! on a userMs system can no" be safely !eploye! through the 1eb. @our

- 48 -

Project Report

applications can implement the features of a local application "hile being !eploye! li'e a 1eb page.

ASP0NET
SERAER APP+'CAT'ON $EAE+OP,ENT Ser er+si!e applications in the manage! "orl! are implemente! through runtime hosts. ,nmanage! applications host the common language runtime, "hich allo"s your custom manage! co!e to control the beha ior of the ser er. This mo!el pro i!es you "ith all the features of the common language runtime an! class library "hile gaining the performance an! scalability of the host ser er. The follo"ing illustration sho"s a basic net"or' schema "ith manage! co!e running in !ifferent ser er en ironments. Ser ers such as IIS an! S<5 Ser er can perform stan!ar! operations "hile your application logic e&ecutes through the manage! co!e. SERAER2S'$E ,ANA/E$ CO$E (S3.N*T is the hosting en ironment that enables !e elopers to use the .N*T $rame"or' to target 1eb+base! applications. ?o"e er, (S3.N*T is more than #ust a runtime hostO it is a complete architecture for !e eloping 1eb sites an! Internet+!istribute! ob#ects using manage! co!e. 9oth 1eb $orms an! XM5 1eb ser ices use IIS an! (S3.N*T as the publishing mechanism for applications, an! both ha e a collection of supporting classes in the .N*T $rame"or'. XM5 1eb ser ices, an important e olution in 1eb+base! technology, are !istribute!, ser er+si!e application components similar to common 1eb sites. ?o"e er, unli'e 1eb+base! applications, XM5 1eb ser ices components ha e no ,I an! are not targete! for bro"sers such as Internet *&plorer an! Netscape Na igator. Instea!, XM5 1eb ser ices consist of reusable soft"are components !esigne! to be consume! by other applications, such as tra!itional client applications, 1eb+base! applications, or e en other XM5 1eb ser ices. (s a result,

- 49 -

Project Report

XM5 1eb ser ices technology is rapi!ly mo ing application !e elopment an! !eployment into the highly !istribute! en ironment of the Internet. If you ha e use! earlier ersions of (S3 technology, you "ill imme!iately notice the impro ements that (S3.N*T an! 1eb $orms offers. $or e&ample, you can !e elop 1eb $orms pages in any language that supports the .N*T $rame"or'. In a!!ition, your co!e no longer nee!s to share the same file "ith your ?TT3 te&t /although it can continue to !o so if you prefer0. 1eb $orms pages e&ecute in nati e machine language because, li'e any other manage! application, they ta'e full a! antage of the runtime. In contrast, unmanage! (S3 pages are al"ays scripte! an! interprete!. (S3.N*T pages are faster, more functional, an! easier to !e elop than unmanage! (S3 pages because they interact "ith the runtime li'e any manage! application. The .N*T $rame"or' also pro i!es a collection of classes an! tools to ai! in !e elopment an! consumption of XM5 1eb ser ices applications. XM5 1eb ser ices are built on stan!ar!s such as S7(3 /a remote proce!ure+call protocol0, XM5 /an e&tensible !ata format0, an! 1S%5 / the 1eb Ser ices %escription 5anguage0. The .N*T $rame"or' is built on these stan!ar!s to promote interoperability "ith non+Microsoft solutions. $or e&ample, the 1eb Ser ices %escription 5anguage tool inclu!e! "ith the .N*T $rame"or' S%C can 4uery an XM5 1eb ser ice publishe! on the 1eb, parse its 1S%5 !escription, an! pro!uce C: or ;isual 9asic source co!e that your application can use to become a client of the XM5 1eb ser ice. The source co!e can create classes !eri e! from classes in the class library that han!le all the un!erlying communication using S7(3 an! XM5 parsing. (lthough you can use the class library to consume XM5 1eb ser ices !irectly, the 1eb Ser ices %escription 5anguage tool an! the other tools containe! in the S%C facilitate your !e elopment efforts "ith the .N*T $rame"or'. If you !e elop an! publish your o"n XM5 1eb ser ice, the .N*T $rame"or' pro i!es a set of classes that conform to all the un!erlying communication

- 50 -

Project Report

stan!ar!s, such as S7(3, 1S%5, an! XM5. ,sing those classes enables you to focus on the logic of your ser ice, "ithout concerning yourself "ith the communications infrastructure re4uire! by !istribute! soft"are !e elopment. $inally, li'e 1eb $orms pages in the manage! en ironment, your XM5 1eb ser ice "ill run "ith the spee! of nati e machine language using the scalable communication of IIS.

A Passive Web Server stores static Web Pages

An active Web Server generates dynamic Web Pages

ACT'AE SERAER PA/ES0NET (S3.N*T is a programming frame"or' built on the common language runtime that can be use! on a ser er to buil! po"erful 1eb applications. (S3.N*T offers se eral important a! antages o er pre ious 1eb !e elopment mo!els6

- 51 -

Project Report

Enh nced Perform nce0 (S3.N*T is compile! common language runtime co!e running on the ser er. ,nli'e its interprete! pre!ecessors, (S3.N*T can ta'e a! antage of early bin!ing, #ust+in+time compilation, nati e optimiJation, an! caching ser ices right out of the bo&. This amounts to !ramatically better performance before you e er "rite a line of co!e.

*or!d2C! ss Too! Support0 The (S3.N*T frame"or' is complemente! by a rich toolbo& an! !esigner in the ;isual Stu!io integrate! !e elopment en ironment. 1@SI1@) e!iting, !rag+an!+!rop ser er controls, an! automatic !eployment are #ust a fe" of the features this po"erful tool pro i!es.

Po#er

nd (!e)ibi!ity0 9ecause (S3.N*T is base! on the common language

runtime, the po"er an! fle&ibility of that entire platform is a ailable to 1eb application !e elopers. The .N*T $rame"or' class library, Messaging, an! %ata (ccess solutions are all seamlessly accessible from the 1eb. (S3.N*T is also language+in!epen!ent, so you can choose the language that best applies to your application or partition your application across many languages. $urther, common language runtime interoperability guarantees that your e&isting in estment in C7M+base! !e elopment is preser e! "hen migrating to (S3.N*T. Simp!icity0 (S3.N*T ma'es it easy to perform common tas's, from simple form submission an! client authentication to !eployment an! site configuration. $or e&ample, the (S3.N*T page frame"or' allo"s you to buil! user interfaces that cleanly separate application logic from presentation co!e an! to han!le e ents in a simple, ;isual 9asic + li'e forms processing mo!el. (!!itionally, the common language runtime simplifies !e elopment, "ith manage! co!e ser ices such as automatic reference counting an! garbage collection. , n %e bi!ity0 (S3.N*T employs a te&t+base!, hierarchical configuration system, "hich simplifies applying settings to your ser er en ironment an! 1eb applications. 9ecause configuration information is store! as plain te&t, ne" settings may be applie! "ithout the ai! of local a!ministration tools. This NJero

- 52 -

Project Report

local a!ministrationN philosophy e&ten!s to !eploying (S3.N*T $rame"or' applications as "ell. (n (S3.N*T $rame"or' application is !eploye! to a ser er simply by copying the necessary files to the ser er. No ser er restart is re4uire!, e en to !eploy or replace running compile! co!e. Sc ! bi!ity nd Av i! bi!ity0 (S3.N*T has been !esigne! "ith scalability in

min!, "ith features specifically tailore! to impro e performance in clustere! an! multiprocessor en ironments. $urther, processes are closely monitore! an! manage! by the (S3.N*T runtime, so that if one misbeha es /lea's, !ea!loc's0, a ne" process can be create! in its place, "hich helps 'eep your application constantly a ailable to han!le re4uests. CustomiH bi!ity nd E)tensibi!ity0 (S3.N*T !eli ers a "ell+factore!

architecture that allo"s !e elopers to Nplug+inN their co!e at the appropriate le el. In fact, it is possible to e&ten! or replace any subcomponent of the (S3.N*T runtime "ith your o"n custom+"ritten component. Implementing custom authentication or state ser ices has ne er been easier. Security0 1ith built in 1in!o"s authentication an! per+application

configuration, you can be assure! that your applications are secure. +AN/UA/E SUPPORT The Microsoft .N*T 3latform currently offers built+in support for three languages6 C:, ;isual 9asic, an! =Script. *&AT 'S ASP0NET *E8 (OR,SI The (S3.N*T 1eb $orms page frame"or' is a scalable common language runtime programming mo!el that can be use! on the ser er to !ynamically generate 1eb pages. Inten!e! as a logical e olution of (S3 /(S3.N*T pro i!es synta& compatibility "ith e&isting pages0, the (S3.N*T 1eb $orms frame"or' has been specifically !esigne! to a!!ress a number of 'ey !eficiencies in the pre ious mo!el. In particular, it pro i!es6 - 53 -

Project Report

The ability to create an! use reusable ,I controls that can encapsulate common functionality an! thus re!uce the amount of co!e that a page !e eloper has to "rite.

The ability for !e elopers to cleanly structure their page logic in an or!erly fashion /not Nspaghetti co!eN0. The ability for !e elopment tools to pro i!e strong 1@SI1@) !esign support for pages /e&isting (S3 co!e is opa4ue to tools0. (S3.N*T 1eb $orms pages are te&t files "ith an .asp& file name e&tension.

They can be !eploye! throughout an IIS

irtual root !irectory tree. 1hen a

bro"ser client re4uests .asp& resources, the (S3.N*T runtime parses an! compiles the target file into a .N*T $rame"or' class. This class can then be use! to !ynamically process incoming re4uests. /Note that the .asp& file is compile! only the first time it is accesse!O the compile! type instance is then reuse! across multiple re4uests0. (n (S3.N*T page can be create! simply by ta'ing an e&isting ?TM5 file an! changing its file name e&tension to .asp& /no mo!ification of co!e is re4uire!0. $or e&ample, the follo"ing sample !emonstrates a simple ?TM5 page that collects a userMs name an! category preference an! then performs a form postbac' to the originating page "hen a button is clic'e!6 (S3.N*T pro i!es synta& compatibility "ith e&isting (S3 pages. This inclu!es support for ST TU co!e ren!er bloc's that can be intermi&e! "ith ?TM5 content "ithin an .asp& file. These co!e bloc's e&ecute in a top+!o"n manner at page ren!er time.

CO$E28E&'N$ *E8 (OR,S (S3.N*T supports t"o metho!s of authoring !ynamic pages. The first is the metho! sho"n in the prece!ing samples, "here the page co!e is physically !eclare! "ithin the originating .asp& file. (n alternati e approach++'no"n as the

- 54 -

Project Report

co!e+behin! metho!++enables the page co!e to be more cleanly separate! from the ?TM5 content into an entirely separate file. 'NTRO$UCT'ON TO ASP0NET SERAER CONTRO+S In a!!ition to /or instea! of0 using ST TU co!e bloc's to program !ynamic content, (S3.N*T page !e elopers can use (S3.N*T ser er controls to program 1eb pages. Ser er controls are !eclare! "ithin an .asp& file using custom tags or intrinsic ?TM5 tags that contain a run tJKserverK attributes ?TM5 to tags one are of han!le! the by one is of the alue. Intrinsic in type the of controls the

System0*eb0U'0&tm!Contro!s namespace. (ny tag that !oesnMt e&plicitly map controls assigne! System0*eb0U'0&tm!Contro!s0&tm!/enericContro! . Ser er controls automatically maintain any client+entere! alues bet"een roun! trips to the ser er. This control state is not store! on the ser er /it is instea! store! "ithin an Linput typeJKhiddenKM form fiel! that is roun!+trippe! bet"een re4uests0. Note also that no client+si!e script is re4uire!. In a!!ition to supporting stan!ar! ?TM5 input controls, (S3.N*T enables !e elopers to utiliJe richer custom controls on their pages. $or e&ample, the follo"ing sample !emonstrates ho" the L sp3 drot torM control can be use! to !ynamically !isplay rotating a!s on a page. B. (S3.N*T 1eb $orms pro i!e an easy an! po"erful "ay to buil! !ynamic 1eb ,I. A. (S3.N*T 1eb $orms pages can target any bro"ser client /there are no script library or coo'ie re4uirements0. 2. (S3.N*T 1eb $orms pages pro i!e synta& compatibility "ith e&isting (S3 pages. D. (S3.N*T ser er controls pro i!e an easy "ay to encapsulate common functionality.

- 55 -

Project Report

E. (S3.N*T ships "ith DE built+in ser er controls. %e elopers can also use controls built by thir! parties. F. (S3.N*T ser er controls can automatically pro#ect both up le el an! !o"n le el ?TM5. G. (S3.N*T templates pro i!e an easy "ay to customiJe the loo' an! feel of list ser er controls. H. (S3.N*T ali!ation controls pro i!e an easy "ay to !o !eclarati e client or ser er !ata ali!ation.

CN0NET
A$O0NET OAERA'E* (%7.N*T is an e olution of the (%7 !ata access mo!el that !irectly a!!resses user re4uirements for !e eloping scalable applications. It "as !esigne! specifically for the "eb "ith scalability, statelessness, an! XM5 in min!. (%7.N*T uses some (%7 ob#ects, such as the Connection an! Comm nd ob#ects, an! also intro!uces ne" ob#ects. Cey ne" (%7.N*T ob#ects inclu!e the $ t Set, $ t Re der, an! $ t Ad pter. The important !istinction bet"een this e ol e! stage of (%7.N*T an! pre ious !ata architectures is that there e&ists an ob#ect ++ the $ t Set ++ that is separate an! !istinct from any !ata stores. 9ecause of that, the $ t Set functions as a stan!alone entity. @ou can thin' of the %ataSet as an al"ays !isconnecte! recor!set that 'no"s nothing about the source or !estination of the !ata it contains. Insi!e a $ t Set, much li'e in a !atabase, there are tables, columns, relationships, constraints, ie"s, an! so forth. ( $ t Ad pter is the ob#ect that connects to the !atabase to fill the $ t Set. Then, it connects bac' to the !atabase to up!ate the !ata there, base! on operations performe! "hile the $ t Set hel! the !ata. In the past, !ata

- 56 -

Project Report

processing has been primarily connection+base!. No", in an effort to ma'e multi+ tiere! apps more efficient, !ata processing is turning to a message+base! approach that re ol es aroun! chun's of information. (t the center of this approach is the $ t Ad pter, "hich pro i!es a bri!ge to retrie e an! sa e !ata bet"een a $ t Set an! its source !ata store. It accomplishes this by means of re4uests to the appropriate S<5 comman!s ma!e against the !ata store. The XM5+base! $ t Set ob#ect pro i!es a consistent programming mo!el that "or's "ith all mo!els of !ata storage6 flat, relational, an! hierarchical. It !oes this by ha ing no M'no"le!geM of the source of its !ata, an! by representing the !ata that it hol!s as collections an! !ata types. No matter "hat the source of the !ata "ithin the $ t Set is, it is manipulate! through the same set of stan!ar! (3Is e&pose! through the $ t Set an! its subor!inate ob#ects. 1hile the $ t Set has no 'no"le!ge of the source of its !ata, the manage! pro i!er has !etaile! an! specific information. The role of the manage! pro i!er is to connect, fill, an! persist the $ t Set to an! from !ata stores. The 75* %9 an! S<5 Ser er .N*T %ata 3ro i!ers /System.%ata.7le%b an! System.%ata.S4lClient0 that are part of the .Net $rame"or' pro i!e four basic ob#ects6 the Comm nd, Connection, $ t Re der an! $ t Ad pter. In the remaining sections of this !ocument, "eMll "al' through each part of the $ t Set an! the 75* %9/S<5 Ser er .N*T %ata 3ro i!ers e&plaining "hat they are, an! ho" to program against them. The follo"ing sections "ill intro!uce you to some ob#ects that ha e e ol e!, an! some that are ne". These ob#ects are6

Connections. $or connection to an! managing transactions against a !atabase. Comm nds. $or issuing S<5 comman!s against a !atabase. $ t Re ders. $or rea!ing a for"ar!+only stream of !ata recor!s from a S<5 Ser er !ata source.

- 57 -

Project Report

$ t Sets. $or storing, Remoting an! programming against flat !ata, XM5 !ata an! relational !ata. $ t Ad pters. $or pushing !ata into a $ t Set, an! reconciling !ata against a !atabase. 1hen !ealing "ith connections to a !atabase, there are t"o !ifferent

options6 S<5 Ser er .N*T %ata 3ro i!er /System.%ata.S4lClient0 an! 75* %9 .N*T %ata 3ro i!er /System.%ata.7le%b0. In these samples "e "ill use the S<5 Ser er .N*T %ata 3ro i!er. These are "ritten to tal' !irectly to Microsoft S<5 Ser er. The 75* %9 .N*T %ata 3ro i!er is use! to tal' to any 75* %9 pro i!er /as it uses 75* %9 un!erneath0. Connections3 Connections are use! to Mtal' toM !atabases, an! are represente! by pro i!er+specific classes such as S"!Connection. Comman!s tra el o er connections an! resultsets are returne! in the form of streams "hich can be rea! by a $ t Re der ob#ect, or pushe! into a $ t Set ob#ect. Comm nds3 Comman!s contain the information that is submitte! to a !atabase, an! are represente! by pro i!er+specific classes such as S"!Comm nd. ( comman! can be a store! proce!ure call, an ,3%(T* statement, or a statement that returns results. @ou can also use input an! output parameters, an! return statement against the North#ind !atabase. $ t Re ders3 The $ t Re der ob#ect is some"hat synonymous "ith a rea!+only/for"ar!+only cursor o er !ata. The $ t Re der (3I supports flat as "ell as hierarchical !ata. ( $ t Re der ob#ect is returne! after e&ecuting a comman! against a !atabase. The format of the returne! $ t Re der ob#ect is !ifferent from a recor!set. $or - 58 alues as part of your comman! synta&. The e&ample belo" sho"s ho" to issue an INS*RT

Project Report

e&ample, you might use the $ t Re der to sho" the results of a search list in a "eb page. $ATASETS AN$ $ATAA$APTERS3 $ t Sets The $ t Set ob#ect is similar to the (%7 Recordset ob#ect, but more po"erful, an! "ith one other important !istinction6 the $ t Set is al"ays !isconnecte!. The $ t Set ob#ect represents a cache of !ata, "ith !atabase+li'e structures such as tables, columns, relationships, an! constraints. ?o"e er, though a $ t Set can an! !oes beha e much li'e a !atabase, it is important to remember that $ t Set ob#ects !o not interact !irectly "ith !atabases, or other source !ata. This allo"s the !e eloper to "or' "ith a programming mo!el that is al"ays consistent, regar!less of "here the source !ata resi!es. %ata coming from a !atabase, an XM5 file, from co!e, or user input can all be place! into $ t Set ob#ects. Then, as changes are ma!e to the $ t Set they can be trac'e! an! erifie! before up!ating the source !ata. The /etCh n%es metho! of the $ t Set ob#ect actually creates a secon! $ tSet that contains only the changes to the !ata. This $ t Set is then use! by a $ t Ad pter /or other ob#ects0 to up!ate the original !ata source. The $ t Set has many XM5 characteristics, inclu!ing the ability to pro!uce an! consume XM5 !ata an! XM5 schemas. XM5 schemas can be use! to !escribe schemas interchange! ia 1ebSer ices. In fact, a $ t Set "ith a schema can actually be compile! for type safety an! statement completion. $ATAA$APTERS DO+E$8OS:+E The $ t Ad pter ob#ect "or's as a bri!ge bet"een the $ t Set an! the source !ata. ,sing the pro i!er+specific S"!$ t Ad pter /along "ith its associate! S"!Comm nd an! S"!Connection0 can increase o erall performance "hen "or'ing "ith a Microsoft S<5 Ser er !atabases. $or other 75* %9+supporte!

- 59 -

Project Report

!atabases, you "oul! use the O!e$b$ t Ad pter ob#ect an! its associate! O!e$bComm nd an! O!e$bConnection ob#ects. The $ t Ad pter ob#ect uses comman!s to up!ate the !ata source after changes ha e been ma!e to the $ t Set. ,sing the (i!! metho! of the $ t Ad pter calls the S*5*CT comman!O using the Upd te metho! calls the INS*RT, ,3%(T* or %*5*T* comman! for each change! ro". @ou can e&plicitly set these comman!s in or!er to control the statements use! at runtime to resol e changes, inclu!ing the use of store! proce!ures. $or a!+hoc scenarios, a Comm nd8ui!der ob#ect can generate these at run+time base! upon a select statement. ?o"e er, this run+time generation re4uires an e&tra roun!+trip to the ser er in or!er to gather re4uire! meta!ata, so e&plicitly pro i!ing the INS*RT, ,3%(T*, an! %*5*T* comman!s at !esign time "ill result in better run+time performance. B. A. (%7.N*T is the ne&t e olution of (%7 for the .Net $rame"or'. (%7.N*T "as create! "ith n+Tier, statelessness an! XM5 in the forefront. T"o ne" ob#ects, the $ t Set an! $ t Ad pter, are pro i!e! for these scenarios. 2. D. E. (%7.N*T can be use! to get !ata from a stream, or to store !ata in a cache for up!ates. There is a lot more information about (%7.N*T in the !ocumentation. Remember, you can e&ecute a comman! !irectly against the !atabase in or!er to !o inserts, up!ates, an! !eletes. @ou !onMt nee! to first put !ata into a $ t Set in or!er to insert, up!ate, or !elete it. F. (lso, you can use a $ t Set to bin! to the !ata, mo e through the !ata, an! na igate !ata relationships (%7.N*T follo"s the belo" process, belo" $igure, to connect to the !atabase an! retrie e !ata to the application.

- 60 -

Project Report

- 61 -

Project Report

S:+ SERAER
( !atabase management, or %9MS, gi es the user access to their !ata an! helps them transform the !ata into information. Such !atabase management systems inclu!e !9ase, para!o&, IMS, S<5 Ser er an! S<5 Ser er. ( !atabase is a structure! collection of !ata. These systems allo" users to create, up!ate an! e&tract information from their !atabase. %ata refers to the characteristics of people, things an! e ents. S<5 Ser er stores each !ata item in its o"n fiel!s. In S<5 Ser er, the fiel!s relating to a particular person, thing or e ent are bun!le! together to form a single complete unit of !ata, calle! a recor! /it can also be referre! to as ra" or an occurrence0. *ach recor! is ma!e up of a number of fiel!s. No t"o fiel!s in a recor! can ha e the same fiel! name. %uring an S<5 Ser er %atabase !esign pro#ect, the analysis of your business nee!s i!entifies all the fiel!s or attributes of interest. e&isting fiel!s. If your business nee!s change o er time, you !efine any a!!itional fiel!s or change the !efinition of

S:+ SERAER TA8+ES S<5 Ser er stores recor!s relating to each other in a table. %ifferent tables are create! for the arious groups of information. Relate! tables are groupe! together to form a !atabase. PR',AR6 .E6 * ery table in S<5 Ser er has a fiel! or a combination of fiel!s that uni4uely i!entifies each recor! in the table. The ,ni4ue i!entifier is calle! the 3rimary Cey, or simply the Cey. The primary 'ey pro i!es the means to !istinguish one recor! from all other in a table. It allo"s the user an! the !atabase system to i!entify, locate an! refer to one particular recor! in the !atabase. RE+AT'ONA+ $ATA8ASE

- 62 -

Project Report

Sometimes all the information of interest to a business operation can be store! in one table. S<5 Ser er ma'es it e&ample. ery easy to lin' the !ata in multiple tables. Matching an employee to the !epartment in "hich they "or' is one This is "hat ma'es S<5 Ser er a relational !atabase management system, or R%9MS. It stores !ata in t"o or more tables an! enables you to !efine relationships bet"een the table an! enables you to !efine relationships bet"een the tables. (ORE'/N .E6 1hen a fiel! is one table matches the primary 'ey of another fiel! is referre! to as a foreign 'ey. ( foreign 'ey is a fiel! or a group of fiel!s in one table "hose alues match those of the primary 'ey of another table. RE(ERENT'A+ 'NTE/R'T6 Not only !oes S<5 Ser er allo" you to lin' multiple tables, it also maintains consistency bet"een them. *nsuring that the !ata among relate! tables is correctly matche! is referre! to as maintaining referential integrity. $ATA A8STRACT'ON ( ma#or purpose of a !atabase system is to pro i!e users "ith an abstract ie" of the !ata. This system hi!es certain !etails of ho" the !ata is store! an! maintaine!. %ata abstraction is !i i!e! into three le els. Physic ! !eve!6 This is the lo"est le el of abstraction at "hich one !escribes ho" the !ata are actually store!. Conceptu ! +eve!6 them. Aie# !eve!6 This is the highest le el of abstraction at "hich one !escribes only part of the !atabase. (t this le el of !atabase abstraction all the attribute! an!

"hat !ata are actually store! is !escribe! an! entries an! relationship among

- 63 -

Project Report

A$AANTA/ES O( R$8,S Re!un!ancy can be a oi!e! Inconsistency can be eliminate! %ata can be Share! Stan!ar!s can be enforce! Security restrictions ca be applie! Integrity can be maintaine! Conflicting re4uirements can be balance! %ata in!epen!ence can be achie e!.

$'SA$AANTA/ES O( $8,S ( significant !isa! antage of the %9MS system is cost. In a!!ition to the cost of purchasing of !e eloping the soft"are, the har!"are has to be upgra!e! to allo" for the e&tensi e programs an! the "or'space re4uire! for their e&ecution an! storage. 1hile centraliJation re!uces !uplication, the lac' of !uplication re4uires that the !atabase be a!e4uately bac'e! up so that in case of failure the !ata can be reco ere!. (EATURES O( S:+ SERAER DR$8,S0 S<5 S*R;*R is one of the lea!ing !atabase management systems /%9MS0 because it is the only %atabase that meets the uncompromising re4uirements of to!ay.s most !eman!ing information systems. $rom comple& !ecision support systems /%SS0 to the most rigorous online transaction processing /75T30 application, e en application that re4uire simultaneous %SS an! 75T3 access to the same critical !ata, S<5 Ser er lea!s the in!ustry in both performance an! capability

- 64 -

Project Report

S<5 S*R;*R is a truly portable, !istribute!, an! open %9MS that !eli ers unmatche! performance, continuous operation an! support for e ery !atabase. S<5 S*R;*R R%9MS is high performance fault tolerant %9MS "hich is specially !esigne! for online transactions processing an! for han!ling large !atabase application. S<5 S*R;*R "ith transactions processing option offers t"o features "hich contribute to ery high le el of transaction processing throughput, "hich are The ro" le el loc' manager

ENTERPR'SE *'$E $ATA S&AR'N/ The unri ale! portability an! connecti ity of the S<5 S*R;*R %9MS enables all the systems in the organiJation to be lin'e! into a singular, integrate! computing resource. PORTA8'+'T6 S<5 S*R;*R is fully portable to more than HK !istinct har!"are an! operating systems platforms, inclu!ing ,NIX, MS%7S, 7S/A, Macintosh an! !oJens of proprietary platforms. This portability gi es complete free!om to choose the !atabase se er platform that meets the system re4uirements. OPEN S6STE,S S<5 S*R;*R offers a lea!ing implementation of in!ustry 8stan!ar! S<5. S<5 Ser er.s open architecture integrates S<5 S*R;*R an! non 8S<5 S*R;*R %9MS "ith in!ustries most comprehensi e collection of tools, application, an! thir! party soft"are pro!ucts S<5 Ser er.s 7pen architecture pro i!es transparent access to !ata from other relational !atabase an! e en non+relational !atabase. $'STR'8UTE$ $ATA S&AR'N/ S<5 Ser er.s net"or'ing an! !istribute! !atabase capabilities to access !ata store! on remote ser er "ith the same ease as if the information "as store! on a - 65 -

Project Report

single local computer. ( single S<5 statement can access !ata at multiple sites. @ou can store !ata "here system re4uirements such as performance, security or a ailability !ictate.

UN,ATC&E$ PER(OR,ANCE The most a! ance! architecture in the in!ustry allo"s the S<5 S*R;*R %9MS to !eli er unmatche! performance.

SOP&'ST'CATE$ CONCURRENC6 CONTRO+


Real 1orl! applications !eman! access to critical !ata. 1ith most !atabase Systems application becomes Vcontention boun!W 8 "hich performance is limite! not by the C3, po"er or by !is' I/7, but user "aiting on one another for !ata access . S<5 Ser er employs full, unrestricte! ro"+le el loc'ing an! contention free 4ueries to minimiJe an! in many cases entirely eliminates contention "ait times. NO 'OO 8OTT+ENEC.S S<5 Ser er.s fast commit groups commit an! !eferre! "rite technologies !ramatically re!uce !is' I/7 bottlenec's. 1hile some !atabase "rite "hole !ata bloc' to !is' at commit time, S<5 Ser er commits transactions "ith at most se4uential log file on !is' at commit time, 7n high throughput systems, one se4uential "rites typically group commit multiple transactions. %ata rea! by the transaction remains as share! memory so that other transactions may access that !ata "ithout rea!ing it again from !is'. Since fast commits "rite all !ata necessary to the reco ery to the log file, mo!ifie! bloc's are "ritten bac' to the !atabase in!epen!ently of the transaction commit, "hen "ritten from memory to !is'.

- 66 -

Project Report

Ch pter <

- 67 -

Project Report

S6STE, $ES'/N

- 68 -

Project Report

<040 'NTRO$UCT'ON
Soft"are !esign sits at the technical 'ernel of the soft"are engineering process an! is applie! regar!less of the !e elopment para!igm an! area of application. %esign is the first step in the !e elopment phase for any engineere! pro!uct or system. The !esigner.s goal is to pro!uce a mo!el or representation of an entity that "ill later be built. 9eginning, once system re4uirement ha e been specifie! an! analyJe!, system !esign is the first of the three technical acti ities +!esign, co!e an! test that is re4uire! to buil! an! erify soft"are. The importance can be state! "ith a single "or! V<ualityW. %esign is the place "here 4uality is fostere! in soft"are !e elopment. %esign pro i!es us "ith representations of soft"are that can assess for 4uality. %esign is the only "ay that "e can accurately translate a customer.s ie" into a finishe! soft"are pro!uct or system. Soft"are !esign ser es as a foun!ation for all the soft"are engineering steps that follo". 1ithout a strong !esign "e ris' buil!ing an unstable system 8 one that "ill be !ifficult to test, one "hose 4uality cannot be assesse! until the last stage. %uring !esign, progressi e refinement of !ata structure, program structure, an! proce!ural !etails are !e elope! re ie"e! an! !ocumente!. System !esign can be ie"e! from either technical or pro#ect management perspecti e. $rom the technical point of ie", !esign is comprise! of four acti ities 8 architectural !esign, !ata structure !esign, interface !esign an! proce!ural !esign.

- 69 -

Project Report

<050 S6STE, *OR.(+O*


/5ogging ;ia Cust I%0 X 3ro!uct Search/ 5isting X Selecting a 3erticular 3ro!uct X Selection through Chec'9o& +++++++++U Temp or!er recor! recor! Y X 9illing/ Shipping Info ++++++++++U Recor!ing CustomerMs %ata X Shipping R 3ro!uct 3rice Calculate! ++++U If shippe! ia 2r! party then charge is X calculate! from their lin'e! ser er 7r!er Confirmation & (ccept 7r!er ++++U *ntry into main !atabase inclu!ing temp X recor!s. Y %elete temp recor! CCar!/ 3ay3al/ 7ffline 3ay 3rocess X X X +++++++++++ +++++++++++ ++++++++++ ;ia*mail ;ia*mail ;ia*mail +++++++++++ +++++++++++ ++++++++++ X X X In oice to Seller Charge Customer In oice (mount / in case of 2r! party seller as *bay0

- 70 -

Project Report

NOR,A+'BAT'ON
It is a process of con erting a relation to a stan!ar! form. The process is use! to han!le the problems that can arise !ue to !ata re!un!ancy i.e. repetition of !ata in the !atabase, maintain !ata integrity as "ell as han!ling problems that can arise !ue to insertion, up!ation, !eletion anomalies. %ecomposing is the process of splitting relations into multiple relations to eliminate anomalies an! maintain anomalies an! maintain !ata integrity. this "e use normal forms or rules for structuring relation. 'nsertion !ata. $e!etion Upd te up!ate nom !y6 Inability to a!! !ata to the !atabase !ue to absence of other nom !y6 ,ninten!e! loss of !ata !ue to !eletion of other !ata. nom !y6 %ata inconsistency resulting from !ata re!un!ancy an! partial These are the rules for structuring relations that eliminate To !o

Norm ! (orms6 anomalies.

('RST NOR,A+ (OR,3 ( relation is sai! to be in first normal form if the atomic for e ery attribute in the relation. group. SECON$ NOR,A+ (OR,3 ( relation is sai! to be in secon! Normal form is it is in first normal form an! it shoul! satisfy any one of the follo"ing rules. B0 3rimary 'ey is a not a composite primary 'ey A0 No non 'ey attributes are present - 71 alues in the relation are

9y this "e mean simply that no

attribute alue can be a set of alues or, as it is sometimes e&presse!, a repeating

Project Report

20 * ery non 'ey attribute is fully functionally !epen!ent on full set of primary 'ey. T&'R$ NOR,A+ (OR,3 ( relation is sai! to be in thir! normal form if their e&its no transiti e !epen!encies. Tr nsitive $ependency6 If t"o non 'ey attributes !epen! on each other as "ell as on the primary 'ey then they are sai! to be transiti ely !epen!ent. The abo e normaliJation principles "ere applie! to !ecompose the !ata in multiple tables thereby ma'ing the !ata to be maintaine! in a consistent state.

<090 E P R $'A/RA,S
The relation upon the system is structure through a conceptual *R+ %iagram, "hich not only specifics the e&istential entities but also the stan!ar! relations through "hich the system e&ists an! the car!inalities that are necessary for the system state to continue. The entity Relationship %iagram /*R%0 !epicts the relationship bet"een the !ata ob#ects. The *R% is the notation that is use! to con!uct the !ate mo!eling acti ity the attributes of each !ata ob#ect note! is the *R% can be !escribe! resign a !ata ob#ect !escriptions. The set of primary components that are i!entifie! by the *R% are %ata ob#ect (ttributes Relationships ;arious types of in!icators.

The primary purpose of the *R% is to represent !ata ob#ects an! their relationships.

- 72 -

Project Report

- 73 -

Project Report

<090 $ATA (+O* $'A/RA,S

$ATA (+O* $'A/RA,S


( !ata flo" !iagram is graphical tool use! to !escribe an! analyJe mo ement of !ata through a system. These are the central tool an! the basis from "hich the other components are !e elope!. The transformation of !ata from input to output, through processe!, may be !escribe! logically an! in!epen!ently of physical components associate! "ith the system. logical !ata flo" !iagrams. implements !iagrams. an! mo ement of !ata bet"een These are 'no"n as the !epartments an! The physical !ata flo" !iagrams sho" the actual people,

"or'stations. ( full !escription of a system actually consists of a set of !ata flo" ,sing t"o familiar notations @our!on, )ane an! Sarson notation !e elops the !ata flo" !iagrams. *ach component in a %$% is labele! "ith a !escripti e name. 3rocess is further i!entifie! "ith a number that "ill be use! for i!entification purpose. The !e elopment of %$%.S is !one in se eral le els. *ach process in lo"er le el !iagrams can be bro'en !o"n into a more !etaile! %$% in the ne&t le el. The lop+le el !iagram is often calle! conte&t !iagram. It consists a single process bit, "hich plays le el %$%. The i!ea behin! the e&plosion of a process into more process is that un!erstan!ing at one le el of !etail is e&plo!e! into greater !etail at the ne&t le el. This is !one until further e&plosion is necessary an! an a!e4uate amount of !etail is !escribe! for analyst to un!erstan! the process. 5arry Constantine first !e elope! the %$% as a "ay of e&pressing system re4uirements in a graphical from, this lea! to the mo!ular !esign. ( %$% is also 'no"n as a Vbubble ChartW has the purpose of clarifying system re4uirements an! i!entifying ma#or transformations that "ill become ital role in stu!ying the current system. The process in the conte&t le el !iagram is e&plo!e! into other process at the first

- 74 -

Project Report

programs in system !esign. So it is the starting point of the !esign to the lo"est le el of !etail. ( %$% consists of a series of bubbles #oine! by !ata flo"s in the system. $($ S6,8O+S3 In the %$%, there are four symbols B. ( s4uare !efines a source/originator0 or !estination of system !ata A. (n arro" i!entifies !ata flo". It is the pipeline through "hich the information flo"s 2. ( circle or a bubble represents a process that transforms incoming !ata flo" into outgoing !ata flo"s. D. (n open rectangle is a !ata store, !ata at rest or a temporary repository of !ata

3rocess that transforms !ata flo".

Source or %estination of !ata %ata flo" %ata Store

CONSTRUCT'N/ A $($3 Se eral rules of thumb are use! in !ra"ing %$%.S6 B. 3rocess shoul! be name! an! numbere! for an easy reference. shoul! be representati e of the process. *ach name

- 75 -

Project Report

A. The !irection of flo" is from top to bottom an! from left to right.

%ata

tra!itionally flo" from source to the !estination although they may flo" bac' to the source. 7ne "ay to in!icate this is to !ra" long flo" line bac' to a source. (n alternati e "ay is to repeat the source symbol as a !estination. Since it is use! more than once in the %$% it is mar'e! "ith a short !iagonal. 2. 1hen a process is e&plo!e! into lo"er le el !etails, they are numbere!. D. The names of !ata stores an! !estinations are "ritten in capital letters. 3rocess an! !ataflo" names ha e the first letter of each "or' capitaliJe! ( %$% typically sho"s the minimum contents of !ata store. *ach !ata store shoul! contain all the !ata elements that flo" in an! out. <uestionnaires shoul! contain all the !ata elements that flo" in an! out. Missing interfaces re!un!ancies an! li'e is then accounte! for often through inter ie"s. SA'+ENT (EATURES O( $($CS B. The %$% sho"s flo" of !ata, not of control loops an! !ecision are controlle! consi!erations !o not appear on a %$%. A. The %$% !oes not in!icate the time factor in ol e! in any process "hether the !ataflo" ta'e place !aily, "ee'ly, monthly or yearly. 2. The se4uence of e ents is not brought out on the %$%. T6PES O( $ATA (+O* $'A/RA,S B. Current 3hysical A. Current 5ogical 2. Ne" 5ogical D. Ne" 3hysical CURRENT P&6S'CA+3 In Current 3hysical %$% proecess label inclu!e the name of people or their positions or the names of computer systems that might pro i!e some of the

- 76 -

Project Report

o erall system+processing label inclu!es an i!entification of the technology use! to process the !ata. Similarly !ata flo"s an! !ata stores are often labels "ith the names of the actual physical me!ia on "hich !ata are store! such as file fol!ers, computer files, business forms or computer tapes. CURRENT +O/'CA+3 The physical aspects at the system are remo e! as mush as possible so that the current system is re!uce! to its essence to the !ata an! the processors that transform them regar!less of actual physical form. NE* +O/'CA+6 This is e&actly li'e a current logical mo!el if the user "ere completely happy "ith he user "ere completely happy "ith the functionality of the current system but ha! problems "ith ho" it "as implemente! typically through the ne" logical mo!el "ill !iffer from current logical mo!el "hile ha ing a!!itional functions, absolute function remo al an! inefficient flo"s recogniJe!. NE* P&6S'CA+3 The ne" physical represents only the physical implementation of the ne" system. RU+ES /OAERN'N/ T&E $($CS PROCESS B0 No process can ha e only outputs. A0 No process can ha e only inputs. If an ob#ect has only inputs than it must be a sin'. 20 ( process has a erb phrase label. $ATA STORE B0 %ata cannot mo e !irectly from one !ata store to another !ata store, a process must mo e !ata.

- 77 -

Project Report

A0 %ata cannot mo e !irectly from an outsi!e source to a !ata store, a process, "hich recei es, must mo e !ata from the source an! place the !ata into !ata store 20 ( !ata store has a noun phrase label. SOURCE OR S'N. The origin an! /or !estination of !ata. B0 %ata cannot mo e !irely from a source to sin' it must be mo e! by a process A0 ( source an! /or sin' has a noun phrase lan! $ATA (+O* B0 ( %ata $lo" has only one !irection of flo" bet"een symbols. It may flo" in both !irections bet"een a process an! a !ata store to sho" a rea! before an up!ate. The later is usually in!icate! ho"e er by t"o separate arro"s since these happen at !ifferent type. A0 ( #oin in %$% means that e&actly the same !ata comes from any of t"o or more !ifferent processes !ata store or sin' to a common location. 20 ( !ata flo" cannot go !irectly bac' to the same process it lea!s. There must be at least one other process that han!les the !ata flo" pro!uce some other !ata flo" returns the original !ata into the beginning process. D0 ( %ata flo" to a !ata store means up!ate /!elete or change0. E0 ( !ata $lo" from a !ata store means retrie e or use. ( !ata flo" has a noun phrase label more than one !ata flo" noun phrase can appear on a single arro" as long as all of the flo"s on the same arro" mo e together as one pac'age.

- 78 -

Project Report

1 B ro w s e C a t a lo g u e * P ro d u c t %n fo % t e m + e t a ils

P ro d u c t %+ C u s to m e r + e t a ils

2 R e g is t e r P r o f il e *

C u s to m e r

P u b l ic

P ro d u c t 2 t* . s e rn a m e a n d P a s s w o rd + 2 C u s to m e rs + 1 P ro d u c t %n ) e n to r*

. s e rn a m e / p a s s w " o rd , o g in *

C u s to m e rs

P ro d u c t"%+ 3 A d d p ro d u c t to C a rt P ro d u c t %+

C a r t %te m %+ +3

C a rt %te m $ ' o p p in g C a rt C a r t %te m 4 V ie w / A m e n d C a rt * C r e d it C a r d C a rt %te m s C e c! "o u t # rd e r * 0 e w C r e d it C a r d C r e d it C a r d + e t a ils C r e d it C a r d ( +$ C r e d it C a rd s %s s u e # rd e r t o ' ip p in g Agent ' ip p in g R e1uest C u s to m e r # rd e r C u s to m e r # rd e r +4 C u s to m e r # rd e rs

C r e d it C a r d ' ta tu s C r e d it C a rd Co C r e d it C a r d

& %s s u e C C fo r V a lid a t io n C o p * # fC u s to m e rs * ' ip p in g Agent

- 79 -

Project Report

Unified ,ode!in% + n%u %e $i %r ms


The unifie! mo!eling language allo"s the soft"are engineer to e&press an analysis mo!el using the mo!eling notation that is go erne! by a set of syntactic semantic an! pragmatic rules. ( ,M5 system is represente! using fi e !ifferent system from !istinctly !ifferent perspecti e. *ach !iagram, "hich is as follo"s. User ,ode! Aie#

ie"s that !escribe the ie" is !efine! by a set of

This ie" represents the system from the users perspecti e. The analysis representation !escribes a usage scenario from the en!+ users perspecti e.

Structur ! mode! vie# In this mo!el the !ata an! functionality are arri e! from insi!e the system. This mo!el ie" mo!els the static structures.

8eh vior ! ,ode! Aie# It represents the !ynamic of beha ioral as parts of the system, !epicting the interactions of collection bet"een arious structural elements !escribe! in the user mo!el an! structural mo!el ie".

'mp!ement tion ,ode! Aie#

In this the structural an! beha ioral as parts of the system are represente! as they are to be built.

Environment ! ,ode! Aie# In this the structural an! beha ioral aspects of the en ironment in "hich the system is to be implemente! are represente!. U,+ is specific !!y constructed throu%h t#o different dom ins they

re

,M5 (nalysis mo!eling, "hich focuses on the user mo!el an! structural mo!el ie"s of the system

- 80 -

Project Report

,M5 !esign mo!eling, "hich focuses on the beha ioral mo!eling, implementation mo!eling an! en ironmental mo!el ie"s.

INTR7%,CTI7N
9uil!ing essential for systems (

T7 T?* ,NI$I*% M7%I$I*% 5(N),()*


a mo!el for a soft"are system pro#ect prior to its construction the comple&ity of is the buil!ing a large buil!ing. )oo! mo!els are teams. (s mo!eling techni4ues.

as essential as ha ing a blueprint for communication among

increases, so !oes the importance of goo! mo!eling language must inclu!e6

Model elements+ fun!amentally mo!eling concepts an! semantics. Notation+ isual ren!ering of mo!el elements )ui!elines+e&pression of usage "ithin tra!e The use of isual notation to represent or mo!el a problem can pro i!e us se eral

benefits relating to clarity, familiarity, maintenance, an! simplification. The main reason for mo!eling is the re!uction of comple&ity. The ,nifie! Mo!eling 5anguage /,M50 is a set of notations an! con entions use! to !escribe an! mo!el an application. The ,M5 is language !ifferent for mo!eling an! systems, meaning as a that it 'in!s purposes, #ust inten!e! to be or a a uni ersal of many natural can e&press mo!els

programming

language

language can be use! in !ifferent "ays. ( Vmo!elW is an abstract representation of here in a broa! sense to of inclu!e a any process or a system , constructe! to term VsystemW is use! soft"are, structure. $or e&ample, the

un!erstan! the system prior to buil!ing or mo!ifying it. The organiJational structure corporation , health

ser ices, computer

instruction of any sort /inclu!ing computers0 , the national economy, an! so forth all "oul! be terme! VsystemsW.

The unifie! mo!eling language is a language for specifying, constructing, isualiJing, an! !ocumenting the soft"are system an! its components. The ,M5 is a graphical language "ith sets of rules an! semantics. The rules an! semantics of

- 81 -

Project Report

mo!el

are

e&presse! is a

in

*nglish, in specification

form

'no"n that

as uses

Vob#ect simple

constraint logic for

languageW/7C50.7C5 The sense of

language

specifying the properties of a system. ,M5 is not inten!e! to be a all the necessary isual isual programming language in the an! semantic support to replace ha ing

programming languages. ?o"e er, the ,M5 !oes ha e a tight mapping to a family of ob#ect+oriente! languages, so that you can get the best of both "orl!s.

The prim ry %o !s in the desi%n of the U,+ #ere


B. A. 2. D. E. F. G.

s fo!!o#s3

3ro i!e users rea!y+to+use, e&pensi e isual mo!eling languages so they can !e elop an! e&change meaningful mo!els. 3ro i!e e&ten!ibility an! specialiJation mechanisms to e&ten! the core concepts. 9e in!epen!ent of particular programming languages an! !e elopment process. 3ro i!e a formal basis for un!erstan!ing the mo!eling language. *ncourage the gro"th of the 77 tools mar'et. Support higher le el !e elopment concepts. Integrate best practices an! metho!ologies.

U,+

is

! n%u %e used to3


another !e eloper, using ,M5

V;isualiJeW the soft"are system "ell+!efine! symbols. Thus a !e eloper or tool can unambiguously interpret a mo!el "ritten by VSpecify the soft"are system an! help buil!ing precise, unambiguous an! complete mo!els. VConstructW communicate "ith a the mo!els of the soft"are system that can !irectly

ariety of programming languages. stages.

V%ocumentW mo!els of the soft"are system !uring its !e elopment

Architectur ! vie#s
use! for

nd di %r ms of the U,+

The ,M5 Meta mo!el elements are organiJe! into !iagrams. %ifferent !iagrams are

!ifferent purposes !epen!ing on the angle from "hich you are

ie"ing the

system. The !ifferent ie"s are calle! Varchitectural ie"sW. (rchitectural ie"s facilitate the organiJation of 'no"le!ge, an! !iagrams enable the communication of 'no"le!ge. Then 'no"le!ge itself is "ithin the mo!el or set of mo!els that focuses

- 82 -

Project Report

on the problem an! solution. The architectural ie"s an! their !iagrams are summariJe! belo"6 The Quser mode! vie#R encompasses a problem an! solution from the preser ati e of those in!i i!uals "hose problem the solution a!!resses. The the solution. This ie"

presents the goals an! ob#ecti es of the problem o"ners an! their re4uirements of ie" is compose! of Vuse case !iagramsW. These !iagrams These !escribe the functionality pro i!e! by a system to e&ternal interactors. !iagrams contain actors, use cases, an! their relationships. The QStructur ! mode! vie#R encompasses the static, or structural, aspects of a problem an! solution. This ie" is also 'no"n as the static or logical

ie". This ie" is compose! of the follo"ing !iagrams.

Structural view
Class diagrams Object diagrams

Implementation view Component di %r ms

Sequence diagrams C llab rati n diagrams State c!art diagrams "cti#it$ diagrams Behavior diagrams

User view

%e&l $ment diagrams


Environmental diagrams

(i%ure i!!ustr tin% the structur ! vie# o is Class diagrams !escribe the static structure of a system, or ho" it !eclare! rather than ho" it beha es. These !iagrams contain classes an! the static structure of a system at a

associations. o object diagrams !escribe

particular time !uring its life. These !iagrams contain ob#ects an! lin's. The Qbeh vior ! mode! vie#R encompasses the !ynamic or beha ioral aspects of a problem an! solution. The ie" is also 'no"n as the !ynamic, process,

- 83 -

Project Report

concurrent or collaborati e !iagrams6 o

ie". This

ie"

is

compose!

of

the follo"ing

VSequence diagrams ren!er the specification of beha ior. These !iagrams !escribes the beha ior pro i!e! by a system to

interactions. These !iagrams contain classes that e&change messages "ith in an interaction arrange! in time se4uence. In among a set of classes. In instance generic form, These !iagrams !escribe a set of message e&change se4uences form/scenarios0, these !iagrams !escribe one actual message e&change se4uence among ob#ects of those classes. o VCollaboration components diagrams "ith in a ren!er ho" beha ior !iagrams is realiJe! by

system. These

contain

classes,

associations, an! their message e&changes "ith in a collaboration to accomplish a purpose. In generic form, these !iagrams !escribe a set of classes an! associations in ol e! in message e&change se4uences. In instance form/scenarios0, these !iagrams !escribe a set of ob#ects of one those actual classes lin's confirming to the associations, an! inconsistent lin's. o VState chart diagrams ren!er the states an! responses of a class participating stimuli. o VActivity diagrams ren!er the acti ities of a class participating in beha ior. These !iagrams !escribe the beha ior of a class in in beha ior, an! the life cycle of an ob#ect. These message e&change se4uence that

"ith the generic form an! uses those ob#ects an!

!iagrams !escribe the beha ior of a class in response to e&ternal

response to internal processing rather than e&ternal e ents. (cti ity !iagrams !escribe the processing acti ities "ith in a class. o The VImplementation model view encompasses the structural an! beha ioral aspects of the solution.s realiJation. This 'no"n as the component or !e elopment Vcomponent ie" is also

ie" an! is compose! of

!iagramsW. These !iagrams !escribe the organiJation of

- 84 -

Project Report

an! !epen!encies among soft"are implementation components. These !iagrams contain components an! their relationships. o The VEnvironment model view encompasses beha ioral aspects realiJe!. This This of the !omain in "hich a the structural an! must be ie".

solution

ie" is also 'no"n as the !eployment or physical

ie" is compose! of V!eployment !iagramsW. These

!iagrams

!escribe the configuration of processing resources elements an! the mapping of U,+ $'A/RA,S * ery comple& system is best approache! through a small set of nearly in!epen!ent ie"s of a mo!elO no single ie"er is sufficient. * ery mo!el may be e&presse! at !ifferent le els of fi!elity. The best mo!els are connecte! to reality. The ,M5 !efines nine graphical !iagrams. B. Class !iagram A. 7b#ect !iagram 2. ,se+case !iagram D. 9eha ior !iagrams Interaction !iagram Se4uence !iagram Collaboration !iagram D.A. (cti ity !iagram soft"are implementation components onto them. These !iagrams contain no!es, components an! their relationships.

- 85 -

Project Report

USE CASE $ES'/N3


E2/ift Shoppy *eb Port !

C te%ory , n %ement

LLe)tendMM

Product , n %ement

LLe)tendMM

LLe)tendMM Content , n %ement Customer LLe)tendMM Order , n %ement Admin

LLe)tendMM Customer , n %ement

Purch se ,odu!e

C te%ory , n %ement
Aie# C te%ory

Add C te%ory

Customer

Upd te C te%ory

Admin

- 86 -

Project Report

Customer , n %ement
Aie# Customer $et i!s

+ist Customer

Customer

Add Customer

Admin

Upd te Customer

$e!ete Customer

Content , n %ement
Aie# Content P %e

Upd te Content P %e

Customer

Admin

- 87 -

Project Report

C t !o% , n %ement

, n %e Country LLe)tendMM
Aie# Country

LLe)tendMM
Add Country

LLe)tendMM
Upd te Country

, n %e St te LLe)tendMM
Aie# St te

LLe)tendMM
Add St te

LLe)tendMM
Upd te St te

Customer LLe)tendMM
Aie# City

, n %e City LLe)tendMM
Add City

Admin LLe)tendMM
Upd te City

- 88 -

Project Report

'se Case Sequence %iagrams

C'S-O./0
5ie6 Categ ries 0equest

C"-/1O02 ."3"1/0

C"-/1O04/S

Searc! Categ ries

Categ ries 7ist

0esult

()ig 1*1+ , Searc!ing Categ ries

- 89 -

Project Report

C'S-O./0
5ie6 8r ducts 0equest

80O%'C- ."3"1/0

80O%'C-S

Searc! 8r ducts

8r ducts 7ist

0esult

()ig 1*2+ , Searc!ing 8r ducts 7ist

- 90 -

Project Report

'S/0

C'S-O./0 ."3"1/0 8ers nal9 "ddress : credential details

C'S-O./0S

0egister 'ser

Cust mer 0egistrati n Status

0esult

)ig* 1*3 , 'ser 0egistrati n

- 91 -

Project Report

Cust mer

7 gin

Clic; n 7 gin <utt n

8r duct manager

8r ducts

S! &&ing Cart

8a$ment 1ate6a$

Orders

Clic; n 8r duct 7in;

Searc! = r 8r duct

Clic; n "dd t Cart

Clic; n <illing

Select t!e 8a$ment . de

C!ec; t!e Status = Order

0eturn t Cust mer > me 8age

)ig* 1*4 , 8r duct 8urc!ase 8r cess

- 92 -

Project Report

"dmin
7 gin %etails

7 gin Screen

Order .anager

Orders

Order %etails
.anage Orders

Status

0esult

0esult

)ig* 1*5 , Order .anagement

- 93 -

Project Report

<0;0 $ATA $'CTONAR6


(fter carefully un!erstan!ing the re4uirements of the client the the entire !ata storage re4uirements are !i i!e! into tables. The belo" tables are normaliJe! to a oi! any anomalies !uring the course of !ata entry. T b!e3 tb!Address

T b!e3 tb!Admin,enu

- 94 -

Project Report

Table6tbl(!minMenu

- 95 -

Project Report

Table6 tbl(ttributes

Table6 tbl9ran!s

Table6 tblCategories

- 96 -

Project Report

Table6 tblCity

Table6tblCountry - 97 -

Project Report

Table6tblCustomer

Table6 tbl$eature!3ro!ucts

- 98 -

Project Report

Table6 tbl?int<uestion

Table6 tbl?otSelling3ro!ucts - 99 -

Project Report

Table6 tblNe"ly(!!e!3ro!ucts

Table6 tbl7ffere!3ro!ucts

- 100 -

Project Report

Table6 tbl7r!er%etails

Table6 tbl7r!ers

- 101 -

Project Report

Table6 tbl7r!erStatus

Table6 tbl3ageContent - 102 -

Project Report

Table6 tbl3ostageCalculator

Table6 tbl3ro!ucts(!!itional3rice

- 103 -

Project Report

Table6 tbl3ro!ucts

Table6 tbl3ro!uct(ttribute

- 104 -

Project Report

Table6 tbl3ro!uctImages

Table6 tbl3ro!uctRating

- 105 -

Project Report

Table6 tblShoppingCart

Table6 tblState

- 106 -

Project Report

Table6 tbl,pComing3ro!ucts

Table6tbl,ser

- 107 -

Project Report

Table6tbl1ish5ist

- 108 -

Project Report

Ch pter =

- 109 -

Project Report

OUTPUT SCREENS

- 110 -

Project Report

P ste your Output Screen

- 111 -

Project Report

Ch pter >

- 112 -

Project Report

S6STE, TEST'N/ AN$ ',P+E,ENTAT'ON

- 113 -

Project Report

>040 'NTRO$UCT'ON
Soft"are testing is a critical element of soft"are 4uality assurance an! represents the ultimate re ie" of specification, !esign an! co!ing. In fact, testing is the one step in the soft"are engineering process that coul! be !estructi e rather than constructi e. ( strategy for soft"are testing integrates soft"are test case !esign metho!s into a "ell+planne! series of steps that result in the successful construction of soft"are. Testing is the set of acti ities that can be planne! in a! ance an! con!ucte! systematically. The un!erlying moti ation of program testing is to affirm soft"are 4uality "ith metho!s that can economically an! effecti ely apply to both strategic to both large an! small+scale systems. ie"e! as

>050 STRATE/'C APPROAC& TO SO(T*ARE TEST'N/


The soft"are engineering process can be ie"e! as a spiral. Initially system engineering !efines the role of soft"are an! lea!s to soft"are re4uirement analysis "here the information !omain, functions, beha ior, performance, constraints an! ali!ation criteria for soft"are are establishe!. Mo ing in"ar!

along the spiral, "e come to !esign an! finally to co!ing. To !e elop computer soft"are "e spiral in along streamlines that !ecrease the le el of abstraction on each turn. ( strategy for soft"are testing may also be ie"e! in the conte&t of the

spiral. ,nit testing begins at the erte& of the spiral an! concentrates on each unit of the soft"are as implemente! in source co!e. Testing progress by mo ing out"ar! along the spiral to integration testing, "here the focus is on the !esign an! the construction of the soft"are architecture. Tal'ing another turn on out"ar! on the spiral "e encounter ali!ation testing "here re4uirements establishe! as part of soft"are re4uirements analysis are ali!ate! against the soft"are that has

- 114 -

Project Report

been constructe!. $inally "e arri e at system testing, "here the soft"are an! other system elements are teste! as a "hole.

'34- -/S-431

.O%'7/ -/S-431

Component 3esting

S'<-S2S-/. -/S431

S2S-/. -/S-431

%ntegration 3esting

.ser 3esting

"CC/8-"3C/ -/S-431

>070 Unit Testin%


,nit testing focuses erification effort on the smallest unit of soft"are !esign, the mo!ule. The unit testing "e ha e is "hite bo& oriente! an! some mo!ules the steps are con!ucte! in parallel. 40 *&'TE 8OX TEST'N/ This type of testing ensures that (ll in!epen!ent paths ha e been e&ercise! at least once (ll logical !ecisions ha e been e&ercise! on their true an! false si!es (ll loops are e&ecute! at their boun!aries an! "ithin their operational boun!s (ll internal !ata structures ha e been e&ercise! to assure their ali!ity.

- 115 -

Project Report

To follo" the concept of "hite bo& testing "e ha e teste! each form ."e ha e create! in!epen!ently to erify that %ata flo" is correct, (ll con!itions are e&ercise! to chec' their ali!ity, (ll loops are e&ecute! on their boun!aries. 50 8AS'C PAT& TEST'N/ *stablishe! techni4ue of flo" graph "ith Cyclomatic comple&ity "as use! to !eri e test cases for all the functions. The main steps in !eri ing test cases "ere6 ,se the !esign of the co!e an! !ra" correspon!ent flo" graph. %etermine the Cyclomatic comple&ity of resultant flo" graph, using formula6 ;/)0Z*+NRA or ;/)0Z3RB or ;/)0ZNumber 7f Regions 1here ;/)0 is Cyclomatic comple&ity, * is the number of e!ges, N is the number of flo" graph no!es, 3 is the number of pre!icate no!es. %etermine the basis of set of linearly in!epen!ent paths. 70 CON$'T'ONA+ TEST'N/ In this part of the testing each of the con!itions "ere teste! to both true an! false aspects. (n! all the resulting paths "ere teste!. So that each path that may be generate on particular con!ition is trace! to unco er any possible errors. 90 $ATA (+O* TEST'N/ This type of testing selects the path of the program accor!ing to the location of !efinition an! use of ariables. This 'in! of testing "as use! only "hen some local ariable "ere !eclare!. The definition use chain metho! "as use! in this type of testing. These "ere particularly useful in neste! statements. ;0 +OOP TEST'N/

- 116 -

Project Report

In this type of testing all the loops are teste! to all the limits possible. The follo"ing e&ercise "as a!opte! for all loops6 (ll the loops "ere teste! at their limits, #ust abo e them an! #ust belo" them. (ll the loops "ere s'ippe! at least once. $or neste! loops test the inner most loop first an! then "or' out"ar!s. $or concatenate! loops the alues of !epen!ent loops "ere set "ith the help of connecte! loop. ,nstructure! loops "ere resol e! into neste! loops or concatenate! loops an! teste! as abo e. *ach unit has been separately teste! by the !e elopment team itself an! all the input ha e been ali!ate!.

- 117 -

Project Report

Ch pter ?

- 118 -

Project Report

System Security

- 119 -

Project Report

?040 'ntroduction
The protection of computer base! resources that inclu!es har!"are, soft"are, !ata, proce!ures an! people against unauthoriJe! use or natural %isaster is 'no"n as System Security. System Security can be !i i!e! into four relate! issues6 Security Integrity 3ri acy Confi!entiality

S6STE, SECUR'T6 refers to the technical inno ations an! proce!ures applie! to the har!"are an! operation systems to protect against !eliberate or acci!ental !amage from a !efine! threat. $ATA SECUR'T6 is the protection of !ata from loss, !isclosure, mo!ification an! !estruction. S6STE, 'NTE/R'T6 refers to the po"er functioning of har!"are an! programs, appropriate physical security an! safety against e&ternal threats such as ea es!ropping an! "iretapping. PR'AAC6 !efines the rights of the user or organiJations to !etermine "hat information they are "illing to share "ith or accept from others an! ho" the organiJation can be protecte! against un"elcome, unfair or e&cessi e !issemination of information about it. CON('$ENT'A+'T6 is a special status gi en to sensiti e information in a !atabase to minimiJe the possible in asion of pri acy. It is an attribute of information that characteriJes its nee! for protection. - 120 -

Project Report

?050 SECUR'T6 'N SO(T*ARE


System security refers to only arious ali!ations on !ata in form of chec's an! ali! operations are performe! on the system. controls to a oi! the system from failing. It is al"ays important to ensure that ali! !ata is entere! an! only The system employees t"o types of chec's an! controls6 C+'ENT S'$E AA+'$AT'ON ;arious client si!e ali!ations are use! to ensure on the client si!e that only ali! !ata is entere!. Client si!e ali!ation sa es ser er time an! loa! to han!le in ali! !ata. Some chec's impose! are6 ;9Script in use! to ensure those re4uire! fiel!s are fille! "ith suitable !ata only. Ma&imum lengths of the fiel!s of the forms are appropriately !efine!. $orms cannot be submitte! "ithout filling up the man!atory !ata so that manual mista'es of submitting empty fiel!s that are man!atory can be sorte! out at the client si!e to sa e the ser er time an! loa!. Tab+in!e&es are set accor!ing to the nee! an! ta'ing into account the ease of user "hile "or'ing "ith the system. SERAER S'$E AA+'$AT'ON Some chec's cannot be applie! at client si!e. Ser er si!e chec's are necessary to sa e the system from failing an! intimating the user that some in ali! operation has been performe! or the performe! operation is restricte!. Some of the ser er si!e chec's impose! is6 Ser er si!e constraint has been impose! to chec' for the ali!ity of primary 'ey an! foreign 'ey. ( primary 'ey !uplicate the primary those alue cannot be !uplicate!. (ny attempt to

alue results into a message intimating the user about

alues through the forms using foreign 'ey can be up!ate! only of the

e&isting foreign 'ey alues.

- 121 -

Project Report

,ser

is

intimating

through

appropriate

messages

about

the

successful

operations or e&ceptions occurring at ser er si!e. ;arious (ccess Control Mechanisms ha e been built so that one user may not agitate upon another. (ccess permissions to arious types of users are

controlle! accor!ing to the organiJational structure. 7nly permitte! users can log on to the system an! can ha e access accor!ing to their category. ,ser+ name, pass"or!s an! permissions are controlle! o the ser er si!e. ,sing ser er si!e impose!. ali!ation, constraints on se eral restricte! operations are

- 122 -

Project Report

Ch pter 4@

- 123 -

Project Report

CONC+US'ON

- 124 -

Project Report

The Internet has become a ma#or resource in mo!ern business, thus electronic shopping has gaine! significance not only from the entrepreneur.s but also from the customer.s point of ie". $or the entrepreneur, electronic shopping generates ne" business opportunities an! for the customer, it ma'es comparati e shopping possible. (s per a sur ey, most consumers of online stores are impulsi e an! usually ma'e a !ecision to stay on a site "ithin the first fe" secon!s. V1ebsite !esign is li'e a shop interior. If the shop loo's poor or li'e hun!re!s of other shops the customer is most li'ely to s'ip to the other site. ?ence "e ha e !esigne! the pro#ect to pro i!e the user "ith easy na igation, retrie al of !ata an! necessary fee!bac' as much as possible. In this pro#ect, the user is pro i!e! "ith an e+commerce "eb site that can be use! to buy 3ro!ucts online. To implement this as a "eb application "e use! (S3.N*T as the Technology. (S3.N*T has se eral a! antages such as enhance! performance, scalability, built+ in security an! simplicity. To buil! any "eb application using (S3.N*T "e nee! a programming language such as C:, ;9.N*T, =: an! so on. C: "as the language use! to buil! this application. $or the client bro"ser to connect to the (S3.N*T engine "e use! Microsoft.s Internet Information Ser ices /IIS0 as the 1eb Ser er. (S3.N*T uses (%7.N*T to interact "ith the !atabase as it pro i!es in+memory caching that eliminates the nee! to contact the !atabase ser er fre4uently an! it can easily !eploy an! maintain an (S3.N*T application. S<5 Ser er "as use! as bac'+en! !atabase since it is one of the most popular open source !atabases, an! it pro i!es fast !ata access, easy installation an! simplicity. ( goo! shopping cart !esign must be accompanie! "ith user+frien!ly shopping cart application logic. It shoul! be con enient for the customer to ie" the contents of their cart an! to be able to remo e or a!! items to their cart. The *+ )ift Shoppy application !escribe! in this pro#ect pro i!es a number of features that are !esigne! to ma'e the customer more comfortable.

- 125 -

Project Report

This pro#ect helps in un!erstan!ing the creation of an interacti e "eb page an! the technologies use! to implement it. The !esign of the pro#ect "hich inclu!es %ata Mo!el an! 3rocess Mo!el illustrates ho" the !atabase is built "ith !ifferent tables, ho" the !ata is accesse! an! processe! from the tables. The buil!ing of the pro#ect has gi en me a precise 'no"le!ge about ho" (S3.N*T is use! to !e elop a "ebsite, ho" it connects to the !atabase to access the !ata an! ho" the !ata an! "eb pages are mo!ifie! to pro i!e the user "ith a *+)ift Shoppy application. It has been a great pleasure for me to "or' on this e&citing an! challenging pro#ect. This pro#ect pro e! goo! for me as it pro i!e! practical 'no"le!ge of not only programming in (S3.N*T an! C:.N*T "eb base! application an! no some e&tent 1in!o"s (pplication an! S<5 Ser er, but also about all han!ling proce!ure relate! "ith QPROJECT NA,ER0 It also pro i!es 'no"le!ge about the latest technology use! in !e eloping "eb enable! application an! client ser er technology that "ill be great !eman! in future. This "ill pro i!e better opportunities an! gui!ance in future in !e eloping pro#ects in!epen!ently. 8ENE('TS3 The pro#ect is i!entifie! by the merits of the system offere! to the user. The merits of this pro#ect are as follo"s6 + It.s a "eb+enable! pro#ect. This pro#ect offers user to enter the !ata through simple an! interacti e forms. This is ery helpful for the client to enter the !esire! information through so ali!ity of the !ata, "hate er he

much simplicity. The user is mainly more concerne! about the

is entering. There are chec's on e ery stages of any ne" creation, !ata entry or up!ation so that the user cannot enter the in ali! !ata, "hich can create problems at later !ate.

- 126 -

Project Report

Sometimes the user fin!s in the later stages of using pro#ect that he nee!s to up!ate some of the information that he entere! earlier. There are options for him by "hich he can up!ate the recor!s. Moreo er there is restriction for his that he cannot change the primary !ata fiel!. This 'eeps the ali!ity of the !ata to longer e&tent.

,ser is pro i!e! the option of monitoring the recor!s he entere! earlier. ?e can see the !esire! recor!s "ith the ariety of options pro i!e! by him. $rom e ery part of the pro#ect the user is pro i!e! "ith the lin's through framing so that he can go from one option of the pro#ect to other as per the re4uirement. This is boun! to be simple an! the primary concerns of any goo! pro#ect. ery frien!ly as per the user is concerne!. That is, "e can sat that the pro#ect is user frien!ly "hich is one of

%ata storage an! retrie al "ill become faster an! easier to maintain because !ata is store! in a systematic manner an! in a single !atabase. %ecision ma'ing process "oul! be greatly enhance! because of faster processing of information since !ata collection from information a ailable on computer ta'es much less time then manual system.

(llocating of sample results becomes much faster because at a time the user can see the recor!s of last years. *asier an! faster !ata transfer through latest technology associate! "ith the computer an! communication. Through these features it "ill increase the efficiency, accuracy an!

transparency, +','TAT'ONS3 There are some limitations for the current system to "hich solutions can be pro i!e! as a future !e elopment6 B. The system is not configure! for multi+ users at this time. The concept of transaction can be use! to achie e this.

- 127 -

Project Report

A. The 1ebsite is not accessible to e eryone. It can be !eploye! on a "eb ser er so that e erybo!y "ho is connecte! to the Internet can use it. 2. Cre!it Car! ali!ation is not !one. Thir! party proprietary soft"are can be use! for ali!ation chec'.

Ch pter 44

- 128 -

Project Report

(UTURE ',PROAE,ENT

- 129 -

Project Report

(s for other future !e elopments, the follo"ing can be !one6 The (!ministrator of the "eb site can be gi en more functionality, li'e loo'ing at a specific customer.s profile, the boo's that ha e to be reor!ere!, etc. Multiple Shopping carts can be allo"e!. ( console for the !ata centre may be ma!e a ailable to allo" the personnel to monitor on the sites "hich "ere cleare! for hosting !uring a particular perio!. Moreo er, it is #ust a beginningO further the system may be utiliJe! in arious other types of au!iting operation process/"or'flo" base! applications... iJ. Net"or' au!iting or similar

- 130 -

Project Report

Ch pter 44

- 131 -

Project Report

8'8+'O/RAP&6

Artic!es B. Chen, 5. /AKKK0. *nticing 7nline Consumers6 ( Technology (cceptance - 132 -

Project Report

3erspecti e Research+ in+3rogress, (CM 3rocee!ings, SI)C3R A. %i"a'ar, ?., Marathe, M. /AKKK0. The architecture of a one+stop "eb+"in!o" shop. %ecember, (CM SI)ecom *&changes, ;olume A Issue B. 2. Morrison, M., Morrison, =., an! Ceys, (. /AKKA0. Integrating 1eb Sites an! %atabases. Communications of the (CM, September, ;olume DE, Issue I. D. Cubilus, N. =. /AKKK0. %esigning an e+commerce site for users. September AKKK, Crossroa!s, ;olume G Issue B. 8ooGs E. (n!erson, R., $rancis, 9., ?omer, (., ?o"ar!, R., Sussman, %. an! 1atson. /AKKB0 3rofessional (S3.N*T. 1ro& 3ress 5t!. F. 1agner, R., %aniels, C., )riffin, )., ?a!!a!, C. an! Nasr, =. /BIIG0 =a aScript ,nleashe!. S(MS Net. G. 1iley, @. M. =. & Sons. /BIIG0 Creating the ;irtual Store6 Ta'ing @our 1eb Site from 9ro"sing to 9uying. *ebsites H. I. BK. http6//encyclope!ia.laborla"tal'.com/IIS for information on IIS http6//aspnet.Dguysfromrolla.com/articles/KAKDKD+B.asp& for relationship bet"een IIS an! (S3.N*T. http6//ABF.BE.AKB.FF/!pec/course.htmLfullpgZhttp T2(//ABF.BE.AKB.FF/!pec/courses/"ac2BA/"ahKKF.htm&acroZ"ac2BA for security authentication in (S3.N*T BB. BA. http6//samples.got!otnet.com/4uic'start/aspplus/!oc/mtstransactions.asp& http6//""".&+cart.com/articles/!esign[!e elopment.html for online for information on Transactions in (S3.N*T. customer beha ior.

- 133 -

Project Report

B2. BD. BE. BF. BG. BH.

http6//aspnet.Dguysfromrolla.com/articles/KBBDKD+B.asp& for relation http6//""".informati'.uni+bremen.!e/uniform/g!pa[!/metho!s/m+fct!.htm http6//""".agilemo!eling.com/artifacts/!ata$lo"%iagram.htm for !efinition http6//""".start b!otnet.com/a!o/!efault.asp& for information on (%7.N*T http6//mypage.iusb.e!u/\hha'imJa/EKE/in!e&.html for (%7.N*T ob#ects. http6//ms!n.microsoft.com for (%7.N*T ob#ects.

bet"een IIS an! (S3.N*T. for !efinition of $unctional %ecomposition. of %ata $lo" %iagram.

- 134 -

You might also like