You are on page 1of 68

Qun l d n phn mm

Ni dung
z
z
z
z
z
z
z
z

Gii thiu v qun l d n phn mm


o v c lng
Lp lch v theo di
m bo cht lng phn mm
Nghin cu kh thi
Qun l nhn s
Qun l thay i
Cng c h tr qun l d n

Ti liu

Pressman, Software Engineering,


McGraw Hill (chapter 2 & 3)
Sommerville, Software Engineering,
Addison-Wesley (chapter 29)
Ng Trung Vit, Phng php lun qun
l d n CNTT, NXB KHKT
Gio trnh k ngh phn mm (chng 6)

Cc ti liu in t khc

Ti sao phi qun l d n


z

Cc d n thng:

Khng hon thnh ng hn


Chi ph xy dng vt qu d ton
Cht lng khng m bo

Thng k ca Standish Group (2006)


z
z

z
z

C ti 50% trong s cc d n phn mm tht bi


Ch c 16.2% d n l hon thnh ng hn v nm
trong gii hn ngn sch, p ng tt c tnh nng v
c tnh nh cam kt ban u
C 52.7% d n c hon thnh v i vo hot
ng nhng khng hon thnh ng hn v bi chi,
thm na khng p ng y tnh nng v c
tnh nh thit k ban u
V c 31.1% d n tht bi trc khi c hon
thnh
-> hn 83.8% d n tht bi hoc khng p ng
nhng yu cu ban u

Mc tiu
z

Qun l cc yu t:

Thi gian: ng thi hn


Chi ph: khng vt d ton
Sn phm: y cc chc nng nh
Tha mn yu cu khch hng

tha mn v nhu cu
tha mn v tin trnh

Nhim v, quyn hn ca ngi qun l d n


z

Thi gian

Ti nguyn

thm tin, thm ngi, thm thit b

Sn phm

lp lch, iu chnh lch


kim tra/i chiu cc tin trnh con vi lch biu
to mm do trong lch biu

thm, bt, sa chc nng

Ri ro

phn tch ri ro
xut gii php
thc hin gii php v gim st
7

Cc pha cng vic


z
z
z
z
z
z
z

Thit lp: vit n


c lng (chi ph, ngi, thit b, ...)
Phn tch ri ro
Lp k hoch
Chn ngi
Theo di v kim sot tin trnh
Vit bo co v trnh din

Cc hot ng thng xuyn


z

m bo cht lng phn mm

m bo s ng n
m bo s tun th theo chun

Qun l thay i/qun l cu hnh phn mm

Qun l thay i v yu cu, thit k, m


ngun
Qun l cu hnh (c pht trin phn tn)

1. o v c lng
z
z

Cch thc tip cp qun l: o v c lng


o phn mm

c lng

kch thc, chi ph, hiu nng, cht lng


kch thc
chi ph
thi gian

Ch qun l c cc yu t c th o c

10

o v c lng
z

c lng phn mm l cng vic quan


trng hng u trong qun l d n

c lng c cn c o

kch c, chi ph
thi gian, nhn lc
kch c, cht lng, hiu nng

Nguyn l: cn phi xc lp o cho


mi cng vic

o phi nh lng

11

o kch c phn mm
z

o theo dng lnh (LOC Lines Of Code)

trc quan
ph thuc ngn ng

o im chc nng (FP Functional


Points)

c lp vi ngn ng
ph thuc cc m hnh la chn (tham s)
- hiu nng: KLOC/ngi-thng
- cht lng: s li/KLOC
- chi ph: gi thnh/KLOC
12

im chc nng
z

Tng hp cc c trng ca module

z
z

Input
Output
Interface
Files

t trng s cho cc c trng


Trng s ph thuc vo ng cnh (d n) c th

phc tp ca bi ton
Cc yu cu v cht lng, hiu nng
Kch thc ca d liu s dng

13

im chc nng FP
z

FP = a1I + a2O + a3E + a4L + a5F

I : s Input
O: s Output
E: s yu cu
L: s tp truy cp
F: s giao din ngoi lai (devices, systems)

