hephantan nhom4 de15 quanlykynghephanmemduatrenp2p doc

Upload: trinh-khac-linh

Post on 01-Mar-2016

4 views

Category:

Documents


0 download

DESCRIPTION

HePhanTan Nhom4 De15 QuanlykynghephanmemduatrenP2P Doc

TRANSCRIPT

CNG TY GII PHP PHN MM FPT

Tiu lun H phn tn Qun l k ngh phn mm da trn P2P

TRNG I HC BCH KHOA H NI

VIN CNG NGH THNG TIN V TRUYN THNG *

TIU LUN H PHN TN 15P2P-BASED SOFTWARE ENGINEERING MANAGEMENT

QUN L K NGH PHN MM DA TRN P2PGio vin hng dn : TS H Quc TrungHc vin thc hin : Nhm 41. Phm Xun Ho2. L nh An3. Trn c Long4. Trn Nguyn Bn5. Nguyn Vn HipLp

: 11BCNTT H NI 12-2011Mc lc3Tm tt

3I. Gii thiu

4II. Tm lc cch tip cn

5III. Cc lp ca m hnh qun l da trn P2P

6III.1. Lp nn tng c bn

6III.2. Lp dch v

6III.3. Lp ng dng

7IV. Nhng cng ngh ch cht

7IV.1. Cng ngh qun l da trn nhm cc Peer

9IV.2. Cng ngh P2P trong vic qun l m ngun

10IV.3. Trc quan ha phn mm

12V. Kim tra hiu nng

12VI. Kt lun v hng pht trin trong tng lai

13VII. M rng

13VII.1. Trc quan ha phn mm (Software visualization)

13VII.2. Gii thiu nn tng JXTA (juxtapose)

18VIII. Ti liu tham kho

Tm tt

Vi s pht trin nhanh chng ca cc cng ngh mng, qun l phn mm ngy cng tr nn phc tp. Nhng phng thc qun l k ngh phn mm truyn thng, da trn m hnh Client/Server, khng kh nng p ng cho vic pht trin phn mm trn phm vi rng ln. Bi bo ny xut qun l k ngh phn mm bng mt phng thc da trn cu trc P2P. Bng vic tm hiu nhng c tnh ca P2P, h thng ca chng ti to lp nhng Peer Group (nhm peer), nh l n v c bn xy dng nn nhng dch v bao gm: qun l m ngun, phn cng cng vic, v trc quan phn mm (software visualization). Nn tng ca chng ti khc phc im yu tht c chai tn ti trong kin trc Client/Server c. Mc d vn c mt my ch trong mng, nhng my ch ny ch cung cp chc nng nh ch mc (gi l my ch mc lc) v khng lu tr ti liu. Theo cch ny, nhng gnh nng ca my ch s c chia s vi sc mnh ca ton h thng. Phng php c xut y tn dng c ton b u im ca cc ti nguyn tnh ton, v c th tng hiu nng ca h thng. Ngoi ra, bi bo ny cng gm mt s kt qu v vic ci thin hiu nng o c trong h thng th nghim ca chng ti.

I. Gii thiu

Ngy nay, quy m ca cc mng my tnh ngy cng ln hn. Cch thc tnh ton thc s pht trin t nhng m hnh truyn thng my u/cui, khch/ch cho n m hnh khch/ch nhiu lp v m hnh trnh duyt/my ch. Tuy nhin, tt c nhng k thut ny u ph thuc vo mt my ch. Vi s pht trin ca cng ngh phn cng, kh nng tnh ton ca mi my khch tng ln rt nhanh. Mc d, kh nng tnh ton ca mi my khch nh hn nhiu cc my ch hiu nng cao, nhng s ghp nhm ca nhiu my khch c th cung cp mt nng lc tnh ton ln ng k. V trong nhiu trng hp thm ch cn c th vt qua c cc my ch hiu nng cao. Phng thc P2P l mt phng thc tnh ton c pht trin t nhng nm u ca thp k 1990 v gn y c s dng v cng rng ri. Kh nng ca phng thc P2P trong vic x l nhng cng vic phn tn din rng, lm tha mn nhng yu cu trong s pht trin ca mng. Phng thc ny cung cp cho chng ti mt hng tip cn gii quyt vn qun l qu trnh pht trin phn mm.

