
- 1 -
B GIÁO DC VÀ ĐÀO TO
ĐI HC ĐÀ NNG
VŨ GIA TRIU
XÂY DNG H THNG QUN LÝ D ÁN PHN MM
S DNG PHƯƠNG PHÁP LP TRÌNH LINH HOT
Chuyên ngành : KHOA HC MÁY TÍNH
Mã s : 60.48.01
TÓM TT LUN VĂN THC SĨ K THUT
Đà Nng - Năm 2012
- 2 -
Công trình ñưc hoàn thành ti
ĐI HC ĐÀ NNG
Ngưi hưng dn khoa hc: PGS.TS. Phan Huy Khánh
Phn bin 1: TS. Huỳnh Hu Hưng
Phn bin 2: TS. Nguyn Mu Hân
Lun văn ñưc bo v ti Hi ñng chm Lun văn
tt nghip thc sĩ k thut hp ti Đi hc Đà Nng vào ngày 04
tháng 03 năm 2012
Có th tìm hiu lun văn ti:
• Trung tâm Thông tin - Hc liu, Đi hc Đà Nng
• Trung tâm Hc liu, Đi hc Đà Nng

- 3 -
M ĐU
1. Lý do chn ñ tài
Hin nay các công ty phát trin phn mm ht sc quan tâm vic
phát trin nhanh sn phm, ñt ñưc tiêu chun quc t và to ñưc
nim tin cho khách hàng. Vic xây dng mt phn mm theo phương
pháp truyn thng là khá xa ri khách hàng. T chc phn mm nhn
yêu cu xây dng, sau mt thi gian, giao cho khách hàng. Khách
hàng ch!ng bit gì v quá trình xây dng phn mm và h không th
tin ch"c r#ng, phn mm có th ñưc xây dng thành công hay
không.
Lp trình linh hot (eXtreme Programming vit t"t là XP) không
phi là cách lp trình sao cho linh hot, mà là mt phương pháp phát
trin phn mm cho phép các d án ñưc hoàn thành nhanh chóng
mà vn ñm bo ñưc yêu cu v cht lưng và d$ dàng trong vic
s%a ch&a, cp nht khi nh&ng yêu cu thay ñ i vào bt c giai ñon
nào c'a d án cho ñn khi d án kt thúc và sn phm ñưc giao cho
khách hàng. Đây là mt phương pháp mi phù hp vi nh&ng công
ty làm gia công phn mm ho(c nh&ng d án nh) t* 10-20 ngưi.
Tt c các d án phn mm dù là áp d+ng phương pháp nào ñi
n&a cũng cn mt h thng hay công c+ ñ qun lý. M-i h thng
qun lý phù hp vi mt phương pháp nht ñ.nh. Tôi ñang làm vic
trong mt công ty gia công phn mm mà / ñó tt c các d án ñu
dùng phương pháp lp trình linh hot. Nhưng ngưi ñng ñu d án
(Project Manager vit t"t là PM) luôn kh s/ vi vic ly yêu cu
khách hàng, phân loi công vic, giao nhim v+ cho thành viên, nhn
báo cáo hàng ngày, qun lý tài liu, qun lý thi gian. Mà tt c
nh&ng vic này không th ñưc qun lý b/i các công c+ qun lý d
- 4 -
án phn mm cũ như Microsoft Project và nht là các công c+ qun
lý d án phn mm cũ không phù hp vi phương pháp lp trình linh
hot.
Microsoft Project là mt phn mm qun lý d án rt ph bin.
Microsoft Project là mt công c+ qun lý d án nói chung, có th
ñưc dùng ñ qun lý d án nhà ñt nào ñó ñ chun b. cho vic xây
dng cao c, mt d án kinh doanh c'a mt công ty nào ñó, thm chí
là mt bài phát biu mà bn chun b. thc hin cũng ñưc coi là mt
d án vì nó có nh&ng ñ(c ñim nht ñ.nh. Cho dù là d án nh) hay
ln, d án phn mm hay nh&ng d án khác ñu cn có mt công c+
ñ qun lý ngun lc, thi gian và chi phí. Nhưng Microsoft Project
không phù hp vi ñăc thù c'a sn xut phn mm mt cách linh
hot ngày nay. Chính vì vy vic xây dng mt h thng qun lý d
án phn mm linh hot là ht sc cn thit.
2. M c ñích nghiên c!u
Đ tài này nh#m m+c ñích:
Tìm hiu các vn ñ liên quan ñn phương pháp lp trình linh
hot
Xây dng mt h thng ñ qun lý các d án phn mm s% d+ng
phương pháp lp trình linh hot
3. Đ"i tư#ng và ph$m vi nghiên c!u
Đi tưng nghiên cu: các giá tr. và các qui t"c c'a lp trình linh
hot. Cách thc t chc và qun lý d án phn mm.
Phm vi nghiên cu: da trên các tài liu, các h thng qun lý d
án phn mm, các gii pháp trong lp linh hot.
4. Phương pháp nghiên c!u

- 5 -
Nghiên cu tài liu: các tài liu v qun lý d án phn mm, các
tài liu v phương pháp lp trình linh hot, các tài liu v phân tích
thit k hưng ñi tưng.
Nghiên cu thc nghim: phân tích ñánh giá phương pháp, xây
dng chương trình, kim th%, ñưa ra nhn xét và ñánh giá kt qu.
5. Ý nghĩa khoa hc và th'c tin c(a ñ tài
V m(t lý thuyt: t ng hp các khái nim liên quan ñn phương
pháp lp trình linh hot, ñ tài s0 xác ñ.nh ñưc kh năng ng d+ng
lp trình linh hot vào qui trình sn xut phn mm. Là cơ s/ lý
thuyt ñ các công ty, các t chc phát trin phn mm áp d+ng.
V m(t thc ti$n: h thng là mt công c+ hiu qu giúp cho PM
kim soát tt ñưc công vic, thi gian, chi phí, con ngưi. T* ñó có
ñưc sn phm phn mm cht lưng cao, ñáp ng ñưc nhu cu c'a
khách hàng và c'a th. trưng
6. B" c c c(a lun văn
Báo cáo c'a lun văn ñưc t chc thành ba chương chính.
Chương 1: Cơ s/ lý thuyt
Chương 2: Phân tích và thit k h thng
Chương 3: Cài ñ(t th% nghim
- 6 -
CHƯƠNG 1
CƠ S LÝ THUY)T
1.1. TÌM HI*U PHƯƠNG PHÁP LP TRÌNH LINH HOT
1.1.1. Lp trình linh ho$t (XP) là gì? T$i sao s+ d ng XP?
Lp trình linh hot là mt tp các giá tr., các quy t"c và các bưc
thc hin, ñ phát trin nhanh mt phn mm cht lưng cao. Đây là
mt phương pháp phát trin phn mm rt linh hot, nó phù hp ñ
phát trin các ng d+ng có kích thưc v*a phi. Mt ñim ñ(c bit
c'a XP là trong quá trình phát trin phn mm, khách hàng tham gia
cùng vi nhà phát trin. Nh ñó, nhà phát trin n"m b"t ñưc các
thay ñ i, các yêu cu mi, làm gim chi phí ñ s%a ñ i h thng.
1.1.2. L,ch s+ phát tri-n c(a XP
1.1.3. Phát th.o mô hình XP
Vòng ñi c'a d án XP gm 5 giai ñon: kho sát (Exploration), lp
k hoch (Planning), l(p ñ bàn giao (Interation to release), sn xut hóa
(productionizing), bo tri và kt thúc (Maintenance and Death)
Hình 1.1: Vòng ñ/i d' án XP
1.1.4. Các m c tiêu và giá tr, c(a XP
1.1.5. Các qui t0c và ho$t ñ1ng c(a XP

- 7 -
Phn hi thông tin
Tính ñơn gin
Đón nhn s thay ñi
Các hot ñng theo XP
Vit mã lnh
Kim th
Nhn ñnh các tác nhân ca h thng
Thit k
1.2. CÁC THÔNG L TRONG XP
1.2.1. T2ng quan v các thông l3 trong XP
XP gm có 12 thông l, ñưc chia thành 4 nhóm, các bưc thc
hin này nhn ñưc t* các bưc thc hin tt nht ñưc ñưa ra trong
công ngh phn mm.
Nhóm các “thông l” vi s phn hi thông tin liên tc gm:
lp trình theo c(p, lp k hoch thc hin, phát trin hưng vào vic
kim tra, làm vic theo nhóm
Nhóm các “thông l” là quá trình liên tc: kt hp thưng
xuyên, ci tin thit k, hoàn thin theo t*ng bưc nh)
Nhóm các “thông l” thc hin vi s hiu bit chung ca
nhóm lp trình: tiêu chun mã hoá, s/ h&u chung mã lnh, thit k
ñưc làm ñơn gin, h thng trong sut
Nhóm các “thông l” th hin li ích cho các lp trình viên: tc
ñ làm vic v*a phi
1.2.2. Các thông l3 trong XP
1.2.2.1. Tiêu chun mã hóa và s hu chung mã lnh
Tiêu chun mã hoá ñưc chp nhn da trên mt tp các lut, mà
toàn b nhóm phát trin ñng ý thc hin theo ñó trong c d án.
- 8 -
Tiêu chun mã hoá xác ñ.nh mt kiu và mt ñ.nh dng thích hp
cho mã ngun, trong phm vi ngôn ng& lp trình ñã ñưc la chn.
Tiêu chun mã hoá có th là các quy ưc chun ñưc ch1 rõ b/i ngôn
ng& lp trình (ví d+: các quy uc v mã lnh ñi vi ngôn ng& lp
trình Java), ho(c ñưc la chn theo thói quen c'a nhóm phát trin.
S hu chung mã lnh
S/ h&u chung mã lnh nghĩa là mi ngưi ch.u trách nhim chung
v mã lnh ñưc to ra, mi ngưi trong nhóm lp trình ñu ñưc
phép s%a ñ i mt ñon mã lnh bt kỳ hay b sung vào mt ñon mã
lnh mi. Hot ñng này ñưc ñưa ra b/i vic lp trình theo c(p.
1.2.2.2. S kt hp thưng xuyên, ci tin thit k
Nhóm phát trin nên luôn luôn làm vic trên phiên bn mi nht
c'a phn mm. T* các thành viên trong các nhóm khác nhau có th
có các phiên bn ñã lưu li nh&ng s%a ñ i và ci tin khác nhau, h
c g"ng xem xét mã lnh trong phiên bn chương trình hin ti trong
thi gian khong vài gi ñng h, ho(c khi mt tín hiu l-i xut hin.
S kt hp thưng xuyên s0 tránh ñưc s chm tr$ sau chu kỳ d
án, gây ra b/i ln kt hp.
Ci tin thit k
B/i XP ch1 'ng h vic lp trình cho nh&ng vn ñ cn thit /
thi ñim hin ti, và vic thc hin vic ñó sao cho càng ñơn gin
càng tt. Đôi khi ñiu này s0 có kt qu ñi vi mt h thng ñang b.
ñình tr. Mt trong nh&ng ñiu ñáng chú ý c'a vn ñ này là yêu cu
ñi vi vic bo trì: các s%a ñ i v chc năng ñòi h)i s%a ñ i nhiu
bn sao chép mã lnh. Mt vn ñ ñáng chú ý khác là nh&ng s%a ñ i
trong mt phn c'a mã lnh nh hư/ng ñn nhiu thành phn khác.
XP cho r#ng khi xy ra ñiu này, h thng s0 cho bn thy ñ phân

- 9 -
tích li mã lnh b#ng cách s%a ñ i cu trúc, làm cho nó ñơn gin hơn
và ph d+ng hơn.
1.2.2.3. Thit k ñơn gin, các bưc hoàn thin nh
Các lp trình viên nên theo cách tip cn “ñơn gin là tt nht” ñ
thc hin thit k phn mm. Bt c khi nào mt phn mã lnh mi
ñưc vit, lp trình viên nên t h)i mình “có cách nào ñơn gin hơn
vn cho kt qu tương t?”. Nu câu tr li là có, thì cách thc ñơn
gin hơn nên ñưc la chn. Ci tin mã lnh (s0 ñưc trình bày /
phn sau) cũng nên ñưc s% d+ng, ñ làm cho mã lnh phc tp tr/
nên ñơn gin hơn.
Các bưc hoàn thin nh
Vic giao phn mm ñưc thc hin b/i các bưc ñưc quyt
ñ.nh t* trưc. K hoch t*ng bưc ñưc xác ñ.nh khi b"t ñu thc
hin d án. Thông thưng m-i bưc là mt công ñon nh) c'a quá
trình phn mm, nó có th chy mà không ph+ thuc vào các thành
phn s0 ñưc thc hin sau. Các bưc hoàn thin nh) làm cho khách
hàng tin tư/ng vào li ích c'a s tin trin c'a d án.
1.2.2.4. Tc ñ làm vic va phi, h thng trong sut
Là tin ñ thc hin phù hp vi kh năng c'a lp trình viên.
Khái nim này cho bit các lp trình viên và các nhà phát trin phn
mm không nên làm vic hơn 40 gi mt tun. T* khi các chu kỳ
phát trin là các chu kỳ ng"n ñưc kt hp thưng xuyên, dn ñn
toàn b chu kỳ phát trin là thưng xuyên hơn, các d án trong XP
không tuân theo thi gian ñ(c bit nào mà các d án khác yêu cu. 3
ñây cũng ñ cp ñn vn ñ con ngưi s0 thc hin tt nht và sáng
to nht nu ñưc ngh1 ngơi mt cách hp lý.
H thng trong sut
- 10 -
H thng trong sut là mt khái nim, trong ñó các lp và các
phương thc cn ñưc làm ñơn gin, sao cho các thành viên nhóm d
ñoán ñưc chc năng c'a mt lp hay mt phương thc ñ(c bit, mà
ch1 cn nhìn vào tên c'a nó.
1.2.2.5. Lp trình theo cp, làm vic theo nhóm
Làm vic theo nhóm
Trong XP, ngưi dùng không phi là ngưi ch.u toàn b chi phí
xây dng h thng, nhưng thc s là ngưi s% d+ng h thng. XP
cho r#ng, ngưi dùng nên quan tâm ñn vic xây dng h thng /
mi thi ñim và luôn ñ(t sn các câu h)i. Trong trưng hp này,
nhóm phát trin mt h thng qun lý tài chính nên có mt ngưi qun lý
tài chính trong nhóm. Ngoài các “thông l” nêu trên, XP cũng ñưa ra các
k thut ci tin nh#m làm tăng hiu qu c'a mã lnh có sn mà không
làm thay ñ i m+c ñích chung c'a h thng. Các k thut ci tin mã lnh,
cho phép nhóm lp trình s% d+ng các b kim tra t ñng ñ tìm ra các
l-i và x% lý chúng mt cách hiu qu.
1.2.2.6. Lp k hoch d án
Quá trình lp k hoch cơ bn trong XP là lp k hoch d án.
Phn này s0 gii thích quá trình lp k hoch d án b#ng cách s%
d+ng các mô hình tin trình.
Quá trình lp k hoch ñưc chia làm 2 giai ñon:
Lp k hoch tng bưc
a. Giai ñon tìm hiu
b. Giai ñon chuyn giao
Lp li vic lp k hoch
a. Giai ñon tìm hiu
b. Giai ñon chuyn giao