14

im chc nng: V d
z
z

FP = 4I + 5O + 4E + 10L + 7F
Hm: Tnh c s chung ln nht ca
hai s nguyn
Input I = 2
Output O = 1
Yu cu E = 1
-> im chc nng FP = 17

15

o v cht lng da trn thng k


z

tin cy: MTBF Mean Time Between


Failures

Thi gian khi phc h thng

thi gian chy lin tc khng c li


MTTR Mean Time To Recover

Tnh sn c:

MTBF
MTBF + MTTR

16

o hiu qu pht hin li


z

Hiu qu kh li: E/(E+D)

E(rror): li pht hin trc khi bn giao


D(efect): li pht hin sau khi bn giao

E/(E+d/0.9)

d: s li pht hin trong 1 thng sau khi bn


giao

17

c lng phn mm
z

Cc yu t cn c lng

kch c phn mm
chi ph (cng sc) pht trin
thi gian
s ngi tham gia

Nguyn tc c lng

phn r chc nng


c lng vi tng chc nng
da trn kinh nghim, d kin qu kh

18

c lng
z

Kch c

LOC: c lng trc tip vi tng m un


FP: c lng gin tip thng qua c lng
input/output, yu cu

Cng sc:

da trn kch c, phc tp


da vo d liu qu kh
n v: person-day, person-week, person-month

19

V d
z

Trang web xem kt qu hc tp ca sinh


vin bao gm cc m un/giao din
chnh:

nhp thng tin tm kim: 100 LOC


tm kim trn CSDL sinh vin: 300 LOC
sinh kt qu: 100 LOC
cng sc: 01 person-week
Vy phn mm o to 2000 LOC th sao?

20

M hnh c lng COCOMO - Costructive Cost Model

z
z
z

c lng n lc, thi gian, s ngi


pht trin t kch c phn mm.
S dng vi cc phn mm ln
M hnh c s

N lc E = a * Lb
Thi gian T = c * Ed
S ngi N = E/T
L: s dng lnh (KLOC)
a, b, c, d: tham s

21

COCOMO: cc bc tin hnh


z

Thit lp kiu d n

z
z
z
z

Xc lp (phn r) m un v c lng s dng


lnh
Tnh li s dng lnh trn c s ti s dng
Tnh n lc pht trin E cho tng m un
Tnh li E da trn phc tp ca d n

organic: n gin, khng truy cp cc thit b ngoi lai


semi-detached
embeded: phc tp, truy cp thit b

tin cy, ln ca CSDL


yu cu v tc , b nh

Tnh thi gian v s ngi tham gia


22

COCOMO: tham s c s
a

organic

3.2

1.05

2.5

0.38

semi-detached

3.0

1.12

2.5

0.35

embeded

2.8

1.2

2.5

0.32

23

COCOMO: V d
z

Phn mm kch c 33.3 KLOC.

a = 3.0 b = 1.12 c = 2.5 d = 0.35


E = 3.0 * 33.31.12 = 152 person-month
T = 2.5 * E0.35 = 14.5 thng
N = E/D = ~ 11 ngi

24

Kh khn trong c lng


z
z
z
z

Cc thng s khng trc quan


Kh nh gi tnh ng n ca cc tham s
Khng c m hnh tng qut
Cc k thut c lng ang thay i

p dng cc m hnh khc nhau


Tin hnh c lng nhiu ln
c lng li khi d n tin trin

25

2. Lp lch v theo di
z

c lng cho chng ta con s khi qut


lm c s thc hin d n

Lch trnh c th ph thuc vo m hnh la


chn
S ngi tham gia thay i theo tng pha ca
d n

Cn phi phn tch chi tit hn v lp lch


kim sot cng vic

26

Lp lch v theo di
z

Lp lch kim sot cng vic (nhim v)

xc nh nhim v
thi im bt u, thi im kt thc
ngi thc hin
rng buc (mi lin h gia cc nhim v)
cn c mm do v thi gian

27

Xc nh ti nguyn cho d n
z

Con ngi