Vng i pht trin phn mm thc t l mt qu trnh hon thin tt c cc loi ti liu lin quan ti phn mm. Ti liu v m ngun c lu di dng cc tp tin. Nhng h thng qun l k ngh phn mm hin ny u c mt my ch hon thnh nhng nhim v thit yu trn. Tuy nhin, vic pht trin phn mm din rt rng gp phi nhng kh khn ng k trong vic qun l mt s lng ln cc tp tin. Nhng cng c dng trong qun l m ngun c th k n nh Win CVS, VSS(Visual SourceSafe), Tt c u s dng v tun theo nhng phng thc qun l c in k trn. Vi s m rng dn dn ca phn mm trn din rng, nhng cng c ny s khng cn ph hp cho vic pht trin nhng phn mm phc tp. Thm vo , v nhng l do bo mt nhng ngi pht trin c th nm sau nhng tng la khc nhau v do c th phi s dng cc phng thc VPN kt ni vi my ch trung tm. iu ny rt bt tin cho nhng ngi pht trin cng nh e da s an ton ca h thng.

V nhng l do trn, chng ti xut mt gii php mi qun l ton b nhng tin trnh trong pht trin phn mm s dng k thut P2P. Mi im (Peer) thuc mt nhm cung cp dch v. V d vi mt ti liu xc nh, vic to ra mi phin bn mi s ch l gi mt bn miu t tm tt ti my ch mc lc. Tp tin thc s s khng cn gi ti my ch. Trong cng thi gian , cho nhng ngi pht trin c th nhn ton cc c qu trnh pht trin phn mm v hiu v tin trnh theo thi gian thc, chng ti s s dng mt phn ca cng ngh trc quan ha, theo cc tham chiu [9]-[14] trong h thng ca chng ti. Chng ti cng gii thiu trong bi bo ny cc khi nim v vai tr(role) v ti liu c ch (interested document) gip mi peer cung cp cho nhng peer khc cc dch v lin quan ti ti liu ni b ca mnh.

II. Tm lc cch tip cn

Trong tin trnh pht trin phn mm, nhng yu cu thay i thng xuyn, do rt kh cho ngi dng a ra ton b cc yu cu ngay t u. Trong nhiu trng hp, nh pht trin tn nhiu thi gian v cng sc trong vic lp trnh. H khng c nhiu thi gian sa li nhng mu h thng c lin quan, hay nhng bng biu c to ra bi cc cng c c dng trc . iu ny c th to ra s mu thun gia nhng ti liu, bng biu c to ra v nhng m ngun thi im hin ti. T gy nhiu im rc ri trong bo tr h thng. D nhin, c mt s phng php c th gii quyt vn v tnh nht qun ny. Tuy nhin s l khng th yu cu tt c mi ngi trong d n phi t tiu chun pht trin phn mm cao. iu ny t ra yu cu rng mi trng pht trin phn mm v cc cng c qun l phi d dng s dng vi phn ln nhng ngi pht trin. Hn na, kin trc h thng da trn Client/Server c th s to ln my ch phi chu ti ln, v do ton b d n s tnh trng ri ro cao khi my ch qu ti. V d, mt my ch no gp s c th s gy nh hng ti ton b tin trnh pht trin ca d n, v c th to ra nhng mt mt khng th nh gi c.

Do , trong bi bo ny chng ti xut k thut da trn P2P qun l ton b k ngh phn mm. Trong cch tip cn ca chng ti, mi peer s ch chy nhng dch v thuc v nhm ca n, v thc hin nhng dch v ty thuc vo ti ca my v kh nng phn hi ca n ti mng. T vic qun l m ngun mt cch tng th, vic to ra mi phin bn mi ca ti liu s to ra mt phin bn trong dch v d liu cc b ca nhm peer, m khng cn gi ti liu n my ch. Mi nhm s chu trch nhim qun l nhng h thng con ca n v ton b h thng s c qun l bi my ch mc lc.

H thng qun l k ngh phn mm c gii thiu y s lm rt nhiu cng vic trong tin trnh qun l cng ngh phn mm. N khng ch lm cho vic qun l pht trin tr ln thun li hn m cn cho php mi peer s dng c ton b sc mnh tnh ton ca mnh. Vi hiu nng cao ca ton b h thng, vic trc quan ha 3D ton b h thng l hon ton c th.

Kin trc hnh hc ca ton b h thng s c ch ra trong hnh 1 pha di. Ton b h thng ch cn mt my ch mc lc (Catalog server), c th gi l Super Peer (siu peer), gi ton b nng lc tnh ton ca my ch . Cng vic chnh ca my ch mc lc gm hai nhim v sau. Mt l ng vai tr mt ni lu tr thng tin v nhm nh l cu hnh ca nhm v cc dch v. Khi mt nhm c ci t, mt bn sao chp cc thng tin ca nhm s c gi v my ch. Mt nhim v khc l thc hin vic iu khin ti liu nh ch mc cc chc nng. My ch mc lc khng cn phi lu tr vt l cc ti liu, nhng n phi c mt s thng tin tm tt v ti liu. Cc peer c phn tn cn bng trong ton mng, v chng s thuc v nhng nhm logic khc nhau bi v chng thuc nhng nhm mng khc nhau. Cc peer c nh v trong cng mt nhm s cung cp cng cc dch v ra bn ngoi.

