You are on page 1of 24

(CONTINUOUS INTEGRATION SYSTEM WITH JENKINS)

Trnh by: Lm Minh Tr Email:lucky.lmtri@gmail.com Cn Th: 06/2012

NI DUNG TRNH BY
I. GII THIU H THNG TCH HP LIN TC II. GII THIU JENKINS III. VAI TR CA JENKINS TRONG CI IV. LI CH JENKINS MANG LI

V. NH HNG PHT TRIN (CI, AGILE)


VI. KH KHN KHI P DNG CI VII. THO LUN VIII. DEMO
2

I.GII THIU H THNG TCH HP LIN TC


I.1 So snh m hnh pht trin phn mm truyn thng v hin ti
Waterfall and Similar Methodology Others Agile and Similar Methodology

Requirements Analysis Design Coding Testing

Incremental Spiral Cocomo

Cocomo II
RAD RUP

Maintenance

I.GII THIU H THNG TCH HP LIN TC (TT)


I.1 So snh m hnh pht trin phn mm truyn thng v hin ti (TT)
Waterfall and Similar Methodology
Hng Ch

Agile and Similar Methodology


Hng Chp

k hoch (plan driven)

gi tr (value driven).

ph hp khi yu cu khch hng khng thay i .


To

nhn thay i v cho php x l thay i nh nhng v nhanh chng. nh x l v xc nh c kt qu qua tng lt ct. Qu trnh chia nh x l c lp li cho n khi sn phm hon tt.
Chia To

ra phn mm nhng cha bit c gi tr s dng (khng ng yu cu).


Mt

nhiu thi gian v chi ph cho vic quay li chnh sa cc giai on trc.
Thng

ra phn mm c gi tr v c trin khai cho khch hng s dng mt cch sm nht.


Thng

xuyn giao tip v nhn phn hi t pha khch

tr tin do k hoch khng st vi yu cu v khi yu cu thay i.


Ri

hng.
Lin

tc ci tin cho cc giai on (lt ct) sau.

ro cao.

Gim

thiu ri ro.
4

I.GII THIU H THNG TCH HP LIN TC (TT)


I.1 So snh m hnh pht trin phn mm truyn thng v hin ti (TT).

(Hin ti)

(Truyn thng)

I.GII THIU H THNG TCH HP LIN TC (TT)


I.2 Chi tit workflow ca Agile methodology thng qua Scrum methodology.

I.GII THIU H THNG TCH HP LIN TC (TT)


I.2 Chi tit workflow ca Agile methodology thng qua eXtreme Programing (XP) methodology.

I.GII THIU H THNG TCH HP LIN TC (TT)


I.3 nh ngha h thng tch hp lin tc (Continuous Integration ). Phn mm pht trin theo m hnh Agile cn c gi l phn mm tch hp lin tc (Continuous Integration ). H thng tch hp lin tc l thnh phn sng cn ca mt Agile team. Trch dn nh ngha ca Martin Fowler Continuous Integration is a
software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is veried by an automated build (including test) to detect integration errors as quickly as possible. Many teams nd that this approach leads to signicantly reduced ntegration problems and allows a team to develop cohesive software more rapidly.
8

I.GII THIU H THNG TCH HP LIN TC (TT)


I.4 Minh ha h thng tch hp lin tc

Trung tm ca h thng tch hp lin tc

I.GII THIU H THNG TCH HP LIN TC (TT)


I.5 Thc tin ca h thng tch hp lin tc (Practices of Continuous Integration)

Qun l phin bn (source control and version control ). T ng build bao gm test. i ng pht trin thng xuyn chuyn (commit) source v ni lu tr chnh (mainline). Mi khi code c thay i s build li (mainline) thng qua build server. Bo li cho ngi lp trnh gy li v qun l d n. Pht hnh phin bn hon chnh cho khch hng khi khng cn li. T ng phn phi phin bn mi n khch hng. Mi ngi c th nhn thy nhng g xy ra (thay i, li) xem xt v gii quyt.

10

I.GII THIU H THNG TCH HP LIN TC (TT)


I.6 Thun li v kh khi p dng h thng tch hp lin tc Kh khn:
Cn thi gian thit lp h thng ban u. i hi qun l d n, ngi lp trnh, ngi kim nh phi am hiu m hnh pht trin phn mm Agile, h thng tch hp CI, cch s dng cc cng c h tr cho Agile v CI. Chi ph thit b phn cng (cc server cho CI).

11

I.GII THIU H THNG TCH HP LIN TC (TT)