Phn mm dng li c

l nhn t quan trng nht


cn phi tp hp cc thnh vin c nng lc
mi giai on cn s ngi, nng lc khc nhau
Cc thnh phn c ng gi (d dng dng li)
Cc thnh phn c kinh nghim (d dng sa
cha phc v cho d n)
Cc thnh phn dng li t c kinh nghim (chi ph cho
sa cha ln)

Phn cng/cng c phn mm

Phi chia s phn cng, cng c


28

Xc nh nhim v
z

Nhim v phi c xc nh l:

L cng vic c kt qu bn giao


Qui trch nhim cho mt c nhn
C hn nh v thi gian
C th o c (tin , cht lng)

29

Xc nh rng buc nhim v


z

Cc rng buc v ti nguyn (con


ngi, thit b)
Rng buc v tin trnh

z
z

cc nhim v phi c kt thc trc


cc nhim v c th c thc thi k tip

Gim ti a cc nhim v ph thuc


Thc hin cc nhim v song song khi
c th
30

Lp lch nn
z
z
z
z

Gim ti a thi gian tha


Tn dng ti a cc ngun lc c th
iu phi ti nguyn (ch tha/thiu)
Xem xt cc hn ch

L mt qui trnh lp li

ph thuc tin trnh


ph thuc ti nguyn
theo di thi gian biu
sa cha, lp li thi gian biu

S dng cc cng c t ng
31

Work tasks
I.1.1

I.1.2

I.1.3

I.1.4
I.1.5

I.1.6

I.1.7
I.1.8

week 1

week 2

week 3

week 4

week 5

Identify need and benefits


Meet with customers
Identify needs and project constraints
Establish product statement
Milestone: product statement defined
Define desired output/control/input (OCI)
Scope keyboard functions
Scope voice input functions
Scope modes of interaction
Scope document diagnostics
Scope other WP functions
Document OCI
FTR: Review OCI with customer
Revise OCI as required;
Milestone; OCI defined
Define the functionality/behavior
Define keyboard functions
Define voice input functions
Decribe modes of interaction
Decribe spell/grammar check
Decribe other WP functions
FTR: Review OCI definition with customer
Revise as required
Milestone: OCI defintition complete
Isolate software elements
Milestone: Software elements defined
Research availability of existing software
Reseach text editiong components
Research voice input components
Research file management components
Research Spell/Grammar check components
Milestone: Reusable components identified
Define technical feasibility
Evaluate voice input
Evaluate grammar checking
Milestone: Technical feasibility assessed
Make quick estimate of size
Create a Scope Definition
Review scope document with customer
Revise document as required
Milestone: Scope document complete

32

Tham kho
z

Thi gian thc t thng ko di hn


c lng t 25% n 40%.
L do:

Mt s cng vic khng c lng c


Mt s cng vic phi lm li
Ngi pht trin tham gia ng thi nhiu
cng vic

33

3. m bo cht lng phn mm


z

Software Quality Assurance SQA


L cng vic xuyn sut qu trnh pht trin
phn mm

Th no l cht lng?

Cht lng ca phn cng = s n nh, s


ng u
Cht lng phn mm

Tin cy, d s dng, hiu qu, bo tr


Kh o c trc quan

34

m bo cht lng
z

m bo cht lng khi bt u d n

Con ngi
Qui trnh
Cng c

m bo cht lng trong qu trnh


thc hin d n

tun th qui trnh (cc chun, cc ti liu)


hp xt duyt
kim th sn phm

35

Gi tr cho tm v sa li

100

60.00-100.00

log
scale

10.00

10
1

1.50
0.75 1.00

3.00

Design testsystem field


Req.
use
code
test
36

Xt duyt
z

Ti mi pha cng vic, cn hp xt duyt


m bo cht lng

z
z

khng li truyn sang pha sau

Thc hin theo nhm


Xt duyt cc ti liu

Phn tch
Thit k
M ngun
Ti liu ngi dng
...

37

4. Nghin cu kh thi
z

Xc nh, phn tch cc yu t