Hnh 1 M hnh chung ca Qun l phn mm da P2PIII. Cc lp ca m hnh qun l da trn P2P

H thng c da trn nn tng JXTA (c nu gii thiu trong phn M rng), v c trin khai vi ngn ng Microsoft C#. Ton b h thng c th chia lm 3 lp: lp nn tng c bn (Basic platform layer), lp dch v (Service layer) v lp ng dng (Application layer).

Hnh 2 Cc lp ca m hnh qun l da trn P2PIII.1. Lp nn tng c bn

M hnh Client/Server truyn thng c mt u im hin nhin l d liu tp trung nn d qun l. Tuy nhin, khi s dng k thut P2P trong h thng qun l phn mm ca chng ti, th do cc ti nguyn tng i phn tn nn kh trong vic qun l chng s tng ln. Bt c thi im no th mt peer cng c th gia nhp vo mng hoc ri khi mng. iu ny cn n mt giao thc m s lm cho mt s kin xy ra vi peer ny s c bit n c bi nhng peer cn li. d kim sot, h thng ca chng ti s khng cung cp kh nng ng k cc peer on-line (trc tuyn). Nhng ngi qun l d n s ng k mt peer vi mt ID (nh danh) v nhm. Khi h thng P2P khi ng, mi peer trong mng s c tm kim nhm m n thuc vo bng mt gi tr duy nht Peer ID. Sau khi vt qua bc kim tra s hp l, peer s nm trong mng P2P. Vo thi im m peer ri khi mng, n s gi mt bn tin ti my ch mc lc thay i trng thi ca bn thn n. My ch mc lc s duy tr bng trng thi cho tt c cc peer, qun l peer no ang chy.

III.2. Lp dch v

Giao tip trong h thng c da trn cc bn tin v cc tin qung b. Lp dch v c nhim v chnh l phn tch hng lot cc cu lnh n t lp ng dng bng cch tch cc bn tin v cc tin qung b t dng XML, chnh sa chng v chuyn chng cho nhng dch v c th trong lp nn tng c bn. Lp dch v ny thc hin y vic gii quyt cc tin qung b, v gii quyt giao thc bng cch dng giao thc JXTA. N ging nh l mt cu ni nm gia lp ng dng v lp nn tng c bn.

III.3. Lp ng dng

Da trn mng P2P, bng cch s dng cc dch v lp dch v c lp dch v cung cp, lp ng dng c th thc hin nhng chc nng sau y: iu khin phin bn trong qun l m ca k ngh phn mm, hin th phn mm trong tin trnh pht trin, qun l cc vai tr (khi nim c nh ngha trong h thng qun l k ngh phn mm ca chng ti), v..v Mc ch ca chng ti l giao tip v qun l, nhiu ng dng khc ca lp ny c th thc hin bi mt dch v web.

IV. Nhng cng ngh ch cht

IV.1. Cng ngh qun l da trn nhm cc Peer

Trong mt i pht trin phn mm trn din rng c nhiu nhm pht trin khc nhau, v cc thnh vin trong mi nhm cng tc hon thnh tng phn ca cc chc nng. Trong mi trng pht trin phn mm, cc thnh vin trong cng mt nhm thng c quan tm tng t nhau v c mi quan h gn gi. Thng th, cc dch v v ti liu hay d liu m c h s dng thng rt ging nhau. Do , cc nhm peer c to ra cho nhm con ca d n. Khc vi trong JXTA ni m nhm peer l bo v o (virtual guard), tc 1 nhm o, trong h thng ca chng ti, kiu bo v o ny c n nh vi mt nhm d n thc. iu ny lm cho nhm tr ln c th hn, ng thi dch v v d liu ca nhm tr ln thch hp hn. Khi mt peer ng k trong mng, dch v nhm s l nhng thc th c th m tt c cc thnh vin trong nhm c th ti thm c. Mi Peer s cung cp vic kim tra hp l, phc v ng nhp vo mng. Trong cc nhm dch v v d liu, dch v nhm s c coi nh l mt im iu khin n vi hnh vi khng i, tc mi peer trong nhm u cung cp cc dch v ca nhm. Sau , cc thnh vin hp l s nhn c m ca dch v nhm v d liu. Cui cng, mt bn tin qung b trc tuyn s c tung ra trong mng.