I.7 Ti sao cn h thng tch hp lin tc?

Gim thiu ri ro do li c pht hin sm. Gim thiu s lp li cho cc qu trnh To phn mm c gi tr s dng sm nht c th v sn sng trin khai mi lc mi ni. Cung cp ci nhn xuyn sut tng quan v c th cho tng giai on. Nng cao k nng ca i ng nhn vin pht trin phn mm. Ci thin cht lng phn mm.

12

I.GII THIU H THNG TCH HP LIN TC (TT)


I.8 Nhng cng c c s dng trong h thng tch hp lin tc

Code Repositories

SVN, Mercurial, Git, Visual Source Safe Jenkins, Bamboo, Cruise,Hudson, JUnit,Cucumber , CppUnit Mantis, TestLink, Redmine Nexus, Artifactory, Archiva

Continuous Build Systems

Test Unit Frameworks

Test report website

Artifact Repositories

And others

13

II. GII THIU JENKINS

II.1 Gii thiu


L mt ng dng web application m ngun m (c cng ng pht trin theo giy php MIT) ng vai tr my ch build & test ca h thng tch hp lin tc. Jenkins c vit bng Java nn Jenkins c th kt hp c vi hu ht cc cng c khc ca h thng tch hp lin tc vi nhiu nn tng khc nhau v c bit l tng mobi application (android).

Tin thn l Hudson c vit bi Kosuke Kawaguchi ti Sun, k t khi Sun c mua li bi Oracle vo nm 2010, mt b phn pht trin Hudson tch ra pht trin ring v c t tn l Jenkins.
c s dng rng ri v c pht trin ci tin lin tc bi cng ng m ngun m t nhiu gii thng :InfoWorld Bossies Award, 2011 O'Reilly Open-Source Award, 2011
ALM&SCM, SDTimes 100, 2010, 2011 ,GlassFish Community Innovation Award 2008, Duke's Choice Award 2008

c cc t chc ln tin dng: Ebay,Apache, NASA,Boeing,Mozilla, Linked in,


14

II. GII THIU JENKINS (TT)


II.2 c im ca Jenkins

D dng ci t v s dng. a nn tng. H tr cho nhiu cng ngh pht trin phn mm. c s dng rng ri. D m rng. D dng lin kt vi cc cng c khc ca h thng tch hp lin tc thng qua cc plug in. Min ph.

15

III. VAI TR CA JENSKIN TRONG CI


III.1 L tri tim ca CI
L CI server (build & test server) gi v tr trung tm tri tim cho mi hot ng ca h thng.

16
Khch hng, Kim nh,

III. VAI TR CA JENSKIN TRONG CI (TT)


III.2 Khp kn quy trnh pht trin phn mm mt cch t ng. Nh vo vic h tr a nn tng, cng ngh Jenkins gip khp kn quy trnh pht trin phn mm mt cch t ng theo m hnh Agile ni chung v h thng tch hp lin tc ni ring. Vi hn 400 plugin v c pht trin thm khng ngng Jenkins tr thnh tr th c lc cho h thng CI.

17

III. VAI TR CA JENSKIN TRONG CI (TT)


III.2 Khp kn quy trnh pht trin phn mm mt cch t ng (TT).
Source control

Tool SVN, VSS, CSV, GIT, Team Foundation Server

Test Tool TestLink, Junit.Nunit, MSTest

Build Tool Ant, Maven, MSBuild, Cmake

Virtual Machines

Notification

Jenkins Static Analysis

Developer And others team

Customer

Deploy Server

Code Coverage

18

IV. LI CH JENKINS MANG LI

Tt c vi Jenkins hu nh l t ng. Gim thi gian v chi ph. Nng cao nng lc nhn vin? C th tm gn li ch Jenkins mang li l FESS. Faster. Easier. Safer. Smarter.

19

V. NH HNG PHT TRIN AGILE & CI?


1

p dng mt phn ca Jenkins


Build server Version control

3 4

p dng test unit Qun l d n theo m hnh Agile p dng tt c nhng h tr ca Jenkins trong CI

20

VI. KH KHN KHI P DNG AGILE & CI?

Thay i quan nim c v qun l d n? Thit lp quy trnh ban u ph hp? Thit lp h thng ? K nng ca qun l d n, lp trnh vin, kim nh vin?

21

VII. THO LUN

?
22

VIII. DEMO

23

Ti liu tham kho & chng trnh ci t Jenkins


My: 172.16.160.208 Ti khon: user/user Th mc: Jenkins

24

You might also like