Xem mẫu
- TỦSÁCH CÔ NG NGHỆTHÔNG TIN
SATA -APTECH tuyể chọ & gi ớ thiệ
n n i u
Tác giả Karl E. Wiegers
:
Software Requirements
Best Practices
Các kỹhuậ thự hành đ thu thậ và quả l ý yêu cầ trên
t t c ể p n u
toàn bộ hu t rình phát triể sả phẩ phầ mề
c nn m nm
st
Microsoft Press, 1 Edition
Ng ư i dị : H oàng Xuân Thịh
ờ ch n
Phiên bả bả dị : 10.12.30
n n ch
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
1
- GIỚ THIỆ
I U
“TỦ SÁCH CÔNG NGHỆ THÔNG TIN”
Đ phát triể ngành công nghi ệ công nghệthông tin Việ Nam phả hư ng ra thị ư ng
n, p t iớ tr ờ
ể
thếgiớ do đ phả tuân theo các chu ẩ mự toàn cầ nhưlàm việ theo quy trình, áp dụ
i, ó i n c u c ng
các tiêu chuẩ quả lý chấ lư ng s ả phẩ và dị vụphổbiế (ISO 27000, CMMI…), áp
n n tợ n m ch n
dụ các hư ng dẫ thự hành tố và tố nhấ Vì v ậ đ i vớ các sinh viên đ
ng n c t t t. y, ố i ang theo họ
c
ớ
ngành công nghệthông tin v à chuẩ bị làm việ chúng tôi ngh ĩ ằ các cuố sách hư ng
n ra c, r ng, n ớ
dẫ kỹthuậ hư ng dẫ xây dự quy trình làm việ hưng dẫ cách t ổchứ công việ nh ằ
n t, ớ n ng c, ớ n c c m
nâng cao nă suấ lao đ ng có vai trò h ế sứ quan tr ọ Nh ữ cuố sách này giúp ngư i
ng t tc ng. ng n
ộ ờ
đ c nhậ th ứ vềcác chuẩ m ự công nghiệ trong ngành công nghệthông tin thếgiớ họ
n c n c p i, c
ọ
hỏ về
i cách nhữ đ ng nghiệ trên toàn cầ củ họlàm việ nhưthếnào, qua đ ngư i đ c có
ng ồ p ua c ó ờọ
thểsẽthay đ i suy nghĩ ủ mình sao cho gầ hơ vớ các chuẩ mự và cách làm việ đ Sự
ca nni n c c ó.
ổ
thay đ i trong nhậ thứ theo chiề hư ng này càng di ễ ra sâu rộ bao nhiêu thì càng thúc
n c uớ n ng
ổ
đy công nghi ệ công nghệ
p thông tin Việ Nam phát tri ể bấ nhiêu.
t ny
ẩ
Đ đ ứ nhu cầ sách tham khả theo chiề hư ng đ chúng tôi xây dự “Tủsách
ể áp ng u o uớ ó, ng
công nghệthông tin” b ằ cách tuyể ch ọ và giớ thi ệ các b ả dị tiế Việ c ủ các cu ố
ng n n i u n ch ng ta n
sách có nộdung đ ứ các tiêu chí sau:
i áp ng
1. Có thểlàm tài li ệ tham khả cho sinh viên các khoa công nghệthông tin đ h ọbiế
u o t
ể
thêm về ự ti ễ ngành công nghiệ công ngh ệ
th c n p thông tin thế ớ
gi i.
2. Hư ng d ẫ xây dự quy trình làm việ qu ả lý chấ l ưng s ả phẩ và dị vụmộ
n ng c, n tợ n m ch t
ớ
cách th ự tiễ không hàn lâm, có th ể ng dụ đ ợ ngay vào th ự tếcông việ hàng
c n, ng ưc c c
ứ
ngày củ m ỗngư i làm việ trong ngành công nghệ
a i c thông tin.
ờ
3. Giớ thi ệ các “h ư ng dẫ thự hành tố (good practices) và “hư ng dẫ th ự hành
i u n c t” n c
ớ ớ
tố nhấ (best practices) trong công nghiệ công nghệthông tin.
t t” p
4. Giớ thiệ các xu hư ng công nghệ ớ trong ngành công nghệ
i u mi thông tin thếgiớ
i.
ớ
Nói gọ lạ thông qua “T ủsách công nghệthông tin”, chúng tôi mu ố góp ph ầ cổv ũxây
n i, n n
dự mộ nề “VĂN HÓA CÔNG NGHIỆ ” trong ngành công nghệthông tin củ Đ t nưc
ng tn P aấớ
chúng ta, đề h ế sứ cầ thi ế đ Vi ệ Nam có mộ ng ành công nghiệ công nghệthông tin
iu t c n tể t t p
phát triể và hi ệ đ i, đ
n n ạ óng góp cho sựgiầ m ạ củ Đ t nư c.
u nh a ấ ớ
Cuố sách đu tiên trong “T ủsách công nghệthông tin” là cuố “Software Requirement
n n
ầ
Best Practices” (Các hư ng dẫ th ự hành tố nh ấ vềyêu cầ phầ mề do Microsoft Press
n c t t u n m)
ớ
xuấ bả Đ là cuố sách hế sứ c ầ thiế cho nhữ g ai đ
t n. ây n tcn t n ang thự hi ệ các dựán công nghệ
c n
thông tin và các si nh viên ngành công nghệthông tin muố có thêm hiể biế vềth ự tiễ
n u t c n
ng ành trư c khi ra làm vi ệ
c.
ớ
Xin trân tr ọ giớ thiệ cùng bạ đ c.
ng i u nọ
SATA-APTECH
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
2
- LỜ GIỚ THIỆ CỦ NGƯ I DỊ H
I I U A Ờ C
Trong nhữ g nă qua tôi đ tham gia m ộ số ựán CN TT và tôi thấ rấthiế
n m td yt u
ã
nhữ g tài liệ có giá trị ằg tiếg Việđ tham kh ả về ác h thứ tiế hành các
n u bn n tể o c cn
dự n này. Tài liệ nư c ngoài thì r ấn hiề và khá nhiề tài liệ hay, như tài liệ
á uớ t u u u u
ng
hư ng dẫ chi tiế thành mộ quy trình làm việ th ì cũg không nhiề. Cách đy
ớ n t t c n u â
mấ nă , trong mộ chu yế công tác, tôi mua đợ cuố s ách Software
y t n ưc n
m
Requirements củ tác giả arl E . Wiege rs do Mic ros oft Pre ss ấ hành. Cu ố này
a K n
n
hiệ đ có ấ bả mớ cũg củ Microsoft Press. Trong cuố sác h n ày tác giảrình
nã nn in a n t
bày toàn bộ ộ quy trình biế nhu cầ sửdụg phầ mề củ k hách hàng thành
mt n u n nma
mộ bả đc tả êu c ầ phầ mề . Bả đc tả êu cầ phầ mề này s ẽrởthành
t nặ y u nm nặ y u nm t
đu vào cho quy trình phát tri ể, triể khai v à bả trì mộs ả phẩ phầ mề .
ầ n n o tn m nm
Trong Quy trình lậ kếhoạh chấ lư ng trên satablo g2, nhà tưvấ chấ
p c tợ n t
lư ng J uran đ dành Bư c 2 - Đnh dan h khách hàng và B ư c 3 – Khám phá nhu
ợ ớ ị ớ
ã
cầ khách hàng đ mô tả ách thứ hiệ thứ hóa nhu cầ củ khách hàng thành
u ể c c n c ua
mộbả đc tả ả phẩ – Juran nhấ mạh đy là đ u kiệ cầ đ sả xuấđợ
t n ặ sn m nnấ iề n n ể n t ưc
sả phẩ có chấlư ng. T oàn bộ ư c 2 và Bư c 3 trong quy trình trên đ ợ Ka rl
n m tợ Bớ ớ ưc
E. Wiegers cụthể óa th ành mộ cuố s ách hay, d ễ ọ v à thiếthự áp d ụg cho
h t n đc t c n
việ sả xuấphầ mề .
cn t nm
Ởđy, tôi muố nói tớ sựphân biệgiữ th uậ ng ữ nhu cầ”ne ed) c ủ Juran
â n i t a t “ u( a
và thuậngữ“êu cầ” ủ Wiegers. Đ phân biệgiữ nhu cầ và yêu cầ tôi lấ
t y u ca ể t a u u y
ví dụ ày. Cả gư i V iệN am lẫ ngư i Mỹ ề có n hu cầ nhưnhau là ă nhanh,
n nờ t n ờ đu u n
ă ngon, ă s ạh vào bữ s áng. Như do sựkhác nhau về ă hóa mà cái nhu cầ
nc a vn u
n ng
ấ thểhiệ ra bên ngoài thành các yêu cầ khác nhau, đi vớ ngư i Mỹthông
y n u ối ờ
thư ng là mộ bữ sán g vớ bá nh mỳ hanh củ McDonald và mộ hộ Coca-Cola,
ờ ta i n a tp
đi vớ ngư i Việ miề B ắ thông th ư ng là mộ bát phởvà mộ chén n ư c chè.
ối ờt nc ờ t t ớ
Nhu cầ là cái bên trong đ ợ th ể iệ ra bên ngoài thành nh ữg yêu cầ kh ác
u ưc hn n u
nhau nhưvậ. J uran đ viế khá kỹvề ựkhá c biệ này trong Quy trình lậ kế
y t s t p
ã
hoạh c hấ lư ng.
c tợ
Chúc các bạ thu thậ đ ợ các hư ng dẫ thự h ành thiếthự khi đc cuố s ách
n p ưc ớ n c t c ọ n
này!
Hoàng Xuân Thịh, 12/2010
n
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
3
- Dành tặg Mis s Chr is
n
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
4
- LỜ NÓI Đ U
I Ầ
Mặ dù ngành công nghiệ phầ mề đ có trên n ă mư i nă kinh nghiệ thự
c p n mã ơm m c
m
tế hư nhiề tổ hứ phát triể phầ mề vẫ phảvậlộ vớ việ thu thậ, tài
n ng u cc n nmn itni c p
liệ ho á, quả lý cá c yêu cầ đu vào đi vớ sả phẩ củ mình. Thiế đu vào từ
u n uầ ốin ma uầ
ngư i dùng, yêu cầ không đy đ và thay đi yêu cầ là nh ữg lý do chính khiế
ờ u ầủ ổ u n n
các tổ hứ phát triể phầ mề không giao đ ợ cho khách hàng sả phẩ phầ
cc n nm ưc n m n
mề vớ c ác chứ năg đ đ ợ khách hàng đ a vào kế oạh s ả xuấtheo đng
mi c n ã ưc ư hc n t ú
lị biể và ngân sách đ đ h. Nhiề nhà phát triể ph ầ mề không c ả thấ hài
ch u ãị n u n nm my
lòng vớ việ thu thậ yêu cầ từkhá ch hàng. Công ngh ệyêu cầ (requirement
i c p u u
engineering) trong thự tếkhông đợ phổbiế rộg rãi t ớ c ác n hà phát triể,
c ưc nn i n
trong trư ng họ sinh viên cũ không đợ họ cá c kỹthuậc ủ công nghệ êu
ờ c ưc c ta y
ng
cầ. Thậ chí, ng ay n hữg ngư i tha m gia dựán phầ mề c òn không thốg nhấ
u m n ờ nm n t
đ ợ vớn ha u nộ dung củ thuậngữ yêu cầ”
ưc i i a t “ u.
Phát triể phầ mề cũg liên quan đn truyề thông (communication) (ý nói là sự
n n mn ế n
truyề thông hay là giao tiế giữ nhóm phát triể phầ mề và khách hàng mua
p a n nm
n
phầ mề , t ừđ nhóm phát triể mớ hiể khách hàng cầ gì ởsả phẩ phầ
nm n i u n m n
ó n
mề sẽxây d ựg - ND ) nhiề nhưlà liên quan đn tính toán (c ompu ting), tuy
m n u ế
nhiên thư ng thì chúng ta hay nhấ mạh đn khía c ạh tính toán mà bỏquên
ờ n nế n
truyề thông. Cuố sá ch này cung cấ các công c ụ húc đy việ truyề thông và
n n p t ẩc n
giúp các nhà phát triể và khách hàng củ họ ửdụg hiệ quả ác phư ng pháp
n a s n u c ơ
củ c ông nghệ êu cầ. Cu ố sách đ a ra nhiề c ách tiế cậ nhằ g iúp nhó m dự
a y u n ư u pn m
án và khách hàng củ d ự n tho ảhuậ về hữ g gì ph ầ mề cầ đp ứ g đ thoả
a á t n nn n m ná n ể
mãn nhu cầ ngư i dùng, cùng v ớ cách thứ đ tài liệ hoá và quả lý các thay
u ờ i cể u n
đi trong các thoả huậ đ. Các kỹthuậ đợ giớ thiệ ởđy thuộ loạ “ ự
ổ t nó t ưc i u â c i th c
hành tố (good practices ) củ công nghệyêu cầ, c húng không phả là các kỹ
t” a u i
thuậ“a lạ từ iớ hàn lâm ho ặ là mộ phư ng pháp lu ậ khái qu át đ giảquyế
tx ”gi c t ơ n ểi t
bài toán yêu cầ củ bạ.
uan
LỢ Í CH TỪ CUỐ SÁCH NÀY
I N
Trong sốcá c c ảtiế quy trình ph ầ mề mà bạ c ó thể ắ bắ các thự hành
in n m n n m t, c
quả lý v à phát triể yêu cầ đợ cả tiế s ẽ ung cấ lợ ích lớ nhấc ho bạ.
n n u ưc i n c pi n t n
Các khái niệ và phư ng pháp ởđy là đc lậ vớ các phư ng pháp luậ phát
m ơ â ộpi ơ n
triể cụ hể đc lậ vớ các miề ứ g dụg – dù bạ phát triể phầ mề viễ
n t,ộp i nn n n n n m n
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
5
- thông hay tài chính bạ vẫ dùng nh ữg p hư ng pháp này, bạ c ó thểsửdụg
nn n ơ n n
chúng trong mộ miề rộg lớ các loạdự n. Tô i tậ trung mô tả ộ số ỹ huậ
t nn n i á p mt k t t
thự hành đ đợ c hứg minh tính hiệ quả hằ giúp bạ:
c ã ưc n u nm n
Đ t đợ s ự ài lòng cao hơ củ khách hàng.
ạ ưc h na
Giả c hi phí bả trì và hỗrợ
m o t.
Cả thiệ chấlư ng các yêu cầ trong dựán ngay từs ớ trong chu trình
i n tợ u m
phát triể, giả bớ các công việ phảlàm lạvà cảthiệ năg s uấ
n mt c i i i nn t.
Đ ứ g c ác mụ tiêu c ủ lị biể bằg cá ch k iể s oát sự há vỡ hạ vi
áp n c a ch u n m p pm
ứ g dụg củ ph ầ mề và các thay đi yêu cầ.
n n a nm ổ u
Mụ đ h c ủ tôi là giúp bạ cảthiệ quy trình bạ s ử ụg đ thu thậ, phân tích
c íc a ni n n dn ể p
yêu cầ, viế và kiể tra đc tả êu cầ (re quire men t s pecification), quả lý yêu
u t m ặy u n
cầ trên toàn bộ hu trình phát triể s ả phẩ . C ảtiế quy trình nhằ giúp nhóm
u c nn m in m
dự n làm việ theo cá ch mớ đ tạ ra cá c kếquảốhơ Vì vậ tôi hy vọg bạ
á c i ểo t t t n. y n n
sẽhự hành nhữ g gì viếở ây th ay vì chỉọ chúng.
tc n tđ đc
NGHIÊN CỨU TÌNH HUỐ G N
Nhằ giúp bạ ứg dụg cá c phư ng pháp ởđy, tôi đ cung cấ cá c ví dụ à mộ
m nn n ơ â p l t
ã
sốnghiên cứ tình huốg từc ác dựán hiệ tạ mộ trong s ố ó là h ệhốg IT có
u n n i, t đ tn
kích thư c trung bình đ ợ gọ là Chemical Tracking System ( Đ ng lo lắg - Bạ
ớ ưc i ừ n n
không cầ phả biếbấ cứthứgì về óa họ đ hiể dựán này). Ví d ụ ày đợ
n i tt h cểu n ưc
thả luậ liên tụ trong các tình huốg khá c nhau đ bạ thấ c ác khía cạh khác
o n c n ển y n
nhau củ cùng mộ bài toán, các đạ đi thoạgiữ các thành viên nhóm d ự n đ
a t on ố i a áó
cũ đợ đ a ra nhằ minh họ bài toán.
ng ư c ư m a
AI NÊN Đ C CUỐ SÁCH NÀY?
Ọ N
Bấ cứa i có công việ liên quan đn yêu cầ tron g mộ dựán phát triể mớ hay
t c ế u t n i
nâng cấ mộ s ả phẩ p hầ mề đu có thể ìm thấ nhữ g thông tin hữ ích ở
p tn m n mề t y n u
đ Đ c giảcủ cuố sách có thểgồ : analysts (ngư i phân tích ), de velopers
ây. ộ a m ờ
n
(ngư i phá t triể), teste rs (ngư i kiể thử - nhữ g ngư i ph ảh iể và đ ứg kỳ
ờ n ờm ) n ờ i u áp n
vọg c ủ khách hàng. Mộ nhóm đc giả hứhai là nhữ g ngư i dùng muố hình
n a t ộ t n ờ n
dung mộ sả phẩ phầ mề đp ứ g nhu cầ v ề hứ năg và nhu cầ sửdụg
tn m n má n u ccn u n
củ bả thân họC ác khách hàng muố đm b ả rằg sả phẩ sẽ áp ứg các nhu
an . nả on n mđn
cầ kinh doanh củ mình sẽ iể tố hơ về ả chấ và tầ quan trọg củ quy
u a hu t n bn t m n a
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
6
- trình yêu cầ. C ác nhà quả lý dựán phảđi mặvớ việ bàn giao s ả phẩ đng
u n iố t i c n mú
thờ hạ s ẽ ọ đ ợ các h thứ quả lý c ác th ay đi yêu cầ tiề tàng.
i n h c ưc c n ổ um
KẾ CẤ CUỐ SÁCH
T U N
Cuố sá ch đ ợ tổ hứ thành 3 phầ.
n ưc c c n
Phầ I bắđu bằg việ giớ thiệ mộ số ị nghĩnề tảg về ông nghệ
n tầ n c i u t đh n ann c
yêu cầ và mô tả ộ số ặ tính củ các yêu cầ tuyệhả.
u m t đc a u to
Phầ II giớ thiệ nhiề kỹ huậphát triể yêu cầ, bắđu bằg đ h nghĩ
n i u u tt n u tầ n ị n a
yêu cầ nghiệ vụtầ nhìn (vision) và phạ v i.
u p,m m
Phầ III giớ thiệ các nguyên lý và thự hành về uả lý yêu cầ.
n i u c qn u
TỪ NGUYÊN LÝ TỚ T HỰ T Ế
I C
Khó khă biế bao khi tậ trung năg lư ng cầ thiế nh ằ vư t qua nhữ g trở
t p n ợ n t mợ n
n
ngạđ thay đi và đ đa các hi ể biếmớ vào hoạđng thự tếC on ngư i và
iể ổ ểư ut i tộ c. ờ
các tổ hứ có xu hư ng giữ guyên, duy trì nhữ g gì đ có, dù rằg chúng không
cc ớ n n n
ã
hiệ quảĐ giúp đ bạ trong hành trình cảtiế quy trình yêu cầ, mỗ chư ng
u .ể ỡn in u i ơ
sẽ ó mộ mụ gọlà “Các b ư c tiế theo ” mô t ả hi tiếcá c hành đng cụ hể ể
c t ci ớp c t ộ tđ
–
bạ áp dụg c ác phư ng pháp đ ợ giớ thiệ trong chư ng này vào thự tế Tôi
n n ơ ưc i u ơ c.
cung cấ cá c templates cho c ác tài liệ yêu cầ, c ác ch ecklists , mộ bảg tính xế
p u u tn p
thứ tự ư tiên yêu cầ, và nhi ề thứ nữ trên trang web c ủ tôi tạ
u u a a i
u
http://www.processimpact.com. Hãy bắđu từ hữ g thay đi nhỏ rong công việ
tầ n n ổ t c
củ bạ ngay ngày hôm nay.
an
Không phả tấ cảnhữ g ng ưi tham gia dựá n c ủ bạ đu ủg hộbạ trong
it n ờ a nền n
nhữ g tha y đi này. Hãy sửdụg nhữg hiể biế thu thậ đ ợ ởđy đ thuyế
n ổ n n u t p ưc âể t
phụ họhãy lôi kéo họ ùng h ọ và cùng c ảtiế.
c, c c in
Bạ không cầ phảkhở đng mộ dựán mớ đ bắ đu áp dụg nhữ g kỹ huậ
n n i iộ t iểtầ n n tt
củ công nghệ êu cầ. M ộ đ m bắ đu tố là hãy sửdụg mộ quy trình kiể
a y u t iể t ầ t n t m
soát thay đi thích hợ . N gh ĩlà, bạ c ó thể au chóng bắđu bằg việ quả lý
ổ p a n m tầ n c n
các đ xuấthay đi yêu cầ. K hi bạ thêm các tính nă mớ vào sả phẩ đ có,
ềt ổ u n i n mã
ng
hãy bắ đu phân tích ảh hư ng mộ các h hệhốg và t ạ mộ ma trậ lầ v ếđ
tầ n ở t tn o t nn tể
liên kế cá c yêu cầ mớ tớ các bả thiế kếmã ngu ồ v à tình huốg kiể thử
t u ii n t, n n m
(test cases) t ưng ứg. Rấ hiế khi bạ qua y lạvà viế lạ nhữg bả đc tả êu
ơn t m n i ti n nặ y
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
7
- cầ mớ c ho mộ hệhốg đ có. Tuy nhiên, bạ có thể iếcác yêu c ầ cho phiên
u i t tn ã n vt u
bả tiế theo bằg mộ các h chặ chẽhơ so vớ trư c đy, viế các analys is
np n t t i ớâ t
n
models cho các tính n ă mớ, kiể tra các yêu c ầ mớ. T hự hành dầ các kỹ
i m u i c n
ng
thuậ củ c ôn g ngh ệ êu c ầ là mộ các h tiế cậ cả tiế quy trình có đ rủ ro
ta y u t pnin ội
thấ, nhữ g kinh nghiệ thu đợ s ẽà nề tảg cho bạ chuẩ bị ộdự n mớ
p n m ưc l nn n n mt á i.
Mụ tiêu củ công nghệyêu cầ là phát triể cá c yêu cầ chấ lưng cao - chứ
c a u n u tợ
không phảhoàn h ả – các yêu cầ c ho phép bạ xây dự g dựán vớ mộ mứ đ
i o u n n i t cộ
rủro chấ nhậ đ ợ. Bạ cầ dành đ thờ gian cho giai đạ làm yêu cầ đ tố
i p n ưc nn ủi on u ểi
thiể hóa rủ ro phả làm l ạcông việ, tạ ra sả phẩ không thể hấ nhậ, lị
u i i i co n m cp n ch
biể bị àn. Cuố sá ch này giúp b ạ xá c đ h khi nào bạ đt tớ đ m có đợ c ác
u tr n n ịn n ạ i iể ưc
yêu cầ chấlư ng và gợý mộs ố á ch đ làm đ u đ.
u tợ i tc ể iề ó
LỜ CẢ Ơ
I MN
Mộ s ố ạ h ữ đ dành thờ gian đ xem xét các b ả thả và cho tôi nhữ g lờ
t bn u ã i ể n o n i
khuyên quý báu. Đ c biệcả ơ Kathy Rhode, ngư i đ xem xét tỷ ỷ ả thả
ặ t mn ờã m bn o
và giúp tôi tưduy, tr ình bày vấ đ tố hơ Các bạ Chris Fahlbusch, T ammy
n ề t n. n
Hoganson, Deependra Moitra, Mike Rebatzke…
Tôi cũg cả ơ Steve McConnell, ngư i đ khuyế khíc h tôi viếmộ cuố s ách
n mn ờã n t t n
vềyêu cầ phầ mề và đ chuyể bả thả cho biên tậ viên Ben Ryan củ
u n m nn o p a
ã
Microsoft Press. Ben đ giúp tôi làm vi ệ vớ c ác biên tậ viên khác củ nhà xu ấ
ci p a t
ã
bả. Mary Kalbac h Barnard củ M icros oft Press đ quả lý dựán này và cùng v ớ
n a n i
ã
sựg iúp đ củ Michelle Goodman, đ biên tậ từbả thả đu tiên đn bả th ả
ỡa p n oầ ến o
ã
cuố cùng củ cuố sá ch.
i a n
Tôi rấbiếơ mộs ố hách hàng mà tôi tưvấ, đc biệlà Sandy Browning, Matt
t tn tk nặ t
DeAthos, Kathy Rhode, Kathy Wallace, nhữg ngư i đ mờ tôi tham gia làm việ
n ờã i c
cùng họrong c ác quy trình yêu c ầ.
t u
Tôi cũg cả ơ sự óng góp từ àng nghìn ng ưi tham gia cá c xêmina về êu cầ
n mn đ h ờ y u
phầ mề củ tôi trong nhữg nă qua. L à mộ nh à tưvấ và mộ nhà giáo dụ,
n ma n m t n t c
tôi đ họ đ ợ rấ nh iề từ ỗ công ty mà tôi làm việ, từnhữ g ngư i đ tham
ã c ưc t u mi c n ờã
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
8
- gia các xêmina củ tôi. Nhữ g gì hữ ích thu thậ đu đ ợ tôi đ a vào cuố s ách
a n u p ề ưc ư n
này. M ọthư ừ rao đi xin gử cho tôi kwiegers@acm.org.
i tt ổ i
Tôi trân trọg s ựđng góp s âu s ắ nhấc ho cuố sác h này t ừvợcủ tôi - Chrish
n ó c t n a
Zambito.
Xin mờ bạ nghiên cứ cuố sách và thự hành nhữ g gì b ạ thu thậ đ ợ. Chúc
in u n c n n p ưc
bạ thành công!
n
VỀTÁC GIẢKARL E. WI EGERS
Karl E. Wiegers là nhà t ư ấ chính tạProc ess Impa ct, mộ công ty đ t ạ và tư
vn i t ào o
vấ quy trình phầ mề c ó trụsởtạ Portla nd, Oregon. Ông đ tưvấ và thuyế
n n m i n t
ã
trình trong các xêmina tạhàng chụ công ty vùng Bắ M ỹTrư c đy, Karl đ làm
i c c . ớâ ã
việ 18 nă tạcông ty E astman K odak, n ơ ông làm công việ củ mộ nhà khoa
c mi ca t
i
họ nghiên cứ về nh , nh à phát triể phầ mề , nhà lãnh đo quy trình phầ mề
c uả n nm ạ nm
và cảtiế quy trình. Karl đ nhậ bằg tốnghiệ đi họ ng ành hóa họ từ ois e
in nn t pạ c cB
ã
State College, bằg cao họ và tiế sỹ óa hữ cơ ủ University of Illinois. Ông là
n c nh u ca
thành viên củ IEE E, IE EE C ompu ter Society và Hiệ hộmáy tính M ỹ ACM).
a pi (
Karl là tác giảcủ cuố s ách đạ giả thư ng Nă suấ phá t triể phầ mề
a n ot i ở t n n m
ng
(Software Development Productivity) - cuố Tạ lậ mộ nề vă hóa công nghệ
n op tnn
phầ mề (Cr eating a Software E ngineering Culture ) do Dorst House xuấ bả
n m tn
nă 1996. Ông c ũ l à tác giả ủ hơ 150 bài báo v ề hiề khía cạh củ khoa
ca n nu n a
m ng
họ máy tính, hóa họ và lị s ửquân sự Ông đng thờ là biên t ậ viên bán thờ
c c ch . ồ i p i
gian cho t ạ c hí Software Devlopement, là mộ th ành viên trong ban biên tậ củ
p t pa
tạ chí IEEE Software .
p
Khi không làm việ, ô ng chơ ghita vớ tay ghita Gibson Les Paul, đ trên chi ế
c i c
i ua
mô tô Suzuki VX800 củ mình, nghiên c ứ lị sửquâ n s ự nấ nư ng và nhấ
a u ch ,uớ m
nháp rư u vang vớvợ à con mèo đ Gremlin củ họ
ợ i v a.
en
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
9
- MỤ LỤ
C C
PHẦ I
N – YÊU C Ầ PHẦ M Ề : CÁI GÌ VÀ TẠ SAO
U N M I
Cơ ả về êu c ầ phầ mề
bn y u nm
1.
Yêu cầ phầ mề từ uan đ m củ khách hàng
u nmq iể a
2.
Các thự h ành hiệ quả ho công nghệ êu cầ
c u c y u
3.
Cảtiế quy trình yêu c ầ c ủ bạ
in uan
4.
Yêu cầ phầ mề và quả lý rủ ro
u nm n i
5.
PHẦ II – PHÁT TRIỂ YÊU CẦ PHẦ M Ề
N N U N M
Thiếlậ tầ nhìn và phạ vi củ dự n
tpm m a á
6.
Tìm kiế tiếg nói củ khác h hàng
mn a
7.
Lắg nghe tiếg nói củ khách hàng
n n a
8.
Tài liệ hoá yêu cầ
u u
9.
10. Mộ bứ tranh đng giá 1024 lờ nói
tc á i
11. Các thuộ tính củ chấlư ng phầ mề
c a tợ nm
12. Giả rủ ro thông qua làm nguyên mẫ
mi u
13. Thiếlậ các ư tiên c ủ yêu cầ
tp a u
u
14. Kiể tra chấlư ng yêu cầ
m tợ u
15. Nhìn xa hơ việ phát triể yêu c ầ
nc n u
PHẦ III - QUẢ L Ý YÊU C Ầ PHẦ M Ề
N N U N M
16. Các nguyên lý và thự hành quả lý yêu cầ
c n u
17. Quả lý đ nghị ay đi
n ề th ổ
18. Các liên kếtrong c huỗyêu cầ
t i u
19. Công cụ ho quả lý yêu cầ
c n u
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
10
- PHẦ I
N
YÊU CẦ PHẦ MỀ : CÁI GÌ VÀ TẠ SAO
U N M I
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
11
- CHƯ NG 1
Ơ
CƠ BẢ VỀYÊU CẦ PHẦ MỀ
N U N M
“Xin chào, Phill? Tôi là Maria ở ộ hậ Nguồ nhân lự. Chúng tôi đng có vấ
Bpn n c a n
đ về ệhốg nhân lự (e mployee sy stem) mà anh đ lậ tr ình cho chúng tôi. Mộ
ềht n c ãp t
nhân viên vừ mớ thay đi tên củ c ô ta thành Sparkle Starlight và chúng tôi
a i ổ a
không th ể h iế cho hệhốg chấ nhậ tên thay đi này. Giúp tôi đợ không?”
kn tn p n ổ ưc
“Cô ta vừ c ư i mộ gã tên là Starlight à?”
aớt
“Không, cô ta không cư i chồg, c hỉhay đi tên thôi,”, Maria đ “Đ mớ là
ớ n t ổ i
áp. ó
vấ đ. Hệhốg c hỉ hấ nhậ ai đ thay đi tên n ế họthay đi tình trạg hôn
nề tn cp n ó ổ u ổ n
nhân củ mình.”
a
“Ồ tôi chư bao giờng hĩằg có ai đ lạ thay đi tên củ mình. Tôi không th ấ
, rn ói ổ a y
a
chị ói vớ tôi về iệ này khi chúng ta trao đi vớ nhau v ề ệhốg tr ư c đy. Đ
n i vc ổi ht n ớâ ó
là lý do chịhông thể hấ vào hộ thoạ Change Name nế trư c đ không nhấ
k nn p i u ớó n
vào hộ thoạ Change Mar ital Status, ” hill nói.
p i P
Maria nói, “Tôi nghĩ nh biế mọ ngư i đu có thểthay đi tên củ mình mộ
a t i ờề ổ a t
cách hợ pháp bấc ứ úc nào nế họ hích. Thêm n ữ, chúng tôi phả khoá s ổ ào
p t l u t a i v
thứ tớ như Spark le không thểhanh toán đợ hoá đ n củ c ô ấ. Có thể iúp
6i t ưc ơa y g
ng
tôi sử lỗ(bug) này không?”
ai
“Đ không phả là lỗ Tôi không hề iếlà chịầ tính năg này. Tôi b ậ vào vụ
i i! bt cn n n
ó
hệhốg đnh giá hiệ s uấ mớ rồ Tôi nghĩôi có m ộ số ề ghịhay đi khác
tn á u t i i. t t đn t ổ
cho hệthốg nhâ n lự đy ,”[tiếg giấ sộ s oạ , “ ây rồ Tôi có thểcốđ h
n câ n yt t] Đ i. ị n
chứ năg k ho á sổ ào cu ố tháng chứkhông phả cuố tuầ. Xin lỗ n hé. Lầ tớ,
cn v i i i n i ni
hãy nói nhữ g thứ ó cho tôi sớ hơ và làm ơ ghi ra giấ.”
n đ mn y
n
“Vậ tôi c ó thể iúp gì cho Sparkle đ
y g ây”, Maria vặ hỏ “ ô ấ không th ểhự
n i, C y tc
hiệ công việ đ ợ nế không thanh toán đ ợ hoá đn.”
n c ưc u ưc ơ
“Ồ Mar ia, đ k hôn g phả lỗ củ tôi.”P hill nói. “ ế cô nói trư c vớ tôi cái vụ
, ó iia Nu ới
thay đi tên đ thì mọ việ đ xuôi chèo mát mái. Cô không th ể ửlý tôi vì tôi
ổ i cã x
ó
không đc đ ợ ý nghĩủ cô. ”
ọ ưc ca
Giậ dữMar ia nặg lờ “ , thế ơđy, đy chính là lý do làm tôi ghét máy tính.
n n i, Ồ c ấâ
Hãy gọlạ tôi càng sớ càng t ốđ sử c ái này.”
ii m tểa
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
12
- Nế bạ đ từg trao đi vớ k hách hàng nhưtrên thì bạ biế khách hàng sẽ ắ
u nã n ổi nt rc
rố như ế ào nế phả sửdụg các phầ mề không thểh ự hiệ đợ cá c tác
i th n u i n nm t c n ưc
vụ ơ ả (tác vụ- task, đ ợ hiể là các công việ tr ư c đy l à củ ngư i dùng
c bn ưc c ớâ a ờ
u
nhữ g giờđ ợ giao cho máy tính thự hiệ, ví dụ ác vụin hóa đn , tác vụ ậ
n ưc c n t ơ lp
báo cáo tài chính - ND ). Còn về hía bạ, bạ đ thấ mọ việ rố tin h ra s ao nế
p n nã y i ci u
nhậ đ ợ mong muố củ khách hàng đi vớ hệhốg sau khi hệ hố g đ đợ
n ưc na ối tn t n ã ưc
cài đt. Cũg th ậbự bộ nế bạ phảs ử hệhốg ngay trong khi bạ đng xây
ặn tciun ia tn na
dự g hệhốg đng như ữg gì bạ đ đợ n gh e từ úc đu.
n tnú nh n n ã ưc l ầ
Nhiề v ấ đ nả sinh trong khi phát triể phầ mề có thể ó nguồ gố từquy
u nềy n n m c nc
trình và từsựthự hiệ các quy trình đ trong việ thu thậ, tài liệ hoá, thoả
c n c p u
ó
thuậ và lự chọ c ác yêu cầ phầ mề . Nhưcâu truyệ trên, miề thông tin thu
n a n u nm n n
thậ có thể ồ cả hữ g g ì không đợ nói ra, không đ ợ ghi nhậ, không đợ
p gm n n ưc ưc n ưc
thoảhu ậ.
tn
Khi xây dựg mộ ngôi nhà, phầ lớ trong s ố húng ta đu trao đi vớ nhà th ầ
n t nn c ề ổi u
về hu cầ và mong muố củ chúng ta từ ó ư c tính chi phí. Tuy vậ, phầ lớ
n u na đớ y nn
trong số ó lạkhông làm như ậ kh i đt hàng mộ s ả phẩ phầ mề . Khoảg
đi vy ặ tn m nm n
từ 0% đn 60% c ác lỗ xuấhiệ là do không tìm hi ể kỹ ài toán trong khâu yêu
4 ế i t n ub
cầ (Le ffingwell 1997). Nhiề tổchứ vẫ ứ g dụg các phư ng pháp theo kiể
u u c nn n ơ u
thuậ tiệ, c ó sao thì làm vậ (ad hoc ) đ làm yêu cầ. Kếquả ạđ ợ là mộ sự
nn y ể u t đt ư c t
vênh nhau giữ cá i khách hàng nghĩà chúng ta s ẽ ây dựg cho họvà cái mà
a x n
l
chúng ta nghĩ chúng ta đ l àm cho khách hàng.
ang
Do yêu cầ là đu vào củ quy trình sả xuấphầ mề và mọ hoạđng quả lý
u ầ a n t nm i tộ n
dựán, nên t ấc ả h ữg ngưi liên quan cầ phả đng thuậ trong mộ quy trình
t nn ờ n iồ n t
làm yêu cầ (còn gọ là công nghệ êu cầ - ND) hiệ quảChư ng này giúp b ạ:
u i y u u . ơ n
Hiể mộ số hái niệ chính trong việ ph át triể yêu cầ phầ mề .
u tk m c n u nm
Có hiể biếvề ộ s ố ấ đ liên quan đn yêu cầ có thể ả s inh trong
u t mt vn ề ế u ny
mộdự n phầ mề .
t á nm
Tìm hiể về ộ số ặ tính mà mộ yêu cầ tuyệvờ hoặ mộ đc tả êu
u mt đc t u ti c tặ y
cầ cầ phảc ó.
un i
Nhậ biếs ự hác nhau giữ phát triể yêu cầ và quả lý yêu cầ.
ntk a n u n u
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
13
- Đ NH
Ị NGHĨ A YÊU CẦ U P HẦ N MỀ M (SOFTW ARE
I.
REQUIREMENTS DEFINED)
Mộ khó khă đi vớ ngành công nghiệ p hầ mề là thiế các đ h nghĩchung
t nố i p nm u ịn a
về ác khái niệ mà chúng ta sửdụg đ mô tả ác công việ, mộ trong s ố ó là
c m nể c c t đ
đ h nghĩ khái niệ “ q uire men t” Đnh nghĩ này cầ đ ứg c ho nhiề đi
ịn a m re .ị a n áp n uố
tư ng liên quan khác nhau nh ư developers, customers, others (ngư i phát triể,
ợ ờ n
:
khách hàng, ngư i k hác – Mộ số huậngữ ẽ ư c đ nguyên ti ếg Anh – ND).
ờ tt t s đợ ể n
The IEEE Standard Glossary of Software Engineering Technology (1997) đ hị
n
nghĩmộyêu cầ là:
a t u
(1) M ộ quy ư c (condition) ho ặ mộ c ông năg (capa bility) củ sả p hẩ
t ớ c t n an m
phầ mề cầ thiếcho ngư i dùng đ giảquyế mộ v ấ đ hoặ đ đt
n mn t ờ ểi t t n ề c ểạ
đ ợ mộmụ tiêu.
ưc t c
(2) M ộ quy ư c hoặ mộ công năg cầ phảthỏ mãn hoặ cầ phảcó củ
t ớ c t n n i a cn i a
mộ hệ hốg hoặ mộ thành phầ hệ hốg (syste m component) n hằ
t tn c t n tn m
đ ứg mộ hợ đng, mộ tiêu chuẩ, mộ đc tả oặ mộ tài liệ b ắ
áp n t pồ t n tặ hc t ut
buộ khác .
c
(3) M ộ sựdiễ giả(repres entation) đợ ghi thành tài li ệ c ủ mộ quy ư c
t n i ưc ua t ớ
hoặ mộ công năg theo 1 hoặ 2.
ct n c
MỘ SỐ DIỄ GI Ả VỀ“ ÊU CẦ ”(SOM E INT ERPR ETAT IONS
N I Y U
1. T
OF “REQUIREMENTS”)
Đnh nghĩcủ IE EE bao hàm cả qua n đ m về êu cầ từngư i dùng (quan sát
ị aa 2 iể y u ờ
hành vi củ hệhốg từ ên ngoài) và từngư i phát triể (quan sá t hệhốg từ ên
a tn b ờ n tn b
trong).
Mộ trong cá c yế tốquan trọ g củ requirements là cầ đ ợ tài liệ hoá . T ôi đ
t u n a n ưc u ã
làm vi ệ trong mộ dựán mà tạ đ developers bị uay nhưchong chóng. Khách
c t ió q
hàng chính phát hoảg khi ngưi phân tích yêu cầ mớ đn và nói: “Chúng tôi cầ
n ờ u iế n
trao đi về êu cầ củ anh. ” hách hàng phả ứ g lạ “ ôi đ đ a cho ngưi tiề
ổy ua K n n i: T ãư ờn
nhiệ củ anh yêu cầ rồ” hự tếhì không có yêu cầ nào đ ợ tài li ệ hoá, vì
ma u i. T c t u ưc u
vậ mỗ ngư i phâ n tích mớ đ phảbắđu từ ộđng lộ xộ.
yi ờ iã i t ầ mt ố n n
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
14
- Th ư ng thì bạ đ có “yêu cầ” ồ nế bạ có đ ợ các emails, voice-mails, các
ờ nã u ri u n ưc
ghi chú, các cuộ gặ gỡngắ, các tậ hợ giấ tờlinh tinh từcác cuộ họ vớ
cp n pp y cpi
ngư i dùng.
ờ
Mộ đ h nghĩ kh ác gợ ý rằg yêu cầ là “các phát biể về hu cầ (need) củ
tị n a i n u u n u a
ngư i dùng làm đ m xuấ phát cho s ựphá t triể mộ chư ng trình ho ặ mộ hệ
ờ iể t n t ơ c t
thốg” J ones 1994). Ch uyên gia về êu cầ Alan Da vis (1993) đ mởrộg khái
n( y u n
ã
niệ n ày thành “mộ nhu cầ củ ngư i dùng ho ặ mộ đc tính , mộ chứ năg,
m t ua ờ c tặ t cn
mộ thuộ tính cầ thiế củ mộ hệ hốg có thể ư c hiể từmộ vịrí bên
t c n ta t tn đợ u t t
ngoài hệ hốg đ”C ác đ h nghĩ này nhấ mạh cái mà sả ph ẩ phả cung
t n ó. ị
n a n n n m i
cấ thay vì sả phẩ s ẽ ư c làm như ế ào từ óc nhìn củ ngư i thiếkế à thi
p n m đợ th n g a ờ tv
công.
Đnh nghĩs au đ xa hơ t ừnhu cầ ngư i dùng t ớ c ác đc tính (characte ristic)
ị a i u ờ i ặ
n:
củ hệhốg (Sommerville and Sawyer 1997):
a tn
Yêu cầ là… m ộ đc tảvề ái phả đ ợ thi c ông. Chúng là các mô tảvề
u tặ c i ưc
hành vi củ hệhốg phảnhưthế ào, hoặ v ề ộthuộ tính củ hệhốg
a tn i n c mt c a tn
phả nhưthế ào. Yêu cầ có thểà mộ ràng buộ về uy trình phát tri ể
i n u l t c q n
củ hệhốg.
a tn
Các đ h nghĩđ dạg trên chỉa rằg không có cá ch hiể s áng s ủ, khô ng nhậ
ịn aa n r n u a p
nhằg về hái niệ “êu c ầ”Yêu cầ thậ sựthư ng tồ tạ trong tâm trí con
n k my u. u t ờ ni
ngư i. Bấcứhình thứ tài liệ hoá nào về êu cầ (ví dụ ặ tả êu cầ) cũg chỉ
ờt c u y u đc y u n
là mộ mô hình, mộ sựtrình bày ra bên ngoài vềyêu cầ mà thôi (Lawrence
t t u
1998). Chúng ta c ầ đm bả rằg tấcả hữg ngư i liên quan củ dựán đu có
nả o n t nn ờ a ề
mộcá ch hiể chung về ác khái niệ đ ợ dùng đ mô tả ác yêu cầ.
t u c m ưc ể c u
CÁC MỨ CỦ YÊU CẦ (LE VEL S OF REQUIREMENTS)
C A U
2.
Các đ h nghĩ s au mà tôi sẽs ửdụg đi vớ mộ sốkhái niệ chun g, bạ s ẽ
ịn a nối t m n
thư ng gặ chúng trong lĩ vự c ông nghệ êu cầ.
ờ p nh c y u
Yêu c ầ phầ mề gồ 3 mứ phân biệ – yêu cầ kinh doanh (busines s
u n m m c t u
requirements, BR), yêu cầ ngư i dùng (user requirements, UR), yêu cầ
u ờ u
chứ nă g (functional requirements, F R) hoặ yêu cầ phi c hứ nă g (NF R).
cn c u cn
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
15
- BR biể diễ các mụ tiêu ởmứ cao c ủ tổ h ứ hoặ củ khách hàng đi
un c c acc ca ố
vớ hệ hốg. Chúng đ ợ tríc h ra (capture ) từmộ tài liệ mô tảầ nhìn
i tn ưc t u tm
(vision) và phạ vi (s cope) c ủ dựán.
m a
UR mô t ả ác tác vụ(tas k) mà ng ư i dùng phả hoàn thành b ằg cá ch sử
c ờ i n
dụg hệhốg như ộ công cụ àm việ. Chúng đ ợ trính ra trong các mô
n tn mt l c ưc
tảình hu ốg s ử ụg (us e ca se) ho ặ kị bả sử ụg.
t n dn c ch n d n
FR đ h nghĩ chứ năg củ phầ mề mà ng ư i phát triể cầ ph ảđ a
ịn a cn a n m ờ nn iư
vào sả phẩ đ ngư i dùng hoàn thành tác vụcủ họ do đ mà đ ứ g
n mể ờ a, ó áp n
các yêu cầ kinh doanh (BR). Mộ tính nă (feature) là mộ tậ hợ logic
u t tpp
ng
các yêu cầ chứ năg có liên quan lẫ nhau nhằ c ung c ấ cho ng ưi dùng
u cn n m p ờ
khả ăg (c apability) đp ứg mộ yêu cầ kinh d oanh. X em Hình 1-1 về
nn án t u
mốquan hệ iữ các mứ củ yêu cầ.
i ga ca u
HÌNH 1 -1. Quan hệ iữ mộs ốhành ph ầ c ủ yêu cầ phầ mề .
ga t t na u nm
FR đợ tài liệ hoá trong mộ đc tả yêu cầ phầ mề (Softwar e
ưc u tặ u n m
requirements specification, SRS), tài li ệ này mô tảđy đ ởmứ có thể
u ầủ c
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
16
- hành vi mong muố đi vớ hệ hốg bằg mộ cá i nhìn từbên ngoài. SRS
nố i tn n t
đ ợ s ử ụg trong phát triể, kiể thử đm bả c hấlư ng, quả lý dựán
ưc d n n m ,ả o tợ n
và các công việ liên quan khác củ dự n. Đ i vớ các s ả phẩ phứ tạ,
c a á ối n m cp
yêu cầ chứ năg có thểà tậ con c ủ yêu cầ hệhốg, nế mộph ầ củ
u cn lp a u tn u t na
yêu cầ chứ năg đ đ ợ đ h vị ành các software components.
u c n ã ưc ị n th
Ngoài các FR, SRS còn chứ các yêu cầ phi chứ năg. Đ là các tiêu
a u cn ó
chuẩ, quy đ h, khế ớ mà sả phẩ phả tuân thủ c ác mô tả ủ giao
n ị
n ưc n m i ; ca
diệ ngoài (external interface, nói thêm, giao diệ trong là giao diệ giữ c ác
n n n a
hệ hốg vớ nhau); cá c yêu c ầ hiệ suấ (p erforma nce require me nts ); c ác
tn i u u t
ràng buộ vềhiếkế à thi công; các thuộ tính ch ấlư ng. Các ràng bu ộ
c tt v c tợ c
(constraints) là các giớ hạ đợ đ h ra trong miề chọ lự khả ăg củ
i n ưc ị n n na nn a
ngư i phát triể khi thiếkế à thi công hệhốg. Các thuộ tính chấlư ng
ờ n t v tn c tợ
là các mô t ả ề ác thu ộ tính củ sả phẩ theo nhiề khía c ạh quan trọg
vc c an m u n n
vớng ư i dùng ho ặ vớngư i phát triể.
ờ ci ờ n
i
Chúng ta lấ mộ c hư ng trình xửlý từlàm ví dụ ề ác kiể yêu cầ khác nha u.
y t ơ vc u u
Mộ B R có thể iế “ gư i dùng có thể ử các lỗ chính tảs pelling e rrors) trong
t v t: N ờ sa i (
tài liệ mộ cá ch hiệ quả. Nh ưvậ, trong tài liệ h ư ng dẫ sửdụg sả phẩ
u t u ” y uớ n n n m
cầ ghi rằg mộ s pelling c hecker đợ đa vào s ả phẩ – đ là tính n ă đ
n n t ưc ư n m ó ng áp
ứ g B R này. Các UR t ư ng ứg có thể ô tả us e c ase ): “ìm ki ế cá c spelling
n ơn m ( T m
errors (lỗ chính tả trong tài liệ và quyếđ h liệ có nên thay th ế ỗ mis pelled
i u tị n u mi
)
word (t ừsai chính tả bằg mộ từđng lự ra từmộ dan h s ách các từđợ gợ
)n t ú a t ưc i
ý”. Spelling checker có nhiề yêu c ầ chứ năg c ụh ể hư ìm ki ế và làm sáng
u u cn tnt m
(highlight) mộ miss pelled wo rd, hiể thị ộ dialog box vớ các từthay thế ư c
t n mt i đợ
gợ ý…
i
Các nhà quả lý hoặ tiế thịó th ể ị nghĩ các yêu cầ kinh doanh cho phầ
n cp c đh n a u n
mề , đ u đ giúp công ty c ủ họ oạ đng hiệ quả ơ (đi vớ các hệ hốg
m iề ó a htộ u hn ố i tn
thông tin) ho ặ thành công trên thịrư ng (đi vớ các sả phẩ phầ mề thư ng
c tờ ối n m nm ơ
mạ . Tấcả á c yêu cầ ngư i dùng cầ phảs óng đi vớ các yêu cầ kinh doa nh .
i) tc u ờ n i ô i u
Các yêu cầ ngư i dùng giúp ng ư i phân tích cài đt mộ phầ c hứ năg (the bits
u ờ ờ ặt n cn
of functionality) mong muố trong s ả phẩ n hằ giúp ngư i dùng thự hiệ tác
n n m m ờ cn
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
17
- vụ ủ họN gư i phát triể (developers) s ử ụg các yêu cầ c hứ năg đ thiếkế
ca . ờ n dn u cnểt
các giảpháp thự thi chứ năg cầ thiế
i c cn n t.
Chú ý rằg yêu cầ, th eo đ h ng hĩ k hôn g bao hàm các chi tiếthiế kếcác chi
n u ịn a, t t,
tiếthi c ông, thông tin lậ kế oạh dựán, hoặ thông tin kiể th ử Hãy tách các
t p hc c m .
thông tin đ ra khỏ yêu cầ sa o cho yêu cầ chỉ hứ cá c thông tin hệhốg cầ
i u u ca tn n
ó
phảlàm cái gì. D ựán cũg c ó thể ó các k iể yêu cầ khác n hau nhưyêu cầ về
i n c u u u
môi trư ng phát triể, yêu cầ về h át hành sả phẩ và thích ứg nó vớ môi
ờ n u p n m n i
trư ng hỗtrợ Cá c kiể yêu cầ đ có thể nh hư ng nghiêm trọg đn s ựthành
ờ . u uó ả ở nế
công củ dự n nh ư trong cuố s ách này ta không xét đn chúng.
a á n ế
ng
MỖ DỰ ÁN Đ U CÓ YÊU CẦ (EVE RY P ROJE CT HAS
I Ề U
II.
REQUIREMENTS)
Fredrick Brooks xác đ h vai trò đc biệquan trọg củ quy trình yêu cầ đi vớ
ị n ặt n a uố i
các dựán phầ mề trong bài luậ kinh đ n nă 1987 củ ông, “ o Silver
n m n iể m a N
Bullet: Essence and Accidents of Software Engineering”:
Việ duy nhấ khó khă khi làm mộ hệhốg phầ mề là quyếđ h chính
c t n t tn nm tị n
xác cái cầ phả xây dự g. K hông có công việ nào là khó khă nhưthiế
n i n c t
n
lậ các yêu cầ kỹhuậ c hi tiế gồ tấ cả iao diệ vớ ngư i dùng, giao
p ut t t, m t g ni ờ
diệ vớ máy móc (machines) và vớ các hệhốg phầ mề khác . Không có
ni i tn nm
công việ nào ảh hư ng xấ đn hệ hốg bằg công việ này nế nó bị
c n ở uế tn n c u
thự hiệ s ai. Không có cô ng việ nào là khó khă hơ công việ này nế
c n c c u
nn
phảc hỉ sử lạ sau.
i nh a i
Mỗ hệ hốg phầ mề c ó ngư i dùng củ riêng nó. Thờ gian đ tìm hiể nhu
i tn n m ờ a i ể u
cầ củ họlà mộ khoả đu tưthen chố khiế dựán th ành công. Nhậ đ h này
ua t nầ t n nị n
là hiể nhiên đi vớ cá c ứg dụg đu cuố thư ng mạ các hệthốg thông tin
n ối n nầ i ơ i, n
doanh nghiệ, các s ả phẩ c hứ c ác phầ mề nhúng. Nế ch úng ta , vớ tư
p n m a nm u i cách
là nhữ g ngư i phát triể, không viế ra cá c yêu cầ đ khác h hàng có th ể hả
n ờ n t uể to
luậ về ó, thì l àm sao chúng ta biếkhi nào thì d ự n thự hiệ x ong . Chúng ta có
nn t á cn
thể á p ứg nhưthế ào cho khách hàng nế không biếc ái gì quan trọg đi vớ
đn n u t nối
họ Thậ c hí đi vớ n gay cả ác phầ mề phi thư ng mạ thì các yêu cầ cũg
. m ối c nm ơ i un
cầ phả đ ợ hiể cho rõ. Ví d ụcác thưviệ phầ mề , các components , c ác
n i ưc u n n m
tools đợ tạ ra c ho các nhóm p hát triể s ử ụg.
ưc o n dn
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
18
- KHI CÁC YÊU CẦ XẤ XẢ RA V Ớ C ON NGƯ I TỐ (WHEN
U U Y I Ờ T
III.
BAD REQUIREMENTS HAPPEN TO NICE PEOPLE)
Khi các nhóm dự n không quan tâm đn c ác quy trình yêu cầ thì họsẽ hiế dự
á ế u kn
án lâm vào tình thếnguy h iể , s ựthành công củ dựán là khó đm bả. Nế
m a ảo u
“thành công” đợ hiể là chuyể giao mộ s ả phẩ đp ứ g cá c mong đi củ
ưc u n tn má n ợa
ngư i dùng về hứ năg, về hấlư ng ởmứ c hi p hí đ thoảhuậ và trong mộ
ờ ccn ctợ c tn t
ã
thờ gian giớ hạ. Mộ số ủ ro về êu c ầ sẽ ưc thả luậ dư i đy. Chư ng 5
i in t ri y u đợ o n ớ â ơ
sẽhả luậ việ bạ có thểàm gì đ trá nh cá c rủro yêu cầ.
to n cn l ể i u
MỘ SỐ RỦ RO TỪ SỰ KHÔNG Đ Y Đ CỦ QUY T RÌNH YÊU CẦ
T I ẦỦA U
(SOME RISKS FROM INADEQUATE REQUIREMENTS PROCESS)
Nế cá c kiể ngư i dùng không đ ợ tính đn đy đ trong khi làm yêu cầ
u u ờ ưc ếầủ u
thì hệhốg c ó thể ẽ hông đ ợ chấ nhậ.
tn sk ưc p n
Việ phá t sinh các yêu cầ không chính thứ (cre eping use r requirements)
c u c
góp ph ầ làm h ỏg và giả chấlư ng sả phẩ .
n n m tợ n m
Các yêu cầ nhậ nhằg dẫ tớ tiêu phí nhiề thờ gian đ làm l ạ
u p n ni u i ể i.
“Sựmạ àng” (gold – plating) củ ngư i phát triể và ngư i dùng sẽ hêm
v a ờ n ờ t
vào hệhốg các tính năg (fea tures ) không cầ thiế
tn n n t.
Các đc tảtố thiế dẫ tớ c ác yêu cầ c hính bịhiế hụ (miss ing key
ặ i uni u tut
requirements).
Bỏ ua nhu cầ c ủ mộ số iể ngư i dùng nào đ sẽ ẫ tớ sựkhông hài
q ua t ku ờ ó dn i
lòng củ khá ch hàng.
a
Các yêu cầ đ ợ đ h nghĩkhông đy đ khiế đ hỏ lậ k ế oạh dự n
u ưc ị n a ầ ủ n òi i p h c á
chính xác và giám sát là không thể.
Các kiể ngư i dùng không đ ợ tính đn đ y đ (I nsufficient user
u ờ ưc ếầủ
involvement)
Khách hàng thư ng không hiể tạ s ao việ thu th ậ yêu c ầ và đm b ả chấ
ờ ui c p u ả o t
lư ng yêu cầ lạkhó khă đn thếNgư i phát triể không thể hấ mạh đn sự
ợ ui nế . ờ n nn n ế
tham gia củ ngư i dùng (user involvement), ho ặ cũg có thểlà làm vi ệ vớ
a ờ cn ci
ngư i d ùng thì không vui nhưviế code, h oặ cũg có thể ọnghĩ ọđ biế cái
ờ t cn h hã t
ngư i dùng cầ. Trong mộ s ốrư ng h ợ, trao đi trự tiế vớ nhữg ngư i s ẽ ử
ờ n t tờ p ốcpi n ờs
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
19
- dụg sả phẩ không phảlà đ u dễ àng, trong khi đ nhữ g ngư i đi diệ củ
n n m i iề d n ờạ n a
ó
khách hàng không phả bao giờcũg h iể đ ợ chính xác cái mà ngưi dùng thậ
i n u ưc ờ t
sựcầ. Không có sựth ay thế ào cho sựtha m gia củ cá c đi diệ ngư i dùng mộ
n n a ạn ờ t
cách trự tiế trong nhóm dựán nga y từsớ và kếhợ vớ họ iên tụ trong suố
cp m tpi l c t
quy trình phát triể.
n
Việ phát sinh các yêu cầ khô ng chính thứ (Cre eping user requirements)
c u c
Do các yêu c ầ liên t ụ tiế hoá khi phát triể dựán, nên dựán luôn có th ể ư t
u cn n vợ
khỏ c ác lị biể và ngân sách đ đ h. Các dựán nhưvậ không phả luôn dự
i ch u ãị n y i a
trên sựhiể biếthự tế ề ích thư c và đ phứ tạ củ các yêu cầ, cá c rủ ro ,
u t c vk ớ ộcpa u i
nă suấlàm việ củ dự n, việ s inh ra các yêu c ầ không chính thứ có thể ây
t ca á c u c g
ng
ra các vấ đ to lớ. Vấ đ có thể hụ huộ mộ phầ vào đ nghịhay đi yêu
nề n nề pt c t n ề t ổ
cầ củ n gư i dùng, ph ụhuộ mộ phầ vào cách nhữg ngư i phát triể đp ứg
ua ờ tc t n n ờ ná n
các yêu cầ và chỉ s ử mớ
u nh a i.
Đ quả lý việ sinh ra các yêu cầ không chính thứ, chúng ta cầ làm sáng sủ
ển c u c n a
các báo cáo về ầ nhìn, phạ vi, mụ tiêu, giớ hạ và các tiêu chuẩ thành
tm m c in n
công củ dựán. Báo cáo này s ẽ ư c s ử ụg như ộ khung tha m chiế mỗ khi
a đợ d n mt ui
mộtính năg mớ đ ợ đ nghịhoặ các thay đi yêu cầ đ ợ đ xuấ Mộ quy
t n i ưc ề , c ổ u ư c ề t. t
trình kiể soát thay đi đợ thiế kế ố bao gồ việ phân tích ảh hư ng củ
m ổ ưc t tt m c n ở a
mỗ thay đi đ ợ đ xuấ việ này sẽ iúp cá c ngư i liên quan đ ra quyế đ h
i ổ ư c ề t, c g ờ ề tị n
liệ thay đ i đ có đ ợ chấ nh ậ hay không trong sựcân b ằg các chi phí, thờ
u ổó ưc p n n i
hạ, nguồ lự hoặ các tính năg khác.
n nc c n
Do các thay đ i có thểa n truyề trên toàn bộ ả phẩ đng đ ợ phát triể nên
ổ l n sn ma ưc n
kiế trú c củ hệ hốg có thể ị há vỡdầ dầ. Các miếg vá s ẽ hiế chư ng
n a tn bp nn n kn ơ
trình khó khă hơ đ hiể và bả trì. S ự iên quan l ẫ nhau củ các mã thêm vào
n nểu o l n a
(insertion of additional code) có th ể ây ra các vấ đ đi vớ nguyên tắ thiế kế
g n ềố i c t
hệhốg bề vữ g. Nế bạ có thể ác đ h sớ các tính n ăg có khả ăg sẽhay
tn nn un x ịm
n n nn t
đi theo thờ gian thì bạ có thểhiếlậ mộ kiế trúc bề vữ g cho hệhốg, do
ổ i n ttp t n nn tn
vậ mà kiể s oát đợ tố hơ sựthay đi. C ác thay đi yêu cầ n ế đ ợ thự
y m ưc t n ổ ổ u u ưc c
hiệ thông qua thay đi thiếkếthay vì phát hành các bả vá lỗ thì sẽ iúp kiể
n ổ t, n i, g m
soát tốhơ chấlư ng s ả phẩ .
tn tợ n m
Cuố sách này thu ộ “ ủsá ch Côn g ng hệth ôn g tin” tủsá ch do SATA-APTECH tuyể ch ọ và giớ
n cT , n n i
thiệ. Bạ có thể và t ảvềrên www.sata-aptech.edu.vn , hoặ satablog2.wordpress.com
u n it c
xem
20
nguon tai.lieu . vn