Hnh 3 Hnh nh cc Peer v dch v ca nhmNhng iu trn c trnh by trn hnh 3. Cc peer trong nhm c ghp tuyt i vi nhau, v to thnh mt nhm logic. Peer thuc v cng nhm c cng mt ch s nhm (ID) duy nht, cung cp nhng dch v ng nht v qun l cc d liu ging nhau. Khi mt peer mi tham gia vo trong mng, n s gi mt bn tin qung b tm kim cho nhm ca n. Cc peer trong cng mt nhm s gi cc phn hi sau khi nhn c yu cu. Peer mi s chn ra peer c phn hi nhanh nht ng nhp. Bi v cc dch v trn mi peer cung cp trong mi nhm ging nhau l ng nht, khng k n v tr m peer ng nhp vo, nn cc dch v m mi peer trong nhm cung cp s ging nhau.

Hnh 4 Mt bi kim tra hiu nng

V gii hn ca bng thng mng, v s phc tp ca cu trc P2P, c kh nng s mt hoc b chm tr phn hi. i khi c trng hp khng c peer no trong cng nhm trc tuyn. Khi , nu peer ban u i n khi c phn hi, hiu nng h thng s b gim xung. K thut lease c s dng khc phc tnh trng ny. Mt lease l mt thuc tnh ca nhm v tt c cc peer trong nhm ny s c cng lease. N s xc nh mt khong thi gian. Mi khi mt peer gi i mt yu cu, th ng h s bt u m ngc. Mi khi thi gian gim i ti zero, th yu cu s tht bi, v yu cu s c gi li. Tuy nhin vo thi im ny, yu cu s c chuyn trc tip ti pha my ch mc lc. Bi v nhng thng tin v cc dch v c bn v cc thng tin ng k ca mi nhm c gi ln pha trn my ch mc lc. Khi mt yu cu c gi ti ln u, my ch mc lc s sn sng cung cp thng tin nhm. V vy min l yu cu c gi li mt ln na, ni dung ca n s nhanh chng c phn hi. Do , yu cu xc nh ca peer s c phn hi trong mt khong thi gian no . Tuy nhin, nu lease khng c thit lp ng th h thng c th ri vo tnh trng hiu nng thp bi v n lm tng ti ca my ch mc lc. Mt bi kim tra hiu nng th hin trong hnh 4 pha trn. Vi khong thi gian lease c tng ln th ti ca my ch mc lc s gim xung. Tuy nhin, khi lease ln hn 25 ms, ti ca my ch s hu nh khng thay i.

IV.2. Cng ngh P2P trong vic qun l m ngun

Qun l m ngun l mt phn quan trng trong k ngh phn mm. Nhng hnh thc c in cn rt nhiu my khch (client) kt ni ti my ch nhm thu c nhng phin bn c th ca ti liu hay nhm to ra nhng ti liu mi lin tip nhau. Tuy nhin, vi s m rng v quy m ca phn mm, nhng hnh thc ny khng cn ph hp. Chng ta tm ra nhng phng php qun l da trn kin trc phn tn m c th lm gim ti ca my ch. Xut pht t s ging nhau gia cc ti liu trong cng mt nhm, P2P c th p dng y.

Trong cu trc truyn thng, nhng my ch thng l my c hiu nng cao. V mc ch an ton, nhng ngi qun l sao lu d phng ni dung cc ti liu mt cch nh k. Tuy nhin, trong cu trc P2P c vi im khc bit. Cc ni dung trong mng ph thuc vo ranh gii ca mng. iu ny cng tim n vn v s n nh. V d, mt sai st mt peer no hoc do n tm thi ri khi mng c th to ra mt tm kim khng hp l. gii quyt nhng vn ny, n bo h thng an ton v n nh, v gim thiu s kh khn trong vic qun l h thng P2P, cc khi nim v ti liu c ch (interested document) v vai tr (role) c p dng trng qun l m ngun. Mt vi cc peer c th ng vai cng mt vi tr cho mt ti liu hon chnh nhng chc nng m vai tr nm gi. Vic qun l ti liu c thc hin bng cc vai tr.

nh ngha 1: Ti liu c ch

Nu mt peer l tc gi ca mt ti liu hoc tc nhn m tc gi y quyn ti, ti liu ny s l ti liu ng ch ca peer.

nh ngha 2:Vai tr

Nu mt ti liu l mt ti liu ng ch ca mt peer no , sau ty theo nhng mc quyn hp php khc nhau m peer c, mt vi vai tr s c n nh cho peer. Mt peer c th gi mt vi vai tr ti mt ti liu c ch , v theo cch nh th mt vai tr c th c s hu bi nhiu peer. Nhng peer cng vai tr ca cng mt ti liu c quyn cao nht lm vic vi nhau.

