Professional Documents
Culture Documents
BI TP TUN 1 1. Xem li v trnh by cc m hnh pht trin phn mm, cc giai on pht trin trong mi m hnh hc mn NMCNPM Cc m hnh pht trin phn mm: M hnh thc nc M hnh mu M hnh xon c => M hnh thc nc ci tin Cc giai on pht trin trong mi m hnh hc: M hnh thc nc c in:
M hnh mu:
M hnh xon c:
2. Nghin cu m hnh Agile, v cc i din cho phng php lun ny nh XP, Scrum ... Nghin cu m hnh Agile Phng thc pht trin phn mm linh hot (Agile Software Development) sau y c gi vn tt l Agile tr nn ph bin trong ngnh pht trin phn mm. Vi nhng phng phc t chc v trin khai mi l, nng ng v linh hot, Agile thu ht s quan tm ln ca cng ng lm phn mm Agile l cch thc lm phn mm linh hot lm sao a sn phm n tay ngi dng cng nhanh cng tt cng sm cng tt v c xem nh l s ci tin ( mt kha cnh no ) khi t cnh nhng m hnh c nh M hnh Thc nc (waterfall) hay CMMI. Tuyn ngn ca Agile C nhn v s tng h quan trng hn quy trnh v cng c Sn phm xi c quan trng hn ti liu v sn phm Cng tc vi khch hng quan trng hn m phn hp ng Phn hi vi s thay i quan trng hn bm theo k hoch Bn tn ch trn da trn 12 nguyn tc: Tha mn yu cu ca khch hng thng qua vic giao hng sm v lin tc
Cho n vic thay i yu cu, thm ch l nhng thay i yu cu mun Giao phn mm chy c cho khch hang mt cch thng xuyn(giao hang tun hn l hang thng) Nh kinh doanh v k s lp trnh phi lm vic cng nhau hang ngy trong sut d n Cc d n c xy dng xung quanh nhng c nhn c ng lc. Cung cp cho h mi trng v s h tr cn thit v tin tng h hon thnh cng vic Trao i trc tip tip mt i mt l phng php hiu qu nht truyn t thng tin Phn mm chy c l thc o chnh ca tin Pht trin bn vng v duy tr c nhp pht trin lin tc Lin tc quan tm n k thut v thit k ci tin s linh hot S n gin cn thit-ngh thut ti a ha lng cng vic cha hon thnh Nhm t t chc Thch ng thng xuyn vi s thay i Cc i din cho phng php lun Agile Scrum: Scrum l mt trong cc khung lm vic linh hot(agile framework) ph bin nht hin nay c dung trong pht trin cc sn phm phn mm t n gin n phc tp. Da trn l thuyt qun l thwucj nghim(empirical process control), Scrum s dng c ch lp(iterative) v tng trng(incremental) ti u ha tnh hiu qu v kim sot ri ro. Ba chn(hay gi tr ct li )ca Scrum: Minh bch Thanh tra Thch nghi Ba vai tr quan trng Product Owner(ch sn phm) L ngi chu trch nhim ca s thnh cng ca d n, ngi nh ngha cc yu cu v nh gi cui cng u ra ca cc nh pht trin phn mm Scrum Master
L ngi c hiu bit sau sc v Scrum v m bo nhm c th lm vic hiu qu vi Scrum Development Team(i sn xut hay nhm pht trin) Mt nhm lin chc nng t qun l tin hnh chuyn i cc yu cu c t chc trong Product Backlog thnh chc nng h thng Bn cuc hp(4 event) Sprint Planning(Hp k hoch Sprint) Daily Scrum(Hp Scrum hng ngy) Sprint Review(Hp s kt Sprint) Sprint Retrospective(Hp ci tin Sprint) Cc cng c Scrum Product backlog Sprint backlog Burndown Chart Scrum vn hnh nh th no? Product Owner to ra Product Backlog cha cc yu cu ca d n vi cc hng mc c sp theo th t u tin. i sn xut s thc hin vic hin thc ha dn cc yu cu ca Product Owner vi s lp i lp li cc giai on nc rt t 1 n 4 tun lm vic (gi lSprint) vi u vo l cc hng mc trong Product Backlog, u ra l cc gi phn mm hon chnh c th chuyn giao c (Potentially Shippable Product Increment). Trc khi c nhm cng ua nc rt trong Sprint, i sn xut cng hp vi Product Owner lp k hoch cho tng Sprint. Kt qu ca bui lp k hoch (theo cch lm ca Scrum) l Sprint Backlog cha cc cng vic cn lm trong sut mt Sprint. Trong sut qu trnh pht trin, nhm s phi cp nht Sprint Backlog v thc hin cng vic hp hng ngy (Daily Scrum) chia s tin cng vic cng nh cc vng mc trong qu trnh lm vic cng nhau. Nhm c trao quyn t qun l v t chc ly cng vic ca mnh hon thnh cng vic trong Sprint. Khi kt thc Sprint, nhm to ra cc gi phn mm c chc nng hon chnh, sn sng chuyn giao (shippable) cho khc hng. Bui hp S kt Sprint (Sprint Review) cui Sprint s
gip khch hng thy c nhm c th chuyn giao nhng g, cn nhng g phi lm hoc cn g phi thay i hay ci tin. Sau khi kt thc vic nh gi Sprint, Scrum Master v nhm cng t chc hp Ci tin Sprint (Sprint Retrospective) tm kim cc ci tin trc khi Sprint tip theo bt u, iu ny s gip nhm lin tc hc hi v trng thnh qua tng Sprint. Cc Sprint s c lp i lp li cho ti khi no cc hng mc trong Product Backlog u c hon tt hoc khi Product Owner quyt nh c th dng d n cn c tnh hnh thc t. Do s dng chin thut c gi tr hn lm trc nn cc hng mc mang li nhiu gi tr hn cho ch d n lun c hon tt trc. Do Scrum lun mang li gi tr cao nht cho ngi u t cho d n. Do quy trnh lun lun c ci tin, nhm Scrum thng c nng sut lao ng rt cao. y l hai li ch to ln m Scrum mang li cho t chc.
XP XP (vit tt ca eXtreme Programming c ngi dch ra l Lp trnh Cc hn), l mt phng php pht trin phn mm trong h Agile, rt c nh hng v c s dng rng ri. Mc ch cui cng ca XP l pht trin nhng phn mm vi cht lng cao nht, vi chi ph thp nht, t li nht, siu nng sut v ti a ha li nhun u t (ch Extreme). XP lm iu ny thng qua cc Bn gi tr nh hng (values), Nguyn tc (principles) v mi hai K thut thc hnh (Practices) c th theo nh hng ca trit l Agile. Cc gi tr XP:
Giao tip (Communication): mi ngi trong nhm trao i trc din hng ngy, trong tt c cc cng vic t phn tch yu cu cho ti lp trnh
Tnh n gin (Simplicity): ch lm nhng g cn thit, khng hn. Lm nhng g cn thit cho th hin ti, khng phi tng lai qu xa, vi nhng bc nh cn ch v gin lc ti a cc sai hng. Phn hi (Feedback): cam kt nghim tc lin tc bn giao cc phn mm chy tt vo cui cc phn on (iteration) ngn. Lun c th demo phn mm chy tt t sm v thng xuyn, lng nghe phn hi t cc bn v thc hin cc iu chnh cn thit. Tn trng (Respect): mi ngi t cm thy v c tn trng v h l nhng thnh vin quan trng ca nhm. Mi ngi u ng vai tr vo vic to ra cc gi tr khng k cng vic nh th no. Can m (Courage): lun ni ng v tin v c lng. Khng cn thit phi s iu g bi v thnh vin khng lm vic c c. Mi khi c thay i, nhm s c cc hnh ng cn thit thch ng. Can m trong vic vt i nhng g khng thc s cn thit na (m ngun, giy t )
Cc nguyn tc XP:
Phn hi nhanh (Rapid Feedback): lun lng nghe phn hi t nhiu pha, ly c phn hi mt cch nhanh nht, tm hiu chng v a nhng hiu bit vo trong h thng nhanh nht c th. Lp trnh vin c th hc c cch thit k, lp trnh, kim th tt nht trong phm vi tng pht ch khng phi hng ngy, tun hoc thm ch hng thng. Gi nh n gin (Assume Simplicity): i x vi cc vn nh th chng c th gii quyt bng nhng gii php n gin n ng ngn. y c th l nguyn l kh xi nht ca XP. Thay i tim tin (Incremental Change): khng thay i c l, m ch thay i mt t trong thit k, chc nng. Sng chung vi Thay i (Embracing Change): chin thut tt nht l tn trng tt c cc kh nng trong khi gii quyt cc vn p lc nht. Cng vic cht lng cao (Quality Work): phi lun u t c c cht lng cng vic cao nht, n mc hon ho
Chi thng (Play to Win) Th nghim c th (Concrete Experiments) Giao tip m v trung thc (Open, honest Communication) Lm vic ph hp vi bn nng ca con ngi, khng phi chng li chng (Work with people's instincts - not against them) Cc trch nhim c tha nhn (Accepted Responsibility) Thch ng cc b (Local Adaptation) Di chuyn nh nhng (Travel Light) o trung thc (Honest Measurement)
code, phn bit vi test code-cc m lnh vit ra kim th) phi c vit bi hai lp trnh vin trn mi my tnh. S hu tp th (Collective ownership) Bt k ngi no u c th thay i bt k dng lnh no vo bt k thi im no. Tch hp lin tc (Continuous integration) Tch hp v xy dng (build) h thng nhiu ln trong ngy, mi khi mt tc v c hon thnh. Lm vic 40 gi mt tun Khng lm vic nhiu hn 40 gi mt tun. Khng bao gi lm vic qu gi n tun th hai. Khch hng ti ch (On-site customer) Kt hp mt ngi dng tht vo i ng pht trin, lm vic ton thi gian tr li cc cu hi cho i pht trin. Cc chun mc lp trnh (Coding standards) Lp trnh vin vit tt c cc m lnh tun theo nhng quy tc nhm khuyn khch giao tip thng qua m lnh.