Phm vi phn mm
Kh thi v kinh t
Kh thi v k thut
Kh thi v php l
Cc ri ro v bin php khc phc

38

Kh thi v kinh t
z

Phn tch li ch - chi ph

chi ph xy dng
ph tn vn hnh
hiu qu kinh t
v tr ca sn phm
kh nng ti chnh ca khch hng

Khch hng v nh pht trin c cch nhn


khc nhau v tnh kinh t, nh pht trin cn
thuyt phc khch hng v tnh kinh t

39

Kh thi v k thut
z

Kh nh gi giai on phn tch

c cng ngh thc hin khng?


c nng lc thc hin khng?
c ti nguyn (phn cng) thc hin
khng?
khch hng c vn hnh c khng

40

Kh thi v php l
z

Kh thi v php l l yu t t quen thuc


i vi ngi pht trin

Vi phm bn quyn

Vi phm t do c nhn

kim duyt email, ph mt khu...

Gy hi i vi bn th ba

s dng m ngun ca ngi khc...


cung cp m nhc trc tuyn...

virus, spam email, DoS

Cc vi phm php lut khc

cung cp cc dch v cm,...


41

Ri ro v bin php
z

Cc nhn t c th lm tht bi d n

ri ro k thut: qu kh
ri ro kinh t: qu t
ri ro thi gian: thi gian qu ngn
phn hoch yu cu
cn thit
mong mun
ph (optional)

42

Bo co kh thi
z

cn a ra quyt nh

lm
khng lm
xem xt li

43

Qun l ri ro
z

Ri ro l cc s kin khin d n tht bi

z
z

chi ph qu cao
thi gian qu di
tnh nng qu km

L cc yu t c th qun l c
Nhim v ca ngi qun l d n

xc nh (d on) ri ro
phn tch ri ro (kh nng v thit hi)
qun l ri ro (a ra gii php)
gim st (theo di s xut hin, tc ng ca ri ro)
v thc hin bin php qun l
44

Qun l ri ro
z

Da trn phn hoch yu cu

z
z

chc nng cn thit


chc nng mong mun
chc nng ph thm

Nguyn l Pareto (80-20)


Phn tch, a ra quyt nh c p dng
bin php qun l cn thit hay khng

da trn thng k (kinh nghim)


dng cy quyt nh

45

5. Qun l nhn s
z

z
z

Con ngi l yu t quan trng nht trong


pht trin phn mm
Cc thnh vin rt khc nhau v nng lc
Mt s cc cng vic c th khng phi ai
cng lm c

lp trnh h thng
giao din ha cao cp
iu khin thit b
c s d liu

46

Nhm v c trng
z
z
z

Phn mm pht trin theo nhm


Kch thc ti u ca nhm: 3~8 ngi
T chc nhm

lp trnh vin
chuyn gia giao din
chuyn gia min ng dng
th th phn mm (qun l cu hnh)
kim th vin

Cn c

team leader
technical leader

47

Nhm v c trng
z

Khng nn t chc nhm qu ln

thi gian cho giao tip s tng cao


kh tng tc bng cch thm ngi

Mt s cng vic ch nn cho mt


ngi thc hin
Cn phn r d n ln thnh cc d n
nh

48

Phn b thi gian lm vic

20%
khng trc tip
lm vic

50%
30%

lm vic

giao tip
vi cc
thnh vin
khc

49

Mt s cch t chc nhm


z

Nhm ngang quyn (democratic team)

Nhm XP

Cng vic c tho lun v cc thnh vin thng


nht gii php chung
Cc thnh vin u c kinh nghim v nng lc
Mt dng ca ngang quyn, lp trnh i v chu
trch nhim chung

Nhm quyn lc tp trung (chief programmer


team)

Nhm trng c nng lc vt tri v l ngi


thit k chnh
Cc thnh vin khc thc hin cng vic chi tit

50

Nhm lm vic hiu qu


z
z
z
z
z
z