Khi mt ti liu mi hay mt phin bn mi c tung ra bi mt peer, mt bn tm tt s c gi ti my ch mc lc. N s xc nh a ch IP ca peer, tn ti liu, th mc, s phin bn, chiu di, ngy chnh sa, l do chnh sa, v nhiu tham s khc. Sau , ty theo u tin ca cc vai tr v hon cnh thc t lc peer s chn mt peer khc gi i mt bn sao chp. Nu khng c peer khc trong cng mt nhm ang trc tuyn th bn sao chp ny s c gi n my ch mc lc. Bi v my ch mc lc cng hot ng ging nh l mt peer, v ch c n mi thuc mi nhm khc nhau, v do c th thay th cho bt c nhm no. iu ny s dn ti d trong tnh hung xu nht th mi nhm cng phi c mt peer hot ng. Khi bn sao chp c gi ti my ch mc lc th cu trc P2P tr thnh cu trc Client/Server truyn thng.

Khi mt peer kim tra mt ti liu no , n s gi mt yu cu ti pha my ch mc lc. Sau my ch mc lc s gi li mt bn tm tt v danh sch nhng peer m cha ti liu . Sau khi nhn c thng tin trn, peer s c gng nhn nhng tp tin t cc peer trong danh sch nhn c. S c t nht hai peer m s hu hon ton ti liu trong mng. Vi s m rng theo quy m ca vic pht trin phn mm, s lng peer m gi ti liu s ln ln, do , tc thu c mt ti liu khi yu cu n s tng ln. Trong hon cnh tng t, s nh phin bn thm vo s c gi ti my ch mc lc khi m mt phin bn no c tng thm.

Hnh 5 Mi quan h gia tp tin v cc vai trIV.3. Trc quan ha phn mm

Da trn cu trc P2P, s giao tip gia cc peer nhiu hn vic truyn ti cc ti liu v iu khin phin bn. Chng ta c tn dng mt u im ca kh nng tnh ton ca mi peer trong vic thc hin vic trc quan ha h thng. Vi mt ti liu, khi n c kim tra, mt thi im s c ghi li. Khi phn mm c tin hnh trc quan ha, mi peer c th cng lm vic, cc cng vic c phn chia da trn cc vai tr v thng tin v thi gian s c dng n cho vic ng b. Nh vy, mt vi peer s c ghp vi nhau hon thnh mt cng vic chung. iu ny c th lm tng ng k hiu nng ca h thng v to ra kh nng c th trc quan ha phn mm trn din rng.

Vi s pht trin ca cng ngh, th h th ba ca phng php pht trin phn mm s dn dn khng th p ng c nhng yu cu ca mng. N thiu ht i nhng sng kin v c nhng tri thc. Mt th h mi ca phng php pht trin phn mm, c gi l cng ngh da tc t s tr ln ngy cng ph bin hn, c bit l vi s ni ln ca cng ngh li (grid).

Ti liu tham kho [14] gii thiu mt h thng trc quan ha da trn th, m n s tch nhng thng tin t cc CVS v hin th chng bng cc hnh nh tm thi. Nhng thng tin ny c th dng ch ra s pht trin ca mt phn mm. H thng ca chng ti s ng dng k thut tc t biu din v trc quan ha phn mm. Mi peer s ch cn chu trch nhim cho nhng ti liu c ch ca n, n s ch th hin hnh nh vi nhng ti liu c ch ca n. Nu n cn xem hnh nh ca ti liu khc, n ch cn kt ni vi peer chu trch nhim v thu c thng tin, khi thng tin s c chuyn i nh l mt ti liu. Tc t trn mi peer phi chu trch nhim trong vic phn tch nhng d liu ra ca nhng peer ni b, to v v ra cc nhim v cng nh tung ra cc tin qung b.

Interested document ID

Mt nh dng yu cu qung b c hnh dung nh bn trn. Tin qung b s rt s lc. N cha nh danh ca ti liu c ch v nh danh ca vai tr ca peer a ra yu cu. Khi nhng peer khc nhn ra c tin qung b, n s khi ng mt tc v kim tra v nh gi hiu nng ca bn thn. Nu n c CPU v b nh cng hon thnh nhim v, th n s gi li mt tin phn hi. Nu khng, n s khng lm g c. Tin phn hi c nh dng c miu t nh sau:

true/false

Nu ti liu m m nh danh (FileID) ca n cng l ti liu c ch ca peer phn hi, th trng IsIntersted s l true (ng), ngc li s l false (sai). Peer phn hi s tr li trng IsIntersted cng vi nh danh vai tr ca n.

Sau khi peer yu cu nhn c tin phn hi, n s thc hin mt trong nhng cng vic sau:

a. Nu ti liu l ti liu c ch vi peer phn hi, v hai peer c cng vai tr, peer yu cu s gi mt tin yu cu tr gip m trong xc nh v tr ca m v d liu tng ng.

