Kỹ nghệ phần mềm
Software Engeneering
NguyÔn V¨n Vþ
Bé m«n C«ng nghÖ phÇn mÒm- Khoa CNTT- §HCN
Email:
[email protected]
Bài 4: Phân tích, đặc tả yêu cầu
NguyễnVănVỵ
Nội dung
Kh¸i niÖm vμ tÇm quan träng
Ph©n lo¹i c¸c yªu cÇu
Ph©n tÝch vμ x¸c ®Þnh yªu cÇu
§Æc t¶ yªu cÇu
§Þnh d¹ng tμi liÖu yªu cÇu
Bộ môn Công nghệ phần mềm – ĐHCN
2
TÀI LiỆU THAM KHẢO
NguyễnVănVỵ
1.
2.
3.
4.
5.
6.
Nguyễn Văn Vỵ, Nguyễn Việt Hà. Giáo trình kỹ nghệ phần
mềm. Nhà xuất bản Đại học Quốc gia Hà nội, 2008
Grady Booch, James Rumbaugh, Ivar Jacobson. The Unified
Modeling language User Guid. Addison-Wesley, 1998.
M. Ould. Managing Software Quality and Business Risk, John
Wiley and Sons, 1999.
Roger S.Pressman, Software Engineering, a Practitioner’s
Approach. Fifth Edition, McGraw Hill, 2001.
Ian Sommerville, Software Engineering. Sixth Edition, AddisonWasley, 2001.
Nguyễn Văn Vỵ. Phân tích thiết kế hệ thống thông tin hiện đại.
Hướng cấu trúc và hướng đối tượng, NXB Thống kê, 2002, Hà
Nội.
Bộ môn Công nghệ phần mềm – ĐHCN
3
Kh¸i niÖm, tÇm quan träng
NguyễnVănVỵ
X¸c ®Þnh vμ ®Æc t¶ yªu cÇu:
Lμ kh©u kü thuËt ®Çu tiªn cña qu¸ tr×nh ph¸t triÓn
phÇn mÒm. ThiÕu nã kh«ng thÓ tiÕp tôc qu¸ tr×nh
Lμ sù phèi hîp cña c¶ nhμ ph¸t triÓn vμ kh¸ch
hμng
Nã quyÕt ®Þnh chÊt l−îng phÇn mÒm ®¹t ®−îc víi
chi phÝ dự kiến vμ thêi h¹n cho tr−íc.
Bộ môn Công nghệ phần mềm – ĐHCN
4
C¸c yªu cÇu vμ môc tiªu
NguyễnVănVỵ
C¸c yªu cÇu lμ c¸c m« t¶ tõ trõu t−îng ®Õn chi tiÕt vÒ
dÞch vô mμ hÖ thèng cung cÊp còng nh− c¸c rμng
buéc lªn sù ph¸t triÓn vμ ho¹t ®éng cña nã
Môc ®Ých c¸c yªu cÇu:
Lμm c¬ së cho viÖc mêi thÇu (cÇn cã gi¶i thÝch)
Lμm c¬ së ký kÕt hîp ®ång thÇu (cÇn ®ñ chi tiÕt)
Lμm t− liÖu đầu vμo cho thiÕt kÕ vμ triÓn khai
(cÇn ®Çy ®ñ, chÝnh x¸c, kh«ng m©u thuÉn )
Bộ môn Công nghệ phần mềm – ĐHCN
5
Gi¸ ph¶i tr¶ cho viÖc t×m vμ söa lçi
NguyễnVănVỵ
60-100
100
mức chi phí
(lần)
10.0
10
1
0.75
xác định
y.cầu
1.0
thiết
kế
1.5
mã
hóa
3.0
k.thử
kiểm
thử tích hợp
Đưa vào
sử dụng
Mức chi phí phải trả do sót lỗi qua các giai đoan
Bộ môn Công nghệ phần mềm – ĐHCN
6
C¸c lo¹i yªu cÇu
NguyễnVănVỵ
Yªu cÇu ng−êi dïng:
§¬n gi¶n, dÔ hiÓu
DiÔn ®¹t b»ng ng«n ng÷ tù nhiÖn vμ s¬ ®å
Nªu râ dÞch vô hÖ thèng cung cÊp vμ c¸c rμng buéc trong
ho¹t ®éng cña nã
Yªu cÇu hÖ thèng:
M« t¶ ®ñ chi tiÕt vÒ c¸c dÞch vô hÖ thèng cung cÊp
C¸c ®Æc tr−ng mμ hÖ thèng cÇn cã
Nh− mét hîp ®ång gi÷a kh¸ch hμng vμ nhμ thÇu
Yªu cÇu khi ®Æc t¶ (phÇn mÒm)
§ñ chi tiÕt lμm c¬ së cho thiÕt kÕ vμ triÓn khai
Bộ môn Công nghệ phần mềm – ĐHCN
7
Nh÷ng ng−êi ®äc yªu cÇu
NguyễnVănVỵ
Ng−êi dïng hÖ thèng
Ng−êi qu¶n lý cña kh¸ch hμng
Kü s− cña kh¸ch hμng
Ng−êi qu¸n lý nhμ thÇu
Nhμ kiÕn tróc hÖ thèng
C¸c nhμ ph¸t triÓn vμ b¶o tr× phÇn mÒm
yªu cÇu viÕt ra cÇn ®¸p øng ®−îc tÊt c¸c ®èi t−îng
Bộ môn Công nghệ phần mềm – ĐHCN
8
Yªu cÇu tõ nghiÖp vô
NguyễnVănVỵ
C¸c yªu cÇu chøc n¨ng
M« t¶ c¸c chøc n¨ng hay c¸c dÞch vô mμ hÖ thèng phÇn
mÒm cÇn cung cÊp
C¸c yªu cÇu phi chøc n¨ng
M« t¶ c¸c rμng buéc ®Æt lªn dÞch vô vμ qu¸ tr×nh ph¸t triÓn
hÖ thèng (vÒ chÊt l−îng, vÒ m«i tr−êng, chuÈn sö dông, qui
tr×nh ph¸t riÓn..)
C¸c yªu cÇu miÒn/lÜnh vùc (ngoμi)
Nh÷ng yªu cÇu ®Æt ra tõ miÒn øng dông, ph¶n ¶nh nh÷ng
®Æc tr−ng cña miÒn ®ã
Bộ môn Công nghệ phần mềm – ĐHCN
9
C¸c yªu cÇu chøc n¨ng
NguyễnVănVỵ
M« t¶ chøc n¨ng hay c¸c dÞch vô cña hÖ thèng
Chóng phô thuéc vμo:
lo¹i phÇn mÒm sÏ ®−îc x©y dùng
sù mong muèn cña kh¸ch hμng
lo¹i hÖ thèng mμ phÇn mÒm trî gióp
Møc ®é c¸c yªu cÇu:
trõu t−îng: hÖ thèng lμm g×
chi tiÕt:
nhiÖm vô cô thÓ hÖ thèng cÇn thùc hiÖn
Bộ môn Công nghệ phần mềm – ĐHCN
10
Yªu cÇu phi chøc n¨ng
NguyễnVănVỵ
Yªu cÇu vÒ s¶n phÈm:
tèc ®é, ®é tin cËy, bé nhí cÇn, giao diÖn..
Yªu cÇu vÒ tæ chøc/ tiÕn tr×nh ph¸t triÓn:
c¸c chuÈn ¸p dông, ph−¬ng ph¸p thiÕt kÕ, ng«n ng÷ lËp tr×nh,
m« h×nh tiÕn tr×nh ...
Yªu cÇu tõ bªn ngoμi:
vÒ chi phÝ, vÒ thêi gian, b¶n quyÒn, liªn kÕt ...
Bộ môn Công nghệ phần mềm – ĐHCN
11
C¸c lo¹i yªu cÇu phi chøc n¨ng
NguyễnVănVỵ
Yªu cÇu phi
chøc n¨ng
Yªu cÇu s¶n
phÈm
Yªu cÇu hiÖu
qu¶
Yªu cÇu tin
cËy
Yªu cÇu kh¶
dông
Yªu cÇu vÒ
hiÖu n¨ng
Yªu cÇu vÒ
tæ chøc
Yªu cÇu kh¶
chuyÓn
Yªu cÇu
chuyÓn giao
Yªu cÇu
kh«ng gian
r
Bộ môn Công nghệ phần mềm – ĐHCN
Yªu cÇu tõ
bªn ngoµi
Yªu cÇu ho¹t
®éng bªn trong
Yªu cÈu triÓn
khai
Yªu cÇu ®¹o
lý
Yªu cÇu vÒ
chuÈn
Yªu cÇu
ph¸p lý
Yªu cÇu c¸
nh©n
Yªu cÇu vÒ
an toµn
12
TiÕn tr×nh kü nghÖ yªu cÇu
NguyễnVănVỵ
C¸c ho¹t ®éng cña tiÕn tr×nh kü nghÖ:
Nghiªn cøu kh¶ thi
Dù ¸n kh¶ thi
Ph©n tÝch, x¸c ®Þnh yªu cÇu
M« h×nh hÖ thèng
§Æc t¶ yªu cÇu
C¸c yªu cÇu ®−îc ®Æc t¶
ThÈm ®Þnh yªu cÇu
Tμi liÖu yªu cÇu
Bộ môn Công nghệ phần mềm – ĐHCN
13
S¬ ®å tiÕn tr×nh kü nghÖ yªu cÇu
NguyễnVănVỵ
Nghiªn cøu
kh¶ thi
B¸o c¸o
kh¶ thi
Ph©n tÝch, x¸c
®Þnh yªu cÇu
§Æc t¶
yªu cÇu
ThÈm ®Þnh
yªu cÇu
M« h×nh
hÖ thèng
C¸c ®Æc t¶
yªu cÇu
Tµi liÖu
Yªu cÇu
Bộ môn Công nghệ phần mềm – ĐHCN
14
Nghiªn cøu kh¶ thi
NguyễnVănVỵ
Môc tiªu cña nghiªn cøu kh¶ thi lμ ®i ®Õn kÕt luËn:
Cã nªn ph¸t triÓn hÖ thèng hay kh«ng?
Néi dung nghiªn cøu kh¶ thi tËp trung ®Ó tr¶ lêi c¸c c©u
hái sau:
HÖ thèng ®−îc x©y dùng sÏ gióp g× cho tæ chøc?
HÖ thèng sö dông c«ng nghÖ nμo, kinh phÝ bao
nhiªu, thêi gian bao l©u?
HÖ thèng cÇn ph¶i tÝch hîp víi c¸c hÖ thèng nμo
®ang sö dông?
Bộ môn Công nghệ phần mềm – ĐHCN
15
TriÓn khai nghiªn cøu kh¶ thi
NguyễnVănVỵ
B¸o c¸o kh¶ thi ®−îc viÕt dùa trªn th«ng tin, b¸o c¸o thu
thËp ®−îc, nh÷ng ®¸nh gi¸ ban ®Çu vÒ hÖ thèng hiÖn t¹i
vμ ph¸c ho¹ c¸c ph−¬ng ¸n dù kiÕn
C©u hái ®Æt ra cho ng−êi cña tæ chøc:
C¸i g× xÈy ra nÕu hÖ thèng kh«ng ®−îc triÓn khai?
Nh÷ng vÊn ®Ò g× ®ang ®Æt ra cÇn gi¶i quyÕt?
HÖ thèng ®−îc ®Ò suÊt trî gióp hä nh− thÕ nμo?
Nh÷ng tÝch hîp g× cÇn ph¶i cã?
C«ng nghÖ míi g×, kü n¨ng g× cÇn cã?
Nh÷ng tiÖn Ých g× cÇn sù trî gióp tõ hÖ thèng
Bộ môn Công nghệ phần mềm – ĐHCN
16
Ph©n tÝch t×m ra yªu cÇu
NguyễnVănVỵ
Ph©n tÝch vμ x¸c ®Þnh yªu cÇu: cßn gäi lμ ph¸t hiÖn yªu
cÇu.
C¸c nhμ kü thuËt cïng víi kh¸ch hμng (ng−êi dïng, kü s−,
nhμ qu¶n lý, chuyªn gia miÒn, ) lμm râ:
ph¹m vi lÜnh vùc øng dông
c¸c dÞch vô mμ hÖ thèng cÇn cung cÊp
c¸c rμng buéc ®Æt lªn ho¹t ®éng cña nã
B»ng c¸ch x©y dùng c¸c m« h×nh ph©n tÝch (m« h×nh
nghiÖp vô cña hÖ thèng) ®Ó lμm râ c¸c yªu cÇu trªn
Bộ môn Công nghệ phần mềm – ĐHCN
17
Nh÷ng khã kh¨n cña ph©n tÝch
NguyễnVănVỵ
Kh¸ch hμng th−êng m¬ hå vÒ yªu cÇu, kh«ng biÕt râ
m×nh muèn g×, dÔ lÉn lén gi÷a yªu cÇu vμ mong muèn.
Hä thÓ hiÖn yªu cÇu theo thuËt ng÷ riªng
Kh¸ch hμng ®a d¹ng, cã thÓ cã yªu cÇu m©u thuÉn
Nh÷ng yÕu tè tæ chøc vμ chÝnh s¸ch cã thÓ ¶nh h−ëng
®Õn yªu cÇu
Yªu cÇu th−êng mang tÝnh ®Æc thï, khã hiÓu, khã cã
chuÈn chung
C¸c yªu cÇu thay ®æi trong qu¸ tr×nh ph©n tÝch: m«i
tr−êng nghiÖp vô thay ®æi, cã ng−êi liªn quan míÝ
Bộ môn Công nghệ phần mềm – ĐHCN
18
Môc tiªu, mong muèn vμ yªu cÇu
NguyễnVănVỵ
Môc tiªu, mong muèn : lμ c¸i h−íng tíi
VÝ dô:"x©y dùng giao diÖn th©n thiÖn víi ng−êi dïng"
Yªu cÇu: lμ c¸i cô thÓ, kiÓm tra ®−îc
VÝ dô: "giao diÖn ®å häa, cã c¸c lÖnh ®−îc
chän b»ng thùc ®¬n hay biÓu t−îng"
nhiÖm vô cña ng−êi ph©n tÝch lμ gîi më, x¸c ®Þnh
®óng, ®Çy ®ñ, chÝnh x¸c c¸c yªu cÇu
Bộ môn Công nghệ phần mềm – ĐHCN
19
TiÕn tr×nh ph©n tÝch yªu cÇu
NguyễnVănVỵ
C¸c ho¹t ®éng chÝnh bao gåm:
T×m hiÓu miÒn øng dông
Ph¸t hiÖn, thu thËp yªu cÇu
Ph©n lo¹i yªu cÇu
Gi¶i quyÕt xung ®ét (nÕu cã)
S¾p −u tiªn c¸c yªu cÇu
ThÈm ®Þnh yªu cÇu
Bộ môn Công nghệ phần mềm – ĐHCN
20