Nhập mơn
Cơng nghệ học Phần mềm
(Introduction to Software Engineering)
Department of Software Engineering
Faculty of Information Technology
Hanoi University of Technology
TEL: 048682595 FAX: 048692906
Email: cnpm@ithut.edu.vn
HUT, Falt.
ª Dept. of SE, 2001
SEI.1
Cutrỳcmụnhc
ã 45tit+1ỏnmụnhc
ã Cnnhngkinthccnbnv
CNTT
ã Cungcpnhngnguyờnlýchungv
CụngnghhcPhnmm(CNHPM)
ã Cungcpkinthchccỏcmụn
chuyờnngnhhpnhPhõntớchv
thitkphnmm,Xõydngvỏnh
giỏphnmm,Quntrdỏnphn
HUT,Falt.
SEưI.2
mm,... ê Dept.ofSE,2001
Cutrỳcmụnhc(tip)
ã Nidung:gm6phnvi11chng
GiithiuchungvCNHPM(3bui)
QunlýdỏnPM(2b)
Yờucungidựng(1b)
Thitkvlptrỡnh(2b)
Kimthvbotrỡ(2b)
Chnõngcaovtngkt(1b+1b)
ã ỏnhgiỏ:Thihtmụn+ỏnmụn
hc
HUT,Falt.
ê Dept.ofSE,2001
SEưI.3
Tiliuthamkho
ã R.Pressman,SoftwareEngineering:APractioners
Approach.5 thEd.,McGrawưHill,2001
ã R.Pressman,Knghphnmm.Tp1,2,3.
NXBGiỏodc,HNi,1997(Ngidch:Ngụ
TrungVit)
ã I.Sommerville,SoftwareEngineering.5 thEd.,
AddisonưWesley,1995
ã K.Kawamura,NhpmụnCụngnghhcPhn
mm.NXBKinkiưKagaku,Tokyo,2001(Ting
Nht)
HUT,Falt.
ê Dept.ofSE,2001
SEưI.4
Phần I
Giới thiệu chung về CNHPM
Chương 1: Bản chất phần mềm
1.1 Định nghĩa chung về phần mềm
1.2 Kiến trúc phần mềm
1.3 Các khái niệm
1.4 Đặc tính chung của phần mềm
1.5 Thế nào là phần mềm tốt ?
1.6 Các ứng dụng phần mềm
HUT, Falt.
ª Dept. of SE, 2001
SEI.5
1.1.nhnghachungvphn
mm
ã Phnmm(SoftwareưSW)nhmt
khỏiniminghaviphncng
(HardwareưHW),tuynhiờn,õyl2
khỏinimtngi
ã Txa,SWnhthcchokhụng
hocbỏnkốmtheomỏy(HW)
ã Dndn,giỏthnhSWngycngcao
vnaycaohnHW
HUT,Falt.
ê Dept.ofSE,2001
SEưI.6
CỏcctớnhcaSWvHW
HW
ã
ã
ã
ã
ã
SW
Vtcng
Kimloi
Vtcht
Huhỡnh
Snxutcụngnghip
bimỏymúclchớnh
ã nhlnglchớnh
ã Hnghúc,haomũn
HUT,Falt.
ã
ã
ã
ã
ã
Vtmm
Kthutsdng
Trutng
Vụhỡnh
Snxutbicon
ngilchớnh
ã nhtớnhlchớnh
ã Khụnghaomũn
ê Dept.ofSE,2001
SEưI.7
nhngha1:Phnmml
ã Cỏclnh(chngtrỡnhmỏytớnh)khi
cthchinthỡcungcpnhng
chcnngvktqumongmun
ã Cỏccutrỳcdliulmchochng
trỡnhthaotỏcthụngtinthớchhp
ã Cỏctliumụtthaotỏcvcỏchs
dngchngtrỡnh
HUT,Falt.
ê Dept.ofSE,2001
SEưI.8
SWinghaviHW
ã VaitrũSWngycngthhintri
ã Mỏytớnhl...chichpkhụngcúSW
ã Ngynay,SWquytnhchtlng
mththngmỏytớnh(HTMT),lch
ctlừi,trungtõmcaHTMT
ã HthngmỏytớnhgmHWvSW
HUT,Falt.
ê Dept.ofSE,2001
SEưI.9
nhngha2
Trongmththngmỏytớnh,nutrbi
cỏcthitbvcỏcloiphkinthỡphncũn
lichớnhlphnmm(SW)
ã Nghahp:SWldchvchngtrỡnh
tngkhnngxlýcaphncngcamỏy
tớnh(nhhiuhnhưOS)
ã Ngharng:SWlttccỏckthutng
dngthchinnhngdchvchcnng
chomcớchnoúbngphncng
HUT,Falt.
ê Dept.ofSE,2001
SEưI.10
SWtheongharng
ã KhụngchSWcbnvSWngdng
ã Phigmckhnng,kinhnghim
thctinvknngcaks(ngi
chraphnmm):Knowưhowof
SoftwareEngineer
ã Lttccỏckthutlmchosdng
phncngmỏytớnhthiuqucao
HUT,Falt.
ê Dept.ofSE,2001
SEưI.11
Phần mềm là gì ?
Nhóm các
Kỹ thuật,
Phương pháp
luận
Nhóm các
chương trình
Nhóm các
tư liệu
Kinh nghiệm kỹ sư,
knowhow
HUT, Falt.
ª Dept. of SE, 2001
SEI.12
Nhúmcỏckthut,phngphỏp
lun
ã Cỏckhỏinimvtrỡnhtcthhúamth
thng
ã Cỏcphngphỏptipcngiiquytvn
ã Cỏctrỡnhtthitkvphỏttrinc
chunhúa
ã Cỏcphngphỏpctyờucu,thitk
hthng,thitkchngtrỡnh,kimth,
tonbquytrỡnhqunlýphỏttrinphn
mm
HUT,Falt.
ê Dept.ofSE,2001
SEưI.13
Nhúmcỏcchngtrỡnh
ã Lphngiaodinviphncng,tothnht
cỏcnhúmlnhchthchomỏytớnhbittrỡnht
thaotỏcxlýdliu
ã Phnmmcbn:vichcnngcungcpmụi
trngthaotỏcddngchongisdng
nhmtnghiunngxlýcaphncng(vớ
dnhOSlchngtrỡnhhthng)
ã Phnmmngdng:dựngxlýnghipv
thớchhpnoú(qunlý,ktoỏn,...),phn
mmúnggúi,phnmmcangidựng,...
HUT,Falt.
ê Dept.ofSE,2001
SEưI.14
Nhúmcỏctliu
ã Nhngtliuhuớch,cúgiỏtrcaov
rtcnthitphỏttrin,vnhnh
vbotrỡphnmm
ã chraphnmmvitincy
caocntoracỏctliuchtlng
cao:ctyờucu,mụtthitk
tngloi,iukinkimth,thtc
vnhnh,hngdnthaotỏc
HUT,Falt.
ê Dept.ofSE,2001
SEưI.15
Nhngyutkhỏc
ã Snxutphnmmphthucrtnhiu
voconngi(ksphnmm).Khnng
hthnghúatrutng,khnnglp
trỡnh,knngcụngngh,kinhnghimlm
vic,tmbaoquỏt,...:khỏcnhautng
ngi
ã Phnmmphthucnhiuvoýtng
(idea)vknng(knowưhow)ca
ngi/nhúmtỏcgi
HUT,Falt.
ê Dept.ofSE,2001
SEưI.16
1.2Kintrỳcphnmm
1.2.1Phnmmnhỡntcutrỳcphõncp
ã Cutrỳcphnmmlcutrỳcphõncp
(hierarchicalstructure):mctrờnlhthng
(system),dilcỏchthngcon
(subsystems)
ã Dihthngconlcỏcchngtrỡnh
ã DichngtrỡnhlcỏcModuleshoc
Subroutinesvicỏcis(arguments)
HUT,Falt.
ê Dept.ofSE,2001
SEưI.17
Kiến trúc phần mềm
System
Subsystem
Program
Temporary
Master files
Subsystem
Jobstep unit
Program
files
Module
Arguments
Module
Job unit
Arguments
Subroutine
Member unit
Common Module
HUT, Falt.
ª Dept. of SE, 2001
SEI.18
1.2.2Phnmmnhỡntcutrỳcvth
t c
ã Haiyutcuthnhcaphnmm
Phngdincutrỳc
Phngdinthtc
ã Cutrỳcphnmm:biuthkintrỳccỏc
chcnngmphnmmúcúviukin
phõncpcỏcchcnng(thitkcutrỳc)
ã Thitkchcnng:theochiung(cng
sõucngphctp)vchiungang(cng
rngcngnhiuchcnng,quimụcngln)
HUT,Falt.
ê Dept.ofSE,2001
SEưI.19
Cấu trúc phần mềm
Function B
Function D
Function E
Function C
Function F
Cấu trúc chiều đứng
(Vertical structure)
Fuction A
Cấu trúc chiều ngang
(Horizontal structure)
HUT, Falt.
ª Dept. of SE, 2001
SEI.20
Thtc(procedure)phn
mm
ã Lnhngquanhgiacỏctrỡnhtmphn
mmúcú
ã Thuttoỏnvinhngphộplp,rnhỏnh,
iukhinlungxlý(quayluihaybqua)
ã Lcutrỳclụgicbiuthtngchcnngcú
trongphnmmvtrỡnhtthchinchỳng
ã Thitkcutrỳctrcrisangchcnng
HUT,Falt.
ê Dept.ofSE,2001
SEưI.21
1.3Cỏckhỏinim
ã Khichtỏcphnmmcnnhiukthut
Phngphỏplun(Methodology):nhngchun
mccbnchtophnmmvicỏcch
tiờunhtớnh
Cỏcphngphỏpkthut(Techniques):nhng
trỡnhtcthchtophnmmvlcỏch
tipcnkhoahcmangtớnhnhlng
ã Tphngphỏpluntrinkhaink
thut
HUT,Falt.
ê Dept.ofSE,2001
SEưI.22
Cỏckhỏinim
(Softwareconcepts)
ã Khỏinimtớnhmụun(modularity
concept)
ã Khỏinimchitithúadntngbc
(stepwiserefinementconcept)
ã Khỏinimtrutnghúa(abstraction
concept):vthtc,iukhin,dliu
ã Khỏinimchegiuthụngtin(information
hidingconcept)
ã Khỏinimhngitng(object
oriented)
HUT,Falt.
ê Dept.ofSE,2001
SEưI.23
Từ phương pháp luận phần
mềm sang kỹ thuật phần
mềm
Phân tích cấu trúc
Tính Mơđun
Thiết kế cấu trúc
Chi tiết hóa dần
Lập trình cấu trúc
Trừu tượng hóa
(Che giấu t.tin)
Dữ liệu trừu tượng
Khái niệm phần mềm
HUT, Falt.
ª Dept. of SE, 2001
Hướng đối tượng
SEI.24
1.3.1Tớnhmụun
(Modularity)
ã Lkhnngphõnchiaphnmmthnhcỏc
mụunngvicỏcchcnng,ngthicho
phộpqunlýtngth:khỏinimphõnchiav
trn(partionandmerge)
ã Haiphngphỏpphõnchiamụuntheochiu
sõu(depth,thngng):iukhinphctpdn
rng(width,nmngang):mụunphthucdn
ã Quanhgiacỏcmụun:quacỏcis
(arguments)
HUT,Falt.
ê Dept.ofSE,2001
SEưI.25