b. Nu ti liu l mt ti liu c ch vi peer phn hi nhng hai peer khng c cng vai tr th peer yu cu s gi i mt tin nhn yu cu v v tr ca d liu.

c. Nu ti liu khng phi l ti liu c ch vi peer phn hi, v c hai ti liu khng c cng vai tr, peer yu cu s cn gi ra ngoi c m v d liu.

Sau khi peer phn hi nhn c tc v, n s thc thi on m v tr kt qu v cho peer yu cu.

V. Kim tra hiu nng

Chng ti pht trin h thng qun l phn mm xut trong ti liu ny trn nn tng Microsoft .NET v p dng chng trong tin trnh qun l thc s. Ton b d n c khong 250 thnh vin v mi nhm c t nht 10 thnh vin. S lng thnh vin thng xuyn hot ng trong nhm l 50. Bi v tnh a dng trong cc v tr a l, ton b cc nhm ny c kt ni thng qua mng Internet.

Cu trc P2P gim ti cho my ch. Tuy nhin, nhng tin nhn v s hp tc gia cc peer cn phn pht thng xuyn trong mng. iu ny c th to ra s phn mnh v hiu nng, v cc peer chu gnh nng s c th cn chu nng hn. Chng ti kim tra thi gian phn hi cho mt tc v ring l. Hnh 6 l kt qu.

Hnh 6 th kim tra hiu nngD liu trong kin trc Client/Server c thu thp bng cch phn chia cc peer thnh mi nhm mt peer. Ngha l, nu s lng my khch tng ln th thi gian phn hi trong kin trc Client/Server s nhanh chng tng ln. Cng c nhiu my khch th s khc bit v hiu nng gia hai m hnh cng r rng.

VI. Kt lun v hng pht trin trong tng lai

C nhiu nhn t cha chc chn trong h thng k ngh phn mm da trn P2P. Cn phi tn nhiu thi gian v ti nguyn trong vic thc hin nhng thao tc c bn ca h thng. Tuy nhin, khi n c p dng qun l k ngh phn mm, s phc tp hin nhin s gim i. V cc peer trong cng mt nhm peer thc hin cng mt cng on no trong vic pht trin phm mn nn chi ph ca s h tr cc lnh trong mng P2P l rt gii hn, v n s th hin c nhng u im ca h thng P2P.

Khi lng d liu trong 1 h phn tn nh P2P hay Grid l kh ln, vi cc mi lin h phc tp. S dng k thut trc quan ha phn mm, ngha ca d liu s c biu th r rng, gip nh pht trin ch cn tp trung vo logic v quy trnh nghip v.

Cc cng ngh 3D v tr tu nhn to c th p dng trong trc quan ha phn mm. Thm na, cc biu trong cng ngh phn mm, nh biu GANT, c th s dng phn cng v iu khin cc tc v mt cch t ng, ng thi qun l cc peer.

Trong tng lai, chng ti c tng kt hp P2P, k thut tc t v UML vi k thut trc quan ha phn mm, nhm em li h tr ng k hn na cho qun l k ngh phn mm.

VII. M rng

VII.1. Trc quan ha phn mm (Software visualization)

a. Trc quan ha phn mm (software visualization) cung cp hnh nh tnh hoc ng (2D,3D) v thng tin ca phn mm da trn cu trc, kch thc, lch s hoc hnh vi ca phn mm.

Thng tin c dng trc quan ha phn mm:

D liu o lng c t cc hnh ng ca phn mm

D liu t k thut dch ngc (reverse engineering)

Mc ch ca trc quan ha phn mm l nhm h tr ngi dng hiu:

H thng phn mm

Gii thut

Phn tch cc bt thng trong h thng, v d ch ra cc class c kt dnh cao..

b. Cc loi trc quan ha phn mm

2 loi

Cc b:

Trc quan ha m ngun, pht hin khim khuyt trong qu trnh pht trin v bo tr phn mm;

Biu din mi quan h gia cc class trong h thng, nh du cc quan h tim n li v thng bo cho ngi pht trin (Visual Studio 2010 ..)

H thng:

Biu din cu trc c h thng

p dng khai ph d liu trc quan (visual data mining) hoc k thut phn tch trc quan (visual analytics techniques) pht hin cc vn trong h thng.

VII.2. Gii thiu nn tng JXTA (juxtapose)

VII.2.1. Cc vn ca mng ngang hng P2P

Hu ht dch v Internet cung cp ngy nay u da trn m hnh client/server. Theo m hnh ny, mt my khch (client) s kt ni vi mt my ch thng qua mt giao thc nht nh (WWW, FTP, Telnet, email ...). M hnh client/server c rt nhiu im u vit bao gm u im ni bt l mi x l s nm trn server, do s trnh cho client nhng tnh ton nng n.

