2. Bộ môn Công nghệ phần mềm – ĐHCN 2
NguyễnVănVỵ
Nội dung
Bài 2: Kỹ nghệ phần mềm
§Þnh nghÜa vμ kh¸i niÖm
LÞch sö ph¸t triÓn
C¸c m« h×nh tiÕn tr×nh
3. Bộ môn Công nghệ phần mềm – ĐHCN 3
NguyễnVănVỵ
TÀI LiỆU THAM KHẢO
1. 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
2. Grady Booch, James Rumbaugh, Ivar Jacobson. The Unified
Modeling language User Guid. Addison-Wesley, 1998.
3. M. Ould. Managing Software Quality and Business Risk, John
Wiley and Sons, 1999.
4. Roger S.Pressman, Software Engineering, a Practitioner’s
Approach. Fifth Edition, McGraw Hill, 2001.
5. Ian Sommerville, Software Engineering. Sixth Edition, Addison-
Wasley, 2001.
6. 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.
4. Bộ môn Công nghệ phần mềm – ĐHCN 4
NguyễnVănVỵ
C¸c ®Þnh nghÜa kü nghÖ phÇn mÒm
SE lμ thiÕt lËp vµ sö dông c¸c nguyªn lý c«ng
nghÖ ®óng ®¾n ®Ó ®−îc phÇn mÒm 1 c¸ch kinh
tÕ, võa tin cËy võa lμm viÖc hiÖu qu¶ trªn c¸c m¸y
thùc (Bauer [1969])
SE lμ nguyªn lý kü nghÖ liªn quan ®Õn tÊt c¶ c¸c
mÆt lý thuyÕt, ph−¬ng ph¸p vµ c«ng cô cña
phÇn mÒm (Sommerville [1995])
Kü nghÖ phÇn mÒm – Software Engineering:SE
5. Bộ môn Công nghệ phần mềm – ĐHCN 5
NguyễnVănVỵ
SE lμ bé m«n tÝch hîp c¶ qui tr×nh, c¸c ph−¬ng
ph¸p, c¸c c«ng cô ®Ó ph¸t triÓn phÇn mÒm m¸y
tÝnh (Pressman [1995])
Ba mặt c¬ b¶n của kü nghÖ phÇn mÒm lμ:
1. Quy tr×nh/thñ tôc
2. Ph−¬ng ph¸p
3. C«ng cô
§Þnh nghÜa SE
1 ?
3
2
4
1
32
15. Bộ môn Công nghệ phần mềm – ĐHCN 15
NguyễnVănVỵ
VÝ dô: BiÓu ®å luång d÷ liÖu møc 0 bμi to¸n
tr«ng göi xe
0
HÖ
thèng
Kh¸ch
DS thùc thÓ
a. xxxx
b. xxxx
c. xxxx
d. xxxx
e. xxxx
f. xxxx
a b c d e f
1 R C U R
C
2 R R U C
3 R R
0
1 2 3
3.0
gi¶i
quyÕt sù
cè
t.t. xe
nÐt ®á lμ phÇn thay thÕ hay thªm vμo
2.0
tr¶ xe
kh¸ch
vÐ
xe
"kh«ng g.q."
phiÕu chi
biªn b¶n
tt sù cè
phiÕu
t.to¸n
phiÕu t.to¸ne
biªn b¶n f
1.0
nhËn xekh¸ch
"hÕt chç"
vÐ xe
b¶ng gi¸a
sæ xevµoc sæ xe rad
vÐ xeb
"vÐ
z¶"
phiÕu chig
M« h×nh nghiÖp vô
26. Bộ môn Công nghệ phần mềm – ĐHCN 26
NguyễnVănVỵ
TiÕn tr×nh phÇn mÒm
1. X¸c định yªu cầu (Requirements)
KHÁCH HÀNG
Khã kh¨n hệ
thèng thùc,
mong ®îi vÒ
hÖ phần mềm §Æc t¶ yªu
cÇu phÇn
mÒm
®éi ph¸t triÓn
27. Bộ môn Công nghệ phần mềm – ĐHCN 27
NguyễnVănVỵ
Chức n¨ng hệ
thống
Rµng buộc
hệ thống
TiÕn tr×nh phÇn mÒm
2. Ph¸t triển phần mềm (Development)
ĐÆc t¶ yªu
cÇu
X¸c định yªu cầu
®éi ph¸t triÓn
HÖ thèng
phÇn mÒm
vËn hµnh
®óng
file.exe
file.com
29. Bộ môn Công nghệ phần mềm – ĐHCN 29
NguyễnVănVỵ
4. TiÕn hãa phần mềm (Evolution)
®éi ph¸t triÓn
ThÈm ®Þnh
HÖ thèng
phÇn mÒm
®¸p øng yªu
cÇu
file.exe
file.com
HÖ thèng
phÇn mÒm
®−îc tiÕn
hãa
file.exe
file.com
file.com
m«i tr−êng thay ®æi
TiÕn tr×nh phÇn mÒm
30. Bộ môn Công nghệ phần mềm – ĐHCN 30
NguyễnVănVỵ
M« h×nh tiÕn tr×nh phÇn mÒm
M« h×nh tiÕn tr×nh (software process model) lμ
c¸ch biÓu diÔn trõu t−îng tiÕn tr×nh phÇn mÒm theo
c¸ch nh×n cô thÓ.
C«ng việc 1
C«ng việc 2
Công việc 1.1.1
C«ng việc 1.1
Công việc 1.2
Công việc 2.1
Công việc 2.1.1
TIẾN TRÌNH CỤ THỂ
Giai đoạn 1 Giai đoạn 2 Giai đoạn 3
MÔ HÌNH TIẾN TRÌNH
32. Bộ môn Công nghệ phần mềm – ĐHCN 32
NguyễnVănVỵ
Chi phÝ cña kü nghÖ phÇn mÒm
Chi phí phát triển tiến hóa
đặc tả thiết kế phát triển kiểm thử tích hợp
0 25 50 75 100
Phân bố chi phí phát triển (nãi chung)
26 23 3813
đặc tả phát triển tiến hóa kiểm thử hệ thống
0 25 50 75 100
10 60 30
33. Bộ môn Công nghệ phần mềm – ĐHCN 33
NguyễnVănVỵ
Chi phÝ cña kü nghÖ phÇn mÒm
Chi phÝ hÖ cã vßng ®êi dμi
phát triển hệ thống tiến hóa hệ thống
0 25 50 75 100
25 75
đặc tả phát triển kiểm thử hệ thống
0 25 50 75 100
chi phí phát triển sản phẩm trùc tuyÕn
35 578
43. Bộ môn Công nghệ phần mềm – ĐHCN 43
NguyễnVănVỵ
Kü nghÖ hÖ thèng
§Æc tÝnh næi tréi cña hÖ thèng dùa trªn m¸y tÝnh
• Thuéc tÝnh chøc n¨ng: ®iÒu khiÓn 1 hÖ
• Thuéc tÝnh phi chøc n¨ng: ®é tin cËy, an toμn
Mμ:
tõng bé pbËn kh«ng thÓ cã ®−îc
quyÕt ®Þnh ®Õn toμn hÖ thèng
Kü nghÖ hÖ thèng liªn quan ®Õn:
• ¸p dông c¸c nguyªn lý tÝch hîp
• gi¶m chi phÝ lμm l¹i toμn hÖ thèng
44. Bộ môn Công nghệ phần mềm – ĐHCN 44
NguyễnVănVỵ
Kü nghÖ hÖ thèng
TiÕn tr×nh ký nghÖ hÖ thèng (system engineering
process)
xác định
yêu cầu
xác định
yêu cầu
tiến hóa
hệ thống
tiến hóa
hệ thống
loại bỏ
hệ thống
loại bỏ
hệ thống
thiết kế
hệ thống
thiết kế
hệ thống
phát triển
hệ con
phát triển
hệ con
Cài đặt
hệ thống
Cài đặt
hệ thống
tích hợp
hệ thống
tích hợp
hệ thống
các hệ
cứng
các hệ
mềm
45. Bộ môn Công nghệ phần mềm – ĐHCN 45
NguyễnVănVỵ
Kh¸i niệm liªn quan - Khoa häc m¸y tÝnh
(Computer Sience)
Khoa häc m¸y tÝnh liªn quan ®Õn nh÷ng vÊn ®Ò lý
thuyÕt vμ nÒn t¶ng cho m¸y tÝnh vμ phÇn mÒm
Kü nghÖ phÇn mÒm liªn quan ®Õn thùc tiÔn cña
viÖc ph¸t triÓn vμ xuÊt ra c¸c phÇn mÒm hiÖu qu¶
Lý thuyÕt khoa häc m¸y tÝnh cßn ch−a ®ñ cho c¸c
ho¹t ®éng cña kü nghÖ phÇn mÒm
kü nghÖ
phÇn mÒm
khoa
häc m¸y
tÝnh