Cc mc ch c thng nht
Thnh vin tin tng vo vai tr v mc tiu
Chp nhn mc tiu v tiu ch cht lng
C phng thc trao i thng tin hiu qu
hp, trao i tng, kim sot thay i
Xc lp c mi quan h hp tc gia cc
thnh vin

51

6. Qun l thay i
z

Mt trong cc l do khin cho d n tht


bi
Lun c s thay i

z
z

yu cu, thit k, m ha, sa li


phn mm lun tin ha

Khng nhn ra s thay i ca vn


khng c phng php hiu qu
qun l s thay i
52

Qun l thay i
z

nh ngha thay i vi bt c hot ng


no:
phm vi
kt qu bn giao
kin trc c bn
chi ph
lch trnh

Lp ti liu y v cc thay i, m
bo cc thnh vin hiu r v cc thay i

s dng cng c h tr
53

Qun l cu hnh phn mm


Configuration management
z

Nhim v ca qun l cu hnh:


qun l phin bn phn mm
lu tr ti liu, m ngun, d liu
to im truy cp duy nht (m bo tnh thng
nht ca m ngun)

Trn din hp, cn gi l qun l m ngun

54

Li ch
Cung cp cho ngi pht trin phin bn
mi nht ca phn mm
Qun l cc m ngun c lu tr phn
tn
Qun l cc phin bn khc nhau
Ghi ch l do ca sa i m ngun
D dng truy cp cc phin bn c
Tch kim khng gian a

55

Qun l phin bn
z

Th no l phin bn phn mm
version
variant
release

Phi t ra cc tiu ch xc nh phin


bn, tiu ch nh danh phin bn

56

Phng thc hot ng


Lu tr tp trung
- m ngun, ti liu, cng c
Lu tr duy nht (logic)

Qun l sa i
- khng cho php sa i ng thi

- lu tr phin bn c
- thng tin sa i: l do, ngi thc hin,
thi im

57

Ni dung lu tr
Ti liu
- phn tch, thit k, ti liu ngi dng
M ngun
Cng c pht trin
- cn cng c c bin dch li cc
m ngun c cho vic bo tr

Cc b d liu test
Vi phn mm ln, phi qun l hng nghn ti liu

58

Chia s m ngun

Nhiu ngi ng thi pht trin mt tp m ngun

S dng c ch lock/unlock ch cho php


mt ngi c quyn sa i ti mt thi im

- lock (check out): m tp sa i


- unlock (check in): kt thc sa i

ng thi sa i / h thng gip ni cc


sa i mt cch t ng

59

Cc cng c
z

RCS
chy trn h iu hnh Solaris
qun l tp
check out/check in
CVS
da trn RCS
dng c ch ghp ni sa i
Visual SourceSafe
trong b cng c Visual Studio ca Microsoft
qun l project
check out/check in

60

7. Cng c h tr qun l d n
z

Microsoft Project 2000

Microsoft SourceSafe

Qun l cu hnh, m ngun

Visio 2000

H tr qun l d n phn mm

To bng biu, m hnh

http://www.startwright.com/project1.htm

61

62

63

Gantt Chart to bng Visio 2000

Feb 22 2004

ID

Task Name

Start

End

Feb 29 2004

Mar 7 2004

Duration
23

Gp g khch
hng

2/23/2004 2/24/2004

2d

Phn tch yu cu 2/25/2004 2/26/2004

2d

c t yu cu

2/27/2004 2/27/2004

1d

Phn tch h thng 3/1/2004

Thit k tng th

3/3/2004

3d

3/4/2004 3/10/2004

5d

24

25

26

27

28

29

10

11

64

Timeline to bng Visio 2000

65

66

Tng kt: Qun l d n


z

Ngi qun l cn c kinh nghim, phi cng


rn

c trang b kin thc v qun l d n PM


C thm nin trong vic pht trin phn mm

z
z
z

tng tham gia cc cng on ca qu trnh pht trin


phn mm
Kinh nghim ng vai tr then cht
C trnh qun l tt
Lm vic c k hoch

Cn c cc o
Phi c lp ti liu
Lun cn xem xt, iu chnh
67

68

You might also like