Tuy nhin, khi Internet pht trin vi tc chng mt nh ngy nay th m hnh client/server pht sinh mt nhc im quan trng. Khi s lng client tng n mt mc no th nhu cu v ti v bng thng tng ln, dn n vic my ch khng c kh nng cung cp dch v cho cc my client thm vo.

gii quyt vn trn v cn nhiu vn khc ca m hnh client/server, cng ngh mng ngang hng P2P (peer to peer technology) c tin tng s l li gii cho cc vn trn.

- u im:

P2P da trn cc c ch nht nh tm kim cc my tnh khc ang c trn mng, P2P cho php cc my tnh ny va ng vai tr l my ch va l my khch cung cp xc nh v cung cp cc dch v c sn trn mng P2P. Theo c ch ny th P2P gii quyt c vn qu ti, cng nh vn server t nhin cht gia chng lm ngng vic cung cp dch v m m hnh client/server thng gp. Nguyn nhn l trong mng P2P, dch v c cung cp bi nhiu im ch khng phi l mt.

P2P cn nhiu u im khc nh tn dng c ti nguyn ca tt c cc my trong mng, c phn b lu lng thng tin hp l trnh tc nghn trn mng.

- Nhc im:

Nhc im ca P2P l v ti nguyn ca mng nm trn cc my tnh c nhn, v khng phi lc no cc my ny cng lin kt vi mng, nn c th dn ti s bin mt ca mt dch v trong khong thi gian nht nh.

Tuy nhin, nhc im ny c th khc phc khi s lng thnh vin trn mng P2P ln, lc s c nhiu im cung cp dch v cho ton mng hn.

- Mt s khi nim ca mng ngang hng

Peer:

Mt Peer l mt nt trong mng P2P, c th l mt my vi tnh, mt my tr gip c nhn (PDA) hay l mt in thoi di ng.

Tuy nhin, nh ngha trn cha tht s bao qut c khi nim peer, v mt thit b lin kt vi mng P2P c th c nhiu peer chy trn n.

nh ngha peer : "Peer l mt phn trong mng P2P c kh nng th hin mt chc nng hu ch v truyn t kt qu ca cng vic cho cc phn khc ca mng mt cch trc tip hoc gin tip".

Phn loi da trn cng vic m 1 peer m nhim:

Simple peer: l 1 peer bnh thng trong mng P2P, n c chc nng nh l mt ngi dng cui (end-user). Simpler peer s cung cp dch v cho cc peer v cng nhn c cc dch v theo chiu ngc li. Tuy nhin, trong thc t thng cc peer ny nm trong mt mng ring bit khc, hoc l nm sau tng la, nn cc peer khc s kh c kh nng giao tip trc tip vi simple peer.

Rendezvous (im hn) peer: rendezvous peer cng l mt peer, tuy nhin n lun nm ngoi cc mng ring. N m nhim chuyn tip cc thng ip tm kim peer (discovery requests) ti cc simple peer.

Router peer : l peer cung cp cc c ch chuyn thng tin giao tip gia cc peer, cho php cc thng tin ny vt qua tng la hoc cc thit b NAT (Network Address Translation).

Peer Group

L mt nhm cc peers c cng mt mc ch hay dch v. Cc peers trong 1 Group s chia s thng tin cho cc peers khc trong group, m cc peers ngoi Group khng th tip cn c.

Hai c im ca Peer Group l chia s cc ng dng v tnh bo mt, bao gm chng nhn 1 peer l thnh phn ca 1 group.

Network Transport

L cch thc m cc peer c th truyn ti d liu cho nhau. Cc khi nim v network transport bao gm:

Endpoints : l im ngun hoc im cui ca thng tin c truyn ti. N bao gm vic gi v nhn d liu

Pipes: l mt knh thng tin o c lp ra kt ni 2 hoc nhiu hn cc peers vi nhau.

Messages: cha ng thng tin c truyn qua pipe t 1 endpoint ny ti 1 endpoint khc

Service

Dch v y c hiu theo ngha l cc chc nng m mt peer c th thc hin 1 cng vic c ch cho mt peer khc, gm 2 loi : peer service v peer group service.

Advertisement

Advertisement cho bit 1 peer l c trn mng hay khng. Advertisement cha ng thng tin v chnh peer , ging nh thng tin qung co. Khi mt peer ng nhp vo mng, n s gi cc advertisement i cho cc peers khc bit rng n c trn mng.

VII.2.2. Gii thiu d n JXTA (juxtapose)

Mc d c rt nhiu h thng dch v v ng dng h tr xy dng cc ng dng P2P, nhng v nhiu l do bao gm tnh khng tng thch gia cc mng P2P, nn mi mng ch gii quyt mt phn kh nng thc t ca cng ngh P2P. Sun Mircosystem xy dng d n JXTA, vi hi vng n s l chun cng ngh cho P2P.

Mc tiu ca JXTA l cung cp mt nn tng (platform) m qua cc nh pht trin ng dng c th d dng pht trin cc ng dng P2P mt cch nhanh chng, tin li.

JXTA l d n xy dng mt tp hp cc giao thc c bn cn thit trong mt mng P2P. Vi phin bn JXTA hin ti, n bao gm cc giao thc c bn sau :

- Peer Discovery Protocol- Peer Resolver Protocol- Rendervouz Protocol- Peer Information Protocol- Pipe Binding Protocol- Endpoint Routing Protocol

l 6 giao thc c bn ca JXTA. Mt yu t c bit ca d n JXTA l cc giao thc trn khng ph thuc vo bt c ngn ng lp trnh no, n c nh ngha da trn XML.

Tng quan kin trc JXTA, gm 3 tng:

Platform layer (JXTA Core) : gi gn yu t thit yu nht ph bin cho mng P2P. Bao gm vic xy dng cc khi c sn, c th p dng cc k thut chnh dnh cho mng P2P: tm kim, vn chuyn truyn thng (bao gm vt qua firewall v NAT), hnh thnh cc peers v peer groups, v kt hp tnh nng bo mt. Service Layer: bao gm cc dch v mng cn thit cho s hot ng ca mng P2P, ng thi p dng cho cc tnh nng nng cao trong mi trng P2P. V d v cc service bao gm searching v indexing, diectory, h thng lu tr, chia s file, Application layer: bao gm cc ng dng c tch hp sn nh P2P instant message, chia s ti liu v ti nguyn, P2P email system,.p dng trong kin trc h thng qun l k ngh phn mm da trn P2P:

VIII. Ti liu tham khoBi vit gc : P2P-Based Software Engineering Management;

Tc gi : Lina Zhao1, Yin Zhang, Sanyuan Zhang, and Xiuzi Ye

College of Computer Science /State Key Lab of CAD&CG,

Zhejiang University, 310027, Hangzhou, P.R. China.[1] Peer-to-Peer Working Group Homepage. http://www.peer-to-peerwg.org/index.html.

[2] Napster Homepage. http://www.napster.com .

[3] .NET My Services homepage (formerly code-named Hailstorm).

http://www.microsoft.com/net/netmyservices.asp,

http://www.microsoft.com/net/hailstorm.asp.

[4] Jxta Homepage. http://www.jxta.org .

[5] OpenP2P Homepage. http://www.openp2p.com.

[6] Web Service workshop. http://www.w3.org/2002/ws/.

[7] O'Reilly Network. http://onjava.com/.

[8] UML Software Engineering Organization. http://www.uml.org.cn/.

[9] Jorma S., Marja K., Program Animation Based on the Roles of Variables, ACM Symposium on Software Visualization, San Diego, CA, 2003.

[10] Andrian M., Louis F., Jonathan I.M., 3D Representations for Software Visualization, ACM Symposium on Software Visualization, San Diego, CA, 2003.

[11] Cheng Z., Kenneth L.S., Thormas P.C., Graph Visualization for the Analysis of the Structure and Dynamics of Extreme-Scale Supercomputers, ACM Symposium on Software Visualization, San Diego, CA, 2003.

[12] Niklas E., Philippas T., Growing Squares: Animated Visualization of Causal Relations, ACM Symposium on Software Visualization, San Diego, CA, 2003.

[13] Qin W., Wei W., Rhodes B., Karel D., Bruno D.: Evolve, An Open Extensible Software Visualization Framework, ACM Symposium on Software Visualization, San Diego, CA, 2003.

[14] Christian C., Stephen K., Jasvir N., A System for Graph-Based Visualization of the Evolution of Software, ACM Symposium on Software Visualization, San Diego, CA, 2003.

[15] America Earthquake Grid. http://www.neesgrid.org/.

[16] WANG Q., Dai Y., Tian J., Zhao T., Li X.M., An Infrastructure for Attribute

Addressable P2P Network: Barnet, Journal of Software, 2003, vol 14.

[17] Shi W.Y., Digital City Service Management Mode and Platform Design based on P2PSMS, Degree Paper, 2002, 6.

[18] Tian L.W, Yin C.W., Researching and Implementing of Intelligent Professional Search for Virtual Enterprise, Chinese journal of computers, 2004, vol 3.

Gio vin hng dn: TS H Quc Trung Hc vin thc hin: Nhm 4 - Lp11BCNTT19/20